#define Q(q) #q #include typedef int _; typedef char C; _ w, a, l, n, u, t, X, x; C *p, *q, *r; _ D(_ d) { return (d -= 48) > 9 ? (d & ~39) - 16 || ~-d % 16 > 5 ? -1 : d % 16 + 9 : d; } void e(C *d) { for(r = d; *d; d++) { *r++ = *d - 92 ? *d : (a = *++d - 114) ? a - 4 ? a + 4 ? a - 2 ? a + 16 ? a + 17 ? a - 6 ? *d : D(d[1]) >= 0 ? D(d[2]) >= 0 ? (d += 2), D(d[-1]) * 16 + D(*d) : D(*++d) : 'x' : 7 : 8 : 9 : 10 : 11 : 13; } *r = 0; } void o(const C *d) { _ b; for(; (b = *d); d++) b > 32 || b == 9 ? (b > 83 && b < 91 ? o("$"), b += 32 : 0), putchar((b & ~3) - 80 ? b : (b * 12 ^ 72) % 62) : 0; } _ main(_ d, C **b) { if( d > 1 && d < 4 ) { e(p = q = b[1]); if( d > 2 ) { e(q = b[2]); } for(o("#include/*S" "T=\"*/S" Q(static Q int Q l = 1 R I R i R o; int Q main(int Q O R char **s) {O=O?O: S)); *p || *q; p++, q++) { X = x = 1; for(w = 4; w >= 0; w -= 4) { d = ((*p >> w) - (*q >> w)) & 15; for(u = l = 0; !u && d - ((X - x) & 15); l++) { for(a = 1 << l; a--; u = ((t - x - l) & 15) - d ? u : a) for(t = X, n = 0; n < l; t += a & (1 << n++) ? 8 - ~-t % 8 : 1); } for(t = ((*p >> w) - 1) & 15; u; u /= 2) { X += u & 1 ? o("\t"), 8 - ~-X % 8 : (o("Q"), 1); x++; } for(; X % 16 - t; o("Q")) { X++; x++; } o("O/0-"); X += 4; x += 4; } o("S"); p = *p ? p : q; q = *q ? q : p; } d = 0; o( Q( **s; while( (O = getchar()) - EOF ) { l = l ? l - 100 ? l - 105 ? O - 58 ? O > 47 && O < 58 ? (i = i * 10 + O - 48) R l : 10 - O ? 100 - O || l - 5 ? l : O : 1 : 2 - l ? l + 1 : (i = 0) + 3 : O - 118 ? 6 : o ? (I |= i & 15) ? (o = !putchar(I)) + 8 : 0 : 11 + (I = (i & 15) << (o = 4)) : O - 'i' ? 6 : O : 0; } return Q 0; )); o( "}/*\";" Q( W = X = Y = Z = 1; V = "#{W = 8; T.each_byte{|i| U = i; %q["; if( V ) { foreach U (unpack "C*" R T) { ) "#];" Q( S U == 47 && Z == 79 && print(P0 R ":" R Y + 1 R ":" R X R ":: div\n"); X += U == 9 ? W - ~-X % W : 1; Y += U == 10 ? X = 1 : 0; Z = U; } } ) "#\"#*/S"); } return d ? o(*b), o("Q{msg1}Q[msg2]S"), 1 : 0; }