/**
* Copyright psyark ( http://wonderfl.net/user/psyark )
* MIT License ( http://www.opensource.org/licenses/mit-license.php )
* Downloaded from: http://wonderfl.net/c/rROV
*/
package {
import flash.text.TextFormat;
import flash.display.Sprite;
import flash.text.TextField;
public class Decoder extends Sprite {
private var index:int = 0;
private var array:Array = [];
private var stack:Array = [];
private var tf:TextField;
public function Decoder() {
tf = new TextField();
tf.autoSize = "left";
tf.defaultTextFormat = new TextFormat(null, 60);
addChild(tf);
// ↓↓↓↓↓
// ↑↑↑↑↑
}
private function get ー():int {
for each (var s:Array in stack) s.push(arguments.callee);
return ++index;
}
private function get ー():int {
for each (var s:Array in stack) s.push(arguments.callee);
return --index;
}
private function get ᅳ():int {
for each (var s:Array in stack) s.push(arguments.callee);
array[index] ||= 0;
return ++array[index];
}
private function get ㅡ():int {
for each (var s:Array in stack) s.push(arguments.callee);
array[index] ||= 0;
return --array[index];
}
private function get ᐨ():int {
for each (var s:Array in stack) s.push(arguments.callee);
stack.push([]);
return 0;
}
private function get ᐨᐨ():int {
var loop:Array = stack.pop();
var t:Array = stack;
stack = [];
while (array[index]) for each (var f:Function in loop) f();
stack = t;
for each (var s:Array in stack) s.push(arguments.callee);
return 0;
}
private function get 一():int {
for each (var s:Array in stack) s.push(arguments.callee);
tf.appendText(String.fromCharCode(array[index]));
return 0;
}
}
}