#!k h:("// ngn/k, (c) 2019-2024 ngn, license: GNU AGPLv3 - https://codeberg.org/ngn/k/raw/branch/master/LICENSE" "// generated by g.k") v:"xyzu" /variable names t:"AGHILFC" /some types T:t,"BESMmilfscopqruvwx" /all types U:T,"UPRtTzZ",$`cC`lL`fF`sS`zZ`mM`mt`MT`zf`ZF`zc`ZC`zfc`ZFC`mMA`sSA`SA /types and pseudotypes c:+!: /cartesian product e:,/{$[x~"@";*y;x~"$";y 1;x~"%";_*y;x]}\: /expand @:arg[0],$:arg[1],%:lower(arg[0]) r:() r,:"@$ _$(@)"e/:c(v;"bEKkNnoRrtTVvwXxyz",t,(_t),"t",'U) r,:"@$(a...) _$(@,a)"e/:c(v;"128") r,:"M@(a...) M_(@,a)"e/:v r,:"@$(a...) P(%t$,a)"e/:c("XYZ";U) r,:"@(a) ({A r_=(a);mr(@);r_;})"e/:v r,:"_@(x) ((@*)_V(x))"e/:t r,:"_%(x) _@(x)[i]"e/:t r,:"_t@(x) (_t(x)==t@)"e/:"AEBGHILFCSMmlfopqr" r,:"_t@(x) (_t0(x)==t@)"e/:"iscuvwx" r,:"N@(r) N(r,@(0))"e/:v r,:{"_",x,"(x) ((A*)_V(x))[",($x-"x"),"]"}'"xyz" r,:{"_t",x,"(x) (_t",(-1_x),"(x)||_t",(-1#x),"(x))"}'(1<#:')#U r,:{"R",($x),"(x,a...) case x:R",($-1+x),"(a)"}'2+!12 r,:"R@(a...) R(t@,a)"e/:"AEBGHILFCSMmilfcsopqruvwx" p!:p:`c$,/"aA"+\:!26 /pseudotype expansions p["TtU"]:$`AEBGHILFCS`ilfcsopqruvwx`opqruvwx R:$`BGHILF`cC`EGHIL`BGHIL`EBGHIL`EBGHILC`EGHILC`EGHILF`fF`GC`GHIL`GHILC`GHILF`ic`iI`il`ilc`ilEBGHIL`ilEGHIL`ilf`lL`mM`mMA`MT`opq`opqr`sS`t`T`U`uvw R,:" "\"MT_C MT_E T_A T_AE T_E" r,:{X:?^/,/'p@"_"\x;"R",x,"(a...) R",($#X),"(",(","/"t",'X),",a)"}'R "g.h"0:h,"#define ",/:r