forked from mame/quine-relay
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathQR.rb
64 lines (64 loc) · 8.25 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
57
58
59
60
61
62
63
64
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";%(obj
ect~QR~extends~App{#{f(%((display~"#{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/Tran
sform'><xsl:output~method='text'/><#{U="xsl:templat e"}~mat ch='/'>< `x21[CDATA[#{%(H,format="#{y="";f("^H{-}{txt}{#{Q[E[%(with~A
da.Text_Io;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[%(implem ent ~ mX=Z)+E[%(BEGIN{s=#{E[%(f={n~as~!t|'Y'*n};a=0;s=#{V[
Q[E["#!clude"+M["#!clude<iostrea m>`n! t ~mX{std::cout<<#{E[%(class~Program{public~static~void
~MX{System.#{C+E[(%(let~f(c~:In t): Lat!1=if~c=127then""else(sJ_of~c@"~g~caffe!
e~"@sJ_of~c@"`n")@f(c+1)!~Z("Q u !e~Relay~Coffee.`n`nIngredients.`n"@f~10@"`n
Method.`n");let~g(SJ~->[])`n[ c;t]->Z("Put~caffe!e~"@sJ_of(!t_of_ch
ar~c)@"~!to#$F.`n");g~t`n|_~ ->Z("Liquify#$G.`nPour#$G~!to~the~bak!
g~dish.`n`nServes~1.`n")!~g #{E[%((doseq[s(lazy-cat["IDENTIFI
CATION~DIVISION.""PROGRAM- ID.~QR.""PROCEDURE~DIVISION."'DISP
LA`x59](map~#(str"~~~~^" "(.replac e~%1"^"""^"^"")"^"&")(re-seq~#
".{1,45}""#{e[%((f=(n) ->Array(n+1).jo!~"Y");con sole.log("%s",#{V[E[%((H-l!e"#{
e["import~std.stdio;v oid~mX{H#{E[%(~:~A~."#{g*9}"~;~:~B ~A~."~WRITE(*,*)'"~A~;~:~C~B~T
`x59PE~."~'"~CR~;~: ~D~S"~#$D"~C~S^"~Z~^"(&"~C~S^"~#{e[%(pack age~ma!;import"fmt";func~mX{
fmt.Pr!t#{E[%(Z'#{ e[("ma!=putStr"+E[%(procedure~mX;i:=c:=0;s:=#{ E[%(.class~public~QR`n.supe
r~#{$T="java/io/P r!tStream"}`n.method~public~static~ma!([L#{S="java /lang/"}SJ;)V~;]`n.limit~s
tack~2`ngetstati c~#{S}System/out~L#$T;`nldc~"#{e[%(class~QR{public~st atic~void~ma!(SJ[]v){SJ~c
[]=new~SJ[9000] ,y="",z=y,s="#{z=t=(0..r=q=126).map{|n|[n,[]]};a="";b=-> n{a<<(n%78+55)%84+42};("
s=#{E[%(@s=glo bal[#{i=(s=%(PR~"`x4 8AI^~1.2~PR~"VISIBLE^~"#{Q["Z"+E[%(all :`n`t@echo~'#{d["l!el:99
999;Z#{E[%(.as sembly~t{}.method~st atic~void~MX{.entrypo!t~ldstr"#{e[%(m:d b`x60#{e[s="$Z#{E[%(Zf#
{E["#import"+ M["Z_sJ"+E[%(s=toasc i i#{E["Z#{E[%(say"#{e["#$D(output);beg!~ H(#{f((p="eval";%($_="
#{s=%(<?php~f unction~f($n){return ~st r_repeat("Y",$n);};$f="f";$z=3+$w=strl en($s=#{V[Q[E["!t~mX{H
#{E[%((______ __ ___)dup~=/s(|~~~~~.~ ~~|)d ef(#{Q["qr:-H('#{Q[e[%(for~c~!"".jo!([ "say~'%s'^n"%l~for~l~
!#{E[d[%(eval $s=%q(#$s)),?']]}.sp lit("^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~d up~6~eq{1~sub }if}rep eat~s~=~pop~pop}forall~=~qu it)]};return~0;}"]],"
{$f(",")}"]})*3; echo"^x89PNG^r^n ^x1a^ n";$m="";$t="^x c0^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),"IE N D")as$d)echo~pack("NA*N",strle n($d)-4,$d,crc32($d))
;?>);(s+N*(-s.size%6)).un pack("B*")[0].K( /.{6}/){n=$&.to_i~2;( (n+14)/26*6+n+47).chr}}";s|.|$n =ord$&;substr~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)]}; qui t"]};t=num2cell(b =11 -ceil(s/13)) ; f or~n=1:9m={};for~i=
1:141f=@(x,y,n)repmat(["Oo k"~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(dif f([0~s(x=b==n )])+13) ;end;Zf("%%s", t { :}))]]]})+N]};"+N
]}`x60`nglobal~_start`n_sta rt:mov~ed x,#{s.size}` n m ov~ecx,m`nmov~eb
x,1`nmov~eax,4`n!t~128`nmov ~ebx,0`nmov~eax,1`n!t ~128)]} "call~void~[mscorlib]Syst em.Conso l e ::Write(sJ)ret})
]};quit();",?$].K(?'){"'^''" }}')].K(/[:"]/,":^0") ,/[~Y `t;"(){}`[`]]/]}"~PR~"`x4bT`x48`x5 8 B `x59E~B`x59E)).
size+1}x~i8]c"#{s.K(/[^"]/){" ^%`x58"%$&.ord}}^00"d ecl are~i32@puts(i8*)def!e~i32@mX{%1=cal l ~i32@puts(i8*ge
telementptr([#{i}x~i8]*@s,i32~ 0,i32~0))ret~i32~0})] } ;typeof~Z=='function'?Z(s):console.l o g('%s',s)").byt
es{|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<12
6;)c[n]=""+(char)n;for(;i<s.leng th();){q=q*78+(s.cha rAt(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~m ethod)+N]};H("
DO,1<-#"||*s);s?while~t:=ord(move(1 ))do{i+:=1;u:=-i;every~0to~7do{u:=u*2+t%2;t/:=2} ;H("PLEAS E")^(i%4/3);H(
"DO,1SUB#"||i||"<-#"||((c-u)%256));c :=u;};H("PLEASEREADOUT,1^nPLEASEGIVEUP");e nd)]).tr(B,?&)]}'.t r('&','YY');)]
};})]}"~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`x 59E~;~D~)]};}"]}"))],'#{f(', ')}']}))]}"))["~~~~^"~^" .""STOP~RUN."
])](Zln(str"#{g*8}"s)))).reverse]}))]};}})] };}"]]],"$(f( ","))"]};for~i~!~range(len(s)):b~as~!t=s[i
];a-=b;Z(('+'*-a~if~0>a~else'-'*a)+'.');a=b;).t r~B,?`x21]};K(/`x21/,"Y",s);for(Z"def!e~void~
f(n){^"00g,^";for(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");")for(n=9;substr(s,j,1)`x21=sZ f("%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;}).reverse],/[`
[`]$]/],"[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(/[!HJKXYZ^`~]/){[B*2,:write,B,:tring,:gsub,"ain()",B*4,:print,g,:i
n][$&.ord%47%12]})))*"")#_buffer_for_future_bug_fixes_#_buffer_for_future_bug_fixes_#_buffer_for_future_bug_fixes_#_buffer_for_futu
########################## Quine Relay -- Copyright (c) 2013, 2014 Yusuke Endoh (@mametter), @hirekoke #########################)