#  GLSL.std.450mainS main bit(u1;i1; u bitbits128(vu4;u1;u1;ubitStartbitCount bits128fillZeros(vu4;u1;u1;u1;ubitStartbitEndbitCount #get_bit_count(u1;u1;u1;u1;num_vals trits!quints"bits +get_pack_size(u1;u1;u1;u1;u1;&trits'quints(bits)pack*packedSize 4decode_trit(vu4;u1;u1;u1;0data1start2end3n =decode_quint(vu4;u1;u1;u1;9data:start;end<nAget_v_count(u1;@cemHswap(vi4;vi4;Fv1Gv2 Mbit_transfer_signed(i1;i1;KaLbQblue_contract(vi4;Pval [decode_ldr_for_mode(u1[40];u1;u1;vu4;vu4;VvalsWstart_idxXmodeYc1Zc2^hash52(u1;]p dselect_partition(u1;u1;u1;u1;`seedaxbycpartitioncountjsingle_color_block(vu4;icolormerror_color_block(qastc_decode_block(vu4;puwgetPos3D(vi3;vposzblock_y_size_3D(firstIdxfirstOffsetbitMaskfirstCountretparamparamparamtrit_bit_countquint_bit_countbase_bit_countencodedencoded_bits_readimparamparamparamparamencoded_bits%indexable)param+param-param/param2indexable>indexableFiNresultIindexableXencodedYencoded_bits_readZbitMask_iimkparammparamoparamqparamxencoded_bits}indexableparamparamparamparamindexableindexableiresult+indexable@tmpgv0kindexableov1rindexablevv2yindexable}v3indexablev4indexablev5indexablev6indexablev7indexableendpoint_low_rgbaendpoint_high_rgbal0l1paramparamparamparamhigh_lumai xs0!s14param6param;param?paramDparamFparamKparamMparamRparamTparamoparamqparamvparamzparams0s1paramparamparamparamparamparamparamparamparamparamparamparamparamparamparamparamMzOImageFormatBlockOblockSizeOcompFormatObaseLayerOsRGBOsmallBlockQu_pushConstantbrnumcparamfseed1jseed2nseed3rseed4wseed5{seed6seed7seed8seed9seed10seed11seed12sh1sh2sh3 ab+c:d}hwretparamu3b87b65b32abdparamparamhdrparamparamrparamparamwidthheightcolor paramparam param>param@param`tritsaquintsbbitscweightCountspackedSizepackparamparamparamparamparamsrcIdxdstIdxuReversedweightBitCountparamparamparamparamdecodedparamparamparamparamiweightGridindexableindexable4decoded5param7param9param;param>iVindexable^indexablexdecodedRawyparam{param}paramdecodedindexableindexablepartitionCountweightStartparamparamparamparamdualPlaneStartcempartModeextraMBitCountindexableextraMStartcem_allcemBasecemHigh param param param param param param param param extraM param param param mainMBitCount indexable" m= totalV> partH paramP epStartV totalAvailBits` epQuintsa epTritsb epBitsc iv indexablez indexable~ indexable param param param param epBitCount param param param param epEnd packedSize pack param param param param param srcIdx dstIdx decoded param param param param i vBuffer indexable indexable decoded param param param param i indexable indexable src param param param decoded indexable indexable bufferIdx part endPoints param param param param param% dst2 dd5 h? wI partN paramO paramQ paramS param^ indexabled retm stq cstu gst jst fst v0 p00 p01 p10 p11 w11 w10 w01 w00 i c0 c1 c" ccs# param$ param& paramP posS gl_GlobalInvocationID] srcBlock` u_image0b paramt decompressedw y x u_image1 paramHO#HO#HO# HO#HO#GOGS G` "G` !G` G "G !G !    !   !!!!%+-.-!/.+676!87!?C DC!EDD!J !OD+S(TS!UT+fgf!hg!lg!ogs ts!ust!y++ ++++++++  . -+!, "!!! $ +PQ.P,.R,.S,.T,.U,.V,.W,.X,.Y,.Z,.[,.\,.],.^,._,.`,.a,.b,.c,.d,.e,.f,.g,.h,.i,.j,.k,.l,.m,.n,.o,.p,.q,.r,.s,.t,.u,.v,.w,.x,.y,.z,.{,.|,.},.~,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,. ,. ,. ,. ,. ,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,. ,.!,.",.#,.$,.%,.&,.',.(,.),.*,.+,.,,.-,..,./,.0,.1,.2,.3,.4,.5,.6,.7,.8,.9,.:,.;,.<,.=,.>,.?,.@,.A,.B,.C,.D,QERSTUVWXYZ[\]^_`]abcdefghijklmnopqrstuvwxyz{|}~|      !"#$%&'()*+,-./01234567859:;<=>?@ABCD) HQ+f h7y6,yzf!! |y+7,7,7,7,76,7,7,7,7,7,7,7,76,7,7,7,7,7,7,76,7,7,7,76,76,76,766,76,76,76,7,7,7,76,7,7,7,7,7,7,7,76,7,7,7,7,7,7,7,76,7,7,7,7,76,76,76,766,76,76,76,76,7,7,7,76,7,7,7,76,7,7,7,76,7,7,7,76,7,7,7,76,7,7,7,76,76,76,76,766,76,76,76,766,76,76,7 6,7 66,7 6,7 6,7 ,7,76,76,76,766,76,76,7,7,76,76,76,766,76,76,7,7,766,7 66,7!66,7"666,7#66,7$66,7%6,7&6,'      !"#$%& *+G+M?+Q +V@ jT++++,C+++"+'+0+=NON P O;PQ R +^+h+t +}+++++++++( +I? g+,+ + + + + +j@++`+x +-+3++&++.+:++ +4++#+7+/+'+=++,++$+ +2++)++!,0III-SI-+  + , 6     G+H8+I+J1+K*+L<+M9+N6+O+P%+Q+R",&GSIIHIJ KI6LMS NOPQR,7T-h ]G, I   , + + +,-++ , +S k 7,7l ,7m ,7n -,7o ,7p -,7q ,7r -,k s l m n o p q r   u k + }  + + f+ + E+ + + \+ + + t+ + + B+ + c+ + + + M+ + n+ + + + X+ + y+ + + + 0+ + A+ + Q+ + a+ + q+ + + + + + F+ + V+ + g+ + w+ + + ++ + ;+ + L+ + l+ + |+ + + + + + + H+ + P+ + + h+ +! p+" +# +$ +% +& +' +( +) +* C++ +, K+- +. S+/ +0 [+1 +2 k+3 +4 s+5 +6 {+7 +8 +9 +: +; +< 5+= +> +? N+@ +A ^+B +C v+D +E ~+F +G +H +I +J +K +L +M +N +O D+P +Q T+R +S d+T +U +V +W +X +Y +Z +[ +\ I+] +^ U+_ +` Y+a +b ]+c +d e+e +f i+g +h m+i +j u+k +l }+m +n +o +p +q +r +s +t +u >+v +w J+x +y R+z +{ Z+| +} b+~ + j+ + r+ + z+ ,           -   N                    S H j       ! " # $ % & ' O( )   * + , - . / 0 1 2 3 4 5 6 7 - 8  Q9 P: ; < = >   ? @   A B C D E F G  H  I J  K L S  M H LN j O P       Q R  S T    ! " #   U - V 8 W  X Q9  P: Y ; JZ < = M[ > \ ] ^ _ ` a b c d e f g h i j k l m $ n % Io & '  O( p Rq  Kr  s N t u v   w x ? @ y z   { | A B } ~  C D E F  , 6  b     + ;  + + G+ + + + W+ ,> K H Q R * + 8    A B S 2 3 N  n   8 ; ? @  M Q R j k O( t 0 1 6 7  j    ! " 6  )  * + . / S T n   N    V X Kr t w x { |  8 Q9 ; > b c h i l m    S H j       ! " # U V W X  Y JZ M[ \ ] ` a f g 6    )   * + , - . / 0 1 2 3 4 5 6 7 G H I J K L  M LN O P   Q R S T     n Io  p   N u v   ? @   A B C D E F ,  -h, T    , ^    ,     $ N & N+L V *W )X ,V Y W W X X W W W X W W W X W W X X ] V _  Q  R Q ;R S  ^  _ ^ ;_ `    ; + 6;tP ;] ;tb ;t ;w ; ;t =Q T S |sU T >P U ARV Q!=W V |X W A Y P =Z Y [ Z X A \ P >\ [ =^ a ` =sc P >b c 9sd wb be a d Qf e Qg e Qh e Qi e Pj f g h i >] j Ak ] 6=l k Am ] =n m Ao ] =p o Aq ] =r q Ps l n p r >] s =u ] 9gv qu >t v >w x x z { | | =} w 9~ z } ~  y z y >      = AR Q=    = =s P O |N A& Q=N N = | = w | P |N N | A P = Q Q Ps > 9s w = w AR Q=  =  A t = c   =  >   { { = w  >w x z 86 7 7 =| =} ~|}~86777;;;;;=>=>=|>====6A====>=6A==>=6A===|=>==867777;;;===== &=>=>>986#77 7!7"$;;;== ->==!6>==">===86+%7&7'7(7)7*,=&>)-=(->*='>)6=(6>*>)=(>*86.4/707172735;;; ;;;;;;;$%;);+;-;/;$2;$>; F;N;HI>>>    =    ==0>=1>=2>=3>9A>=3=1>1=#>%"A &%#='&|('=*0>)*=,1>+,=.2>-.>/(90)+-/>0=1>2"A 321=43|54=61765>17=8=9:89=;<;:><==>>"A ?>==@?|A@=BCBA>C  =DED>E >FGGIJKK=LFML MHIH=OF=F=GF>IEAJIFG=KJ=L3MKL=NFAON=POQMPARNO>RQJJ=SFTS>FTGI=.UNU867=8797:7;7<>;X;Y;Z; _;hi;k;m;o;q;x;|};;;;;|;|; ;h;*+>X>Y=[<\[]\|^]>Z^>_``bcdd=e_gefgaba=j_=l9>kl=n:>mn=p;>op=r<>qr9skmoqAtij>ts=u<=v:wvu>:w={_>}zA ~}{=~|=9>=:>=;>>9>x=_>zA =|=:>:=x=Y=X>X=_>zA =|=Y>Ycc=_>_`b>=f==(X=)>+'A,+()=-,=.</-.=0A1i0=213/2A4>43=565>6=77786A?7@B=:@;:<;=<=86HE7DF7DGI;D@=CAF>@A=CBG>FB=CC@>GC86MJ7 K7 LN=DLED>LE=FKHFG=ILJIH>LJ=KKLK>KL=NKONM>KO=PKRPQSRUSTUT=WKXWV>KXUU86QO7DPRA YP=ZYA [P=\[]Z\^]!A _P>_^A `P=a`A bP=cbdaced!A fP>fe86[U7TV7W7X7Y7Z\; g;jk; o;jr; v;jy; };j; ;j; ;j; ;j; ;j;D;D; ; ; ; ; ; ; ; ; ; ; !;D4;D6;D;;D?; D; F; K; M; R; T;Do;Dq;Dv;Dz;;;D;D;D;D; ; ; ; ; ; ; ; ;D;D;D;D=hWih>kVAlki=ml|nm>gn=pWqp>rVAsrq=ts|ut>ou=wWxw>yVAzyx={z||{>v|=~W~6>VA=|>}=W>VA=|>=W->VA=|>=W>VA=|>=W>VA=|>=X    >>=g=g=gPC>=o=o=oPC>=g!=o>==oM '>===PC>===PC>=g=g=g=vPC>=o=o=o=}PC>=o>=g>9M=>o=>g=}>=v>9M=>}=>v=g=g=g=vPCPCPC C->=g=o>====v=}PCPCPC C->=g=o=vPC>>  =   f = A  => == =}A >=>A 6>=g=v= > ="o=#}$"#=%&$%>!&='g=(v=)PC*'()>*=+o=,}=-PC.+,->.=/!=01/031232=C5>45=C7>6798H46=C94>9=C:6>:=C<>;<9=Q;=C>;>>=C@>?@9AQ?=CB?>B33=Eo>DE=Gg>FG9HMDF=ID>oI=JF>gJ=L}>KL=Nv>MN9OMKM=PK>}P=QM>vQ=S>RS=U>TU9VMRT=WR>W=XT>X=Yg=Zv=[PC\YZ[>\=]g=^o_]^=`v=a}b`a=c=decdPCf_be>f=go=h}igh=jkijlknlmnm=Cp>op=Cr>qr9sHoq=Cto>t=Cuq>u=Cw>vw9xQv=Cyv>y=C{>z{9|Qz=C}z>}nn=C~PCPC C-~>=CPCPC C->=g=o=vPC>>=C=}PCCPCC>=A 6>=A 6>=g=v=|>=o=}=|>=g=v==PC>=o=}==PC>===C>=C>9H=C>=C>=C>9Q=C>=C>9Q=C>=o>=g>9M=>o=>g=}>=v>9M=>}=>v=>=>9M=>=>=>=>9M=>=>=g=v==PC>=g=o=v=}====PC>=o=}==C>=C>9H=C>=C>=C>9Q=C>=C>9Q=C>=CPC PC  C -  > =C PC PC C-  >=C|>Y=C|>Z86^?7]_=]=]>]=]=] >] =!]#!"=$]%$#>]%=&](&'=)]*)(>]*=+],+ =-].-,>].=/]1/0=2]321>]3=4]54"=6]765>]7=8]98f=:];:9>];=<]><==?]@?>>]@=A]BA=C]DCB>]D=E]E86d7`7a7b7ce;M;b;c;f;j;n;r;w;{;;;;;;;;;; ;;+;:=HcIHKIJKJK>MARSQ'=TSUTWUVWV=XaYX>aY=Zb[Z>b[WW=\c]\_]^=``a`_>`a=d`>cd9e^c>be=gbigh>fi=kblk'mlh>jm=obpoqph>nq=sbustvuh>rv=xbyx0zyh>wz=|b~|}~h>{=bh>=bh>=bh>=bh>=bh>=b=b!h>=f=f>f=j=j>j=n=n>n=r=r>r=w=w>w={={>{==>==>==>==>==>==>=`=`' |>=c6= |>=c6= |>=`' |>=`==>==f>f==j>j==n>n==r>r==w>w=={>{==>==>==>==>==>==   > = f= a  =j=b==M=b> =n=a=r= b! "!=#=$M%#$&"%='b)'(*&)>*=,w=-a.,-=/{=0b1/02.1=3=4M534625=7b87=968>+9=;=<a=;<=>=?b@>?A=@=B=CMDBCEAD=FbGF!HEG>:H=J KJI> K=LMLI>M=N+ONI>+O=P:QPI>:Q=RcSRUSTUT>:UU=VcWV6YWXYX>+YY=Z =[\Z[=] =^+_]^`\_=a =b:cabd`cfdeheh=i=j+kij=l=m:nlmoknqopsps=t+=u:vtuxvwzwz6xqqff||86gjh7ik; }; ;>}~~=}|ARQ=>=|ARQ==}|ARQ==|=iA>=>=}>}~=g86gmln;>9gj86gqo7pr;;;;;;;;; ;;; ;;; ;;;; ;; ;>; @;`;a;b;c;;;;;;;;;;;;;;;;;;;;; ;; ;;h4;5;7;9;;; >;hV;]^;x;y;{;};;;;;;;;;;;;;;; ;;;;; ;  ; ;  ; ; ; ;  ; ; ; ; ; ;  ;" ;= ;> ;H ;P ;V ;` ;a ;b ;c ;u v ;u z ;u ~ ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ;j ; ; ;h ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ;$ % ;2 ;5 ;? ;I ;N ;O ;Q ;S ;] ^ ;d ;$ m ;$ q ;$ u ;$ ;$ ; ;$ ;$ ;$ ;$ ; ; ; ; ;$ ; ; ; ;" ;# ;$ ;& Qp>="6>= 6>=!6>=>=>=>>(9 >=>>9 >=6==>>'9 >=>=>==>>=6=>>=>>=QpQpQpQp P  > = >  9g j  9gm=6>=>=>>>=6=>> '9!  "!>"=#$#&$%+%='('>(=)*)>*&+=,-,/-.4.=010>1=232>3/4=565867=7=9:9>:=;<;><8==?>>?>@9A >@BADBCJC=EFE>F=GHGIH>IDJ=KLKML>M=NON>ODD88//&&=PARQQ=RQSPRTSVTUVU=WARXQ=YXZWYVV[SZU][\]\9g^m^]>`>a>b=d=efde=ghgifh>ci=kcljknlmnm9gomon=qrqtrss=u}u|vwxyz{|9gmv>b}w>`}x>b}y>a}z>`>b}{>b6}}t=9gm>b>a>`>b>b>a>b>`>b6>b-tt>>=`>=a>=b>9 +=>=>>>p>=c>=`>=a>=b>9#>==9gmA6=A=A=A=P>==c=`/=>=>=>=b>9.4>>= == b> A ==A=>A=A>=A== A! ="!#"A$ >$#=%&%>&='=(c)'(+)*+*+=-.->./=0a10312w2=6>56=8>78=:>9:=<b>;<97==579;>4=>>??ABCC=D>EDfE@A@=F=Ub>VTAWVU=XW=Y>AZ4Y=[Z\X[>^SA_^\=`_AaF>a`=bAcb=dcedgefgf=hAih=jikjAlh>lkgg=mnm>n=o=pcqopsqrsrAsBB=u>vu>>v?A3w=z>yz=|>{|=~>}~9y{}>x=x=b>A==x=b>A=>==A>=A==A=A>=>33==>=6>==9gm=c>=`>=a>=b>9#>>==hA>==>=6>=>=>A=>=>==>==>==h>====P>=>== >  > 9  = >  > 9   = > >  9 = >  > 9  P    P    > > p= >  = >  9    >  =   >  A   =! > ! =#  =$  % # $ =& ' &  ( ' 6=)  * ) + ( * , % + >" , =- PC. !!!!/ - . =0 " 1 0 6=2 " 3 2 !4 3 6=5 " 6 5 '7 6 6=8 " 9 8 =: 9 6P; 1 4 7 : < / ; >< >= >> ? ? A B C C =D > =E F D E F @ A @ =G > AI G =J I >H J 9K AH =L = M L K >= M B B =N > O N >> O ? A =Q R Q T R S |U T >P U =W =X P Y W X >V Y =Z V [ Z ] [ \ ] \ 9g^ m^ ] >` >a >b >c d d f g h h =i c j i j e f e =t c >v s Aw v t =x w >a x =y c >z s A{ z y =| { >` | =} c >~ s A ~ } !=  >b = = > = a > = ` > = b > 9 # = V     f  g g = c  >c d f = c     9g m  = = > = a > = ` > = b > 9 # > = P =  > > > = a > = ` > = b > 9  + = > = > = P > >      = = =    = a     > p= > = > = b > 9. 4 > >      =    = = b > A = = A =  > A = A > =  > = = =         =  >     = `     > p= > = > = b > 97 = > >      =  f  = = b > A = = A =  > A = A > =  > = = =         =  >     > p= > = > 9  > = = b  > A =  = = b  > A =   > = = A > =  >     = =  >     > >       = =       =T = = = = >  A  =  >  9  [     =  A >  =  A  >  = A  =  >  9 A = !  > !   =" # " > #   A& ' Q=N( ' PN) N* ( ) PN+ ^^N, + * A& - Q=N. - PN/ N0 . / N1 , 0 >% 1 =3 4 3 >2 4 >5 6 6 8 9 : : =; 5 AR< Q== < > ; = > 7 8 7 >? @ @ B C D D =E ? ARF Q=G F H E G H A B A =J K J M K L >N M =P ? >O P =R 5 >Q R =T >S T 9U dN O Q S >I U =Z I A[ Z =\ [ >^ Y A_ ` ^ \ =a ` c a b c b =e 5 ARf Q=g f h e g =i ? j h i Ak d j >k C c =n ? =o 5 PNp n o >m p =Nr % =Ns m Nt r s >q t =Nv q =w =x PNy w x PNz N{ y z N| v { PN} N~ | } P ==N ~ >u =N u P ''N > =N u PN hhN > A = A = =   > = = 2  A  = = = 2   A  = PN > =  = 2  A  = =  = 2   A  = PN > = =  = 2  A  = = =  = 2   A  = PN > = =   = 2  A  = = =   = 2   A  = PN > A = A =    '> A = =  > A = =  > A =   A =  =  > =N = PN N =N = PN N N =N = PN N N =N = PN N N PN N  P  ''N   >  = I A  =  >  = I A = > =  A =   j P        = A =  P           P    P jjjj   >  =   !  !  ># p=% >$ % >& 9' # $ & >" ' =( " =) " A*  ) =+ * A, =- , . j- / + . =0 " A1 0 =2 1 A3 =4 3 5 2 4 6 / 5 7 6 8 7 jA9 ( >9 8 ! ! =: 5 AR; Q=< ; = : < => ? ? = > =@ AA d ? >A @ C C =B ? C B >? C @ B 9 9 =D 5 E D >5 E 6 8 =gF d F 86swu7tvx=sI vI 86zy{ARL Q=M L M 8