#include #include #include #include #include #include #include #define u8 uint8_t #define i32 int32_t #define u32 uint32_t #define i64 int64_t #define u64 uint64_t #define C const #define P static #define _(a...) {return({a;});} #define F_(n,a...) for(int i=0;isi_addr,*ab=(void*)((u64)a&~(pgsiz-1));mpstb(ab, pgsiz); W* curr=ab;i64 off=(curr-mem)%(END/3);F1(pgsiz,sizeof(W),*curr++=pat[off++%6]);} P u64 rup(u64 v)_(((v-1)&~(pgsiz-1))+pgsiz) #define RDS 65536 __attribute__((hot,flatten))int main(int argc, char* argv[]){ pgsiz=sysconf(_SC_PAGESIZE);mem=mmap(NULL,END*sizeof(W),PROT_NONE,MAP_NORESERVE|MAP_PRIVATE|MAP_ANON,-1,0); struct sigaction act;memset(&act,0,sizeof(struct sigaction));act.sa_flags=SA_SIGINFO;act.sa_sigaction=sigsegvh;sigaction(SIGSEGV,&act,NULL); FILE*f=fopen(argv[1],"rb");fseek(f,0,SEEK_END);u64 S=ftell(f);rewind(f);u64 szR=rup(S),off=0;mpstb(mem, szR*sizeof(W));char data[RDS]; C W a1_off=94-((END-1)/6-29524)%94,a2_off=94-((END-1)/3-59048)%94;while(S){int am=LKL(S>RDS)?RDS:S;fread(&data,1,am,f); #pragma GCC unroll 32 F_(am,W w=data[i];mem[off++]=w)S-=am;}for(;off,5z]&gqtyfr$(we4{WP)H-Zn,[%\\3dL+Q;>U!pJS72FhOA1CB6v^=I_0/8|jsb9m<.TVac`uY*MK'X~xDl}REokN:#?G\"i@" \ "AND SHATTER ME"[mem[c]];c++;d++;BRA INS_4:c=*d;NXT;INS_5:putchar(a);fflush(stdout);NXT; INS_23:;int CR=getchar();a=CR==EOF?END-1:CR;NXT;INS_39:a=*d=mrot(*d);NXT;INS_40:d=mem+*d;NXT; INS_62:a=*d=mcrz(a, *d);INS_68:NXT;INS_81:return 0;INS_DEF:NXT; }