#include #/* XXXXXXXXXX*/include # define D(o,l,I)/*X X X X X X X */o##l##I/* e = nil;ARGF.each_char{ | c | print c; e=e ? c < "A"|| c >"Z": c == "\e" ?1:(!sleep 0.1 ) } ;%q{XXXXXXXXXXXXXX*/ D( t ,ype ,def ) D ( i ,n,t)_; D ( t , ypede , f ) D ( s , tru ,ct ) { _ x , y , z ; } b ; b*U , u ; _ h ; FILE* ( f); _ H , h ,g =6 * 40, V , i , o , l , e , t = 1,E [ 4 ] , I[22] = { 4352, 95, 4554, 1, 2902, 446, 2, 29839, 1841, 11171, 8541, 511, 785, 9, 23, 63, 145, 96, 128, 6, 61466, 135167 }, p, q, x, y; void s() { u = U[x], U[x] = U[y], U[y] = u; } void m(_ p, _ q) { _ d = (p + q) / 2; if( d - p ) { m(p, d); m(d, q); for(i = p, o = d, y = H + p; y < H + q; y++) { x = i >= d || (o < q && (U[i].y > U[o].y || (U[i].y == U[o].y && U[i].x > U[o].x))) ? o++ : i++; s(); } for(y = p, x = H + p; y < q; x++, y++) s(); } } void v() { for(i = l = 0; i < 22 && (o = l + I[i++], l = o + I[i], e < o || e > l); i++) {} x += 2 - i / 22; } void a() { if( H + 2 > t ) { U = (b*)realloc(U, (t *= 2) * 2 * sizeof(b)); } U[H].x = x; U[H].y = y; U[H++].z = e; p = p > y ? y : p; q = q < y ? y : q; v(); } void P(_ p) { E[o = 0] = e = p; if( p >> 7 ) { for(; p > 63 >> o; p >>= 6) { E[o++] = (p & 63) | 128; } E[o] = (g * 8 >> o & g) | p; } for(; o > -1;) fputc(E[o--], f); } void Q(_ O) { O ? fprintf(f, "\33[%d%c", abs(O), V + (O > 0)) : 0; V ^= 2; } char d[2] = "r"; _ r(char *u) { return !(f = fopen(u, d)) ? perror(u), 1 : 0; } _ main(_ O, char **Z) { f = stdin; if( --O && (**++Z - 45 || 1[*Z]) && r(*Z) ) { goto X; } for(*d |= 5; (e = fgetc(f)) > 0; h = h < 0 ? e - 91 ? e < 48 || e > 59 ? l *= (e & 2) - 1, e > 64 && e < 67 ? y += l, 0 : e < 69 && (x += l) < 0 ? x = 0 : 0 : ~(l = l * 10 + e - 48) : h : h ? (e = l = l << 6 | (e & 63), !--h) ? a(), h : h : (e & 224) == 192 ? l = e & 31, 1 : (e & g) == 224 ? l = e & 15, 2 : (248 & e) == g ? l = e & 7, 3 : e - 27 ? e == 10 ? y++, x = 0 : e - 32 ? e == 9 ? x = (x + 8) & ~7 : e > 32 ? a(), h : h : x++, h : ~(l = 0)) { V += (V + e) << 10; V ^= V >> 6; } fclose(f); f = stdout; if( U ) { if( O < 1 ) { m(0, U[H].x = H); for(h = x = 0, y = p; h < H; v()) { for(; y < U[h].y; y++, x = 0) { P(10); } for(; x < U[h].x; x++) { P(32); } for(; h < H && U[++h].y == y && U[h].x == x;) {} P(U[h - 1].z); } if( x ) P(10); } else { srand(V); for(x = H; --x; s()) { y = rand() % -~x; } if( --O ? r(*++Z) : O++ ) { goto X; } for(t = h = 0, y = q + 1; h < H && t < O; fclose(f)) { if( t && r(*++Z) ) { D( g , o , to ) X ;}if (!t){; for( h=q -p+2;--h ;P(10 ) ); }for ( V = 65 ;h