Skip to content

Instantly share code, notes, and snippets.

@zoomlogo
Last active June 29, 2026 05:14
Show Gist options
  • Select an option

  • Save zoomlogo/69b9644051b6e43adcf62525ae69e093 to your computer and use it in GitHub Desktop.

Select an option

Save zoomlogo/69b9644051b6e43adcf62525ae69e093 to your computer and use it in GitHub Desktop.
#include<stdbool.h>
#include<stdlib.h>
#include<stdio.h>
#include<string.h>
#if __clang__
#define vfor _Pragma("clang loop vectorize(assume_safety)") for
#elif __GNUC__
#define vfor _Pragma("GCC ivdep") for
#else
#define vfor for
#endif
#define _(a...) {return({a;});}
#define I(x,a...) if(x){a;}
#define E(a...) else{a;}
#define J(x,a...) else I(x,a)
#define P(x,a...) I(x,_(a))
#define B(x,a...) I(x,a;break)
#define W(x,a...) while(x){a;}
#define F(i,n,a...) {TY(n)n_##i=(n);for(I i=0;i<n_##i;i++){a;}}
#define V(i,n,a...) {TY(n)n_##i=(n);vfor(I i=0;i<n_##i;i++){a;}}
#define i(x,a...) F(i,x,a)
#define j(x,a...) F(j,x,a)
#define k(x,a...) F(k,x,a)
#define vi(x,a...) V(i,x,a)
#define vj(x,a...) V(j,x,a)
#define vk(x,a...) V(k,x,a)
#define L(x) (SZ(x)/SZ((x)[0]))
#define SW(x,y) {TY(x)t_=x;x=y;y=t_;}
#define C(x,a...) case x:{a;}break;
#define D(a...) default:{a;}break;
#define MA(t,n) (t*)malloc(SZ(t)*(n))
#define MR(p,t,n) (t*)realloc(p,SZ(t)*(n))
#define MF(p) (free((V*)(p)),(p)=0)
#define O(s1,s2) (!strcmp(s1,s2))
#define AL(n) __attribute__((aligned(n)))
#define MC memcpy
#define Z static
#define ZI static inline
#define CO const
#define ST struct
#define EN enum
#define TY __typeof__
#define TD typedef
#define SZ sizeof
#define UN union
#define EX extern
#define pr printf
#define RES restrict
TD void V;TD bool B;TD char C;TD char unsigned UC;TD CO C*S;TD short H;TD int I;
TD unsigned short UH;TD unsigned int U;TD long long LL;TD double LF;TD size_t N;
TD ptrdiff_t P;TD unsigned long W;TD unsigned long long LW;TD long L;TD float F;
#define Lg(n,i,a...) L##n(i,a)
#define Ln(n,i,a...) Lg(n,i,a)
#define L0(i,a...)
#define L1(i,a...) L0(i,a){I i=0;a;}
#define L2(i,a...) L1(i,a){I i=1;a;}
#define L3(i,a...) L2(i,a){I i=2;a;}
#define L4(i,a...) L3(i,a){I i=3;a;}
#define L5(i,a...) L4(i,a){I i=4;a;}
#define L6(i,a...) L5(i,a){I i=5;a;}
#define L7(i,a...) L6(i,a){I i=6;a;}
#define L8(i,a...) L7(i,a){I i=7;a;}
#define L9(i,a...) L8(i,a){I i=8;a;}
#define L10(i,a...) L9(i,a){I i=9;a;}
#define L11(i,a...) L10(i,a){I i=10;a;}
#define L12(i,a...) L11(i,a){I i=11;a;}
#define L13(i,a...) L12(i,a){I i=12;a;}
#define L14(i,a...) L13(i,a){I i=13;a;}
#define L15(i,a...) L14(i,a){I i=14;a;}
#define L16(i,a...) L15(i,a){I i=15;a;}
#define L17(i,a...) L16(i,a){I i=16;a;}
#define L18(i,a...) L17(i,a){I i=17;a;}
#define L19(i,a...) L18(i,a){I i=18;a;}
#define L20(i,a...) L19(i,a){I i=19;a;}
#define L21(i,a...) L20(i,a){I i=20;a;}
#define L22(i,a...) L21(i,a){I i=21;a;}
#define L23(i,a...) L22(i,a){I i=22;a;}
#define L24(i,a...) L23(i,a){I i=23;a;}
#define L25(i,a...) L24(i,a){I i=24;a;}
#define L26(i,a...) L25(i,a){I i=25;a;}
#define L27(i,a...) L26(i,a){I i=26;a;}
#define L28(i,a...) L27(i,a){I i=27;a;}
#define L29(i,a...) L28(i,a){I i=28;a;}
#define L30(i,a...) L29(i,a){I i=29;a;}
#define L31(i,a...) L30(i,a){I i=30;a;}
#define L32(i,a...) L31(i,a){I i=31;a;}
#define L33(i,a...) L32(i,a){I i=32;a;}
#define L34(i,a...) L33(i,a){I i=33;a;}
#define L35(i,a...) L34(i,a){I i=34;a;}
#define L36(i,a...) L35(i,a){I i=35;a;}
#define L37(i,a...) L36(i,a){I i=36;a;}
#define L38(i,a...) L37(i,a){I i=37;a;}
#define L39(i,a...) L38(i,a){I i=38;a;}
#define L40(i,a...) L39(i,a){I i=39;a;}
#define L41(i,a...) L40(i,a){I i=40;a;}
#define L42(i,a...) L41(i,a){I i=41;a;}
#define L43(i,a...) L42(i,a){I i=42;a;}
#define L44(i,a...) L43(i,a){I i=43;a;}
#define L45(i,a...) L44(i,a){I i=44;a;}
#define L46(i,a...) L45(i,a){I i=45;a;}
#define L47(i,a...) L46(i,a){I i=46;a;}
#define L48(i,a...) L47(i,a){I i=47;a;}
#define L49(i,a...) L48(i,a){I i=48;a;}
#define L50(i,a...) L49(i,a){I i=49;a;}
#define L51(i,a...) L50(i,a){I i=50;a;}
#define L52(i,a...) L51(i,a){I i=51;a;}
#define L53(i,a...) L52(i,a){I i=52;a;}
#define L54(i,a...) L53(i,a){I i=53;a;}
#define L55(i,a...) L54(i,a){I i=54;a;}
#define L56(i,a...) L55(i,a){I i=55;a;}
#define L57(i,a...) L56(i,a){I i=56;a;}
#define L58(i,a...) L57(i,a){I i=57;a;}
#define L59(i,a...) L58(i,a){I i=58;a;}
#define L60(i,a...) L59(i,a){I i=59;a;}
#define L61(i,a...) L60(i,a){I i=60;a;}
#define L62(i,a...) L61(i,a){I i=61;a;}
#define L63(i,a...) L62(i,a){I i=62;a;}
#define L64(i,a...) L63(i,a){I i=63;a;}
#define L65(i,a...) L64(i,a){I i=64;a;}
#define L66(i,a...) L65(i,a){I i=65;a;}
#define L67(i,a...) L66(i,a){I i=66;a;}
#define L68(i,a...) L67(i,a){I i=67;a;}
#define L69(i,a...) L68(i,a){I i=68;a;}
#define L70(i,a...) L69(i,a){I i=69;a;}
#define L71(i,a...) L70(i,a){I i=70;a;}
#define L72(i,a...) L71(i,a){I i=71;a;}
#define L73(i,a...) L72(i,a){I i=72;a;}
#define L74(i,a...) L73(i,a){I i=73;a;}
#define L75(i,a...) L74(i,a){I i=74;a;}
#define L76(i,a...) L75(i,a){I i=75;a;}
#define L77(i,a...) L76(i,a){I i=76;a;}
#define L78(i,a...) L77(i,a){I i=77;a;}
#define L79(i,a...) L78(i,a){I i=78;a;}
#define L80(i,a...) L79(i,a){I i=79;a;}
#define L81(i,a...) L80(i,a){I i=80;a;}
#define L82(i,a...) L81(i,a){I i=81;a;}
#define L83(i,a...) L82(i,a){I i=82;a;}
#define L84(i,a...) L83(i,a){I i=83;a;}
#define L85(i,a...) L84(i,a){I i=84;a;}
#define L86(i,a...) L85(i,a){I i=85;a;}
#define L87(i,a...) L86(i,a){I i=86;a;}
#define L88(i,a...) L87(i,a){I i=87;a;}
#define L89(i,a...) L88(i,a){I i=88;a;}
#define L90(i,a...) L89(i,a){I i=89;a;}
#define L91(i,a...) L90(i,a){I i=90;a;}
#define L92(i,a...) L91(i,a){I i=91;a;}
#define L93(i,a...) L92(i,a){I i=92;a;}
#define L94(i,a...) L93(i,a){I i=93;a;}
#define L95(i,a...) L94(i,a){I i=94;a;}
#define L96(i,a...) L95(i,a){I i=95;a;}
#define L97(i,a...) L96(i,a){I i=96;a;}
#define L98(i,a...) L97(i,a){I i=97;a;}
#define L99(i,a...) L98(i,a){I i=98;a;}
#define L100(i,a...) L99(i,a){I i=99;a;}
#define L101(i,a...) L100(i,a){I i=100;a;}
#define L102(i,a...) L101(i,a){I i=101;a;}
#define L103(i,a...) L102(i,a){I i=102;a;}
#define L104(i,a...) L103(i,a){I i=103;a;}
#define L105(i,a...) L104(i,a){I i=104;a;}
#define L106(i,a...) L105(i,a){I i=105;a;}
#define L107(i,a...) L106(i,a){I i=106;a;}
#define L108(i,a...) L107(i,a){I i=107;a;}
#define L109(i,a...) L108(i,a){I i=108;a;}
#define L110(i,a...) L109(i,a){I i=109;a;}
#define L111(i,a...) L110(i,a){I i=110;a;}
#define L112(i,a...) L111(i,a){I i=111;a;}
#define L113(i,a...) L112(i,a){I i=112;a;}
#define L114(i,a...) L113(i,a){I i=113;a;}
#define L115(i,a...) L114(i,a){I i=114;a;}
#define L116(i,a...) L115(i,a){I i=115;a;}
#define L117(i,a...) L116(i,a){I i=116;a;}
#define L118(i,a...) L117(i,a){I i=117;a;}
#define L119(i,a...) L118(i,a){I i=118;a;}
#define L120(i,a...) L119(i,a){I i=119;a;}
#define L121(i,a...) L120(i,a){I i=120;a;}
#define L122(i,a...) L121(i,a){I i=121;a;}
#define L123(i,a...) L122(i,a){I i=122;a;}
#define L124(i,a...) L123(i,a){I i=123;a;}
#define L125(i,a...) L124(i,a){I i=124;a;}
#define L126(i,a...) L125(i,a){I i=125;a;}
#define L127(i,a...) L126(i,a){I i=126;a;}
#define L128(i,a...) L127(i,a){I i=127;a;}
#define L129(i,a...) L128(i,a){I i=128;a;}
#define L130(i,a...) L129(i,a){I i=129;a;}
#define L131(i,a...) L130(i,a){I i=130;a;}
#define L132(i,a...) L131(i,a){I i=131;a;}
#define L133(i,a...) L132(i,a){I i=132;a;}
#define L134(i,a...) L133(i,a){I i=133;a;}
#define L135(i,a...) L134(i,a){I i=134;a;}
#define L136(i,a...) L135(i,a){I i=135;a;}
#define L137(i,a...) L136(i,a){I i=136;a;}
#define L138(i,a...) L137(i,a){I i=137;a;}
#define L139(i,a...) L138(i,a){I i=138;a;}
#define L140(i,a...) L139(i,a){I i=139;a;}
#define L141(i,a...) L140(i,a){I i=140;a;}
#define L142(i,a...) L141(i,a){I i=141;a;}
#define L143(i,a...) L142(i,a){I i=142;a;}
#define L144(i,a...) L143(i,a){I i=143;a;}
#define L145(i,a...) L144(i,a){I i=144;a;}
#define L146(i,a...) L145(i,a){I i=145;a;}
#define L147(i,a...) L146(i,a){I i=146;a;}
#define L148(i,a...) L147(i,a){I i=147;a;}
#define L149(i,a...) L148(i,a){I i=148;a;}
#define L150(i,a...) L149(i,a){I i=149;a;}
#define L151(i,a...) L150(i,a){I i=150;a;}
#define L152(i,a...) L151(i,a){I i=151;a;}
#define L153(i,a...) L152(i,a){I i=152;a;}
#define L154(i,a...) L153(i,a){I i=153;a;}
#define L155(i,a...) L154(i,a){I i=154;a;}
#define L156(i,a...) L155(i,a){I i=155;a;}
#define L157(i,a...) L156(i,a){I i=156;a;}
#define L158(i,a...) L157(i,a){I i=157;a;}
#define L159(i,a...) L158(i,a){I i=158;a;}
#define L160(i,a...) L159(i,a){I i=159;a;}
#define L161(i,a...) L160(i,a){I i=160;a;}
#define L162(i,a...) L161(i,a){I i=161;a;}
#define L163(i,a...) L162(i,a){I i=162;a;}
#define L164(i,a...) L163(i,a){I i=163;a;}
#define L165(i,a...) L164(i,a){I i=164;a;}
#define L166(i,a...) L165(i,a){I i=165;a;}
#define L167(i,a...) L166(i,a){I i=166;a;}
#define L168(i,a...) L167(i,a){I i=167;a;}
#define L169(i,a...) L168(i,a){I i=168;a;}
#define L170(i,a...) L169(i,a){I i=169;a;}
#define L171(i,a...) L170(i,a){I i=170;a;}
#define L172(i,a...) L171(i,a){I i=171;a;}
#define L173(i,a...) L172(i,a){I i=172;a;}
#define L174(i,a...) L173(i,a){I i=173;a;}
#define L175(i,a...) L174(i,a){I i=174;a;}
#define L176(i,a...) L175(i,a){I i=175;a;}
#define L177(i,a...) L176(i,a){I i=176;a;}
#define L178(i,a...) L177(i,a){I i=177;a;}
#define L179(i,a...) L178(i,a){I i=178;a;}
#define L180(i,a...) L179(i,a){I i=179;a;}
#define L181(i,a...) L180(i,a){I i=180;a;}
#define L182(i,a...) L181(i,a){I i=181;a;}
#define L183(i,a...) L182(i,a){I i=182;a;}
#define L184(i,a...) L183(i,a){I i=183;a;}
#define L185(i,a...) L184(i,a){I i=184;a;}
#define L186(i,a...) L185(i,a){I i=185;a;}
#define L187(i,a...) L186(i,a){I i=186;a;}
#define L188(i,a...) L187(i,a){I i=187;a;}
#define L189(i,a...) L188(i,a){I i=188;a;}
#define L190(i,a...) L189(i,a){I i=189;a;}
#define L191(i,a...) L190(i,a){I i=190;a;}
#define L192(i,a...) L191(i,a){I i=191;a;}
#define L193(i,a...) L192(i,a){I i=192;a;}
#define L194(i,a...) L193(i,a){I i=193;a;}
#define L195(i,a...) L194(i,a){I i=194;a;}
#define L196(i,a...) L195(i,a){I i=195;a;}
#define L197(i,a...) L196(i,a){I i=196;a;}
#define L198(i,a...) L197(i,a){I i=197;a;}
#define L199(i,a...) L198(i,a){I i=198;a;}
#define L200(i,a...) L199(i,a){I i=199;a;}
#define L201(i,a...) L200(i,a){I i=200;a;}
#define L202(i,a...) L201(i,a){I i=201;a;}
#define L203(i,a...) L202(i,a){I i=202;a;}
#define L204(i,a...) L203(i,a){I i=203;a;}
#define L205(i,a...) L204(i,a){I i=204;a;}
#define L206(i,a...) L205(i,a){I i=205;a;}
#define L207(i,a...) L206(i,a){I i=206;a;}
#define L208(i,a...) L207(i,a){I i=207;a;}
#define L209(i,a...) L208(i,a){I i=208;a;}
#define L210(i,a...) L209(i,a){I i=209;a;}
#define L211(i,a...) L210(i,a){I i=210;a;}
#define L212(i,a...) L211(i,a){I i=211;a;}
#define L213(i,a...) L212(i,a){I i=212;a;}
#define L214(i,a...) L213(i,a){I i=213;a;}
#define L215(i,a...) L214(i,a){I i=214;a;}
#define L216(i,a...) L215(i,a){I i=215;a;}
#define L217(i,a...) L216(i,a){I i=216;a;}
#define L218(i,a...) L217(i,a){I i=217;a;}
#define L219(i,a...) L218(i,a){I i=218;a;}
#define L220(i,a...) L219(i,a){I i=219;a;}
#define L221(i,a...) L220(i,a){I i=220;a;}
#define L222(i,a...) L221(i,a){I i=221;a;}
#define L223(i,a...) L222(i,a){I i=222;a;}
#define L224(i,a...) L223(i,a){I i=223;a;}
#define L225(i,a...) L224(i,a){I i=224;a;}
#define L226(i,a...) L225(i,a){I i=225;a;}
#define L227(i,a...) L226(i,a){I i=226;a;}
#define L228(i,a...) L227(i,a){I i=227;a;}
#define L229(i,a...) L228(i,a){I i=228;a;}
#define L230(i,a...) L229(i,a){I i=229;a;}
#define L231(i,a...) L230(i,a){I i=230;a;}
#define L232(i,a...) L231(i,a){I i=231;a;}
#define L233(i,a...) L232(i,a){I i=232;a;}
#define L234(i,a...) L233(i,a){I i=233;a;}
#define L235(i,a...) L234(i,a){I i=234;a;}
#define L236(i,a...) L235(i,a){I i=235;a;}
#define L237(i,a...) L236(i,a){I i=236;a;}
#define L238(i,a...) L237(i,a){I i=237;a;}
#define L239(i,a...) L238(i,a){I i=238;a;}
#define L240(i,a...) L239(i,a){I i=239;a;}
#define L241(i,a...) L240(i,a){I i=240;a;}
#define L242(i,a...) L241(i,a){I i=241;a;}
#define L243(i,a...) L242(i,a){I i=242;a;}
#define L244(i,a...) L243(i,a){I i=243;a;}
#define L245(i,a...) L244(i,a){I i=244;a;}
#define L246(i,a...) L245(i,a){I i=245;a;}
#define L247(i,a...) L246(i,a){I i=246;a;}
#define L248(i,a...) L247(i,a){I i=247;a;}
#define L249(i,a...) L248(i,a){I i=248;a;}
#define L250(i,a...) L249(i,a){I i=249;a;}
#define L251(i,a...) L250(i,a){I i=250;a;}
#define L252(i,a...) L251(i,a){I i=251;a;}
#define L253(i,a...) L252(i,a){I i=252;a;}
#define L254(i,a...) L253(i,a){I i=253;a;}
#define L255(i,a...) L254(i,a){I i=254;a;}
#define L256(i,a...) L255(i,a){I i=255;a;}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment