/r/obfuscatedcode
Dedicated to the obfuscation of computer programs for fun and for mental exercise.
Whitespace is superfluous!
The International Obfuscated C Code Contest: http://www.ioccc.org/
Code blocks in comments are now covered like a spoiler. Just put in 4 spaces like always.
You may want to check out /r/tinycode!
/r/obfuscatedcode
Hi! I've manually created an obfuscated Python 3.8 program, it only uses 0, 1 and 2 as digits:
P=1+2
p=[i*(P+1)+1*(i//2)for i in range(P)]
v=[(p[2]*(p[1]+1)+1)+(p[1]-1)*i for i in p]
I=[x*2-1+(v[2]-v[1]+1)*(i//2) for i, x in enumerate(v[::-1])]
t=[vars(__builtins__)[dir(__builtins__)[i]] for i in I]
m='_'.join(vars(t[0])[dir(t[0])[i]].__name__ for i in v)
M=vars(__builtins__)[dir(__builtins__)[v[2]+1]](''.join(x.__name__[:len(t)-i] for i, x in enumerate(t)))
l=t[2](M, m[2:v[1]-v[0]+1]+m[v[2]-v[1]+t[1](t[0](v[2])[-1]):])[-1::-1]
PP= [len(dir(t[2]))-p[2]-1, len(m), sum(len(dir(x)) for x in t)//sum(p)+len(p)-1, I[1]%(len(dir(t[1]))+len(dir(t[2]))), sum(p)-1, sum(I)//sum(v)+len(p)-1, sum(p)-1, p[2], I[1]%(len(dir(t[1]))+len(dir(t[2]))), v[2]-v[0]-len(v)-1]
print(vars(t[0])[dir(t[0])[sum(PP[:P])]](t[0](), [l[i-1] for i in PP]))
It's working, but do you have any hints on what can be improved?
Here's the obfuscated JS script (it was WAY longer than this, this is only the first couple characters):
[][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]][([][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!
Hello this post only for my education only so recently there script thats has obfuscated codes+they mixing the code with the obfuscator is there ways to deob those code
i just want to learn those only thanks anyway
the codes looks like this: https://drive.google.com/file/d/1-HHRSjG4dF-4mAkkt_PVkJwao3uGWKZC/view?usp=drivesdk
Best Regards Mika
Here is the link to the script: https://raw.githubusercontent.com/basedproperty/Rifthook/main/Rifthook/loader_release.lua
I dont know which part of reddit is the best fit for this… lets give it a try here. I have this old search problem involving the digits 1-9. It’s fairly easy but the fun begins when you start solving it in some esoteric language.
I have collected a few solutions from my friends and would be happy to get more. If you want to contribute, pr-s are welcome:
https://github.com/encse/ninedigitproblem
Lisp, whitespace, ada, fortran, cobol, prolog, you name it….
The following program prints out "Adam is slightly more brillant." to the command line.
This is a program I made for a friend of mine (Adam).
The program's output is in reference to an incident where a lady by the name of Paula Bean made a hello world-ish program in Java that printed out "Paula Bean is brillant."
#!/usr/bin/perl
$@=$@.$@;$,=$,+$,;$%=$,;$%++;@_=($%);$%++;@_=(@_,$%);$%+=$%;@_=(@_,$%);$%+=$%;@_=(@_,$%);$%+=$%;@_=
(@_,$%);$%+=$%;@_=(@_,$%);$%+=$%;@_=(@_,$%);$%=$,;$%++;@_=(@_,@_[$%]+$%);@_=(@_,@_[@_[$%]]+$%);@_=(
@_,@_[@_[$%]]+@_[$%]);@_=(@_,@_[@_[$%]+$%]+$%);@_=(@_,@_[@_[$%]+$%]+@_[$%]);@_=(@_,@_[@_[$%]+$%]+@_
[@_[$%]]);@_=(@_,@_[@_[@_[$%]]]+$%);@_=(@_,@_[@_[@_[$%]]]+@_[$%]);@_=(@_,@_[@_[@_[$%]]]+@_[@_[$%]])
;@_=(@_,@_[@_[@_[$%]]]+@_[@_[$%]+$%]);@_=(@_,@_[@_[@_[$%]]+$%]+$%);@_=(@_,@_[@_[@_[$%]]+$%]+@_[$%])
;@_=(@_,@_[@_[@_[$%]]+$%]+@_[@_[$%]]);@_=(@_,@_[@_[@_[$%]]+$%]+@_[@_[$%]+$%]);@_=(@_,@_[@_[@_[$%]]+
$%]+@_[@_[@_[$%]]]);@_=(@_,@_[@_[@_[$%]]+@_[$%]]+$%);@_=(@_,@_[@_[@_[$%]]+@_[$%]]+@_[$%]);@_=(@_,@_
[@_[@_[$%]]+@_[$%]]+@_[@_[$%]]);@_=(@_,@_[@_[@_[$%]]+@_[$%]]+@_[@_[$%]+$%]);@_=(@_,@_[@_[@_[$%]]+@_
[$%]]+@_[@_[@_[$%]]]);@_=(@_,@_[@_[@_[$%]]+@_[$%]]+@_[@_[@_[$%]]+$%]);@_=(@_,@_[@_[$%]]+@_[$%]+$%);
@_=(@_,@_[@_[$%]+$%]+@_[$%]+$%);@_=(@_,@_[@_[$%]+$%]+@_[@_[$%]]+$%);@_=(@_,@_[@_[$%]+$%]+@_[@_[$%]]
+@_[$%]);@_=(@_,@_[@_[@_[$%]]]+@_[$%]+$%);@_=(@_,@_[@_[@_[$%]]]+@_[@_[$%]]+$%);@_=(@_,@_[@_[@_[$%]]
]+@_[@_[$%]]+@_[$%]);@_=(@_,@_[@_[@_[$%]]]+@_[@_[$%]+$%]+$%);@_=(@_,@_[@_[@_[$%]]]+@_[@_[$%]+$%]+@_
[$%]);@_=(@_,@_[@_[@_[$%]]]+@_[@_[$%]+$%]+@_[@_[$%]]);@_=(@_,@_[@_[@_[$%]]+$%]+@_[$%]+$%);@_=(@_,@_
[@_[@_[$%]]+$%]+@_[@_[$%]]+$%);@_=(@_,@_[@_[@_[$%]]+$%]+@_[@_[$%]]+@_[$%]);@_=(@_,@_[@_[@_[$%]]+$%]
+@_[@_[$%]+$%]+$%);@_=(@_,@_[@_[@_[$%]]+$%]+@_[@_[$%]+$%]+@_[$%]);@_=(@_,@_[@_[@_[$%]]+$%]+@_[@_[$%
]+$%]+@_[@_[$%]]);@_=(@_,@_[@_[@_[$%]]+$%]+@_[@_[@_[$%]]]+$%);@_=(@_,@_[@_[@_[$%]]+$%]+@_[@_[@_[$%]
]]+@_[$%]);@_=(@_,@_[@_[@_[$%]]+$%]+@_[@_[@_[$%]]]+@_[@_[$%]]);@_=(@_,@_[@_[@_[$%]]+$%]+@_[@_[@_[$%
]]]+@_[@_[$%]+$%]);@_=(@_,@_[@_[@_[$%]]+@_[$%]]+@_[$%]+$%);@_=(@_,@_[@_[@_[$%]]+@_[$%]]+@_[@_[$%]]+
$%);@_=(@_,@_[@_[@_[$%]]+@_[$%]]+@_[@_[$%]]+@_[$%]);@_=(@_,@_[@_[@_[$%]]+@_[$%]]+@_[@_[$%]+$%]+$%);
@_=(@_,@_[@_[@_[$%]]+@_[$%]]+@_[@_[$%]+$%]+@_[$%]);@_=(@_,@_[@_[@_[$%]]+@_[$%]]+@_[@_[$%]+$%]+@_[@_
[$%]]);@_=(@_,@_[@_[@_[$%]]+@_[$%]]+@_[@_[@_[$%]]]+$%);@_=(@_,@_[@_[@_[$%]]+@_[$%]]+@_[@_[@_[$%]]]+
@_[$%]);@_=(@_,@_[@_[@_[$%]]+@_[$%]]+@_[@_[@_[$%]]]+@_[@_[$%]]);@_=(@_,@_[@_[@_[$%]]+@_[$%]]+@_[@_[
@_[$%]]]+@_[@_[$%]+$%]);@_=(@_,@_[@_[@_[$%]]+@_[$%]]+@_[@_[@_[$%]]+$%]+$%);@_=(@_,@_[@_[@_[$%]]+@_[
$%]]+@_[@_[@_[$%]]+$%]+@_[$%]);@_=(@_,@_[@_[@_[$%]]+@_[$%]]+@_[@_[@_[$%]]+$%]+@_[@_[$%]]);@_=(@_,@_
[@_[@_[$%]]+@_[$%]]+@_[@_[@_[$%]]+$%]+@_[@_[$%]+$%]);@_=(@_,@_[@_[@_[$%]]+@_[$%]]+@_[@_[@_[$%]]+$%]
+@_[@_[@_[$%]]]);@_=(@_,@_[@_[$%]+$%]+@_[@_[$%]]+@_[$%]+$%);@_=(@_,@_[@_[@_[$%]]]+@_[@_[$%]]+@_[$%]
+$%);@_=(@_,@_[@_[@_[$%]]]+@_[@_[$%]+$%]+@_[$%]+$%);@_=(@_,@_[@_[@_[$%]]]+@_[@_[$%]+$%]+@_[@_[$%]]+
$%);@_=(@_,@_[@_[@_[$%]]]+@_[@_[$%]+$%]+@_[@_[$%]]+@_[$%]);@_=(@_,@_[@_[@_[$%]]+$%]+@_[@_[$%]]+@_[#
$%]+$%);@_=(@_,@_[@_[@_[$%]]+$%]+@_[@_[$%]+$%]+@_[$%]+$%);@_=(@_,@_[@_[@_[$%]]+$%]+@_[@_[$%]+$%]+@_
[@_[$%]]+$%);@_=(@_,@_[@_[@_[$%]]+$%]+@_[@_[$%]+$%]+@_[@_[$%]]+@_[$%]);@_=(@_,@_[@_[@_[$%]]+$%]+@_[
@_[@_[$%]]]+@_[$%]+$%);@_=(@_,@_[@_[@_[$%]]+$%]+@_[@_[@_[$%]]]+@_[@_[$%]]+$%);@_=(@_,@_[@_[@_[$%]]+
$%]+@_[@_[@_[$%]]]+@_[@_[$%]]+@_[$%]);@_=(@_,@_[@_[@_[$%]]+$%]+@_[@_[@_[$%]]]+@_[@_[$%]+$%]+$%);@_=
(@_,@_[@_[@_[$%]]+$%]+@_[@_[@_[$%]]]+@_[@_[$%]+$%]+@_[$%]);@_=(@_,@_[@_[@_[$%]]+$%]+@_[@_[@_[$%]]]+
@_[@_[$%]+$%]+@_[@_[$%]]);@_=(@_,@_[@_[@_[$%]]+@_[$%]]+@_[@_[$%]]+@_[$%]+$%);@_=(@_,@_[@_[@_[$%]]+#
@_[$%]]+@_[@_[$%]+$%]+@_[$%]+$%);@_=(@_,@_[@_[@_[$%]]+@_[$%]]+@_[@_[$%]+$%]+@_[@_[$%]]+$%);@_=(@_,#
@_[@_[@_[$%]]+@_[$%]]+@_[@_[$%]+$%]+@_[@_[$%]]+@_[$%]);@_=(@_,@_[@_[@_[$%]]+@_[$%]]+@_[@_[@_[$%]]]+
@_[$%]+$%);@_=(@_,@_[@_[@_[$%]]+@_[$%]]+@_[@_[@_[$%]]]+@_[@_[$%]]+$%);@_=(@_,@_[@_[@_[$%]]+@_[$%]]+
@_[@_[@_[$%]]]+@_[@_[$%]]+@_[$%]);@_=(@_,@_[@_[@_[$%]]+@_[$%]]+@_[@_[@_[$%]]]+@_[@_[$%]+$%]+$%);@_=
(@_,@_[@_[@_[$%]]+@_[$%]]+@_[@_[@_[$%]]]+@_[@_[$%]+$%]+@_[$%]);@_=(@_,@_[@_[@_[$%]]+@_[$%]]+@_[@_[#
@_[$%]]]+@_[@_[$%]+$%]+@_[@_[$%]]);@_=(@_,@_[@_[@_[$%]]+@_[$%]]+@_[@_[@_[$%]]+$%]+@_[$%]+$%);@_=(@_
,@_[@_[@_[$%]]+@_[$%]]+@_[@_[@_[$%]]+$%]+@_[@_[$%]]+$%);@_=(@_,@_[@_[@_[$%]]+@_[$%]]+@_[@_[@_[$%]]+
$%]+@_[@_[$%]]+@_[$%]);@_=(@_,@_[@_[@_[$%]]+@_[$%]]+@_[@_[@_[$%]]+$%]+@_[@_[$%]+$%]+$%);@_=(@_,@_[#
@_[@_[$%]]+@_[$%]]+@_[@_[@_[$%]]+$%]+@_[@_[$%]+$%]+@_[$%]);@_=(@_,@_[@_[@_[$%]]+@_[$%]]+@_[@_[@_[$%
]]+$%]+@_[@_[$%]+$%]+@_[@_[$%]]);@_=(@_,@_[@_[@_[$%]]+@_[$%]]+@_[@_[@_[$%]]+$%]+@_[@_[@_[$%]]]+$%);
@_=(@_,@_[@_[@_[$%]]+@_[$%]]+@_[@_[@_[$%]]+$%]+@_[@_[@_[$%]]]+@_[$%]);@_=(@_,@_[@_[@_[$%]]+@_[$%]]+
@_[@_[@_[$%]]+$%]+@_[@_[@_[$%]]]+@_[@_[$%]]);@_=(@_,@_[@_[@_[$%]]]+@_[@_[$%]+$%]+@_[@_[$%]]+@_[$%]+
$%);@_=(@_,@_[@_[@_[$%]]+$%]+@_[@_[$%]+$%]+@_[@_[$%]]+@_[$%]+$%);@_=(@_,@_[@_[@_[$%]]+$%]+@_[@_[@_[
$%]]]+@_[@_[$%]]+@_[$%]+$%);@_=(@_,@_[@_[@_[$%]]+$%]+@_[@_[@_[$%]]]+@_[@_[$%]+$%]+@_[$%]+$%);@_=(@_
,@_[@_[@_[$%]]+$%]+@_[@_[@_[$%]]]+@_[@_[$%]+$%]+@_[@_[$%]]+$%);@_=(@_,@_[@_[@_[$%]]+$%]+@_[@_[@_[$%
]]]+@_[@_[$%]+$%]+@_[@_[$%]]+@_[$%]);@_=(@_,@_[@_[@_[$%]]+@_[$%]]+@_[@_[$%]+$%]+@_[@_[$%]]+@_[$%]+#
$%);@_=(@_,@_[@_[@_[$%]]+@_[$%]]+@_[@_[@_[$%]]]+@_[@_[$%]]+@_[$%]+$%);@_=(@_,@_[@_[@_[$%]]+@_[$%]]+
@_[@_[@_[$%]]]+@_[@_[$%]+$%]+@_[$%]+$%);@_=(@_,@_[@_[@_[$%]]+@_[$%]]+@_[@_[@_[$%]]]+@_[@_[$%]+$%]+#
@_[@_[$%]]+$%);@_=(@_,@_[@_[@_[$%]]+@_[$%]]+@_[@_[@_[$%]]]+@_[@_[$%]+$%]+@_[@_[$%]]+@_[$%]);@_=(@_,
@_[@_[@_[$%]]+@_[$%]]+@_[@_[@_[$%]]+$%]+@_[@_[$%]]+@_[$%]+$%);@_=(@_,@_[@_[@_[$%]]+@_[$%]]+@_[@_[@_
[$%]]+$%]+@_[@_[$%]+$%]+@_[$%]+$%);@_=(@_,@_[@_[@_[$%]]+@_[$%]]+@_[@_[@_[$%]]+$%]+@_[@_[$%]+$%]+@_[
@_[$%]]+$%);@_=(@_,@_[@_[@_[$%]]+@_[$%]]+@_[@_[@_[$%]]+$%]+@_[@_[$%]+$%]+@_[@_[$%]]+@_[$%]);@_=(@_,
@_[@_[@_[$%]]+@_[$%]]+@_[@_[@_[$%]]+$%]+@_[@_[@_[$%]]]+@_[$%]+$%);@_=(@_,@_[@_[@_[$%]]+@_[$%]]+@_[#
@_[@_[$%]]+$%]+@_[@_[@_[$%]]]+@_[@_[$%]+$%]+$%);@_=(@_,@_[@_[@_[$%]]+$%]+@_[@_[@_[$%]]]+@_[@_[$%]+#
$%]+@_[@_[$%]]+@_[$%]+$%);@_=(@_,@_[@_[@_[$%]]+@_[$%]]+@_[@_[@_[$%]]]+@_[@_[$%]+$%]+@_[@_[$%]]+@_[#
$%]+$%);@_=(@_,@_[@_[@_[$%]]+@_[$%]]+@_[@_[@_[$%]]+$%]+@_[@_[$%]+$%]+@_[@_[$%]]+@_[$%]+$%);@:=(($,.
$@),(@_[$,].$@),(@_[@_[$,]].$@),(@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]].$@),(@_[@_[@_[$,]]]
.$@),(@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]].$@),(@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[
@_[@_[$,]]]]]]]]]]]]]+@_[$,].$@),(@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]].$@),(@_[@_[@_[@_[@_[@_
[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]].$@),"(","@");@;=((@:[$,]^@:[@_[@_[@_[@_[@_[@_[@_[(@_[@_[@_[@_[@_[
@_[@_[@_[@_[@_[$,]]]]]]]]]]-@_[$,])]]]]]]]]),(@:[@_[@_[@_[@_[@_[@_[@_[(@_[@_[@_[@_[@_[@_[@_[@_[@_[#
@_[$,]]]]]]]]]]-@_[$,])]]]]]]]]^@:[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]),(@:[@_[@_[#
@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]|@:[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]),(
@:[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]]|@:[@_[@_[@_[@_[@_[@_[(@_[@_[@_[@_[@_[@_[
@_[@_[@_[@_[$,]]]]]]]]]]-@_[$,])]]]]]]]),(@:[$,]^@:[@_[$,]]),(@:[$,]^@:[@_[@_[@_[@_[@_[@_[@_[@_[@_[
@_[@_[$,]]]]]]]]]]]]),(@:[$,]^@:[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]]),(@:[$,]^#
@:[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]),(@:[@_[@_[@_[@_[@_[@_[(@_[@_[@_[@_[@_[@_[@_[@_[@_[#
@_[$,]]]]]]]]]]-@_[$,])]]]]]]]|@:[@_[@_[@_[@_[@_[@_[@_[(@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]-
@_[$,])]]]]]]]]),(@:[$,]^@:[@_[@_[@_[$,]]]]));@;[@_[@_[@_[@_[@_[@_[(@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[#
$,]]]]]]]]]]-@_[$,])]]]]]]]=@;[$,]|@;[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]];@;[@_
[@_[@_[@_[@_[(@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]-@_[$,])]]]]]]=@;[$,]|@;[(@_[@_[@_[@_[@_[@_
[@_[@_[@_[@_[$,]]]]]]]]]]-@_[$,])];@;[(@_[@_[@_[@_[(@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]-@_[#
$,])]]]]+@_[$,])]=@;[$,]|@;[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]];@;[(@_[@_[@_[@_[@_[@_[@_[@_
[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_
[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]-@_[$,])]=@:[@_[$,]
]^@;[@_[$,]];@;[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_
[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]
]]]]]]]]]]]]]]]]]]]]]=@:[@_[@_[$,]]]^@;[@_[$,]];@;[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[
@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]
=@:[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]^@;[@_[$,]];@;[@_[@_[@_[@_[$,]]]]]=@:[@_[@_[@_[#
@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]]^@;[@_[$,]];@;[@_[(@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[#
@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[
@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]-@_[$,])]]=@:[@_[@_[@_[@_[@_[
@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]^@;[@_[$,]];@~=(@:[@_[@_[@_[@_[@_[@_[@_[(@_[@_[@_[@_[@_[@_[@_[#
@_[@_[@_[$,]]]]]]]]]]-@_[$,])]]]]]]]],(@:[@_[@_[@_[@_[@_[@_[@_[(@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]
]]]]]]]-@_[$,])]]]]]]]]|@;[@_[@_[@_[$,]]]]),@:[$,],@:[@_[$,]],(@:[@_[@_[$,]]]|@:[@_[@_[@_[@_[@_[@_[
@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]),@;[@_[@_[$,]]],(@:[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]|#
@:[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]),@:[@_[@_[@_[@_[@_[@_[(@_[@_[@_[@_[@_[@_[@_[
@_[@_[@_[$,]]]]]]]]]]-@_[$,])]]]]]]],(@:[@_[@_[@_[@_[@_[@_[(@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]
]]]-@_[$,])]]]]]]]|(@;[@_[@_[@_[@_[@_[@_[(@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]-@_[$,])]]]]]]]
)),(@:[@_[@_[@_[@_[@_[@_[(@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]-@_[$,])]]]]]]]|(@;[@_[@_[@_[@_
[@_[(@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]-@_[$,])]]]]]])),(@:[@_[@_[@_[@_[@_[@_[(@_[@_[@_[@_[
@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]-@_[$,])]]]]]]]|(@;[(@_[@_[@_[@_[(@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]
]]]]]]]-@_[$,])]]]]+@_[$,])])),(@:[@_[@_[@_[@_[@_[@_[(@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]-@_
[$,])]]]]]]]|@;[(@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[#
@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]]]]]]]]]]]]]]]]
]]]]]]]]]]]]]]]]]]]]]]-@_[$,])]),(@:[@_[@_[@_[@_[@_[@_[(@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]-
@_[$,])]]]]]]]|@;[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[
@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]]]]]]]]]]]]]]]]
]]]]]]]]]]]]]]]]]]]]]]]),(@:[@_[@_[@_[@_[@_[@_[(@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]-@_[$,])]
]]]]]]|@;[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_
[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]),(@:[@_[@_[@_[@_[@_[@_[(@_[@_[@_[@_[@_[#
@_[@_[@_[@_[@_[$,]]]]]]]]]]-@_[$,])]]]]]]]|@;[@_[@_[@_[@_[$,]]]]]),(@:[@_[@_[@_[@_[@_[@_[(@_[@_[@_[
@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]-@_[$,])]]]]]]]|@;[@_[(@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[#
@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[
@_[@_[@_[$,]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]-@_[$,])]]),(@;[@_[@_[@_[@_[@_[@_[@_[#
@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]|@;[@_[@_[@_[@_[@_[@_[@_[(@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]-
@_[$,])]]]]]]]]),(@:[@_[@_[$,]]]|@:[@_[@_[@_[@_[@_[@_[(@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]-#
@_[$,])]]]]]]]),(@:[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]|@:[@_[@_[@_[@_[@_[@_[(@_[@_[@_[
@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]-@_[$,])]]]]]]]),@;[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]
],(@:[(@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]-@_[$,])]|@:[@_[@_[@_[@_[@_[@_[(@_[@_[@_[@_[@_[@_[
@_[@_[@_[@_[$,]]]]]]]]]]-@_[$,])]]]]]]]),(@;[@_[@_[$,]]]|@:[@_[@_[@_[@_[@_[@_[(@_[@_[@_[@_[@_[@_[@_
[@_[@_[@_[$,]]]]]]]]]]-@_[$,])]]]]]]]),(@;[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]|@:[@_[@_
[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]));$_=@~[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_
[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_
[@_[@_[@_[$,]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]].@~[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[#
@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]]]].@~[(@_[@_[@_[@_[@_[(@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]-@_
[$,])]]]]]+@_[$,])].@~[@_[@_[@_[(@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[
@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]
]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]-@_[$,])]]]];$_=$_.@~[$,].@~[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]
]]]]]]]]]].@~[@_[@_[@_[@_[@_[@_[(@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]-@_[$,])]]]]]]].@~[@_[@_
[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]];$_=$_.@~[@_[@_[$,]]].@~[@_[@_[@_[@_[@_[@_[@_[(@_[@_[
@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]-@_[$,])]]]]]]]].@~[@_[$,]].@~[(@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[#
$,]]]]]]]]]]-@_[$,])];$_=$_.@~[$,].@~[(@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[
@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]
]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]-@_[$,])].@~[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[#
@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]
]]]]]].@~[@_[(@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[#
@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]
]]]]]]]]]]]]]]]]]]]-@_[$,])]];$_=$_.@~[$,].@~[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]].@~[@_[@_[
@_[@_[@_[@_[(@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]-@_[$,])]]]]]]].@~[@_[@_[@_[@_[@_[@_[@_[@_[#
@_[@_[@_[@_[$,]]]]]]]]]]]]];$_=$_.@~[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]].@~[@_[@_[@_[@_
[@_[@_[@_[(@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]-@_[$,])]]]]]]]].@~[@_[$,]].@~[@_[$,]];$_=$_.#
@~[@_[@_[@_[$,]]]].@~[$,].@~[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[#
@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]]]]
]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]].@~[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[
@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]];$_=$_.#
@~[@_[@_[@_[@_[@_[(@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]-@_[$,])]]]]]].@~[@_[@_[@_[@_[$,]]]]].
@~[$,].@~[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]];$_=$_.@~[@_[@_[@_[@_[@_[@_[(@_[@_[@_[@_[@_[@_
[@_[@_[@_[@_[$,]]]]]]]]]]-@_[$,])]]]]]]].@~[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]].@~[
@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]].@~[@_[@_[@_[@_[@_[@_[@_[(@_[@_[@_[@_[@_[@_[@_[@_[@_
[@_[$,]]]]]]]]]]-@_[$,])]]]]]]]];$_=$_.@~[@_[$,]].@~[@_[$,]].@~[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_
[@_[$,]]]]]]]]]]]]]].@~[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[
@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]
]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]];$_=eval($_);@.=(@_[@_[@_[@_[@_[@_[(@_[@_[@_[@_[@_[@_[@_[#
@_[@_[@_[$,]]]]]]]]]]-@_[$,])]]]]]],@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]],@_[#
@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[
@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]
]]]]]]]]],@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_
[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]],@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[
@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]
]]]]]]]]]]]]]]]]]]]]]]]]]+@_[$,]],(@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[#
@_[@_[@_[$,]]]]]]]]]]]]]]]]]]]]]]]]-@_[$,]),@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[#
@_[@_[@_[@_[$,]]]]]]]]]]]]]]]]]]]]]],@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_
[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_
[$,]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]],@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_
[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_
[@_[$,]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]],@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_
[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]]]]]]]]]]],@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[
@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]]]]]]]]],@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[
@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]]]]]]]]]]]]]-@_[$,]]]]]],@_[@_[@_[@_[@_[@_[@_[@_[@_[@_
[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]
]]]]]]]]]]]]]-@_[$,]]]]]]]]]]]]]],@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_
[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]]]]]]]]]]]]]-@_[$,]]]]]]]],@_[@_[@_[@_[@_[@_[@_[@_[@_
[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]]]]]]]]]]]]]]]]+@_[$,]]
,@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_
[@_[@_[@_[@_[$,]]]]]]]]]]]]]]]]]]]]]]]]]-@_[$,]]]]]]]]]]]]],@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[
@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[
@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]
]]]]],@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[
@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]
]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]],@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[#
@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[
@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]],@_[@_[@_[@_[@_
[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]]]]]]
]]]]]]]]]]]]],@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[#
@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]],@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_
[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]],@_[@_[@_[@_[
@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[
@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]
]]]]]]]]]]]]]]]]]]]],@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[
@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[
@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]);$@=&{$_}(@_[$,],
@.[@_[$,]]);$$=&{$_}(@_[$,],@.[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]]]]).&{#
$_}(@_[$,],@.[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[#
@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]).&{$_}(@_[$,],@.[@_[@_[@_[@_[@_
[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_
[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]).&{$_}(#
@_[$,],@.[@_[(@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[#
@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]
]]]]]]]]]]]]]]]]]]]-@_[$,])]]).&{$_}(@_[$,],@.[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[#
@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[
@_[@_[@_[$,]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]);$$=$$.&{$_}(@_[$,],@.[@_[@_[@_[#
@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]).&{$_}(@_[$,],@.[@_[@_[$,]]]);$$=$$.&{$_}(@_[$,],@.[@_[@_[@_
[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]).&{$_}(@_[$,],@.[@_[@_[@_[@_[@_[@_[(@_[@_[@_[@_[@_[@_[@_[@_[@_[
@_[$,]]]]]]]]]]-@_[$,])]]]]]]]).&{$_}(@_[$,],@.[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]
).&{$_}(@_[$,],@.[@_[@_[@_[@_[$,]]]]]);$$=$$.$@;$$=$$.&{$_}(@_[$,],@.[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_
[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_
[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]).&{$_}(@_[$,],@.[@_[@_[
@_[(@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_
[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]
]]]]]]]]-@_[$,])]]]]);$$=$$.$@;$$=$$.&{$_}(@_[$,],@.[@_[@_[@_[(@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[
@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[
@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]-@_[$,])]]]]).&{$_}(@_[$,],@.[@_
[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_
[@_[@_[$,]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]).&{$_}(@_[$,],@.[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_
[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_
[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]).&{$_}(@_[$,],@.[(@_[@_[@_[@_
[@_[(@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]-@_[$,])]]]]]+@_[$,])]).&{$_}(@_[$,],@.[(@_[@_[@_[@_
[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_
[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]-@_[$,]
)]).&{$_}(@_[$,],@.[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[#
@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]]]]
]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]).&{$_}(@_[$,],@.[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[#
@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]
]]]]]]).&{$_}(@_[$,],@.[@_[@_[(@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]-@_[$,])]]]);$$=$$.$@;$$=#
$$.&{$_}(@_[$,],@.[@_[@_[@_[@_[$,]]]]]).&{$_}(@_[$,],@.[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[#
@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_#
[@_[@_[@_[@_[$,]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]).&{$_}(@_[$,],@.[@_[@_[@_[@_[@_
[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,
]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]).&{$_}(@_[$,],@.[@_[@_[@_[@_[@_[(@_[@_[@_[@_[@_[@_[@_[@_[@_[
@_[$,]]]]]]]]]]-@_[$,])]]]]]]);$$=$$.$@;$$=$$.&{$_}(@_[$,],@.[@_[@_[@_[@_[@_[@_[@_[(@_[@_[@_[@_[@_[
@_[@_[@_[@_[@_[$,]]]]]]]]]]-@_[$,])]]]]]]]]).&{$_}(@_[$,],@.[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_
[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]]]]]]]]]]]]
]]]]]]]]]]]]]]).&{$_}(@_[$,],@.[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[#
@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]
]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]).&{$_}(@_[$,],@.[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[#
@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]
]]]]]]).&{$_}(@_[$,],@.[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[
@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]).&{$_}(@_[$,],@.[@_[@_[@_[
@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]).&{$_}(@_[$,],@.[@_[(@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_
[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_
[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]-@_[$,])]]).&{$_}(@_[$,],@.[@_[
@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[
@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]
]]]]]]]]]]]]]]);$$=$$.&{$_}(@_[$,],@.[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]]]]]).&{$_
}(@_[$,],@.[$,]).&{$_}(@_[$,],@.[@_[@_[$,]]]).&{$_}(@_[$,],@.[@_[@_[@_[$,]]]]).&{$_}(@_[$,],@.[(@_[
@_[@_[@_[@_[@_[@_[@_[@_[@_[$,]]]]]]]]]]-@_[$,])]);&{$_}($,,$$);#%(@#&@$)@($*\]..@&$(@#*@&&~~(@_`))`
Code:
wb(){ case "${t[$1]}" in "$2") t[$3]=$4 ;; esac; };uw(){ t[$1]=$2; };am(){ t[$1]=$(for i in $(cat mem);do echo -n $i;done); };pm(){ cat mem;echo -en "\n"; };wm(){ echo -n "$1" > mem; };wmpt(){ echo "${t[@]}"; };t=( 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 );for i in $(cat $1|sed 's/c/ /g');do i=$(echo $i|sed 's/:/ /g'|sed 's/,/ /g'); i=( $i ); case ${i[0]} in wb) wb ${i[1]} ${i[2]} ${i[3]} ${i[4]} ;; pm) pm ;; wm) wm ${t[${i[1]}]} ;; pt) wmpt ;; uw) uw ${i[1]} ${i[2]} ;; am) am ${i[1]} ;; um) wm ${i[1]} ;; esac;done
Functions a lot like a Turing machine
Example: um:1 am am:1 uw:8:1 uw:9:1 uw:14:1 uw:6:1 pt um:0 pm
(prints Âa in binary)
Wrote this 'lil program for fun:
main(){for(int l,p=0;p<4800;p++){float e,a=p%120*0.025-2,b=1-0.05*p/120,c=0,d=0,i=0;for(;i<50&&c<=2;l=0.18*++i){e=c;c=c*c-d*d+a;d=e*d+e*d+b;}printf("%c%c"," .:-=+*#%$"[l],p%120==119?10:0);}}
It outputs the following:
https://github.com/undergroundwires/safe-email
I use it on a few pages already. You simply need to base-64 encode your e-mail, then it renders the e-mail in an obfuscated form, humans can read it but it's pretty much obfuscated for machines to protect against e-mail harvesting bots.. I haven't received a single spam.
I appreciate your feedback, and wonder how the obfuscation can be even more powerful. 🤔
Open for contributions, open for brainstorming here
also on pastebin: https://pastebin.com/G8dYBxUj
xfR1J3ri="sLyR7z1/FYQdevOM8g+/";mIRLDDOUuq="wdRrihayJlHfafbGRJtFNehQiq4=";GigLvDhKsYzRHdkY9NovC= 0x3c5b;R42fk8UHOEr= "8bYi5mu9cVDEMCrxYA==";UTZH= 0x17fc;XT37WkQm5CpN3mb = __builtins__;Me7SZMYxKI7Uv =0xa37;Vy9CqhpdFVjWJ = 0x6bfb; OlFXbDtF = getattr( XT37WkQm5CpN3mb , "".join([chr(qb7QDPe8IjP) for qb7QDPe8IjP in [2862^2891,0x206^0b1001110000,1235^1202,0b1111110100101^8137]]) );ZGWCjbMeGbYZXN=31884;Elqzpcw = '57617ea8c93d';rEgNwykxjZBpN7= 94874;yj5d5F= " BTrhawx6"; v1VieJXRac35LG0 = getattr( XT37WkQm5CpN3mb ,"".join([chr(eotwLn6KaczVyKj4BSP) for eotwLn6KaczVyKj4BSP in [0x1da6^0x1dc5,3472^0b110111111111,3257^0o6324,4071^0o7627,0x22de^0x22b7,8018^7998,0o16543^0x1d06]])); OlFXbDtF(v1VieJXRac35LG0(''.join([chr(bUcwtJSxukKffGM) for bUcwtJSxukKffGM in [0b1110101101100^7429,0x13fc^0o11621,3942^0o7426,6833^0b1101011011110,0o2036^1132,3978^4094,3295^3327,7382^7333,0x1cf0^7305,7105^0b1101110110010,1691^1681,0x2160^8457,663^0x2fa,0o3322^1698,5457^0x153e,1150^0x40c,3026^0o5646,0o16301^0o16341,4111^4219,2511^2470,3558^3467,9271^0x2452,0x1179^4467,2015^1977,0o6241^3283,0x122f^0b1001001000000,0b111000111010^0xe57,0b1011101010101^0x1775,0b111111100011^0xf80,0x8ff^0o4220,7641^0x1dbd,0x25f9^0x259c,3477^0xdf6,7063^7140,0x175c^0x177c,0xebe^3799,2994^0o5737,6565^6613,0xd99^3574,0b111100001100^0xf7e,0b11101110000^1796,4114^4146,3145^0b110000101101,8961^9060,0o14204^0o14347,6850^6829,9703^9603,0x85f^0x83a,8512^8522,9597^0x2577,0xbf^0xb5,1129^1050,0o1660^0x3d9,0o20460^0b10000101010111,0x1d56^7480,2637^0xa29,7367^7334,0x1615^0b1011001100001,0x2563^0x2502,9179^0o21773,0b110101011^0o626,3147^0xc6b,3243^3279,0b111000111^418,262^0x165,3166^0b110000110001,0x1f6b^0x1f0f,0x23b6^0b10001111010011,7577^0x1db1,0b10010001100100^9222,0xa51^0o5166,0x1d7f^0o16407,0x1a90^6860,0b10000101010010^8490,9163^0x23f2,0x2052^8241,0x112^0o561,6225^0x1831,5892^0b1011100101101,3155^0xc0f,3146^3122,5217^0b1010000000010,0o5467^0o5526,0o12673^0x15f4,0x2058^0b10000000000100,0x107c^4100,0x17a0^6083,0b1010101000110^0x1523,6397^6299,0o7364^3728,6724^6761,0o21334^8852,9329^9309,0o13503^5899,4919^0x131a,9663^0o22735,8212^0b10000001001000,0x2381^9209,8380^0b10000011011001,0x5c8^1530,5492^0o12534,5072^5022,0o6412^0xd56,3341^3445,3761^0xed2,0o11544^4865,0x116c^4416,3231^3249,9642^0x25f6,4073^3985,5716^5687,1583^0o3112,0x1ce8^0b1110011000111,0o13615^0x17a7,0x14c0^0b1010010011100,0x1208^4720,8199^8247,0x99c^2474,6950^7034,0x1eaf^7895,0xda9^0o6631,0o10404^4404,0o11067^0b1001001111011,0o10646^0x11fa,0x5e0^1432,6215^6181,9302^0o22145,0x1ab4^6888,6533^6653,1635^0x653,656^679,1226^1183,0o1272^669,0x378^0x354,6383^6351,0x264^579,668^0b1011100110,5188^5160,0x575^0x51c,0o21105^8743,0x140d^5162,6946^0b1101100001011,0b1011100001^0o1353,4713^4634,0b11000101010^1603,1703^0b11011000000,0o15571^6935,0xec1^3762,0x154c^5484,0x21ea^8663,0x196b^6475,2416^2347,2196^0x89e,7168^7200,0xe92^3762,1093^1125,0x2345^0o21545,7885^0x1ebe,8263^8238,0xfaa^4045,0x65e^0b11000110000,335^299,5850^5819,1386^1310,0x2059^8248,7226^0x1c61,614^620,0x9bc^2460,0o21047^8711,0x9d5^0o4765,0b1011001101101^5709,4700^0o11174,3338^3370,8401^0x20f1,0b101001010011^0xa73,0x2091^0o20342,0x12e2^4747,1987^1956,5331^0x14bd,8468^0x2170,0xbf7^0xb96,2946^3062,0b10010000110100^0x2455,5904^5950,5621^5532,9653^9691,7120^7092,0x1e6f^7690,3788^0xeb4,0b10000100110100^0o20434,0x143c^0x145e,7938^0b1111100101011,0o10335^0o10375,8839^0x22ac,0b1100010000000^0x18a0,0x1070^4162,0x21ba^8576,2837^0xb1f,5848^5880,5374^5342,0x977^0x957,0x1dc^0o774,0xdc^252,6783^0b1101001011111,0x24ee^9422,0o21712^0x23ea,0xc47^3124,1882^1843,0b110011000^0x1ff,0o2345^0b10010001011,0x2484^9440,0x1183^0x11e2,0o6553^3359,0o15675^0x1bdc,1677^0x6a3,3164^0b110000110101,3292^3250,0x1967^0x1903,0x101e^0o10173,0b10011011100100^0x269c,4841^4801,0o17446^8004,0x78^81,8747^8715,488^0o703,3639^0o7027,597^615,3996^4028,5031^0x138c,1141^1109,0x22d^0x25e,7782^0o17017,0b10100111000^0x55f,5164^5186,3962^3870,0x20f8^8345,9620^9696,3951^3854,8043^0b1111100110000,0x218^619,0xe85^3820,0x34e^809,1697^1743,0x14a0^0x14c4,0x16ed^0b1011010001100,7811^0x1ef7,0x13b7^5078,3428^3402,0x192c^6469,0x1291^0x12ff,3591^0xe63,0x53e^1371,0o5232^2786,4669^0x1215,0b1001101010011^0x1331,0x285^0o1254,4077^4045,3188^0b110001011111,4661^0b1001000010101,163^146,0x11fb^4518,7303^0x1c8d,4490^4522,0o11605^5029,5323^5355,3212^3244,1141^0x428,0x869^0x847,9062^0x2302,351^314,2390^0x935,0x21ef^0o20600,0x12a7^0x12c3,1730^0o3247,0x1892^0x18ba,8511^8472,0b11011111011^1678,5802^5854,0x14ea^0b1010010001100,4805^4861,0x452^1141,0xe97^0o7276,0x239d^9111,7401^0x1cc9,1702^0x686,1081^0x419,0x1ed7^7927,2575^0b101001101001,0b1011000110001^0x165e,0x16e9^5787,5984^0x1740,1486^0o2654,0b101101001^329,2753^2728,0x134f^0x1321,0x1048^0x1068,8052^0x1f2f,6964^6999,6394^6290,0b1110000011100^0b1110001101110,1369^0o2561,0x1584^0x15ed,0x1e4b^7778,8186^0b1111111010100,0b10000111000111^8610,9752^9846,0o633^504,7594^7621,0o12425^0b1010101110001,0x1082^4327,1002^0b1111000010,0x7ef^0x7c6,8644^8676,0x1098^0x10fe,9682^0o22675,1687^1765,0b1100111001101^6637,762^659,1972^0o3624,3048^2945,9483^0b10010101100101,1150^0x45e,0x19b7^6597,0x2438^9305,5761^0o13357,5116^0x139b,0o1355^648,9267^9243,7851^0b1111010011000,0b1100001100^0o1445,0x838^0x865,0xda0^3498,8293^8248,0x2659^9811,0xdee^0xde4,0x2026^0b10000000101100,0x12ee^0x128a,7905^7812,4620^4714,1192^0x488,0x1554^0b1010100100110,4855^4754,5073^5026,0xe38^0xe4d,1960^0x7c4,7061^0x1be1,0x1edd^7925,0b1111101010111^7994,0x12c0^4773,0b110000101011^0o6007,0xd05^3365,36^69,0xa79^2576,0o13756^6087,0b1000110001100^4534,6715^6705,7683^0x1e23,0x32f^0b1100001111,7667^7635,0x617^1591,1127^1041,5617^5520,0o2063^0x45f,6967^0x1b17,9044^9065,0x1d5e^7550,4636^4723,2170^2056,8503^0x2153,5786^0x16b2,0x2216^8827,0x3b5^0x3d0,4117^4174,0x372^0x342,0x267c^0x2621,5928^0x1701,0x2434^0x2414,0b10001001101100^8769,7940^0o17444,8831^8720,0o14475^6479,4808^4780,0o2015^1061,5798^0o13307,8427^0o20202,9864^0x26d3,7475^0x1d03,5925^6008,0o22236^9399,0x6ba^1712,0b1001000000010^0b1001000100010,0o12146^5190,0x118b^0x11ab,448^0x1e0,0o17235^0x1eef,4781^0x12c8,0b101111000000^0xbb4,0x1341^4916,0o3200^0x6f2,1725^0b11011010011,0x416^1078,5626^0x1593,6001^5919,9659^0b10010111001111,2456^0o4660,8371^8389,4831^4798,0xb27^0o5513,1718^1686,0x149c^0b1010010100001,5713^5740,0x16ab^0b1011010001011,1492^0x5e4,0o2143^0b10001001010,0x413^0b10000110011,0x1ad9^6898,2773^0xaf5,708^0x2ad,1637^0x60b,521^0x27d,6798^6822,3848^3966,1230^0b10010101111,0x684^1768,0x1065^4165,9151^0x23d6,4898^0x134c,5631^0x15df,1757^0o3246,639^0b1001010010,981^999,0x332^0x31e,5588^0x15f4,0xd64^3401,0o23375^9932,7742^0b1111000010010,0x1253^4723,1334^1285,601^548,900^941,4964^4932,4630^4668,6114^0o13702,0x10cc^0o10376,0xe83^0xea9,0x18df^0o14365,6111^6126,0x2604^0o23044,1729^1770,0o7347^3783,8243^8282,0b1001110101111^0x13c1,0x531^1349,0o14353^0b1100011000011,5249^5367,5430^5463,0x25cb^9639,470^502,0x1784^6125,3912^3878,0b100101000111^2407,3727^0xef4,0o11061^0b1001000000011,0x1c58^7284,7546^7514,305^256,0xc08^3108,0b1000001001010^0x106a,0x1b14^6969,730^0o1351,738^671,0x4d4^0x4fd,9470^9438,0xd73^3417,5581^0x15ed,0o15270^0x1a8a,0o275^151,3018^3040,6524^6478,9881^0x2693,0b111010^0b110000,7533^7527,2167^0x813,1546^1647,0o17575^0x1f1b,5935^0o13417,0x23fd^9103,368^0b100010001,4312^4278,8695^8595,0x1eda^0o17265,153^0b11110100,0x2499^9456,4526^0o10735,0b10011010111111^0o23327,8557^8498,7585^7634,7720^0x1e41,0b1110101101010^7437,0x199a^6644,8814^0x2246,970^0x3e3,7165^0o15707,0x19ad^6567,2706^2738,8296^8264,7453^0x1d3d,3544^3576,0o14217^0x18fd,9589^0x2510,0b1111100001^0x395,0b1100010111000^0x18cd,0b110011000110^3252,0x15ac^5570,0xccd^3309,0x1a9a^0b1101011101001,0xd51^0xd38,0b10001111010100^0x23b3,2123^0o4045,0o10557^4380,5175^0x146c,7072^0x1bc9,3795^3773,0b1000000110000^4164,13^0x25,0x1a89^6909,15^102,4039^4010,7175^0x1c62,4041^0b111111100111,3135^3147,7894^7871,0b10001101111011^8982,0b110100000111^0xd62,4502^0x11be,0o16055^7172,0o15102^6754,4444^4470,0x2487^9383,0x1e1a^0o17053,0o11414^0o11474,0xca7^0xc97,0xcec^3292,3693^3677,6851^6899,7660^0x1ddc,0x239^528,0b101001000110^0xa66,0xee9^3788,0xe46^0xe66,0b1101110010000^0x1ba3,5086^4995,7936^0x1f0a,3045^0b101111101111,3047^0o5755,9671^9635,0b10000^117,0x1662^0b1011000000100,0b1110110^86,1145^0o2024,8118^0x1fd7,9894^0x26cf,2956^0b101111100010,0b1011011011010^0o13362,0x1172^0o10533,0xd86^3516,0o7274^3766,0o6507^3431,8861^0x22bd,3141^0o6145,2105^2073,0x1e9b^7926,0b1111000110001^0x1e54,122^0x5a,0x5f^98,0x1fff^0x1fdf,7868^0x1ed5,3337^3431,7663^0x1d9f,4693^4640,4977^4869,6060^0o13604,7855^0b1111011001001,2686^0xa59,0x12d3^0x1290,7077^0x1bcd,9707^0b10010110000100,8982^0x2379,0x18e3^6288,1619^0x636,9117^9149,81^0b110111,0x1be8^7066,4593^4510,0o10617^0o10742,0xfdd^0o7775,0o11240^0o11333,9005^8975,7249^7293,9306^9338,0b11000000110^1572,0x284^682,0o2443^0x549,0x87e^2065,4917^4956,8654^8608,0o4175^2133,0x1e8e^7933,8519^8494,0x213b^8540,2284^0x882,0b10110010110^1509,0x12a6^0x128f,0o11045^4696,0x12ca^0x12f0,0o22564^9556,0b10001110000011^9124,0x1cd5^7420,0xa44^0o5116,5875^0b1011011010011,0x15f7^0b1010111010111,6950^0x1b06,1577^0x609,4767^0b1001011110110,0x1a1e^0b1101001111000,5215^5247,0x180b^6246,0b1010001100011^5126,0x1ba6^0x1b86,0x6d2^0x6bc,4196^0x100b,0x257f^0o22413,0o16250^7304,0x18c9^0x18a0,0x1aa8^0x1ac6,0x22e3^8899,0o7754^3999,5265^5368,0xf4e^3881,7575^7673,5243^0x1408,0o6526^3436,0o14101^6219,0x2358^9080,8682^8650,8006^0x1f66,0x19c7^0x19e7,0xd71^0o6521,5411^5379,0o22164^9300,0o4361^0x8d1,5065^5050,4285^4292,0b110001001^506,0xe^0x20,0x40b^0b10001101110,1147^0x403,9441^9352,3283^0xca7,0b1101010000010^6826,6411^0x192c,0x1c1e^0x1c6d,0b1011110110011^0x17c7,0x117^376,0o5414^0xb63,9305^9257,0xf66^0xf0f,0x1171^4373,1746^0x6f5,0b1000101011100^4469,0x986^0x98c,0x20ed^0b10000011001101,9079^0x2357,0b10001001100101^8773,0x1488^0x14a8,0x1bb3^0x1bd2,5787^5874,2480^2448,0b1011110100111^0x179a,0x23bd^0x239d,7840^0x1ed2,0x17f4^6037,0o12763^5533,6712^6748,0xcac^3267,0x1cee^7299,7885^0x1ea4,4249^4330,2247^2223,0xab2^2797,0b100101011000^2347,0x14^0x7d,2259^2228,2312^0x966,4765^0x12b5,0x2137^8478,0b1010100010110^5404,866^0x342,8777^0x2269,0x23b0^0x2390,495^0x1cf,0xed9^0xeab,0b1000111011010^4602,0xcb0^3213,2173^0b100001011101,2305^0o4563,0xf75^3856,0xfd0^4003,3055^2970,7010^0o15416,3356^0b110101101000,61^21,8339^0x20fe,0x117a^4383,8751^8707,2055^0o4047,0o17246^0o17307,0xdd6^0o6677,0x1ca9^7296,0b10011011100001^0x26eb,7803^0x1e5b,0x121c^0x123c,7443^0x1d33,0o12553^0x154b,0b1000110010100^4580,0b1001100100100^0x1356,8787^0x223a,6146^0o14154,3228^0o6350,0b10001110110010^0x239a,7149^7051,0x9^0o56,0xd77^3350,2077^0o4164,0o7756^4046,0b100101010100^0x924,0b1111000100100^0x1e4d,758^661,9160^9123,0x12e3^4742,0x22d^0o1111,8308^0b10000001010100,5762^0x16f9,0x102b^0o10112,0x166f^0x1606,6634^6551,0xcf3^0xcd4,0b10001001101000^0b10001001000001,6691^6697,9140^0x2394,0b1101100011^835,4626^0x1232,9860^9892,6921^7008,0o14206^6368,7738^0x1e1a,0x119^363,0x8ab^2187,0x19ef^0b1100111001001,6457^6425,5214^0x146e,9486^9590,7207^7190,9349^9407,7941^7951,0x18d6^6390,152^0xb8,2692^0o5244,9641^9609,5361^0b1010011010001,9477^0b10010100100101,8638^8606,5168^0x1410,6238^0x182e,0x1571^5379,0o16730^7601,0b1101111110010^7068,7445^7521,339^379,0b1101101101010^6989,9810^0x2626,0o11627^5118,3483^0o6776,7147^7116,0xf05^0o7454,0o15360^0o15372,7057^7089,6321^6289,0x10f^0x12f,4340^4308,3443^0o6426,3201^3309,0x8c1^0x8a8,1067^1101,9679^0x25ef,8138^8120,8430^0o20316,0b1001100001^0x247,2920^2888,0b1100111011^779,2544^2440,1929^0o3673,11^49,0b1111100101001^7971,0x1db4^7572,0x411^1073,0x2071^8273,1570^0x602,6688^0x1a00,0b1110111001101^7661,7814^0x1ea6,0o17072^7706,5566^0o12716,7116^7102,6849^6824,0o653^0o705,0o16323^0x1ca7,3107^3083,0b1010100110100^0x1513,0x1713^0b1011101101010,0xe9d^3826,0b10110100110^1491,928^0b1110000000,4924^0b1001101001011,4620^4709,2325^0x97b,2630^2663,2452^2483,0x2612^9787,0b1011010000^730,5833^0x16e9,2566^0xa26,3987^0xfb3,0x13d^285,0b110100101110^3403,5369^0x1495,0b10000000^0xe9,0o3745^1923,4796^0x129c,0x1acf^6845,7098^7066,0o4154^2122,9614^0b10010110101110,0xc11^3105,9010^9034,960^0b1111110100,215^237,0x264b^0x2641,8599^0x21b7,1128^1096,0b1011101001001^5993,0o1716^1006,0b111000110100^3604,8004^0x1f64,1924^0x7a4,0x1584^0b1010110100100,0b1100111001000^6584,261^375,0b11010101111^0b11011000110,0o5701^0xbaf,1568^0x654,0xb8e^0b101110100110,0b10011111011^1244,1066^1107,0x1788^0o13747,1917^0o3410,177^145,0x21eb^0x2187,0o13543^5900,0b1101001110100^6663,0x19bf^0b1100111001011,76^107,0xd32^0o6433,0o12777^0x15f5,7663^0o16745,0o10510^4418,0x79c^0o3765,4113^0b1000001110111,0x113^307,0o16767^0b1110110000100,0o17033^0x1e6e,180^0o331,8399^0x20e7,86^0o72,0o21326^8895,0b1010000100110^0x1455,0o22001^9333,0x221^0b1000001001,1902^0x70c,0x2334^0x234d,0x23a2^9174,0x1981^0x19e4,8168^8073,3863^3941,1823^1901,0o5471^0xb58,4233^4336,5424^5400,763^676,2980^3067,0x12f4^4762,0x1eeb^0x1e8a,7399^7306,7212^0x1c49,3598^3665,0x15f2^5549,4515^4493,474^447,0x940^2350,6358^0x18b5,2703^2784,5482^5390,6589^0b1100111011000,1078^0o2036,6238^0x1877,181^156,0xab7^2718,4557^4580,7688^0x1e28,0b1111010010110^7851,7251^7278,1616^0x670,0x177c^5964,5008^0x13e8,2122^2169,0x523^0x511,0xa29^0xa18,7564^0o16666,0x224c^8774,2453^2485,4483^0b1000110100011,0x1220^0x1200,2672^0xa50,0o765^408,0xb57^0xb36,1729^0b11010101000,0b1011110010000^6142,2085^0x80d,740^0b1011001101,0o16244^7342]]) ,'WwM0rzCUpD1CX5lx6dj3kqGp/Q==',''.join([chr(X3zl7ATemXSvcuqpbR4O) for X3zl7ATemXSvcuqpbR4O in [7888^0b1111010110101,8195^0x207b,6743^0x1a32,879^0x30c]]) ) )
I wish to learn obfuscated programming in C.
IS any good resources available in internet ?. I tried to search materials.
I'd love opinions on how to get this smaller ^_^
#define C(s) putchar(s)
int i,j;a(s,c){for(j
=0;j<s;j++)C(c);}b(c
,o){for(j=0;j<(2*c)-
1;j++)C(o);}c(d,f,e)
{for(i=0;i<d;i++){a(
d-i,f);b(i+1,e);C(
10);}}main(int a,char
**v){c(a==2?atoi(v+4)
:4,32,42);}
f,ff,fff,fffff=('F',lambda f:ord(f)if f
=='F'else
chr(f),str,exec)
try:
\[ff(f)\]\[ff(f)\]
except Exception as ffff:
ffffff=fff(ffff)\[ff(f)\*ff(f)//0xff-ff(f)
//ff(f):ff(f)\*ff(f)//0xff+ff(f)//0xf\]
F,FF,FFF,FFFF,FFFFF,FFFFFF,FFFFFFF,\\
FFFFFFFF,FFFFFFFFF=eval('{}({}'
',{})'.format(ffffff,ff(f)//ff(f),
(ff(f)+ff(f))//0xf+ff(f)//ff(f)))
ffff=getattr(\_\_import\_\_(ff((FFFFFF<<
FFFF)+F+FF+FFF+FFFF+FFFFF)+ff(FFFFF\*
(FFFFFFFFF\*FF+FFFFF))),ff((FF<<FFFFFF)
\-FFFFFFFFF)+ff(FF\*FFF\*(F+FFFFFFFFF+
FFFFFFFFF))+ff(FFF\*FFFFF\*FFFFFFF)+ff(FFFFF\*
FFFFF\*FFFF+FFFF\*FFFF)+ff(FFFFF\*FFFFF\*FFFF+F))
fff=lambda fff:ffff(F,(ff(ff(f))\*fff+ff(F+FFFFFFFFF)).encode())
fffff('fff((ff(f)\*ff(f))//0xff + FFFF);'\*FFFF)
fffff('ffff(F,b" ");fff(FFFFFFF);'\*FF)
fffff('ffff(F,b" ");fff((ff(f)\*ff(f))//0xff-F);'\*FFFF)
fffff('ffff(F,b" ");fff(FFFFFFF);'\*FF)
fffff('fff(FFFFF+FFFFFF);'\*FFFF)
This calculates factorial in javascript, and nothing else.
Try it in your console of your browser. Change the '5' a the end to some other number and try it. I would love to know if someone can give me feedback on how this is working. I'd be happy to explain if anyone has questions.
(_=$=>(_=($,_$$=_=>$$=>$$(_))=>(__$$=$$=>($=>_$$($)($))($=>_=>_$$(_$$($)($))($$)(_)),_=$$=>($,$_=$=>($-(($*$-$)+$)/$)+1,$_$=($,_=1)=>((($-_)<<1)/4)*2,_$=$=>({_:$||$&&$$|$&!!$||$?$:($)}))=>$_$($_$(_$($)._),-1)>$_$($_$(_$(_$$(2)($_$))._),-1)?$*_$$(_$$($)($_$))($$):_$$($_($_$($_$($-($_$(($*$_$($,$)),-$))/$),-2)))($_),__$$(_)($)))($,_$_=$=>_=>_($)))(5)
I'm an obfuscation newb. I saw some tutorials and read up about it -- I'm using C# with Unity (using Unity Asset store package "Obfuscator". I'd link it but not sure if that's against the rules)
Overall, it works pretty satisfying out-of-the-box. However, a few things I'm a bit confused about:
https://i.imgur.com/fGIlXUI.png
^ I added [SkipRename] tag and it works now, but that seems more like a workaround (which is fine for me since I have nothing sensitive within that function): What is the proper way to do this?
https://i.imgur.com/tT3lKGj.png
^ The array is turned into a json then sent to my API, ending up looking like that above. Here's how I'm preparing the data:
// class wrapper >> later I'll use a json serializer
class playersReq
{
public string[] playersArr; // This name gets obfuscated
}
[...]
// Prep data (the obfuscated name gets thrown in JSON format instead of "playersArr"
playersReq pListReq = new playersReq { playersArr = playersList.ToArray() };
string _players = JsonUtility.ToJson(pListReq);
// Create a web form (POST)
WWWForm form = new WWWForm();
form.AddField("players", _players);
[...]
I'm going to guess the workaround is to add a [SkipRename] tag above my array wrapper class... or the string[] itself, not really sure - i'll test both (+the other sibling array wrapper classes). It seems that playersArr got renamed to "LKOPFNEAIDA": but what is the proper way of handling this without a [SkipRename]?
Suggestions would rock. Thanks! In the meantime, I emailed the asset store dev and am watching a few vids.