forked from mame/quine-relay
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathQR.rb
56 lines (56 loc) · 11.6 KB
/
QR.rb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
eval$s=%q(eval(%w(B=92.chr;g=32.chr;puts(eval(%q(N=10.chr;n=0;e=->s{Q[Q[s,B],?"].K(N,B+?n)};E=->s{'("'+e[s]+'")'};d=->s,t=?"{s.K(t){t+t}};def~f(s,n)s.K(/.{1,#{n*255}}/m){yield$S=E[$s=$&]}end;Q=->s,t=?${s.K(t){B+
$&}};M=->s{"<stdio.h>#{N}!t~mX{puts#{E[s]};return~0;}"};V=->s,a,z{s.K(/(#{B*4})+/){a+"#{$&.size/2}"+z}};C="Console.Write";$D="program~QR";$G="~contents~of"+$F="~the~mix!g~bowl";%(object~QR~extends~App{#{f(%((dis
play~"#{e[%(#{f(%[echo~-En~"#{Q[e[e["Transcript~show:~'#{d[%(H#{Q[E[%(fun~p~n=Z(Int.toSJ~n`x5e"~");p~0;p~0;p~130;List.tabulate(127,p);SJ.map(fn~c=>(p(3+ord~c);Z"-1~0~";c))#{E[%(proc~f~{n}~{sJ~repeat~"Y"~$n};puts
~a::=`x7e[reK~-all~{.}~"#{V[Q[e[%(!t~mX{Z#{d[E[%(module~QR;!itial~beg!~#{f(%(Module~QR:Sub~MX:Dim~s,n,i,c~As~Object:n=Chr(10):For~Each~c~!"#{d["<?xml#{O="~version='1.0'"}?><?xml-#{I="stylesheet"}~type='text/xsl'
href='QR.xslt'?><xsl:#{I+O}~xmlns:xsl='http: //www.w3. org/1999/`x58SL/Transform'><xsl:output~method='text'/><#{U="xsl:template"}~match='/'><`x21[CDATA[#{%(H,format="#{y="";f("^H{-}{txt}{#{Q[E[%(with~Ada.Text_I
o;procedure~qr~is~beg!~Ada.Text_I o.Put_ L!e( "#{d[%(Z "#{e[%W[STRINGz:=~226+~153,a:=z+~166,b:=a+"2"+z+~160,c:=b+"8"+z+~165,t:="#{d[%(H('#{Q[e[%(implement~mX=Z)+E[%(BEGIN{s=#{E[(s="#!clude#{M["#!clud
e<iostream>`n!t~mX{std::cout<<# {E[ % (class~Program{public~static~void~MX{System.#{C+E[(%(let~f(c~:Int):Lat!1=if~c=127the n""else(sJ_of~c@"~g~caffe!e~"@sJ_of~c@"`n")@f
(c+1)!~Z("Qu!e~Relay~Coffee.` n` nIngredients.`n"@f~10@"`nMethod.`n");let~g(SJ~->[])`n[c;t]->Z(" Put~caffe!e~"@sJ_of(!t_of_char~c)@"~!
to#$F.`n");g~t`n|_~->Z("Liq uify#$G.`nPour#$G~!to~the~bak!g~dish.`n`nServes~1.`n")!~g#{E [%((doseq[s(lazy-cat["IDENTIFICA
TION~DIVISION.""PROGRAM-ID .~QR.""PROCEDURE~DIVISION."'DISPLA`x59](map~#(str "~~~~^""(.replace~%1"^"""^"^
"")"^"&")(re-seq~#".{1,45 }""#{e[%((f=(n)->Array(n+1).jo!~"Y");conso le.log("%s",#{V[E[%((H-l!
e"#{e["import~std.stdio ;void~mX{H#{E["[#{"class~QR:Application{v oid~MX{#{f(%((pr!c~"#{
e[%(`nma!(_)->`nio:fH #{E[ "Zfn"+d[E[?>+E[?"+%(~:~A~."#{g*9}" ~;~:~B~A~."~WR ITE(*,*)'"~A~;~:~C~
B~T`x59PE~."~'"~CR~; ~:~D~ S"~#$D"~C~S^"~Z~^"(&"~C~S^"~ #{e[%(Z"#{e["s:=OutputTextUs er();WriteAll(s,#{
E[f('set~Z"-";Z'+E[ %(pa ckage~ma!;import"fmt";func~ mX{fmt.Pr!t("algoritmo~QR;!^xC3^xADcio ~imprima(^`"#{e[
e[%(^q="^""`n)+f((" ma!=putStr"+E["class~Q R{static~function~mX{n eko.Lib.Z#{E[%(procedure~mX;i:=c:=0;s:=#{E[% (.class~public
~QR`n.super~#{$T="j ava/ io/Pr!tStream"}`n.method~public~st atic~ma!([L#{S="j ava/lang/"}SJ;)V~;]`n.limit~stack~2`ngetstatic~#{S }System/out~L
#$T;`nldc~"#{e[%(clas s~QR{public~static~void~ma!(SJ[]v){SJ~c[]=new~SJ[ 99999],y="",z =y,s="#{z=t=(0..r=q=126).map{|n|[n,[]]};a="";b=->n{a<< (n%78+55)%8
4+42};("s=#{E["Z"+ Q[E[%(#$D;import~Regex;Void~mX{b="`x60";t="Section` x48eader+nam e:=QR;SectionPublic-ma!<-(^n";for~i~![0..#{s=%(@s=global[# {i=(s=%(PR
~"`x48AI^~1.2~P R~"VISIBLE^~"#{Q["Z"+E[%(all:`n`t@echo~'#{d["l!el:99999; Z#{E[%(. assembly~t{}.method~static~void~MX{.entrypo!t~ldstr"#{e[%(m:d b`x60#{e[
s="$Z#{E[%(Zf# {E["#import"+M["Z_sJ"+E[%(s=toascii#{E["Z#{E[%(say"#{e["#$D( outp ut);beg!~H(#{f((p="eval";%($_="#{s=%(<?php~$f=function($n){return ~str_rep
eat("Y",$n); };$z=3+$w=strlen($s=#{V[Q[E["!t~mX{H#{E[%((___________)dup~=/s( |~ ~~~~.~~~|)def(#{Q["qr:-H('#{Q[e[%(for~c~!"".jo!(["say~'%s'^n"%l~for~l~!#{E[d["e val$s=%q
(#$s)",?'] ]}.split("^n")]):Z('cat("r=fput(char(%d))^n")'%ord(c))`nZ('cat("end ^n")') )],?']}').",B]}){9~7{exch~dup~1~and~79~mul~32~add~exch~2~idiv~3 ~1~roll
~s~exch~2 ~!dex~exch~put~1~sub~dup~6~eq{1~sub}if}repeat~s~=~pop~pop}forall~=~qui t)]};return~0;}"]],"{$f(",")}"]})*3;echo"^x89PNG^r^ n^x1a^
n";$m="" ;$t="^xc0^0^xff";for($i=-1;$i<128*$z;$m.=$c--?($w-$c||$i>$z)&&$i/$z<($c< $w?ord($s[(!t)($c/3)]):$c--%3+2)?$t[2].$t[$c%3 %2].$t
[$c%3]: "^0^0^0":"^0")$c=++$i%$z;foreach(array("I`x48DR".pack("NNCV",$w+2,128,8,2), "IDAT".gzcompress($m),"IEND")as$d)echo~pa ck("NA
*N",str len($d)-4,$d,crc32($d));?>);(s+N*(-s.size%6)).unpack("B*")[0].K(/.{6}/){n=$& .to_i~2;((n+14)/26*6+n+47).chr}}";s|. |$n=or
d$&;su bstr~unpack(B8,chr$n-!t($n/32)*6-41),2|eg;Z~pack"B*",$_).scan(/[~,-:A-z]+|(.)/) {p="s++#{$1?"chr~#{$1.ord}+e":$&+? +};"+
p};p), 1){"'#$s',"}}'')end."]}"`nend)]};quit"]};t=num2cell(b=11-ceil(s/13));for~n=1:9m= {};for~i=1:141f=@(x,y,n)repmat( ["Ook
"~x~" ~Ook"~y~32],[1~abs(n)]);m(i)=[f(z=46,63,n)~f(q=z-(i<13)*13,q,i-13)~f(33,z,1)~f(63, z,n)];end;t(x)=m(diff([0~s( x=b==
n)])+ 13);end;Zf("%%s",t{:}))]]]})+N]};"+N]}`x60`nglobal~_start`n_start:mov~edx,#{s.size} `nmov~ecx,m`nmov~ebx,1`n mov~ea
x,4`n !t~128`nmov~ebx,0`nmov~eax,1`n!t~128)]}"call~void~[mscorlib]System.Console::Write( s J)ret})]};quit();",?$ ].K(?'
){"'^ ''"}}')].K(/[:"]/,":^0"),/[~Y`t;"(){}`[`]]/]}"~PR~"`x4bT`x48`x58B`x59E~B`x59E)). si ze+1}x~i8] c"#{ s.K(/[^"]/){"^%`x5 8"%$&.
ord}} ^00"declare~i32@puts(i8*)def!e~i32@mX{%1=call~i32@puts(i8*getelementptr([#{i}x~ i 8]*@s,i32~0,i 32~0))ret~i 32~0});s.size/9 9}]{s=s
ubstr( #{E[s]},i*99,99);g=[Global()];replace("YY","YY",s,g);replace("^"","Y^"",s,g); t +="^""+s+"^".Z ;^n";}putStr(" k"+b) ;for~c~!~arr ay(t+")
;"){d= rep(b+b+"s",8)+"i";for~j~![0..6]d+=b+substr("kki",c>>(6-j)&1,2);putStr(d); }f or~c~!~array("AG-`x48-`x48Fy.Il D==;=jdlAy=; =jldltldl tlldlAyF
y=?==;= ?-A=j@?zlAlldClldGFy.lAuGFyFy=;=jtlAyFy=?==;=?-{==nAGy==-1AFy>=?ylldCzll dltl dlAut11"){for~i~![0..2]putStr(su bstr("ski"+b,c%8 3-10>> i*2&3,1))
;}})]]]} ;typeof~Z=='function'?Z(s):console.log('%s',s)").bytes{|n|r,z=z[n]||( b[r/78]; b[r];q<6083&&z[n]=[q+=1,[]];t[n] )};b[r/78];b[r]}";! t~i =0,n=0,q=0
;for(;++ n<126;)c[n]=""+(char)n;for(;i<s.length();){q=q*78+(s.charAt(i)-13) %84;if(i++ %2>0){y=q<n?c[q]:y;c[n++]=z+y.charAt(0);System.out.Z ( z=c[q]);q=0
;}}}})]}" `n!vokevirtual~#$T/Zln(L#{S}SJ;)V`nreturn`n.end~method)+N]};H(" DO,1<-#"||*s); s?while~t:=ord(move(1))do{i+:=1;u:=-i;every~0to~7 do{u:=u*2+t%
2;t/:=2};H ("PLEASE")^(i%4/3);H("DO,1SUB#"||i||"<-#"||((c-u)%256));c:=u ;};H("PLEASEREADOU T,1^nPLEASEGIVEUP");end)]};}}"]).tr(B,?&),51) {%(show~"Z'#{e
[$s].K~B+?", %("~"^q"~")}'.tr('&','YY');"`n)}]]}^`");fim")})],62){"Z n#$S`n"}]});CloseStre am(s);QUIT;"]}")]}"~DUP~FOR~S"~&A,&"~C~ NE`x58T~S^"~&A)
^",&"~C~0~DO~ B~."~&char("~COUNT~.~."~),&'"~CR~LOOP~S^"~&^"^""~C~ S"~end~#$D"~C~A~."~STOP" ~CR~A~."~END"~CR~B`x59E~;~D~).K (?"){'"34,"'}+?"]
],?%]]}.)]}")), 15){"Pr!t#$S;"}}}}"}]pq"]};}"]}"))],'#{f(',') }']}))]}"))["~~~~^"~^".""STO P~RUN."])](Zln(str "#{g*8}"s)))).rever
se]}))]};}})]};}" ]}/****//****/";t={};b="";L="";n=i=0;D= ->n{L<<(n+62)%92+35;D};s.bytes{|c| n>0?n-=1:(t[c]=(t[c]|
|[]).reject{|j|j<i- 3560};x=[];t[c].map{|j|k=(0..9 0).f!d{|k|not~s[i+1+k]==s[j+k]}||91;k> 4&&x<<[k,j]};x=x.max)?(
n,j=x;x=b.size;(u=[x, 3999].m!;D[u%87 ][u/87];L<<b[0,u];b[0,u]="";x-=u)while~x>0;x =4001+i-j;D[x%87][x/87][n-
5]):b<<c;t[c]+=[i+=1]};% (d=#{Q[E[L]]};s="";while~0<len(d):`n~x~as~!t,y~as~ !t=d;i=3;if(n=(x-5)%92+(y-5)%
92*87)>3999:`n~~for~_~!~ran ge(((d[2]cast~!t-5)%92+6)):s+=s[len(s)+4000-n]`n~else:s+= d[2:i=n+2]`n~d=d[i:]`na=0;for~i~!
~range(len(s)):b~as~!t=s[i];a-=b ;Z(('+'*-a~if~0>a~else'-'*a)+'.');a=b)).tr~B,?`x21]};K(/`x21/,"Y" ,s);for(Z"def!e~void~f(n){^"00g,^";fo
r(m=128;m;m/=2){^"00g,4,:^";if(n/m%2<1 )^"4+^";^",^";};^"4,:,^"}^"389**6+44*6+00p29*,^";";++j<=length(s);Z"f("n");")fo r(n=9;substr(s,j,1)`x21=sZf("%c",++n););Z"^"
4,:,@^"^nquit"})]],?']}');)]}";FORiTO`~UPBtDO`~INTn:=ABSt[i];Z(~(50+n%64)+c+~(50+n%8MOD8)+c+~(50+nMOD8)+b+"`x4a"+a)OD]*"REPR"]}")]}");end;)]+"`nsys.exit~0",/[^{}]/]}}",35){y<<",`n"+$S;"%s"}}")+y}]]></#{U}></xsl:
#{I}>"].K~N,'"&~VbLf~&"'}":s="~~~":For~i=0To~7:s~&=Chr(32-(Asc(c)>>7-i~And~1)*23):Next:#{C}(s~&n~&Chr(9)&n~&"~~"):Next:#{C}(n~&n~&n):End~Sub:End~Module),3){%($H("%s",#$S);)+N}}end~endmodule)],?%]};return~0;}).re
verse],/[`[`]$]/],"[f~",?]]}"~^x60.&]k^n::=^na)]};Z"0~0~-1";)]]};),?']}';cr"]]]}"|sed~-E~-e~'s/([`x5eY]|Y.){1,120}/Zf("%s","^0");^n/g'],7){%(Zf("%s","#{d[d[$s],?']}")`n)}}quit)]}")),196){%(Z#$S;)}}})).gsub(/[!HJ
KXYZ^`~]/){[B*2,:write,B,:tring,:gsub,"ain()",B*4,:print,g,:in][$&.ord%47%12]})))*"")#_buffer_for_future_bug_fixes_#_buffer_for_future_bug_fixes_#_buffer_for_future_bug_fixes_#_buffer_for_future_bug_fixes_#_buff
################################################################## Quine Relay -- Copyright (c) 2013, 2014 Yusuke Endoh (@mametter), @hirekoke #################################################################)