Opal.modules=function(Opal){Opal.top;var $nesting=[],$$=(Opal.nil,Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module);return Opal.add_stubs(),function($base,$parent_nesting){var self=$module($base,“PackUnpack”),$nesting=.concat($parent_nesting),directives=,“,”<"">modifiers=;self.eachDirectiveAndCount=function(format,callback){var currentDirective,currentCount,currentModifiers,countSpecified;function reset(){currentDirective=null,currentCount=0,countSpecified=!(currentModifiers=[])}function yieldAndReset(){null!=currentDirective?(!//.test(currentDirective)&&0currentModifiers[0]“' allowed only after types sSiIlLqQjJ”),-1!==currentModifiers.indexOf(“<”)&&-1!==currentModifiers.indexOf(“>”)&&self.$raise($$($nesting,“RangeError”),“Can't use both '<' and '>'”),countSpecified||(currentCount=1),-1!==currentModifiers.indexOf(“>”)&&(currentDirective+=“>”),callback(currentDirective,currentCount),reset()):reset()}reset();for(var i=0;i<format.length;i++){var currentChar=format;-1!==directives.indexOf(currentChar)?(yieldAndReset(),currentDirective=currentChar):currentDirective&&(/d/.test(currentChar)?(currentCount=10*currentCount+parseInt(currentChar,10),countSpecified=!0):“*”===currentChar&&!1===countSpecified?(currentCount=1/0,countSpecified=!0):-1!==modifiers.indexOf(currentChar)&&!1===countSpecified?currentModifiers.push(currentChar):yieldAndReset())}yieldAndReset()}}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$klass=(Opal.breaker,Opal.slice,Opal.klass);return Opal.add_stubs([“$require”,“$flatten”,“$decode64”,“$raise”,“$delete”,“$gsub”,“$coerce_to!”,“$inspect”,“$”,“$unpack”]),self.$require(“corelib/pack_unpack/format_string_parser”),function($base,$super,$parent_nesting){var $String_unpack$1,$String_unpack1$2,self=$klass($base,null,“String”),$nesting=.concat($parent_nesting),expected=nil,given=nil,eachDirectiveAndCount=Opal.PackUnpack.eachDirectiveAndCount;function mapChunksToWords(callback){return function(data){return callback(data).map(function(chunk){return chunk.reverse().reduce(function(result,singleByte){return 256*result+singleByte},0)})}}function chunkBy(chunkSize,callback){return function(data){for(var array=callback(data),chunks=[],chunksCount=array.length/chunkSize,i=0;i<chunksCount;i++){var chunk=array.splice(0,chunkSize);chunk.length===chunkSize&&chunks.push(chunk)}return chunks}}function toNByteSigned(bytesCount,callback){return function(data){var unsignedBits=callback(data),bitsCount=8*bytesCount,limit=Math.pow(2,bitsCount);return unsignedBits.map(function(n){return limit/2<=n&&(n-=limit),n})}}function bytesToAsciiChars(callback){return function(data){return callback(data).map(function(singleByte){return String.fromCharCode(singleByte)})}}function joinChars(callback){return function(data){return callback(data).join(“”)}}function wrapIntoArray(callback){return function(data){return}}var charCodesToFilter,filterTrailingZerosAndSpaces=(charCodesToFilter=[“0”,“ ”].map(function(s){return s.charCodeAt(0)}),function(callback){return function(data){for(var charCodes=callback(data);-1!==charCodesToFilter.indexOf(charCodes);)charCodes=charCodes.slice(0,charCodes.length-1);return charCodes}});function invertChunks(callback){return function(data){return callback(data).map(function(chunk){return chunk.reverse()})}}function identityFunction(value){return value}var callback,handlers={C:identityFunction,S:mapChunksToWords(chunkBy(2,identityFunction)),L:mapChunksToWords(chunkBy(4,identityFunction)),Q:mapChunksToWords(chunkBy(8,identityFunction)),J:null,“S>”:mapChunksToWords(invertChunks(chunkBy(2,identityFunction))),“L>”:mapChunksToWords(invertChunks(chunkBy(4,identityFunction))),“Q>”:mapChunksToWords(invertChunks(chunkBy(8,identityFunction))),c:toNByteSigned(1,identityFunction),s:toNByteSigned(2,mapChunksToWords(chunkBy(2,identityFunction))),l:toNByteSigned(4,mapChunksToWords(chunkBy(4,identityFunction))),q:toNByteSigned(8,mapChunksToWords(chunkBy(8,identityFunction))),j:null,“s>”:toNByteSigned(2,mapChunksToWords(invertChunks(chunkBy(2,identityFunction)))),“l>”:toNByteSigned(4,mapChunksToWords(invertChunks(chunkBy(4,identityFunction)))),“q>”:toNByteSigned(8,mapChunksToWords(invertChunks(chunkBy(8,identityFunction)))),n:null,N:null,v:null,V:null,U:identityFunction,w:(callback=identityFunction,function(data){for(var bytes=callback(data),result=[],buffer=“”,i=0;i<bytes.length;i++){var bits=bytes.toString(2),firstBit=(bits=Array(8-bits.length+1).join(“0”).concat(bits));if(bits=bits.slice(1,bits.length),buffer=buffer.concat(bits),“0”===firstBit){var decoded=parseInt(buffer,2);result.push(decoded),buffer=“”}}return result}),D:null,d:null,F:null,f:null,E:null,e:null,G:null,g:null,A:wrapIntoArray(joinChars(bytesToAsciiChars(filterTrailingZerosAndSpaces(identityFunction)))),a:wrapIntoArray(joinChars(bytesToAsciiChars(identityFunction))),Z:joinChars(bytesToAsciiChars(identityFunction)),B:joinChars(identityFunction),b:joinChars(identityFunction),H:joinChars(identityFunction),h:joinChars(identityFunction),u:joinChars(bytesToAsciiChars(function(callback){return function(data){for(var bytes=callback(data),i=0,length=0,result=[];i<bytes.length;){var n=bytes-32&63;if(10!==bytes){if(45<n)return“”;for(length+=n;0<n;){var c1=bytes,c2=bytes,c3=bytes,b1=(c1-32&63)<<2|(c2-32&63)>>4,b2=(c2-32&63)<<4|(c3-32&63)>>2,b3=(c3-32&63)<<6|bytes-32&63;result.push(255&b1),result.push(255&b2),result.push(255&b3),i+=4,n-=3}++i}}return result.slice(0,length)}}(identityFunction))),M:function(callback){return function(data){return callback(data).replace(/$/gm,“”).replace(/=(?:rn?|n|$)/g,“”).replace(/=({2})/g,function($0,$1){var codePoint=parseInt($1,16);return String.fromCharCode(codePoint)})}}(joinChars(bytesToAsciiChars(identityFunction))),m:function(callback){return function(data){var string=callback(data);return“function”==typeof atob?atob(string):“function”==typeof Buffer?“function”==typeof Buffer.from?Buffer.from(string,“base64”).toString():new Buffer(string,“base64”).toString():$$($nesting,“Base64”,“skip_raise”)||nil?$$($nesting,“Base64”).$decode64(string):void self.$raise(“To use String#unpack('m'), you must first require 'base64'.”)}}(joinChars(bytesToAsciiChars(identityFunction))),P:null,p:null};function readBytes(n){return function(bytes){return{chunk:bytes.slice(0,n),rest:bytes=bytes.slice(n,bytes.length)}}}function readNTimesAndMerge(callback){return function(buffer,count){var chunkData,chunk=[];if(count===1/0)for(;0<buffer.length;)buffer=(chunkData=callback(buffer)).rest,chunk=chunk.concat(chunkData.chunk);else for(var i=0;i<count;i++)buffer=(chunkData=callback(buffer)).rest,chunk=chunk.concat(chunkData.chunk);return{chunk:chunk,rest:buffer}}}function readAll(buffer,count){return{chunk:buffer,rest:[]}}var readChunk={C:readNTimesAndMerge(readBytes(1)),S:readNTimesAndMerge(readBytes(2)),L:readNTimesAndMerge(readBytes(4)),Q:readNTimesAndMerge(readBytes(8)),J:null,“S>”:readNTimesAndMerge(readBytes(2)),“L>”:readNTimesAndMerge(readBytes(4)),“Q>”:readNTimesAndMerge(readBytes(8)),c:readNTimesAndMerge(readBytes(1)),s:readNTimesAndMerge(readBytes(2)),l:readNTimesAndMerge(readBytes(4)),q:readNTimesAndMerge(readBytes(8)),j:null,“s>”:readNTimesAndMerge(readBytes(2)),“l>”:readNTimesAndMerge(readBytes(4)),“q>”:readNTimesAndMerge(readBytes(8)),n:null,N:null,v:null,V:null,U:readNTimesAndMerge(function(bytes){function readByte(){var result=bytes;return bytes=bytes.slice(1,bytes.length),result}var extraLength,c=readByte();if(c>>7==0)return{chunk:,rest:bytes};c>>6==2&&self.$raise($$($nesting,“ArgumentError”),“malformed UTF-8 character”),c>>5==6?extraLength=1:c>>4==14?extraLength=2:c>>3==30?extraLength=3:c>>2==62?extraLength=4:c>>1==126?extraLength=5:self.$raise(“malformed UTF-8 character”),extraLength>bytes.length&&(expected=extraLength+1,given=bytes.length+1,self.$raise($$($nesting,“ArgumentError”),“malformed UTF-8 character (expected ”expected“ bytes, given ”given“ bytes)”));for(var result=c&(1<<8-extraLength-1)-1,i=0;i<extraLength;i++)(c=readByte())>>6!=2&&self.$raise(“Invalid multibyte sequence”),result=result<<6|63&c;return result<=65535?{chunk:,rest:bytes}:{singleByte=buffer;if(result.push(singleByte),0==(128&singleByte))break}return{chunk:result,rest:buffer.slice(result.length,buffer.length)}}),D:null,d:null,F:null,f:null,E:null,e:null,G:null,g:null,A:readNTimesAndMerge(readBytes(1)),a:readNTimesAndMerge(readBytes(1)),Z:function(buffer,count){for(var result=[],i=0;i<count&&i<buffer.length;i++){var singleByte=buffer;if(0===singleByte)break;result.push(singleByte)}return count===1/0&&(count=result.length),0===buffer&&count++,{chunk:result,rest:buffer=buffer.slice(count,buffer.length)}},B:function(buffer,count){for(var result=”“;0<count&&0<buffer.length;){var singleByte=buffer,bitsToTake=Math.min(count,8);if(Math.ceil(bitsToTake/8),buffer=buffer.slice(1,buffer.length),null!=singleByte){var bits=singleByte.toString(2);bits=Array(8-bits.length+1).join(”0“).concat(bits);for(var j=0;j||”0“,count–}}return{chunk:,rest:buffer}},b:function(buffer,count){for(var result=”“;0<count&&0<buffer.length;){var singleByte=buffer,bitsToTake=Math.min(count,8);if(Math.ceil(bitsToTake/8),buffer=buffer.slice(1,buffer.length),null!=singleByte){var bits=singleByte.toString(2);bits=Array(8-bits.length+1).join(”0“).concat(bits).split(”“).reverse().join(”“);for(var j=0;j||”0“,count–}}return{chunk:,rest:buffer}},H:function(buffer,count){for(var result=[];0<count&&0<buffer.length;){var hex=buffer.toString(16);buffer=buffer.slice(1,buffer.length),hex=Array(2-hex.length+1).join(”0“).concat(hex),1===count?(result.push(hex),count–):(result.push(hex,hex),count-=2)}return{chunk:result,rest:buffer}},h:function(buffer,count){for(var result=[];0<count&&0<buffer.length;){var hex=buffer.toString(16);buffer=buffer.slice(1,buffer.length),hex=Array(2-hex.length+1).join(”0“).concat(hex),1===count?(result.push(hex),count–):(result.push(hex,hex),count-=2)}return{chunk:result,rest:buffer}},u:readNTimesAndMerge(function(buffer){var length=buffer.indexOf(32);return-1===length?{”“>chunk:buffer,rest:[]}:{chunk:buffer.slice(0,length),rest:buffer.slice(length,buffer.length)}}),M:readAll,m:readAll,P:null,p:null},autocompletion={C:!0,S:!0,L:!0,Q:!0,J:null,”S>“:!0,”L>“:!0,”Q>“:!0,c:!0,s:!0,l:!0,q:!0,j:null,”s>“:!0,”l>“:!0,”q>“:!0,n:null,N:null,v:null,V:null,U:!1,w:!1,D:null,d:null,F:null,f:null,E:null,e:null,G:null,g:null,A:!1,a:!1,Z:!1,B:!1,b:!1,H:!1,h:!1,u:!1,M:!1,m:!1,P:null,p:null},optimized={”C*“:handlers.C,”c*“:handlers.c,”A*“:handlers.A,”a*“:handlers.a,”M*“:wrapIntoArray(handlers.M),”m*“:wrapIntoArray(handlers.m),”S*“:handlers.S,”s*“:handlers.s,”L*“:handlers.L,”l*“:handlers.l,”Q*“:handlers.Q,”q*“:handlers.q,”S>*“:handlers,”“”>s>*“:handlers,”“”>L>*“:handlers,”“”>l>*“:handlers,”“”>Q>*“:handlers,”“”>q>*“:handlers};function alias(existingDirective,newDirective){readChunk=readChunk,handlers=handlers,autocompletion=autocompletion}return alias(”S>“,”n“),alias(”L>“,”N“),alias(”S“,”v“),alias(”L“,”V“),Opal.def(self,”$unpack“,$String_unpack$1=function(format){var self=this;format=$$($nesting,”Opal“)(format,$$($nesting,”String“),”to_str“).$gsub(/s/,”“).$delete(”0“);var output=[],buffer=function(string){for(var utf8=[],i=0;i<string.length;i++){var charcode=string.charCodeAt(i);charcode<256?utf8.push(charcode):charcode<2048?utf8.push(192|charcode>>6,128|63&charcode):charcode<55296||57344<=charcode?utf8.push(224|charcode>>12,128|charcode>>6&63,128|63&charcode):(i++,charcode=65536+((1023&charcode)<<10|1023&string.charCodeAt(i)),utf8.push(240|charcode>>18,128|charcode>>12&63,128|charcode>>6&63,128|63&charcode))}return utf8}(self),optimizedHandler=optimized;if(optimizedHandler)return optimizedHandler(buffer);return eachDirectiveAndCount(format,function(directive,count){var part=function(directive,count){var chunk,chunkReader=readChunk;null==chunkReader&&self.$raise(”Unsupported unpack directive “+directive.$inspect()+” (no chunk reader defined)“);var chunkData=chunkReader(buffer,count);chunk=chunkData.chunk,buffer=chunkData.rest;var handler=handlers;return null==handler&&self.$raise(”Unsupported unpack directive “+directive.$inspect()+” (no handler defined)“),handler(chunk)}(directive,count);if(count!==1/0){var shouldAutocomplete=autocompletion;null==shouldAutocomplete&&self.$raise(”Unsupported unpack directive “+directive.$inspect()+” (no autocompletion rule defined)“),shouldAutocomplete&&function(array,size){for(;array.length<size;)array.push(nil)}(part,count)}output=output.concat(part)}),output},$String_unpack$1.$$arity=1),Opal.def(self,”$unpack1“,$String_unpack1$2=function(format){return format=$$($nesting,”Opal“)(format,$$($nesting,”String“),”to_str“).$gsub(/s/,”“).$delete(”0“),this.$unpack(format[”$“](0))[”$“](0)},$String_unpack1$2.$$arity=1),nil&&”unpack1“}($nesting,0,$nesting)},Opal.modules.set=function(Opal){function $rb_minus(lhs,rhs){return”number“==typeof lhs&&”number“==typeof rhs?lhs-rhs:lhs(rhs)}function $rb_lt(lhs,rhs){return”number“==typeof lhs&&”number“==typeof rhs?lhs(rhs)}function $rb_le(lhs,rhs){return”number“==typeof lhs&&”number“==typeof rhs?lhs<=rhs:lhs(rhs)}Opal.top;var $nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$klass=(Opal.breaker,Opal.slice,Opal.klass),$hash2=Opal.hash2,$truthy=Opal.truthy,$send=Opal.send,$module=Opal.module;return Opal.add_stubs([”$include“,”$new“,”$nil?“,”$===“,”$raise“,”$each“,”$add“,”$merge“,”$class“,”$respond_to?“,”$subtract“,”$dup“,”$join“,”$to_a“,”$equal?“,”$instance_of?“,”$==“,”$instance_variable_get“,”$is_a?“,”$size“,”$all?“,”$include?“,”$=“,”$-“,”$enum_for“,”$),function($base,$super,$parent_nesting){var $Set_$$$1,$Set_initialize$2,$Set_dup$4,$Set_$minus$5,$Set_inspect$6,$Set_$eq_eq$7,$Set_add$9,$Set_classify$10,$Set_collect$excl$13,$Set_delete$15,$Set_delete$ques$16,$Set_delete_if$17,$Set_add$ques$20,$Set_each$21,$Set_empty$ques$22,$Set_eql$ques$23,$Set_clear$25,$Set_include$ques$26,$Set_merge$27,$Set_replace$29,$Set_size$30,$Set_subtract$31,$Set_$$33,$Set_superset$ques$34,$Set_proper_superset$ques$36,$Set_subset$ques$38,$Set_proper_subset$ques$40,$Set_to_a$42,self=$klass($base,null,“Set”),$nesting=.concat($parent_nesting);self.$$prototype.hash=nil,self.$include($$($nesting,“Enumerable”)),Opal.defs(self,“$[]”,$Set_$$$1=function($a){var ary;return ary=Opal.slice.call(arguments,0,arguments.length),this.$new(ary)},$Set_$$$1.$$arity=-1),Opal.def(self,“$initialize”,$Set_initialize$2=function(enum$){var $$3,$iter=$Set_initialize$2.$$p,block=$iter||nil;return $iter&&($Set_initialize$2.$$p=null),$iter&&($Set_initialize$2.$$p=null),null==enum$&&(enum$=nil),this.hash=$hash2([],{}),$truthy(enum$())?nil:($truthy($$($nesting,“Enumerable”)(enum$))||this.$raise($$($nesting,“ArgumentError”),“value must be enumerable”),$truthy(block)?$send(enum$,“each”,[],(($$3=function(item){var self=$$3.$$s||this;return null==item&&(item=nil),self.$add(Opal.yield1(block,item))}).$$s=this,$$3.$$arity=1,$$3)):this.$merge(enum$))},$Set_initialize$2.$$arity=-1),Opal.def(self,“$dup”,$Set_dup$4=function(){return this.$class().$new().$merge(this)},$Set_dup$4.$$arity=0),Opal.def(self,“$-”,$Set_$minus$5=function(enum$){return $truthy(enum$(“each”))||this.$raise($$($nesting,“ArgumentError”),“value must be enumerable”),this.$dup().$subtract(enum$)},$Set_$minus$5.$$arity=1),Opal.alias(self,“difference”,“-”),Opal.def(self,“$inspect”,$Set_inspect$6=function(){return“#<Set: {”+this.$to_a().$join(“,”)+“}>”},$Set_inspect$6.$$arity=0),Opal.def(self,“$==”,$Set_$eq_eq$7=function(other){var $a,$$8;return!!$truthy(this(other))||($truthy(other(this.$class()))?this.hash(other.$instance_variable_get(“@hash”)):!!$truthy($truthy($a=other($$($nesting,“Set”)))?this.$size()(other.$size()):$a)&&$send(other,“all?”,[],(($$8=function(o){var self=$$8.$$s||this;return null==self.hash&&(self.hash=nil),null==o&&(o=nil),self.hash(o)}).$$s=this,$$8.$$arity=1,$$8)))},$Set_$eq_eq$7.$$arity=1),Opal.def(self,“$add”,$Set_add$9=function(o){var $writer;return $writer=,$send(this.hash,“[]=”,Opal.to_a($writer)),$rb_minus($writer.length,1),this},$Set_add$9.$$arity=1),Opal.alias(self,“<<”,“add”),Opal.def(self,“$classify”,$Set_classify$10=function(){var $$11,$$12,$iter=$Set_classify$10.$$p,block=$iter||nil,result=nil;return $iter&&($Set_classify$10.$$p=null),$iter&&($Set_classify$10.$$p=null),block===nil?this.$enum_for(“classify”):(result=$send($$($nesting,“Hash”),“new”,[],(($$11=function(h,k){var $writer,self=$$11.$$s||this;return null==h&&(h=nil),null==k&&(k=nil),$writer=,$send(h,“[]=”,Opal.to_a($writer)),$writer}).$$s=this,$$11.$$arity=2,$$11)),$send(this,“each”,[],(($$12=function(item){$$12.$$s;return null==item&&(item=nil),result[“$”](Opal.yield1(block,item)).$add(item)}).$$s=this,$$12.$$arity=1,$$12)),result)},$Set_classify$10.$$arity=0),Opal.def(self,“$collect!”,$Set_collect$excl$13=function(){var $$14,$iter=$Set_collect$excl$13.$$p,block=$iter||nil,result=nil;return $iter&&($Set_collect$excl$13.$$p=null),$iter&&($Set_collect$excl$13.$$p=null),block===nil?this.$enum_for(“collect!”):(result=this.$class().$new(),$send(this,“each”,[],(($$14=function(item){$$14.$$s;return null==item&&(item=nil),result(Opal.yield1(block,item))}).$$s=this,$$14.$$arity=1,$$14)),this.$replace(result))},$Set_collect$excl$13.$$arity=0),Opal.alias(self,“map!”,“collect!”),Opal.def(self,“$delete”,$Set_delete$15=function(o){return this.hash.$delete(o),this},$Set_delete$15.$$arity=1),Opal.def(self,“$delete?”,$Set_delete$ques$16=function(o){return $truthy(this(o))?(this.$delete(o),this):nil},$Set_delete$ques$16.$$arity=1),Opal.def(self,“$delete_if”,$Set_delete_if$17=function(){var $$18,$$19,$iter=$Set_delete_if$17.$$p,$yield=$iter||nil;return $iter&&($Set_delete_if$17.$$p=null),$yield===nil?this.$enum_for(“delete_if”):($send($send(this,“select”,[],(($$18=function(o){$$18.$$s;return null==o&&(o=nil),Opal.yield1($yield,o)}).$$s=this,$$18.$$arity=1,$$18)),“each”,[],(($$19=function(o){var self=$$19.$$s||this;return null==self.hash&&(self.hash=nil),null==o&&(o=nil),self.hash.$delete(o)}).$$s=this,$$19.$$arity=1,$$19)),this)},$Set_delete_if$17.$$arity=0),Opal.def(self,“$add?”,$Set_add$ques$20=function(o){return $truthy(this(o))?nil:this.$add(o)},$Set_add$ques$20.$$arity=1),Opal.def(self,“$each”,$Set_each$21=function(){var $iter=$Set_each$21.$$p,block=$iter||nil;return $iter&&($Set_each$21.$$p=null),$iter&&($Set_each$21.$$p=null),block===nil?this.$enum_for(“each”):($send(this.hash,“each_key”,[],block.$to_proc()),this)},$Set_each$21.$$arity=0),Opal.def(self,“$empty?”,$Set_empty$ques$22=function(){return this.hash()},$Set_empty$ques$22.$$arity=0),Opal.def(self,“$eql?”,$Set_eql$ques$23=function(other){var $$24;return this.hash($send(other,“instance_eval”,[],(($$24=function(){var self=$$24.$$s||this;return null==self.hash&&(self.hash=nil),self.hash}).$$s=this,$$24.$$arity=0,$$24)))},$Set_eql$ques$23.$$arity=1),Opal.def(self,“$clear”,$Set_clear$25=function(){return this.hash.$clear(),this},$Set_clear$25.$$arity=0),Opal.def(self,“$include?”,$Set_include$ques$26=function(o){return this.hash(o)},$Set_include$ques$26.$$arity=1),Opal.alias(self,“member?”,“include?”),Opal.def(self,“$merge”,$Set_merge$27=function(enum$){var $$28;return $send(enum$,“each”,[],(($$28=function(item){var self=$$28.$$s||this;return null==item&&(item=nil),self.$add(item)}).$$s=this,$$28.$$arity=1,$$28)),this},$Set_merge$27.$$arity=1),Opal.def(self,“$replace”,$Set_replace$29=function(enum$){return this.$clear(),this.$merge(enum$),this},$Set_replace$29.$$arity=1),Opal.def(self,“$size”,$Set_size$30=function(){return this.hash.$size()},$Set_size$30.$$arity=0),Opal.alias(self,“length”,“size”),Opal.def(self,“$subtract”,$Set_subtract$31=function(enum$){var $$32;return $send(enum$,“each”,[],(($$32=function(item){var self=$$32.$$s||this;return null==item&&(item=nil),self.$delete(item)}).$$s=this,$$32.$$arity=1,$$32)),this},$Set_subtract$31.$$arity=1),Opal.def(self,“$|”,$Set_$$33=function(enum$){return $truthy(enum$(“each”))||this.$raise($$($nesting,“ArgumentError”),“value must be enumerable”),this.$dup().$merge(enum$)},$Set_$$33.$$arity=1),Opal.def(self,“$superset?”,$Set_superset$ques$34=function(set){var $$35;return $truthy(set($$($nesting,“Set”)))||this.$raise($$($nesting,“ArgumentError”),“value must be a set”),!$truthy($rb_lt(this.$size(),set.$size()))&&$send(set,“all?”,[],(($$35=function(o){var self=$$35.$$s||this;return null==o&&(o=nil),self(o)}).$$s=this,$$35.$$arity=1,$$35))},$Set_superset$ques$34.$$arity=1),Opal.alias(self,“>=”,“superset?”),Opal.def(self,“$proper_superset?”,$Set_proper_superset$ques$36=function(set){var $$37;return $truthy(set($$($nesting,“Set”)))||this.$raise($$($nesting,“ArgumentError”),“value must be a set”),!$truthy($rb_le(this.$size(),set.$size()))&&$send(set,“all?”,[],(($$37=function(o){var self=$$37.$$s||this;return null==o&&(o=nil),self(o)}).$$s=this,$$37.$$arity=1,$$37))},$Set_proper_superset$ques$36.$$arity=1),Opal.alias(self,“>”,“proper_superset?”),Opal.def(self,“$subset?”,$Set_subset$ques$38=function(set){var $$39;return $truthy(set($$($nesting,“Set”)))||this.$raise($$($nesting,“ArgumentError”),“value must be a set”),!$truthy($rb_lt(set.$size(),this.$size()))&&$send(this,“all?”,[],(($$39=function(o){$$39.$$s;return null==o&&(o=nil),set(o)}).$$s=this,$$39.$$arity=1,$$39))},$Set_subset$ques$38.$$arity=1),Opal.alias(self,“<=”,“subset?”),Opal.def(self,“$proper_subset?”,$Set_proper_subset$ques$40=function(set){var $$41;return $truthy(set($$($nesting,“Set”)))||this.$raise($$($nesting,“ArgumentError”),“value must be a set”),!$truthy($rb_le(set.$size(),this.$size()))&&$send(this,“all?”,[],(($$41=function(o){$$41.$$s;return null==o&&(o=nil),set(o)}).$$s=this,$$41.$$arity=1,$$41))},$Set_proper_subset$ques$40.$$arity=1),Opal.alias(self,“<”,“proper_subset?”),Opal.alias(self,“+”,“|”),Opal.alias(self,“union”,“|”),Opal.def(self,“$to_a”,$Set_to_a$42=function(){return this.hash.$keys()},$Set_to_a$42.$$arity=0)}($nesting,0,$nesting),function($base,$parent_nesting){var $Enumerable_to_set$43,self=$module($base,“Enumerable”),$nesting=.concat($parent_nesting);Opal.def(self,“$to_set”,$Enumerable_to_set$43=function($a,$b){var $post_args,klass,args,$iter=$Enumerable_to_set$43.$$p,block=$iter||nil,self=this;return $iter&&($Enumerable_to_set$43.$$p=null),$iter&&($Enumerable_to_set$43.$$p=null),0<($post_args=Opal.slice.call(arguments,0,arguments.length)).length&&(klass=$post_args,$post_args.splice(0,1)),null==klass&&(klass=$$($nesting,“Set”)),args=$post_args,$send(klass,“new”,.concat(Opal.to_a(args)),block.$to_proc())},$Enumerable_to_set$43.$$arity=-1)}($nesting,$nesting)},Opal.modules=function(Opal){function $rb_plus(lhs,rhs){return“number”==typeof lhs&&“number”==typeof rhs?lhs+rhs:lhs(rhs)}function $rb_times(lhs,rhs){return“number”==typeof lhs&&“number”==typeof rhs?lhs*rhs:lhs(rhs)}Opal.top;var $nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$hash2=Opal.hash2,$truthy=Opal.truthy,$send=Opal.send;return Opal.add_stubs(),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $Node_initialize$1,$Node_eql$ques$2,$Node_assign_properties$3,$Node_dup$5,$Node_updated$6,$Node_$eq_eq$7,$Node_concat$8,$Node_append$9,$Node_to_sexp$10,$Node_inspect$12,$Node_to_ast$14,$Node_to_sexp_array$15,$Node_fancy_type$17,self=$klass($base,null,“Node”),$nesting=.concat($parent_nesting);self.$$prototype.type=self.$$prototype.children=nil,self.$attr_reader(“type”),self.$attr_reader(“children”),Opal.alias(self,“to_a”,“children”),self.$attr_reader(“hash”),Opal.def(self,“$initialize”,$Node_initialize$1=function(type,children,properties){var $a;return null==children&&(children=[]),null==properties&&(properties=$hash2(,{})),$a=,this.type=$a,this.children=$a,this.$assign_properties(properties),this.hash=.$hash(),this.$freeze()},$Node_initialize$1.$$arity=-2),Opal.def(self,“$eql?”,$Node_eql$ques$2=function(other){var $a,$b;return $truthy($a=$truthy($b=this.$class()(other.$class()))?this.type(other.$type()):$b)?this.children(other.$children()):$a},$Node_eql$ques$2.$$arity=1),Opal.def(self,“$assign_properties”,$Node_assign_properties$3=function(properties){var $$4;return $send(properties,“each”,[],(($$4=function(name,value){var self=$$4.$$s||this;return null==name&&(name=nil),null==value&&(value=nil),self.$instance_variable_set(“@”+name,value)}).$$s=this,$$4.$$arity=2,$$4)),nil},$Node_assign_properties$3.$$arity=1),self.$protected(“assign_properties”),Opal.alias(self,“original_dup”,“dup”),self.$private(“original_dup”),Opal.def(self,“$dup”,$Node_dup$5=function(){return this},$Node_dup$5.$$arity=0),Opal.alias(self,“clone”,“dup”),Opal.def(self,“$updated”,$Node_updated$6=function(type,children,properties){var $a,new_type,new_children,new_properties;return null==type&&(type=nil),null==children&&(children=nil),null==properties&&(properties=nil),new_type=$truthy($a=type)?$a:this.type,new_children=$truthy($a=children)?$a:this.children,new_properties=$truthy($a=properties)?$a:$hash2([],{}),$truthy($truthy($a=this.type(new_type)?this.children(new_children):this.type(new_type))?properties():$a)?this:this.$original_dup().$send(“initialize”,new_type,new_children,new_properties)},$Node_updated$6.$$arity=-1),Opal.def(self,“$==”,$Node_$eq_eq$7=function(other){return!!$truthy(this(other))||!!$truthy(other(“to_ast”))&&((other=other.$to_ast()).$type()(this.$type())?other.$children()(this.$children()):other.$type()(this.$type()))},$Node_$eq_eq$7.$$arity=1),Opal.def(self,“$concat”,$Node_concat$8=function(array){return this.$updated(nil,$rb_plus(this.children,array.$to_a()))},$Node_concat$8.$$arity=1),Opal.alias(self,“+”,“concat”),Opal.def(self,“$append”,$Node_append$9=function(element){return this.$updated(nil,$rb_plus(this.children,))},$Node_append$9.$$arity=1),Opal.alias(self,“<<”,“append”),Opal.def(self,“$to_sexp”,$Node_to_sexp$10=function(indent){var $$11,indented,sexp=nil;return null==indent&&(indent=0),indented=$rb_times(“ ”,indent),sexp=indented+“(”+this.$fancy_type(),$send(this.$children(),“each”,[],(($$11=function(child){$$11.$$s;return null==child&&(child=nil),sexp=$truthy(child($$($nesting,“Node”)))?$rb_plus(sexp,“n”+child.$to_sexp($rb_plus(indent,1))):$rb_plus(sexp,“ ”+child.$inspect())}).$$s=this,$$11.$$arity=1,$$11)),sexp=$rb_plus(sexp,“)”)},$Node_to_sexp$10.$$arity=-1),Opal.alias(self,“to_s”,“to_sexp”),Opal.def(self,“$inspect”,$Node_inspect$12=function(indent){var $$13,indented,sexp=nil;return null==indent&&(indent=0),indented=$rb_times(“ ”,indent),sexp=indented+“s(:”+this.type,$send(this.$children(),“each”,[],(($$13=function(child){$$13.$$s;return null==child&&(child=nil),sexp=$truthy(child($$($nesting,“Node”)))?$rb_plus(sexp,“,n”+child.$inspect($rb_plus(indent,1))):$rb_plus(sexp,“, ”+child.$inspect())}).$$s=this,$$13.$$arity=1,$$13)),sexp=$rb_plus(sexp,“)”)},$Node_inspect$12.$$arity=-1),Opal.def(self,“$to_ast”,$Node_to_ast$14=function(){return this},$Node_to_ast$14.$$arity=0),Opal.def(self,“$to_sexp_array”,$Node_to_sexp_array$15=function(){var $$16,children_sexp_arrs;return children_sexp_arrs=$send(this.$children(),“map”,[],(($$16=function(child){$$16.$$s;return null==child&&(child=nil),$truthy(child($$($nesting,“Node”)))?child.$to_sexp_array():child}).$$s=this,$$16.$$arity=1,$$16)),.concat(Opal.to_a(children_sexp_arrs))},$Node_to_sexp_array$15.$$arity=0),self.$protected(),Opal.def(self,“$fancy_type”,$Node_fancy_type$17=function(){return this.type.$to_s().$gsub(“_”,“-”)},$Node_fancy_type$17.$$arity=0)}($nesting,0,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){Opal.top;var $nesting=[],nil=Opal.nil,$module=(Opal.const_get_qualified,Opal.const_get_relative,Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$truthy=Opal.truthy,$send=Opal.send;return Opal.add_stubs(),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $nesting=.concat($parent_nesting);(function($base,$parent_nesting){var $Mixin_process$1,$Mixin_process_all$2,$Mixin_handler_missing$4,self=$module($base,“Mixin”);.concat($parent_nesting);Opal.def(self,“$process”,$Mixin_process$1=function(node){var on_handler,new_node=nil;return $truthy(node())?nil:(on_handler=“on_”+(node=node.$to_ast()).$type(),new_node=$truthy(this(on_handler))?this.$send(on_handler,node):this.$handler_missing(node),$truthy(new_node)&&(node=new_node),node)},$Mixin_process$1.$$arity=1),Opal.def(self,“$process_all”,$Mixin_process_all$2=function(nodes){var $$3;return $send(nodes.$to_a(),“map”,[],(($$3=function(node){var self=$$3.$$s||this;return null==node&&(node=nil),self.$process(node)}).$$s=this,$$3.$$arity=1,$$3))},$Mixin_process_all$2.$$arity=1),Opal.def(self,“$handler_missing”,$Mixin_handler_missing$4=function(node){return nil},$Mixin_handler_missing$4.$$arity=1)})($nesting,$nesting)}($nesting,0,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){Opal.top;var $nesting=[],$$=(Opal.nil,Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass;return Opal.add_stubs(),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var self=$klass($base,null,“Processor”),$nesting=.concat($parent_nesting);self.$require(“ast/processor/mixin”),self.$include($$($nesting,“Mixin”))}($nesting,0,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){Opal.top;var $nesting=[],$$=(Opal.nil,Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module);return Opal.add_stubs(),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $Sexp_s$1,self=$module($base,“Sexp”),$nesting=.concat($parent_nesting);Opal.def(self,“$s”,$Sexp_s$1=function(type,$a){var children;return children=Opal.slice.call(arguments,1,arguments.length),$$($nesting,“Node”).$new(type,children)},$Sexp_s$1.$$arity=-2)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules.ast=function(Opal){Opal.top;var $nesting=[],$module=(Opal.nil,Opal.const_get_qualified,Opal.const_get_relative,Opal.breaker,Opal.slice,Opal.module);return Opal.add_stubs(),function($base,$parent_nesting){var self=$module($base,“AST”);.concat($parent_nesting);self.$require(“ast/node”),self.$require(“ast/processor”),self.$require(“ast/sexp”)}($nesting,$nesting)},Opal.modules=function(Opal){Opal.top;var $nesting=[],nil=Opal.nil,$$$=Opal.const_get_qualified,$module=(Opal.const_get_relative,Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$truthy=Opal.truthy,$send=Opal.send;return Opal.add_stubs([“$attr_reader”,“$”,“$frozen?”,“$dup”,“$node=”,“$-”]),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $Node_assign_properties$1,self=$klass($base,$super,“Node”);.concat($parent_nesting);self.$attr_reader(“location”),Opal.alias(self,“loc”,“location”),Opal.def(self,“$assign_properties”,$Node_assign_properties$1=function(properties){var lhs,rhs,location=nil,$writer=nil;return $truthy(location=properties[“$”](“location”))?($truthy(location())&&(location=location.$dup()),$writer=,$send(location,“node=”,Opal.to_a($writer)),$writer[(lhs=$writer.length,rhs=1,“number”==typeof lhs&&“number”==typeof rhs?lhs-rhs:lhs(rhs))],this.location=location):nil},$Node_assign_properties$1.$$arity=1)}($nesting,$$$($$$(“::”,“AST”),“Node”),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],nil=Opal.nil,$$$=Opal.const_get_qualified,$module=(Opal.const_get_relative,Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$truthy=Opal.truthy,$hash2=Opal.hash2,$send=Opal.send;return Opal.add_stubs([“$require”,“$attr_reader”,“$”,“$frozen?”,“$dup”,“$merge!”,“$loc”,“$line”,“$column”]),self.$require(“ast”),self.$require(“parser/ast/node”),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $Node_assign_properties$1,$Node_line$2,$Node_column$3,self=$klass($base,$super,“Node”);.concat($parent_nesting);self.$$prototype.meta=nil,self.$attr_reader(“meta”),Opal.def(self,“$assign_properties”,$Node_assign_properties$1=function(properties){var $a,$zuper_ii,$iter=$Node_assign_properties$1.$$p,meta=nil,$zuper=nil,$zuper_i=nil;for($iter&&($Node_assign_properties$1.$$p=null),$zuper_i=0,$zuper_ii=arguments.length,$zuper=new Array($zuper_ii);$zuper_i<$zuper_ii;$zuper_i++)$zuper=arguments;return $truthy(meta=properties[“$”](“meta”))?($truthy(meta())&&(meta=meta.$dup()),this.meta(meta)):this.meta=$truthy($a=this.meta)?$a:$hash2([],{}),$send(this,Opal.find_super_dispatcher(this,“assign_properties”,$Node_assign_properties$1,!1),$zuper,$iter)},$Node_assign_properties$1.$$arity=1),Opal.def(self,“$line”,$Node_line$2=function(){return $truthy(this.$loc())?this.$loc().$line():nil},$Node_line$2.$$arity=0),Opal.def(self,“$column”,$Node_column$3=function(){return $truthy(this.$loc())?this.$loc().$column():nil},$Node_column$3.$$arity=0)}($nesting,$$$($$$($$$(“::”,“Parser”),“AST”),“Node”),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){function $rb_lt(lhs,rhs){return“number”==typeof lhs&&“number”==typeof rhs?lhs(rhs)}function $rb_minus(lhs,rhs){return“number”==typeof lhs&&“number”==typeof rhs?lhs-rhs:lhs(rhs)}function $rb_plus(lhs,rhs){return“number”==typeof lhs&&“number”==typeof rhs?lhs+rhs:lhs(rhs)}function $rb_ge(lhs,rhs){return“number”==typeof lhs&&“number”==typeof =“”>rhs?rhs<=lhs:lhs(rhs)}function $rb_gt(lhs,rhs){return“number”==typeof lhs&&“number”==typeof “”>rhs?rhs(rhs)}Opal.top;var $nesting=[],nil=Opal.nil,$$$=Opal.const_get_qualified,$$=Opal.const_get_relative,$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$truthy=Opal.truthy,$gvars=Opal.gvars,$send=Opal.send;return Opal.add_stubs([“$”,“$=”,“$==”,“$_racc_evalact”,“$!”,“$>”,“$push”,“$racc_shift”,“$-@”,“$_racc_do_reduce”,“$===”,“$racc_accept”,“$throw”,“$on_error”,“$<=","$pop","$racc_e_pop","$inspect","$racc_next_state","$*","$racc_reduce","$sprintf","$token_to_str","$print","$racc_token2str","$puts","$racc_print_stacks","$empty?","$each","$racc_print_states","$each_index"">class”,“$<","$size","$),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){[$klass($base,$super,”ParseError“)].concat($parent_nesting)}($nesting,$$($nesting,”StandardError“),$nesting)}($nesting,$nesting),$truthy($$$(”::“,”ParseError“,”skip_raise“)?”constant“:nil)||Opal.const_set($nesting,”ParseError“,$$$($$($nesting,”Racc“),”ParseError“)),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);$truthy($$($nesting,”Racc_No_Extensions“,”skip_raise“)?”constant“:nil)||Opal.const_set($nesting,”Racc_No_Extensions“,!1),function($base,$super,$parent_nesting){var $Parser_racc_runtime_type$1,$Parser__racc_setup$2,$Parser__racc_init_sysvars$3,$Parser_do_parse$4,$Parser_next_token$5,$Parser__racc_do_parse_rb$6,$Parser_yyparse$8,$Parser__racc_yyparse_rb$9,$Parser__racc_evalact$12,$Parser__racc_do_reduce$14,$Parser_on_error$15,$Parser_yyerror$16,$Parser_yyaccept$17,$Parser_yyerrok$18,$Parser_racc_read_token$19,$Parser_racc_shift$20,$Parser_racc_reduce$21,$Parser_racc_accept$23,$Parser_racc_e_pop$24,$Parser_racc_next_state$25,$Parser_racc_print_stacks$26,$Parser_racc_print_states$28,$Parser_racc_token2str$30,$Parser_token_to_str$31,self=$klass($base,null,”Parser“),$nesting=.concat($parent_nesting);self.$$prototype.yydebug=self.$$prototype.racc_debug_out=self.$$prototype.racc_error_status=self.$$prototype.racc_t=self.$$prototype.racc_vstack=self.$$prototype.racc_val=self.$$prototype.racc_state=self.$$prototype.racc_tstack=nil,Opal.const_set($nesting,”Racc_Runtime_Version“,”1.4.6“),Opal.const_set($nesting,”Racc_Runtime_Revision“,[”$[]“](1)),Opal.const_set($nesting,”Racc_Runtime_Core_Version_R“,”1.4.6“),Opal.const_set($nesting,”Racc_Runtime_Core_Revision_R“,[”$[]“](1)),Opal.const_set($nesting,”Racc_Main_Parsing_Routine“,”_racc_do_parse_rb“),Opal.const_set($nesting,”Racc_YY_Parse_Method“,”_racc_yyparse_rb“),Opal.const_set($nesting,”Racc_Runtime_Core_Version“,$$($nesting,”Racc_Runtime_Core_Version_R“)),Opal.const_set($nesting,”Racc_Runtime_Core_Revision“,$$($nesting,”Racc_Runtime_Core_Revision_R“)),Opal.const_set($nesting,”Racc_Runtime_Type“,”ruby“),Opal.defs($$($nesting,”Parser“),”$racc_runtime_type“,$Parser_racc_runtime_type$1=function(){return $$($nesting,”Racc_Runtime_Type“)},$Parser_racc_runtime_type$1.$$arity=0),Opal.def(self,”$_racc_setup“,$Parser__racc_setup$2=function(){var $a,$b,$c,arg=nil,$writer=nil;return null==$gvars.stderr&&($gvars.stderr=nil),$truthy($$$(this.$class(),”Racc_debug_parser“))||(this.yydebug=!1),$truthy(null!=($a=this.yydebug)&&$a!==nil?”instance-variable“:nil)||(this.yydebug=!1),$truthy(this.yydebug)&&($truthy(null!=($b=this.racc_debug_out)&&$b!==nil?”instance-variable“:nil)||(this.racc_debug_out=$gvars.stderr),this.racc_debug_out=$truthy($c=this.racc_debug_out)?$c:$gvars.stderr),arg=$$$(this.$class(),”Racc_arg“),$truthy($rb_lt(arg.$size(),14))&&($writer=,$send(arg,”[]=“,Opal.to_a($writer)),$writer),arg},$Parser__racc_setup$2.$$arity=0),Opal.def(self,”$_racc_init_sysvars“,$Parser__racc_init_sysvars$3=function(){return this.racc_state=,this.racc_tstack=[],this.racc_vstack=,this.racc_t=nil,this.racc_val=nil,this.racc_read_next=!0,this.racc_user_yyerror=!1,this.racc_error_status=0},$Parser__racc_init_sysvars$3.$$arity=0),Opal.def(self,”$do_parse“,$Parser_do_parse$4=function(){return this.$__send__($$($nesting,”Racc_Main_Parsing_Routine“),this.$_racc_setup(),!1)},$Parser_do_parse$4.$$arity=0),Opal.def(self,”$next_token“,$Parser_next_token$5=function(){return this.$raise($$($nesting,”NotImplementedError“),this.$class()+”#next_token is not defined“)},$Parser_next_token$5.$$arity=0),Opal.def(self,”$_racc_do_parse_rb“,$Parser__racc_do_parse_rb$6=function(arg,in_debug){var $a,$b,$$7,action_table=nil,action_check=nil,action_default=nil,action_pointer=nil,token_table=nil,tok=nil,act=nil,i=nil;return $b=arg,$a=Opal.to_ary($b),action_table=null==$a?nil:$a,action_check=null==$a?nil:$a,action_default=null==$a?nil:$a,action_pointer=null==$a?nil:$a,null==$a?nil:$a,null==$a?nil:$a,null==$a?nil:$a,null==$a?nil:$a,null==$a?nil:$a,null==$a?nil:$a,token_table=null==$a?nil:$a,null==$a?nil:$a,null==$a?nil:$a,null==$a?nil:$a,this.$_racc_init_sysvars(),tok=act=i=nil,$send(this,”catch“,,(($$7=function(){var $d,$e,self=$$7.$$s||this;for(null==self.racc_state&&(self.racc_state=nil),null==self.racc_read_next&&(self.racc_read_next=nil),null==self.racc_t&&(self.racc_t=nil),null==self.yydebug&&(self.yydebug=nil),null==self.racc_val&&(self.racc_val=nil);$truthy(!0);)for($truthy(i=action_pointer[”$“](self.racc_state[”$“](-1)))?($truthy(self.racc_read_next)&&$truthy(self.racc_t(0))&&($e=self.$next_token(),$d=Opal.to_ary($e),tok=null==$d?nil:$d,self.racc_val=null==$d?nil:$d,$truthy(tok)?self.racc_t=$truthy($d=token_table[”$“](tok))?$d:1:self.racc_t=0,$truthy(self.yydebug)&&self.$racc_read_token(self.racc_t,tok,self.racc_val),self.racc_read_next=!1),i=$rb_plus(i,self.racc_t),$truthy($truthy($d=$truthy($e=$rb_ge(i,0))?act=action_table[”$“](i):$e)?action_check[”$“](i)(self.racc_state[”$“](-1)):$d)||(act=action_default[”$“](self.racc_state[”$“](-1)))):act=action_default[”$“](self.racc_state[”$“](-1));$truthy(act=self.$_racc_evalact(act,arg)););}).$$s=this,$$7.$$arity=0,$$7))},$Parser__racc_do_parse_rb$6.$$arity=2),Opal.def(self,”$yyparse“,$Parser_yyparse$8=function(recv,mid){return this.$__send__($$($nesting,”Racc_YY_Parse_Method“),recv,mid,this.$_racc_setup(),!0)},$Parser_yyparse$8.$$arity=2),Opal.def(self,”$_racc_yyparse_rb“,$Parser__racc_yyparse_rb$9=function(recv,mid,arg,c_debug){var $a,$b,$$10,action_table=nil,action_check=nil,action_default=nil,action_pointer=nil,token_table=nil,act=nil,i=nil;return $b=arg,$a=Opal.to_ary($b),action_table=null==$a?nil:$a,action_check=null==$a?nil:$a,action_default=null==$a?nil:$a,action_pointer=null==$a?nil:$a,null==$a?nil:$a,null==$a?nil:$a,null==$a?nil:$a,null==$a?nil:$a,null==$a?nil:$a,null==$a?nil:$a,token_table=null==$a?nil:$a,null==$a?nil:$a,null==$a?nil:$a,null==$a?nil:$a,this.$_racc_init_sysvars(),i=act=nil,$send(this,”catch“,,(($$10=function(){var $$11,self=$$10.$$s||this;for(null==self.racc_state&&(self.racc_state=nil);!$truthy(i=action_pointer[”$“](self.racc_state[”$“](-1)));)for(;$truthy(act=self.$_racc_evalact(action_default[”$“](self.racc_state[”$“](-1)),arg)););return $send(recv,”__send__“,,(($$11=function(tok,val){var $e,$f,$g,$h,$i,self=$$11.$$s||this;for(null==self.racc_t&&(self.racc_t=nil),null==self.racc_state&&(self.racc_state=nil),null==self.racc_read_next&&(self.racc_read_next=nil),null==tok&&(tok=nil),null==val&&(val=nil),$truthy(tok)?self.racc_t=$truthy($e=token_table[”$“](tok))?$e:1:self.racc_t=0,self.racc_val=val,self.racc_read_next=!1,i=$rb_plus(i,self.racc_t),$truthy($truthy($e=$truthy($f=$rb_ge(i,0))?act=action_table[”$“](i):$f)?action_check[”$“](i)(self.racc_state[”$“](-1)):$e)||(act=action_default[”$“](self.racc_state[”$“](-1)));$truthy(act=self.$_racc_evalact(act,arg)););for(;$truthy($truthy($f=$truthy($g=(i=action_pointer[”$“](self.racc_state[”$“](-1)))())?$g:self.racc_read_next())?$f:self.racc_t(0));)for($truthy($truthy($f=$truthy($g=$truthy($h=$truthy($i=i)?i=$rb_plus(i,self.racc_t):$i)?$rb_ge(i,0):$h)?act=action_table[”$“](i):$g)?action_check[”$“](i)(self.racc_state[”$“](-1)):$f)||(act=action_default[”$“](self.racc_state[”$“](-1)));$truthy(act=self.$_racc_evalact(act,arg)););}).$$s=self,$$11.$$arity=2,$$11))}).$$s=this,$$10.$$arity=0,$$10))},$Parser__racc_yyparse_rb$9.$$arity=4),Opal.def(self,”$_racc_evalact“,$Parser__racc_evalact$12=function(act,arg){var $a,$b,$$13,$c,shift_n,lhs,rhs,action_table=nil,action_check=nil,action_pointer=nil,reduce_n=nil,code=nil,$case=nil,i=nil;if($b=arg,action_table=null==($a=Opal.to_ary($b))?nil:$a,action_check=null==$a?nil:$a,null==$a?nil:$a,action_pointer=null==$a?nil:$a,null==$a?nil:$a,null==$a?nil:$a,null==$a?nil:$a,null==$a?nil:$a,null==$a?nil:$a,null==$a?nil:$a,null==$a?nil:$a,shift_n=null==$a?nil:$a,reduce_n=null==$a?nil:$a,null==$a?nil:$a,null==$a?nil:$a,$truthy($truthy($a=$rb_gt(act,0))?$rb_lt(act,shift_n):$a))$truthy($rb_gt(this.racc_error_status,0))&&(this.racc_t(1)||(this.racc_error_status=$rb_minus(this.racc_error_status,1))),this.racc_vstack.$push(this.racc_val),this.racc_state.$push(act),this.racc_read_next=!0,$truthy(this.yydebug)&&(this.racc_tstack.$push(this.racc_t),this.$racc_shift(this.racc_t,this.racc_tstack,this.racc_vstack));else if($truthy($truthy($a=$rb_lt(act,0))?$rb_gt(act,reduce_n()):$a)){if(code=$send(this,”catch“,,(($$13=function(){var self=$$13.$$s||this;return null==self.racc_state&&(self.racc_state=nil),self.racc_state.$push(self.$_racc_do_reduce(arg,act)),!1}).$$s=this,$$13.$$arity=0,$$13)),$truthy(code)){if(1($case=code))return ”] at this.racc_user_yyerror=!0,reduce_n["$-();if(2($case))return shift_n;this.$raise(“[Racc Bug] unknown jump code”)}}else if(act(shift_n))$truthy(this.yydebug)&&this.$racc_accept(),this.$throw(“racc_end_parse”,this.racc_vstack[“$”](0));else{if(act(“] at reduce_n["$-())){for($case=this.racc_error_status,(0)($case)?$truthy(arg[”$“](21))||this.$on_error(this.racc_t,this.racc_val,this.racc_vstack):3($case)&&(this.racc_t(0)&&this.$throw(”racc_end_parse“,nil),this.racc_read_next=!0),this.racc_user_yyerror=!1,this.racc_error_status=3;$truthy(!0)&&(!$truthy(i=action_pointer[”$“](this.racc_state[”$“](-1)))||(i=$rb_plus(i,1),!$truthy($truthy($b=$truthy($c=$rb_ge(i,0))?act=action_table[”$“](i):$c)?action_check[”$“](i)(this.racc_state[”$“](-1)):$b)));)$truthy((lhs=this.racc_state.$size(),rhs=1,”number“==typeof lhs&&”number“==typeof rhs?lhs<=rhs:lhs(rhs)))&&this.$throw(”racc_end_parse“,nil),this.racc_state.$pop(),this.racc_vstack.$pop(),$truthy(this.yydebug)&&(this.racc_tstack.$pop(),this.$racc_e_pop(this.racc_state,this.racc_tstack,this.racc_vstack));return act}this.$raise(”[Racc Bug] unknown action “+act.$inspect())}return $truthy(this.yydebug)&&this.$racc_next_state(this.racc_state[”$“](-1),this.racc_state),nil},$Parser__racc_evalact$12.$$arity=2),Opal.def(self,”$_racc_do_reduce“,$Parser__racc_do_reduce$14=function(arg,act){var $a,$b,nt_base,use_result,reduce_to,method_id,void_array,k1,lhs,rhs,goto_table=nil,goto_check=nil,goto_default=nil,goto_pointer=nil,reduce_table=nil,state=nil,vstack=nil,tstack=nil,i=nil,len=nil,tmp_t=nil,tmp_v=nil,$writer=nil,curstate=nil;return $b=arg,null==($a=Opal.to_ary($b))?nil:$a,null==$a?nil:$a,null==$a?nil:$a,null==$a?nil:$a,goto_table=null==$a?nil:$a,goto_check=null==$a?nil:$a,goto_default=null==$a?nil:$a,goto_pointer=null==$a?nil:$a,nt_base=null==$a?nil:$a,reduce_table=null==$a?nil:$a,null==$a?nil:$a,null==$a?nil:$a,null==$a?nil:$a,use_result=null==$a?nil:$a,state=this.racc_state,vstack=this.racc_vstack,tstack=this.racc_tstack,rhs=-3,i=”number“==typeof(lhs=act)&&”number“==typeof rhs?lhs*rhs:lhs(rhs),len=reduce_table[”$“](i),reduce_to=reduce_table[”$“]($rb_plus(i,1)),method_id=reduce_table[”$“]($rb_plus(i,2)),void_array=[],$truthy(this.yydebug)&&(tmp_t=tstack[”$“](len(),len)),tmp_v=vstack[”$“](len(),len),$truthy(this.yydebug)&&($writer=[len(),len,void_array],$send(tstack,”[]=“,Opal.to_a($writer)),$writer),$writer=[len(),len,void_array],$send(vstack,”[]=“,Opal.to_a($writer)),$writer,$writer=[len(),len,void_array],$send(state,”[]=“,Opal.to_a($writer)),$writer,$truthy(use_result)?vstack.$push(this.$__send__(method_id,tmp_v,vstack,tmp_v[”$“](0))):vstack.$push(this.$__send__(method_id,tmp_v,vstack)),tstack.$push(reduce_to),$truthy(this.yydebug)&&this.$racc_reduce(tmp_t,reduce_to,tstack,vstack),k1=$rb_minus(reduce_to,nt_base),$truthy(i=goto_pointer[”$“](k1))&&(i=$rb_plus(i,state[”$“](-1)),$truthy($truthy($a=$truthy($b=$rb_ge(i,0))?curstate=goto_table[”$“](i):$b)?goto_check[”$“](i)(k1):$a))?curstate:goto_default[”$“](k1)},$Parser__racc_do_reduce$14.$$arity=2),Opal.def(self,”$on_error“,$Parser_on_error$15=function(t,val,vstack){var $a;return this.$raise($$($nesting,”ParseError“),this.$sprintf(”nparse error on value %s (%s)“,val.$inspect(),$truthy($a=this.$token_to_str(t))?$a:”?“))},$Parser_on_error$15.$$arity=3),Opal.def(self,”$yyerror“,$Parser_yyerror$16=function(){return this.$throw(”racc_jump“,1)},$Parser_yyerror$16.$$arity=0),Opal.def(self,”$yyaccept“,$Parser_yyaccept$17=function(){return this.$throw(”racc_jump“,2)},$Parser_yyaccept$17.$$arity=0),Opal.def(self,”$yyerrok“,$Parser_yyerrok$18=function(){return this.racc_error_status=0},$Parser_yyerrok$18.$$arity=0),Opal.def(self,”$racc_read_token“,$Parser_racc_read_token$19=function(t,tok,val){return this.racc_debug_out.$print(”read “),this.racc_debug_out.$print(tok.$inspect(),”(“,this.$racc_token2str(t),”) “),this.racc_debug_out.$puts(val.$inspect()),this.racc_debug_out.$puts()},$Parser_racc_read_token$19.$$arity=3),Opal.def(self,”$racc_shift“,$Parser_racc_shift$20=function(tok,tstack,vstack){return this.racc_debug_out.$puts(”shift “+this.$racc_token2str(tok)),this.$racc_print_stacks(tstack,vstack),this.racc_debug_out.$puts()},$Parser_racc_shift$20.$$arity=3),Opal.def(self,”$racc_reduce“,$Parser_racc_reduce$21=function(toks,sim,tstack,vstack){var $$22,out=nil;return(out=this.racc_debug_out).$print(”reduce “),$truthy(toks())?out.$print(” <none>“):$send(toks,”each“,[],(($$22=function(t){var self=$$22.$$s||this;return null==t&&(t=nil),out.$print(” “,self.$racc_token2str(t))}).$$s=this,$$22.$$arity=1,$$22)),out.$puts(” –x3e “+this.$racc_token2str(sim)),this.$racc_print_stacks(tstack,vstack),this.racc_debug_out.$puts()},$Parser_racc_reduce$21.$$arity=4),Opal.def(self,”$racc_accept“,$Parser_racc_accept$23=function(){return this.racc_debug_out.$puts(”accept“),this.racc_debug_out.$puts()},$Parser_racc_accept$23.$$arity=0),Opal.def(self,”$racc_e_pop“,$Parser_racc_e_pop$24=function(state,tstack,vstack){return this.racc_debug_out.$puts(”error recovering mode: pop token“),this.$racc_print_states(state),this.$racc_print_stacks(tstack,vstack),this.racc_debug_out.$puts()},$Parser_racc_e_pop$24.$$arity=3),Opal.def(self,”$racc_next_state“,$Parser_racc_next_state$25=function(curstate,state){return this.racc_debug_out.$puts(”goto “+curstate),this.$racc_print_states(state),this.racc_debug_out.$puts()},$Parser_racc_next_state$25.$$arity=2),Opal.def(self,”$racc_print_stacks“,$Parser_racc_print_stacks$26=function(t,v){var $$27,out=nil;return(out=this.racc_debug_out).$print(” [“),$send(t,”each_index“,[],(($$27=function(i){var self=$$27.$$s||this;return null==i&&(i=nil),out.$print(” (“,self.$racc_token2str(t[”$“](i)),” “,v[”$“](i).$inspect(),”)“)}).$$s=this,$$27.$$arity=1,$$27)),out.$puts(” ]“)},$Parser_racc_print_stacks$26.$$arity=2),Opal.def(self,”$racc_print_states“,$Parser_racc_print_states$28=function(s){var $$29,out=nil;return(out=this.racc_debug_out).$print(” [“),$send(s,”each“,[],(($$29=function(st){$$29.$$s;return null==st&&(st=nil),out.$print(” “,st)}).$$s=this,$$29.$$arity=1,$$29)),out.$puts(” ]“)},$Parser_racc_print_states$28.$$arity=1),Opal.def(self,”$racc_token2str“,$Parser_racc_token2str$30=function(tok){var $a;return $truthy($a=$$$(this.$class(),”Racc_token_to_s_table“)[”$“](tok))?$a:this.$raise(”[Racc Bug] can't convert token “tok” to string“)},$Parser_racc_token2str$30.$$arity=1),Opal.def(self,”$token_to_str“,$Parser_token_to_str$31=function(t){return $$$(this.$class(),”Racc_token_to_s_table“)[”$“](t)},$Parser_token_to_str$31.$$arity=1)}($nesting,0,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){Opal.top;var $nesting=[],$module=(Opal.nil,Opal.const_get_qualified,Opal.const_get_relative,Opal.breaker,Opal.slice,Opal.module);return function($base,$parent_nesting){var $nesting=.concat($parent_nesting);Opal.const_set($nesting,”VERSION“,”2.5.3.0“)}($nesting,$nesting)},Opal.modules=function(Opal){function $rb_lt(lhs,rhs){return”number“==typeof lhs&&”number“==typeof rhs?lhs(rhs)}function $rb_minus(lhs,rhs){return”number“==typeof lhs&&”number“==typeof rhs?lhs-rhs:lhs(rhs)}function $rb_plus(lhs,rhs){return”number“==typeof lhs&&”number“==typeof rhs?lhs+rhs:lhs(rhs)}function $rb_ge(lhs,rhs){return”number“==typeof lhs&&”number“==typeof =”“>rhs?rhs<=lhs:lhs(rhs)}function $rb_gt(lhs,rhs){return”number“==typeof lhs&&”number“==typeof ”“>rhs?rhs(rhs)}Opal.top;var $nesting=[],nil=Opal.nil,$$$=Opal.const_get_qualified,$$=Opal.const_get_relative,$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$truthy=Opal.truthy,$gvars=Opal.gvars,$send=Opal.send;return Opal.add_stubs([”$“,”$=“,”$==“,”$_racc_evalact“,”$!“,”$>“,”$push“,”$racc_shift“,”$-@“,”$_racc_do_reduce“,”$===“,”$racc_accept“,”$throw“,”$on_error“,”$<=","$pop","$racc_e_pop","$inspect","$racc_next_state","$*","$racc_reduce","$sprintf","$token_to_str","$print","$racc_token2str","$puts","$racc_print_stacks","$empty?","$each","$racc_print_states","$each_index"">class“,”$<","$size","$),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){[$klass($base,$super,“ParseError”)].concat($parent_nesting)}($nesting,$$($nesting,“StandardError”),$nesting)}($nesting,$nesting),$truthy($$$(“::”,“ParseError”,“skip_raise”)?“constant”:nil)||Opal.const_set($nesting,“ParseError”,$$$($$($nesting,“Racc”),“ParseError”)),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);$truthy($$($nesting,“Racc_No_Extensions”,“skip_raise”)?“constant”:nil)||Opal.const_set($nesting,“Racc_No_Extensions”,!1),function($base,$super,$parent_nesting){var $Parser_racc_runtime_type$1,$Parser__racc_setup$2,$Parser__racc_init_sysvars$3,$Parser_do_parse$4,$Parser_next_token$5,$Parser__racc_do_parse_rb$6,$Parser_yyparse$8,$Parser__racc_yyparse_rb$9,$Parser__racc_evalact$12,$Parser__racc_do_reduce$14,$Parser_on_error$15,$Parser_yyerror$16,$Parser_yyaccept$17,$Parser_yyerrok$18,$Parser_racc_read_token$19,$Parser_racc_shift$20,$Parser_racc_reduce$21,$Parser_racc_accept$23,$Parser_racc_e_pop$24,$Parser_racc_next_state$25,$Parser_racc_print_stacks$26,$Parser_racc_print_states$28,$Parser_racc_token2str$30,$Parser_token_to_str$31,self=$klass($base,null,“Parser”),$nesting=.concat($parent_nesting);self.$$prototype.yydebug=self.$$prototype.racc_debug_out=self.$$prototype.racc_error_status=self.$$prototype.racc_t=self.$$prototype.racc_vstack=self.$$prototype.racc_val=self.$$prototype.racc_state=self.$$prototype.racc_tstack=nil,Opal.const_set($nesting,“Racc_Runtime_Version”,“1.4.6”),Opal.const_set($nesting,“Racc_Runtime_Revision”,[“$[]”](1)),Opal.const_set($nesting,“Racc_Runtime_Core_Version_R”,“1.4.6”),Opal.const_set($nesting,“Racc_Runtime_Core_Revision_R”,[“$[]”](1)),Opal.const_set($nesting,“Racc_Main_Parsing_Routine”,“_racc_do_parse_rb”),Opal.const_set($nesting,“Racc_YY_Parse_Method”,“_racc_yyparse_rb”),Opal.const_set($nesting,“Racc_Runtime_Core_Version”,$$($nesting,“Racc_Runtime_Core_Version_R”)),Opal.const_set($nesting,“Racc_Runtime_Core_Revision”,$$($nesting,“Racc_Runtime_Core_Revision_R”)),Opal.const_set($nesting,“Racc_Runtime_Type”,“ruby”),Opal.defs($$($nesting,“Parser”),“$racc_runtime_type”,$Parser_racc_runtime_type$1=function(){return $$($nesting,“Racc_Runtime_Type”)},$Parser_racc_runtime_type$1.$$arity=0),Opal.def(self,“$_racc_setup”,$Parser__racc_setup$2=function(){var $a,$b,$c,arg=nil,$writer=nil;return null==$gvars.stderr&&($gvars.stderr=nil),$truthy($$$(this.$class(),“Racc_debug_parser”))||(this.yydebug=!1),$truthy(null!=($a=this.yydebug)&&$a!==nil?“instance-variable”:nil)||(this.yydebug=!1),$truthy(this.yydebug)&&($truthy(null!=($b=this.racc_debug_out)&&$b!==nil?“instance-variable”:nil)||(this.racc_debug_out=$gvars.stderr),this.racc_debug_out=$truthy($c=this.racc_debug_out)?$c:$gvars.stderr),arg=$$$(this.$class(),“Racc_arg”),$truthy($rb_lt(arg.$size(),14))&&($writer=,$send(arg,“[]=”,Opal.to_a($writer)),$writer),arg},$Parser__racc_setup$2.$$arity=0),Opal.def(self,“$_racc_init_sysvars”,$Parser__racc_init_sysvars$3=function(){return this.racc_state=,this.racc_tstack=[],this.racc_vstack=,this.racc_t=nil,this.racc_val=nil,this.racc_read_next=!0,this.racc_user_yyerror=!1,this.racc_error_status=0},$Parser__racc_init_sysvars$3.$$arity=0),Opal.def(self,“$do_parse”,$Parser_do_parse$4=function(){return this.$__send__($$($nesting,“Racc_Main_Parsing_Routine”),this.$_racc_setup(),!1)},$Parser_do_parse$4.$$arity=0),Opal.def(self,“$next_token”,$Parser_next_token$5=function(){return this.$raise($$($nesting,“NotImplementedError”),this.$class()+“#next_token is not defined”)},$Parser_next_token$5.$$arity=0),Opal.def(self,“$_racc_do_parse_rb”,$Parser__racc_do_parse_rb$6=function(arg,in_debug){var $a,$b,$$7,action_table=nil,action_check=nil,action_default=nil,action_pointer=nil,token_table=nil,tok=nil,act=nil,i=nil;return $b=arg,$a=Opal.to_ary($b),action_table=null==$a?nil:$a,action_check=null==$a?nil:$a,action_default=null==$a?nil:$a,action_pointer=null==$a?nil:$a,null==$a?nil:$a,null==$a?nil:$a,null==$a?nil:$a,null==$a?nil:$a,null==$a?nil:$a,null==$a?nil:$a,token_table=null==$a?nil:$a,null==$a?nil:$a,null==$a?nil:$a,null==$a?nil:$a,this.$_racc_init_sysvars(),tok=act=i=nil,$send(this,“catch”,,(($$7=function(){var $d,$e,self=$$7.$$s||this;for(null==self.racc_state&&(self.racc_state=nil),null==self.racc_read_next&&(self.racc_read_next=nil),null==self.racc_t&&(self.racc_t=nil),null==self.yydebug&&(self.yydebug=nil),null==self.racc_val&&(self.racc_val=nil);$truthy(!0);)for($truthy(i=action_pointer[“$”](self.racc_state[“$”](-1)))?($truthy(self.racc_read_next)&&$truthy(self.racc_t(0))&&($e=self.$next_token(),$d=Opal.to_ary($e),tok=null==$d?nil:$d,self.racc_val=null==$d?nil:$d,$truthy(tok)?self.racc_t=$truthy($d=token_table[“$”](tok))?$d:1:self.racc_t=0,$truthy(self.yydebug)&&self.$racc_read_token(self.racc_t,tok,self.racc_val),self.racc_read_next=!1),i=$rb_plus(i,self.racc_t),$truthy($truthy($d=$truthy($e=$rb_ge(i,0))?act=action_table[“$”](i):$e)?action_check[“$”](i)(self.racc_state[“$”](-1)):$d)||(act=action_default[“$”](self.racc_state[“$”](-1)))):act=action_default[“$”](self.racc_state[“$”](-1));$truthy(act=self.$_racc_evalact(act,arg)););}).$$s=this,$$7.$$arity=0,$$7))},$Parser__racc_do_parse_rb$6.$$arity=2),Opal.def(self,“$yyparse”,$Parser_yyparse$8=function(recv,mid){return this.$__send__($$($nesting,“Racc_YY_Parse_Method”),recv,mid,this.$_racc_setup(),!0)},$Parser_yyparse$8.$$arity=2),Opal.def(self,“$_racc_yyparse_rb”,$Parser__racc_yyparse_rb$9=function(recv,mid,arg,c_debug){var $a,$b,$$10,action_table=nil,action_check=nil,action_default=nil,action_pointer=nil,token_table=nil,act=nil,i=nil;return $b=arg,$a=Opal.to_ary($b),action_table=null==$a?nil:$a,action_check=null==$a?nil:$a,action_default=null==$a?nil:$a,action_pointer=null==$a?nil:$a,null==$a?nil:$a,null==$a?nil:$a,null==$a?nil:$a,null==$a?nil:$a,null==$a?nil:$a,null==$a?nil:$a,token_table=null==$a?nil:$a,null==$a?nil:$a,null==$a?nil:$a,null==$a?nil:$a,this.$_racc_init_sysvars(),i=act=nil,$send(this,“catch”,,(($$10=function(){var $$11,self=$$10.$$s||this;for(null==self.racc_state&&(self.racc_state=nil);!$truthy(i=action_pointer[“$”](self.racc_state[“$”](-1)));)for(;$truthy(act=self.$_racc_evalact(action_default[“$”](self.racc_state[“$”](-1)),arg)););return $send(recv,“__send__”,,(($$11=function(tok,val){var $e,$f,$g,$h,$i,self=$$11.$$s||this;for(null==self.racc_t&&(self.racc_t=nil),null==self.racc_state&&(self.racc_state=nil),null==self.racc_read_next&&(self.racc_read_next=nil),null==tok&&(tok=nil),null==val&&(val=nil),$truthy(tok)?self.racc_t=$truthy($e=token_table[“$”](tok))?$e:1:self.racc_t=0,self.racc_val=val,self.racc_read_next=!1,i=$rb_plus(i,self.racc_t),$truthy($truthy($e=$truthy($f=$rb_ge(i,0))?act=action_table[“$”](i):$f)?action_check[“$”](i)(self.racc_state[“$”](-1)):$e)||(act=action_default[“$”](self.racc_state[“$”](-1)));$truthy(act=self.$_racc_evalact(act,arg)););for(;$truthy($truthy($f=$truthy($g=(i=action_pointer[“$”](self.racc_state[“$”](-1)))())?$g:self.racc_read_next())?$f:self.racc_t(0));)for($truthy($truthy($f=$truthy($g=$truthy($h=$truthy($i=i)?i=$rb_plus(i,self.racc_t):$i)?$rb_ge(i,0):$h)?act=action_table[“$”](i):$g)?action_check[“$”](i)(self.racc_state[“$”](-1)):$f)||(act=action_default[“$”](self.racc_state[“$”](-1)));$truthy(act=self.$_racc_evalact(act,arg)););}).$$s=self,$$11.$$arity=2,$$11))}).$$s=this,$$10.$$arity=0,$$10))},$Parser__racc_yyparse_rb$9.$$arity=4),Opal.def(self,“$_racc_evalact”,$Parser__racc_evalact$12=function(act,arg){var $a,$b,$$13,$c,shift_n,lhs,rhs,action_table=nil,action_check=nil,action_pointer=nil,reduce_n=nil,code=nil,$case=nil,i=nil;if($b=arg,action_table=null==($a=Opal.to_ary($b))?nil:$a,action_check=null==$a?nil:$a,null==$a?nil:$a,action_pointer=null==$a?nil:$a,null==$a?nil:$a,null==$a?nil:$a,null==$a?nil:$a,null==$a?nil:$a,null==$a?nil:$a,null==$a?nil:$a,null==$a?nil:$a,shift_n=null==$a?nil:$a,reduce_n=null==$a?nil:$a,null==$a?nil:$a,null==$a?nil:$a,$truthy($truthy($a=$rb_gt(act,0))?$rb_lt(act,shift_n):$a))$truthy($rb_gt(this.racc_error_status,0))&&(this.racc_t(1)||(this.racc_error_status=$rb_minus(this.racc_error_status,1))),this.racc_vstack.$push(this.racc_val),this.racc_state.$push(act),this.racc_read_next=!0,$truthy(this.yydebug)&&(this.racc_tstack.$push(this.racc_t),this.$racc_shift(this.racc_t,this.racc_tstack,this.racc_vstack));else if($truthy($truthy($a=$rb_lt(act,0))?$rb_gt(act,reduce_n()):$a)){if(code=$send(this,“catch”,,(($$13=function(){var self=$$13.$$s||this;return null==self.racc_state&&(self.racc_state=nil),self.racc_state.$push(self.$_racc_do_reduce(arg,act)),!1}).$$s=this,$$13.$$arity=0,$$13)),$truthy(code)){if(1($case=code))return “] at this.racc_user_yyerror=!0,reduce_n["$-();if(2($case))return shift_n;this.$raise(”[Racc Bug] unknown jump code“)}}else if(act(shift_n))$truthy(this.yydebug)&&this.$racc_accept(),this.$throw(”racc_end_parse“,this.racc_vstack[”$“](0));else{if(act(”] at reduce_n["$-())){for($case=this.racc_error_status,(0)($case)?$truthy(arg[“$”](21))||this.$on_error(this.racc_t,this.racc_val,this.racc_vstack):3($case)&&(this.racc_t(0)&&this.$throw(“racc_end_parse”,nil),this.racc_read_next=!0),this.racc_user_yyerror=!1,this.racc_error_status=3;$truthy(!0)&&(!$truthy(i=action_pointer[“$”](this.racc_state[“$”](-1)))||(i=$rb_plus(i,1),!$truthy($truthy($b=$truthy($c=$rb_ge(i,0))?act=action_table[“$”](i):$c)?action_check[“$”](i)(this.racc_state[“$”](-1)):$b)));)$truthy((lhs=this.racc_state.$size(),rhs=1,“number”==typeof lhs&&“number”==typeof rhs?lhs<=rhs:lhs(rhs)))&&this.$throw(“racc_end_parse”,nil),this.racc_state.$pop(),this.racc_vstack.$pop(),$truthy(this.yydebug)&&(this.racc_tstack.$pop(),this.$racc_e_pop(this.racc_state,this.racc_tstack,this.racc_vstack));return act}this.$raise(“[Racc Bug] unknown action ”+act.$inspect())}return $truthy(this.yydebug)&&this.$racc_next_state(this.racc_state[“$”](-1),this.racc_state),nil},$Parser__racc_evalact$12.$$arity=2),Opal.def(self,“$_racc_do_reduce”,$Parser__racc_do_reduce$14=function(arg,act){var $a,$b,nt_base,use_result,reduce_to,method_id,void_array,k1,lhs,rhs,goto_table=nil,goto_check=nil,goto_default=nil,goto_pointer=nil,reduce_table=nil,state=nil,vstack=nil,tstack=nil,i=nil,len=nil,tmp_t=nil,tmp_v=nil,$writer=nil,curstate=nil;return $b=arg,null==($a=Opal.to_ary($b))?nil:$a,null==$a?nil:$a,null==$a?nil:$a,null==$a?nil:$a,goto_table=null==$a?nil:$a,goto_check=null==$a?nil:$a,goto_default=null==$a?nil:$a,goto_pointer=null==$a?nil:$a,nt_base=null==$a?nil:$a,reduce_table=null==$a?nil:$a,null==$a?nil:$a,null==$a?nil:$a,null==$a?nil:$a,use_result=null==$a?nil:$a,state=this.racc_state,vstack=this.racc_vstack,tstack=this.racc_tstack,rhs=-3,i=“number”==typeof(lhs=act)&&“number”==typeof rhs?lhs*rhs:lhs(rhs),len=reduce_table[“$”](i),reduce_to=reduce_table[“$”]($rb_plus(i,1)),method_id=reduce_table[“$”]($rb_plus(i,2)),void_array=[],$truthy(this.yydebug)&&(tmp_t=tstack[“$”](len(),len)),tmp_v=vstack[“$”](len(),len),$truthy(this.yydebug)&&($writer=[len(),len,void_array],$send(tstack,“[]=”,Opal.to_a($writer)),$writer),$writer=[len(),len,void_array],$send(vstack,“[]=”,Opal.to_a($writer)),$writer,$writer=[len(),len,void_array],$send(state,“[]=”,Opal.to_a($writer)),$writer,$truthy(use_result)?vstack.$push(this.$__send__(method_id,tmp_v,vstack,tmp_v[“$”](0))):vstack.$push(this.$__send__(method_id,tmp_v,vstack)),tstack.$push(reduce_to),$truthy(this.yydebug)&&this.$racc_reduce(tmp_t,reduce_to,tstack,vstack),k1=$rb_minus(reduce_to,nt_base),$truthy(i=goto_pointer[“$”](k1))&&(i=$rb_plus(i,state[“$”](-1)),$truthy($truthy($a=$truthy($b=$rb_ge(i,0))?curstate=goto_table[“$”](i):$b)?goto_check[“$”](i)(k1):$a))?curstate:goto_default[“$”](k1)},$Parser__racc_do_reduce$14.$$arity=2),Opal.def(self,“$on_error”,$Parser_on_error$15=function(t,val,vstack){var $a;return this.$raise($$($nesting,“ParseError”),this.$sprintf(“nparse error on value %s (%s)”,val.$inspect(),$truthy($a=this.$token_to_str(t))?$a:“?”))},$Parser_on_error$15.$$arity=3),Opal.def(self,“$yyerror”,$Parser_yyerror$16=function(){return this.$throw(“racc_jump”,1)},$Parser_yyerror$16.$$arity=0),Opal.def(self,“$yyaccept”,$Parser_yyaccept$17=function(){return this.$throw(“racc_jump”,2)},$Parser_yyaccept$17.$$arity=0),Opal.def(self,“$yyerrok”,$Parser_yyerrok$18=function(){return this.racc_error_status=0},$Parser_yyerrok$18.$$arity=0),Opal.def(self,“$racc_read_token”,$Parser_racc_read_token$19=function(t,tok,val){return this.racc_debug_out.$print(“read ”),this.racc_debug_out.$print(tok.$inspect(),“(”,this.$racc_token2str(t),“) ”),this.racc_debug_out.$puts(val.$inspect()),this.racc_debug_out.$puts()},$Parser_racc_read_token$19.$$arity=3),Opal.def(self,“$racc_shift”,$Parser_racc_shift$20=function(tok,tstack,vstack){return this.racc_debug_out.$puts(“shift ”+this.$racc_token2str(tok)),this.$racc_print_stacks(tstack,vstack),this.racc_debug_out.$puts()},$Parser_racc_shift$20.$$arity=3),Opal.def(self,“$racc_reduce”,$Parser_racc_reduce$21=function(toks,sim,tstack,vstack){var $$22,out=nil;return(out=this.racc_debug_out).$print(“reduce ”),$truthy(toks())?out.$print(“ <none>”):$send(toks,“each”,[],(($$22=function(t){var self=$$22.$$s||this;return null==t&&(t=nil),out.$print(“ ”,self.$racc_token2str(t))}).$$s=this,$$22.$$arity=1,$$22)),out.$puts(“ –x3e ”+this.$racc_token2str(sim)),this.$racc_print_stacks(tstack,vstack),this.racc_debug_out.$puts()},$Parser_racc_reduce$21.$$arity=4),Opal.def(self,“$racc_accept”,$Parser_racc_accept$23=function(){return this.racc_debug_out.$puts(“accept”),this.racc_debug_out.$puts()},$Parser_racc_accept$23.$$arity=0),Opal.def(self,“$racc_e_pop”,$Parser_racc_e_pop$24=function(state,tstack,vstack){return this.racc_debug_out.$puts(“error recovering mode: pop token”),this.$racc_print_states(state),this.$racc_print_stacks(tstack,vstack),this.racc_debug_out.$puts()},$Parser_racc_e_pop$24.$$arity=3),Opal.def(self,“$racc_next_state”,$Parser_racc_next_state$25=function(curstate,state){return this.racc_debug_out.$puts(“goto ”+curstate),this.$racc_print_states(state),this.racc_debug_out.$puts()},$Parser_racc_next_state$25.$$arity=2),Opal.def(self,“$racc_print_stacks”,$Parser_racc_print_stacks$26=function(t,v){var $$27,out=nil;return(out=this.racc_debug_out).$print(“ [”),$send(t,“each_index”,[],(($$27=function(i){var self=$$27.$$s||this;return null==i&&(i=nil),out.$print(“ (”,self.$racc_token2str(t[“$”](i)),“ ”,v[“$”](i).$inspect(),“)”)}).$$s=this,$$27.$$arity=1,$$27)),out.$puts(“ ]”)},$Parser_racc_print_stacks$26.$$arity=2),Opal.def(self,“$racc_print_states”,$Parser_racc_print_states$28=function(s){var $$29,out=nil;return(out=this.racc_debug_out).$print(“ [”),$send(s,“each”,[],(($$29=function(st){$$29.$$s;return null==st&&(st=nil),out.$print(“ ”,st)}).$$s=this,$$29.$$arity=1,$$29)),out.$puts(“ ]”)},$Parser_racc_print_states$28.$$arity=1),Opal.def(self,“$racc_token2str”,$Parser_racc_token2str$30=function(tok){var $a;return $truthy($a=$$$(this.$class(),“Racc_token_to_s_table”)[“$”](tok))?$a:this.$raise(“[Racc Bug] can't convert token ”tok“ to string”)},$Parser_racc_token2str$30.$$arity=1),Opal.def(self,“$token_to_str”,$Parser_token_to_str$31=function(t){return $$$(this.$class(),“Racc_token_to_s_table”)[“$”](t)},$Parser_token_to_str$31.$$arity=1)}($nesting,0,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){Opal.top;var $nesting=[],$module=(Opal.nil,Opal.const_get_qualified,Opal.const_get_relative,Opal.breaker,Opal.slice,Opal.module),$hash2=Opal.hash2;return Opal.add_stubs(),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);Opal.const_set($nesting,“MESSAGES”,$hash2(,{unicode_point_too_large:“invalid Unicode codepoint (too large)”,invalid_escape:“invalid escape character syntax”,incomplete_escape:“incomplete character syntax”,invalid_hex_escape:“invalid hex escape”,invalid_unicode_escape:“invalid Unicode escape”,unterminated_unicode:“unterminated Unicode escape”,escape_eof:“escape sequence meets end of file”,string_eof:“unterminated string meets end of file”,regexp_options:“unknown regexp options: %{options}”,cvar_name:“`%{name}' is not allowed as a class variable name”,ivar_name:“`%{name}' is not allowed as an instance variable name”,trailing_in_number:“trailing `%{character}' in number”,empty_numeric:“numeric literal without digits”,invalid_octal:“invalid octal digit”,no_dot_digit_literal:“no .<digit> floating literal anymore; put 0 before dot”,bare_backslash:“bare backslash only allowed before newline”,unexpected:“unexpected `%{character}'”,embedded_document:“embedded document meets end of file (and they embark on a romantic journey)”,heredoc_id_has_newline:“here document identifier across newlines, never match”,heredoc_id_ends_with_nl:“here document identifier ends with a newline”,invalid_escape_use:“invalid character syntax; use ?%{escape}”,ambiguous_literal:“ambiguous first argument; put parentheses or a space even after the operator”,ambiguous_prefix:“`%{prefix}' interpreted as argument prefix”,nth_ref_alias:“cannot define an alias for a back-reference variable”,begin_in_method:“BEGIN in method”,backref_assignment:“cannot assign to a back-reference variable”,invalid_assignment:“cannot assign to a keyword”,module_name_const:“class or module name must be a constant literal”,unexpected_token:“unexpected token %{token}”,argument_const:“formal argument cannot be a constant”,argument_ivar:“formal argument cannot be an instance variable”,argument_gvar:“formal argument cannot be a global variable”,argument_cvar:“formal argument cannot be a class variable”,duplicate_argument:“duplicate argument name”,empty_symbol:“empty symbol literal”,odd_hash:“odd number of entries for a hash”,singleton_literal:“cannot define a singleton method for a literal”,dynamic_const:“dynamic constant assignment”,const_reassignment:“constant re-assignment”,module_in_def:“module definition in method body”,class_in_def:“class definition in method body”,unexpected_percent_str:“%{type}: unknown type of percent-literal”,block_and_blockarg:“both block argument and literal block are passed”,masgn_as_condition:“multiple assignment in conditional context”,block_given_to_yield:“block given to yield”,invalid_regexp:“%{message}”,invalid_return:“Invalid return in class/module body”,useless_else:“else without rescue is useless”,invalid_encoding:“literal contains escape sequences incompatible with UTF-8”,invalid_action:“cannot %{action}”,clobbered:“clobbered by: %{action}”,different_replacements:“different replacements: %{replacement} vs %{other_replacement}”,swallowed_insertions:“this replacement:”,swallowed_insertions_conflict:“swallows some inner rewriting actions:”,crossing_deletions:“the deletion of:”,crossing_deletions_conflict:“is crossing:”,crossing_insertions:“the rewriting action on:”,crossing_insertions_conflict:“is crossing that on:”}).$freeze())}($nesting,$nesting)},Opal.modules=function(Opal){Opal.top;var $nesting=[],nil=Opal.nil,$$$=Opal.const_get_qualified,$module=(Opal.const_get_relative,Opal.breaker,Opal.slice,Opal.module),$truthy=Opal.truthy;return Opal.add_stubs(),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $Deprecation_warn_of_deprecation$1,self=$module($base,“Deprecation”);.concat($parent_nesting);self.$attr_writer(“warned_of_deprecation”),Opal.def(self,“$warn_of_deprecation”,$Deprecation_warn_of_deprecation$1=function(){var $a,$b;return null==this.warned_of_deprecation&&(this.warned_of_deprecation=nil),this.warned_of_deprecation=$truthy($a=this.warned_of_deprecation)?$a:!$truthy($b=this.$warn($$$(this,“DEPRECATION_WARNING”)))||$b},$Deprecation_warn_of_deprecation$1.$$arity=0)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){Opal.top;var $nesting=[],nil=Opal.nil,$$$=Opal.const_get_qualified,$slice=(Opal.const_get_relative,Opal.breaker,Opal.slice),$module=Opal.module,$klass=Opal.klass,$truthy=Opal.truthy;return Opal.add_stubs(),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $Processor_process_regular_node$1,$Processor_on_var$2,$Processor_process_variable_node$3,$Processor_on_vasgn$4,$Processor_process_var_asgn_node$5,$Processor_on_op_asgn$6,$Processor_on_const$7,$Processor_on_casgn$8,$Processor_on_argument$9,$Processor_process_argument_node$10,$Processor_on_def$11,$Processor_on_defs$12,$Processor_on_send$13,$Processor_process_variable_node$14,$Processor_process_var_asgn_node$15,$Processor_process_argument_node$16,self=$klass($base,$super,“Processor”);.concat($parent_nesting);Opal.def(self,“$process_regular_node”,$Processor_process_regular_node$1=function(node){return node.$updated(nil,this.$process_all(node))},$Processor_process_regular_node$1.$$arity=1),Opal.alias(self,“on_dstr”,“process_regular_node”),Opal.alias(self,“on_dsym”,“process_regular_node”),Opal.alias(self,“on_regexp”,“process_regular_node”),Opal.alias(self,“on_xstr”,“process_regular_node”),Opal.alias(self,“on_splat”,“process_regular_node”),Opal.alias(self,“on_kwsplat”,“process_regular_node”),Opal.alias(self,“on_array”,“process_regular_node”),Opal.alias(self,“on_pair”,“process_regular_node”),Opal.alias(self,“on_hash”,“process_regular_node”),Opal.alias(self,“on_irange”,“process_regular_node”),Opal.alias(self,“on_erange”,“process_regular_node”),Opal.def(self,“$on_var”,$Processor_on_var$2=function(node){return node},$Processor_on_var$2.$$arity=1),Opal.def(self,“$process_variable_node”,$Processor_process_variable_node$3=function(node){return this.$on_var(node)},$Processor_process_variable_node$3.$$arity=1),Opal.alias(self,“on_lvar”,“process_variable_node”),Opal.alias(self,“on_ivar”,“process_variable_node”),Opal.alias(self,“on_gvar”,“process_variable_node”),Opal.alias(self,“on_cvar”,“process_variable_node”),Opal.alias(self,“on_back_ref”,“process_variable_node”),Opal.alias(self,“on_nth_ref”,“process_variable_node”),Opal.def(self,“$on_vasgn”,$Processor_on_vasgn$4=function(node){var $a,name,value_node=nil;return name=null==($a=[].concat(Opal.to_a(node)))?nil:$a,value_node=null==$a?nil:$a,$truthy(value_node()[“$!”]())?node.$updated(nil,):node},$Processor_on_vasgn$4.$$arity=1),Opal.def(self,“$process_var_asgn_node”,$Processor_process_var_asgn_node$5=function(node){return this.$on_vasgn(node)},$Processor_process_var_asgn_node$5.$$arity=1),Opal.alias(self,“on_lvasgn”,“process_var_asgn_node”),Opal.alias(self,“on_ivasgn”,“process_var_asgn_node”),Opal.alias(self,“on_gvasgn”,“process_var_asgn_node”),Opal.alias(self,“on_cvasgn”,“process_var_asgn_node”),Opal.alias(self,“on_and_asgn”,“process_regular_node”),Opal.alias(self,“on_or_asgn”,“process_regular_node”),Opal.def(self,“$on_op_asgn”,$Processor_on_op_asgn$6=function(node){var $a,var_node,method_name,value_node;return var_node=null==($a=[].concat(Opal.to_a(node)))?nil:$a,method_name=null==$a?nil:$a,value_node=null==$a?nil:$a,node.$updated(nil,)},$Processor_on_op_asgn$6.$$arity=1),Opal.alias(self,“on_mlhs”,“process_regular_node”),Opal.alias(self,“on_masgn”,“process_regular_node”),Opal.def(self,“$on_const”,$Processor_on_const$7=function(node){var $a,scope_node,name;return scope_node=null==($a=[].concat(Opal.to_a(node)))?nil:$a,name=null==$a?nil:$a,node.$updated(nil,)},$Processor_on_const$7.$$arity=1),Opal.def(self,“$on_casgn”,$Processor_on_casgn$8=function(node){var $a,scope_node,name,value_node=nil;return scope_node=null==($a=[].concat(Opal.to_a(node)))?nil:$a,name=null==$a?nil:$a,value_node=null==$a?nil:$a,$truthy(value_node()[“$!”]())?node.$updated(nil,):node.$updated(nil,)},$Processor_on_casgn$8.$$arity=1),Opal.alias(self,“on_args”,“process_regular_node”),Opal.def(self,“$on_argument”,$Processor_on_argument$9=function(node){var $a,arg_name,value_node=nil;return arg_name=null==($a=[].concat(Opal.to_a(node)))?nil:$a,value_node=null==$a?nil:$a,$truthy(value_node()[“$!”]())?node.$updated(nil,):node},$Processor_on_argument$9.$$arity=1),Opal.def(self,“$process_argument_node”,$Processor_process_argument_node$10=function(node){return this.$on_argument(node)},$Processor_process_argument_node$10.$$arity=1),Opal.alias(self,“on_arg”,“process_argument_node”),Opal.alias(self,“on_optarg”,“process_argument_node”),Opal.alias(self,“on_restarg”,“process_argument_node”),Opal.alias(self,“on_blockarg”,“process_argument_node”),Opal.alias(self,“on_shadowarg”,“process_argument_node”),Opal.alias(self,“on_kwarg”,“process_argument_node”),Opal.alias(self,“on_kwoptarg”,“process_argument_node”),Opal.alias(self,“on_kwrestarg”,“process_argument_node”),Opal.alias(self,“on_procarg0”,“process_argument_node”),Opal.alias(self,“on_arg_expr”,“process_regular_node”),Opal.alias(self,“on_restarg_expr”,“process_regular_node”),Opal.alias(self,“on_blockarg_expr”,“process_regular_node”),Opal.alias(self,“on_block_pass”,“process_regular_node”),Opal.alias(self,“on_module”,“process_regular_node”),Opal.alias(self,“on_class”,“process_regular_node”),Opal.alias(self,“on_sclass”,“process_regular_node”),Opal.def(self,“$on_def”,$Processor_on_def$11=function(node){var $a,name,args_node,body_node;return name=null==($a=[].concat(Opal.to_a(node)))?nil:$a,args_node=null==$a?nil:$a,body_node=null==$a?nil:$a,node.$updated(nil,)},$Processor_on_def$11.$$arity=1),Opal.def(self,“$on_defs”,$Processor_on_defs$12=function(node){var $a,definee_node,name,args_node,body_node;return definee_node=null==($a=[].concat(Opal.to_a(node)))?nil:$a,name=null==$a?nil:$a,args_node=null==$a?nil:$a,body_node=null==$a?nil:$a,node.$updated(nil,)},$Processor_on_defs$12.$$arity=1),Opal.alias(self,“on_undef”,“process_regular_node”),Opal.alias(self,“on_alias”,“process_regular_node”),Opal.def(self,“$on_send”,$Processor_on_send$13=function(node){var $a,arg_nodes,receiver_node=nil,method_name=nil;return receiver_node=null==($a=[].concat(Opal.to_a(node)))?nil:$a,method_name=null==$a?nil:$a,arg_nodes=$slice.call($a,2),$truthy(receiver_node)&&(receiver_node=this.$process(receiver_node)),node.$updated(nil,.concat(Opal.to_a(this.$process_all(arg_nodes))))},$Processor_on_send$13.$$arity=1),Opal.alias(self,“on_csend”,“on_send”),Opal.alias(self,“on_index”,“process_regular_node”),Opal.alias(self,“on_indexasgn”,“process_regular_node”),Opal.alias(self,“on_block”,“process_regular_node”),Opal.alias(self,“on_lambda”,“process_regular_node”),Opal.alias(self,“on_while”,“process_regular_node”),Opal.alias(self,“on_while_post”,“process_regular_node”),Opal.alias(self,“on_until”,“process_regular_node”),Opal.alias(self,“on_until_post”,“process_regular_node”),Opal.alias(self,“on_for”,“process_regular_node”),Opal.alias(self,“on_return”,“process_regular_node”),Opal.alias(self,“on_break”,“process_regular_node”),Opal.alias(self,“on_next”,“process_regular_node”),Opal.alias(self,“on_redo”,“process_regular_node”),Opal.alias(self,“on_retry”,“process_regular_node”),Opal.alias(self,“on_super”,“process_regular_node”),Opal.alias(self,“on_yield”,“process_regular_node”),Opal.alias(self,“on_defined?”,“process_regular_node”),Opal.alias(self,“on_not”,“process_regular_node”),Opal.alias(self,“on_and”,“process_regular_node”),Opal.alias(self,“on_or”,“process_regular_node”),Opal.alias(self,“on_if”,“process_regular_node”),Opal.alias(self,“on_when”,“process_regular_node”),Opal.alias(self,“on_case”,“process_regular_node”),Opal.alias(self,“on_iflipflop”,“process_regular_node”),Opal.alias(self,“on_eflipflop”,“process_regular_node”),Opal.alias(self,“on_match_current_line”,“process_regular_node”),Opal.alias(self,“on_match_with_lvasgn”,“process_regular_node”),Opal.alias(self,“on_resbody”,“process_regular_node”),Opal.alias(self,“on_rescue”,“process_regular_node”),Opal.alias(self,“on_ensure”,“process_regular_node”),Opal.alias(self,“on_begin”,“process_regular_node”),Opal.alias(self,“on_kwbegin”,“process_regular_node”),Opal.alias(self,“on_preexe”,“process_regular_node”),Opal.alias(self,“on_postexe”,“process_regular_node”),Opal.def(self,“$process_variable_node”,$Processor_process_variable_node$14=function(node){return this.$warn(“Parser::AST::Processor#process_variable_node is deprecated as a public API and will be removed. Please use Parser::AST::Processor#on_var instead.”),this.$on_var(node)},$Processor_process_variable_node$14.$$arity=1),Opal.def(self,“$process_var_asgn_node”,$Processor_process_var_asgn_node$15=function(node){return this.$warn(“Parser::AST::Processor#process_var_asgn_node is deprecated as a public API and will be removed. Please use Parser::AST::Processor#on_vasgn instead.”),this.$on_vasgn(node)},$Processor_process_var_asgn_node$15.$$arity=1),Opal.def(self,“$process_argument_node”,$Processor_process_argument_node$16=function(node){return this.$warn(“Parser::AST::Processor#process_argument_node is deprecated as a public API and will be removed. Please use Parser::AST::Processor#on_argument instead.”),this.$on_argument(node)},$Processor_process_argument_node$16.$$arity=1)}($nesting,$$$($$$(“::”,“AST”),“Processor”),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){Opal.top;var $nesting=[],$module=(Opal.nil,Opal.const_get_qualified,Opal.const_get_relative,Opal.breaker,Opal.slice,Opal.module),$send=Opal.send;return Opal.add_stubs(),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);Opal.const_set($nesting,“NODE_TYPES”,$send(,“map”,[],“to_sym”.$to_proc()).$to_set().$freeze())}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){function $rb_minus(lhs,rhs){return“number”==typeof lhs&&“number”==typeof rhs?lhs-rhs:lhs(rhs)}function $rb_plus(lhs,rhs){return“number”==typeof lhs&&“number”==typeof rhs?lhs+rhs:lhs(rhs)}function $rb_le(lhs,rhs){return“number”==typeof lhs&&“number”==typeof rhs?lhs<=rhs:lhs(rhs)}Opal.top;var $nesting=[],nil=Opal.nil,$$$=Opal.const_get_qualified,$$=Opal.const_get_relative,$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$truthy=Opal.truthy,$gvars=Opal.gvars,$hash2=Opal.hash2,$send=Opal.send;return Opal.add_stubs([“$attr_reader”,“$empty?”,“$=~”,“$start_with?”,“$freeze”,“$==”,“$”,“$”,“$size”,“$line_begins”,“$new”,“$-@”,“$source”,“$private”,“$index”,“$unshift”,“$length”,“$bsearch”“>nil?”,“$!=”,“$match”,“$find”,“$encoding”,“$recognize_encoding”,“$force_encoding”,“$encode”,“$to_s”,“$open”,“$read”,“$source=”,“$-”,“$raise”,“$frozen?”,“$dup”,“$reencode_string”,“$class”,“$valid_encoding?”,“$name”,“$raw_source=”,“$gsub”,“$!”,“$ascii_only?”,“$line_for”,“$+”,“$),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $Buffer_recognize_encoding$1,$Buffer_reencode_string$2,$Buffer_initialize$3,$Buffer_read$4,$Buffer_source$6,$Buffer_source$eq$7,$Buffer_raw_source$eq$8,$Buffer_slice$9,$Buffer_decompose_position$10,$Buffer_line_for_position$11,$Buffer_column_for_position$12,$Buffer_source_lines$13,$Buffer_source_line$15,$Buffer_line_range$16,$Buffer_source_range$17,$Buffer_last_line$18,$Buffer_line_begins$19,$Buffer_line_for$20,self=$klass($base,null,”Buffer“),$nesting=.concat($parent_nesting);self.$$prototype.name=self.$$prototype.source=self.$$prototype.slice_source=self.$$prototype.first_line=self.$$prototype.line_for_position=self.$$prototype.column_for_position=self.$$prototype.lines=self.$$prototype.source_range=self.$$prototype.line_begins=nil,self.$attr_reader(”name“,”first_line“),Opal.const_set($nesting,”ENCODING_RE“,new RegExp(”(en)?coding\s*\s*((utf8-mac)|(+?)(-unix|-dos|-mac)|(+))“)),Opal.defs(self,”$recognize_encoding“,$Buffer_recognize_encoding$1=function(string){var $a,$b,second_line,first_line=nil,encoding_line=nil,result=nil;return $truthy(string())?nil:(string(/^(.*)n?(.*n)?/),first_line=($a=[($b=$gvars[”~“])===nil?nil:$b[”$“](1),($b=$gvars)===nil?nil:$b[”$“](2)]),second_line=$a,$truthy(first_line(”“.$force_encoding(”ASCII-8BIT“).$freeze()))?$$$($$($nesting,”Encoding“),”UTF_8“):(encoding_line=first_line[”$“](0,2)(”#!“.$force_encoding(”ASCII-8BIT“).$freeze())?second_line:first_line,$truthy($truthy($a=encoding_line())?$a:encoding_line[”$“](0)(”#“.$force_encoding(”ASCII-8BIT“)))?nil:$truthy(result=$$($nesting,”ENCODING_RE“).$match(encoding_line))?$$($nesting,”Encoding“).$find($truthy($a=$truthy($b=result[”$“](3))?$b:result[”$“](4))?$a:result[”$“](6)):nil))},$Buffer_recognize_encoding$1.$$arity=1),Opal.defs(self,”$reencode_string“,$Buffer_reencode_string$2=function(input){var original_encoding,detected_encoding=nil;return original_encoding=input.$encoding(),detected_encoding=this.$recognize_encoding(input.$force_encoding($$$($$($nesting,”Encoding“),”BINARY“))),$truthy(detected_encoding())?input.$force_encoding(original_encoding):detected_encoding($$$($$($nesting,”Encoding“),”BINARY“))?input:input.$force_encoding(detected_encoding).$encode($$$($$($nesting,”Encoding“),”UTF_8“))},$Buffer_reencode_string$2.$$arity=1),Opal.def(self,”$initialize“,$Buffer_initialize$3=function(name,first_line){return null==first_line&&(first_line=1),this.name=name.$to_s(),this.source=nil,this.first_line=first_line,this.lines=nil,this.line_begins=nil,this.slice_source=nil,this.line_for_position=$hash2([],{}),this.column_for_position=$hash2(,{})},$Buffer_initialize$3.$$arity=-2),Opal.def(self,”$read“,$Buffer_read$4=function(){var $$5;return $send($$($nesting,”File“),”open“,,(($$5=function(io){var $writer,self=$$5.$$s||this;return null==io&&(io=nil),$writer=,$send(self,”source=“,Opal.to_a($writer)),$writer}).$$s=this,$$5.$$arity=1,$$5)),this},$Buffer_read$4.$$arity=0),Opal.def(self,”$source“,$Buffer_source$6=function(){return $truthy(this.source())&&this.$raise($$($nesting,”RuntimeError“),”Cannot extract source from uninitialized Source::Buffer“.$force_encoding(”ASCII-8BIT“)),this.source},$Buffer_source$6.$$arity=0),Opal.def(self,”$source=“,$Buffer_source$eq$7=function(input){var $writer;return $truthy(input())&&(input=input.$dup()),input=this.$class().$reencode_string(input),$truthy(input())||this.$raise($$($nesting,”EncodingError“),”invalid byte sequence in “+input.$encoding().$name()),$writer=,$send(this,”raw_source=“,Opal.to_a($writer)),$writer},$Buffer_source$eq$7.$$arity=1),Opal.def(self,”$raw_source=“,$Buffer_raw_source$eq$8=function(input){var $a,$b;return $truthy(this.source)&&this.$raise($$($nesting,”ArgumentError“),”Source::Buffer is immutable“.$force_encoding(”ASCII-8BIT“)),this.source=input.$gsub(”rn“.$force_encoding(”ASCII-8BIT“).$freeze(),”n“.$force_encoding(”ASCII-8BIT“).$freeze()).$freeze(),$truthy($truthy($a=$truthy($b=this.source()[”$!“]())?this.source.$encoding()($$$($$($nesting,”Encoding“),”UTF_32LE“)):$b)?this.source.$encoding()($$$($$($nesting,”Encoding“),”BINARY“)):$a)?this.slice_source=this.source.$encode($$$($$($nesting,”Encoding“),”UTF_32LE“)):nil},$Buffer_raw_source$eq$8.$$arity=1),Opal.def(self,”$slice“,$Buffer_slice$9=function(range){return $truthy(this.slice_source())?this.source[”$“](range):this.slice_source[”$“](range).$encode(this.source.$encoding())},$Buffer_slice$9.$$arity=1),Opal.def(self,”$decompose_position“,$Buffer_decompose_position$10=function(position){var $a,$b,line_no,line_begin;return $b=this.$line_for(position),line_no=null==($a=Opal.to_ary($b))?nil:$a,line_begin=null==$a?nil:$a,[$rb_plus(this.first_line,line_no),$rb_minus(position,line_begin)]},$Buffer_decompose_position$10.$$arity=1),Opal.def(self,”$line_for_position“,$Buffer_line_for_position$11=function(position){var $a,$b,$c,$writer=nil,line_no=nil;return $truthy($a=this.line_for_position[”$“](position))?$a:($writer=[position,($c=this.$line_for(position),$b=Opal.to_ary($c),line_no=null==$b?nil:$b,null==$b?nil:$b,$rb_plus(this.first_line,line_no))],$send(this.line_for_position,”[]=“,Opal.to_a($writer)),$writer)},$Buffer_line_for_position$11.$$arity=1),Opal.def(self,”$column_for_position“,$Buffer_column_for_position$12=function(position){var $a,$b,$c,$writer=nil,line_begin=nil;return $truthy($a=this.column_for_position[”$“](position))?$a:($writer=[position,($c=this.$line_for(position),$b=Opal.to_ary($c),null==$b?nil:$b,line_begin=null==$b?nil:$b,$rb_minus(position,line_begin))],$send(this.column_for_position,”[]=“,Opal.to_a($writer)),$writer)},$Buffer_column_for_position$12.$$arity=1),Opal.def(self,”$source_lines“,$Buffer_source_lines$13=function(){var $a,$$14,self=this,lines=nil;return self.lines=$truthy($a=self.lines)?$a:(lines=self.source.$lines().$to_a(),$truthy(self.source(”n“.$force_encoding(”ASCII-8BIT“).$freeze()))&&lines(”“.$force_encoding(”ASCII-8BIT“).$dup()),$send(lines,”each“,[],(($$14=function(line){$$14.$$s;return null==line&&(line=nil),line(”n“.$force_encoding(”ASCII-8BIT“).$freeze()),line.$freeze()}).$$s=self,$$14.$$arity=1,$$14)),lines.$freeze())},$Buffer_source_lines$13.$$arity=0),Opal.def(self,”$source_line“,$Buffer_source_line$15=function(lineno){return this.$source_lines().$fetch($rb_minus(lineno,this.first_line)).$dup()},$Buffer_source_line$15.$$arity=1),Opal.def(self,”$line_range“,$Buffer_line_range$16=function(lineno){var $a,lhs,rhs,index=nil;return index=$rb_plus($rb_minus(lineno,this.first_line),1),$truthy($truthy($a=$rb_le(index,0))?$a:(lhs=index,rhs=this.$line_begins().$size(),”number“==typeof lhs&&”number“==typeof ”“>rhs?rhs(rhs)))?this.$raise($$($nesting,”IndexError“),”Parser::Source::Buffer: range for line “lineno” requested, valid line numbers are “this.first_line”..“+$rb_minus($rb_plus(this.first_line,this.$line_begins().$size()),1)):index(this.$line_begins().$size())?$$($nesting,”Range“).$new(this,this.$line_begins()[”$“](index())[”$[]“](1),this.source.$size()):$$($nesting,”Range“).$new(this,this.$line_begins()[”$“](index())[”$[]“](1),$rb_minus(this.$line_begins()[”$“]($rb_minus(index(),1))[”$“](1),1))},$Buffer_line_range$16.$$arity=1),Opal.def(self,”$source_range“,$Buffer_source_range$17=function(){var $a;return this.source_range=$truthy($a=this.source_range)?$a:$$($nesting,”Range“).$new(this,0,this.$source().$size())},$Buffer_source_range$17.$$arity=0),Opal.def(self,”$last_line“,$Buffer_last_line$18=function(){return $rb_minus($rb_plus(this.$line_begins().$size(),this.first_line),1)},$Buffer_last_line$18.$$arity=0),self.$private(),Opal.def(self,”$line_begins“,$Buffer_line_begins$19=function(){var $a,index=nil;if($truthy(this.line_begins));else for($a=[[],0],this.line_begins=$a,index=$a;$truthy(index=this.source.$index(”n“.$force_encoding(”ASCII-8BIT“).$freeze(),index));)index=$rb_plus(index,1),this.line_begins.$unshift();return this.line_begins},$Buffer_line_begins$19.$$arity=0),Opal.def(self,”$line_for“,$Buffer_line_for$20=function(position){var $$21;return $send(this.$line_begins(),”bsearch“,[],(($$21=function(line,line_begin){$$21.$$s;return null==line&&(line=nil),null==line_begin&&(line_begin=nil),$rb_le(line_begin,position)}).$$s=this,$$21.$$arity=2,$$21))},$Buffer_line_for$20.$$arity=1)}($nesting,0,$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){function $rb_plus(lhs,rhs){return”number“==typeof lhs&&”number“==typeof rhs?lhs+rhs:lhs(rhs)}function $rb_ge(lhs,rhs){return”number“==typeof lhs&&”number“==typeof =”“>rhs?rhs<=lhs:lhs(rhs)}Opal.top;var $nesting=[],nil=Opal.nil,$$$=Opal.const_get_qualified,$$=Opal.const_get_relative,$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$truthy=Opal.truthy,$hash2=Opal.hash2;return =”,“$!”,“$<=>”,“$contains?”,“$overlaps?”,“$==”,“$*”,“$is_a?”,“$source_buffer”,“$nonzero?”“>Opal.add_stubs(),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $Range_initialize$1,$Range_begin$2,$Range_end$3,$Range_size$4,$Range_line$5,$Range_column$6,$Range_last_line$7,$Range_last_column$8,$Range_column_range$9,$Range_source_line$10,$Range_source$11,$Range_is$ques$12,$Range_to_a$13,$Range_to_s$14,$Range_with$15,$Range_adjust$16,$Range_resize$17,$Range_join$18,$Range_intersect$19,$Range_disjoint$ques$20,$Range_overlaps$ques$21,$Range_contains$ques$22,$Range_contained$ques$23,$Range_crossing$ques$24,$Range_empty$ques$25,$Range_$lt_eq_gt$26,$Range_inspect$27,self=$klass($base,null,”Range“),$nesting=.concat($parent_nesting);self.$$prototype.begin_pos=self.$$prototype.end_pos=self.$$prototype.source_buffer=nil,self.$include($$($nesting,”Comparable“)),self.$attr_reader(”source_buffer“),self.$attr_reader(”begin_pos“,”end_pos“),Opal.def(self,”$initialize“,$Range_initialize$1=function(source_buffer,begin_pos,end_pos){var $a,lhs,rhs;return $truthy((rhs=begin_pos,”number“==typeof(lhs=end_pos)&&”number“==typeof rhs?lhs(rhs)))&&this.$raise($$($nesting,”ArgumentError“),”Parser::Source::Range: end_pos must not be less than begin_pos“),$truthy(source_buffer())&&this.$raise($$($nesting,”ArgumentError“),”Parser::Source::Range: source_buffer must not be nil“),this.source_buffer=source_buffer,$a=,this.begin_pos=$a,this.end_pos=$a,this.$freeze()},$Range_initialize$1.$$arity=3),Opal.def(self,”$begin“,$Range_begin$2=function(){return this.$with($hash2(,{end_pos:this.begin_pos}))},$Range_begin$2.$$arity=0),Opal.def(self,”$end“,$Range_end$3=function(){return this.$with($hash2(,{begin_pos:this.end_pos}))},$Range_end$3.$$arity=0),Opal.def(self,”$size“,$Range_size$4=function(){var lhs,rhs;return lhs=this.end_pos,rhs=this.begin_pos,”number“==typeof lhs&&”number“==typeof rhs?lhs-rhs:lhs(rhs)},$Range_size$4.$$arity=0),Opal.alias(self,”length“,”size“),Opal.def(self,”$line“,$Range_line$5=function(){return this.source_buffer.$line_for_position(this.begin_pos)},$Range_line$5.$$arity=0),self.$alias_method(”first_line“,”line“),Opal.def(self,”$column“,$Range_column$6=function(){return this.source_buffer.$column_for_position(this.begin_pos)},$Range_column$6.$$arity=0),Opal.def(self,”$last_line“,$Range_last_line$7=function(){return this.source_buffer.$line_for_position(this.end_pos)},$Range_last_line$7.$$arity=0),Opal.def(self,”$last_column“,$Range_last_column$8=function(){return this.source_buffer.$column_for_position(this.end_pos)},$Range_last_column$8.$$arity=0),Opal.def(self,”$column_range“,$Range_column_range$9=function(){return $truthy(this.$begin().$line()(this.$end().$line()))&&this.$raise($$($nesting,”RangeError“),this.$inspect()+” spans more than one line“),Opal.Range.$new(this.$begin().$column(),this.$end().$column(),!0)},$Range_column_range$9.$$arity=0),Opal.def(self,”$source_line“,$Range_source_line$10=function(){return this.source_buffer.$source_line(this.$line())},$Range_source_line$10.$$arity=0),Opal.def(self,”$source“,$Range_source$11=function(){return this.source_buffer.$slice(Opal.Range.$new(this.$begin_pos(),this.$end_pos(),!0))},$Range_source$11.$$arity=0),Opal.def(self,”$is?“,$Range_is$ques$12=function($a){return Opal.slice.call(arguments,0,arguments.length)(this.$source())},$Range_is$ques$12.$$arity=-1),Opal.def(self,”$to_a“,$Range_to_a$13=function(){return Opal.Range.$new(this.begin_pos,this.end_pos,!0).$to_a()},$Range_to_a$13.$$arity=0),Opal.def(self,”$to_s“,$Range_to_s$14=function(){var $a,$b,column,line=nil;return $b=this.source_buffer.$decompose_position(this.begin_pos),line=null==($a=Opal.to_ary($b))?nil:$a,column=null==$a?nil:$a,[this.source_buffer.$name(),line,$rb_plus(column,1)].$join(”:“)},$Range_to_s$14.$$arity=0),Opal.def(self,”$with“,$Range_with$15=function($kwargs){var begin_pos,end_pos;if(null==$kwargs)$kwargs=$hash2([],{});else if(!$kwargs.$$is_hash)throw Opal.ArgumentError.$new(”expected kwargs“);return null==(begin_pos=$kwargs.$$smap.begin_pos)&&(begin_pos=this.begin_pos),null==(end_pos=$kwargs.$$smap.end_pos)&&(end_pos=this.end_pos),$$($nesting,”Range“).$new(this.source_buffer,begin_pos,end_pos)},$Range_with$15.$$arity=-1),Opal.def(self,”$adjust“,$Range_adjust$16=function($kwargs){var begin_pos,end_pos;if(null==$kwargs)$kwargs=$hash2([],{});else if(!$kwargs.$$is_hash)throw Opal.ArgumentError.$new(”expected kwargs“);return null==(begin_pos=$kwargs.$$smap.begin_pos)&&(begin_pos=0),null==(end_pos=$kwargs.$$smap.end_pos)&&(end_pos=0),$$($nesting,”Range“).$new(this.source_buffer,$rb_plus(this.begin_pos,begin_pos),$rb_plus(this.end_pos,end_pos))},$Range_adjust$16.$$arity=-1),Opal.def(self,”$resize“,$Range_resize$17=function(new_size){return this.$with($hash2(,{end_pos:$rb_plus(this.begin_pos,new_size)}))},$Range_resize$17.$$arity=1),Opal.def(self,”$join“,$Range_join$18=function(other){return $$($nesting,”Range“).$new(this.source_buffer,.$min(),.$max())},$Range_join$18.$$arity=1),Opal.def(self,”$intersect“,$Range_intersect$19=function(other){return $truthy(this(other))?nil:$$($nesting,”Range“).$new(this.source_buffer,.$max(),.$min())},$Range_intersect$19.$$arity=1),Opal.def(self,”$disjoint?“,$Range_disjoint$ques$20=function(other){var $a;return $truthy($truthy($a=this())?other():$a)?this.begin_pos(other.$begin_pos()):$truthy($a=$rb_ge(this.begin_pos,other.$end_pos()))?$a:$rb_ge(other.$begin_pos(),this.end_pos)},$Range_disjoint$ques$20.$$arity=1),Opal.def(self,”$overlaps?“,$Range_overlaps$ques$21=function(other){return this(other)()},$Range_overlaps$ques$21.$$arity=1),Opal.def(self,”$contains?“,$Range_contains$ques$22=function(other){return $”“>rb_ge($rb_plus(other.$begin_pos()(”“>this.begin_pos),this.end_pos(other.$end_pos())),$truthy(other())?2:1)},$Range_contains$ques$22.$$arity=1),Opal.def(self,”$contained?“,$Range_contained$ques$23=function(other){return other(this)},$Range_contained$ques$23.$$arity=1),Opal.def(self,”$crossing?“,$Range_crossing$ques$24=function(other){var lhs,rhs;return!!$truthy(this(”“>other))&&(lhs=this.begin_pos(”“>other.$begin_pos()),rhs=this.end_pos(other.$end_pos()),”number“==typeof lhs&&”number“==typeof rhs?lhs*rhs:lhs(rhs))(1)},$Range_crossing$ques$24.$$arity=1),Opal.def(self,”$empty?“,$Range_empty$ques$25=function(){return this.begin_pos(this.end_pos)},$Range_empty$ques$25.$$arity=0),Opal.def(self,”$<=>“,$Range_$lt_eq_gt$26=function(other){var $a;return $truthy($truthy($a=other($$$($$$($$$(”::“,”Parser“),”Source“),”Range“)))?this.source_buffer(”“>other.$source_buffer()):$a)?$truthy($a=this.begin_pos(other.$begin_pos())())?$”“>a:this.end_pos(other.$end_pos()):nil},$Range_$lt_eq_gt$26.$$arity=1),Opal.def(self,”$inspect“,$Range_inspect$27=function(){return”#<Parser::Source::Range “+this.source_buffer.$name()+” “this.begin_pos”…“this.end_pos”>“},$Range_inspect$27.$$arity=0)}($nesting,0,$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){Opal.top;var $nesting=[],nil=Opal.nil,$$$=Opal.const_get_qualified,$$=Opal.const_get_relative,$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$truthy=Opal.truthy;return Opal.add_stubs(),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $Comment_associate$1,$Comment_associate_locations$2,$Comment_initialize$3,$Comment_type$4,$Comment_inline$ques$5,$Comment_document$ques$6,$Comment_$eq_eq$7,$Comment_inspect$8,self=$klass($base,null,”Comment“),$nesting=.concat($parent_nesting);self.$$prototype.location=nil,self.$attr_reader(”text“),self.$attr_reader(”location“),self.$alias_method(”loc“,”location“),Opal.defs(self,”$associate“,$Comment_associate$1=function(ast,comments){return $$($nesting,”Associator“).$new(ast,comments).$associate()},$Comment_associate$1.$$arity=2),Opal.defs(self,”$associate_locations“,$Comment_associate_locations$2=function(ast,comments){return $$($nesting,”Associator“).$new(ast,comments).$associate_locations()},$Comment_associate_locations$2.$$arity=2),Opal.def(self,”$initialize“,$Comment_initialize$3=function(range){return this.location=$$$($$$($$($nesting,”Parser“),”Source“),”Map“).$new(range),this.text=range.$source().$freeze(),this.$freeze()},$Comment_initialize$3.$$arity=1),Opal.def(self,”$type“,$Comment_type$4=function(){return $truthy(this.$text()(”#“.$freeze()))?”inline“:$truthy(this.$text()(”=begin“.$freeze()))?”document“:nil},$Comment_type$4.$$arity=0),Opal.def(self,”$inline?“,$Comment_inline$ques$5=function(){return this.$type()(”inline“)},$Comment_inline$ques$5.$$arity=0),Opal.def(self,”$document?“,$Comment_document$ques$6=function(){return this.$type()(”document“)},$Comment_document$ques$6.$$arity=0),Opal.def(self,”$==“,$Comment_$eq_eq$7=function(other){var $a;return $truthy($a=other($$$($$($nesting,”Source“),”Comment“)))?this.location(other.$location()):$a},$Comment_$eq_eq$7.$$arity=1),Opal.def(self,”$inspect“,$Comment_inspect$8=function(){return”#<Parser::Source::Comment “+this.location.$expression().$to_s()+” “+this.$text().$inspect()+”>“},$Comment_inspect$8.$$arity=0)}($nesting,0,$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){function $rb_le(lhs,rhs){return”number“==typeof lhs&&”number“==typeof rhs?lhs<=rhs:lhs(rhs)}Opal.top;var $nesting=[],nil=Opal.nil,$$$=Opal.const_get_qualified,$$=Opal.const_get_relative,$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$send=Opal.send,$truthy=Opal.truthy;return Opal.add_stubs([”$attr_accessor“,”$do_associate“,”$private“,”$new“,”$=“,”$-“,”$advance_comment“,”$advance_through_directives“,”$visit“,”$process_leading_comments“,”$location“,”$<=","$line","$last_line","$is_a?","$each","$children","$loc","$expression","$process_trailing_comments","$==","$type","$current_comment_before?","$associate_and_advance_comment","$current_comment_before_end?","$current_comment_decorates?","$+","$),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $Associator_initialize$1,$Associator_associate$2,$Associator_associate_locations$3,$Associator_do_associate$4,$Associator_visit$6,$Associator_process_leading_comments$8,$Associator_process_trailing_comments$9,$Associator_advance_comment$10,$Associator_current_comment_before$ques$11,$Associator_current_comment_before_end$ques$12,$Associator_current_comment_decorates$ques$13,$Associator_associate_and_advance_comment$14,$Associator_advance_through_directives$15,self=$klass($base,null,“Associator”),$nesting=.concat($parent_nesting);self.$$prototype.skip_directives=self.$$prototype.ast=self.$$prototype.mapping=self.$$prototype.current_comment=self.$$prototype.comment_num=self.$$prototype.comments=self.$$prototype.map_using_locations=nil,self.$attr_accessor(“skip_directives”),Opal.def(self,“$initialize”,$Associator_initialize$1=function(ast,comments){return this.ast=ast,this.comments=comments,this.skip_directives=!0},$Associator_initialize$1.$$arity=2),Opal.def(self,“$associate”,$Associator_associate$2=function(){return this.map_using_locations=!1,this.$do_associate()},$Associator_associate$2.$$arity=0),Opal.def(self,“$associate_locations”,$Associator_associate_locations$3=function(){return this.map_using_locations=!0,this.$do_associate()},$Associator_associate_locations$3.$$arity=0),self.$private(),Opal.def(self,“$do_associate”,$Associator_do_associate$4=function(){var $$5;return this.mapping=$send($$($nesting,“Hash”),“new”,[],(($$5=function(h,k){var $writer,lhs,rhs;$$5.$$s;return null==h&&(h=nil),null==k&&(k=nil),$writer=[k,],$send(h,“[]=”,Opal.to_a($writer)),$writer[(lhs=$writer.length,rhs=1,“number”==typeof lhs&&“number”==typeof rhs?lhs-rhs:lhs(rhs))]}).$$s=this,$$5.$$arity=2,$$5)),this.comment_num=-1,this.$advance_comment(),$truthy(this.skip_directives)&&this.$advance_through_directives(),$truthy(this.ast)&&this.$visit(this.ast),this.mapping},$Associator_do_associate$4.$$arity=0),Opal.def(self,“$visit”,$Associator_visit$6=function(node){var $a,$$7,node_loc=nil;return this.$process_leading_comments(node),$truthy(this.current_comment)?(node_loc=node.$location(),$truthy($truthy($a=$rb_le(this.current_comment.$location().$line(),node_loc.$last_line()))?$a:node_loc($$$($$($nesting,“Map”),“Heredoc”)))?($send(node.$children(),“each”,[],(($$7=function(child){var $b,$c,self=$$7.$$s||this;return null==child&&(child=nil),$truthy($truthy($b=$truthy($c=child($$$($$($nesting,“AST”),“Node”)))?child.$loc():$c)?child.$loc().$expression():$b)?self.$visit(child):nil}).$$s=this,$$7.$$arity=1,$$7)),this.$process_trailing_comments(node)):nil):nil},$Associator_visit$6.$$arity=1),Opal.def(self,“$process_leading_comments”,$Associator_process_leading_comments$8=function(node){if(node.$type()(“begin”))return nil;for(;$truthy(this(node));)this.$associate_and_advance_comment(node)},$Associator_process_leading_comments$8.$$arity=1),Opal.def(self,“$process_trailing_comments”,$Associator_process_trailing_comments$9=function(node){for(;$truthy(this(node));)this.$associate_and_advance_comment(node);for(;$truthy(this(node));)this.$associate_and_advance_comment(node)},$Associator_process_trailing_comments$9.$$arity=1),Opal.def(self,“$advance_comment”,$Associator_advance_comment$10=function(){var lhs,rhs;return this.comment_num=(lhs=this.comment_num,rhs=1,“number”==typeof lhs&&“number”==typeof rhs?lhs+rhs:lhs(rhs)),this.current_comment=this.comments[“$”](this.comment_num)},$Associator_advance_comment$10.$$arity=0),Opal.def(self,“$current_comment_before?”,$Associator_current_comment_before$ques$11=function(node){var comment_loc=nil,node_loc=nil;return!$truthy(this.current_comment())&&(comment_loc=this.current_comment.$location().$expression(),node_loc=node.$location().$expression(),$rb_le(comment_loc.$end_pos(),node_loc.$begin_pos()))},$Associator_current_comment_before$ques$11.$$arity=1),Opal.def(self,“$current_comment_before_end?”,$Associator_current_comment_before_end$ques$12=function(node){var comment_loc=nil,node_loc=nil;return!$truthy(this.current_comment())&&(comment_loc=this.current_comment.$location().$expression(),node_loc=node.$location().$expression(),$rb_le(comment_loc.$end_pos(),node_loc.$end_pos()))},$Associator_current_comment_before_end$ques$12.$$arity=1),Opal.def(self,“$current_comment_decorates?”,$Associator_current_comment_decorates$ques$13=function(node){return!$truthy(this.current_comment())&&this.current_comment.$location().$line()(node.$location().$last_line())},$Associator_current_comment_decorates$ques$13.$$arity=1),Opal.def(self,“$associate_and_advance_comment”,$Associator_associate_and_advance_comment$14=function(node){var key,self=this;return key=$truthy(self.map_using_locations)?node.$location():node,self.mapping[“$”](key)(self.current_comment),self.$advance_comment()},$Associator_associate_and_advance_comment$14.$$arity=1),Opal.const_set($nesting,“MAGIC_COMMENT_RE”,/^#s*(-*-|)s*(frozen_string_literal|warn_indent|warn_past_scope):.*1$/),Opal.def(self,“$advance_through_directives”,$Associator_advance_through_directives$15=function(){var $a;return $truthy($truthy($a=this.current_comment)?this.current_comment.$text()(“#!”.$freeze()):$a)&&this.$advance_comment(),$truthy($truthy($a=this.current_comment)?this.current_comment.$text()($$($nesting,“MAGIC_COMMENT_RE”)):$a)&&this.$advance_comment(),$truthy($truthy($a=this.current_comment)?this.current_comment.$text()($$$($$($nesting,“Buffer”),“ENCODING_RE”)):$a)?this.$advance_comment():nil},$Associator_advance_through_directives$15.$$arity=0)}($$($nesting,“Comment”),0,$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){function $rb_minus(lhs,rhs){return“number”==typeof lhs&&“number”==typeof rhs?lhs-rhs:lhs(rhs)}function $rb_plus(lhs,rhs){return“number”==typeof lhs&&“number”==typeof rhs?lhs+rhs:lhs(rhs)}function $rb_le(lhs,rhs){return“number”==typeof lhs&&“number”==typeof rhs?lhs<=rhs:lhs(rhs)}Opal.top;var $nesting=[],nil=Opal.nil,$$$=Opal.const_get_qualified,$$=Opal.const_get_relative,$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$send=Opal.send,$gvars=Opal.gvars,$truthy=Opal.truthy,$hash2=Opal.hash2;return Opal.add_stubs([“$attr_reader”,“$warn_of_deprecation”,“$class”,“$new”,“$lambda”,“$puts”,“$render”,“$consumer=”,“$-”,“$append”,“$freeze”,“$begin”,“$end”,“$+”,“$in_transaction?”,“$raise”,“$dup”,“$source”,“$each”,“$sort”,“$begin_pos”,“$range”,“$length”,“$replacement”,“$=”,“$private”,“$empty?”,“$!”,“$allow_multiple_insertions?”,“$clobbered_insertion?”,“$raise_clobber_error”,“$record_insertion”,“$adjacent_updates?”,“$find”,“$overlaps?”,“$replace_compatible_with_insertion?”,“$merge_actions!”,“$<<","$active_queue","$adjacent_insertions?","$merge_actions","$delete","$can_merge?","$record_replace","$|","$active_insertions","$active_insertions=","$active_clobber","$clobbered_position_mask","$active_clobber=","$size","$!=","$&","$<=","$end_pos","$adjacent_insertion_mask","$select","$adjacent?","$adjacent_position_mask","$>=”,“$==”,“$),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $Rewriter_initialize$1,$Rewriter_remove$3,$Rewriter_insert_before$4,$Rewriter_wrap$5,$Rewriter_insert_before_multi$6,$Rewriter_insert_after$7,$Rewriter_insert_after_multi$8,$Rewriter_replace$9,$Rewriter_process$10,$Rewriter_transaction$12,$Rewriter_append$13,$Rewriter_record_insertion$16,$Rewriter_record_replace$17,$Rewriter_clobbered_position_mask$18,$Rewriter_adjacent_position_mask$19,$Rewriter_adjacent_insertion_mask$20,$Rewriter_clobbered_insertion$ques$21,$Rewriter_adjacent_insertions$ques$23,$Rewriter_adjacent_updates$ques$25,$Rewriter_replace_compatible_with_insertion$ques$27,$Rewriter_can_merge$ques$28,$Rewriter_merge_actions$30,$Rewriter_merge_actions$excl$33,$Rewriter_merge_replacements$34,$Rewriter_replace_actions$36,$Rewriter_raise_clobber_error$38,$Rewriter_in_transaction$ques$39,$Rewriter_active_queue$40,$Rewriter_active_clobber$41,$Rewriter_active_insertions$42,$Rewriter_active_clobber$eq$43,$Rewriter_active_insertions$eq$44,$Rewriter_adjacent$ques$45,self=$klass($base,null,”Rewriter“),$nesting=.concat($parent_nesting);self.$$prototype.diagnostics=self.$$prototype.insert_before_multi_order=self.$$prototype.insert_after_multi_order=self.$$prototype.source_buffer=self.$$prototype.queue=self.$$prototype.clobber=self.$$prototype.insertions=self.$$prototype.pending_queue=self.$$prototype.pending_clobber=self.$$prototype.pending_insertions=nil,self.$attr_reader(”source_buffer“),self.$attr_reader(”diagnostics“),Opal.def(self,”$initialize“,$Rewriter_initialize$1=function(source_buffer){var $$2,$writer;return this.$class().$warn_of_deprecation(),this.diagnostics=$$$($$($nesting,”Diagnostic“),”Engine“).$new(),$writer=[$send(this,”lambda“,,($$2=function(diag){$$2.$$s;return null==$gvars.stderr&&($gvars.stderr=nil),null==diag&&(diag=nil),$gvars.stderr.$puts(diag.$render())},$$2.$$s=this,$$2.$$arity=1,$$2))],$send(this.diagnostics,”consumer=“,Opal.to_a($writer)),$rb_minus($writer.length,1),this.source_buffer=source_buffer,this.queue=[],this.clobber=0,this.insertions=0,this.insert_before_multi_order=0,this.insert_after_multi_order=0,this.pending_queue=nil,this.pending_clobber=nil,this.pending_insertions=nil},$Rewriter_initialize$1.$$arity=1),Opal.def(self,”$remove“,$Rewriter_remove$3=function(range){return this.$append($$$($$($nesting,”Rewriter“),”Action“).$new(range,”“.$freeze()))},$Rewriter_remove$3.$$arity=1),Opal.def(self,”$insert_before“,$Rewriter_insert_before$4=function(range,content){return this.$append($$$($$($nesting,”Rewriter“),”Action“).$new(range.$begin(),content))},$Rewriter_insert_before$4.$$arity=2),Opal.def(self,”$wrap“,$Rewriter_wrap$5=function(range,before,after){return this.$append($$$($$($nesting,”Rewriter“),”Action“).$new(range.$begin(),before)),this.$append($$$($$($nesting,”Rewriter“),”Action“).$new(range.$end(),after))},$Rewriter_wrap$5.$$arity=3),Opal.def(self,”$insert_before_multi“,$Rewriter_insert_before_multi$6=function(range,content){return this.insert_before_multi_order=$rb_minus(this.insert_before_multi_order,1),this.$append($$$($$($nesting,”Rewriter“),”Action“).$new(range.$begin(),content,!0,this.insert_before_multi_order))},$Rewriter_insert_before_multi$6.$$arity=2),Opal.def(self,”$insert_after“,$Rewriter_insert_after$7=function(range,content){return this.$append($$$($$($nesting,”Rewriter“),”Action“).$new(range.$end(),content))},$Rewriter_insert_after$7.$$arity=2),Opal.def(self,”$insert_after_multi“,$Rewriter_insert_after_multi$8=function(range,content){return this.insert_after_multi_order=$rb_plus(this.insert_after_multi_order,1),this.$append($$$($$($nesting,”Rewriter“),”Action“).$new(range.$end(),content,!0,this.insert_after_multi_order))},$Rewriter_insert_after_multi$8.$$arity=2),Opal.def(self,”$replace“,$Rewriter_replace$9=function(range,content){return this.$append($$$($$($nesting,”Rewriter“),”Action“).$new(range,content))},$Rewriter_replace$9.$$arity=2),Opal.def(self,”$process“,$Rewriter_process$10=function(){var $$11,source,adjustment=nil;return $truthy(this())&&this.$raise(”Do not call “+this.$class()+”#process inside a transaction“),adjustment=0,source=this.source_buffer.$source().$dup(),$send(this.queue.$sort(),”each“,[],(($$11=function(action){var begin_pos,end_pos,$writer;$$11.$$s;return null==action&&(action=nil),end_pos=$rb_plus(begin_pos=$rb_plus(action.$range().$begin_pos(),adjustment),action.$range().$length()),$writer=,$send(source,”[]=“,Opal.to_a($writer)),$rb_minus($writer.length,1),adjustment=$rb_plus(adjustment,$rb_minus(action.$replacement().$length(),action.$range().$length()))}).$$s=this,$$11.$$arity=1,$$11)),source},$Rewriter_process$10.$$arity=0),Opal.def(self,”$transaction“,$Rewriter_transaction$12=function(){var $iter=$Rewriter_transaction$12.$$p,$yield=$iter||nil,self=this;return $iter&&($Rewriter_transaction$12.$$p=null),function(){try{return $yield!==nil||self.$raise(self.$class()+”#transaction requires block“),$truthy(self())&&self.$raise(”Nested transaction is not supported“),self.pending_queue=self.queue.$dup(),self.pending_clobber=self.clobber,self.pending_insertions=self.insertions,Opal.yieldX($yield,[]),self.queue=self.pending_queue,self.clobber=self.pending_clobber,self.insertions=self.pending_insertions,self}finally{self.pending_queue=nil,self.pending_clobber=nil,self.pending_insertions=nil}}()},$Rewriter_transaction$12.$$arity=0),self.$private(),Opal.def(self,”$append“,$Rewriter_append$13=function(action){var $a,$$14,$$15,range=nil,conflicting=nil,adjacent=nil,insertions=nil;if(range=action.$range(),$truthy(range())){if($truthy(action.$replacement()()))return this;$truthy($truthy($a=action()[”$!“]())?conflicting=this(range):$a)&&this.$raise_clobber_error(action,),this.$record_insertion(range),$truthy(adjacent=this(range))?(conflicting=$send(adjacent,”find“,[],(($$14=function(a){var $b,self=$$14.$$s||this;return null==a&&(a=nil),$truthy($b=a.$range()(range))?self(a,action)():$b}).$$s=this,$$14.$$arity=1,$$14)),$truthy(conflicting)&&this.$raise_clobber_error(action,),this(action,adjacent)):this.$active_queue()(action)}else $truthy(insertions=this(range))&&$send(insertions,”each“,[],(($$15=function(insertion){var $b,self=$$15.$$s||this;return null==insertion&&(insertion=nil),$truthy($truthy($b=range(insertion.$range()))?self(action,insertion)():$b)?self.$raise_clobber_error(action,):(action=self.$merge_actions(action,),self.$active_queue().$delete(insertion))}).$$s=this,$$15.$$arity=1,$$15)),$truthy(adjacent=this(range))?$truthy(this(action,adjacent))?(this.$record_replace(range),this(action,adjacent)):this.$raise_clobber_error(action,adjacent):(this.$record_replace(range),this.$active_queue()(action));return this},$Rewriter_append$13.$$arity=1),Opal.def(self,”$record_insertion“,$Rewriter_record_insertion$16=function(range){var $writer;return $writer=[this.$active_insertions()(1(range.$begin_pos()))],$send(this,”active_insertions=“,Opal.to_a($writer)),$writer},$Rewriter_record_insertion$16.$$arity=1),Opal.def(self,”$record_replace“,$Rewriter_record_replace$17=function(range){var $writer;return $writer=[this.$active_clobber()(this.$clobbered_position_mask(range))],$send(this,”active_clobber=“,Opal.to_a($writer)),$writer},$Rewriter_record_replace$17.$$arity=1),Opal.def(self,”$clobbered_position_mask“,$Rewriter_clobbered_position_mask$18=function(range){return $rb_minus(1(range.$size()),1)(range.$begin_pos())},$Rewriter_clobbered_position_mask$18.$$arity=1),Opal.def(self,”$adjacent_position_mask“,$Rewriter_adjacent_position_mask$19=function(range){return $rb_minus(1($rb_plus(range.$size(),2)),1)($rb_minus(range.$begin_pos(),1))},$Rewriter_adjacent_position_mask$19.$$arity=1),Opal.def(self,”$adjacent_insertion_mask“,$Rewriter_adjacent_insertion_mask$20=function(range){return $rb_minus(1($rb_plus(range.$size(),1)),1)(range.$begin_pos())},$Rewriter_adjacent_insertion_mask$20.$$arity=1),Opal.def(self,”$clobbered_insertion?“,$Rewriter_clobbered_insertion$ques$21=function(insertion){var $$22,insertion_pos;return insertion_pos=insertion.$begin_pos(),$truthy(this.$active_insertions()(1(insertion_pos))(0))?$send(this.$active_queue(),”find“,[],(($$22=function(a){var $a;$$22.$$s;return null==a&&(a=nil),$truthy($a=$rb_le(a.$range().$begin_pos(),insertion_pos))?$rb_le(insertion_pos,a.$range().$end_pos()):$a}).$$s=this,$$22.$$arity=1,$$22)):nil},$Rewriter_clobbered_insertion$ques$21.$$arity=1),Opal.def(self,”$adjacent_insertions?“,$Rewriter_adjacent_insertions$ques$23=function(range){var $$24,result=nil;return $truthy(this.$active_insertions()(this.$adjacent_insertion_mask(range))(0))?(result=$send(this.$active_queue(),”select“,[],(($$24=function(a){var $a,self=$$24.$$s||this;return null==a&&(a=nil),$truthy($a=a.$range()())?self(range,a.$range()):$a}).$$s=this,$$24.$$arity=1,$$24)),$truthy(result())?nil:result):nil},$Rewriter_adjacent_insertions$ques$23.$$arity=1),Opal.def(self,”$adjacent_updates?“,$Rewriter_adjacent_updates$ques$25=function(range){var $$26;return $truthy(this.$active_clobber()(this.$adjacent_position_mask(range))(0))?$send(this.$active_queue(),”select“,[],(($$26=function(a){var self=$$26.$$s||this;return null==a&&(a=nil),self(range,a.$range())}).$$s=this,$$26.$$arity=1,$$26)):nil},$Rewriter_adjacent_updates$ques$25.$$arity=1),Opal.def(self,”$replace_compatible_with_insertion?“,$Rewriter_replace_compatible_with_insertion$ques$27=function(replace,insertion){var $a,$b,lhs,rhs,offset=nil;return $truthy($a=$truthy((lhs=$rb_minus(replace.$replacement().$length(),replace.$range().$size()),rhs=insertion.$range().$size(),$b=”number“==typeof lhs&&”number“==typeof =”“>rhs?rhs<=lhs:lhs(rhs)))?offset=$rb_minus(insertion.$range().$begin_pos(),replace.$range().$begin_pos()):$b)?replace.$replacement()[”$“](offset,insertion.$replacement().$length())(insertion.$replacement()):$a},$Rewriter_replace_compatible_with_insertion$ques$27.$$arity=2),Opal.def(self,”$can_merge?“,$Rewriter_can_merge$ques$28=function(action,existing){var $$29,range=nil;return range=action.$range(),$send(existing,”all?“,[],(($$29=function(other){$$29.$$s;var $a,repl1_offset,repl2_offset,repl1_length,repl2_length,replacement2,overlap=nil,replacement1=nil;return null==other&&(other=nil),overlap=range.$intersect(other.$range()),!!$truthy(overlap())||(repl1_offset=$rb_minus(overlap.$begin_pos(),range.$begin_pos()),repl2_offset=$rb_minus(overlap.$begin_pos(),other.$range().$begin_pos()),repl1_length=.$max(),repl2_length=.$max(),replacement1=$truthy($a=action.$replacement()[”$“](repl1_offset,repl1_length))?$a:”“.$freeze(),replacement2=$truthy($a=other.$replacement()[”$“](repl2_offset,repl2_length))?$a:”“.$freeze(),replacement1(replacement2))}).$$s=this,$$29.$$arity=1,$$29))},$Rewriter_can_merge$ques$28.$$arity=2),Opal.def(self,”$merge_actions“,$Rewriter_merge_actions$30=function(action,existing){var $$31,$$32,range,actions=nil;return range=(actions=$send(existing.$push(action),”sort_by“,[],(($$31=function(a){$$31.$$s;return null==a&&(a=nil),}).$$s=this,$$31.$$arity=1,$$31))).$first().$range().$join($send(actions,”max_by“,[],($$32=function(a){$$32.$$s;return null==a&&(a=nil),a.$range().$end_pos()},$$32.$$s=this,$$32.$$arity=1,$$32)).$range()),$$$($$($nesting,”Rewriter“),”Action“).$new(range,this.$merge_replacements(actions))},$Rewriter_merge_actions$30.$$arity=2),Opal.def(self,”$merge_actions!“,$Rewriter_merge_actions$excl$33=function(action,existing){var new_action;return new_action=this.$merge_actions(action,existing),this.$active_queue().$delete(action),this.$replace_actions(existing,new_action)},$Rewriter_merge_actions$excl$33.$$arity=2),Opal.def(self,”$merge_replacements“,$Rewriter_merge_replacements$34=function(actions){var $$35,result=nil,prev_act=nil;return result=”“.$dup(),prev_act=nil,$send(actions,”each“,[],(($$35=function(act){$$35.$$s;var $a,lhs,rhs,offset=nil;return null==act&&(act=nil),$truthy($truthy($a=prev_act())?$a:act.$range()(prev_act.$range()))?result(act.$replacement()):(offset=$rb_minus(.$max(),act.$range().$begin_pos()),$truthy((lhs=offset,rhs=act.$replacement().$size(),”number“==typeof lhs&&”number“==typeof rhs?lhs(rhs)))&&result(act.$replacement()[”$“](Opal.Range.$new(offset,-1,!1)))),prev_act=act}).$$s=this,$$35.$$arity=1,$$35)),result},$Rewriter_merge_replacements$34.$$arity=1),Opal.def(self,”$replace_actions“,$Rewriter_replace_actions$36=function(old,updated){var $$37;return $send(old,”each“,[],(($$37=function(act){var self=$$37.$$s||this;return null==act&&(act=nil),self.$active_queue().$delete(act)}).$$s=this,$$37.$$arity=1,$$37)),this.$active_queue()(updated)},$Rewriter_replace_actions$36.$$arity=2),Opal.def(self,”$raise_clobber_error“,$Rewriter_raise_clobber_error$38=function(action,existing){var diagnostic=nil;return diagnostic=$$($nesting,”Diagnostic“).$new(”error“,”invalid_action“,$hash2(,{action:action}),action.$range()),this.diagnostics.$process(diagnostic),diagnostic=$$($nesting,”Diagnostic“).$new(”note“,”clobbered“,$hash2(,{action:existing[”$“](0)}),existing[”$“](0).$range()),this.diagnostics.$process(diagnostic),this.$raise($$($nesting,”ClobberingError“),”Parser::Source::Rewriter detected clobbering“)},$Rewriter_raise_clobber_error$38.$$arity=2),Opal.def(self,”$in_transaction?“,$Rewriter_in_transaction$ques$39=function(){return this.pending_queue()[”$!“]()},$Rewriter_in_transaction$ques$39.$$arity=0),Opal.def(self,”$active_queue“,$Rewriter_active_queue$40=function(){var $a;return $truthy($a=this.pending_queue)?$a:this.queue},$Rewriter_active_queue$40.$$arity=0),Opal.def(self,”$active_clobber“,$Rewriter_active_clobber$41=function(){var $a;return $truthy($a=this.pending_clobber)?$a:this.clobber},$Rewriter_active_clobber$41.$$arity=0),Opal.def(self,”$active_insertions“,$Rewriter_active_insertions$42=function(){var $a;return $truthy($a=this.pending_insertions)?$a:this.insertions},$Rewriter_active_insertions$42.$$arity=0),Opal.def(self,”$active_clobber=“,$Rewriter_active_clobber$eq$43=function(value){return $truthy(this.pending_clobber)?this.pending_clobber=value:this.clobber=value},$Rewriter_active_clobber$eq$43.$$arity=1),Opal.def(self,”$active_insertions=“,$Rewriter_active_insertions$eq$44=function(value){return $truthy(this.pending_insertions)?this.pending_insertions=value:this.insertions=value},$Rewriter_active_insertions$eq$44.$$arity=1),Opal.def(self,”$adjacent?“,$Rewriter_adjacent$ques$45=function(range1,range2){var $a;return $truthy($a=$rb_le(range1.$begin_pos(),range2.$end_pos()))?$rb_le(range2.$begin_pos(),range1.$end_pos()):$a},$Rewriter_adjacent$ques$45.$$arity=2),Opal.const_set($nesting,”DEPRECATION_WARNING“,[”Parser::Source::Rewriter is deprecated.“,”Please update your code to use Parser::Source::TreeRewriter instead“].$join(”n“).$freeze()),self.$extend($$($nesting,”Deprecation“))}($nesting,0,$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){Opal.top;var $nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$truthy=Opal.truthy;return ”,“$begin_pos”,“$range”,“$zero?”,“$order”,“$==”,“$length”,“$empty?”,“$inspect”“>Opal.add_stubs(),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $Action_initialize$1,$Action_$lt_eq_gt$2,$Action_to_s$3,self=$klass($base,null,”Action“),$nesting=.concat($parent_nesting);self.$$prototype.range=self.$$prototype.replacement=nil,self.$include($$($nesting,”Comparable“)),self.$attr_reader(”range“,”replacement“,”allow_multiple_insertions“,”order“),self.$alias_method(”allow_multiple_insertions?“,”allow_multiple_insertions“),Opal.def(self,”$initialize“,$Action_initialize$1=function(range,replacement,allow_multiple_insertions,order){return null==replacement&&(replacement=”“),null==allow_multiple_insertions&&(allow_multiple_insertions=!1),null==order&&(order=0),this.range=range,this.replacement=replacement,this.allow_multiple_insertions=allow_multiple_insertions,this.order=order,this.$freeze()},$Action_initialize$1.$$arity=-2),Opal.def(self,”$<=>“,$Action_$lt_eq_gt$2=function(other){var result=nil;return ”“>result=this.$range().$begin_pos()(other.$range().$begin_pos()),$truthy(result())?”“>this.$order()(other.$order()):result},$Action_$lt_eq_gt$2.$$arity=1),Opal.def(self,”$to_s“,$Action_to_s$3=function(){return $truthy(this.range.$length()(0)?this.replacement():this.range.$length()(0))?”do nothing“:this.range.$length()(0)?”insert “+this.replacement.$inspect():$truthy(this.replacement())?”remove “+this.range.$length()+” character(s)“:”replace “+this.range.$length()+” character(s) with “+this.replacement.$inspect()},$Action_to_s$3.$$arity=0)}($$($nesting,”Rewriter“),0,$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){function $rb_minus(lhs,rhs){return”number“==typeof lhs&&”number“==typeof rhs?lhs-rhs:lhs(rhs)}function $rb_plus(lhs,rhs){return”number“==typeof lhs&&”number“==typeof rhs?lhs+rhs:lhs(rhs)}Opal.top;var $nesting=[],nil=Opal.nil,$$$=Opal.const_get_qualified,$$=Opal.const_get_relative,$slice=(Opal.breaker,Opal.slice),$module=Opal.module,$klass=Opal.klass,$hash2=Opal.hash2,$lambda=Opal.lambda,$gvars=Opal.gvars,$send=Opal.send,$truthy=Opal.truthy;return Opal.add_stubs([”$attr_reader“,”$new“,”$puts“,”$render“,”$consumer=“,”$-“,”$freeze“,”$check_policy_validity“,”$method“,”$adjust“,”$source_range“,”$combine“,”$to_s“,”$replace“,”$wrap“,”$dup“,”$source“,”$each“,”$ordered_replacements“,”$+“,”$begin_pos“,”$length“,”$=“,”$raise“,”$class“,”$warn_of_deprecation“,”$insert_before“,”$insert_after“,”$join“,”$extend“,”$private“,”$values“,”$empty?“,”$check_range_validity“,”$<","$>“,”$end_pos“,”$size“,”$==“,”$),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $TreeRewriter_initialize$1,$TreeRewriter_replace$3,$TreeRewriter_wrap$4,$TreeRewriter_remove$5,$TreeRewriter_insert_before$6,$TreeRewriter_insert_after$7,$TreeRewriter_process$8,$TreeRewriter_transaction$10,$TreeRewriter_in_transaction$ques$11,$TreeRewriter_insert_before_multi$12,$TreeRewriter_insert_after_multi$13,$TreeRewriter_check_policy_validity$14,$TreeRewriter_combine$15,$TreeRewriter_check_range_validity$16,$TreeRewriter_enforce_policy$17,$TreeRewriter_trigger_policy$18,self=$klass($base,null,“TreeRewriter”),$nesting=.concat($parent_nesting);self.$$prototype.diagnostics=self.$$prototype.source_buffer=self.$$prototype.enforcer=self.$$prototype.action_root=self.$$prototype.in_transaction=self.$$prototype.policy=nil,self.$attr_reader(“source_buffer”),self.$attr_reader(“diagnostics”),Opal.def(self,“$initialize”,$TreeRewriter_initialize$1=function(source_buffer,$kwargs){var crossing_deletions,different_replacements,swallowed_insertions,$$2,$writer,all_encompassing_range;if(null==$kwargs)$kwargs=$hash2([],{});else if(!$kwargs.$$is_hash)throw Opal.ArgumentError.$new(“expected kwargs”);return null==(crossing_deletions=$kwargs.$$smap.crossing_deletions)&&(crossing_deletions=“accept”),null==(different_replacements=$kwargs.$$smap.different_replacements)&&(different_replacements=“accept”),null==(swallowed_insertions=$kwargs.$$smap.swallowed_insertions)&&(swallowed_insertions=“accept”),this.diagnostics=$$$($$($nesting,“Diagnostic”),“Engine”).$new(),$writer=[$lambda(($$2=function(diag){$$2.$$s;return null==$gvars.stderr&&($gvars.stderr=nil),null==diag&&(diag=nil),$gvars.stderr.$puts(diag.$render())},$$2.$$s=this,$$2.$$arity=1,$$2))],$send(this.diagnostics,“consumer=”,Opal.to_a($writer)),$rb_minus($writer.length,1),this.source_buffer=source_buffer,this.in_transaction=!1,this.policy=$hash2(,{crossing_deletions:crossing_deletions,different_replacements:different_replacements,swallowed_insertions:swallowed_insertions}).$freeze(),this.$check_policy_validity(),this.enforcer=this.$method(“enforce_policy”),all_encompassing_range=this.source_buffer.$source_range().$adjust($hash2(,{begin_pos:-1,end_pos:1})),this.action_root=$$$($$($nesting,“TreeRewriter”),“Action”).$new(all_encompassing_range,this.enforcer)},$TreeRewriter_initialize$1.$$arity=-2),Opal.def(self,“$replace”,$TreeRewriter_replace$3=function(range,content){return this.$combine(range,$hash2(,{replacement:content}))},$TreeRewriter_replace$3.$$arity=2),Opal.def(self,“$wrap”,$TreeRewriter_wrap$4=function(range,insert_before,insert_after){return this.$combine(range,$hash2(,{insert_before:insert_before.$to_s(),insert_after:insert_after.$to_s()}))},$TreeRewriter_wrap$4.$$arity=3),Opal.def(self,“$remove”,$TreeRewriter_remove$5=function(range){return this.$replace(range,“”.$freeze())},$TreeRewriter_remove$5.$$arity=1),Opal.def(self,“$insert_before”,$TreeRewriter_insert_before$6=function(range,content){return this.$wrap(range,content,nil)},$TreeRewriter_insert_before$6.$$arity=2),Opal.def(self,“$insert_after”,$TreeRewriter_insert_after$7=function(range,content){return this.$wrap(range,nil,content)},$TreeRewriter_insert_after$7.$$arity=2),Opal.def(self,“$process”,$TreeRewriter_process$8=function(){var $$9,source,adjustment=nil;return source=this.source_buffer.$source().$dup(),adjustment=0,$send(this.action_root.$ordered_replacements(),“each”,[],(($$9=function(range,replacement){var begin_pos,end_pos,$writer;$$9.$$s;return null==range&&(range=nil),null==replacement&&(replacement=nil),end_pos=$rb_plus(begin_pos=$rb_plus(range.$begin_pos(),adjustment),range.$length()),$writer=,$send(source,“[]=”,Opal.to_a($writer)),$rb_minus($writer.length,1),adjustment=$rb_plus(adjustment,$rb_minus(replacement.$length(),range.$length()))}).$$s=this,$$9.$$arity=2,$$9)),source},$TreeRewriter_process$8.$$arity=0),Opal.def(self,“$transaction”,$TreeRewriter_transaction$10=function(){var $iter=$TreeRewriter_transaction$10.$$p,$yield=$iter||nil,self=this,previous=nil,restore_root=nil;return $iter&&($TreeRewriter_transaction$10.$$p=null),function(){try{return $yield!==nil||self.$raise(self.$class()+“#transaction requires block”),previous=self.in_transaction,self.in_transaction=!0,restore_root=self.action_root,Opal.yieldX($yield,[]),restore_root=nil,self}finally{$truthy(restore_root)&&(self.action_root=restore_root),self.in_transaction=previous}}()},$TreeRewriter_transaction$10.$$arity=0),Opal.def(self,“$in_transaction?”,$TreeRewriter_in_transaction$ques$11=function(){return this.in_transaction},$TreeRewriter_in_transaction$ques$11.$$arity=0),Opal.def(self,“$insert_before_multi”,$TreeRewriter_insert_before_multi$12=function(range,text){return this.$class().$warn_of_deprecation(),this.$insert_before(range,text)},$TreeRewriter_insert_before_multi$12.$$arity=2),Opal.def(self,“$insert_after_multi”,$TreeRewriter_insert_after_multi$13=function(range,text){return this.$class().$warn_of_deprecation(),this.$insert_after(range,text)},$TreeRewriter_insert_after_multi$13.$$arity=2),Opal.const_set($nesting,“DEPRECATION_WARNING”,[“TreeRewriter#insert_before_multi and insert_before_multi exist only for legacy compatibility.”,“Please update your code to use `wrap`, `insert_before` or `insert_after` instead.”].$join(“n”).$freeze()),self.$extend($$($nesting,“Deprecation”)),self.$private(),Opal.const_set($nesting,“ACTIONS”,.$freeze()),Opal.def(self,“$check_policy_validity”,$TreeRewriter_check_policy_validity$14=function(){var invalid=nil;return invalid=$rb_minus(this.policy.$values(),$$($nesting,“ACTIONS”)),$truthy(invalid())?nil:this.$raise($$($nesting,“ArgumentError”),“Invalid policy: ”+invalid.$join(“, ”))},$TreeRewriter_check_policy_validity$14.$$arity=0),Opal.def(self,“$combine”,$TreeRewriter_combine$15=function(range,attributes){var action;return range=this.$check_range_validity(range),action=$$$($$($nesting,“TreeRewriter”),“Action”).$new(range,this.enforcer,attributes),this.action_root=this.action_root.$combine(action),this},$TreeRewriter_combine$15.$$arity=2),Opal.def(self,“$check_range_validity”,$TreeRewriter_check_range_validity$16=function(range){var $a,lhs,rhs;return $truthy($truthy((lhs=range.$begin_pos(),rhs=0,$a=“number”==typeof lhs&&“number”==typeof rhs?lhs(rhs)))?$a:function(lhs,rhs){return“number”==typeof lhs&&“number”==typeof “”>rhs?rhs(rhs)}(range.$end_pos(),this.source_buffer.$source().$size()))&&this.$raise($$($nesting,“IndexError”),“The range ”range“ is outside the bounds of the source”),range},$TreeRewriter_check_range_validity$16.$$arity=1),Opal.def(self,“$enforce_policy”,$TreeRewriter_enforce_policy$17=function(event){var values,$iter=$TreeRewriter_enforce_policy$17.$$p,$yield=$iter||nil;return $iter&&($TreeRewriter_enforce_policy$17.$$p=null),this.policy[“$”](event)(“accept”)?nil:$truthy(values=Opal.yieldX($yield,[]))?this.$trigger_policy(event,values):nil},$TreeRewriter_enforce_policy$17.$$arity=1),Opal.const_set($nesting,“POLICY_TO_LEVEL”,$hash2(,{warn:“warning”,raise:“error”}).$freeze()),Opal.def(self,“$trigger_policy”,$TreeRewriter_trigger_policy$18=function(event,$kwargs){var range,conflict,arguments$,$a,$b,action=nil,diag=nil,highlights=nil;if(null==$kwargs)$kwargs=$hash2([],{});else if(!$kwargs.$$is_hash)throw Opal.ArgumentError.$new(“expected kwargs”);return null==(range=$kwargs.$$smap.range)&&(range=this.$raise()),null==(conflict=$kwargs.$$smap.conflict)&&(conflict=nil),arguments$=Opal.kwrestargs($kwargs,{range:!0,conflict:!0}),action=$truthy($a=this.policy[“$”](event))?$a:“raise”,diag=$$$($$($nesting,“Parser”),“Diagnostic”).$new($$($nesting,“POLICY_TO_LEVEL”)[“$”](action),event,arguments$,range),this.diagnostics.$process(diag),$truthy(conflict)&&($b=conflict,range=null==($a=Opal.to_ary($b))?nil:$a,highlights=$slice.call($a,1),diag=$$$($$($nesting,“Parser”),“Diagnostic”).$new($$($nesting,“POLICY_TO_LEVEL”)[“$”](action),event+“_conflict”,arguments$,range,highlights),this.diagnostics.$process(diag)),action(“raise”)?this.$raise($$$($$($nesting,“Parser”),“ClobberingError”),“Parser::Source::TreeRewriter detected clobbering”):nil},$TreeRewriter_trigger_policy$18.$$arity=-2)}($nesting,0,$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){Opal.top;var $nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$hash2=Opal.hash2,$truthy=Opal.truthy,$send=Opal.send;return Opal.add_stubs([“$attr_reader”,“$freeze”,“$insertion?”,“$replacement”,“$do_combine”,“$empty?”,“$<<","$begin","$concat","$flat_map","$sort_by","$to_proc","$end","$!","$insert_before","$insert_after","$protected","$swallow","$new","$class","$==","$range","$merge","$place_in_hierachy","$group_by","$relationship_with","$”,“$fuse_deletions”,“$with”,“$inject”,“$map”,“$contains?”,“$contained?”,“$disjoint?”,“$call”,“$call_enforcer_for_merge”,“$!=”,“$select”]),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $Action_initialize$1,$Action_combine$2,$Action_ordered_replacements$3,$Action_insertion$ques$4,$Action_with$5,$Action_do_combine$6,$Action_place_in_hierachy$7,$Action_fuse_deletions$9,$Action_relationship_with$10,$Action_merge$13,$Action_call_enforcer_for_merge$14,$Action_swallow$16,self=$klass($base,null,“Action”);.concat($parent_nesting);self.$$prototype.insert_before=self.$$prototype.range=self.$$prototype.replacement=self.$$prototype.children=self.$$prototype.insert_after=self.$$prototype.enforcer=nil,self.$attr_reader(“range”,“replacement”,“insert_before”,“insert_after”),Opal.def(self,“$initialize”,$Action_initialize$1=function(range,enforcer,$kwargs){var insert_before,replacement,insert_after,children,$a;if(null==$kwargs)$kwargs=$hash2([],{});else if(!$kwargs.$$is_hash)throw Opal.ArgumentError.$new(“expected kwargs”);return null==(insert_before=$kwargs.$$smap.insert_before)&&(insert_before=“”),null==(replacement=$kwargs.$$smap.replacement)&&(replacement=nil),null==(insert_after=$kwargs.$$smap.insert_after)&&(insert_after=“”),null==(children=$kwargs.$$smap.children)&&(children=[]),$a=,this.range=$a,this.enforcer=$a,this.children=$a,this.insert_before=$a,this.replacement=$a,this.insert_after=$a,this.$freeze()},$Action_initialize$1.$$arity=-3),Opal.def(self,“$combine”,$Action_combine$2=function(action){var $a;return $truthy($truthy($a=action())?$a:action.$replacement())?this.$do_combine(action):this},$Action_combine$2.$$arity=1),Opal.def(self,“$ordered_replacements”,$Action_ordered_replacements$3=function(){var reps=nil;return reps=[],$truthy(this.insert_before())||reps([this.range.$begin(),this.insert_before]),$truthy(this.replacement)&&reps([this.range,this.replacement]),reps.$concat($send($send(this.children,“sort_by”,[],“range”.$to_proc()),“flat_map”,,“ordered_replacements”.$to_proc())),$truthy(this.insert_after())||reps([this.range.$end(),this.insert_after]),reps},$Action_ordered_replacements$3.$$arity=0),Opal.def(self,“$insertion?”,$Action_insertion$ques$4=function(){var $a,$b;return $truthy($a=$truthy($b=this.$insert_before()()[“$!”]())?$b:this.$insert_after()()[“$!”]())?$a:$truthy($b=this.$replacement())?this.$replacement()()[“$!”]():$b},$Action_insertion$ques$4.$$arity=0),self.$protected(),Opal.def(self,“$with”,$Action_with$5=function($kwargs){var range,children,insert_before,replacement,insert_after;if(null==$kwargs)$kwargs=$hash2([],{});else if(!$kwargs.$$is_hash)throw Opal.ArgumentError.$new(“expected kwargs”);return null==(range=$kwargs.$$smap.range)&&(range=this.range),null==(children=$kwargs.$$smap.children)&&(children=this.children),null==(insert_before=$kwargs.$$smap.insert_before)&&(insert_before=this.insert_before),null==(replacement=$kwargs.$$smap.replacement)&&(replacement=this.replacement),null==(insert_after=$kwargs.$$smap.insert_after)&&(insert_after=this.insert_after),$truthy(replacement)&&(children=this.$swallow(children)),this.$class().$new(range,this.enforcer,$hash2(,{children:children,insert_before:insert_before,replacement:replacement,insert_after:insert_after}))},$Action_with$5.$$arity=-1),Opal.def(self,“$do_combine”,$Action_do_combine$6=function(action){return action.$range()(this.range)?this.$merge(action):this.$place_in_hierachy(action)},$Action_do_combine$6.$$arity=1),Opal.def(self,“$place_in_hierachy”,$Action_place_in_hierachy$7=function(action){var $$8,family=nil,extra_sibbling=nil;return family=$send(this.children,“group_by”,[],(($$8=function(child){$$8.$$s;return null==child&&(child=nil),child.$relationship_with(action)}).$$s=this,$$8.$$arity=1,$$8)),$truthy(family[“$”](“fusible”))?this.$fuse_deletions(action,family[“$”](“fusible”),[].concat(Opal.to_a(family[“$”](“sibbling”))).concat(Opal.to_a(family[“$”](“child”)))):(extra_sibbling=$truthy(family[“$”](“parent”))?family[“$”](“parent”)[“$”](0).$do_combine(action):$truthy(family[“$”](“child”))?action.$with($hash2(,{children:family[“$”](“child”)})):action,this.$with($hash2(,{children:[].concat(Opal.to_a(family[“$”](“sibbling”))).concat()})))},$Action_place_in_hierachy$7.$$arity=1),Opal.def(self,“$fuse_deletions”,$Action_fuse_deletions$9=function(action,fusible,other_sibblings){var fused_range,fused_deletion,without_fusible=nil;return without_fusible=this.$with($hash2(,{children:other_sibblings})),fused_range=$send(.concat(Opal.to_a(fusible)),“map”,[],“range”.$to_proc()).$inject(“join”),fused_deletion=action.$with($hash2(,{range:fused_range})),without_fusible.$do_combine(fused_deletion)},$Action_fuse_deletions$9.$$arity=3),Opal.def(self,“$relationship_with”,$Action_relationship_with$10=function(action){var $a,$$11,$$12;return $truthy($truthy($a=action.$range()(this.range))?$a:this.range(action.$range()))?“parent”:$truthy(this.range(action.$range()))?“child”:$truthy(this.range(action.$range()))?“sibbling”:$truthy($truthy($a=action()[“$!”]())?this()[“$!”]():$a)?($send(this.enforcer,“call”,,(($$11=function(){var self=$$11.$$s||this;return null==self.range&&(self.range=nil),$hash2(,{range:action.$range(),conflict:self.range})}).$$s=this,$$11.$$arity=0,$$11)),“fusible”):$send(this.enforcer,“call”,,(($$12=function(){var self=$$12.$$s||this;return null==self.range&&(self.range=nil),$hash2(,{range:action.$range(),conflict:self.range})}).$$s=this,$$12.$$arity=0,$$12))},$Action_relationship_with$10.$$arity=1),Opal.def(self,“$merge”,$Action_merge$13=function(action){var $a;return this.$call_enforcer_for_merge(action),this.$with($hash2(,{insert_before:“”+action.$insert_before()+this.$insert_before(),replacement:$truthy($a=action.$replacement())?$a:this.replacement,insert_after:“”+this.$insert_after()+action.$insert_after()}))},$Action_merge$13.$$arity=1),Opal.def(self,“$call_enforcer_for_merge”,$Action_call_enforcer_for_merge$14=function(action){var $$15;return $send(this.enforcer,“call”,,(($$15=function(){var $a,$b,self=$$15.$$s||this;return null==self.replacement&&(self.replacement=nil),null==self.range&&(self.range=nil),$truthy($truthy($a=$truthy($b=self.replacement)?action.$replacement():$b)?self.replacement(action.$replacement()):$a)?$hash2(,{range:self.range,replacement:action.$replacement(),other_replacement:self.replacement}):nil}).$$s=this,$$15.$$arity=0,$$15))},$Action_call_enforcer_for_merge$14.$$arity=1),Opal.def(self,“$swallow”,$Action_swallow$16=function(children){var $$17;return $send(this.enforcer,“call”,,(($$17=function(){var self=$$17.$$s||this,insertions=nil;return null==self.range&&(self.range=nil),insertions=$send(children,“select”,[],“insertion?”.$to_proc()),$truthy(insertions())?nil:$hash2(,{range:self.range,conflict:$send(insertions,“map”,[],“range”.$to_proc())})}).$$s=this,$$17.$$arity=0,$$17)),},$Action_swallow$16.$$arity=1)}($$($nesting,“TreeRewriter”),0,$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){Opal.top;var $nesting=[],nil=Opal.nil,$module=(Opal.const_get_qualified,Opal.const_get_relative,Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$send=Opal.send,$hash2=Opal.hash2,$range=Opal.range;return Opal.add_stubs([“$attr_reader”,“$freeze”,“$line”,“$alias_method”,“$column”,“$last_line”,“$last_column”,“$with”,“$update_expression”,“$==”,“$class”,“$reduce”,“$map”,“$instance_variables”,“$instance_variable_get”,“$send”,“$inject”,“$to_sym”,“$”,“$[]=”,“$-”,“$protected”,“$tap”,“$dup”,“$to_proc”]),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $Map_initialize$1,$Map_initialize_copy$2,$Map_node$eq$3,$Map_line$4,$Map_column$5,$Map_last_line$6,$Map_last_column$7,$Map_with_expression$8,$Map_$eq_eq$10,$Map_to_hash$12,$Map_with$14,$Map_update_expression$15,self=$klass($base,null,“Map”);.concat($parent_nesting);self.$$prototype.node=self.$$prototype.expression=nil,self.$attr_reader(“node”),self.$attr_reader(“expression”),Opal.def(self,“$initialize”,$Map_initialize$1=function(expression){return this.expression=expression},$Map_initialize$1.$$arity=1),Opal.def(self,“$initialize_copy”,$Map_initialize_copy$2=function(other){var $zuper_ii,$iter=$Map_initialize_copy$2.$$p,$zuper=nil,$zuper_i=nil;for($iter&&($Map_initialize_copy$2.$$p=null),$zuper_i=0,$zuper_ii=arguments.length,$zuper=new Array($zuper_ii);$zuper_i<$zuper_ii;$zuper_i++)$zuper=arguments;return $send(this,Opal.find_super_dispatcher(this,“initialize_copy”,$Map_initialize_copy$2,!1),$zuper,$iter),this.node=nil},$Map_initialize_copy$2.$$arity=1),Opal.def(self,“$node=”,$Map_node$eq$3=function(node){return this.node=node,this.$freeze(),this.node},$Map_node$eq$3.$$arity=1),Opal.def(self,“$line”,$Map_line$4=function(){return this.expression.$line()},$Map_line$4.$$arity=0),self.$alias_method(“first_line”,“line”),Opal.def(self,“$column”,$Map_column$5=function(){return this.expression.$column()},$Map_column$5.$$arity=0),Opal.def(self,“$last_line”,$Map_last_line$6=function(){return this.expression.$last_line()},$Map_last_line$6.$$arity=0),Opal.def(self,“$last_column”,$Map_last_column$7=function(){return this.expression.$last_column()},$Map_last_column$7.$$arity=0),Opal.def(self,“$with_expression”,$Map_with_expression$8=function(expression_l){var $$9;return $send(this,“with”,[],(($$9=function(map){$$9.$$s;return null==map&&(map=nil),map.$update_expression(expression_l)}).$$s=this,$$9.$$arity=1,$$9))},$Map_with_expression$8.$$arity=1),Opal.def(self,“$==”,$Map_$eq_eq$10=function(other){var $$11;return other.$class()(this.$class())?$send(this.$instance_variables(),“map”,[],($$11=function(ivar){var self=$$11.$$s||this;return null==ivar&&(ivar=nil),self.$instance_variable_get(ivar)(other.$send(“instance_variable_get”,ivar))},$$11.$$s=this,$$11.$$arity=1,$$11)).$reduce(“&”):other.$class()(this.$class())},$Map_$eq_eq$10.$$arity=1),Opal.def(self,“$to_hash”,$Map_to_hash$12=function(){var $$13;return $send(this.$instance_variables(),“inject”,[$hash2(,{})],(($$13=function(hash,ivar){var $writer,lhs,rhs,self=$$13.$$s||this;return null==hash&&(hash=nil),null==ivar&&(ivar=nil),ivar.$to_sym()(“@node”)||($writer=[ivar[“$”]($range(1,-1,!1)).$to_sym(),self.$instance_variable_get(ivar)],$send(hash,“[]=”,Opal.to_a($writer)),rhs=1,“number”==typeof(lhs=$writer.length)&&“number”==typeof rhs||lhs(rhs)),hash}).$$s=this,$$13.$$arity=2,$$13))},$Map_to_hash$12.$$arity=0),self.$protected(),Opal.def(self,“$with”,$Map_with$14=function(){var $iter=$Map_with$14.$$p,block=$iter||nil;return $iter&&($Map_with$14.$$p=null),$iter&&($Map_with$14.$$p=null),$send(this.$dup(),“tap”,[],block.$to_proc())},$Map_with$14.$$arity=0),Opal.def(self,“$update_expression”,$Map_update_expression$15=function(expression_l){return this.expression=expression_l},$Map_update_expression$15.$$arity=1)}($nesting,0,$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){Opal.top;var $nesting=[],$$=(Opal.nil,Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$send=Opal.send;return Opal.add_stubs(),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $Operator_initialize$1,self=$klass($base,$super,“Operator”);.concat($parent_nesting);self.$attr_reader(“operator”),Opal.def(self,“$initialize”,$Operator_initialize$1=function(operator,expression){var $iter=$Operator_initialize$1.$$p;return $iter&&($Operator_initialize$1.$$p=null),this.operator=operator,$send(this,Opal.find_super_dispatcher(this,“initialize”,$Operator_initialize$1,!1),,null)},$Operator_initialize$1.$$arity=2)}($$($nesting,“Map”),$$($nesting,“Map”),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){Opal.top;var $nesting=[],$$=(Opal.nil,Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$send=Opal.send;return Opal.add_stubs(),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $Collection_initialize$1,self=$klass($base,$super,“Collection”);.concat($parent_nesting);self.$attr_reader(“begin”),self.$attr_reader(“end”),Opal.def(self,“$initialize”,$Collection_initialize$1=function(begin_l,end_l,expression_l){var $a,$iter=$Collection_initialize$1.$$p;return $iter&&($Collection_initialize$1.$$p=null),$a=,this.begin=$a,this.end=$a,$send(this,Opal.find_super_dispatcher(this,“initialize”,$Collection_initialize$1,!1),,null)},$Collection_initialize$1.$$arity=3)}($$($nesting,“Map”),$$($nesting,“Map”),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){Opal.top;var $nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$send=Opal.send;return Opal.add_stubs(),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $Constant_initialize$1,$Constant_with_operator$2,$Constant_update_operator$4,self=$klass($base,$super,“Constant”);.concat($parent_nesting);self.$attr_reader(“double_colon”),self.$attr_reader(“name”),self.$attr_reader(“operator”),Opal.def(self,“$initialize”,$Constant_initialize$1=function(double_colon,name,expression){var $a,$iter=$Constant_initialize$1.$$p;return $iter&&($Constant_initialize$1.$$p=null),$a=,this.double_colon=$a,this.name=$a,$send(this,Opal.find_super_dispatcher(this,“initialize”,$Constant_initialize$1,!1),,null)},$Constant_initialize$1.$$arity=3),Opal.def(self,“$with_operator”,$Constant_with_operator$2=function(operator_l){var $$3;return $send(this,“with”,[],(($$3=function(map){$$3.$$s;return null==map&&(map=nil),map.$update_operator(operator_l)}).$$s=this,$$3.$$arity=1,$$3))},$Constant_with_operator$2.$$arity=1),self.$protected(),Opal.def(self,“$update_operator”,$Constant_update_operator$4=function(operator_l){return this.operator=operator_l},$Constant_update_operator$4.$$arity=1)}($$($nesting,“Map”),$$($nesting,“Map”),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){Opal.top;var $nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$send=Opal.send;return Opal.add_stubs(),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $Variable_initialize$1,$Variable_with_operator$2,$Variable_update_operator$4,self=$klass($base,$super,“Variable”);.concat($parent_nesting);self.$attr_reader(“name”),self.$attr_reader(“operator”),Opal.def(self,“$initialize”,$Variable_initialize$1=function(name_l,expression_l){var $iter=$Variable_initialize$1.$$p;return $iter&&($Variable_initialize$1.$$p=null),null==expression_l&&(expression_l=name_l),this.name=name_l,$send(this,Opal.find_super_dispatcher(this,“initialize”,$Variable_initialize$1,!1),,null)},$Variable_initialize$1.$$arity=-2),Opal.def(self,“$with_operator”,$Variable_with_operator$2=function(operator_l){var $$3;return $send(this,“with”,[],(($$3=function(map){$$3.$$s;return null==map&&(map=nil),map.$update_operator(operator_l)}).$$s=this,$$3.$$arity=1,$$3))},$Variable_with_operator$2.$$arity=1),self.$protected(),Opal.def(self,“$update_operator”,$Variable_update_operator$4=function(operator_l){return this.operator=operator_l},$Variable_update_operator$4.$$arity=1)}($$($nesting,“Map”),$$($nesting,“Map”),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){Opal.top;var $nesting=[],$$=(Opal.nil,Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$send=Opal.send;return Opal.add_stubs(),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $Keyword_initialize$1,self=$klass($base,$super,“Keyword”);.concat($parent_nesting);self.$attr_reader(“keyword”),self.$attr_reader(“begin”),self.$attr_reader(“end”),Opal.def(self,“$initialize”,$Keyword_initialize$1=function(keyword_l,begin_l,end_l,expression_l){var $a,$iter=$Keyword_initialize$1.$$p;return $iter&&($Keyword_initialize$1.$$p=null),this.keyword=keyword_l,$a=,this.begin=$a,this.end=$a,$send(this,Opal.find_super_dispatcher(this,“initialize”,$Keyword_initialize$1,!1),,null)},$Keyword_initialize$1.$$arity=4)}($$($nesting,“Map”),$$($nesting,“Map”),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){Opal.top;var $nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$send=Opal.send;return Opal.add_stubs(),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $Definition_initialize$1,self=$klass($base,$super,“Definition”);.concat($parent_nesting);self.$$prototype.keyword=self.$$prototype.end=nil,self.$attr_reader(“keyword”),self.$attr_reader(“operator”),self.$attr_reader(“name”),self.$attr_reader(“end”),Opal.def(self,“$initialize”,$Definition_initialize$1=function(keyword_l,operator_l,name_l,end_l){var $iter=$Definition_initialize$1.$$p;return $iter&&($Definition_initialize$1.$$p=null),this.keyword=keyword_l,this.operator=operator_l,this.name=name_l,this.end=end_l,$send(this,Opal.find_super_dispatcher(this,“initialize”,$Definition_initialize$1,!1),,null)},$Definition_initialize$1.$$arity=4)}($$($nesting,“Map”),$$($nesting,“Map”),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){Opal.top;var $nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$send=Opal.send;return Opal.add_stubs(),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $Send_initialize$1,$Send_with_operator$2,$Send_update_operator$4,self=$klass($base,$super,“Send”);.concat($parent_nesting);self.$attr_reader(“dot”),self.$attr_reader(“selector”),self.$attr_reader(“operator”),self.$attr_reader(“begin”),self.$attr_reader(“end”),Opal.def(self,“$initialize”,$Send_initialize$1=function(dot_l,selector_l,begin_l,end_l,expression_l){var $a,$iter=$Send_initialize$1.$$p;return $iter&&($Send_initialize$1.$$p=null),this.dot=dot_l,this.selector=selector_l,$a=,this.begin=$a,this.end=$a,$send(this,Opal.find_super_dispatcher(this,“initialize”,$Send_initialize$1,!1),,null)},$Send_initialize$1.$$arity=5),Opal.def(self,“$with_operator”,$Send_with_operator$2=function(operator_l){var $$3;return $send(this,“with”,[],(($$3=function(map){$$3.$$s;return null==map&&(map=nil),map.$update_operator(operator_l)}).$$s=this,$$3.$$arity=1,$$3))},$Send_with_operator$2.$$arity=1),self.$protected(),Opal.def(self,“$update_operator”,$Send_update_operator$4=function(operator_l){return this.operator=operator_l},$Send_update_operator$4.$$arity=1)}($$($nesting,“Map”),$$($nesting,“Map”),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){Opal.top;var $nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$send=Opal.send;return Opal.add_stubs(),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $Index_initialize$1,$Index_with_operator$2,$Index_update_operator$4,self=$klass($base,$super,“Index”);.concat($parent_nesting);self.$attr_reader(“begin”),self.$attr_reader(“end”),self.$attr_reader(“operator”),Opal.def(self,“$initialize”,$Index_initialize$1=function(begin_l,end_l,expression_l){var $a,$iter=$Index_initialize$1.$$p;return $iter&&($Index_initialize$1.$$p=null),$a=,this.begin=$a,this.end=$a,this.operator=nil,$send(this,Opal.find_super_dispatcher(this,“initialize”,$Index_initialize$1,!1),,null)},$Index_initialize$1.$$arity=3),Opal.def(self,“$with_operator”,$Index_with_operator$2=function(operator_l){var $$3;return $send(this,“with”,[],(($$3=function(map){$$3.$$s;return null==map&&(map=nil),map.$update_operator(operator_l)}).$$s=this,$$3.$$arity=1,$$3))},$Index_with_operator$2.$$arity=1),self.$protected(),Opal.def(self,“$update_operator”,$Index_update_operator$4=function(operator_l){return this.operator=operator_l},$Index_update_operator$4.$$arity=1)}($$($nesting,“Map”),$$($nesting,“Map”),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){Opal.top;var $nesting=[],$$=(Opal.nil,Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$send=Opal.send;return Opal.add_stubs(),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $Condition_initialize$1,self=$klass($base,$super,“Condition”);.concat($parent_nesting);self.$attr_reader(“keyword”),self.$attr_reader(“begin”),self.$attr_reader(“else”),self.$attr_reader(“end”),Opal.def(self,“$initialize”,$Condition_initialize$1=function(keyword_l,begin_l,else_l,end_l,expression_l){var $a,$iter=$Condition_initialize$1.$$p;return $iter&&($Condition_initialize$1.$$p=null),this.keyword=keyword_l,$a=,this.begin=$a,this.else=$a,this.end=$a,$send(this,Opal.find_super_dispatcher(this,“initialize”,$Condition_initialize$1,!1),,null)},$Condition_initialize$1.$$arity=5)}($$($nesting,“Map”),$$($nesting,“Map”),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){Opal.top;var $nesting=[],$$=(Opal.nil,Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$send=Opal.send;return Opal.add_stubs(),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $Ternary_initialize$1,self=$klass($base,$super,“Ternary”);.concat($parent_nesting);self.$attr_reader(“question”),self.$attr_reader(“colon”),Opal.def(self,“$initialize”,$Ternary_initialize$1=function(question_l,colon_l,expression_l){var $a,$iter=$Ternary_initialize$1.$$p;return $iter&&($Ternary_initialize$1.$$p=null),$a=,this.question=$a,this.colon=$a,$send(this,Opal.find_super_dispatcher(this,“initialize”,$Ternary_initialize$1,!1),,null)},$Ternary_initialize$1.$$arity=3)}($$($nesting,“Map”),$$($nesting,“Map”),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){Opal.top;var $nesting=[],$$=(Opal.nil,Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$send=Opal.send;return Opal.add_stubs(),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $For_initialize$1,self=$klass($base,$super,“For”);.concat($parent_nesting);self.$attr_reader(“keyword”,“in”),self.$attr_reader(“begin”,“end”),Opal.def(self,“$initialize”,$For_initialize$1=function(keyword_l,in_l,begin_l,end_l,expression_l){var $a,$iter=$For_initialize$1.$$p;return $iter&&($For_initialize$1.$$p=null),$a=,this.keyword=$a,this.in=$a,$a=,this.begin=$a,this.end=$a,$send(this,Opal.find_super_dispatcher(this,“initialize”,$For_initialize$1,!1),,null)},$For_initialize$1.$$arity=5)}($$($nesting,“Map”),$$($nesting,“Map”),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){Opal.top;var $nesting=[],$$=(Opal.nil,Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$send=Opal.send;return Opal.add_stubs(),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $RescueBody_initialize$1,self=$klass($base,$super,“RescueBody”);.concat($parent_nesting);self.$attr_reader(“keyword”),self.$attr_reader(“assoc”),self.$attr_reader(“begin”),Opal.def(self,“$initialize”,$RescueBody_initialize$1=function(keyword_l,assoc_l,begin_l,expression_l){var $iter=$RescueBody_initialize$1.$$p;return $iter&&($RescueBody_initialize$1.$$p=null),this.keyword=keyword_l,this.assoc=assoc_l,this.begin=begin_l,$send(this,Opal.find_super_dispatcher(this,“initialize”,$RescueBody_initialize$1,!1),,null)},$RescueBody_initialize$1.$$arity=4)}($$($nesting,“Map”),$$($nesting,“Map”),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){Opal.top;var $nesting=[],$$=(Opal.nil,Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$send=Opal.send;return Opal.add_stubs(),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $Heredoc_initialize$1,self=$klass($base,$super,“Heredoc”);.concat($parent_nesting);self.$attr_reader(“heredoc_body”),self.$attr_reader(“heredoc_end”),Opal.def(self,“$initialize”,$Heredoc_initialize$1=function(begin_l,body_l,end_l){var $iter=$Heredoc_initialize$1.$$p;return $iter&&($Heredoc_initialize$1.$$p=null),this.heredoc_body=body_l,this.heredoc_end=end_l,$send(this,Opal.find_super_dispatcher(this,“initialize”,$Heredoc_initialize$1,!1),,null)},$Heredoc_initialize$1.$$arity=3)}($$($nesting,“Map”),$$($nesting,“Map”),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){Opal.top;var $nesting=[],$$=(Opal.nil,Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$send=Opal.send;return Opal.add_stubs(),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $ObjcKwarg_initialize$1,self=$klass($base,$super,“ObjcKwarg”);.concat($parent_nesting);self.$attr_reader(“keyword”),self.$attr_reader(“operator”),self.$attr_reader(“argument”),Opal.def(self,“$initialize”,$ObjcKwarg_initialize$1=function(keyword_l,operator_l,argument_l,expression_l){var $a,$iter=$ObjcKwarg_initialize$1.$$p;return $iter&&($ObjcKwarg_initialize$1.$$p=null),$a=,this.keyword=$a,this.operator=$a,this.argument=$a,$send(this,Opal.find_super_dispatcher(this,“initialize”,$ObjcKwarg_initialize$1,!1),,null)},$ObjcKwarg_initialize$1.$$arity=4)}($$($nesting,“Map”),$$($nesting,“Map”),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){Opal.top;var $nesting=[],$$=(Opal.nil,Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$send=Opal.send;return Opal.add_stubs(),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $SyntaxError_initialize$1,self=$klass($base,$super,“SyntaxError”);.concat($parent_nesting);self.$attr_reader(“diagnostic”),Opal.def(self,“$initialize”,$SyntaxError_initialize$1=function(diagnostic){var $iter=$SyntaxError_initialize$1.$$p;return $iter&&($SyntaxError_initialize$1.$$p=null),this.diagnostic=diagnostic,$send(this,Opal.find_super_dispatcher(this,“initialize”,$SyntaxError_initialize$1,!1),,null)},$SyntaxError_initialize$1.$$arity=1)}($nesting,$$($nesting,“StandardError”),$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){Opal.top;var $nesting=[],$$=(Opal.nil,Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass;return function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){[$klass($base,$super,“ClobberingError”)].concat($parent_nesting)}($nesting,$$($nesting,“RuntimeError”),$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){function $rb_plus(lhs,rhs){return“number”==typeof lhs&&“number”==typeof rhs?lhs+rhs:lhs(rhs)}function $rb_minus(lhs,rhs){return“number”==typeof lhs&&“number”==typeof rhs?lhs-rhs:lhs(rhs)}function $rb_times(lhs,rhs){return“number”==typeof lhs&&“number”==typeof rhs?lhs*rhs:lhs(rhs)}Opal.top;var $nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$truthy=Opal.truthy,$hash2=Opal.hash2,$send=Opal.send;return Opal.add_stubs([“$freeze”,“$attr_reader”,“$include?”,“$raise”,“$join”,“$inspect”,“$dup”,“$%”,“$”,“$==”,“$=”,“$map”,“$name”,“$!=”,“$resize”,“$=~”,“$source”,“$adjust”“>line”,“$last_line”,“$is?”,“$+”,“$message”,“$render_line”,“$first_line_only”,“$last_line_only”,“$-”,“$source_buffer”,“$decompose_position”,“$end_pos”,“$>”,“$private”,“$source_line”,“$*”,“$length”,“$each”,“$line_range”,“$intersect”,“$column_range”,“$size”,“$),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $Diagnostic_initialize$1,$Diagnostic_message$2,$Diagnostic_render$3,$Diagnostic_render_line$4,$Diagnostic_first_line_only$7,$Diagnostic_last_line_only$8,self=$klass($base,null,”Diagnostic“),$nesting=.concat($parent_nesting);self.$$prototype.reason=self.$$prototype.arguments=self.$$prototype.location=self.$$prototype.level=self.$$prototype.highlights=nil,Opal.const_set($nesting,”LEVELS“,.$freeze()),self.$attr_reader(”level“,”reason“,”arguments“),self.$attr_reader(”location“,”highlights“),Opal.def(self,”$initialize“,$Diagnostic_initialize$1=function(level,reason,arguments$,location,highlights){var $a;return null==highlights&&(highlights=[]),$truthy($$($nesting,”LEVELS“)(level))||this.$raise($$($nesting,”ArgumentError“),”Diagnostic#level must be one of “+$$($nesting,”LEVELS“).$join(”, “)+”; “+level.$inspect()+” provided.“),$truthy(location)||this.$raise(”Expected a location“),this.level=level,this.reason=reason,this.arguments=($truthy($a=arguments$)?$a:$hash2([],{})).$dup().$freeze(),this.location=location,this.highlights=highlights.$dup().$freeze(),this.$freeze()},$Diagnostic_initialize$1.$$arity=-5),Opal.def(self,”$message“,$Diagnostic_message$2=function(){return $$($nesting,”MESSAGES“)[”$“](this.reason)(this.arguments)},$Diagnostic_message$2.$$arity=0),Opal.def(self,”$render“,$Diagnostic_render$3=function(){var $a,$b,lhs,rhs,first_line=nil,last_line=nil,num_lines=nil,last_lineno=nil,last_column=nil;return $truthy($truthy($a=this.location.$line()(this.location.$last_line()))?$a:this.location(”n“))?$rb_plus([this.location+”: “this.level”: “+this.$message()],this.$render_line(this.location)):(first_line=this.$first_line_only(this.location),last_line=this.$last_line_only(this.location),num_lines=$rb_plus($rb_minus(this.location.$last_line(),this.location.$line()),1),$b=this.location.$source_buffer().$decompose_position(this.location.$end_pos()),last_lineno=null==($a=Opal.to_ary($b))?nil:$a,last_column=null==$a?nil:$a,$rb_plus($rb_plus([this.location+”-“last_lineno”:“last_column”: “this.level”: “+this.$message()],this.$render_line(first_line,(rhs=2,”number“==typeof(lhs=num_lines)&&”number“==typeof ”“>rhs?rhs(rhs)),!1)),this.$render_line(last_line,!1,!0)))},$Diagnostic_render$3.$$arity=0),self.$private(),Opal.def(self,”$render_line“,$Diagnostic_render_line$4=function(range,ellipsis,range_end){var $$5,$a,$$6,lhs,rhs,source_line=nil,highlight_line=nil,$writer=nil;return null==ellipsis&&(ellipsis=!1),null==range_end&&(range_end=!1),source_line=range.$source_line(),highlight_line=$rb_times(” “,source_line.$length()),$send(this.highlights,”each“,[],(($$5=function(highlight){$$5.$$s;var line_range,$writer=nil;return null==highlight&&(highlight=nil),line_range=range.$source_buffer().$line_range(range.$line()),$truthy(highlight=highlight.$intersect(line_range))?($writer=,$send(highlight_line,”[]=“,Opal.to_a($writer)),$writer):nil}).$$s=this,$$5.$$arity=1,$$5)),$truthy(range(”n“))?highlight_line=$rb_plus(highlight_line,”^“):($writer=$truthy($truthy($a=range_end())?(lhs=range.$size(),rhs=1,”number“==typeof lhs&&”number“==typeof =”“>rhs?rhs<=lhs:lhs(rhs)):$a)?:[range.$column_range(),$rb_times(”~“,range.$size())],$send(highlight_line,”[]=“,Opal.to_a($writer)),$writer),$truthy(ellipsis)&&(highlight_line=$rb_plus(highlight_line,”…“)),$send(,”map“,[],(($$6=function(line){$$6.$$s;return null==line&&(line=nil),range.$source_buffer().$name()+”:“+range.$line()+”: “+line}).$$s=this,$$6.$$arity=1,$$6))},$Diagnostic_render_line$4.$$arity=-2),Opal.def(self,”$first_line_only“,$Diagnostic_first_line_only$7=function(range){return $truthy(range.$line()(range.$last_line()))?range.$resize(range.$source()(/n/)):range},$Diagnostic_first_line_only$7.$$arity=1),Opal.def(self,”$last_line_only“,$Diagnostic_last_line_only$8=function(range){return $truthy(range.$line()(range.$last_line()))?range.$adjust($hash2(,{begin_pos:range.$source()(/[^n]*$/)})):range},$Diagnostic_last_line_only$8.$$arity=1)}($nesting,0,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){Opal.top;var $nesting=[],nil=Opal.nil,$$$=Opal.const_get_qualified,$$=Opal.const_get_relative,$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$truthy=Opal.truthy;return Opal.add_stubs(),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $Engine_initialize$1,$Engine_process$2,$Engine_ignore$ques$3,$Engine_raise$ques$4,self=$klass($base,null,”Engine“),$nesting=.concat($parent_nesting);self.$$prototype.consumer=self.$$prototype.ignore_warnings=self.$$prototype.all_errors_are_fatal=nil,self.$attr_accessor(”consumer“),self.$attr_accessor(”all_errors_are_fatal“),self.$attr_accessor(”ignore_warnings“),Opal.def(self,”$initialize“,$Engine_initialize$1=function(consumer){return null==consumer&&(consumer=nil),this.consumer=consumer,this.all_errors_are_fatal=!1,this.ignore_warnings=!1},$Engine_initialize$1.$$arity=-1),Opal.def(self,”$process“,$Engine_process$2=function(diagnostic){return $truthy(this(diagnostic))||$truthy(this.consumer)&&this.consumer.$call(diagnostic),$truthy(this(diagnostic))&&this.$raise($$$($$($nesting,”Parser“),”SyntaxError“),diagnostic),this},$Engine_process$2.$$arity=1),self.$protected(),Opal.def(self,”$ignore?“,$Engine_ignore$ques$3=function(diagnostic){var $a;return $truthy($a=this.ignore_warnings)?diagnostic.$level()(”warning“):$a},$Engine_ignore$ques$3.$$arity=1),Opal.def(self,”$raise?“,$Engine_raise$ques$4=function(diagnostic){var $a,$b;return $truthy($a=$truthy($b=this.all_errors_are_fatal)?diagnostic.$level()(”error“):$b)?$a:diagnostic.$level()(”fatal“)},$Engine_raise$ques$4.$$arity=1)}($$($nesting,”Diagnostic“),0,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){Opal.top;var $nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass;return Opal.add_stubs([”$reset“,”$“,”$push“,”$dup“,”$pop“,”$add“,”$to_sym“,”$include?“]),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $StaticEnvironment_initialize$1,$StaticEnvironment_reset$2,$StaticEnvironment_extend_static$3,$StaticEnvironment_extend_dynamic$4,$StaticEnvironment_unextend$5,$StaticEnvironment_declare$6,$StaticEnvironment_declared$ques$7,self=$klass($base,null,”StaticEnvironment“),$nesting=.concat($parent_nesting);self.$$prototype.stack=self.$$prototype.variables=nil,Opal.def(self,”$initialize“,$StaticEnvironment_initialize$1=function(){return this.$reset()},$StaticEnvironment_initialize$1.$$arity=0),Opal.def(self,”$reset“,$StaticEnvironment_reset$2=function(){return this.variables=$$($nesting,”Set“)[”$“](),this.stack=[]},$StaticEnvironment_reset$2.$$arity=0),Opal.def(self,”$extend_static“,$StaticEnvironment_extend_static$3=function(){return this.stack.$push(this.variables),this.variables=$$($nesting,”Set“)[”$“](),this},$StaticEnvironment_extend_static$3.$$arity=0),Opal.def(self,”$extend_dynamic“,$StaticEnvironment_extend_dynamic$4=function(){return this.stack.$push(this.variables),this.variables=this.variables.$dup(),this},$StaticEnvironment_extend_dynamic$4.$$arity=0),Opal.def(self,”$unextend“,$StaticEnvironment_unextend$5=function(){return this.variables=this.stack.$pop(),this},$StaticEnvironment_unextend$5.$$arity=0),Opal.def(self,”$declare“,$StaticEnvironment_declare$6=function(name){return this.variables.$add(name.$to_sym()),this},$StaticEnvironment_declare$6.$$arity=1),Opal.def(self,”$declared?“,$StaticEnvironment_declared$ques$7=function(name){return this.variables(name.$to_sym())},$StaticEnvironment_declared$ques$7.$$arity=1)}($nesting,0,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){function $rb_minus(lhs,rhs){return”number“==typeof lhs&&”number“==typeof rhs?lhs-rhs:lhs(rhs)}function $rb_plus(lhs,rhs){return”number“==typeof lhs&&”number“==typeof rhs?lhs+rhs:lhs(rhs)}function $rb_le(lhs,rhs){return”number“==typeof lhs&&”number“==typeof rhs?lhs<=rhs:lhs(rhs)}function $rb_gt(lhs,rhs){return”number“==typeof lhs&&”number“==typeof ”“>rhs?rhs(rhs)}function $rb_ge(lhs,rhs){return”number“==typeof lhs&&”number“==typeof =”“>rhs?rhs<=lhs:lhs(rhs)}function $rb_lt(lhs,rhs){return”number“==typeof lhs&&”number“==typeof rhs?lhs(rhs)}Opal.top;var $nesting=[],nil=Opal.nil,$$$=Opal.const_get_qualified,$$=Opal.const_get_relative,$klass=(Opal.breaker,Opal.slice,Opal.klass),$send=Opal.send,$hash=Opal.hash,$truthy=Opal.truthy,$hash2=Opal.hash2,$range=Opal.range,$gvars=Opal.gvars;return Opal.add_stubs([”$attr_accessor“,”$private“,”$_lex_trans_keys=“,”$-“,”$_lex_key_spans=“,”$_lex_index_offsets=“,”$_lex_indicies=“,”$_lex_trans_targs=“,”$_lex_trans_actions=“,”$_lex_to_state_actions=“,”$_lex_from_state_actions=“,”$_lex_eof_trans=“,”$lex_start=“,”$lex_error=“,”$lex_en_interp_words=“,”$lex_en_interp_string=“,”$lex_en_plain_words=“,”$lex_en_plain_string=“,”$lex_en_interp_backslash_delimited=“,”$lex_en_plain_backslash_delimited=“,”$lex_en_interp_backslash_delimited_words=“,”$lex_en_plain_backslash_delimited_words=“,”$lex_en_regexp_modifiers=“,”$lex_en_expr_variable=“,”$lex_en_expr_fname=“,”$lex_en_expr_endfn=“,”$lex_en_expr_dot=“,”$lex_en_expr_arg=“,”$lex_en_expr_cmdarg=“,”$lex_en_expr_endarg=“,”$lex_en_expr_mid=“,”$lex_en_expr_beg=“,”$lex_en_expr_labelarg=“,”$lex_en_expr_value=“,”$lex_en_expr_end=“,”$lex_en_leading_dot=“,”$lex_en_line_comment=“,”$lex_en_line_begin=“,”$freeze“,”$ord“,”$union“,”$chars“,”$attr_reader“,”$reset“,”$lex_en_line_begin“,”$class“,”$new“,”$source“,”$==“,”$encoding“,”$unpack“,”$“,”$=“,”$active?“,”$slice“,”$chr“,”$munge_escape?“,”$regexp?“,”$match“,”$squiggly_heredoc?“,”$scan“,”$join“,”$=~“,”$to_i“,”$stack_pop“,”$emit_table“,”$push_literal“,”$arg_or_cmdarg“,”$emit_do“,”$nil?“,”$declared?“,”$<","$getbyte","$lexpop","$inspect","$end_with?","$empty?","$index","$call","$Float","$last","$to_f","$length","$lambda","$Rational","$Complex","$start_with?","$each","$encode_escape","$%","$end_interp_brace_and_try_closing","$saved_herebody_s","$next_state_for_literal","$rstrip","$&","$|","$lex_error","$protected","$include?","$force_encoding","$process","$backslash_delimited?","$interpolate?","$lex_en_interp_backslash_delimited_words","$lex_en_plain_backslash_delimited_words","$lex_en_plain_words","$lex_en_interp_backslash_delimited","$lex_en_plain_backslash_delimited","$dedent_level","$type","$lex_en_regexp_modifiers","$upcase"">lex_en_expr_dot“,”$lex_en_expr_fname“,”$lex_en_expr_value“,”$lex_en_expr_beg“,”$lex_en_expr_mid“,”$lex_en_expr_arg“,”$lex_en_expr_cmdarg“,”$lex_en_expr_end“,”$lex_en_expr_endarg“,”$lex_en_expr_endfn“,”$lex_en_expr_labelarg“,”$lex_en_interp_string“,”$lex_en_interp_words“,”$lex_en_plain_string“,”$fetch“,”$invert“,”$push“,”$count“,”$pop“,”$any?“,”$shift“,”$send“,”$+“,”$size“,”$<=","$===","$<<","$>“,”$!=“,”$emit_comment“,”$tok“,”$literal“,”$flush_string“,”$extend_content“,”$emit“,”$heredoc?“,”$saved_herebody_s=“,”$start_interp_brace“,”$),function($base,$super,$parent_nesting){var $Lexer_initialize$1,$Lexer_reset$2,$Lexer_source_buffer$eq$3,$Lexer_encoding$4,$Lexer_state$5,$Lexer_state$eq$6,$Lexer_push_cmdarg$7,$Lexer_pop_cmdarg$8,$Lexer_push_cond$9,$Lexer_pop_cond$10,$Lexer_dedent_level$11,$Lexer_advance$12,$Lexer_eof_codepoint$ques$42,$Lexer_version$ques$43,$Lexer_stack_pop$44,$Lexer_encode_escape$45,$Lexer_tok$46,$Lexer_range$47,$Lexer_emit$48,$Lexer_emit_table$49,$Lexer_emit_do$50,$Lexer_arg_or_cmdarg$51,$Lexer_emit_comment$52,$Lexer_diagnostic$53,$Lexer_push_literal$54,$Lexer_next_state_for_literal$55,$Lexer_literal$56,$Lexer_pop_literal$57,$Lexer$58,self=$klass($base,null,“Lexer”),$nesting=.concat($parent_nesting),$writer=nil;return self.$$prototype.source_buffer=self.$$prototype.source_pts=self.$$prototype.cs=self.$$prototype.cmdarg_stack=self.$$prototype.cmdarg=self.$$prototype.cond_stack=self.$$prototype.cond=self.$$prototype.dedent_level=self.$$prototype.token_queue=self.$$prototype.p=self.$$prototype.herebody_s=self.$$prototype.sharp_s=self.$$prototype.ts=self.$$prototype.te=self.$$prototype.top=self.$$prototype.stack=self.$$prototype.version=self.$$prototype.escape_s=self.$$prototype.escape=self.$$prototype.act=self.$$prototype.static_env=self.$$prototype.lambda_stack=self.$$prototype.paren_nest=self.$$prototype.num_digits_s=self.$$prototype.num_suffix_s=self.$$prototype.num_base=self.$$prototype.num_xfrm=self.$$prototype.newline_s=self.$$prototype.eq_begin_s=self.$$prototype.cs_before_block_comment=self.$$prototype.in_kwarg=self.$$prototype.tokens=self.$$prototype.command_state=self.$$prototype.comments=self.$$prototype.diagnostics=self.$$prototype.literal_stack=nil,function(self,$parent_nesting){[self].concat($parent_nesting);self.$attr_accessor(“_lex_trans_keys”),self.$private(“_lex_trans_keys”,“_lex_trans_keys=”)}(Opal.get_singleton_class(self),$nesting),$writer=[],$send(self,“_lex_trans_keys=”,Opal.to_a($writer)),$writer,function(self,$parent_nesting){[self].concat($parent_nesting);self.$attr_accessor(“_lex_key_spans”),self.$private(“_lex_key_spans”,“_lex_key_spans=”)}(Opal.get_singleton_class(self),$nesting),$writer=[],$send(self,“_lex_key_spans=”,Opal.to_a($writer)),$writer,function(self,$parent_nesting){[self].concat($parent_nesting);self.$attr_accessor(“_lex_index_offsets”),self.$private(“_lex_index_offsets”,“_lex_index_offsets=”)}(Opal.get_singleton_class(self),$nesting),$writer=[],$send(self,“_lex_index_offsets=”,Opal.to_a($writer)),$writer,function(self,$parent_nesting){[self].concat($parent_nesting);self.$attr_accessor(“_lex_indicies”),self.$private(“_lex_indicies”,“_lex_indicies=”)}(Opal.get_singleton_class(self),$nesting),$writer=[],$send(self,“_lex_indicies=”,Opal.to_a($writer)),$writer,function(self,$parent_nesting){[self].concat($parent_nesting);self.$attr_accessor(“_lex_trans_targs”),self.$private(“_lex_trans_targs”,“_lex_trans_targs=”)}(Opal.get_singleton_class(self),$nesting),$writer=[],$send(self,“_lex_trans_targs=”,Opal.to_a($writer)),$writer,function(self,$parent_nesting){[self].concat($parent_nesting);self.$attr_accessor(“_lex_trans_actions”),self.$private(“_lex_trans_actions”,“_lex_trans_actions=”)}(Opal.get_singleton_class(self),$nesting),$writer=[],$send(self,“_lex_trans_actions=”,Opal.to_a($writer)),$writer,function(self,$parent_nesting){[self].concat($parent_nesting);self.$attr_accessor(“_lex_to_state_actions”),self.$private(“_lex_to_state_actions”,“_lex_to_state_actions=”)}(Opal.get_singleton_class(self),$nesting),$writer=[],$send(self,“_lex_to_state_actions=”,Opal.to_a($writer)),$writer,function(self,$parent_nesting){[self].concat($parent_nesting);self.$attr_accessor(“_lex_from_state_actions”),self.$private(“_lex_from_state_actions”,“_lex_from_state_actions=”)}(Opal.get_singleton_class(self),$nesting),$writer=[],$send(self,“_lex_from_state_actions=”,Opal.to_a($writer)),$writer,function(self,$parent_nesting){[self].concat($parent_nesting);self.$attr_accessor(“_lex_eof_trans”),self.$private(“_lex_eof_trans”,“_lex_eof_trans=”)}(Opal.get_singleton_class(self),$nesting),$writer=[],$send(self,“_lex_eof_trans=”,Opal.to_a($writer)),$writer,function(self,$parent_nesting){[self].concat($parent_nesting);self.$attr_accessor(“lex_start”)}(Opal.get_singleton_class(self),$nesting),$writer=,$send(self,“lex_start=”,Opal.to_a($writer)),$writer,function(self,$parent_nesting){[self].concat($parent_nesting);self.$attr_accessor(“lex_error”)}(Opal.get_singleton_class(self),$nesting),$writer=,$send(self,“lex_error=”,Opal.to_a($writer)),$writer,function(self,$parent_nesting){[self].concat($parent_nesting);self.$attr_accessor(“lex_en_interp_words”)}(Opal.get_singleton_class(self),$nesting),$writer=,$send(self,“lex_en_interp_words=”,Opal.to_a($writer)),$writer,function(self,$parent_nesting){[self].concat($parent_nesting);self.$attr_accessor(“lex_en_interp_string”)}(Opal.get_singleton_class(self),$nesting),$writer=,$send(self,“lex_en_interp_string=”,Opal.to_a($writer)),$writer,function(self,$parent_nesting){[self].concat($parent_nesting);self.$attr_accessor(“lex_en_plain_words”)}(Opal.get_singleton_class(self),$nesting),$writer=,$send(self,“lex_en_plain_words=”,Opal.to_a($writer)),$writer,function(self,$parent_nesting){[self].concat($parent_nesting);self.$attr_accessor(“lex_en_plain_string”)}(Opal.get_singleton_class(self),$nesting),$writer=,$send(self,“lex_en_plain_string=”,Opal.to_a($writer)),$writer,function(self,$parent_nesting){[self].concat($parent_nesting);self.$attr_accessor(“lex_en_interp_backslash_delimited”)}(Opal.get_singleton_class(self),$nesting),$writer=,$send(self,“lex_en_interp_backslash_delimited=”,Opal.to_a($writer)),$writer,function(self,$parent_nesting){[self].concat($parent_nesting);self.$attr_accessor(“lex_en_plain_backslash_delimited”)}(Opal.get_singleton_class(self),$nesting),$writer=,$send(self,“lex_en_plain_backslash_delimited=”,Opal.to_a($writer)),$writer,function(self,$parent_nesting){[self].concat($parent_nesting);self.$attr_accessor(“lex_en_interp_backslash_delimited_words”)}(Opal.get_singleton_class(self),$nesting),$writer=,$send(self,“lex_en_interp_backslash_delimited_words=”,Opal.to_a($writer)),$writer,function(self,$parent_nesting){[self].concat($parent_nesting);self.$attr_accessor(“lex_en_plain_backslash_delimited_words”)}(Opal.get_singleton_class(self),$nesting),$writer=,$send(self,“lex_en_plain_backslash_delimited_words=”,Opal.to_a($writer)),$writer,function(self,$parent_nesting){[self].concat($parent_nesting);self.$attr_accessor(“lex_en_regexp_modifiers”)}(Opal.get_singleton_class(self),$nesting),$writer=,$send(self,“lex_en_regexp_modifiers=”,Opal.to_a($writer)),$writer,function(self,$parent_nesting){[self].concat($parent_nesting);self.$attr_accessor(“lex_en_expr_variable”)}(Opal.get_singleton_class(self),$nesting),$writer=,$send(self,“lex_en_expr_variable=”,Opal.to_a($writer)),$writer,function(self,$parent_nesting){[self].concat($parent_nesting);self.$attr_accessor(“lex_en_expr_fname”)}(Opal.get_singleton_class(self),$nesting),$writer=,$send(self,“lex_en_expr_fname=”,Opal.to_a($writer)),$writer,function(self,$parent_nesting){[self].concat($parent_nesting);self.$attr_accessor(“lex_en_expr_endfn”)}(Opal.get_singleton_class(self),$nesting),$writer=,$send(self,“lex_en_expr_endfn=”,Opal.to_a($writer)),$writer,function(self,$parent_nesting){[self].concat($parent_nesting);self.$attr_accessor(“lex_en_expr_dot”)}(Opal.get_singleton_class(self),$nesting),$writer=,$send(self,“lex_en_expr_dot=”,Opal.to_a($writer)),$writer,function(self,$parent_nesting){[self].concat($parent_nesting);self.$attr_accessor(“lex_en_expr_arg”)}(Opal.get_singleton_class(self),$nesting),$writer=,$send(self,“lex_en_expr_arg=”,Opal.to_a($writer)),$writer,function(self,$parent_nesting){[self].concat($parent_nesting);self.$attr_accessor(“lex_en_expr_cmdarg”)}(Opal.get_singleton_class(self),$nesting),$writer=,$send(self,“lex_en_expr_cmdarg=”,Opal.to_a($writer)),$writer,function(self,$parent_nesting){[self].concat($parent_nesting);self.$attr_accessor(“lex_en_expr_endarg”)}(Opal.get_singleton_class(self),$nesting),$writer=,$send(self,“lex_en_expr_endarg=”,Opal.to_a($writer)),$writer,function(self,$parent_nesting){[self].concat($parent_nesting);self.$attr_accessor(“lex_en_expr_mid”)}(Opal.get_singleton_class(self),$nesting),$writer=,$send(self,“lex_en_expr_mid=”,Opal.to_a($writer)),$writer,function(self,$parent_nesting){[self].concat($parent_nesting);self.$attr_accessor(“lex_en_expr_beg”)}(Opal.get_singleton_class(self),$nesting),$writer=,$send(self,“lex_en_expr_beg=”,Opal.to_a($writer)),$writer,function(self,$parent_nesting){[self].concat($parent_nesting);self.$attr_accessor(“lex_en_expr_labelarg”)}(Opal.get_singleton_class(self),$nesting),$writer=,$send(self,“lex_en_expr_labelarg=”,Opal.to_a($writer)),$writer,function(self,$parent_nesting){[self].concat($parent_nesting);self.$attr_accessor(“lex_en_expr_value”)}(Opal.get_singleton_class(self),$nesting),$writer=,$send(self,“lex_en_expr_value=”,Opal.to_a($writer)),$writer,function(self,$parent_nesting){[self].concat($parent_nesting);self.$attr_accessor(“lex_en_expr_end”)}(Opal.get_singleton_class(self),$nesting),$writer=,$send(self,“lex_en_expr_end=”,Opal.to_a($writer)),$writer,function(self,$parent_nesting){[self].concat($parent_nesting);self.$attr_accessor(“lex_en_leading_dot”)}(Opal.get_singleton_class(self),$nesting),$writer=,$send(self,“lex_en_leading_dot=”,Opal.to_a($writer)),$writer,function(self,$parent_nesting){[self].concat($parent_nesting);self.$attr_accessor(“lex_en_line_comment”)}(Opal.get_singleton_class(self),$nesting),$writer=,$send(self,“lex_en_line_comment=”,Opal.to_a($writer)),$writer,function(self,$parent_nesting){[self].concat($parent_nesting);self.$attr_accessor(“lex_en_line_begin”)}(Opal.get_singleton_class(self),$nesting),$writer=,$send(self,“lex_en_line_begin=”,Opal.to_a($writer)),$writer,Opal.const_set($nesting,“ESCAPES”,$hash(“a”.$ord(),“”,“b”.$ord(),“b”,“e”.$ord(),“”,“f”.$ord(),“f”,“n”.$ord(),“n”,“r”.$ord(),“r”,“s”.$ord(),“ ”,“t”.$ord(),“t”,“v”.$ord(),“v”,“\”.$ord(),“\”).$freeze()),Opal.const_set($nesting,“REGEXP_META_CHARACTERS”,$send($$($nesting,“Regexp”),“union”,Opal.to_a(“\$()*+.<>?[]^{|}”.$chars())).$freeze()),self.$attr_reader(“source_buffer”),self.$attr_accessor(“diagnostics”),self.$attr_accessor(“static_env”),self.$attr_accessor(“force_utf32”),self.$attr_accessor(“cond”,“cmdarg”,“in_kwarg”),self.$attr_accessor(“tokens”,“comments”),Opal.def(self,“$initialize”,$Lexer_initialize$1=function(version){return this.version=version,this.static_env=nil,this.tokens=nil,this.comments=nil,this.$reset()},$Lexer_initialize$1.$$arity=1),Opal.def(self,“$reset”,$Lexer_reset$2=function(reset_state){return null==reset_state&&(reset_state=!0),$truthy(reset_state)&&(this.cs=this.$class().$lex_en_line_begin(),this.cond=$$($nesting,“StackState”).$new(“cond”),this.cmdarg=$$($nesting,“StackState”).$new(“cmdarg”),this.cond_stack=[],this.cmdarg_stack=),this.force_utf32=!1,this.source_pts=nil,this.p=0,this.ts=nil,this.te=nil,this.act=0,this.stack=[],this.top=0,this.token_queue=,this.literal_stack=[],this.eq_begin_s=nil,this.sharp_s=nil,this.newline_s=nil,this.num_base=nil,this.num_digits_s=nil,this.num_suffix_s=nil,this.num_xfrm=nil,this.escape_s=nil,this.escape=nil,this.herebody_s=nil,this.paren_nest=0,this.lambda_stack=,this.dedent_level=nil,this.command_state=!1,this.in_kwarg=!1,this.cs_before_block_comment=this.$class().$lex_en_line_begin()},$Lexer_reset$2.$$arity=-1),Opal.def(self,“$source_buffer=”,$Lexer_source_buffer$eq$3=function(source_buffer){var source=nil;return this.source_buffer=source_buffer,$truthy(this.source_buffer)?((source=this.source_buffer.$source()).$encoding()($$$($$($nesting,“Encoding”),“UTF_8”))?this.source_pts=source.$unpack(“U*”):this.source_pts=source.$unpack(“C*”),this.source_pts[“$”](0)(65279)?this.p=1:nil):this.source_pts=nil},$Lexer_source_buffer$eq$3.$$arity=1),Opal.def(self,“$encoding”,$Lexer_encoding$4=function(){return this.source_buffer.$source().$encoding()},$Lexer_encoding$4.$$arity=0),Opal.const_set($nesting,“LEX_STATES”,$hash2(,{line_begin:self.$lex_en_line_begin(),expr_dot:self.$lex_en_expr_dot(),expr_fname:self.$lex_en_expr_fname(),expr_value:self.$lex_en_expr_value(),expr_beg:self.$lex_en_expr_beg(),expr_mid:self.$lex_en_expr_mid(),expr_arg:self.$lex_en_expr_arg(),expr_cmdarg:self.$lex_en_expr_cmdarg(),expr_end:self.$lex_en_expr_end(),expr_endarg:self.$lex_en_expr_endarg(),expr_endfn:self.$lex_en_expr_endfn(),expr_labelarg:self.$lex_en_expr_labelarg(),interp_string:self.$lex_en_interp_string(),interp_words:self.$lex_en_interp_words(),plain_string:self.$lex_en_plain_string(),plain_words:self.$lex_en_plain_string()})),Opal.def(self,“$state”,$Lexer_state$5=function(){return $$($nesting,“LEX_STATES”).$invert().$fetch(this.cs,this.cs)},$Lexer_state$5.$$arity=0),Opal.def(self,“$state=”,$Lexer_state$eq$6=function(state){return this.cs=$$($nesting,“LEX_STATES”).$fetch(state)},$Lexer_state$eq$6.$$arity=1),Opal.def(self,“$push_cmdarg”,$Lexer_push_cmdarg$7=function(){return this.cmdarg_stack.$push(this.cmdarg),this.cmdarg=$$($nesting,“StackState”).$new(“cmdarg.”+this.cmdarg_stack.$count())},$Lexer_push_cmdarg$7.$$arity=0),Opal.def(self,“$pop_cmdarg”,$Lexer_pop_cmdarg$8=function(){return this.cmdarg=this.cmdarg_stack.$pop()},$Lexer_pop_cmdarg$8.$$arity=0),Opal.def(self,“$push_cond”,$Lexer_push_cond$9=function(){return this.cond_stack.$push(this.cond),this.cond=$$($nesting,“StackState”).$new(“cond.”+this.cond_stack.$count())},$Lexer_push_cond$9.$$arity=0),Opal.def(self,“$pop_cond”,$Lexer_pop_cond$10=function(){return this.cond=this.cond_stack.$pop()},$Lexer_pop_cond$10.$$arity=0),Opal.def(self,“$dedent_level”,$Lexer_dedent_level$11=function(){var $a,dedent_level;return dedent_level=($a=)[0],this.dedent_level=$a,dedent_level},$Lexer_dedent_level$11.$$arity=0),Opal.def(self,“$advance”,$Lexer_advance$12=function(){var $a,$b,$c,$$13,$$14,$$15,$$16,$$17,$$18,$$19,$$20,$$21,$$22,$$23,$$24,$$25,$$26,$$27,$$28,$$29,$$30,$$31,$$32,$$33,$$34,$$35,$$36,$$37,$$38,$$39,$$40,$$41,pe,self=this,klass=nil,_lex_trans_keys=nil,_lex_key_spans=nil,_lex_index_offsets=nil,_lex_indicies=nil,_lex_trans_targs=nil,_lex_trans_actions=nil,_lex_to_state_actions=nil,_lex_from_state_actions=nil,_lex_eof_trans=nil,p=nil,eof=nil,_slen=nil,_trans=nil,_keys=nil,_inds=nil,_goto_level=nil,$case=nil,_wide=nil,tm=nil,heredoc_e=nil,ident_tok=nil,ident_ts=nil,ident_te=nil,current_literal=nil,$writer=nil,line=nil,string=nil,lookahead=nil,token=nil,escaped_char=nil,unknown_options=nil,type=nil,delimiter=nil,escape=nil,ident=nil,value=nil,digits=nil,invalid_idx=nil,invalid_s=nil,codepoints=nil,codepoint_s=nil,spaces_p=nil,codepoint=nil,new_herebody_s=nil,indent=nil,dedent_body=nil;if($truthy(self.token_queue()))return self.token_queue.$shift();for(klass=self.$class(),_lex_trans_keys=klass.$send(“_lex_trans_keys”),_lex_key_spans=klass.$send(“_lex_key_spans”),_lex_index_offsets=klass.$send(“_lex_index_offsets”),_lex_indicies=klass.$send(“_lex_indicies”),_lex_trans_targs=klass.$send(“_lex_trans_targs”),_lex_trans_actions=klass.$send(“_lex_trans_actions”),_lex_to_state_actions=klass.$send(“_lex_to_state_actions”),_lex_from_state_actions=klass.$send(“_lex_from_state_actions”),_lex_eof_trans=klass.$send(“_lex_eof_trans”),pe=$rb_plus(self.source_pts.$size(),2),$a=,p=$a,eof=$a,self.command_state=$truthy($a=self.cs(klass.$lex_en_expr_value()))?$a:self.cs(klass.$lex_en_line_begin()),!1,$b=nil,$a=Opal.to_ary($b),_slen=null==$a?nil:$a,_trans=null==$a?nil:$a,_keys=null==$a?nil:$a,_inds=null==$a?nil:$a,null==$a?nil:$a,null==$a?nil:$a,_goto_level=0,10,15,20,30,40;$truthy(!0);){if($truthy($rb_le(_goto_level,0))){if(p(pe)){_goto_level=30;continue}if(self.cs(0)){_goto_level=40;continue}}if($truthy($rb_le(_goto_level,10))&&($case=_lex_from_state_actions[“$”](self.cs),89($case)&&(self.ts=p),_keys=self.cs(1),_inds=_lex_index_offsets[“$”](self.cs),_slen=_lex_key_spans[“$”](self.cs),_wide=$truthy($b=self.source_pts[“$”](p))?$b:0,_trans=$truthy($truthy($b=$truthy($c=$rb_gt(_slen,0))?$rb_le(_lex_trans_keys[“$”](_keys),_wide):$c)?$rb_le(_wide,_lex_trans_keys[“$”]($rb_plus(_keys,1))):$b)?_lex_indicies[“$”]($rb_minus($rb_plus(_inds,_wide),_lex_trans_keys[“$”](_keys))):_lex_indicies[“$”]($rb_plus(_inds,_slen))),$truthy($rb_le(_goto_level,15))&&(self.cs=_lex_trans_targs[“$”](_trans),$truthy(_lex_trans_actions[“$”](_trans)(0))))if($case=_lex_trans_actions[“$”](_trans),28($case))self.newline_s=p;else if(108($case))self.escape_s=p,self.escape=nil;else if(29($case))$truthy(self.herebody_s)&&(p=self.herebody_s,self.herebody_s=nil);else if(59($case))self.sharp_s=$rb_minus(p,1);else if(63($case))self.$emit_comment(self.sharp_s,p(pe)?$rb_minus(p,2):p);else if(292($case))tm=p;else if(36($case))tm=p;else if(38($case))tm=p;else if(40($case))tm=p;else if(69($case))heredoc_e=p;else if(334($case))self.escape=nil;else if(363($case))tm=p;else if(290($case))ident_tok=self.$tok(),ident_ts=self.ts,ident_te=self.te;else if(449($case))self.num_base=16,self.num_digits_s=p;else if(443($case))self.num_base=10,self.num_digits_s=p;else if(446($case))self.num_base=8,self.num_digits_s=p;else if(440($case))self.num_base=2,self.num_digits_s=p;else if(455($case))self.num_base=10,self.num_digits_s=self.ts;else if(417($case))self.num_base=8,self.num_digits_s=self.ts;else if(432($case))self.num_suffix_s=p;else if(425($case))self.num_suffix_s=p;else if(422($case))self.num_suffix_s=p;else if(85($case))tm=p;else if(7($case))self.te=$rb_plus(p,1);else{if(105($case)){self.te=$rb_plus(p,1),(current_literal=self.$literal()).$flush_string(),current_literal.$extend_content(),self.$emit(“tSTRING_DBEG”,“#{”.$freeze()),$truthy(current_literal())&&($writer=,$send(current_literal,“saved_herebody_s=”,Opal.to_a($writer)),$writer,self.herebody_s=nil),current_literal.$start_interp_brace(),self.cs=759,p=$rb_plus(p,1),_goto_level=40;continue}if(5($case)){self.te=$rb_plus(p,1),(current_literal=self.$literal()).$flush_string(),current_literal.$extend_content(),self.$emit(“tSTRING_DVAR”,nil,self.ts,$rb_plus(self.ts,1)),p=self.ts,$writer=,$send(self.stack,“[]=”,Opal.to_a($writer)),$writer,self.top=$rb_plus(self.top,1),self.cs=320,_goto_level=20;continue}if(101($case)){if(self.te=$rb_plus(p,1),current_literal=self.$literal(),self.te(pe)&&self.$diagnostic(“fatal”,“string_eof”,nil,self.$range(current_literal.$str_s(),$rb_plus(current_literal.$str_s(),1))),$truthy(current_literal())){if(line=self.$tok(self.herebody_s,self.ts).$gsub(/r+$/,“”.$freeze()),$truthy(self(18,19,20))&&(line=line.$gsub(/r.*$/,“”.$freeze())),$truthy(current_literal.$nest_and_try_closing(line,self.herebody_s,self.ts))){self.herebody_s=self.te,p=$rb_minus(current_literal.$heredoc_e(),1),self.cs=self.$pop_literal(),p=$rb_plus(p,1),_goto_level=40;continue}current_literal.$infer_indent_level(line),self.herebody_s=self.te}else{if($truthy(current_literal.$nest_and_try_closing(self.$tok(),self.ts,self.te))){self.cs=self.$pop_literal(),p=$rb_plus(p,1),_goto_level=40;continue}$truthy(self.herebody_s)&&(p=$rb_minus(self.herebody_s,1),self.herebody_s=nil)}$truthy($truthy($b=current_literal())?self(self.source_pts[“$”](p))():$b)?current_literal.$extend_space(self.ts,self.te):(current_literal.$extend_string(self.$tok(),self.ts,self.te),current_literal.$flush_string())}else if(100($case)){if(self.te=$rb_plus(p,1),string=self.$tok(),$truthy($truthy($b=$rb_ge(self.version,22))?self.cond()[“$!”]():$b)&&(lookahead=self.source_buffer.$slice(Opal.Range.$new(self.te,$rb_plus(self.te,2),!0))),current_literal=self.$literal(),$truthy($truthy($b=current_literal()[“$!”]())?token=current_literal.$nest_and_try_closing(string,self.ts,self.te,lookahead):$b)){token[“$”](0)(“tLABEL_END”)?(p=$rb_plus(p,1),self.$pop_literal(),self.cs=752):self.cs=self.$pop_literal(),p=$rb_plus(p,1),_goto_level=40;continue}current_literal.$extend_string(string,self.ts,self.te)}else{if(106($case)){p=$rb_minus(self.te=p,1),(current_literal=self.$literal()).$flush_string(),current_literal.$extend_content(),self.$emit(“tSTRING_DVAR”,nil,self.ts,$rb_plus(self.ts,1)),p=self.ts,$writer=,$send(self.stack,“[]=”,Opal.to_a($writer)),$writer,self.top=$rb_plus(self.top,1),self.cs=320,_goto_level=20;continue}if(103($case))p=$rb_minus(self.te=p,1),self.$literal().$extend_space(self.ts,self.te);else if(104($case)){if(p=$rb_minus(self.te=p,1),string=self.$tok(),$truthy($truthy($b=$rb_ge(self.version,22))?self.cond()[“$!”]():$b)&&(lookahead=self.source_buffer.$slice(Opal.Range.$new(self.te,$rb_plus(self.te,2),!0))),current_literal=self.$literal(),$truthy($truthy($b=current_literal()[“$!”]())?token=current_literal.$nest_and_try_closing(string,self.ts,self.te,lookahead):$b)){token[“$”](0)(“tLABEL_END”)?(p=$rb_plus(p,1),self.$pop_literal(),self.cs=752):self.cs=self.$pop_literal(),p=$rb_plus(p,1),_goto_level=40;continue}current_literal.$extend_string(string,self.ts,self.te)}else if(6($case))p=$rb_minus(self.te,1),current_literal=self.$literal(),escaped_char=self.source_buffer.$slice(self.escape_s).$chr(),$truthy(current_literal(escaped_char))?$truthy($truthy($b=current_literal())?$$($nesting,“REGEXP_META_CHARACTERS”).$match(escaped_char):$b)?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(escaped_char,self.ts,self.te):$truthy(current_literal())?current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):$truthy($truthy($b=current_literal())?escaped_char(“n”.$freeze()):$b)?$truthy(current_literal())?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):current_literal.$extend_string($truthy($b=self.escape)?$b:self.$tok(),self.ts,self.te);else if(4($case)){if(p=$rb_minus(self.te,1),string=self.$tok(),$truthy($truthy($b=$rb_ge(self.version,22))?self.cond()[“$!”]():$b)&&(lookahead=self.source_buffer.$slice(Opal.Range.$new(self.te,$rb_plus(self.te,2),!0))),current_literal=self.$literal(),$truthy($truthy($b=current_literal()[“$!”]())?token=current_literal.$nest_and_try_closing(string,self.ts,self.te,lookahead):$b)){token[“$”](0)(“tLABEL_END”)?(p=$rb_plus(p,1),self.$pop_literal(),self.cs=752):self.cs=self.$pop_literal(),p=$rb_plus(p,1),_goto_level=40;continue}current_literal.$extend_string(string,self.ts,self.te)}else{if(133($case)){self.te=$rb_plus(p,1),(current_literal=self.$literal()).$flush_string(),current_literal.$extend_content(),self.$emit(“tSTRING_DBEG”,“#{”.$freeze()),$truthy(current_literal())&&($writer=,$send(current_literal,“saved_herebody_s=”,Opal.to_a($writer)),$writer,self.herebody_s=nil),current_literal.$start_interp_brace(),self.cs=759,p=$rb_plus(p,1),_goto_level=40;continue}if(10($case)){self.te=$rb_plus(p,1),(current_literal=self.$literal()).$flush_string(),current_literal.$extend_content(),self.$emit(“tSTRING_DVAR”,nil,self.ts,$rb_plus(self.ts,1)),p=self.ts,$writer=,$send(self.stack,“[]=”,Opal.to_a($writer)),$writer,self.top=$rb_plus(self.top,1),self.cs=320,_goto_level=20;continue}if(130($case)){if(self.te=$rb_plus(p,1),current_literal=self.$literal(),self.te(pe)&&self.$diagnostic(“fatal”,“string_eof”,nil,self.$range(current_literal.$str_s(),$rb_plus(current_literal.$str_s(),1))),$truthy(current_literal())){if(line=self.$tok(self.herebody_s,self.ts).$gsub(/r+$/,“”.$freeze()),$truthy(self(18,19,20))&&(line=line.$gsub(/r.*$/,“”.$freeze())),$truthy(current_literal.$nest_and_try_closing(line,self.herebody_s,self.ts))){self.herebody_s=self.te,p=$rb_minus(current_literal.$heredoc_e(),1),self.cs=self.$pop_literal(),p=$rb_plus(p,1),_goto_level=40;continue}current_literal.$infer_indent_level(line),self.herebody_s=self.te}else{if($truthy(current_literal.$nest_and_try_closing(self.$tok(),self.ts,self.te))){self.cs=self.$pop_literal(),p=$rb_plus(p,1),_goto_level=40;continue}$truthy(self.herebody_s)&&(p=$rb_minus(self.herebody_s,1),self.herebody_s=nil)}$truthy($truthy($b=current_literal())?self(self.source_pts[“$”](p))():$b)?current_literal.$extend_space(self.ts,self.te):(current_literal.$extend_string(self.$tok(),self.ts,self.te),current_literal.$flush_string())}else if(129($case)){if(self.te=$rb_plus(p,1),string=self.$tok(),$truthy($truthy($b=$rb_ge(self.version,22))?self.cond()[“$!”]():$b)&&(lookahead=self.source_buffer.$slice(Opal.Range.$new(self.te,$rb_plus(self.te,2),!0))),current_literal=self.$literal(),$truthy($truthy($b=current_literal()[“$!”]())?token=current_literal.$nest_and_try_closing(string,self.ts,self.te,lookahead):$b)){token[“$”](0)(“tLABEL_END”)?(p=$rb_plus(p,1),self.$pop_literal(),self.cs=752):self.cs=self.$pop_literal(),p=$rb_plus(p,1),_goto_level=40;continue}current_literal.$extend_string(string,self.ts,self.te)}else{if(134($case)){p=$rb_minus(self.te=p,1),(current_literal=self.$literal()).$flush_string(),current_literal.$extend_content(),self.$emit(“tSTRING_DVAR”,nil,self.ts,$rb_plus(self.ts,1)),p=self.ts,$writer=,$send(self.stack,“[]=”,Opal.to_a($writer)),$writer,self.top=$rb_plus(self.top,1),self.cs=320,_goto_level=20;continue}if(132($case)){if(p=$rb_minus(self.te=p,1),string=self.$tok(),$truthy($truthy($b=$rb_ge(self.version,22))?self.cond()[“$!”]():$b)&&(lookahead=self.source_buffer.$slice(Opal.Range.$new(self.te,$rb_plus(self.te,2),!0))),current_literal=self.$literal(),$truthy($truthy($b=current_literal()[“$!”]())?token=current_literal.$nest_and_try_closing(string,self.ts,self.te,lookahead):$b)){token[“$”](0)(“tLABEL_END”)?(p=$rb_plus(p,1),self.$pop_literal(),self.cs=752):self.cs=self.$pop_literal(),p=$rb_plus(p,1),_goto_level=40;continue}current_literal.$extend_string(string,self.ts,self.te)}else if(11($case))p=$rb_minus(self.te,1),current_literal=self.$literal(),escaped_char=self.source_buffer.$slice(self.escape_s).$chr(),$truthy(current_literal(escaped_char))?$truthy($truthy($b=current_literal())?$$($nesting,“REGEXP_META_CHARACTERS”).$match(escaped_char):$b)?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(escaped_char,self.ts,self.te):$truthy(current_literal())?current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):$truthy($truthy($b=current_literal())?escaped_char(“n”.$freeze()):$b)?$truthy(current_literal())?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):current_literal.$extend_string($truthy($b=self.escape)?$b:self.$tok(),self.ts,self.te);else if(9($case)){if(p=$rb_minus(self.te,1),string=self.$tok(),$truthy($truthy($b=$rb_ge(self.version,22))?self.cond()[“$!”]():$b)&&(lookahead=self.source_buffer.$slice(Opal.Range.$new(self.te,$rb_plus(self.te,2),!0))),current_literal=self.$literal(),$truthy($truthy($b=current_literal()[“$!”]())?token=current_literal.$nest_and_try_closing(string,self.ts,self.te,lookahead):$b)){token[“$”](0)(“tLABEL_END”)?(p=$rb_plus(p,1),self.$pop_literal(),self.cs=752):self.cs=self.$pop_literal(),p=$rb_plus(p,1),_goto_level=40;continue}current_literal.$extend_string(string,self.ts,self.te)}else if(157($case)){if(self.te=$rb_plus(p,1),current_literal=self.$literal(),self.te(pe)&&self.$diagnostic(“fatal”,“string_eof”,nil,self.$range(current_literal.$str_s(),$rb_plus(current_literal.$str_s(),1))),$truthy(current_literal())){if(line=self.$tok(self.herebody_s,self.ts).$gsub(/r+$/,“”.$freeze()),$truthy(self(18,19,20))&&(line=line.$gsub(/r.*$/,“”.$freeze())),$truthy(current_literal.$nest_and_try_closing(line,self.herebody_s,self.ts))){self.herebody_s=self.te,p=$rb_minus(current_literal.$heredoc_e(),1),self.cs=self.$pop_literal(),p=$rb_plus(p,1),_goto_level=40;continue}current_literal.$infer_indent_level(line),self.herebody_s=self.te}else{if($truthy(current_literal.$nest_and_try_closing(self.$tok(),self.ts,self.te))){self.cs=self.$pop_literal(),p=$rb_plus(p,1),_goto_level=40;continue}$truthy(self.herebody_s)&&(p=$rb_minus(self.herebody_s,1),self.herebody_s=nil)}$truthy($truthy($b=current_literal())?self(self.source_pts[“$”](p))():$b)?current_literal.$extend_space(self.ts,self.te):(current_literal.$extend_string(self.$tok(),self.ts,self.te),current_literal.$flush_string())}else if(156($case)){if(self.te=$rb_plus(p,1),string=self.$tok(),$truthy($truthy($b=$rb_ge(self.version,22))?self.cond()[“$!”]():$b)&&(lookahead=self.source_buffer.$slice(Opal.Range.$new(self.te,$rb_plus(self.te,2),!0))),current_literal=self.$literal(),$truthy($truthy($b=current_literal()[“$!”]())?token=current_literal.$nest_and_try_closing(string,self.ts,self.te,lookahead):$b)){token[“$”](0)(“tLABEL_END”)?(p=$rb_plus(p,1),self.$pop_literal(),self.cs=752):self.cs=self.$pop_literal(),p=$rb_plus(p,1),_goto_level=40;continue}current_literal.$extend_string(string,self.ts,self.te)}else if(159($case))p=$rb_minus(self.te=p,1),self.$literal().$extend_space(self.ts,self.te);else if(160($case)){if(p=$rb_minus(self.te=p,1),string=self.$tok(),$truthy($truthy($b=$rb_ge(self.version,22))?self.cond()[“$!”]():$b)&&(lookahead=self.source_buffer.$slice(Opal.Range.$new(self.te,$rb_plus(self.te,2),!0))),current_literal=self.$literal(),$truthy($truthy($b=current_literal()[“$!”]())?token=current_literal.$nest_and_try_closing(string,self.ts,self.te,lookahead):$b)){token[“$”](0)(“tLABEL_END”)?(p=$rb_plus(p,1),self.$pop_literal(),self.cs=752):self.cs=self.$pop_literal(),p=$rb_plus(p,1),_goto_level=40;continue}current_literal.$extend_string(string,self.ts,self.te)}else if(163($case)){if(self.te=$rb_plus(p,1),current_literal=self.$literal(),self.te(pe)&&self.$diagnostic(“fatal”,“string_eof”,nil,self.$range(current_literal.$str_s(),$rb_plus(current_literal.$str_s(),1))),$truthy(current_literal())){if(line=self.$tok(self.herebody_s,self.ts).$gsub(/r+$/,“”.$freeze()),$truthy(self(18,19,20))&&(line=line.$gsub(/r.*$/,“”.$freeze())),$truthy(current_literal.$nest_and_try_closing(line,self.herebody_s,self.ts))){self.herebody_s=self.te,p=$rb_minus(current_literal.$heredoc_e(),1),self.cs=self.$pop_literal(),p=$rb_plus(p,1),_goto_level=40;continue}current_literal.$infer_indent_level(line),self.herebody_s=self.te}else{if($truthy(current_literal.$nest_and_try_closing(self.$tok(),self.ts,self.te))){self.cs=self.$pop_literal(),p=$rb_plus(p,1),_goto_level=40;continue}$truthy(self.herebody_s)&&(p=$rb_minus(self.herebody_s,1),self.herebody_s=nil)}$truthy($truthy($b=current_literal())?self(self.source_pts[“$”](p))():$b)?current_literal.$extend_space(self.ts,self.te):(current_literal.$extend_string(self.$tok(),self.ts,self.te),current_literal.$flush_string())}else if(162($case)){if(self.te=$rb_plus(p,1),string=self.$tok(),$truthy($truthy($b=$rb_ge(self.version,22))?self.cond()[“$!”]():$b)&&(lookahead=self.source_buffer.$slice(Opal.Range.$new(self.te,$rb_plus(self.te,2),!0))),current_literal=self.$literal(),$truthy($truthy($b=current_literal()[“$!”]())?token=current_literal.$nest_and_try_closing(string,self.ts,self.te,lookahead):$b)){token[“$”](0)(“tLABEL_END”)?(p=$rb_plus(p,1),self.$pop_literal(),self.cs=752):self.cs=self.$pop_literal(),p=$rb_plus(p,1),_goto_level=40;continue}current_literal.$extend_string(string,self.ts,self.te)}else if(165($case)){if(p=$rb_minus(self.te=p,1),string=self.$tok(),$truthy($truthy($b=$rb_ge(self.version,22))?self.cond()[“$!”]():$b)&&(lookahead=self.source_buffer.$slice(Opal.Range.$new(self.te,$rb_plus(self.te,2),!0))),current_literal=self.$literal(),$truthy($truthy($b=current_literal()[“$!”]())?token=current_literal.$nest_and_try_closing(string,self.ts,self.te,lookahead):$b)){token[“$”](0)(“tLABEL_END”)?(p=$rb_plus(p,1),self.$pop_literal(),self.cs=752):self.cs=self.$pop_literal(),p=$rb_plus(p,1),_goto_level=40;continue}current_literal.$extend_string(string,self.ts,self.te)}else{if(172($case)){self.te=$rb_plus(p,1),(current_literal=self.$literal()).$flush_string(),current_literal.$extend_content(),self.$emit(“tSTRING_DBEG”,“#{”.$freeze()),$truthy(current_literal())&&($writer=,$send(current_literal,“saved_herebody_s=”,Opal.to_a($writer)),$writer,self.herebody_s=nil),current_literal.$start_interp_brace(),self.cs=759,p=$rb_plus(p,1),_goto_level=40;continue}if(13($case)){self.te=$rb_plus(p,1),(current_literal=self.$literal()).$flush_string(),current_literal.$extend_content(),self.$emit(“tSTRING_DVAR”,nil,self.ts,$rb_plus(self.ts,1)),p=self.ts,$writer=,$send(self.stack,“[]=”,Opal.to_a($writer)),$writer,self.top=$rb_plus(self.top,1),self.cs=320,_goto_level=20;continue}if(169($case)){if(self.te=$rb_plus(p,1),current_literal=self.$literal(),self.te(pe)&&self.$diagnostic(“fatal”,“string_eof”,nil,self.$range(current_literal.$str_s(),$rb_plus(current_literal.$str_s(),1))),$truthy(current_literal())){if(line=self.$tok(self.herebody_s,self.ts).$gsub(/r+$/,“”.$freeze()),$truthy(self(18,19,20))&&(line=line.$gsub(/r.*$/,“”.$freeze())),$truthy(current_literal.$nest_and_try_closing(line,self.herebody_s,self.ts))){self.herebody_s=self.te,p=$rb_minus(current_literal.$heredoc_e(),1),self.cs=self.$pop_literal(),p=$rb_plus(p,1),_goto_level=40;continue}current_literal.$infer_indent_level(line),self.herebody_s=self.te}else{if($truthy(current_literal.$nest_and_try_closing(self.$tok(),self.ts,self.te))){self.cs=self.$pop_literal(),p=$rb_plus(p,1),_goto_level=40;continue}$truthy(self.herebody_s)&&(p=$rb_minus(self.herebody_s,1),self.herebody_s=nil)}$truthy($truthy($b=current_literal())?self(self.source_pts[“$”](p))():$b)?current_literal.$extend_space(self.ts,self.te):(current_literal.$extend_string(self.$tok(),self.ts,self.te),current_literal.$flush_string())}else if(168($case)){if(self.te=$rb_plus(p,1),string=self.$tok(),$truthy($truthy($b=$rb_ge(self.version,22))?self.cond()[“$!”]():$b)&&(lookahead=self.source_buffer.$slice(Opal.Range.$new(self.te,$rb_plus(self.te,2),!0))),current_literal=self.$literal(),$truthy($truthy($b=current_literal()[“$!”]())?token=current_literal.$nest_and_try_closing(string,self.ts,self.te,lookahead):$b)){token[“$”](0)(“tLABEL_END”)?(p=$rb_plus(p,1),self.$pop_literal(),self.cs=752):self.cs=self.$pop_literal(),p=$rb_plus(p,1),_goto_level=40;continue}current_literal.$extend_string(string,self.ts,self.te)}else{if(173($case)){p=$rb_minus(self.te=p,1),(current_literal=self.$literal()).$flush_string(),current_literal.$extend_content(),self.$emit(“tSTRING_DVAR”,nil,self.ts,$rb_plus(self.ts,1)),p=self.ts,$writer=,$send(self.stack,“[]=”,Opal.to_a($writer)),$writer,self.top=$rb_plus(self.top,1),self.cs=320,_goto_level=20;continue}if(171($case)){if(p=$rb_minus(self.te=p,1),string=self.$tok(),$truthy($truthy($b=$rb_ge(self.version,22))?self.cond()[“$!”]():$b)&&(lookahead=self.source_buffer.$slice(Opal.Range.$new(self.te,$rb_plus(self.te,2),!0))),current_literal=self.$literal(),$truthy($truthy($b=current_literal()[“$!”]())?token=current_literal.$nest_and_try_closing(string,self.ts,self.te,lookahead):$b)){token[“$”](0)(“tLABEL_END”)?(p=$rb_plus(p,1),self.$pop_literal(),self.cs=752):self.cs=self.$pop_literal(),p=$rb_plus(p,1),_goto_level=40;continue}current_literal.$extend_string(string,self.ts,self.te)}else if(12($case)){if(p=$rb_minus(self.te,1),string=self.$tok(),$truthy($truthy($b=$rb_ge(self.version,22))?self.cond()[“$!”]():$b)&&(lookahead=self.source_buffer.$slice(Opal.Range.$new(self.te,$rb_plus(self.te,2),!0))),current_literal=self.$literal(),$truthy($truthy($b=current_literal()[“$!”]())?token=current_literal.$nest_and_try_closing(string,self.ts,self.te,lookahead):$b)){token[“$”](0)(“tLABEL_END”)?(p=$rb_plus(p,1),self.$pop_literal(),self.cs=752):self.cs=self.$pop_literal(),p=$rb_plus(p,1),_goto_level=40;continue}current_literal.$extend_string(string,self.ts,self.te)}else if(175($case)){if(self.te=$rb_plus(p,1),current_literal=self.$literal(),self.te(pe)&&self.$diagnostic(“fatal”,“string_eof”,nil,self.$range(current_literal.$str_s(),$rb_plus(current_literal.$str_s(),1))),$truthy(current_literal())){if(line=self.$tok(self.herebody_s,self.ts).$gsub(/r+$/,“”.$freeze()),$truthy(self(18,19,20))&&(line=line.$gsub(/r.*$/,“”.$freeze())),$truthy(current_literal.$nest_and_try_closing(line,self.herebody_s,self.ts))){self.herebody_s=self.te,p=$rb_minus(current_literal.$heredoc_e(),1),self.cs=self.$pop_literal(),p=$rb_plus(p,1),_goto_level=40;continue}current_literal.$infer_indent_level(line),self.herebody_s=self.te}else{if($truthy(current_literal.$nest_and_try_closing(self.$tok(),self.ts,self.te))){self.cs=self.$pop_literal(),p=$rb_plus(p,1),_goto_level=40;continue}$truthy(self.herebody_s)&&(p=$rb_minus(self.herebody_s,1),self.herebody_s=nil)}$truthy($truthy($b=current_literal())?self(self.source_pts[“$”](p))():$b)?current_literal.$extend_space(self.ts,self.te):(current_literal.$extend_string(self.$tok(),self.ts,self.te),current_literal.$flush_string())}else if(174($case)){if(self.te=$rb_plus(p,1),string=self.$tok(),$truthy($truthy($b=$rb_ge(self.version,22))?self.cond()[“$!”]():$b)&&(lookahead=self.source_buffer.$slice(Opal.Range.$new(self.te,$rb_plus(self.te,2),!0))),current_literal=self.$literal(),$truthy($truthy($b=current_literal()[“$!”]())?token=current_literal.$nest_and_try_closing(string,self.ts,self.te,lookahead):$b)){token[“$”](0)(“tLABEL_END”)?(p=$rb_plus(p,1),self.$pop_literal(),self.cs=752):self.cs=self.$pop_literal(),p=$rb_plus(p,1),_goto_level=40;continue}current_literal.$extend_string(string,self.ts,self.te)}else{if(182($case)){self.te=$rb_plus(p,1),(current_literal=self.$literal()).$flush_string(),current_literal.$extend_content(),self.$emit(“tSTRING_DBEG”,“#{”.$freeze()),$truthy(current_literal())&&($writer=,$send(current_literal,“saved_herebody_s=”,Opal.to_a($writer)),$writer,self.herebody_s=nil),current_literal.$start_interp_brace(),self.cs=759,p=$rb_plus(p,1),_goto_level=40;continue}if(15($case)){self.te=$rb_plus(p,1),(current_literal=self.$literal()).$flush_string(),current_literal.$extend_content(),self.$emit(“tSTRING_DVAR”,nil,self.ts,$rb_plus(self.ts,1)),p=self.ts,$writer=,$send(self.stack,“[]=”,Opal.to_a($writer)),$writer,self.top=$rb_plus(self.top,1),self.cs=320,_goto_level=20;continue}if(178($case)){if(self.te=$rb_plus(p,1),current_literal=self.$literal(),self.te(pe)&&self.$diagnostic(“fatal”,“string_eof”,nil,self.$range(current_literal.$str_s(),$rb_plus(current_literal.$str_s(),1))),$truthy(current_literal())){if(line=self.$tok(self.herebody_s,self.ts).$gsub(/r+$/,“”.$freeze()),$truthy(self(18,19,20))&&(line=line.$gsub(/r.*$/,“”.$freeze())),$truthy(current_literal.$nest_and_try_closing(line,self.herebody_s,self.ts))){self.herebody_s=self.te,p=$rb_minus(current_literal.$heredoc_e(),1),self.cs=self.$pop_literal(),p=$rb_plus(p,1),_goto_level=40;continue}current_literal.$infer_indent_level(line),self.herebody_s=self.te}else{if($truthy(current_literal.$nest_and_try_closing(self.$tok(),self.ts,self.te))){self.cs=self.$pop_literal(),p=$rb_plus(p,1),_goto_level=40;continue}$truthy(self.herebody_s)&&(p=$rb_minus(self.herebody_s,1),self.herebody_s=nil)}$truthy($truthy($b=current_literal())?self(self.source_pts[“$”](p))():$b)?current_literal.$extend_space(self.ts,self.te):(current_literal.$extend_string(self.$tok(),self.ts,self.te),current_literal.$flush_string())}else if(177($case)){if(self.te=$rb_plus(p,1),string=self.$tok(),$truthy($truthy($b=$rb_ge(self.version,22))?self.cond()[“$!”]():$b)&&(lookahead=self.source_buffer.$slice(Opal.Range.$new(self.te,$rb_plus(self.te,2),!0))),current_literal=self.$literal(),$truthy($truthy($b=current_literal()[“$!”]())?token=current_literal.$nest_and_try_closing(string,self.ts,self.te,lookahead):$b)){token[“$”](0)(“tLABEL_END”)?(p=$rb_plus(p,1),self.$pop_literal(),self.cs=752):self.cs=self.$pop_literal(),p=$rb_plus(p,1),_goto_level=40;continue}current_literal.$extend_string(string,self.ts,self.te)}else{if(183($case)){p=$rb_minus(self.te=p,1),(current_literal=self.$literal()).$flush_string(),current_literal.$extend_content(),self.$emit(“tSTRING_DVAR”,nil,self.ts,$rb_plus(self.ts,1)),p=self.ts,$writer=,$send(self.stack,“[]=”,Opal.to_a($writer)),$writer,self.top=$rb_plus(self.top,1),self.cs=320,_goto_level=20;continue}if(180($case))p=$rb_minus(self.te=p,1),self.$literal().$extend_space(self.ts,self.te);else if(181($case)){if(p=$rb_minus(self.te=p,1),string=self.$tok(),$truthy($truthy($b=$rb_ge(self.version,22))?self.cond()[“$!”]():$b)&&(lookahead=self.source_buffer.$slice(Opal.Range.$new(self.te,$rb_plus(self.te,2),!0))),current_literal=self.$literal(),$truthy($truthy($b=current_literal()[“$!”]())?token=current_literal.$nest_and_try_closing(string,self.ts,self.te,lookahead):$b)){token[“$”](0)(“tLABEL_END”)?(p=$rb_plus(p,1),self.$pop_literal(),self.cs=752):self.cs=self.$pop_literal(),p=$rb_plus(p,1),_goto_level=40;continue}current_literal.$extend_string(string,self.ts,self.te)}else if(14($case)){if(p=$rb_minus(self.te,1),string=self.$tok(),$truthy($truthy($b=$rb_ge(self.version,22))?self.cond()[“$!”]():$b)&&(lookahead=self.source_buffer.$slice(Opal.Range.$new(self.te,$rb_plus(self.te,2),!0))),current_literal=self.$literal(),$truthy($truthy($b=current_literal()[“$!”]())?token=current_literal.$nest_and_try_closing(string,self.ts,self.te,lookahead):$b)){token[“$”](0)(“tLABEL_END”)?(p=$rb_plus(p,1),self.$pop_literal(),self.cs=752):self.cs=self.$pop_literal(),p=$rb_plus(p,1),_goto_level=40;continue}current_literal.$extend_string(string,self.ts,self.te)}else if(185($case)){if(self.te=$rb_plus(p,1),current_literal=self.$literal(),self.te(pe)&&self.$diagnostic(“fatal”,“string_eof”,nil,self.$range(current_literal.$str_s(),$rb_plus(current_literal.$str_s(),1))),$truthy(current_literal())){if(line=self.$tok(self.herebody_s,self.ts).$gsub(/r+$/,“”.$freeze()),$truthy(self(18,19,20))&&(line=line.$gsub(/r.*$/,“”.$freeze())),$truthy(current_literal.$nest_and_try_closing(line,self.herebody_s,self.ts))){self.herebody_s=self.te,p=$rb_minus(current_literal.$heredoc_e(),1),self.cs=self.$pop_literal(),p=$rb_plus(p,1),_goto_level=40;continue}current_literal.$infer_indent_level(line),self.herebody_s=self.te}else{if($truthy(current_literal.$nest_and_try_closing(self.$tok(),self.ts,self.te))){self.cs=self.$pop_literal(),p=$rb_plus(p,1),_goto_level=40;continue}$truthy(self.herebody_s)&&(p=$rb_minus(self.herebody_s,1),self.herebody_s=nil)}$truthy($truthy($b=current_literal())?self(self.source_pts[“$”](p))():$b)?current_literal.$extend_space(self.ts,self.te):(current_literal.$extend_string(self.$tok(),self.ts,self.te),current_literal.$flush_string())}else if(184($case)){if(self.te=$rb_plus(p,1),string=self.$tok(),$truthy($truthy($b=$rb_ge(self.version,22))?self.cond()[“$!”]():$b)&&(lookahead=self.source_buffer.$slice(Opal.Range.$new(self.te,$rb_plus(self.te,2),!0))),current_literal=self.$literal(),$truthy($truthy($b=current_literal()[“$!”]())?token=current_literal.$nest_and_try_closing(string,self.ts,self.te,lookahead):$b)){token[“$”](0)(“tLABEL_END”)?(p=$rb_plus(p,1),self.$pop_literal(),self.cs=752):self.cs=self.$pop_literal(),p=$rb_plus(p,1),_goto_level=40;continue}current_literal.$extend_string(string,self.ts,self.te)}else if(187($case))p=$rb_minus(self.te=p,1),self.$literal().$extend_space(self.ts,self.te);else{if(188($case)){self.te=$rb_plus(p,1),self.$emit(“tREGEXP_OPT”,self.$tok(self.ts,$rb_minus(self.te,1)),self.ts,$rb_minus(self.te,1)),p=$rb_minus(p,1),self.cs=767,_goto_level=20;continue}if(189($case)){p=$rb_minus(self.te=p,1),unknown_options=self.$tok().$scan(//),$truthy(unknown_options())&&self.$diagnostic(“error”,“regexp_options”,$hash2(,{options:unknown_options.$join()})),self.$emit(“tREGEXP_OPT”),self.cs=767,p=$rb_plus(p,1),_goto_level=40;continue}if(16($case)){self.te=$rb_plus(p,1),$truthy(self.$tok()(/^$([1-9]*)$/))?self.$emit(“tNTH_REF”,self.$tok($rb_plus(self.ts,1)).$to_i()):$truthy(self.$tok()(/^$([&`'+])$/))?self.$emit(“tBACK_REF”):self.$emit(“tGVAR”),self.cs=self.$stack_pop(),p=$rb_plus(p,1),_goto_level=40;continue}if(190($case)){p=$rb_minus(self.te=p,1),$truthy(self.$tok()(/^$([1-9]*)$/))?self.$emit(“tNTH_REF”,self.$tok($rb_plus(self.ts,1)).$to_i()):$truthy(self.$tok()(/^$([&`'+])$/))?self.$emit(“tBACK_REF”):self.$emit(“tGVAR”),self.cs=self.$stack_pop(),p=$rb_plus(p,1),_goto_level=40;continue}if(192($case)){p=$rb_minus(self.te=p,1),$truthy(self.$tok()(/^@@[0-9]/))&&self.$diagnostic(“error”,“cvar_name”,$hash2(,{name:self.$tok()})),self.$emit(“tCVAR”),self.cs=self.$stack_pop(),p=$rb_plus(p,1),_goto_level=40;continue}if(191($case)){p=$rb_minus(self.te=p,1),$truthy(self.$tok()(/^@[0-9]/))&&self.$diagnostic(“error”,“ivar_name”,$hash2(,{name:self.$tok()})),self.$emit(“tIVAR”),self.cs=self.$stack_pop(),p=$rb_plus(p,1),_goto_level=40;continue}if(213($case)){self.te=$rb_plus(p,1),self.$emit_table($$($nesting,“KEYWORDS_BEGIN”)),self.cs=438,p=$rb_plus(p,1),_goto_level=40;continue}if(199($case)){self.te=$rb_plus(p,1),self.$emit(“tIDENTIFIER”),self.cs=438,p=$rb_plus(p,1),_goto_level=40;continue}if(18($case)){self.te=$rb_plus(p,1),p=$rb_minus(self.ts,1),self.cs=767,$writer=,$send(self.stack,“[]=”,Opal.to_a($writer)),$writer,self.top=$rb_plus(self.top,1),self.cs=320,_goto_level=20;continue}if(196($case)){self.te=$rb_plus(p,1),self.$emit_table($$($nesting,“PUNCTUATION”)),self.cs=438,p=$rb_plus(p,1),_goto_level=40;continue}if(208($case)){self.te=$rb_plus(p,1),p=$rb_minus(p=$rb_minus(p,1),1),self.cs=767,_goto_level=20;continue}if(20($case)){if(self.te=$rb_plus(p,1),$truthy(self(23))){type=($b=[self.$tok()[“$”]($range(0,-2,!1)),self.$tok()[“$”](-1).$chr()]),delimiter=$b,self.cs=self.$push_literal(type,delimiter,self.ts),_goto_level=20;continue}p=$rb_minus(self.ts,1),self.cs=767,_goto_level=20;continue}if(195($case)){self.te=$rb_plus(p,1),p=$rb_minus(p,1),self.cs=767,_goto_level=20;continue}if(194($case)){self.te=$rb_plus(p,1),p=$rb_plus(p=$rb_minus(p,1),1),_goto_level=40;continue}if(212($case)){p=$rb_minus(self.te=p,1),self.$emit_table($$($nesting,“KEYWORDS_BEGIN”)),self.cs=438,p=$rb_plus(p,1),_goto_level=40;continue}if(209($case)){p=$rb_minus(self.te=p,1),self.$emit(“tCONSTANT”),self.cs=438,p=$rb_plus(p,1),_goto_level=40;continue}if(211($case)){p=$rb_minus(self.te=p,1),self.$emit(“tIDENTIFIER”),self.cs=438,p=$rb_plus(p,1),_goto_level=40;continue}if(206($case)){p=$rb_minus(self.te=p,1),p=$rb_minus(self.ts,1),self.cs=767,$writer=,$send(self.stack,“[]=”,Opal.to_a($writer)),$writer,self.top=$rb_plus(self.top,1),self.cs=320,_goto_level=20;continue}if(202($case)){p=$rb_minus(self.te=p,1),self.$emit_table($$($nesting,“PUNCTUATION”)),self.cs=438,p=$rb_plus(p,1),_goto_level=40;continue}if(207($case)){p=$rb_minus(p=$rb_minus(self.te=p,1),1),self.cs=535,_goto_level=20;continue}if(200($case))p=$rb_minus(self.te=p,1);else{if(205($case)){p=$rb_minus(p=$rb_minus(self.te=p,1),1),self.cs=767,_goto_level=20;continue}if(19($case)){p=$rb_minus(self.te,1),self.$emit_table($$($nesting,“PUNCTUATION”)),self.cs=438,p=$rb_plus(p,1),_goto_level=40;continue}if(17($case)){p=$rb_minus(p=$rb_minus(self.te,1),1),self.cs=767,_goto_level=20;continue}if(198($case)){if($case=self.act,39($case)){p=$rb_minus(self.te,1),self.$emit_table($$($nesting,“KEYWORDS_BEGIN”)),self.cs=438,p=$rb_plus(p,1),_goto_level=40;continue}if(40($case)){p=$rb_minus(self.te,1),self.$emit(“tCONSTANT”),self.cs=438,p=$rb_plus(p,1),_goto_level=40;continue}if(41($case)){p=$rb_minus(self.te,1),self.$emit(“tIDENTIFIER”),self.cs=438,p=$rb_plus(p,1),_goto_level=40;continue}}else{if(22($case)){self.te=$rb_plus(p,1),self.$emit(“tLABEL”,self.$tok(self.ts,$rb_minus(self.te,2)),self.ts,$rb_minus(self.te,1)),p=$rb_minus(p,1),self.cs=752,p=$rb_plus(p,1),_goto_level=40;continue}if(215($case)){self.te=$rb_plus(p,1),p=$rb_minus(p,1),self.cs=767,_goto_level=20;continue}if(214($case)){self.te=$rb_plus(p,1),p=$rb_plus(p=$rb_minus(p,1),1),_goto_level=40;continue}if(217($case))p=$rb_minus(self.te=p,1);else{if(216($case)){p=$rb_minus(p=$rb_minus(self.te=p,1),1),self.cs=767,_goto_level=20;continue}if(21($case)){p=$rb_minus(p=$rb_minus(self.te,1),1),self.cs=767,_goto_level=20;continue}if(223($case)){self.te=$rb_plus(p,1),self.$emit_table($$($nesting,“PUNCTUATION”)),self.cs=466,p=$rb_plus(p,1),_goto_level=40;continue}if(222($case)){self.te=$rb_plus(p,1),p=$rb_minus(p,1),self.cs=767,_goto_level=20;continue}if(221($case)){self.te=$rb_plus(p,1),p=$rb_plus(p=$rb_minus(p,1),1),_goto_level=40;continue}if(233($case)){p=$rb_minus(self.te=p,1),self.$emit(“tCONSTANT”),self.cs=self.$arg_or_cmdarg(),p=$rb_plus(p,1),_goto_level=40;continue}if(224($case)){p=$rb_minus(self.te=p,1),self.$emit(“tIDENTIFIER”),self.cs=self.$arg_or_cmdarg(),p=$rb_plus(p,1),_goto_level=40;continue}if(229($case)){p=$rb_minus(self.te=p,1),self.$emit_table($$($nesting,“PUNCTUATION”)),self.cs=466,p=$rb_plus(p,1),_goto_level=40;continue}if(227($case))p=$rb_minus(self.te=p,1);else{if(232($case)){p=$rb_minus(p=$rb_minus(self.te=p,1),1),self.cs=767,_goto_level=20;continue}if(256($case)){self.te=$rb_plus(p,1),p=$rb_minus(self.ts,1),self.cs=767,_goto_level=20;continue}if(239($case)){self.te=$rb_plus(p,1),self.$tok(tm,$rb_plus(tm,1))(“/”.$freeze())&&self.$diagnostic(“warning”,“ambiguous_literal”,nil,self.$range(tm,$rb_plus(tm,1))),p=$rb_minus(tm,1),self.cs=535,_goto_level=20;continue}if(245($case)){self.te=$rb_plus(p,1),p=$rb_minus(p=$rb_minus(p,1),1),self.cs=535,_goto_level=20;continue}if(24($case)){self.te=$rb_plus(p,1),p=$rb_minus(self.ts,1),self.cs=535,_goto_level=20;continue}if(247($case)){self.te=$rb_plus(p,1),p=$rb_minus(tm,1),self.cs=767,_goto_level=20;continue}if(39($case)){self.te=$rb_plus(p,1),p=$rb_minus(self.ts,1),self.cs=767,_goto_level=20;continue}if(234($case)){self.te=$rb_plus(p,1),p=$rb_minus(p,1),self.cs=535,_goto_level=20;continue}if(235($case)){self.te=$rb_plus(p,1),p=$rb_plus(p=$rb_minus(p,1),1),_goto_level=40;continue}if(246($case)){p=$rb_minus(p=$rb_minus(self.te=p,1),1),self.cs=535,_goto_level=20;continue}if(242($case)){p=$rb_minus(self.te=p,1),self.$diagnostic(“warning”,“ambiguous_prefix”,$hash2(,{prefix:self.$tok(tm,self.te)}),self.$range(tm,self.te)),p=$rb_minus(tm,1),self.cs=535,_goto_level=20;continue}if(244($case)){p=$rb_minus(p=$rb_minus(self.te=p,1),1),self.cs=535,_goto_level=20;continue}if(238($case)){p=$rb_minus(self.te=p,1),p=$rb_minus(self.ts,1),self.cs=767,_goto_level=20;continue}if(237($case))p=$rb_minus(self.te=p,1);else{if(255($case)){p=$rb_minus(p=$rb_minus(self.te=p,1),1),self.cs=535,_goto_level=20;continue}if(25($case))p=$rb_minus(self.te,1);else{if(41($case)){p=$rb_minus(p=$rb_minus(self.te,1),1),self.cs=535,_goto_level=20;continue}if(23($case)){if($case=self.act,67($case)){p=$rb_minus(self.te,1),self.$tok(tm,$rb_plus(tm,1))(“/”.$freeze())&&self.$diagnostic(“warning”,“ambiguous_literal”,nil,self.$range(tm,$rb_plus(tm,1))),p=$rb_minus(tm,1),self.cs=535,_goto_level=20;continue}if(68($case)){p=$rb_minus(self.te,1),self.$diagnostic(“warning”,“ambiguous_prefix”,$hash2(,{prefix:self.$tok(tm,self.te)}),self.$range(tm,self.te)),p=$rb_minus(tm,1),self.cs=535,_goto_level=20;continue}if(73($case)){p=$rb_minus(self.te,1),p=$rb_minus(self.ts,1),self.cs=767,_goto_level=20;continue}p=$rb_minus(self.te,1)}else{if(43($case)){self.te=$rb_plus(p,1),p=$rb_minus(self.ts,1),self.cs=466,_goto_level=20;continue}if(260($case)){self.te=$rb_plus(p,1),p=$rb_plus(p=$rb_minus(p,1),1),_goto_level=40;continue}if(261($case)){p=$rb_minus(self.te=p,1),p=$rb_minus(self.ts,1),self.cs=466,_goto_level=20;continue}if(44($case)){p=$rb_minus(self.te,1),p=$rb_minus(self.ts,1),self.cs=466,_goto_level=20;continue}if(42($case)){if($case=self.act,80($case)){p=$rb_minus(self.te,1),$truthy(self.cond())?self.$emit(“kDO_COND”,“do”.$freeze(),$rb_minus(self.te,2),self.te):self.$emit(“kDO”,“do”.$freeze(),$rb_minus(self.te,2),self.te),self.cs=759,p=$rb_plus(p,1),_goto_level=40;continue}if(81($case)){p=$rb_minus(self.te,1),p=$rb_minus(self.ts,1),self.cs=466,_goto_level=20;continue}}else{if(271($case)){self.te=$rb_plus(p,1),self.$emit_do(!0),self.cs=759,p=$rb_plus(p,1),_goto_level=40;continue}if(264($case)){self.te=$rb_plus(p,1),p=$rb_minus(p,1),self.cs=767,_goto_level=20;continue}if(265($case)){self.te=$rb_plus(p,1),p=$rb_plus(p=$rb_minus(p,1),1),_goto_level=40;continue}if(266($case))p=$rb_minus(self.te=p,1);else{if(269($case)){p=$rb_minus(p=$rb_minus(self.te=p,1),1),self.cs=767,_goto_level=20;continue}if(275($case)){self.te=$rb_plus(p,1),p=$rb_minus(p,1),self.cs=535,_goto_level=20;continue}if(274($case)){self.te=$rb_plus(p,1),p=$rb_plus(p=$rb_minus(p,1),1),_goto_level=40;continue}if(283($case)){p=$rb_minus(self.te=p,1),p=$rb_minus(self.ts,1),self.cs=535,_goto_level=20;continue}if(277($case))p=$rb_minus(self.te=p,1);else{if(281($case)){p=$rb_minus(p=$rb_minus(self.te=p,1),1),self.cs=535,_goto_level=20;continue}if(276($case)){if($case=self.act,88($case)){p=$rb_minus(self.te,1),self.$emit_table($$($nesting,“KEYWORDS”)),self.cs=535,p=$rb_plus(p,1),_goto_level=40;continue}if(89($case)){p=$rb_minus(self.te,1),p=$rb_minus(self.ts,1),self.cs=535,_goto_level=20;continue}}else{if(56($case)){self.te=$rb_plus(p,1),self.$emit(“tUNARY_NUM”,self.$tok(self.ts,$rb_plus(self.ts,1)),self.ts,$rb_plus(self.ts,1)),p=$rb_minus(p,1),self.cs=767,p=$rb_plus(p,1),_goto_level=40;continue}if(314($case)){self.te=$rb_plus(p,1),type=delimiter=self.$tok()[“$”](0).$chr(),p=$rb_minus(p,1),self.cs=self.$push_literal(type,delimiter,self.ts),_goto_level=20;continue}if(308($case)){self.te=$rb_plus(p,1),type=($b=[self.source_buffer.$slice(self.ts).$chr(),self.$tok()[“$”](-1).$chr()]),delimiter=$b,self.cs=self.$push_literal(type,delimiter,self.ts),_goto_level=20;continue}if(54($case)){self.te=$rb_plus(p,1),type=($b=[self.$tok()[“$”]($range(0,-2,!1)),self.$tok()[“$”](-1).$chr()]),delimiter=$b,self.cs=self.$push_literal(type,delimiter,self.ts),_goto_level=20;continue}if(327($case)){self.te=$rb_plus(p,1),p=$rb_minus(p=$rb_minus(p,1),1),self.$emit(“tSYMBEG”,self.$tok(self.ts,$rb_plus(self.ts,1)),self.ts,$rb_plus(self.ts,1)),self.cs=325,_goto_level=20;continue}if(315($case)){self.te=$rb_plus(p,1),type=($b=[self.$tok(),self.$tok()[“$”](-1).$chr()]),delimiter=$b,self.cs=self.$push_literal(type,delimiter,self.ts),_goto_level=20;continue}if(326($case)){self.te=$rb_plus(p,1),self.$emit(“tSYMBOL”,self.$tok($rb_plus(self.ts,1),$rb_plus(self.ts,2))),self.cs=767,p=$rb_plus(p,1),_goto_level=40;continue}if(68($case)){self.te=$rb_plus(p,1),self.$emit(“tSYMBOL”,self.$tok($rb_plus(self.ts,1)),self.ts),self.cs=767,p=$rb_plus(p,1),_goto_level=40;continue}if(331($case)){self.te=$rb_plus(p,1),escape=$hash2([“ ”,“r”,“n”,“t”,“v”,“f”],{“ ”:“\s”,“r”:“\r”,“n”:“\n”,“t”:“\t”,“v”:“\v”,“f”:“\f”})[“$[]”](self.source_buffer.$slice($rb_plus(self.ts,1))),self.$diagnostic(“warning”,“invalid_escape_use”,$hash2(,{escape:escape}),self.$range()),p=$rb_minus(self.ts,1),self.cs=767,_goto_level=20;continue}if(330($case))self.te=$rb_plus(p,1),self.$diagnostic(“fatal”,“incomplete_escape”,nil,self.$range(self.ts,$rb_plus(self.ts,1)));else{if(316($case)){self.te=$rb_plus(p,1),self.$emit_table($$($nesting,“PUNCTUATION_BEGIN”)),p=$rb_plus(p,1),_goto_level=40;continue}if(51($case)){self.te=$rb_plus(p,1),p=$rb_minus(p,1),$truthy(self(18))?(ident=self.$tok(self.ts,$rb_minus(self.te,2)),self.$emit($truthy(self.source_buffer.$slice(self.ts)(/[A-Z]/))?“tCONSTANT”:“tIDENTIFIER”,ident,self.ts,$rb_minus(self.te,2)),p=$rb_minus(p,1),$truthy($truthy($b=self.static_env()[“$!”]())?self.static_env(ident):$b)?self.cs=767:self.cs=self.$arg_or_cmdarg()):(self.$emit(“tLABEL”,self.$tok(self.ts,$rb_minus(self.te,2)),self.ts,$rb_minus(self.te,1)),self.cs=752),p=$rb_plus(p,1),_goto_level=40;continue}if(48($case)){self.te=$rb_plus(p,1),self.$emit(“tIDENTIFIER”,ident_tok,ident_ts,ident_te),p=$rb_minus(ident_te,1),$truthy($truthy($b=$truthy($c=self.static_env()[“$!”]())?self.static_env(ident_tok):$c)?$rb_lt(self.version,25):$b)?self.cs=438:self.cs=497,p=$rb_plus(p,1),_goto_level=40;continue}if(302($case)){self.te=$rb_plus(p,1),p=$rb_minus(self.ts,1),self.cs_before_block_comment=self.cs,self.cs=181,_goto_level=20;continue}if(55($case)){self.te=$rb_plus(p,1),p=$rb_minus(self.ts,1),self.cs=767,_goto_level=20;continue}if(286($case)){self.te=$rb_plus(p,1),p=$rb_plus(p=$rb_minus(p,1),1),_goto_level=40;continue}if(313($case)){p=$rb_minus(self.te=p,1),self.$emit(“tUNARY_NUM”,self.$tok(self.ts,$rb_plus(self.ts,1)),self.ts,$rb_plus(self.ts,1)),p=$rb_minus(p,1),self.cs=767,p=$rb_plus(p,1),_goto_level=40;continue}if(312($case)){p=$rb_minus(self.te=p,1),self.$emit(“tSTAR”,“*”.$freeze()),p=$rb_plus(p,1),_goto_level=40;continue}if(309($case)){p=$rb_minus(self.te=p,1),type=($b=[self.$tok()[“$”]($range(0,-2,!1)),self.$tok()[“$”](-1).$chr()]),delimiter=$b,self.cs=self.$push_literal(type,delimiter,self.ts),_goto_level=20;continue}if(307($case))p=$rb_minus(self.te=p,1),self.$diagnostic(“fatal”,“string_eof”,nil,self.$range(self.ts,$rb_plus(self.ts,1)));else{if(317($case)){p=$rb_minus(self.te=p,1),self.$emit(“tSYMBOL”,self.$tok($rb_plus(self.ts,1)),self.ts),self.cs=767,p=$rb_plus(p,1),_goto_level=40;continue}if(329($case))p=$rb_minus(self.te=p,1),self.$diagnostic(“fatal”,“incomplete_escape”,nil,self.$range(self.ts,$rb_plus(self.ts,1)));else{if(335($case)){p=$rb_minus(self.te=p,1),p=$rb_minus(self.ts,1),self.cs=767,_goto_level=20;continue}if(310($case)){p=$rb_minus(self.te=p,1),self.$emit_table($$($nesting,“PUNCTUATION_BEGIN”)),p=$rb_plus(p,1),_goto_level=40;continue}if(289($case)){if(p=$rb_minus(self.te=p,1),self.$emit(“tIDENTIFIER”),$truthy($truthy($b=self.static_env()[“$!”]())?self.static_env(self.$tok()):$b)){self.cs=438,p=$rb_plus(p,1),_goto_level=40;continue}self.cs=self.$arg_or_cmdarg(),p=$rb_plus(p,1),_goto_level=40;continue}if(299($case))p=$rb_minus(self.te=p,1);else{if(301($case)){p=$rb_minus(self.te=p,1),p=$rb_minus(self.ts,1),self.cs_before_block_comment=self.cs,self.cs=181,_goto_level=20;continue}if(304($case)){p=$rb_minus(self.te=p,1),p=$rb_minus(self.ts,1),self.cs=767,_goto_level=20;continue}if(53($case))p=$rb_minus(self.te,1),self.$diagnostic(“fatal”,“string_eof”,nil,self.$range(self.ts,$rb_plus(self.ts,1)));else{if(71($case)){p=$rb_minus(self.te,1),value=$truthy($b=self.escape)?$b:self.$tok($rb_plus(self.ts,1)),$truthy(self(18))?self.$emit(“tINTEGER”,value.$getbyte(0)):self.$emit(“tCHARACTER”,value),self.cs=767,p=$rb_plus(p,1),_goto_level=40;continue}if(47($case)){if(p=$rb_minus(self.te,1),self.$emit(“tIDENTIFIER”),$truthy($truthy($b=self.static_env()[“$!”]())?self.static_env(self.$tok()):$b)){self.cs=438,p=$rb_plus(p,1),_goto_level=40;continue}self.cs=self.$arg_or_cmdarg(),p=$rb_plus(p,1),_goto_level=40;continue}if(52($case))p=$rb_minus(self.te,1);else{if(67($case)){p=$rb_minus(self.te,1),p=$rb_minus(self.ts,1),self.cs=767,_goto_level=20;continue}if(50($case)){if($case=self.act,94($case)){p=$rb_minus(self.te,1),self.$emit(“tUNARY_NUM”,self.$tok(self.ts,$rb_plus(self.ts,1)),self.ts,$rb_plus(self.ts,1)),p=$rb_minus(p,1),self.cs=767,p=$rb_plus(p,1),_goto_level=40;continue}if(113($case)){p=$rb_minus(self.te,1),self.$emit_table($$($nesting,“PUNCTUATION_BEGIN”)),p=$rb_plus(p,1),_goto_level=40;continue}if(114($case)){p=$rb_minus(self.te,1),self.$emit(“kRESCUE”,“rescue”.$freeze(),self.ts,tm),p=$rb_minus(tm,1),self.cs=511,p=$rb_plus(p,1),_goto_level=40;continue}if(115($case)){p=$rb_minus(self.te,1),self.$emit_table($$($nesting,“KEYWORDS_BEGIN”)),self.cs=759,p=$rb_plus(p,1),_goto_level=40;continue}if(117($case)){p=$rb_minus(self.te,1),p=$rb_minus(self.ts,1),self.cs=767,_goto_level=20;continue}if(118($case)){if(p=$rb_minus(self.te,1),self.$emit(“tIDENTIFIER”),$truthy($truthy($b=self.static_env()[“$!”]())?self.static_env(self.$tok()):$b)){self.cs=438,p=$rb_plus(p,1),_goto_level=40;continue}self.cs=self.$arg_or_cmdarg(),p=$rb_plus(p,1),_goto_level=40;continue}if(122($case)){p=$rb_minus(self.te,1),p=$rb_minus(self.ts,1),self.cs=767,_goto_level=20;continue}}else{if(365($case)){self.te=$rb_plus(p,1),p=$rb_minus(p,1),self.cs=535,_goto_level=20;continue}if(366($case)){self.te=$rb_plus(p,1),p=$rb_plus(p=$rb_minus(p,1),1),_goto_level=40;continue}if(367($case))p=$rb_minus(self.te=p,1);else{if(371($case)){p=$rb_minus(p=$rb_minus(self.te=p,1),1),self.cs=535,_goto_level=20;continue}if(74($case)){self.te=$rb_plus(p,1),p=$rb_minus(self.ts,1),self.cs=767,_goto_level=20;continue}if(375($case)){self.te=$rb_plus(p,1),self.cs=self.$push_literal(self.$tok(),self.$tok(),self.ts),_goto_level=20;continue}if(374($case)){self.te=$rb_plus(p,1),p=$rb_minus(p,1),self.cs=535,_goto_level=20;continue}if(373($case)){self.te=$rb_plus(p,1),p=$rb_plus(p=$rb_minus(p,1),1),_goto_level=40;continue}if(377($case))p=$rb_minus(self.te=p,1);else{if(376($case)){p=$rb_minus(p=$rb_minus(self.te=p,1),1),self.cs=535,_goto_level=20;continue}if(73($case)){p=$rb_minus(p=$rb_minus(self.te,1),1),self.cs=535,_goto_level=20;continue}if(411($case)){self.te=$rb_plus(p,1),self.$emit(“tLAMBDA”,“->”.$freeze(),self.ts,$rb_plus(self.ts,2)),self.lambda_stack.$push(self.paren_nest),self.cs=438,p=$rb_plus(p,1),_goto_level=40;continue}if(83($case)){self.te=$rb_plus(p,1),self.$emit(“kCLASS”,“class”.$freeze(),self.ts,$rb_plus(self.ts,5)),self.$emit(“tLSHFT”,“<<”.$freeze(),$rb_minus(self.te,2),self.te),self.cs=759,p=$rb_plus(p,1),_goto_level=40;continue}if(385($case)){self.te=$rb_plus(p,1),type=($b=[self.$tok(),self.$tok()[“$”](-1).$chr()]),delimiter=$b,self.cs=self.$push_literal(type,delimiter,self.ts,nil,!1,!1,!0),_goto_level=20;continue}if(76($case)){self.te=$rb_plus(p,1),p=$rb_minus(self.ts,1),$writer=,$send(self.stack,“[]=”,Opal.to_a($writer)),$writer,self.top=$rb_plus(self.top,1),self.cs=320,_goto_level=20;continue}if(407($case)){self.te=$rb_plus(p,1),self.$emit_table($$($nesting,“PUNCTUATION”)),self.cs=445,p=$rb_plus(p,1),_goto_level=40;continue}if(459($case)){self.te=$rb_plus(p,1),self.$emit_table($$($nesting,“PUNCTUATION”)),self.cs=759,_goto_level=20;continue}if(400($case)){self.te=$rb_plus(p,1),self.$emit_table($$($nesting,“PUNCTUATION”)),self.cs=759,p=$rb_plus(p,1),_goto_level=40;continue}if(392($case)){self.te=$rb_plus(p,1),self.$emit_table($$($nesting,“PUNCTUATION”)),$truthy($rb_lt(self.version,24))?(self.cond.$lexpop(),self.cmdarg.$lexpop()):(self.cond.$pop(),self.cmdarg.$pop()),$truthy($truthy($b=self.$tok()(“}”.$freeze()))?$b:self.$tok()(“]”.$freeze()))&&($truthy($rb_ge(self.version,25))?self.cs=767:self.cs=503),p=$rb_plus(p,1),_goto_level=40;continue}if(405($case)){self.te=$rb_plus(p,1),self.$emit(“tOP_ASGN”,self.$tok(self.ts,$rb_minus(self.te,1))),self.cs=535,p=$rb_plus(p,1),_goto_level=40;continue}if(390($case)){self.te=$rb_plus(p,1),self.$emit(“tEH”,“?”.$freeze()),self.cs=759,p=$rb_plus(p,1),_goto_level=40;continue}if(387($case)){self.te=$rb_plus(p,1),self.$emit_table($$($nesting,“PUNCTUATION”)),self.cs=535,p=$rb_plus(p,1),_goto_level=40;continue}if(389($case)){self.te=$rb_plus(p,1),self.$emit(“tSEMI”,“;”.$freeze()),self.cs=759,p=$rb_plus(p,1),_goto_level=40;continue}if(464($case))self.te=$rb_plus(p,1),self.$diagnostic(“error”,“bare_backslash”,nil,self.$range(self.ts,$rb_plus(self.ts,1))),p=$rb_minus(p,1);else if(384($case))self.te=$rb_plus(p,1),self.$diagnostic(“fatal”,“unexpected”,$hash2(,{character:self.$tok().$inspect()[“$”]($range(1,-2,!1))}));else{if(383($case)){self.te=$rb_plus(p,1),p=$rb_plus(p=$rb_minus(p,1),1),_goto_level=40;continue}if(474($case)){p=$rb_minus(self.te=p,1),self.$emit_table($$($nesting,“KEYWORDS”)),self.cs=325,p=$rb_plus(p,1),_goto_level=40;continue}if(472($case)){p=$rb_minus(self.te=p,1),self.$emit(“kCLASS”,“class”.$freeze(),self.ts,$rb_plus(self.ts,5)),self.$emit(“tLSHFT”,“<<”.$freeze(),$rb_minus(self.te,2),self.te),self.cs=759,p=$rb_plus(p,1),_goto_level=40;continue}if(471($case)){p=$rb_minus(self.te=p,1),self.$emit_table($$($nesting,“KEYWORDS”)),self.cs=759,p=$rb_plus(p,1),_goto_level=40;continue}if(414($case))p=$rb_minus(self.te=p,1),self.$diagnostic(“error”,“no_dot_digit_literal”);else{if(461($case)){p=$rb_minus(self.te=p,1),self.$emit(“tCONSTANT”),self.cs=self.$arg_or_cmdarg(),p=$rb_plus(p,1),_goto_level=40;continue}if(404($case)){p=$rb_minus(self.te=p,1),p=$rb_minus(self.ts,1),$writer=,$send(self.stack,“[]=”,Opal.to_a($writer)),$writer,self.top=$rb_plus(self.top,1),self.cs=320,_goto_level=20;continue}if(412($case)){p=$rb_minus(self.te=p,1),self.$emit_table($$($nesting,“PUNCTUATION”)),self.cs=445,p=$rb_plus(p,1),_goto_level=40;continue}if(466($case)){if(p=$rb_minus(self.te=p,1),self.$emit(“tIDENTIFIER”),$truthy($truthy($b=self.static_env()[“$!”]())?self.static_env(self.$tok()):$b)){self.cs=438,p=$rb_plus(p,1),_goto_level=40;continue}self.cs=self.$arg_or_cmdarg(),p=$rb_plus(p,1),_goto_level=40;continue}if(410($case)){p=$rb_minus(self.te=p,1),self.$emit_table($$($nesting,“PUNCTUATION”)),self.cs=759,_goto_level=20;continue}if(406($case)){p=$rb_minus(self.te=p,1),self.$emit_table($$($nesting,“PUNCTUATION”)),self.cs=759,p=$rb_plus(p,1),_goto_level=40;continue}if(399($case)){p=$rb_minus(self.te=p,1),self.$emit_table($$($nesting,“PUNCTUATION”)),self.cs=535,p=$rb_plus(p,1),_goto_level=40;continue}if(413($case)){p=$rb_minus(self.te=p,1),self.$emit_table($$($nesting,“PUNCTUATION”)),self.cs=535,p=$rb_plus(p,1),_goto_level=40;continue}if(397($case))p=$rb_minus(self.te=p,1);else if(403($case))p=$rb_minus(self.te=p,1),self.$diagnostic(“fatal”,“unexpected”,$hash2(,{character:self.$tok().$inspect()[“$”]($range(1,-2,!1))}));else{if(81($case)){p=$rb_minus(self.te,1),digits=self.$tok(self.num_digits_s,self.num_suffix_s),$truthy(digits(“_”.$freeze()))?self.$diagnostic(“error”,“trailing_in_number”,$hash2(,{character:“_”.$freeze()}),self.$range($rb_minus(self.te,1),self.te)):$truthy($truthy($b=$truthy($c=digits())?self.num_base(8):$c)?self(18):$b)?digits=“0”.$freeze():$truthy(digits())?self.$diagnostic(“error”,“empty_numeric”):$truthy(($b=self.num_base(8))?invalid_idx=digits.$index(//):self.num_base(8))&&(invalid_s=$rb_plus(self.num_digits_s,invalid_idx),self.$diagnostic(“error”,“invalid_octal”,nil,self.$range(invalid_s,$rb_plus(invalid_s,1)))),$truthy(self(18,19,20))?(self.$emit(“tINTEGER”,digits.$to_i(self.num_base),self.ts,self.num_suffix_s),p=$rb_minus(self.num_suffix_s,1)):self.num_xfrm.$call(digits.$to_i(self.num_base)),p=$rb_plus(p,1),_goto_level=40;continue}if(77($case))p=$rb_minus(self.te,1),self.$diagnostic(“error”,“no_dot_digit_literal”);else{if(80($case)){p=$rb_minus(self.te,1),digits=self.$tok(self.ts,self.num_suffix_s),$truthy(self(18,19,20))?(self.$emit(“tFLOAT”,self.$Float(digits),self.ts,self.num_suffix_s),p=$rb_minus(self.num_suffix_s,1)):self.num_xfrm.$call(digits),p=$rb_plus(p,1),_goto_level=40;continue}if(75($case))p=$rb_minus(self.te,1),self.$diagnostic(“fatal”,“unexpected”,$hash2(,{character:self.$tok().$inspect()[“$”]($range(1,-2,!1))}));else if(78($case)){if($case=self.act,135($case)){p=$rb_minus(self.te,1),self.lambda_stack.$last()(self.paren_nest)?(self.lambda_stack.$pop(),self.$tok()(“{”.$freeze())?self.$emit(“tLAMBEG”,“{”.$freeze()):self.$emit(“kDO_LAMBDA”,“do”.$freeze())):self.$tok()(“{”.$freeze())?self.$emit(“tLCURLY”,“{”.$freeze()):self.$emit_do(),self.cs=759,p=$rb_plus(p,1),_goto_level=40;continue}if(136($case)){p=$rb_minus(self.te,1),self.$emit_table($$($nesting,“KEYWORDS”)),self.cs=325,p=$rb_plus(p,1),_goto_level=40;continue}if(137($case)){p=$rb_minus(self.te,1),self.$emit(“kCLASS”,“class”.$freeze(),self.ts,$rb_plus(self.ts,5)),self.$emit(“tLSHFT”,“<<”.$freeze(),$rb_minus(self.te,2),self.te),self.cs=759,p=$rb_plus(p,1),_goto_level=40;continue}if(138($case)){p=$rb_minus(self.te,1),self.$emit_table($$($nesting,“KEYWORDS”)),self.cs=535,p=$rb_plus(p,1),_goto_level=40;continue}if(139($case)){p=$rb_minus(self.te,1),self.$emit_table($$($nesting,“KEYWORDS”)),self.cs=759,p=$rb_plus(p,1),_goto_level=40;continue}if(140($case)){p=$rb_minus(self.te,1),self.$emit_table($$($nesting,“KEYWORDS”)),self.cs=511,p=$rb_plus(p,1),_goto_level=40;continue}if(141($case)){if(p=$rb_minus(self.te,1),self.$emit_table($$($nesting,“KEYWORDS”)),$truthy($truthy($b=self(18))?self.$tok()(“not”.$freeze()):$b)){self.cs=535,p=$rb_plus(p,1),_goto_level=40;continue}self.cs=466,p=$rb_plus(p,1),_goto_level=40;continue}if(142($case)){p=$rb_minus(self.te,1),$truthy(self(18))?(self.$emit(“tIDENTIFIER”),$truthy($truthy($b=self.static_env()[“$!”]())?self.static_env(self.$tok()):$b)||(self.cs=self.$arg_or_cmdarg())):self.$emit(“k__ENCODING__”,“__ENCODING__”.$freeze()),p=$rb_plus(p,1),_goto_level=40;continue}if(143($case)){p=$rb_minus(self.te,1),self.$emit_table($$($nesting,“KEYWORDS”)),p=$rb_plus(p,1),_goto_level=40;continue}if(144($case)){p=$rb_minus(self.te,1),digits=self.$tok(self.num_digits_s,self.num_suffix_s),$truthy(digits(“_”.$freeze()))?self.$diagnostic(“error”,“trailing_in_number”,$hash2(,{character:“_”.$freeze()}),self.$range($rb_minus(self.te,1),self.te)):$truthy($truthy($b=$truthy($c=digits())?self.num_base(8):$c)?self(18):$b)?digits=“0”.$freeze():$truthy(digits())?self.$diagnostic(“error”,“empty_numeric”):$truthy(($b=self.num_base(8))?invalid_idx=digits.$index(//):self.num_base(8))&&(invalid_s=$rb_plus(self.num_digits_s,invalid_idx),self.$diagnostic(“error”,“invalid_octal”,nil,self.$range(invalid_s,$rb_plus(invalid_s,1)))),$truthy(self(18,19,20))?(self.$emit(“tINTEGER”,digits.$to_i(self.num_base),self.ts,self.num_suffix_s),p=$rb_minus(self.num_suffix_s,1)):self.num_xfrm.$call(digits.$to_i(self.num_base)),p=$rb_plus(p,1),_goto_level=40;continue}if(146($case)){if(p=$rb_minus(self.te,1),!$truthy(self(18,19,20))){self.$emit(“tINTEGER”,self.$tok(self.ts,$rb_minus(self.te,1)).$to_i(),self.ts,$rb_minus(self.te,1)),p=$rb_plus(p=$rb_minus(p,1),1),_goto_level=40;continue}self.$diagnostic(“error”,“trailing_in_number”,$hash2(,{character:self.$tok($rb_minus(self.te,1),self.te)}),self.$range($rb_minus(self.te,1),self.te))}else if(147($case)){if(p=$rb_minus(self.te,1),!$truthy(self(18,19,20))){self.$emit(“tFLOAT”,self.$tok(self.ts,$rb_minus(self.te,1)).$to_f(),self.ts,$rb_minus(self.te,1)),p=$rb_plus(p=$rb_minus(p,1),1),_goto_level=40;continue}self.$diagnostic(“error”,“trailing_in_number”,$hash2(,{character:self.$tok($rb_minus(self.te,1),self.te)}),self.$range($rb_minus(self.te,1),self.te))}else{if(148($case)){p=$rb_minus(self.te,1),digits=self.$tok(self.ts,self.num_suffix_s),$truthy(self(18,19,20))?(self.$emit(“tFLOAT”,self.$Float(digits),self.ts,self.num_suffix_s),p=$rb_minus(self.num_suffix_s,1)):self.num_xfrm.$call(digits),p=$rb_plus(p,1),_goto_level=40;continue}if(150($case)){p=$rb_minus(self.te,1),self.$emit(“tCONSTANT”),self.cs=self.$arg_or_cmdarg(),p=$rb_plus(p,1),_goto_level=40;continue}if(154($case)){if(p=$rb_minus(self.te,1),self.$emit(“tIDENTIFIER”),$truthy($truthy($b=self.static_env()[“$!”]())?self.static_env(self.$tok()):$b)){self.cs=438,p=$rb_plus(p,1),_goto_level=40;continue}self.cs=self.$arg_or_cmdarg(),p=$rb_plus(p,1),_goto_level=40;continue}if(155($case)){p=$rb_minus(self.te,1),tm(self.te)?self.$emit(“tFID”):(self.$emit(“tIDENTIFIER”,self.$tok(self.ts,tm),self.ts,tm),p=$rb_minus(tm,1)),self.cs=466,p=$rb_plus(p,1),_goto_level=40;continue}if(157($case)){p=$rb_minus(self.te,1),self.$emit_table($$($nesting,“PUNCTUATION”)),self.cs=759,p=$rb_plus(p,1),_goto_level=40;continue}if(158($case)){p=$rb_minus(self.te,1),self.$emit_table($$($nesting,“PUNCTUATION”)),self.cs=535,p=$rb_plus(p,1),_goto_level=40;continue}}}else{if(87($case)){self.te=$rb_plus(p,1),p=$rb_minus(tm,1),self.cs=767,_goto_level=20;continue}if(479($case)){self.te=$rb_plus(p,1),self.$emit(“tNL”,nil,self.newline_s,$rb_plus(self.newline_s,1)),p=$rb_minus(p,1),self.cs=181,p=$rb_plus(p,1),_goto_level=40;continue}if(480($case)){p=$rb_minus(self.te=p,1),self.$emit(“tNL”,nil,self.newline_s,$rb_plus(self.newline_s,1)),p=$rb_minus(p,1),self.cs=181,p=$rb_plus(p,1),_goto_level=40;continue}if(84($case)){p=$rb_minus(self.te,1),self.$emit(“tNL”,nil,self.newline_s,$rb_plus(self.newline_s,1)),p=$rb_minus(p,1),self.cs=181,p=$rb_plus(p,1),_goto_level=40;continue}if(483($case)){p=$rb_minus(self.te=p,1),self.$emit_comment(self.eq_begin_s,self.te),self.cs=self.cs_before_block_comment,_goto_level=20;continue}if(482($case))p=$rb_minus(self.te=p,1),self.$diagnostic(“fatal”,“embedded_document”,nil,self.$range(self.eq_begin_s,$rb_plus(self.eq_begin_s,“=begin”.$length())));else{if(98($case)){self.te=$rb_plus(p,1),self.eq_begin_s=self.ts,self.cs=948,_goto_level=20;continue}if(2($case))self.te=$rb_plus(p,1),p=$rb_minus(pe,3);else{if(90($case)){self.te=$rb_plus(p,1),p=$rb_minus(p,1),self.cs=759,_goto_level=20;continue}if(91($case)){self.te=$rb_plus(p,1),p=$rb_plus(p=$rb_minus(p,1),1),_goto_level=40;continue}if(92($case))p=$rb_minus(self.te=p,1);else{if(97($case)){p=$rb_minus(self.te=p,1),self.eq_begin_s=self.ts,self.cs=948,_goto_level=20;continue}if(96($case)){p=$rb_minus(p=$rb_minus(self.te=p,1),1),self.cs=759,_goto_level=20;continue}if(1($case)){p=$rb_minus(p=$rb_minus(self.te,1),1),self.cs=759,_goto_level=20;continue}if(66($case))self.newline_s=p,self.$emit_comment(self.sharp_s,p(pe)?$rb_minus(p,2):p);else if(102($case)){if(self.newline_s=p,self.te=$rb_plus(p,1),current_literal=self.$literal(),self.te(pe)&&self.$diagnostic(“fatal”,“string_eof”,nil,self.$range(current_literal.$str_s(),$rb_plus(current_literal.$str_s(),1))),$truthy(current_literal())){if(line=self.$tok(self.herebody_s,self.ts).$gsub(/r+$/,“”.$freeze()),$truthy(self(18,19,20))&&(line=line.$gsub(/r.*$/,“”.$freeze())),$truthy(current_literal.$nest_and_try_closing(line,self.herebody_s,self.ts))){self.herebody_s=self.te,p=$rb_minus(current_literal.$heredoc_e(),1),self.cs=self.$pop_literal(),p=$rb_plus(p,1),_goto_level=40;continue}current_literal.$infer_indent_level(line),self.herebody_s=self.te}else{if($truthy(current_literal.$nest_and_try_closing(self.$tok(),self.ts,self.te))){self.cs=self.$pop_literal(),p=$rb_plus(p,1),_goto_level=40;continue}$truthy(self.herebody_s)&&(p=$rb_minus(self.herebody_s,1),self.herebody_s=nil)}$truthy($truthy($b=current_literal())?self(self.source_pts[“$”](p))():$b)?current_literal.$extend_space(self.ts,self.te):(current_literal.$extend_string(self.$tok(),self.ts,self.te),current_literal.$flush_string())}else if(131($case)){if(self.newline_s=p,self.te=$rb_plus(p,1),current_literal=self.$literal(),self.te(pe)&&self.$diagnostic(“fatal”,“string_eof”,nil,self.$range(current_literal.$str_s(),$rb_plus(current_literal.$str_s(),1))),$truthy(current_literal())){if(line=self.$tok(self.herebody_s,self.ts).$gsub(/r+$/,“”.$freeze()),$truthy(self(18,19,20))&&(line=line.$gsub(/r.*$/,“”.$freeze())),$truthy(current_literal.$nest_and_try_closing(line,self.herebody_s,self.ts))){self.herebody_s=self.te,p=$rb_minus(current_literal.$heredoc_e(),1),self.cs=self.$pop_literal(),p=$rb_plus(p,1),_goto_level=40;continue}current_literal.$infer_indent_level(line),self.herebody_s=self.te}else{if($truthy(current_literal.$nest_and_try_closing(self.$tok(),self.ts,self.te))){self.cs=self.$pop_literal(),p=$rb_plus(p,1),_goto_level=40;continue}$truthy(self.herebody_s)&&(p=$rb_minus(self.herebody_s,1),self.herebody_s=nil)}$truthy($truthy($b=current_literal())?self(self.source_pts[“$”](p))():$b)?current_literal.$extend_space(self.ts,self.te):(current_literal.$extend_string(self.$tok(),self.ts,self.te),current_literal.$flush_string())}else if(158($case)){if(self.newline_s=p,self.te=$rb_plus(p,1),current_literal=self.$literal(),self.te(pe)&&self.$diagnostic(“fatal”,“string_eof”,nil,self.$range(current_literal.$str_s(),$rb_plus(current_literal.$str_s(),1))),$truthy(current_literal())){if(line=self.$tok(self.herebody_s,self.ts).$gsub(/r+$/,“”.$freeze()),$truthy(self(18,19,20))&&(line=line.$gsub(/r.*$/,“”.$freeze())),$truthy(current_literal.$nest_and_try_closing(line,self.herebody_s,self.ts))){self.herebody_s=self.te,p=$rb_minus(current_literal.$heredoc_e(),1),self.cs=self.$pop_literal(),p=$rb_plus(p,1),_goto_level=40;continue}current_literal.$infer_indent_level(line),self.herebody_s=self.te}else{if($truthy(current_literal.$nest_and_try_closing(self.$tok(),self.ts,self.te))){self.cs=self.$pop_literal(),p=$rb_plus(p,1),_goto_level=40;continue}$truthy(self.herebody_s)&&(p=$rb_minus(self.herebody_s,1),self.herebody_s=nil)}$truthy($truthy($b=current_literal())?self(self.source_pts[“$”](p))():$b)?current_literal.$extend_space(self.ts,self.te):(current_literal.$extend_string(self.$tok(),self.ts,self.te),current_literal.$flush_string())}else if(164($case)){if(self.newline_s=p,self.te=$rb_plus(p,1),current_literal=self.$literal(),self.te(pe)&&self.$diagnostic(“fatal”,“string_eof”,nil,self.$range(current_literal.$str_s(),$rb_plus(current_literal.$str_s(),1))),$truthy(current_literal())){if(line=self.$tok(self.herebody_s,self.ts).$gsub(/r+$/,“”.$freeze()),$truthy(self(18,19,20))&&(line=line.$gsub(/r.*$/,“”.$freeze())),$truthy(current_literal.$nest_and_try_closing(line,self.herebody_s,self.ts))){self.herebody_s=self.te,p=$rb_minus(current_literal.$heredoc_e(),1),self.cs=self.$pop_literal(),p=$rb_plus(p,1),_goto_level=40;continue}current_literal.$infer_indent_level(line),self.herebody_s=self.te}else{if($truthy(current_literal.$nest_and_try_closing(self.$tok(),self.ts,self.te))){self.cs=self.$pop_literal(),p=$rb_plus(p,1),_goto_level=40;continue}$truthy(self.herebody_s)&&(p=$rb_minus(self.herebody_s,1),self.herebody_s=nil)}$truthy($truthy($b=current_literal())?self(self.source_pts[“$”](p))():$b)?current_literal.$extend_space(self.ts,self.te):(current_literal.$extend_string(self.$tok(),self.ts,self.te),current_literal.$flush_string())}else if(170($case)){if(self.newline_s=p,self.te=$rb_plus(p,1),current_literal=self.$literal(),self.te(pe)&&self.$diagnostic(“fatal”,“string_eof”,nil,self.$range(current_literal.$str_s(),$rb_plus(current_literal.$str_s(),1))),$truthy(current_literal())){if(line=self.$tok(self.herebody_s,self.ts).$gsub(/r+$/,“”.$freeze()),$truthy(self(18,19,20))&&(line=line.$gsub(/r.*$/,“”.$freeze())),$truthy(current_literal.$nest_and_try_closing(line,self.herebody_s,self.ts))){self.herebody_s=self.te,p=$rb_minus(current_literal.$heredoc_e(),1),self.cs=self.$pop_literal(),p=$rb_plus(p,1),_goto_level=40;continue}current_literal.$infer_indent_level(line),self.herebody_s=self.te}else{if($truthy(current_literal.$nest_and_try_closing(self.$tok(),self.ts,self.te))){self.cs=self.$pop_literal(),p=$rb_plus(p,1),_goto_level=40;continue}$truthy(self.herebody_s)&&(p=$rb_minus(self.herebody_s,1),self.herebody_s=nil)}$truthy($truthy($b=current_literal())?self(self.source_pts[“$”](p))():$b)?current_literal.$extend_space(self.ts,self.te):(current_literal.$extend_string(self.$tok(),self.ts,self.te),current_literal.$flush_string())}else if(176($case)){if(self.newline_s=p,self.te=$rb_plus(p,1),current_literal=self.$literal(),self.te(pe)&&self.$diagnostic(“fatal”,“string_eof”,nil,self.$range(current_literal.$str_s(),$rb_plus(current_literal.$str_s(),1))),$truthy(current_literal())){if(line=self.$tok(self.herebody_s,self.ts).$gsub(/r+$/,“”.$freeze()),$truthy(self(18,19,20))&&(line=line.$gsub(/r.*$/,“”.$freeze())),$truthy(current_literal.$nest_and_try_closing(line,self.herebody_s,self.ts))){self.herebody_s=self.te,p=$rb_minus(current_literal.$heredoc_e(),1),self.cs=self.$pop_literal(),p=$rb_plus(p,1),_goto_level=40;continue}current_literal.$infer_indent_level(line),self.herebody_s=self.te}else{if($truthy(current_literal.$nest_and_try_closing(self.$tok(),self.ts,self.te))){self.cs=self.$pop_literal(),p=$rb_plus(p,1),_goto_level=40;continue}$truthy(self.herebody_s)&&(p=$rb_minus(self.herebody_s,1),self.herebody_s=nil)}$truthy($truthy($b=current_literal())?self(self.source_pts[“$”](p))():$b)?current_literal.$extend_space(self.ts,self.te):(current_literal.$extend_string(self.$tok(),self.ts,self.te),current_literal.$flush_string())}else if(179($case)){if(self.newline_s=p,self.te=$rb_plus(p,1),current_literal=self.$literal(),self.te(pe)&&self.$diagnostic(“fatal”,“string_eof”,nil,self.$range(current_literal.$str_s(),$rb_plus(current_literal.$str_s(),1))),$truthy(current_literal())){if(line=self.$tok(self.herebody_s,self.ts).$gsub(/r+$/,“”.$freeze()),$truthy(self(18,19,20))&&(line=line.$gsub(/r.*$/,“”.$freeze())),$truthy(current_literal.$nest_and_try_closing(line,self.herebody_s,self.ts))){self.herebody_s=self.te,p=$rb_minus(current_literal.$heredoc_e(),1),self.cs=self.$pop_literal(),p=$rb_plus(p,1),_goto_level=40;continue}current_literal.$infer_indent_level(line),self.herebody_s=self.te}else{if($truthy(current_literal.$nest_and_try_closing(self.$tok(),self.ts,self.te))){self.cs=self.$pop_literal(),p=$rb_plus(p,1),_goto_level=40;continue}$truthy(self.herebody_s)&&(p=$rb_minus(self.herebody_s,1),self.herebody_s=nil)}$truthy($truthy($b=current_literal())?self(self.source_pts[“$”](p))():$b)?current_literal.$extend_space(self.ts,self.te):(current_literal.$extend_string(self.$tok(),self.ts,self.te),current_literal.$flush_string())}else if(186($case)){if(self.newline_s=p,self.te=$rb_plus(p,1),current_literal=self.$literal(),self.te(pe)&&self.$diagnostic(“fatal”,“string_eof”,nil,self.$range(current_literal.$str_s(),$rb_plus(current_literal.$str_s(),1))),$truthy(current_literal())){if(line=self.$tok(self.herebody_s,self.ts).$gsub(/r+$/,“”.$freeze()),$truthy(self(18,19,20))&&(line=line.$gsub(/r.*$/,“”.$freeze())),$truthy(current_literal.$nest_and_try_closing(line,self.herebody_s,self.ts))){self.herebody_s=self.te,p=$rb_minus(current_literal.$heredoc_e(),1),self.cs=self.$pop_literal(),p=$rb_plus(p,1),_goto_level=40;continue}current_literal.$infer_indent_level(line),self.herebody_s=self.te}else{if($truthy(current_literal.$nest_and_try_closing(self.$tok(),self.ts,self.te))){self.cs=self.$pop_literal(),p=$rb_plus(p,1),_goto_level=40;continue}$truthy(self.herebody_s)&&(p=$rb_minus(self.herebody_s,1),self.herebody_s=nil)}$truthy($truthy($b=current_literal())?self(self.source_pts[“$”](p))():$b)?current_literal.$extend_space(self.ts,self.te):(current_literal.$extend_string(self.$tok(),self.ts,self.te),current_literal.$flush_string())}else{if(257($case)){self.newline_s=p,self.te=$rb_plus(p,1),p=$rb_minus(self.ts,1),self.cs=767,_goto_level=20;continue}if(248($case)){self.newline_s=p,self.te=$rb_plus(p,1),p=$rb_minus(tm,1),self.cs=767,_goto_level=20;continue}if(240($case)){self.newline_s=p,self.te=$rb_plus(p,1),p=$rb_minus(self.ts,1),self.cs=767,_goto_level=20;continue}if(332($case)){self.newline_s=p,self.te=$rb_plus(p,1),escape=$hash2([“ ”,“r”,“n”,“t”,“v”,“f”],{“ ”:“\s”,“r”:“\r”,“n”:“\n”,“t”:“\t”,“v”:“\v”,“f”:“\f”})[“$[]”](self.source_buffer.$slice($rb_plus(self.ts,1))),self.$diagnostic(“warning”,“invalid_escape_use”,$hash2(,{escape:escape}),self.$range()),p=$rb_minus(self.ts,1),self.cs=767,_goto_level=20;continue}if(303($case)){self.newline_s=p,self.te=$rb_plus(p,1),p=$rb_minus(self.ts,1),self.cs_before_block_comment=self.cs,self.cs=181,_goto_level=20;continue}if(484($case)){self.newline_s=p,self.te=$rb_plus(p,1),self.$emit_comment(self.eq_begin_s,self.te),self.cs=self.cs_before_block_comment,_goto_level=20;continue}if(481($case))self.newline_s=p,self.te=$rb_plus(p,1);else{if(99($case)){self.newline_s=p,self.te=$rb_plus(p,1),self.eq_begin_s=self.ts,self.cs=948,_goto_level=20;continue}if(3($case))self.newline_s=p,self.te=$rb_plus(p,1),p=$rb_minus(pe,3);else{if(435($case)){self.num_xfrm=$send(self,“lambda”,[],(($$13=function(chars){var self=$$13.$$s||this;return null==chars&&(chars=nil),self.$emit(“tRATIONAL”,self.$Rational(chars))}).$$s=self,$$13.$$arity=1,$$13)),p=$rb_minus(self.te=p,1),digits=self.$tok(self.num_digits_s,self.num_suffix_s),$truthy(digits(“_”.$freeze()))?self.$diagnostic(“error”,“trailing_in_number”,$hash2(,{character:“_”.$freeze()}),self.$range($rb_minus(self.te,1),self.te)):$truthy($truthy($b=$truthy($c=digits())?self.num_base(8):$c)?self(18):$b)?digits=“0”.$freeze():$truthy(digits())?self.$diagnostic(“error”,“empty_numeric”):$truthy(($b=self.num_base(8))?invalid_idx=digits.$index(//):self.num_base(8))&&(invalid_s=$rb_plus(self.num_digits_s,invalid_idx),self.$diagnostic(“error”,“invalid_octal”,nil,self.$range(invalid_s,$rb_plus(invalid_s,1)))),$truthy(self(18,19,20))?(self.$emit(“tINTEGER”,digits.$to_i(self.num_base),self.ts,self.num_suffix_s),p=$rb_minus(self.num_suffix_s,1)):self.num_xfrm.$call(digits.$to_i(self.num_base)),p=$rb_plus(p,1),_goto_level=40;continue}if(433($case)){self.num_xfrm=$send(self,“lambda”,[],(($$14=function(chars){var self=$$14.$$s||this;return null==chars&&(chars=nil),self.$emit(“tIMAGINARY”,self.$Complex(0,chars))}).$$s=self,$$14.$$arity=1,$$14)),p=$rb_minus(self.te=p,1),digits=self.$tok(self.num_digits_s,self.num_suffix_s),$truthy(digits(“_”.$freeze()))?self.$diagnostic(“error”,“trailing_in_number”,$hash2(,{character:“_”.$freeze()}),self.$range($rb_minus(self.te,1),self.te)):$truthy($truthy($b=$truthy($c=digits())?self.num_base(8):$c)?self(18):$b)?digits=“0”.$freeze():$truthy(digits())?self.$diagnostic(“error”,“empty_numeric”):$truthy(($b=self.num_base(8))?invalid_idx=digits.$index(//):self.num_base(8))&&(invalid_s=$rb_plus(self.num_digits_s,invalid_idx),self.$diagnostic(“error”,“invalid_octal”,nil,self.$range(invalid_s,$rb_plus(invalid_s,1)))),$truthy(self(18,19,20))?(self.$emit(“tINTEGER”,digits.$to_i(self.num_base),self.ts,self.num_suffix_s),p=$rb_minus(self.num_suffix_s,1)):self.num_xfrm.$call(digits.$to_i(self.num_base)),p=$rb_plus(p,1),_goto_level=40;continue}if(438($case)){self.num_xfrm=$send(self,“lambda”,[],(($$15=function(chars){var self=$$15.$$s||this;return null==chars&&(chars=nil),self.$emit(“tIMAGINARY”,self.$Complex(0,self.$Rational(chars)))}).$$s=self,$$15.$$arity=1,$$15)),p=$rb_minus(self.te=p,1),digits=self.$tok(self.num_digits_s,self.num_suffix_s),$truthy(digits(“_”.$freeze()))?self.$diagnostic(“error”,“trailing_in_number”,$hash2(,{character:“_”.$freeze()}),self.$range($rb_minus(self.te,1),self.te)):$truthy($truthy($b=$truthy($c=digits())?self.num_base(8):$c)?self(18):$b)?digits=“0”.$freeze():$truthy(digits())?self.$diagnostic(“error”,“empty_numeric”):$truthy(($b=self.num_base(8))?invalid_idx=digits.$index(//):self.num_base(8))&&(invalid_s=$rb_plus(self.num_digits_s,invalid_idx),self.$diagnostic(“error”,“invalid_octal”,nil,self.$range(invalid_s,$rb_plus(invalid_s,1)))),$truthy(self(18,19,20))?(self.$emit(“tINTEGER”,digits.$to_i(self.num_base),self.ts,self.num_suffix_s),p=$rb_minus(self.num_suffix_s,1)):self.num_xfrm.$call(digits.$to_i(self.num_base)),p=$rb_plus(p,1),_goto_level=40;continue}if(436($case)){self.num_xfrm=$send(self,“lambda”,[],(($$16=function(chars){var self=$$16.$$s||this;return null==self.ts&&(self.ts=nil),null==self.te&&(self.te=nil),null==chars&&(chars=nil),self.$emit(“tINTEGER”,chars,self.ts,$rb_minus(self.te,2)),p=$rb_minus(p,2)}).$$s=self,$$16.$$arity=1,$$16)),p=$rb_minus(self.te=p,1),digits=self.$tok(self.num_digits_s,self.num_suffix_s),$truthy(digits(“_”.$freeze()))?self.$diagnostic(“error”,“trailing_in_number”,$hash2(,{character:“_”.$freeze()}),self.$range($rb_minus(self.te,1),self.te)):$truthy($truthy($b=$truthy($c=digits())?self.num_base(8):$c)?self(18):$b)?digits=“0”.$freeze():$truthy(digits())?self.$diagnostic(“error”,“empty_numeric”):$truthy(($b=self.num_base(8))?invalid_idx=digits.$index(//):self.num_base(8))&&(invalid_s=$rb_plus(self.num_digits_s,invalid_idx),self.$diagnostic(“error”,“invalid_octal”,nil,self.$range(invalid_s,$rb_plus(invalid_s,1)))),$truthy(self(18,19,20))?(self.$emit(“tINTEGER”,digits.$to_i(self.num_base),self.ts,self.num_suffix_s),p=$rb_minus(self.num_suffix_s,1)):self.num_xfrm.$call(digits.$to_i(self.num_base)),p=$rb_plus(p,1),_goto_level=40;continue}if(434($case)){self.num_xfrm=$send(self,“lambda”,[],(($$17=function(chars){var self=$$17.$$s||this;return null==self.ts&&(self.ts=nil),null==self.te&&(self.te=nil),null==chars&&(chars=nil),self.$emit(“tINTEGER”,chars,self.ts,$rb_minus(self.te,2)),p=$rb_minus(p,2)}).$$s=self,$$17.$$arity=1,$$17)),p=$rb_minus(self.te=p,1),digits=self.$tok(self.num_digits_s,self.num_suffix_s),$truthy(digits(“_”.$freeze()))?self.$diagnostic(“error”,“trailing_in_number”,$hash2(,{character:“_”.$freeze()}),self.$range($rb_minus(self.te,1),self.te)):$truthy($truthy($b=$truthy($c=digits())?self.num_base(8):$c)?self(18):$b)?digits=“0”.$freeze():$truthy(digits())?self.$diagnostic(“error”,“empty_numeric”):$truthy(($b=self.num_base(8))?invalid_idx=digits.$index(//):self.num_base(8))&&(invalid_s=$rb_plus(self.num_digits_s,invalid_idx),self.$diagnostic(“error”,“invalid_octal”,nil,self.$range(invalid_s,$rb_plus(invalid_s,1)))),$truthy(self(18,19,20))?(self.$emit(“tINTEGER”,digits.$to_i(self.num_base),self.ts,self.num_suffix_s),p=$rb_minus(self.num_suffix_s,1)):self.num_xfrm.$call(digits.$to_i(self.num_base)),p=$rb_plus(p,1),_goto_level=40;continue}if(437($case)){self.num_xfrm=$send(self,“lambda”,[],(($$18=function(chars){var self=$$18.$$s||this;return null==self.ts&&(self.ts=nil),null==self.te&&(self.te=nil),null==chars&&(chars=nil),self.$emit(“tINTEGER”,chars,self.ts,$rb_minus(self.te,6)),p=$rb_minus(p,6)}).$$s=self,$$18.$$arity=1,$$18)),p=$rb_minus(self.te=p,1),digits=self.$tok(self.num_digits_s,self.num_suffix_s),$truthy(digits(“_”.$freeze()))?self.$diagnostic(“error”,“trailing_in_number”,$hash2(,{character:“_”.$freeze()}),self.$range($rb_minus(self.te,1),self.te)):$truthy($truthy($b=$truthy($c=digits())?self.num_base(8):$c)?self(18):$b)?digits=“0”.$freeze():$truthy(digits())?self.$diagnostic(“error”,“empty_numeric”):$truthy(($b=self.num_base(8))?invalid_idx=digits.$index(//):self.num_base(8))&&(invalid_s=$rb_plus(self.num_digits_s,invalid_idx),self.$diagnostic(“error”,“invalid_octal”,nil,self.$range(invalid_s,$rb_plus(invalid_s,1)))),$truthy(self(18,19,20))?(self.$emit(“tINTEGER”,digits.$to_i(self.num_base),self.ts,self.num_suffix_s),p=$rb_minus(self.num_suffix_s,1)):self.num_xfrm.$call(digits.$to_i(self.num_base)),p=$rb_plus(p,1),_goto_level=40;continue}if(426($case)){self.num_xfrm=$send(self,“lambda”,[],(($$19=function(chars){var self=$$19.$$s||this;return null==chars&&(chars=nil),self.$emit(“tIMAGINARY”,self.$Complex(0,self.$Float(chars)))}).$$s=self,$$19.$$arity=1,$$19)),p=$rb_minus(self.te=p,1),digits=self.$tok(self.ts,self.num_suffix_s),$truthy(self(18,19,20))?(self.$emit(“tFLOAT”,self.$Float(digits),self.ts,self.num_suffix_s),p=$rb_minus(self.num_suffix_s,1)):self.num_xfrm.$call(digits),p=$rb_plus(p,1),_goto_level=40;continue}if(427($case)){self.num_xfrm=$send(self,“lambda”,[],(($$20=function(chars){var self=$$20.$$s||this;return null==self.ts&&(self.ts=nil),null==self.te&&(self.te=nil),null==chars&&(chars=nil),self.$emit(“tFLOAT”,self.$Float(chars),self.ts,$rb_minus(self.te,2)),p=$rb_minus(p,2)}).$$s=self,$$20.$$arity=1,$$20)),p=$rb_minus(self.te=p,1),digits=self.$tok(self.ts,self.num_suffix_s),$truthy(self(18,19,20))?(self.$emit(“tFLOAT”,self.$Float(digits),self.ts,self.num_suffix_s),p=$rb_minus(self.num_suffix_s,1)):self.num_xfrm.$call(digits),p=$rb_plus(p,1),_goto_level=40;continue}if(428($case)){self.num_xfrm=$send(self,“lambda”,[],(($$21=function(chars){var self=$$21.$$s||this;return null==chars&&(chars=nil),self.$emit(“tRATIONAL”,self.$Rational(chars))}).$$s=self,$$21.$$arity=1,$$21)),p=$rb_minus(self.te=p,1),digits=self.$tok(self.ts,self.num_suffix_s),$truthy(self(18,19,20))?(self.$emit(“tFLOAT”,self.$Float(digits),self.ts,self.num_suffix_s),p=$rb_minus(self.num_suffix_s,1)):self.num_xfrm.$call(digits),p=$rb_plus(p,1),_goto_level=40;continue}if(430($case)){self.num_xfrm=$send(self,“lambda”,[],(($$22=function(chars){var self=$$22.$$s||this;return null==chars&&(chars=nil),self.$emit(“tIMAGINARY”,self.$Complex(0,self.$Rational(chars)))}).$$s=self,$$22.$$arity=1,$$22)),p=$rb_minus(self.te=p,1),digits=self.$tok(self.ts,self.num_suffix_s),$truthy(self(18,19,20))?(self.$emit(“tFLOAT”,self.$Float(digits),self.ts,self.num_suffix_s),p=$rb_minus(self.num_suffix_s,1)):self.num_xfrm.$call(digits),p=$rb_plus(p,1),_goto_level=40;continue}if(429($case)){self.num_xfrm=$send(self,“lambda”,[],(($$23=function(chars){var self=$$23.$$s||this;return null==self.ts&&(self.ts=nil),null==self.te&&(self.te=nil),null==chars&&(chars=nil),self.$emit(“tFLOAT”,self.$Float(chars),self.ts,$rb_minus(self.te,6)),p=$rb_minus(p,6)}).$$s=self,$$23.$$arity=1,$$23)),p=$rb_minus(self.te=p,1),digits=self.$tok(self.ts,self.num_suffix_s),$truthy(self(18,19,20))?(self.$emit(“tFLOAT”,self.$Float(digits),self.ts,self.num_suffix_s),p=$rb_minus(self.num_suffix_s,1)):self.num_xfrm.$call(digits),p=$rb_plus(p,1),_goto_level=40;continue}if(125($case))self.escape=“”,codepoints=self.$tok($rb_plus(self.escape_s,2),$rb_minus(p,1)),codepoint_s=$rb_plus(self.escape_s,2),$truthy($rb_lt(self.version,24))&&($truthy($truthy($b=codepoints(“ ”))?$b:codepoints(“t”))&&self.$diagnostic(“fatal”,“invalid_unicode_escape”,nil,self.$range($rb_plus(self.escape_s,2),$rb_plus(self.escape_s,3))),$truthy(spaces_p=codepoints.$index(/[ t]{2}/))&&self.$diagnostic(“fatal”,“invalid_unicode_escape”,nil,self.$range($rb_plus($rb_plus(codepoint_s,spaces_p),1),$rb_plus($rb_plus(codepoint_s,spaces_p),2))),$truthy($truthy($b=codepoints(“ ”))?$b:codepoints(“t”))&&self.$diagnostic(“fatal”,“invalid_unicode_escape”,nil,self.$range($rb_minus(p,1),p))),function(){var $brk=Opal.new_brk();try{$send(codepoints.$scan(/(+)|([ t]+)/),“each”,[],(($$24=function($mlhs_tmp1){var $d,$e,self=$$24.$$s||this,codepoint_str=nil,spaces=nil,codepoint=nil;return null==self.escape&&(self.escape=nil),null==$mlhs_tmp1&&($mlhs_tmp1=nil),$e=$mlhs_tmp1,codepoint_str=null==($d=Opal.to_ary($e))?nil:$d,spaces=null==$d?nil:$d,codepoint_s=$truthy(spaces)?$rb_plus(codepoint_s,spaces.$length()):(codepoint=codepoint_str.$to_i(16),$truthy($rb_ge(codepoint,1114112))&&(self.$diagnostic(“error”,“unicode_point_too_large”,nil,self.$range(codepoint_s,$rb_plus(codepoint_s,codepoint_str.$length()))),Opal.brk(nil,$brk)),self.escape=$rb_plus(self.escape,codepoint.$chr($$$($$($nesting,“Encoding”),“UTF_8”))),$rb_plus(codepoint_s,codepoint_str.$length()))}).$$s=self,$$24.$$brk=$brk,$$24.$$arity=1,$$24.$$has_top_level_mlhs_arg=!0,$$24))}catch(err){if(err===$brk)return err.$v;throw err}}(),p=$rb_minus(self.te=p,1),current_literal=self.$literal(),escaped_char=self.source_buffer.$slice(self.escape_s).$chr(),$truthy(current_literal(escaped_char))?$truthy($truthy($b=current_literal())?$$($nesting,“REGEXP_META_CHARACTERS”).$match(escaped_char):$b)?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(escaped_char,self.ts,self.te):$truthy(current_literal())?current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):$truthy($truthy($b=current_literal())?escaped_char(“n”.$freeze()):$b)?$truthy(current_literal())?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):current_literal.$extend_string($truthy($b=self.escape)?$b:self.$tok(),self.ts,self.te);else if(152($case))self.escape=“”,codepoints=self.$tok($rb_plus(self.escape_s,2),$rb_minus(p,1)),codepoint_s=$rb_plus(self.escape_s,2),$truthy($rb_lt(self.version,24))&&($truthy($truthy($b=codepoints(“ ”))?$b:codepoints(“t”))&&self.$diagnostic(“fatal”,“invalid_unicode_escape”,nil,self.$range($rb_plus(self.escape_s,2),$rb_plus(self.escape_s,3))),$truthy(spaces_p=codepoints.$index(/[ t]{2}/))&&self.$diagnostic(“fatal”,“invalid_unicode_escape”,nil,self.$range($rb_plus($rb_plus(codepoint_s,spaces_p),1),$rb_plus($rb_plus(codepoint_s,spaces_p),2))),$truthy($truthy($b=codepoints(“ ”))?$b:codepoints(“t”))&&self.$diagnostic(“fatal”,“invalid_unicode_escape”,nil,self.$range($rb_minus(p,1),p))),function(){var $brk=Opal.new_brk();try{$send(codepoints.$scan(/(+)|([ t]+)/),“each”,[],(($$25=function($mlhs_tmp1){var $d,$e,self=$$25.$$s||this,codepoint_str=nil,spaces=nil,codepoint=nil;return null==self.escape&&(self.escape=nil),null==$mlhs_tmp1&&($mlhs_tmp1=nil),$e=$mlhs_tmp1,codepoint_str=null==($d=Opal.to_ary($e))?nil:$d,spaces=null==$d?nil:$d,codepoint_s=$truthy(spaces)?$rb_plus(codepoint_s,spaces.$length()):(codepoint=codepoint_str.$to_i(16),$truthy($rb_ge(codepoint,1114112))&&(self.$diagnostic(“error”,“unicode_point_too_large”,nil,self.$range(codepoint_s,$rb_plus(codepoint_s,codepoint_str.$length()))),Opal.brk(nil,$brk)),self.escape=$rb_plus(self.escape,codepoint.$chr($$$($$($nesting,“Encoding”),“UTF_8”))),$rb_plus(codepoint_s,codepoint_str.$length()))}).$$s=self,$$25.$$brk=$brk,$$25.$$arity=1,$$25.$$has_top_level_mlhs_arg=!0,$$25))}catch(err){if(err===$brk)return err.$v;throw err}}(),p=$rb_minus(self.te=p,1),current_literal=self.$literal(),escaped_char=self.source_buffer.$slice(self.escape_s).$chr(),$truthy(current_literal(escaped_char))?$truthy($truthy($b=current_literal())?$$($nesting,“REGEXP_META_CHARACTERS”).$match(escaped_char):$b)?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(escaped_char,self.ts,self.te):$truthy(current_literal())?current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):$truthy($truthy($b=current_literal())?escaped_char(“n”.$freeze()):$b)?$truthy(current_literal())?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):current_literal.$extend_string($truthy($b=self.escape)?$b:self.$tok(),self.ts,self.te);else{if(353($case)){self.escape=“”,codepoints=self.$tok($rb_plus(self.escape_s,2),$rb_minus(p,1)),codepoint_s=$rb_plus(self.escape_s,2),$truthy($rb_lt(self.version,24))&&($truthy($truthy($b=codepoints(“ ”))?$b:codepoints(“t”))&&self.$diagnostic(“fatal”,“invalid_unicode_escape”,nil,self.$range($rb_plus(self.escape_s,2),$rb_plus(self.escape_s,3))),$truthy(spaces_p=codepoints.$index(/[ t]{2}/))&&self.$diagnostic(“fatal”,“invalid_unicode_escape”,nil,self.$range($rb_plus($rb_plus(codepoint_s,spaces_p),1),$rb_plus($rb_plus(codepoint_s,spaces_p),2))),$truthy($truthy($b=codepoints(“ ”))?$b:codepoints(“t”))&&self.$diagnostic(“fatal”,“invalid_unicode_escape”,nil,self.$range($rb_minus(p,1),p))),function(){var $brk=Opal.new_brk();try{$send(codepoints.$scan(/(+)|([ t]+)/),“each”,[],(($$26=function($mlhs_tmp1){var $d,$e,self=$$26.$$s||this,codepoint_str=nil,spaces=nil,codepoint=nil;return null==self.escape&&(self.escape=nil),null==$mlhs_tmp1&&($mlhs_tmp1=nil),$e=$mlhs_tmp1,codepoint_str=null==($d=Opal.to_ary($e))?nil:$d,spaces=null==$d?nil:$d,codepoint_s=$truthy(spaces)?$rb_plus(codepoint_s,spaces.$length()):(codepoint=codepoint_str.$to_i(16),$truthy($rb_ge(codepoint,1114112))&&(self.$diagnostic(“error”,“unicode_point_too_large”,nil,self.$range(codepoint_s,$rb_plus(codepoint_s,codepoint_str.$length()))),Opal.brk(nil,$brk)),self.escape=$rb_plus(self.escape,codepoint.$chr($$$($$($nesting,“Encoding”),“UTF_8”))),$rb_plus(codepoint_s,codepoint_str.$length()))}).$$s=self,$$26.$$brk=$brk,$$26.$$arity=1,$$26.$$has_top_level_mlhs_arg=!0,$$26))}catch(err){if(err===$brk)return err.$v;throw err}}(),p=$rb_minus(self.te=p,1),value=$truthy($b=self.escape)?$b:self.$tok($rb_plus(self.ts,1)),$truthy(self(18))?self.$emit(“tINTEGER”,value.$getbyte(0)):self.$emit(“tCHARACTER”,value),self.cs=767,p=$rb_plus(p,1),_goto_level=40;continue}if(109($case))codepoint=self.source_pts[“$”]($rb_minus(p,1)),$truthy((self.escape=$$($nesting,“ESCAPES”)[“$”](codepoint))())&&(self.escape=self.$encode_escape(self.source_buffer.$slice($rb_minus(p,1)))),p=$rb_minus(self.te=p,1),current_literal=self.$literal(),escaped_char=self.source_buffer.$slice(self.escape_s).$chr(),$truthy(current_literal(escaped_char))?$truthy($truthy($b=current_literal())?$$($nesting,“REGEXP_META_CHARACTERS”).$match(escaped_char):$b)?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(escaped_char,self.ts,self.te):$truthy(current_literal())?current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):$truthy($truthy($b=current_literal())?escaped_char(“n”.$freeze()):$b)?$truthy(current_literal())?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):current_literal.$extend_string($truthy($b=self.escape)?$b:self.$tok(),self.ts,self.te);else if(136($case))codepoint=self.source_pts[“$”]($rb_minus(p,1)),$truthy((self.escape=$$($nesting,“ESCAPES”)[“$”](codepoint))())&&(self.escape=self.$encode_escape(self.source_buffer.$slice($rb_minus(p,1)))),p=$rb_minus(self.te=p,1),current_literal=self.$literal(),escaped_char=self.source_buffer.$slice(self.escape_s).$chr(),$truthy(current_literal(escaped_char))?$truthy($truthy($b=current_literal())?$$($nesting,“REGEXP_META_CHARACTERS”).$match(escaped_char):$b)?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(escaped_char,self.ts,self.te):$truthy(current_literal())?current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):$truthy($truthy($b=current_literal())?escaped_char(“n”.$freeze()):$b)?$truthy(current_literal())?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):current_literal.$extend_string($truthy($b=self.escape)?$b:self.$tok(),self.ts,self.te);else{if(337($case)){codepoint=self.source_pts[“$”]($rb_minus(p,1)),$truthy((self.escape=$$($nesting,“ESCAPES”)[“$”](codepoint))())&&(self.escape=self.$encode_escape(self.source_buffer.$slice($rb_minus(p,1)))),p=$rb_minus(self.te=p,1),value=$truthy($b=self.escape)?$b:self.$tok($rb_plus(self.ts,1)),$truthy(self(18))?self.$emit(“tINTEGER”,value.$getbyte(0)):self.$emit(“tCHARACTER”,value),self.cs=767,p=$rb_plus(p,1),_goto_level=40;continue}if(112($case))self.$diagnostic(“fatal”,“invalid_escape”),p=$rb_minus(self.te=p,1),current_literal=self.$literal(),escaped_char=self.source_buffer.$slice(self.escape_s).$chr(),$truthy(current_literal(escaped_char))?$truthy($truthy($b=current_literal())?$$($nesting,“REGEXP_META_CHARACTERS”).$match(escaped_char):$b)?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(escaped_char,self.ts,self.te):$truthy(current_literal())?current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):$truthy($truthy($b=current_literal())?escaped_char(“n”.$freeze()):$b)?$truthy(current_literal())?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):current_literal.$extend_string($truthy($b=self.escape)?$b:self.$tok(),self.ts,self.te);else if(139($case))self.$diagnostic(“fatal”,“invalid_escape”),p=$rb_minus(self.te=p,1),current_literal=self.$literal(),escaped_char=self.source_buffer.$slice(self.escape_s).$chr(),$truthy(current_literal(escaped_char))?$truthy($truthy($b=current_literal())?$$($nesting,“REGEXP_META_CHARACTERS”).$match(escaped_char):$b)?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(escaped_char,self.ts,self.te):$truthy(current_literal())?current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):$truthy($truthy($b=current_literal())?escaped_char(“n”.$freeze()):$b)?$truthy(current_literal())?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):current_literal.$extend_string($truthy($b=self.escape)?$b:self.$tok(),self.ts,self.te);else{if(340($case)){self.$diagnostic(“fatal”,“invalid_escape”),p=$rb_minus(self.te=p,1),value=$truthy($b=self.escape)?$b:self.$tok($rb_plus(self.ts,1)),$truthy(self(18))?self.$emit(“tINTEGER”,value.$getbyte(0)):self.$emit(“tCHARACTER”,value),self.cs=767,p=$rb_plus(p,1),_goto_level=40;continue}if(114($case))self.escape=“”,p=$rb_minus(self.te=p,1),current_literal=self.$literal(),escaped_char=self.source_buffer.$slice(self.escape_s).$chr(),$truthy(current_literal(escaped_char))?$truthy($truthy($b=current_literal())?$$($nesting,“REGEXP_META_CHARACTERS”).$match(escaped_char):$b)?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(escaped_char,self.ts,self.te):$truthy(current_literal())?current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):$truthy($truthy($b=current_literal())?escaped_char(“n”.$freeze()):$b)?$truthy(current_literal())?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):current_literal.$extend_string($truthy($b=self.escape)?$b:self.$tok(),self.ts,self.te);else if(141($case))self.escape=“”,p=$rb_minus(self.te=p,1),current_literal=self.$literal(),escaped_char=self.source_buffer.$slice(self.escape_s).$chr(),$truthy(current_literal(escaped_char))?$truthy($truthy($b=current_literal())?$$($nesting,“REGEXP_META_CHARACTERS”).$match(escaped_char):$b)?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(escaped_char,self.ts,self.te):$truthy(current_literal())?current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):$truthy($truthy($b=current_literal())?escaped_char(“n”.$freeze()):$b)?$truthy(current_literal())?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):current_literal.$extend_string($truthy($b=self.escape)?$b:self.$tok(),self.ts,self.te);else{if(342($case)){self.escape=“”,p=$rb_minus(self.te=p,1),value=$truthy($b=self.escape)?$b:self.$tok($rb_plus(self.ts,1)),$truthy(self(18))?self.$emit(“tINTEGER”,value.$getbyte(0)):self.$emit(“tCHARACTER”,value),self.cs=767,p=$rb_plus(p,1),_goto_level=40;continue}if(111($case))self.escape=self.$encode_escape(self.$tok(self.escape_s,p).$to_i(8)(256)),p=$rb_minus(self.te=p,1),current_literal=self.$literal(),escaped_char=self.source_buffer.$slice(self.escape_s).$chr(),$truthy(current_literal(escaped_char))?$truthy($truthy($b=current_literal())?$$($nesting,“REGEXP_META_CHARACTERS”).$match(escaped_char):$b)?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(escaped_char,self.ts,self.te):$truthy(current_literal())?current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):$truthy($truthy($b=current_literal())?escaped_char(“n”.$freeze()):$b)?$truthy(current_literal())?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):current_literal.$extend_string($truthy($b=self.escape)?$b:self.$tok(),self.ts,self.te);else if(138($case))self.escape=self.$encode_escape(self.$tok(self.escape_s,p).$to_i(8)(256)),p=$rb_minus(self.te=p,1),current_literal=self.$literal(),escaped_char=self.source_buffer.$slice(self.escape_s).$chr(),$truthy(current_literal(escaped_char))?$truthy($truthy($b=current_literal())?$$($nesting,“REGEXP_META_CHARACTERS”).$match(escaped_char):$b)?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(escaped_char,self.ts,self.te):$truthy(current_literal())?current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):$truthy($truthy($b=current_literal())?escaped_char(“n”.$freeze()):$b)?$truthy(current_literal())?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):current_literal.$extend_string($truthy($b=self.escape)?$b:self.$tok(),self.ts,self.te);else{if(339($case)){self.escape=self.$encode_escape(self.$tok(self.escape_s,p).$to_i(8)(256)),p=$rb_minus(self.te=p,1),value=$truthy($b=self.escape)?$b:self.$tok($rb_plus(self.ts,1)),$truthy(self(18))?self.$emit(“tINTEGER”,value.$getbyte(0)):self.$emit(“tCHARACTER”,value),self.cs=767,p=$rb_plus(p,1),_goto_level=40;continue}if(128($case))self.escape=self.$encode_escape(self.$tok($rb_plus(self.escape_s,1),p).$to_i(16)),p=$rb_minus(self.te=p,1),current_literal=self.$literal(),escaped_char=self.source_buffer.$slice(self.escape_s).$chr(),$truthy(current_literal(escaped_char))?$truthy($truthy($b=current_literal())?$$($nesting,“REGEXP_META_CHARACTERS”).$match(escaped_char):$b)?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(escaped_char,self.ts,self.te):$truthy(current_literal())?current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):$truthy($truthy($b=current_literal())?escaped_char(“n”.$freeze()):$b)?$truthy(current_literal())?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):current_literal.$extend_string($truthy($b=self.escape)?$b:self.$tok(),self.ts,self.te);else if(155($case))self.escape=self.$encode_escape(self.$tok($rb_plus(self.escape_s,1),p).$to_i(16)),p=$rb_minus(self.te=p,1),current_literal=self.$literal(),escaped_char=self.source_buffer.$slice(self.escape_s).$chr(),$truthy(current_literal(escaped_char))?$truthy($truthy($b=current_literal())?$$($nesting,“REGEXP_META_CHARACTERS”).$match(escaped_char):$b)?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(escaped_char,self.ts,self.te):$truthy(current_literal())?current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):$truthy($truthy($b=current_literal())?escaped_char(“n”.$freeze()):$b)?$truthy(current_literal())?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):current_literal.$extend_string($truthy($b=self.escape)?$b:self.$tok(),self.ts,self.te);else{if(356($case)){self.escape=self.$encode_escape(self.$tok($rb_plus(self.escape_s,1),p).$to_i(16)),p=$rb_minus(self.te=p,1),value=$truthy($b=self.escape)?$b:self.$tok($rb_plus(self.ts,1)),$truthy(self(18))?self.$emit(“tINTEGER”,value.$getbyte(0)):self.$emit(“tCHARACTER”,value),self.cs=767,p=$rb_plus(p,1),_goto_level=40;continue}if(127($case))self.$diagnostic(“fatal”,“invalid_hex_escape”,nil,self.$range($rb_minus(self.escape_s,1),$rb_plus(p,2))),p=$rb_minus(self.te=p,1),current_literal=self.$literal(),escaped_char=self.source_buffer.$slice(self.escape_s).$chr(),$truthy(current_literal(escaped_char))?$truthy($truthy($b=current_literal())?$$($nesting,“REGEXP_META_CHARACTERS”).$match(escaped_char):$b)?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(escaped_char,self.ts,self.te):$truthy(current_literal())?current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):$truthy($truthy($b=current_literal())?escaped_char(“n”.$freeze()):$b)?$truthy(current_literal())?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):current_literal.$extend_string($truthy($b=self.escape)?$b:self.$tok(),self.ts,self.te);else if(154($case))self.$diagnostic(“fatal”,“invalid_hex_escape”,nil,self.$range($rb_minus(self.escape_s,1),$rb_plus(p,2))),p=$rb_minus(self.te=p,1),current_literal=self.$literal(),escaped_char=self.source_buffer.$slice(self.escape_s).$chr(),$truthy(current_literal(escaped_char))?$truthy($truthy($b=current_literal())?$$($nesting,“REGEXP_META_CHARACTERS”).$match(escaped_char):$b)?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(escaped_char,self.ts,self.te):$truthy(current_literal())?current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):$truthy($truthy($b=current_literal())?escaped_char(“n”.$freeze()):$b)?$truthy(current_literal())?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):current_literal.$extend_string($truthy($b=self.escape)?$b:self.$tok(),self.ts,self.te);else{if(355($case)){self.$diagnostic(“fatal”,“invalid_hex_escape”,nil,self.$range($rb_minus(self.escape_s,1),$rb_plus(p,2))),p=$rb_minus(self.te=p,1),value=$truthy($b=self.escape)?$b:self.$tok($rb_plus(self.ts,1)),$truthy(self(18))?self.$emit(“tINTEGER”,value.$getbyte(0)):self.$emit(“tCHARACTER”,value),self.cs=767,p=$rb_plus(p,1),_goto_level=40;continue}if(122($case))self.escape=self.$tok($rb_plus(self.escape_s,1),p).$to_i(16).$chr($$$($$($nesting,“Encoding”),“UTF_8”)),p=$rb_minus(self.te=p,1),current_literal=self.$literal(),escaped_char=self.source_buffer.$slice(self.escape_s).$chr(),$truthy(current_literal(escaped_char))?$truthy($truthy($b=current_literal())?$$($nesting,“REGEXP_META_CHARACTERS”).$match(escaped_char):$b)?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(escaped_char,self.ts,self.te):$truthy(current_literal())?current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):$truthy($truthy($b=current_literal())?escaped_char(“n”.$freeze()):$b)?$truthy(current_literal())?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):current_literal.$extend_string($truthy($b=self.escape)?$b:self.$tok(),self.ts,self.te);else if(149($case))self.escape=self.$tok($rb_plus(self.escape_s,1),p).$to_i(16).$chr($$$($$($nesting,“Encoding”),“UTF_8”)),p=$rb_minus(self.te=p,1),current_literal=self.$literal(),escaped_char=self.source_buffer.$slice(self.escape_s).$chr(),$truthy(current_literal(escaped_char))?$truthy($truthy($b=current_literal())?$$($nesting,“REGEXP_META_CHARACTERS”).$match(escaped_char):$b)?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(escaped_char,self.ts,self.te):$truthy(current_literal())?current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):$truthy($truthy($b=current_literal())?escaped_char(“n”.$freeze()):$b)?$truthy(current_literal())?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):current_literal.$extend_string($truthy($b=self.escape)?$b:self.$tok(),self.ts,self.te);else{if(350($case)){self.escape=self.$tok($rb_plus(self.escape_s,1),p).$to_i(16).$chr($$$($$($nesting,“Encoding”),“UTF_8”)),p=$rb_minus(self.te=p,1),value=$truthy($b=self.escape)?$b:self.$tok($rb_plus(self.ts,1)),$truthy(self(18))?self.$emit(“tINTEGER”,value.$getbyte(0)):self.$emit(“tCHARACTER”,value),self.cs=767,p=$rb_plus(p,1),_goto_level=40;continue}if(121($case))self.$diagnostic(“fatal”,“invalid_unicode_escape”,nil,self.$range($rb_minus(self.escape_s,1),p)),p=$rb_minus(self.te=p,1),current_literal=self.$literal(),escaped_char=self.source_buffer.$slice(self.escape_s).$chr(),$truthy(current_literal(escaped_char))?$truthy($truthy($b=current_literal())?$$($nesting,“REGEXP_META_CHARACTERS”).$match(escaped_char):$b)?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(escaped_char,self.ts,self.te):$truthy(current_literal())?current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):$truthy($truthy($b=current_literal())?escaped_char(“n”.$freeze()):$b)?$truthy(current_literal())?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):current_literal.$extend_string($truthy($b=self.escape)?$b:self.$tok(),self.ts,self.te);else if(148($case))self.$diagnostic(“fatal”,“invalid_unicode_escape”,nil,self.$range($rb_minus(self.escape_s,1),p)),p=$rb_minus(self.te=p,1),current_literal=self.$literal(),escaped_char=self.source_buffer.$slice(self.escape_s).$chr(),$truthy(current_literal(escaped_char))?$truthy($truthy($b=current_literal())?$$($nesting,“REGEXP_META_CHARACTERS”).$match(escaped_char):$b)?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(escaped_char,self.ts,self.te):$truthy(current_literal())?current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):$truthy($truthy($b=current_literal())?escaped_char(“n”.$freeze()):$b)?$truthy(current_literal())?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):current_literal.$extend_string($truthy($b=self.escape)?$b:self.$tok(),self.ts,self.te);else{if(349($case)){self.$diagnostic(“fatal”,“invalid_unicode_escape”,nil,self.$range($rb_minus(self.escape_s,1),p)),p=$rb_minus(self.te=p,1),value=$truthy($b=self.escape)?$b:self.$tok($rb_plus(self.ts,1)),$truthy(self(18))?self.$emit(“tINTEGER”,value.$getbyte(0)):self.$emit(“tCHARACTER”,value),self.cs=767,p=$rb_plus(p,1),_goto_level=40;continue}if(126($case))self.$diagnostic(“fatal”,“invalid_unicode_escape”,nil,self.$range($rb_minus(self.escape_s,1),p)),p=$rb_minus(self.te=p,1),current_literal=self.$literal(),escaped_char=self.source_buffer.$slice(self.escape_s).$chr(),$truthy(current_literal(escaped_char))?$truthy($truthy($b=current_literal())?$$($nesting,“REGEXP_META_CHARACTERS”).$match(escaped_char):$b)?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(escaped_char,self.ts,self.te):$truthy(current_literal())?current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):$truthy($truthy($b=current_literal())?escaped_char(“n”.$freeze()):$b)?$truthy(current_literal())?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):current_literal.$extend_string($truthy($b=self.escape)?$b:self.$tok(),self.ts,self.te);else if(153($case))self.$diagnostic(“fatal”,“invalid_unicode_escape”,nil,self.$range($rb_minus(self.escape_s,1),p)),p=$rb_minus(self.te=p,1),current_literal=self.$literal(),escaped_char=self.source_buffer.$slice(self.escape_s).$chr(),$truthy(current_literal(escaped_char))?$truthy($truthy($b=current_literal())?$$($nesting,“REGEXP_META_CHARACTERS”).$match(escaped_char):$b)?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(escaped_char,self.ts,self.te):$truthy(current_literal())?current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):$truthy($truthy($b=current_literal())?escaped_char(“n”.$freeze()):$b)?$truthy(current_literal())?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):current_literal.$extend_string($truthy($b=self.escape)?$b:self.$tok(),self.ts,self.te);else{if(354($case)){self.$diagnostic(“fatal”,“invalid_unicode_escape”,nil,self.$range($rb_minus(self.escape_s,1),p)),p=$rb_minus(self.te=p,1),value=$truthy($b=self.escape)?$b:self.$tok($rb_plus(self.ts,1)),$truthy(self(18))?self.$emit(“tINTEGER”,value.$getbyte(0)):self.$emit(“tCHARACTER”,value),self.cs=767,p=$rb_plus(p,1),_goto_level=40;continue}if(123($case))self.$diagnostic(“fatal”,“unterminated_unicode”,nil,self.$range($rb_minus(p,1),p)),p=$rb_minus(self.te=p,1),current_literal=self.$literal(),escaped_char=self.source_buffer.$slice(self.escape_s).$chr(),$truthy(current_literal(escaped_char))?$truthy($truthy($b=current_literal())?$$($nesting,“REGEXP_META_CHARACTERS”).$match(escaped_char):$b)?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(escaped_char,self.ts,self.te):$truthy(current_literal())?current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):$truthy($truthy($b=current_literal())?escaped_char(“n”.$freeze()):$b)?$truthy(current_literal())?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):current_literal.$extend_string($truthy($b=self.escape)?$b:self.$tok(),self.ts,self.te);else if(150($case))self.$diagnostic(“fatal”,“unterminated_unicode”,nil,self.$range($rb_minus(p,1),p)),p=$rb_minus(self.te=p,1),current_literal=self.$literal(),escaped_char=self.source_buffer.$slice(self.escape_s).$chr(),$truthy(current_literal(escaped_char))?$truthy($truthy($b=current_literal())?$$($nesting,“REGEXP_META_CHARACTERS”).$match(escaped_char):$b)?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(escaped_char,self.ts,self.te):$truthy(current_literal())?current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):$truthy($truthy($b=current_literal())?escaped_char(“n”.$freeze()):$b)?$truthy(current_literal())?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):current_literal.$extend_string($truthy($b=self.escape)?$b:self.$tok(),self.ts,self.te);else{if(351($case)){self.$diagnostic(“fatal”,“unterminated_unicode”,nil,self.$range($rb_minus(p,1),p)),p=$rb_minus(self.te=p,1),value=$truthy($b=self.escape)?$b:self.$tok($rb_plus(self.ts,1)),$truthy(self(18))?self.$emit(“tINTEGER”,value.$getbyte(0)):self.$emit(“tCHARACTER”,value),self.cs=767,p=$rb_plus(p,1),_goto_level=40;continue}if(110($case))self.$diagnostic(“fatal”,“escape_eof”,nil,self.$range($rb_minus(p,1),p)),p=$rb_minus(self.te=p,1),current_literal=self.$literal(),escaped_char=self.source_buffer.$slice(self.escape_s).$chr(),$truthy(current_literal(escaped_char))?$truthy($truthy($b=current_literal())?$$($nesting,“REGEXP_META_CHARACTERS”).$match(escaped_char):$b)?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(escaped_char,self.ts,self.te):$truthy(current_literal())?current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):$truthy($truthy($b=current_literal())?escaped_char(“n”.$freeze()):$b)?$truthy(current_literal())?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):current_literal.$extend_string($truthy($b=self.escape)?$b:self.$tok(),self.ts,self.te);else if(137($case))self.$diagnostic(“fatal”,“escape_eof”,nil,self.$range($rb_minus(p,1),p)),p=$rb_minus(self.te=p,1),current_literal=self.$literal(),escaped_char=self.source_buffer.$slice(self.escape_s).$chr(),$truthy(current_literal(escaped_char))?$truthy($truthy($b=current_literal())?$$($nesting,“REGEXP_META_CHARACTERS”).$match(escaped_char):$b)?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(escaped_char,self.ts,self.te):$truthy(current_literal())?current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):$truthy($truthy($b=current_literal())?escaped_char(“n”.$freeze()):$b)?$truthy(current_literal())?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):current_literal.$extend_string($truthy($b=self.escape)?$b:self.$tok(),self.ts,self.te);else{if(338($case)){self.$diagnostic(“fatal”,“escape_eof”,nil,self.$range($rb_minus(p,1),p)),p=$rb_minus(self.te=p,1),value=$truthy($b=self.escape)?$b:self.$tok($rb_plus(self.ts,1)),$truthy(self(18))?self.$emit(“tINTEGER”,value.$getbyte(0)):self.$emit(“tCHARACTER”,value),self.cs=767,p=$rb_plus(p,1),_goto_level=40;continue}if(161($case))self.escape_s=p,self.escape=nil,self.te=$rb_plus(p,1),current_literal=self.$literal(),escaped_char=self.source_buffer.$slice(self.escape_s).$chr(),$truthy(current_literal(escaped_char))?$truthy($truthy($b=current_literal())?$$($nesting,“REGEXP_META_CHARACTERS”).$match(escaped_char):$b)?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(escaped_char,self.ts,self.te):$truthy(current_literal())?current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):$truthy($truthy($b=current_literal())?escaped_char(“n”.$freeze()):$b)?$truthy(current_literal())?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):current_literal.$extend_string($truthy($b=self.escape)?$b:self.$tok(),self.ts,self.te);else if(166($case))self.escape_s=p,self.escape=nil,self.te=$rb_plus(p,1),current_literal=self.$literal(),escaped_char=self.source_buffer.$slice(self.escape_s).$chr(),$truthy(current_literal(escaped_char))?$truthy($truthy($b=current_literal())?$$($nesting,“REGEXP_META_CHARACTERS”).$match(escaped_char):$b)?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(escaped_char,self.ts,self.te):$truthy(current_literal())?current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):$truthy($truthy($b=current_literal())?escaped_char(“n”.$freeze()):$b)?$truthy(current_literal())?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(self.$tok().$gsub(“\n”.$freeze(),“”.$freeze()),self.ts,self.te):current_literal.$extend_string($truthy($b=self.escape)?$b:self.$tok(),self.ts,self.te);else if(57($case))$truthy(self.herebody_s)&&(p=self.herebody_s,self.herebody_s=nil),self.newline_s=p;else if(30($case))$truthy(self.herebody_s)&&(p=self.herebody_s,self.herebody_s=nil),tm=p;else if(32($case))$truthy(self.herebody_s)&&(p=self.herebody_s,self.herebody_s=nil),tm=p;else if(34($case))$truthy(self.herebody_s)&&(p=self.herebody_s,self.herebody_s=nil),tm=p;else if(201($case))$truthy(self.herebody_s)&&(p=self.herebody_s,self.herebody_s=nil),p=$rb_minus(self.te=p,1);else if(220($case))$truthy(self.herebody_s)&&(p=self.herebody_s,self.herebody_s=nil),p=$rb_minus(self.te=p,1);else if(228($case))$truthy(self.herebody_s)&&(p=self.herebody_s,self.herebody_s=nil),p=$rb_minus(self.te=p,1);else{if(33($case)){$truthy(self.herebody_s)&&(p=self.herebody_s,self.herebody_s=nil),self.te=$rb_plus(p,1),p=$rb_minus(self.ts,1),self.cs=767,_goto_level=20;continue}if(259($case))$truthy(self.herebody_s)&&(p=self.herebody_s,self.herebody_s=nil),p=$rb_minus(self.te=p,1);else{if(251($case)){$truthy(self.herebody_s)&&(p=self.herebody_s,self.herebody_s=nil),p=$rb_minus(p=$rb_minus(self.te=p,1),1),self.cs=767,_goto_level=20;continue}if(270($case))$truthy(self.herebody_s)&&(p=self.herebody_s,self.herebody_s=nil),p=$rb_minus(self.te=p,1);else if(282($case))$truthy(self.herebody_s)&&(p=self.herebody_s,self.herebody_s=nil),p=$rb_minus(self.te=p,1);else{if(278($case)){$truthy(self.herebody_s)&&(p=self.herebody_s,self.herebody_s=nil),p=$rb_minus(p=$rb_minus(self.te=p,1),1),self.cs=767,_goto_level=20;continue}if(58($case)){$truthy(self.herebody_s)&&(p=self.herebody_s,self.herebody_s=nil),self.te=$rb_plus(p,1),self.$emit(“tUNARY_NUM”,self.$tok(self.ts,$rb_plus(self.ts,1)),self.ts,$rb_plus(self.ts,1)),p=$rb_minus(p,1),self.cs=767,p=$rb_plus(p,1),_goto_level=40;continue}if(49($case)){$truthy(self.herebody_s)&&(p=self.herebody_s,self.herebody_s=nil),self.te=$rb_plus(p,1),self.$emit(“tIDENTIFIER”,ident_tok,ident_ts,ident_te),p=$rb_minus(ident_te,1),$truthy($truthy($b=$truthy($c=self.static_env()[“$!”]())?self.static_env(ident_tok):$c)?$rb_lt(self.version,25):$b)?self.cs=438:self.cs=497,p=$rb_plus(p,1),_goto_level=40;continue}if(300($case))$truthy(self.herebody_s)&&(p=self.herebody_s,self.herebody_s=nil),p=$rb_minus(self.te=p,1);else if(372($case))$truthy(self.herebody_s)&&(p=self.herebody_s,self.herebody_s=nil),p=$rb_minus(self.te=p,1);else{if(368($case)){if($truthy(self.herebody_s)&&(p=self.herebody_s,self.herebody_s=nil),p=$rb_minus(self.te=p,1),$truthy(self.in_kwarg)){p=$rb_minus(p,1),self.cs=767,_goto_level=20;continue}self.cs=181,_goto_level=20;continue}if(381($case))$truthy(self.herebody_s)&&(p=self.herebody_s,self.herebody_s=nil),p=$rb_minus(self.te=p,1);else{if(378($case)){$truthy(self.herebody_s)&&(p=self.herebody_s,self.herebody_s=nil),p=$rb_minus(self.te=p,1),self.cs=181,_goto_level=20;continue}if(465($case))$truthy(self.herebody_s)&&(p=self.herebody_s,self.herebody_s=nil),p=$rb_minus(self.te=p,1);else{if(398($case)){$truthy(self.herebody_s)&&(p=self.herebody_s,self.herebody_s=nil),p=$rb_minus(self.te=p,1),self.cs=945,_goto_level=20;continue}if(93($case))$truthy(self.herebody_s)&&(p=self.herebody_s,self.herebody_s=nil),p=$rb_minus(self.te=p,1);else{if(250($case)){self.cond.$push(!1),self.cmdarg.$push(!1),current_literal=self.$literal(),$truthy(current_literal)&¤t_literal.$start_interp_brace(),p=$rb_minus(self.te=p,1),self.lambda_stack.$last()(self.paren_nest)?(self.lambda_stack.$pop(),self.$emit(“tLAMBEG”,“{”.$freeze(),$rb_minus(self.te,1),self.te)):self.$emit(“tLCURLY”,“{”.$freeze(),$rb_minus(self.te,1),self.te),self.cs=759,p=$rb_plus(p,1),_goto_level=40;continue}if(272($case)){self.cond.$push(!1),self.cmdarg.$push(!1),current_literal=self.$literal(),$truthy(current_literal)&¤t_literal.$start_interp_brace(),p=$rb_minus(self.te=p,1),self.lambda_stack.$last()(self.paren_nest)?(self.lambda_stack.$pop(),self.$emit(“tLAMBEG”,“{”.$freeze())):self.$emit(“tLBRACE_ARG”,“{”.$freeze()),self.cs=759,p=$rb_plus(p,1),_goto_level=40;continue}if(364($case)){self.cond.$push(!1),self.cmdarg.$push(!1),current_literal=self.$literal(),$truthy(current_literal)&¤t_literal.$start_interp_brace(),p=$rb_minus(self.te=p,1),self.lambda_stack.$last()(self.paren_nest)?(self.lambda_stack.$pop(),self.$emit(“tLAMBEG”,“{”.$freeze())):self.$emit(“tLBRACE”,“{”.$freeze()),p=$rb_plus(p,1),_goto_level=40;continue}if(477($case)){self.cond.$push(!1),self.cmdarg.$push(!1),current_literal=self.$literal(),$truthy(current_literal)&¤t_literal.$start_interp_brace(),p=$rb_minus(self.te=p,1),self.lambda_stack.$last()(self.paren_nest)?(self.lambda_stack.$pop(),self.$tok()(“{”.$freeze())?self.$emit(“tLAMBEG”,“{”.$freeze()):self.$emit(“kDO_LAMBDA”,“do”.$freeze())):self.$tok()(“{”.$freeze())?self.$emit(“tLCURLY”,“{”.$freeze()):self.$emit_do(),self.cs=759,p=$rb_plus(p,1),_goto_level=40;continue}if(478($case)){if(current_literal=self.$literal(),$truthy(current_literal)&&$truthy(current_literal.$end_interp_brace_and_try_closing())){$truthy(self(18,19))?(self.$emit(“tRCURLY”,“}”.$freeze(),$rb_minus(p,1),p),$truthy($rb_lt(self.version,24))?(self.cond.$lexpop(),self.cmdarg.$lexpop()):(self.cond.$pop(),self.cmdarg.$pop())):self.$emit(“tSTRING_DEND”,“}”.$freeze(),$rb_minus(p,1),p),$truthy(current_literal.$saved_herebody_s())&&(self.herebody_s=current_literal.$saved_herebody_s()),p=$rb_minus(p,1),self.cs=self.$next_state_for_literal(current_literal),p=$rb_plus(p,1),_goto_level=40;continue}p=$rb_minus(self.te=p,1),self.$emit_table($$($nesting,“PUNCTUATION”)),$truthy($rb_lt(self.version,24))?(self.cond.$lexpop(),self.cmdarg.$lexpop()):(self.cond.$pop(),self.cmdarg.$pop()),$truthy($truthy($b=self.$tok()(“}”.$freeze()))?$b:self.$tok()(“]”.$freeze()))&&($truthy($rb_ge(self.version,25))?self.cs=767:self.cs=503),p=$rb_plus(p,1),_goto_level=40;continue}if(60($case))self.sharp_s=$rb_minus(p,1),self.$emit_comment(self.sharp_s,p(pe)?$rb_minus(p,2):p);else if(64($case))self.$emit_comment(self.sharp_s,p(pe)?$rb_minus(p,2):p),self.newline_s=p;else if(204($case))self.$emit_comment(self.sharp_s,p(pe)?$rb_minus(p,2):p),p=$rb_minus(self.te=p,1);else if(219($case))self.$emit_comment(self.sharp_s,p(pe)?$rb_minus(p,2):p),p=$rb_minus(self.te=p,1);else if(231($case))self.$emit_comment(self.sharp_s,p(pe)?$rb_minus(p,2):p),p=$rb_minus(self.te=p,1);else{if(253($case)){self.$emit_comment(self.sharp_s,p(pe)?$rb_minus(p,2):p),p=$rb_minus(self.te=p,1),self.cs=767,_goto_level=20;continue}if(268($case))self.$emit_comment(self.sharp_s,p(pe)?$rb_minus(p,2):p),p=$rb_minus(self.te=p,1);else if(280($case))self.$emit_comment(self.sharp_s,p(pe)?$rb_minus(p,2):p),p=$rb_minus(self.te=p,1);else if(306($case))self.$emit_comment(self.sharp_s,p(pe)?$rb_minus(p,2):p),p=$rb_minus(self.te=p,1);else if(370($case))self.$emit_comment(self.sharp_s,p(pe)?$rb_minus(p,2):p),p=$rb_minus(self.te=p,1);else if(380($case))self.$emit_comment(self.sharp_s,p(pe)?$rb_minus(p,2):p),p=$rb_minus(self.te=p,1);else if(402($case))self.$emit_comment(self.sharp_s,p(pe)?$rb_minus(p,2):p),p=$rb_minus(self.te=p,1);else if(95($case))self.$emit_comment(self.sharp_s,p(pe)?$rb_minus(p,2):p),p=$rb_minus(self.te=p,1);else{if(225($case)){tm=p,p=$rb_minus(self.te=p,1),self.$emit(“tFID”,self.$tok(self.ts,tm),self.ts,tm),self.cs=self.$arg_or_cmdarg(),p=$rb_plus(p=$rb_minus(tm,1),1),_goto_level=40;continue}if(318($case)){tm=p,p=$rb_minus(self.te=p,1),self.$emit(“tSYMBOL”,self.$tok($rb_plus(self.ts,1),tm),self.ts,tm),p=$rb_minus(tm,1),self.cs=767,p=$rb_plus(p,1),_goto_level=40;continue}if(291($case)){tm=p,p=$rb_minus(self.te=p,1),p=$rb_minus(self.ts,1),self.cs=767,_goto_level=20;continue}if(395($case)){if(tm=p,$case=self.act,135($case)){p=$rb_minus(self.te,1),self.lambda_stack.$last()(self.paren_nest)?(self.lambda_stack.$pop(),self.$tok()(“{”.$freeze())?self.$emit(“tLAMBEG”,“{”.$freeze()):self.$emit(“kDO_LAMBDA”,“do”.$freeze())):self.$tok()(“{”.$freeze())?self.$emit(“tLCURLY”,“{”.$freeze()):self.$emit_do(),self.cs=759,p=$rb_plus(p,1),_goto_level=40;continue}if(136($case)){p=$rb_minus(self.te,1),self.$emit_table($$($nesting,“KEYWORDS”)),self.cs=325,p=$rb_plus(p,1),_goto_level=40;continue}if(137($case)){p=$rb_minus(self.te,1),self.$emit(“kCLASS”,“class”.$freeze(),self.ts,$rb_plus(self.ts,5)),self.$emit(“tLSHFT”,“<<”.$freeze(),$rb_minus(self.te,2),self.te),self.cs=759,p=$rb_plus(p,1),_goto_level=40;continue}if(138($case)){p=$rb_minus(self.te,1),self.$emit_table($$($nesting,“KEYWORDS”)),self.cs=535,p=$rb_plus(p,1),_goto_level=40;continue}if(139($case)){p=$rb_minus(self.te,1),self.$emit_table($$($nesting,“KEYWORDS”)),self.cs=759,p=$rb_plus(p,1),_goto_level=40;continue}if(140($case)){p=$rb_minus(self.te,1),self.$emit_table($$($nesting,“KEYWORDS”)),self.cs=511,p=$rb_plus(p,1),_goto_level=40;continue}if(141($case)){if(p=$rb_minus(self.te,1),self.$emit_table($$($nesting,“KEYWORDS”)),$truthy($truthy($b=self(18))?self.$tok()(“not”.$freeze()):$b)){self.cs=535,p=$rb_plus(p,1),_goto_level=40;continue}self.cs=466,p=$rb_plus(p,1),_goto_level=40;continue}if(142($case)){p=$rb_minus(self.te,1),$truthy(self(18))?(self.$emit(“tIDENTIFIER”),$truthy($truthy($b=self.static_env()[“$!”]())?self.static_env(self.$tok()):$b)||(self.cs=self.$arg_or_cmdarg())):self.$emit(“k__ENCODING__”,“__ENCODING__”.$freeze()),p=$rb_plus(p,1),_goto_level=40;continue}if(143($case)){p=$rb_minus(self.te,1),self.$emit_table($$($nesting,“KEYWORDS”)),p=$rb_plus(p,1),_goto_level=40;continue}if(144($case)){p=$rb_minus(self.te,1),digits=self.$tok(self.num_digits_s,self.num_suffix_s),$truthy(digits(“_”.$freeze()))?self.$diagnostic(“error”,“trailing_in_number”,$hash2(,{character:“_”.$freeze()}),self.$range($rb_minus(self.te,1),self.te)):$truthy($truthy($b=$truthy($c=digits())?self.num_base(8):$c)?self(18):$b)?digits=“0”.$freeze():$truthy(digits())?self.$diagnostic(“error”,“empty_numeric”):$truthy(($b=self.num_base(8))?invalid_idx=digits.$index(//):self.num_base(8))&&(invalid_s=$rb_plus(self.num_digits_s,invalid_idx),self.$diagnostic(“error”,“invalid_octal”,nil,self.$range(invalid_s,$rb_plus(invalid_s,1)))),$truthy(self(18,19,20))?(self.$emit(“tINTEGER”,digits.$to_i(self.num_base),self.ts,self.num_suffix_s),p=$rb_minus(self.num_suffix_s,1)):self.num_xfrm.$call(digits.$to_i(self.num_base)),p=$rb_plus(p,1),_goto_level=40;continue}if(146($case)){if(p=$rb_minus(self.te,1),!$truthy(self(18,19,20))){self.$emit(“tINTEGER”,self.$tok(self.ts,$rb_minus(self.te,1)).$to_i(),self.ts,$rb_minus(self.te,1)),p=$rb_plus(p=$rb_minus(p,1),1),_goto_level=40;continue}self.$diagnostic(“error”,“trailing_in_number”,$hash2(,{character:self.$tok($rb_minus(self.te,1),self.te)}),self.$range($rb_minus(self.te,1),self.te))}else if(147($case)){if(p=$rb_minus(self.te,1),!$truthy(self(18,19,20))){self.$emit(“tFLOAT”,self.$tok(self.ts,$rb_minus(self.te,1)).$to_f(),self.ts,$rb_minus(self.te,1)),p=$rb_plus(p=$rb_minus(p,1),1),_goto_level=40;continue}self.$diagnostic(“error”,“trailing_in_number”,$hash2(,{character:self.$tok($rb_minus(self.te,1),self.te)}),self.$range($rb_minus(self.te,1),self.te))}else{if(148($case)){p=$rb_minus(self.te,1),digits=self.$tok(self.ts,self.num_suffix_s),$truthy(self(18,19,20))?(self.$emit(“tFLOAT”,self.$Float(digits),self.ts,self.num_suffix_s),p=$rb_minus(self.num_suffix_s,1)):self.num_xfrm.$call(digits),p=$rb_plus(p,1),_goto_level=40;continue}if(150($case)){p=$rb_minus(self.te,1),self.$emit(“tCONSTANT”),self.cs=self.$arg_or_cmdarg(),p=$rb_plus(p,1),_goto_level=40;continue}if(154($case)){if(p=$rb_minus(self.te,1),self.$emit(“tIDENTIFIER”),$truthy($truthy($b=self.static_env()[“$!”]())?self.static_env(self.$tok()):$b)){self.cs=438,p=$rb_plus(p,1),_goto_level=40;continue}self.cs=self.$arg_or_cmdarg(),p=$rb_plus(p,1),_goto_level=40;continue}if(155($case)){p=$rb_minus(self.te,1),tm(self.te)?self.$emit(“tFID”):(self.$emit(“tIDENTIFIER”,self.$tok(self.ts,tm),self.ts,tm),p=$rb_minus(tm,1)),self.cs=466,p=$rb_plus(p,1),_goto_level=40;continue}if(157($case)){p=$rb_minus(self.te,1),self.$emit_table($$($nesting,“PUNCTUATION”)),self.cs=759,p=$rb_plus(p,1),_goto_level=40;continue}if(158($case)){p=$rb_minus(self.te,1),self.$emit_table($$($nesting,“PUNCTUATION”)),self.cs=535,p=$rb_plus(p,1),_goto_level=40;continue}}}else{if(226($case)){tm=$rb_minus(p,2),p=$rb_minus(self.te=p,1),self.$emit(“tFID”,self.$tok(self.ts,tm),self.ts,tm),self.cs=self.$arg_or_cmdarg(),p=$rb_plus(p=$rb_minus(tm,1),1),_goto_level=40;continue}if(319($case)){tm=$rb_minus(p,2),p=$rb_minus(self.te=p,1),self.$emit(“tSYMBOL”,self.$tok($rb_plus(self.ts,1),tm),self.ts,tm),p=$rb_minus(tm,1),self.cs=767,p=$rb_plus(p,1),_goto_level=40;continue}if(293($case)){tm=$rb_minus(p,2),p=$rb_minus(self.te=p,1),p=$rb_minus(self.ts,1),self.cs=767,_goto_level=20;continue}if(396($case)){tm=$rb_minus(p,2),p=$rb_minus(self.te=p,1),tm(self.te)?self.$emit(“tFID”):(self.$emit(“tIDENTIFIER”,self.$tok(self.ts,tm),self.ts,tm),p=$rb_minus(tm,1)),self.cs=466,p=$rb_plus(p,1),_goto_level=40;continue}if(320($case)){tm=p,p=$rb_minus(self.te=p,1),self.$emit(“tSYMBOL”,self.$tok($rb_plus(self.ts,1),tm),self.ts,tm),p=$rb_minus(tm,1),self.cs=767,p=$rb_plus(p,1),_goto_level=40;continue}if(294($case)){tm=p,p=$rb_minus(self.te=p,1),p=$rb_minus(self.ts,1),self.cs=767,_goto_level=20;continue}if(321($case)){tm=$rb_minus(p,2),p=$rb_minus(self.te=p,1),self.$emit(“tSYMBOL”,self.$tok($rb_plus(self.ts,1),tm),self.ts,tm),p=$rb_minus(tm,1),self.cs=767,p=$rb_plus(p,1),_goto_level=40;continue}if(295($case)){tm=$rb_minus(p,2),p=$rb_minus(self.te=p,1),p=$rb_minus(self.ts,1),self.cs=767,_goto_level=20;continue}if(325($case)){tm=$rb_minus(p,2),p=$rb_minus(self.te=p,1),self.$emit(“tSYMBOL”,self.$tok($rb_plus(self.ts,1),tm),self.ts,tm),p=$rb_minus(tm,1),self.cs=767,p=$rb_plus(p,1),_goto_level=40;continue}if(298($case)){tm=$rb_minus(p,2),p=$rb_minus(self.te=p,1),p=$rb_minus(self.ts,1),self.cs=767,_goto_level=20;continue}if(324($case)){tm=$rb_minus(p,2),p=$rb_minus(self.te=p,1),self.$emit(“tSYMBOL”,self.$tok($rb_plus(self.ts,1),tm),self.ts,tm),p=$rb_minus(tm,1),self.cs=767,p=$rb_plus(p,1),_goto_level=40;continue}if(297($case)){if(tm=$rb_minus(p,2),$case=self.act,94($case)){p=$rb_minus(self.te,1),self.$emit(“tUNARY_NUM”,self.$tok(self.ts,$rb_plus(self.ts,1)),self.ts,$rb_plus(self.ts,1)),p=$rb_minus(p,1),self.cs=767,p=$rb_plus(p,1),_goto_level=40;continue}if(113($case)){p=$rb_minus(self.te,1),self.$emit_table($$($nesting,“PUNCTUATION_BEGIN”)),p=$rb_plus(p,1),_goto_level=40;continue}if(114($case)){p=$rb_minus(self.te,1),self.$emit(“kRESCUE”,“rescue”.$freeze(),self.ts,tm),p=$rb_minus(tm,1),self.cs=511,p=$rb_plus(p,1),_goto_level=40;continue}if(115($case)){p=$rb_minus(self.te,1),self.$emit_table($$($nesting,“KEYWORDS_BEGIN”)),self.cs=759,p=$rb_plus(p,1),_goto_level=40;continue}if(117($case)){p=$rb_minus(self.te,1),p=$rb_minus(self.ts,1),self.cs=767,_goto_level=20;continue}if(118($case)){if(p=$rb_minus(self.te,1),self.$emit(“tIDENTIFIER”),$truthy($truthy($b=self.static_env()[“$!”]())?self.static_env(self.$tok()):$b)){self.cs=438,p=$rb_plus(p,1),_goto_level=40;continue}self.cs=self.$arg_or_cmdarg(),p=$rb_plus(p,1),_goto_level=40;continue}if(122($case)){p=$rb_minus(self.te,1),p=$rb_minus(self.ts,1),self.cs=767,_goto_level=20;continue}}else{if(322($case)){tm=$rb_minus(p,3),p=$rb_minus(self.te=p,1),self.$emit(“tSYMBOL”,self.$tok($rb_plus(self.ts,1),tm),self.ts,tm),p=$rb_minus(tm,1),self.cs=767,p=$rb_plus(p,1),_goto_level=40;continue}if(296($case)){tm=$rb_minus(p,3),p=$rb_minus(self.te=p,1),p=$rb_minus(self.ts,1),self.cs=767,_goto_level=20;continue}if(323($case)){tm=$rb_minus(p,2),p=$rb_minus(self.te=p,1),self.$emit(“tSYMBOL”,self.$tok($rb_plus(self.ts,1),tm),self.ts,tm),p=$rb_minus(tm,1),self.cs=767,p=$rb_plus(p,1),_goto_level=40;continue}if(460($case)){tm=$rb_minus(p,2),p=$rb_minus(self.te=p,1),self.$emit(“tCONSTANT”,self.$tok(self.ts,tm),self.ts,tm),p=$rb_plus(p=$rb_minus(tm,1),1),_goto_level=40;continue}if(249($case)){self.cond.$push(!1),self.cmdarg.$push(!1),p=$rb_minus(self.te=p,1),self.$emit(“tLBRACK”,“[”.$freeze(),$rb_minus(self.te,1),self.te),self.cs=535,p=$rb_plus(p,1),_goto_level=40;continue}if(357($case)){self.cond.$push(!1),self.cmdarg.$push(!1),p=$rb_minus(self.te=p,1),self.$emit(“tLBRACK”,“[”.$freeze()),p=$rb_plus(p,1),_goto_level=40;continue}if(463($case)){self.cond.$push(!1),self.cmdarg.$push(!1),p=$rb_minus(self.te=p,1),self.$emit(“tLBRACK2”,“[”.$freeze()),self.cs=535,p=$rb_plus(p,1),_goto_level=40;continue}if(241($case)){if(self.cond.$push(!1),self.cmdarg.$push(!1),self.paren_nest=$rb_plus(self.paren_nest,1),p=$rb_minus(self.te=p,1),$truthy(self(18))){self.$emit(“tLPAREN2”,“(”.$freeze(),$rb_minus(self.te,1),self.te),self.cs=759,p=$rb_plus(p,1),_goto_level=40;continue}self.$emit(“tLPAREN_ARG”,“(”.$freeze(),$rb_minus(self.te,1),self.te),self.cs=535,p=$rb_plus(p,1),_goto_level=40;continue}if(254($case)){self.cond.$push(!1),self.cmdarg.$push(!1),self.paren_nest=$rb_plus(self.paren_nest,1),p=$rb_minus(self.te=p,1),self.$emit(“tLPAREN2”,“(”.$freeze()),self.cs=535,p=$rb_plus(p,1),_goto_level=40;continue}if(262($case)){if(self.cond.$push(!1),self.cmdarg.$push(!1),self.paren_nest=$rb_plus(self.paren_nest,1),p=$rb_minus(self.te=p,1),self.$emit(“tLPAREN_ARG”,“(”.$freeze(),$rb_minus(self.te,1),self.te),$truthy(self(18))){self.cs=759,p=$rb_plus(p,1),_goto_level=40;continue}self.cs=535,p=$rb_plus(p,1),_goto_level=40;continue}if(311($case)){self.cond.$push(!1),self.cmdarg.$push(!1),self.paren_nest=$rb_plus(self.paren_nest,1),p=$rb_minus(self.te=p,1),self.$emit(“tLPAREN”,“(”.$freeze()),p=$rb_plus(p,1),_goto_level=40;continue}if(408($case)){self.cond.$push(!1),self.cmdarg.$push(!1),self.paren_nest=$rb_plus(self.paren_nest,1),p=$rb_minus(self.te=p,1),self.$emit_table($$($nesting,“PUNCTUATION”)),self.cs=535,p=$rb_plus(p,1),_goto_level=40;continue}if(409($case)){self.paren_nest=$rb_minus(self.paren_nest,1),p=$rb_minus(self.te=p,1),self.$emit_table($$($nesting,“PUNCTUATION”)),$truthy($rb_lt(self.version,24))?(self.cond.$lexpop(),self.cmdarg.$lexpop()):(self.cond.$pop(),self.cmdarg.$pop()),$truthy($truthy($b=self.$tok()(“}”.$freeze()))?$b:self.$tok()(“]”.$freeze()))&&($truthy($rb_ge(self.version,25))?self.cs=767:self.cs=503),p=$rb_plus(p,1),_goto_level=40;continue}if(70($case))heredoc_e=p,self.newline_s=p;else if(328($case)){if(new_herebody_s=p,p=$rb_minus(self.te=p,1),self.$tok(self.ts,heredoc_e)(/^<<(-?)(~?)([“'`]?)(.*)3$/m),indent=$truthy($b=(($c=$gvars[”~“])===nil?nil:$c[”$“](1))()[”$!“]())?$b:(($c=$gvars)===nil?nil:$c[”$“](2))()[”$!“](),dedent_body=(($b=$gvars)===nil?nil:$b[”$“](2))()[”$!“](),type=$truthy((($b=$gvars)===nil?nil:$b[”$“](3))())?'<<”'.$freeze():$rb_plus(“<<".$freeze(),($b=$gvars)===nil?nil:$b[”$“](3)),delimiter=($b=$gvars)===nil?nil:$b[”$“](4),$truthy($rb_ge(self.version,24))&&$truthy($rb_gt(delimiter.$count(”n“),0))&&($truthy(delimiter(”n“))?(self.$diagnostic(”warning“,”heredoc_id_ends_with_nl“,nil,self.$range(self.ts,$rb_plus(self.ts,1))),delimiter=delimiter.$rstrip()):self.$diagnostic(”fatal“,”heredoc_id_has_newline“,nil,self.$range(self.ts,$rb_plus(self.ts,1)))),$truthy($truthy($b=dedent_body)?self(18,19,20,21,22):$b)){self.$emit(”tLSHFT“,”<<“.$freeze(),self.ts,$rb_plus(self.ts,2)),p=$rb_plus(self.ts,1),self.cs=535,p=$rb_plus(p,1),_goto_level=40;continue}self.cs=self.$push_literal(type,delimiter,self.ts,heredoc_e,indent,dedent_body),self.herebody_s=$truthy($b=self.herebody_s)?$b:new_herebody_s,p=$rb_minus(self.herebody_s,1)}else{if(333($case)){self.escape=nil,p=$rb_minus(self.te=p,1),value=$truthy($b=self.escape)?$b:self.$tok($rb_plus(self.ts,1)),$truthy(self(18))?self.$emit(”tINTEGER“,value.$getbyte(0)):self.$emit(”tCHARACTER“,value),self.cs=767,p=$rb_plus(p,1),_goto_level=40;continue}if(360($case)){tm=p,p=$rb_minus(self.te=p,1),self.$emit(”kRESCUE“,”rescue“.$freeze(),self.ts,tm),p=$rb_minus(tm,1),self.cs=511,p=$rb_plus(p,1),_goto_level=40;continue}if(450($case))self.num_base=16,self.num_digits_s=p,self.num_suffix_s=p;else if(444($case))self.num_base=10,self.num_digits_s=p,self.num_suffix_s=p;else if(447($case))self.num_base=8,self.num_digits_s=p,self.num_suffix_s=p;else if(441($case))self.num_base=2,self.num_digits_s=p,self.num_suffix_s=p;else if(456($case))self.num_base=10,self.num_digits_s=self.ts,self.num_suffix_s=p;else if(419($case))self.num_base=8,self.num_digits_s=self.ts,self.num_suffix_s=p;else if(457($case))self.num_suffix_s=p,self.num_xfrm=$send(self,”lambda“,[],(($$27=function(chars){var self=$$27.$$s||this;return null==chars&&(chars=nil),self.$emit(”tINTEGER“,chars)}).$$s=self,$$27.$$arity=1,$$27));else{if(86($case)){tm=p,self.te=$rb_plus(p,1),p=$rb_minus(tm,1),self.cs=767,_goto_level=20;continue}if(8($case))self.te=$rb_plus(p,1),self.newline_s=p;else if(423($case))self.te=$rb_plus(p,1),self.num_suffix_s=p;else if(210($case))self.te=$rb_plus(p,1),self.act=39;else if(197($case))self.te=$rb_plus(p,1),self.act=40;else if(193($case))self.te=$rb_plus(p,1),self.act=41;else if(26($case))self.te=$rb_plus(p,1),self.act=67;else if(243($case))self.te=$rb_plus(p,1),self.act=68;else if(27($case))self.te=$rb_plus(p,1),self.act=73;else if(236($case))self.te=$rb_plus(p,1),self.act=74;else if(263($case))self.te=$rb_plus(p,1),self.act=80;else if(45($case))self.te=$rb_plus(p,1),self.act=81;else if(284($case))self.te=$rb_plus(p,1),self.act=88;else if(273($case))self.te=$rb_plus(p,1),self.act=89;else if(287($case))self.te=$rb_plus(p,1),self.act=113;else if(359($case))self.te=$rb_plus(p,1),self.act=114;else if(358($case))self.te=$rb_plus(p,1),self.act=115;else if(72($case))self.te=$rb_plus(p,1),self.act=117;else if(285($case))self.te=$rb_plus(p,1),self.act=118;else if(288($case))self.te=$rb_plus(p,1),self.act=122;else if(473($case))self.te=$rb_plus(p,1),self.act=135;else if(468($case))self.te=$rb_plus(p,1),self.act=136;else if(476($case))self.te=$rb_plus(p,1),self.act=138;else if(469($case))self.te=$rb_plus(p,1),self.act=139;else if(470($case))self.te=$rb_plus(p,1),self.act=140;else if(475($case))self.te=$rb_plus(p,1),self.act=141;else if(467($case))self.te=$rb_plus(p,1),self.act=142;else if(462($case))self.te=$rb_plus(p,1),self.act=143;else if(388($case))self.te=$rb_plus(p,1),self.act=144;else if(421($case))self.te=$rb_plus(p,1),self.act=147;else if(79($case))self.te=$rb_plus(p,1),self.act=148;else if(391($case))self.te=$rb_plus(p,1),self.act=150;else if(382($case))self.te=$rb_plus(p,1),self.act=154;else if(394($case))self.te=$rb_plus(p,1),self.act=155;else if(386($case))self.te=$rb_plus(p,1),self.act=157;else if(393($case))self.te=$rb_plus(p,1),self.act=158;else if(167($case)){if(self.newline_s=p,self.te=$rb_plus(p,1),current_literal=self.$literal(),self.te(pe)&&self.$diagnostic(”fatal“,”string_eof“,nil,self.$range(current_literal.$str_s(),$rb_plus(current_literal.$str_s(),1))),$truthy(current_literal())){if(line=self.$tok(self.herebody_s,self.ts).$gsub(/r+$/,”“.$freeze()),$truthy(self(18,19,20))&&(line=line.$gsub(/r.*$/,”“.$freeze())),$truthy(current_literal.$nest_and_try_closing(line,self.herebody_s,self.ts))){self.herebody_s=self.te,p=$rb_minus(current_literal.$heredoc_e(),1),self.cs=self.$pop_literal(),p=$rb_plus(p,1),_goto_level=40;continue}current_literal.$infer_indent_level(line),self.herebody_s=self.te}else{if($truthy(current_literal.$nest_and_try_closing(self.$tok(),self.ts,self.te))){self.cs=self.$pop_literal(),p=$rb_plus(p,1),_goto_level=40;continue}$truthy(self.herebody_s)&&(p=$rb_minus(self.herebody_s,1),self.herebody_s=nil)}$truthy($truthy($b=current_literal())?self(self.source_pts[”$“](p))():$b)?current_literal.$extend_space(self.ts,self.te):(current_literal.$extend_string(self.$tok(),self.ts,self.te),current_literal.$flush_string()),self.escape_s=p,self.escape=nil}else if(115($case))codepoint=self.source_pts[”$“]($rb_minus(p,1)),$truthy((self.escape=$$($nesting,”ESCAPES“)[”$“](codepoint))())&&(self.escape=self.$encode_escape(self.source_buffer.$slice($rb_minus(p,1)))),self.escape=self.$encode_escape(self.escape[”$“](0).$ord()(159)),p=$rb_minus(self.te=p,1),current_literal=self.$literal(),escaped_char=self.source_buffer.$slice(self.escape_s).$chr(),$truthy(current_literal(escaped_char))?$truthy($truthy($b=current_literal())?$$($nesting,”REGEXP_META_CHARACTERS“).$match(escaped_char):$b)?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(escaped_char,self.ts,self.te):$truthy(current_literal())?current_literal.$extend_string(self.$tok().$gsub(”\n“.$freeze(),”“.$freeze()),self.ts,self.te):$truthy($truthy($b=current_literal())?escaped_char(”n“.$freeze()):$b)?$truthy(current_literal())?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(self.$tok().$gsub(”\n“.$freeze(),”“.$freeze()),self.ts,self.te):current_literal.$extend_string($truthy($b=self.escape)?$b:self.$tok(),self.ts,self.te);else if(142($case))codepoint=self.source_pts[”$“]($rb_minus(p,1)),$truthy((self.escape=$$($nesting,”ESCAPES“)[”$“](codepoint))())&&(self.escape=self.$encode_escape(self.source_buffer.$slice($rb_minus(p,1)))),self.escape=self.$encode_escape(self.escape[”$“](0).$ord()(159)),p=$rb_minus(self.te=p,1),current_literal=self.$literal(),escaped_char=self.source_buffer.$slice(self.escape_s).$chr(),$truthy(current_literal(escaped_char))?$truthy($truthy($b=current_literal())?$$($nesting,”REGEXP_META_CHARACTERS“).$match(escaped_char):$b)?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(escaped_char,self.ts,self.te):$truthy(current_literal())?current_literal.$extend_string(self.$tok().$gsub(”\n“.$freeze(),”“.$freeze()),self.ts,self.te):$truthy($truthy($b=current_literal())?escaped_char(”n“.$freeze()):$b)?$truthy(current_literal())?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(self.$tok().$gsub(”\n“.$freeze(),”“.$freeze()),self.ts,self.te):current_literal.$extend_string($truthy($b=self.escape)?$b:self.$tok(),self.ts,self.te);else{if(343($case)){codepoint=self.source_pts[”$“]($rb_minus(p,1)),$truthy((self.escape=$$($nesting,”ESCAPES“)[”$“](codepoint))())&&(self.escape=self.$encode_escape(self.source_buffer.$slice($rb_minus(p,1)))),self.escape=self.$encode_escape(self.escape[”$“](0).$ord()(159)),p=$rb_minus(self.te=p,1),value=$truthy($b=self.escape)?$b:self.$tok($rb_plus(self.ts,1)),$truthy(self(18))?self.$emit(”tINTEGER“,value.$getbyte(0)):self.$emit(”tCHARACTER“,value),self.cs=767,p=$rb_plus(p,1),_goto_level=40;continue}if(120($case))codepoint=self.source_pts[”$“]($rb_minus(p,1)),$truthy((self.escape=$$($nesting,”ESCAPES“)[”$“](codepoint))())&&(self.escape=self.$encode_escape(self.source_buffer.$slice($rb_minus(p,1)))),self.escape=self.$encode_escape(self.escape[”$“](0).$ord()(128)),p=$rb_minus(self.te=p,1),current_literal=self.$literal(),escaped_char=self.source_buffer.$slice(self.escape_s).$chr(),$truthy(current_literal(escaped_char))?$truthy($truthy($b=current_literal())?$$($nesting,”REGEXP_META_CHARACTERS“).$match(escaped_char):$b)?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(escaped_char,self.ts,self.te):$truthy(current_literal())?current_literal.$extend_string(self.$tok().$gsub(”\n“.$freeze(),”“.$freeze()),self.ts,self.te):$truthy($truthy($b=current_literal())?escaped_char(”n“.$freeze()):$b)?$truthy(current_literal())?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(self.$tok().$gsub(”\n“.$freeze(),”“.$freeze()),self.ts,self.te):current_literal.$extend_string($truthy($b=self.escape)?$b:self.$tok(),self.ts,self.te);else if(147($case))codepoint=self.source_pts[”$“]($rb_minus(p,1)),$truthy((self.escape=$$($nesting,”ESCAPES“)[”$“](codepoint))())&&(self.escape=self.$encode_escape(self.source_buffer.$slice($rb_minus(p,1)))),self.escape=self.$encode_escape(self.escape[”$“](0).$ord()(128)),p=$rb_minus(self.te=p,1),current_literal=self.$literal(),escaped_char=self.source_buffer.$slice(self.escape_s).$chr(),$truthy(current_literal(escaped_char))?$truthy($truthy($b=current_literal())?$$($nesting,”REGEXP_META_CHARACTERS“).$match(escaped_char):$b)?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(escaped_char,self.ts,self.te):$truthy(current_literal())?current_literal.$extend_string(self.$tok().$gsub(”\n“.$freeze(),”“.$freeze()),self.ts,self.te):$truthy($truthy($b=current_literal())?escaped_char(”n“.$freeze()):$b)?$truthy(current_literal())?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(self.$tok().$gsub(”\n“.$freeze(),”“.$freeze()),self.ts,self.te):current_literal.$extend_string($truthy($b=self.escape)?$b:self.$tok(),self.ts,self.te);else{if(348($case)){codepoint=self.source_pts[”$“]($rb_minus(p,1)),$truthy((self.escape=$$($nesting,”ESCAPES“)[”$“](codepoint))())&&(self.escape=self.$encode_escape(self.source_buffer.$slice($rb_minus(p,1)))),self.escape=self.$encode_escape(self.escape[”$“](0).$ord()(128)),p=$rb_minus(self.te=p,1),value=$truthy($b=self.escape)?$b:self.$tok($rb_plus(self.ts,1)),$truthy(self(18))?self.$emit(”tINTEGER“,value.$getbyte(0)):self.$emit(”tCHARACTER“,value),self.cs=767,p=$rb_plus(p,1),_goto_level=40;continue}if(119($case))self.escape=self.source_buffer.$slice($rb_minus(p,1)).$chr(),self.escape=self.$encode_escape(self.escape[”$“](0).$ord()(128)),p=$rb_minus(self.te=p,1),current_literal=self.$literal(),escaped_char=self.source_buffer.$slice(self.escape_s).$chr(),$truthy(current_literal(escaped_char))?$truthy($truthy($b=current_literal())?$$($nesting,”REGEXP_META_CHARACTERS“).$match(escaped_char):$b)?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(escaped_char,self.ts,self.te):$truthy(current_literal())?current_literal.$extend_string(self.$tok().$gsub(”\n“.$freeze(),”“.$freeze()),self.ts,self.te):$truthy($truthy($b=current_literal())?escaped_char(”n“.$freeze()):$b)?$truthy(current_literal())?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(self.$tok().$gsub(”\n“.$freeze(),”“.$freeze()),self.ts,self.te):current_literal.$extend_string($truthy($b=self.escape)?$b:self.$tok(),self.ts,self.te);else if(146($case))self.escape=self.source_buffer.$slice($rb_minus(p,1)).$chr(),self.escape=self.$encode_escape(self.escape[”$“](0).$ord()(128)),p=$rb_minus(self.te=p,1),current_literal=self.$literal(),escaped_char=self.source_buffer.$slice(self.escape_s).$chr(),$truthy(current_literal(escaped_char))?$truthy($truthy($b=current_literal())?$$($nesting,”REGEXP_META_CHARACTERS“).$match(escaped_char):$b)?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(escaped_char,self.ts,self.te):$truthy(current_literal())?current_literal.$extend_string(self.$tok().$gsub(”\n“.$freeze(),”“.$freeze()),self.ts,self.te):$truthy($truthy($b=current_literal())?escaped_char(”n“.$freeze()):$b)?$truthy(current_literal())?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(self.$tok().$gsub(”\n“.$freeze(),”“.$freeze()),self.ts,self.te):current_literal.$extend_string($truthy($b=self.escape)?$b:self.$tok(),self.ts,self.te);else{if(347($case)){self.escape=self.source_buffer.$slice($rb_minus(p,1)).$chr(),self.escape=self.$encode_escape(self.escape[”$“](0).$ord()(128)),p=$rb_minus(self.te=p,1),value=$truthy($b=self.escape)?$b:self.$tok($rb_plus(self.ts,1)),$truthy(self(18))?self.$emit(”tINTEGER“,value.$getbyte(0)):self.$emit(”tCHARACTER“,value),self.cs=767,p=$rb_plus(p,1),_goto_level=40;continue}if(117($case))self.escape=”“,self.escape=self.$encode_escape(self.escape[”$“](0).$ord()(128)),p=$rb_minus(self.te=p,1),current_literal=self.$literal(),escaped_char=self.source_buffer.$slice(self.escape_s).$chr(),$truthy(current_literal(escaped_char))?$truthy($truthy($b=current_literal())?$$($nesting,”REGEXP_META_CHARACTERS“).$match(escaped_char):$b)?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(escaped_char,self.ts,self.te):$truthy(current_literal())?current_literal.$extend_string(self.$tok().$gsub(”\n“.$freeze(),”“.$freeze()),self.ts,self.te):$truthy($truthy($b=current_literal())?escaped_char(”n“.$freeze()):$b)?$truthy(current_literal())?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(self.$tok().$gsub(”\n“.$freeze(),”“.$freeze()),self.ts,self.te):current_literal.$extend_string($truthy($b=self.escape)?$b:self.$tok(),self.ts,self.te);else if(144($case))self.escape=”“,self.escape=self.$encode_escape(self.escape[”$“](0).$ord()(128)),p=$rb_minus(self.te=p,1),current_literal=self.$literal(),escaped_char=self.source_buffer.$slice(self.escape_s).$chr(),$truthy(current_literal(escaped_char))?$truthy($truthy($b=current_literal())?$$($nesting,”REGEXP_META_CHARACTERS“).$match(escaped_char):$b)?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(escaped_char,self.ts,self.te):$truthy(current_literal())?current_literal.$extend_string(self.$tok().$gsub(”\n“.$freeze(),”“.$freeze()),self.ts,self.te):$truthy($truthy($b=current_literal())?escaped_char(”n“.$freeze()):$b)?$truthy(current_literal())?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(self.$tok().$gsub(”\n“.$freeze(),”“.$freeze()),self.ts,self.te):current_literal.$extend_string($truthy($b=self.escape)?$b:self.$tok(),self.ts,self.te);else{if(345($case)){self.escape=”“,self.escape=self.$encode_escape(self.escape[”$“](0).$ord()(128)),p=$rb_minus(self.te=p,1),value=$truthy($b=self.escape)?$b:self.$tok($rb_plus(self.ts,1)),$truthy(self(18))?self.$emit(”tINTEGER“,value.$getbyte(0)):self.$emit(”tCHARACTER“,value),self.cs=767,p=$rb_plus(p,1),_goto_level=40;continue}if(113($case))self.escape=self.source_buffer.$slice($rb_minus(p,1)).$chr(),self.escape=self.$encode_escape(self.escape[”$“](0).$ord()(159)),p=$rb_minus(self.te=p,1),current_literal=self.$literal(),escaped_char=self.source_buffer.$slice(self.escape_s).$chr(),$truthy(current_literal(escaped_char))?$truthy($truthy($b=current_literal())?$$($nesting,”REGEXP_META_CHARACTERS“).$match(escaped_char):$b)?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(escaped_char,self.ts,self.te):$truthy(current_literal())?current_literal.$extend_string(self.$tok().$gsub(”\n“.$freeze(),”“.$freeze()),self.ts,self.te):$truthy($truthy($b=current_literal())?escaped_char(”n“.$freeze()):$b)?$truthy(current_literal())?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(self.$tok().$gsub(”\n“.$freeze(),”“.$freeze()),self.ts,self.te):current_literal.$extend_string($truthy($b=self.escape)?$b:self.$tok(),self.ts,self.te);else if(140($case))self.escape=self.source_buffer.$slice($rb_minus(p,1)).$chr(),self.escape=self.$encode_escape(self.escape[”$“](0).$ord()(159)),p=$rb_minus(self.te=p,1),current_literal=self.$literal(),escaped_char=self.source_buffer.$slice(self.escape_s).$chr(),$truthy(current_literal(escaped_char))?$truthy($truthy($b=current_literal())?$$($nesting,”REGEXP_META_CHARACTERS“).$match(escaped_char):$b)?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(escaped_char,self.ts,self.te):$truthy(current_literal())?current_literal.$extend_string(self.$tok().$gsub(”\n“.$freeze(),”“.$freeze()),self.ts,self.te):$truthy($truthy($b=current_literal())?escaped_char(”n“.$freeze()):$b)?$truthy(current_literal())?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(self.$tok().$gsub(”\n“.$freeze(),”“.$freeze()),self.ts,self.te):current_literal.$extend_string($truthy($b=self.escape)?$b:self.$tok(),self.ts,self.te);else{if(341($case)){self.escape=self.source_buffer.$slice($rb_minus(p,1)).$chr(),self.escape=self.$encode_escape(self.escape[”$“](0).$ord()(159)),p=$rb_minus(self.te=p,1),value=$truthy($b=self.escape)?$b:self.$tok($rb_plus(self.ts,1)),$truthy(self(18))?self.$emit(”tINTEGER“,value.$getbyte(0)):self.$emit(”tCHARACTER“,value),self.cs=767,p=$rb_plus(p,1),_goto_level=40;continue}if(124($case))self.$diagnostic(”fatal“,”invalid_unicode_escape“,nil,self.$range($rb_minus(self.escape_s,1),p)),self.$diagnostic(”fatal“,”unterminated_unicode“,nil,self.$range($rb_minus(p,1),p)),p=$rb_minus(self.te=p,1),current_literal=self.$literal(),escaped_char=self.source_buffer.$slice(self.escape_s).$chr(),$truthy(current_literal(escaped_char))?$truthy($truthy($b=current_literal())?$$($nesting,”REGEXP_META_CHARACTERS“).$match(escaped_char):$b)?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(escaped_char,self.ts,self.te):$truthy(current_literal())?current_literal.$extend_string(self.$tok().$gsub(”\n“.$freeze(),”“.$freeze()),self.ts,self.te):$truthy($truthy($b=current_literal())?escaped_char(”n“.$freeze()):$b)?$truthy(current_literal())?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(self.$tok().$gsub(”\n“.$freeze(),”“.$freeze()),self.ts,self.te):current_literal.$extend_string($truthy($b=self.escape)?$b:self.$tok(),self.ts,self.te);else if(151($case))self.$diagnostic(”fatal“,”invalid_unicode_escape“,nil,self.$range($rb_minus(self.escape_s,1),p)),self.$diagnostic(”fatal“,”unterminated_unicode“,nil,self.$range($rb_minus(p,1),p)),p=$rb_minus(self.te=p,1),current_literal=self.$literal(),escaped_char=self.source_buffer.$slice(self.escape_s).$chr(),$truthy(current_literal(escaped_char))?$truthy($truthy($b=current_literal())?$$($nesting,”REGEXP_META_CHARACTERS“).$match(escaped_char):$b)?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(escaped_char,self.ts,self.te):$truthy(current_literal())?current_literal.$extend_string(self.$tok().$gsub(”\n“.$freeze(),”“.$freeze()),self.ts,self.te):$truthy($truthy($b=current_literal())?escaped_char(”n“.$freeze()):$b)?$truthy(current_literal())?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(self.$tok().$gsub(”\n“.$freeze(),”“.$freeze()),self.ts,self.te):current_literal.$extend_string($truthy($b=self.escape)?$b:self.$tok(),self.ts,self.te);else{if(352($case)){self.$diagnostic(”fatal“,”invalid_unicode_escape“,nil,self.$range($rb_minus(self.escape_s,1),p)),self.$diagnostic(”fatal“,”unterminated_unicode“,nil,self.$range($rb_minus(p,1),p)),p=$rb_minus(self.te=p,1),value=$truthy($b=self.escape)?$b:self.$tok($rb_plus(self.ts,1)),$truthy(self(18))?self.$emit(”tINTEGER“,value.$getbyte(0)):self.$emit(”tCHARACTER“,value),self.cs=767,p=$rb_plus(p,1),_goto_level=40;continue}if(107($case))self.escape_s=p,self.escape=nil,self.$diagnostic(”fatal“,”escape_eof“,nil,self.$range($rb_minus(p,1),p)),p=$rb_minus(self.te=p,1),current_literal=self.$literal(),escaped_char=self.source_buffer.$slice(self.escape_s).$chr(),$truthy(current_literal(escaped_char))?$truthy($truthy($b=current_literal())?$$($nesting,”REGEXP_META_CHARACTERS“).$match(escaped_char):$b)?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(escaped_char,self.ts,self.te):$truthy(current_literal())?current_literal.$extend_string(self.$tok().$gsub(”\n“.$freeze(),”“.$freeze()),self.ts,self.te):$truthy($truthy($b=current_literal())?escaped_char(”n“.$freeze()):$b)?$truthy(current_literal())?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(self.$tok().$gsub(”\n“.$freeze(),”“.$freeze()),self.ts,self.te):current_literal.$extend_string($truthy($b=self.escape)?$b:self.$tok(),self.ts,self.te);else if(135($case))self.escape_s=p,self.escape=nil,self.$diagnostic(”fatal“,”escape_eof“,nil,self.$range($rb_minus(p,1),p)),p=$rb_minus(self.te=p,1),current_literal=self.$literal(),escaped_char=self.source_buffer.$slice(self.escape_s).$chr(),$truthy(current_literal(escaped_char))?$truthy($truthy($b=current_literal())?$$($nesting,”REGEXP_META_CHARACTERS“).$match(escaped_char):$b)?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(escaped_char,self.ts,self.te):$truthy(current_literal())?current_literal.$extend_string(self.$tok().$gsub(”\n“.$freeze(),”“.$freeze()),self.ts,self.te):$truthy($truthy($b=current_literal())?escaped_char(”n“.$freeze()):$b)?$truthy(current_literal())?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(self.$tok().$gsub(”\n“.$freeze(),”“.$freeze()),self.ts,self.te):current_literal.$extend_string($truthy($b=self.escape)?$b:self.$tok(),self.ts,self.te);else{if(336($case)){self.escape_s=p,self.escape=nil,self.$diagnostic(”fatal“,”escape_eof“,nil,self.$range($rb_minus(p,1),p)),p=$rb_minus(self.te=p,1),value=$truthy($b=self.escape)?$b:self.$tok($rb_plus(self.ts,1)),$truthy(self(18))?self.$emit(”tINTEGER“,value.$getbyte(0)):self.$emit(”tCHARACTER“,value),self.cs=767,p=$rb_plus(p,1),_goto_level=40;continue}if(61($case))self.sharp_s=$rb_minus(p,1),self.$emit_comment(self.sharp_s,p(pe)?$rb_minus(p,2):p),self.newline_s=p;else if(203($case))self.sharp_s=$rb_minus(p,1),self.$emit_comment(self.sharp_s,p(pe)?$rb_minus(p,2):p),p=$rb_minus(self.te=p,1);else if(218($case))self.sharp_s=$rb_minus(p,1),self.$emit_comment(self.sharp_s,p(pe)?$rb_minus(p,2):p),p=$rb_minus(self.te=p,1);else if(230($case))self.sharp_s=$rb_minus(p,1),self.$emit_comment(self.sharp_s,p(pe)?$rb_minus(p,2):p),p=$rb_minus(self.te=p,1);else{if(252($case)){self.sharp_s=$rb_minus(p,1),self.$emit_comment(self.sharp_s,p(pe)?$rb_minus(p,2):p),p=$rb_minus(self.te=p,1),self.cs=767,_goto_level=20;continue}if(267($case))self.sharp_s=$rb_minus(p,1),self.$emit_comment(self.sharp_s,p(pe)?$rb_minus(p,2):p),p=$rb_minus(self.te=p,1);else if(279($case))self.sharp_s=$rb_minus(p,1),self.$emit_comment(self.sharp_s,p(pe)?$rb_minus(p,2):p),p=$rb_minus(self.te=p,1);else if(305($case))self.sharp_s=$rb_minus(p,1),self.$emit_comment(self.sharp_s,p(pe)?$rb_minus(p,2):p),p=$rb_minus(self.te=p,1);else if(369($case))self.sharp_s=$rb_minus(p,1),self.$emit_comment(self.sharp_s,p(pe)?$rb_minus(p,2):p),p=$rb_minus(self.te=p,1);else if(379($case))self.sharp_s=$rb_minus(p,1),self.$emit_comment(self.sharp_s,p(pe)?$rb_minus(p,2):p),p=$rb_minus(self.te=p,1);else if(401($case))self.sharp_s=$rb_minus(p,1),self.$emit_comment(self.sharp_s,p(pe)?$rb_minus(p,2):p),p=$rb_minus(self.te=p,1);else if(94($case))self.sharp_s=$rb_minus(p,1),self.$emit_comment(self.sharp_s,p(pe)?$rb_minus(p,2):p),p=$rb_minus(self.te=p,1);else if(452($case))self.num_base=10,self.num_digits_s=self.ts,self.num_suffix_s=p,self.num_xfrm=$send(self,”lambda“,[],(($$28=function(chars){var self=$$28.$$s||this;return null==chars&&(chars=nil),self.$emit(”tINTEGER“,chars)}).$$s=self,$$28.$$arity=1,$$28));else if(416($case))self.num_base=8,self.num_digits_s=self.ts,self.num_suffix_s=p,self.num_xfrm=$send(self,”lambda“,[],(($$29=function(chars){var self=$$29.$$s||this;return null==chars&&(chars=nil),self.$emit(”tINTEGER“,chars)}).$$s=self,$$29.$$arity=1,$$29));else{if(431($case)){self.num_suffix_s=p,self.num_xfrm=$send(self,”lambda“,[],(($$30=function(chars){var self=$$30.$$s||this;return null==chars&&(chars=nil),self.$emit(”tINTEGER“,chars)}).$$s=self,$$30.$$arity=1,$$30)),p=$rb_minus(self.te=p,1),digits=self.$tok(self.num_digits_s,self.num_suffix_s),$truthy(digits(”_“.$freeze()))?self.$diagnostic(”error“,”trailing_in_number“,$hash2(,{character:”_“.$freeze()}),self.$range($rb_minus(self.te,1),self.te)):$truthy($truthy($b=$truthy($c=digits())?self.num_base(8):$c)?self(18):$b)?digits=”0“.$freeze():$truthy(digits())?self.$diagnostic(”error“,”empty_numeric“):$truthy(($b=self.num_base(8))?invalid_idx=digits.$index(//):self.num_base(8))&&(invalid_s=$rb_plus(self.num_digits_s,invalid_idx),self.$diagnostic(”error“,”invalid_octal“,nil,self.$range(invalid_s,$rb_plus(invalid_s,1)))),$truthy(self(18,19,20))?(self.$emit(”tINTEGER“,digits.$to_i(self.num_base),self.ts,self.num_suffix_s),p=$rb_minus(self.num_suffix_s,1)):self.num_xfrm.$call(digits.$to_i(self.num_base)),p=$rb_plus(p,1),_goto_level=40;continue}if(424($case)){self.num_suffix_s=p,self.num_xfrm=$send(self,”lambda“,[],(($$31=function(chars){var self=$$31.$$s||this;return null==chars&&(chars=nil),self.$emit(”tFLOAT“,self.$Float(chars))}).$$s=self,$$31.$$arity=1,$$31)),p=$rb_minus(self.te=p,1),digits=self.$tok(self.ts,self.num_suffix_s),$truthy(self(18,19,20))?(self.$emit(”tFLOAT“,self.$Float(digits),self.ts,self.num_suffix_s),p=$rb_minus(self.num_suffix_s,1)):self.num_xfrm.$call(digits),p=$rb_plus(p,1),_goto_level=40;continue}if(420($case)){self.num_suffix_s=p,self.num_xfrm=$send(self,”lambda“,[],(($$32=function(chars){var self=$$32.$$s||this;return null==chars&&(chars=nil),self.$emit(”tFLOAT“,self.$Float(chars))}).$$s=self,$$32.$$arity=1,$$32)),p=$rb_minus(self.te=p,1),digits=self.$tok(self.ts,self.num_suffix_s),$truthy(self(18,19,20))?(self.$emit(”tFLOAT“,self.$Float(digits),self.ts,self.num_suffix_s),p=$rb_minus(self.num_suffix_s,1)):self.num_xfrm.$call(digits),p=$rb_plus(p,1),_goto_level=40;continue}if(258($case))self.te=$rb_plus(p,1),self.newline_s=p,self.act=74;else if(35($case))self.te=$rb_plus(p,1),$truthy(self.herebody_s)&&(p=self.herebody_s,self.herebody_s=nil),self.act=73;else if(46($case))self.te=$rb_plus(p,1),$truthy(self.herebody_s)&&(p=self.herebody_s,self.herebody_s=nil),self.act=81;else if(65($case))self.te=$rb_plus(p,1),self.$emit_comment(self.sharp_s,p(pe)?$rb_minus(p,2):p),self.act=94;else if(82($case))self.te=$rb_plus(p,1),self.$emit_comment(self.sharp_s,p(pe)?$rb_minus(p,2):p),self.act=137;else if(37($case))self.te=$rb_plus(p,1),tm=p,self.act=68;else if(362($case))self.te=$rb_plus(p,1),tm=p,self.act=117;else if(361($case))self.te=$rb_plus(p,1),tm=p,self.act=118;else if(453($case))self.te=$rb_plus(p,1),self.num_base=10,self.num_digits_s=self.ts,self.act=144;else if(118($case))codepoint=self.source_pts[”$“]($rb_minus(p,1)),$truthy((self.escape=$$($nesting,”ESCAPES“)[”$“](codepoint))())&&(self.escape=self.$encode_escape(self.source_buffer.$slice($rb_minus(p,1)))),self.escape=self.$encode_escape(self.escape[”$“](0).$ord()(159)),self.escape=self.$encode_escape(self.escape[”$“](0).$ord()(128)),p=$rb_minus(self.te=p,1),current_literal=self.$literal(),escaped_char=self.source_buffer.$slice(self.escape_s).$chr(),$truthy(current_literal(escaped_char))?$truthy($truthy($b=current_literal())?$$($nesting,”REGEXP_META_CHARACTERS“).$match(escaped_char):$b)?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(escaped_char,self.ts,self.te):$truthy(current_literal())?current_literal.$extend_string(self.$tok().$gsub(”\n“.$freeze(),”“.$freeze()),self.ts,self.te):$truthy($truthy($b=current_literal())?escaped_char(”n“.$freeze()):$b)?$truthy(current_literal())?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(self.$tok().$gsub(”\n“.$freeze(),”“.$freeze()),self.ts,self.te):current_literal.$extend_string($truthy($b=self.escape)?$b:self.$tok(),self.ts,self.te);else if(145($case))codepoint=self.source_pts[”$“]($rb_minus(p,1)),$truthy((self.escape=$$($nesting,”ESCAPES“)[”$“](codepoint))())&&(self.escape=self.$encode_escape(self.source_buffer.$slice($rb_minus(p,1)))),self.escape=self.$encode_escape(self.escape[”$“](0).$ord()(159)),self.escape=self.$encode_escape(self.escape[”$“](0).$ord()(128)),p=$rb_minus(self.te=p,1),current_literal=self.$literal(),escaped_char=self.source_buffer.$slice(self.escape_s).$chr(),$truthy(current_literal(escaped_char))?$truthy($truthy($b=current_literal())?$$($nesting,”REGEXP_META_CHARACTERS“).$match(escaped_char):$b)?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(escaped_char,self.ts,self.te):$truthy(current_literal())?current_literal.$extend_string(self.$tok().$gsub(”\n“.$freeze(),”“.$freeze()),self.ts,self.te):$truthy($truthy($b=current_literal())?escaped_char(”n“.$freeze()):$b)?$truthy(current_literal())?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(self.$tok().$gsub(”\n“.$freeze(),”“.$freeze()),self.ts,self.te):current_literal.$extend_string($truthy($b=self.escape)?$b:self.$tok(),self.ts,self.te);else{if(346($case)){codepoint=self.source_pts[”$“]($rb_minus(p,1)),$truthy((self.escape=$$($nesting,”ESCAPES“)[”$“](codepoint))())&&(self.escape=self.$encode_escape(self.source_buffer.$slice($rb_minus(p,1)))),self.escape=self.$encode_escape(self.escape[”$“](0).$ord()(159)),self.escape=self.$encode_escape(self.escape[”$“](0).$ord()(128)),p=$rb_minus(self.te=p,1),value=$truthy($b=self.escape)?$b:self.$tok($rb_plus(self.ts,1)),$truthy(self(18))?self.$emit(”tINTEGER“,value.$getbyte(0)):self.$emit(”tCHARACTER“,value),self.cs=767,p=$rb_plus(p,1),_goto_level=40;continue}if(116($case))self.escape=self.source_buffer.$slice($rb_minus(p,1)).$chr(),self.escape=self.$encode_escape(self.escape[”$“](0).$ord()(159)),self.escape=self.$encode_escape(self.escape[”$“](0).$ord()(128)),p=$rb_minus(self.te=p,1),current_literal=self.$literal(),escaped_char=self.source_buffer.$slice(self.escape_s).$chr(),$truthy(current_literal(escaped_char))?$truthy($truthy($b=current_literal())?$$($nesting,”REGEXP_META_CHARACTERS“).$match(escaped_char):$b)?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(escaped_char,self.ts,self.te):$truthy(current_literal())?current_literal.$extend_string(self.$tok().$gsub(”\n“.$freeze(),”“.$freeze()),self.ts,self.te):$truthy($truthy($b=current_literal())?escaped_char(”n“.$freeze()):$b)?$truthy(current_literal())?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(self.$tok().$gsub(”\n“.$freeze(),”“.$freeze()),self.ts,self.te):current_literal.$extend_string($truthy($b=self.escape)?$b:self.$tok(),self.ts,self.te);else if(143($case))self.escape=self.source_buffer.$slice($rb_minus(p,1)).$chr(),self.escape=self.$encode_escape(self.escape[”$“](0).$ord()(159)),self.escape=self.$encode_escape(self.escape[”$“](0).$ord()(128)),p=$rb_minus(self.te=p,1),current_literal=self.$literal(),escaped_char=self.source_buffer.$slice(self.escape_s).$chr(),$truthy(current_literal(escaped_char))?$truthy($truthy($b=current_literal())?$$($nesting,”REGEXP_META_CHARACTERS“).$match(escaped_char):$b)?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(escaped_char,self.ts,self.te):$truthy(current_literal())?current_literal.$extend_string(self.$tok().$gsub(”\n“.$freeze(),”“.$freeze()),self.ts,self.te):$truthy($truthy($b=current_literal())?escaped_char(”n“.$freeze()):$b)?$truthy(current_literal())?current_literal.$extend_string(self.$tok(),self.ts,self.te):current_literal.$extend_string(self.$tok().$gsub(”\n“.$freeze(),”“.$freeze()),self.ts,self.te):current_literal.$extend_string($truthy($b=self.escape)?$b:self.$tok(),self.ts,self.te);else{if(344($case)){self.escape=self.source_buffer.$slice($rb_minus(p,1)).$chr(),self.escape=self.$encode_escape(self.escape[”$“](0).$ord()(159)),self.escape=self.$encode_escape(self.escape[”$“](0).$ord()(128)),p=$rb_minus(self.te=p,1),value=$truthy($b=self.escape)?$b:self.$tok($rb_plus(self.ts,1)),$truthy(self(18))?self.$emit(”tINTEGER“,value.$getbyte(0)):self.$emit(”tCHARACTER“,value),self.cs=767,p=$rb_plus(p,1),_goto_level=40;continue}if(448($case)){self.num_base=16,self.num_digits_s=p,self.num_suffix_s=p,self.num_xfrm=$send(self,”lambda“,[],(($$33=function(chars){var self=$$33.$$s||this;return null==chars&&(chars=nil),self.$emit(”tINTEGER“,chars)}).$$s=self,$$33.$$arity=1,$$33)),p=$rb_minus(self.te=p,1),digits=self.$tok(self.num_digits_s,self.num_suffix_s),$truthy(digits(”_“.$freeze()))?self.$diagnostic(”error“,”trailing_in_number“,$hash2(,{character:”_“.$freeze()}),self.$range($rb_minus(self.te,1),self.te)):$truthy($truthy($b=$truthy($c=digits())?self.num_base(8):$c)?self(18):$b)?digits=”0“.$freeze():$truthy(digits())?self.$diagnostic(”error“,”empty_numeric“):$truthy(($b=self.num_base(8))?invalid_idx=digits.$index(//):self.num_base(8))&&(invalid_s=$rb_plus(self.num_digits_s,invalid_idx),self.$diagnostic(”error“,”invalid_octal“,nil,self.$range(invalid_s,$rb_plus(invalid_s,1)))),$truthy(self(18,19,20))?(self.$emit(”tINTEGER“,digits.$to_i(self.num_base),self.ts,self.num_suffix_s),p=$rb_minus(self.num_suffix_s,1)):self.num_xfrm.$call(digits.$to_i(self.num_base)),p=$rb_plus(p,1),_goto_level=40;continue}if(442($case)){self.num_base=10,self.num_digits_s=p,self.num_suffix_s=p,self.num_xfrm=$send(self,”lambda“,[],(($$34=function(chars){var self=$$34.$$s||this;return null==chars&&(chars=nil),self.$emit(”tINTEGER“,chars)}).$$s=self,$$34.$$arity=1,$$34)),p=$rb_minus(self.te=p,1),digits=self.$tok(self.num_digits_s,self.num_suffix_s),$truthy(digits(”_“.$freeze()))?self.$diagnostic(”error“,”trailing_in_number“,$hash2(,{character:”_“.$freeze()}),self.$range($rb_minus(self.te,1),self.te)):$truthy($truthy($b=$truthy($c=digits())?self.num_base(8):$c)?self(18):$b)?digits=”0“.$freeze():$truthy(digits())?self.$diagnostic(”error“,”empty_numeric“):$truthy(($b=self.num_base(8))?invalid_idx=digits.$index(//):self.num_base(8))&&(invalid_s=$rb_plus(self.num_digits_s,invalid_idx),self.$diagnostic(”error“,”invalid_octal“,nil,self.$range(invalid_s,$rb_plus(invalid_s,1)))),$truthy(self(18,19,20))?(self.$emit(”tINTEGER“,digits.$to_i(self.num_base),self.ts,self.num_suffix_s),p=$rb_minus(self.num_suffix_s,1)):self.num_xfrm.$call(digits.$to_i(self.num_base)),p=$rb_plus(p,1),_goto_level=40;continue}if(445($case)){self.num_base=8,self.num_digits_s=p,self.num_suffix_s=p,self.num_xfrm=$send(self,”lambda“,[],(($$35=function(chars){var self=$$35.$$s||this;return null==chars&&(chars=nil),self.$emit(”tINTEGER“,chars)}).$$s=self,$$35.$$arity=1,$$35)),p=$rb_minus(self.te=p,1),digits=self.$tok(self.num_digits_s,self.num_suffix_s),$truthy(digits(”_“.$freeze()))?self.$diagnostic(”error“,”trailing_in_number“,$hash2(,{character:”_“.$freeze()}),self.$range($rb_minus(self.te,1),self.te)):$truthy($truthy($b=$truthy($c=digits())?self.num_base(8):$c)?self(18):$b)?digits=”0“.$freeze():$truthy(digits())?self.$diagnostic(”error“,”empty_numeric“):$truthy(($b=self.num_base(8))?invalid_idx=digits.$index(//):self.num_base(8))&&(invalid_s=$rb_plus(self.num_digits_s,invalid_idx),self.$diagnostic(”error“,”invalid_octal“,nil,self.$range(invalid_s,$rb_plus(invalid_s,1)))),$truthy(self(18,19,20))?(self.$emit(”tINTEGER“,digits.$to_i(self.num_base),self.ts,self.num_suffix_s),p=$rb_minus(self.num_suffix_s,1)):self.num_xfrm.$call(digits.$to_i(self.num_base)),p=$rb_plus(p,1),_goto_level=40;continue}if(439($case)){self.num_base=2,self.num_digits_s=p,self.num_suffix_s=p,self.num_xfrm=$send(self,”lambda“,[],(($$36=function(chars){var self=$$36.$$s||this;return null==chars&&(chars=nil),self.$emit(”tINTEGER“,chars)}).$$s=self,$$36.$$arity=1,$$36)),p=$rb_minus(self.te=p,1),digits=self.$tok(self.num_digits_s,self.num_suffix_s),$truthy(digits(”_“.$freeze()))?self.$diagnostic(”error“,”trailing_in_number“,$hash2(,{character:”_“.$freeze()}),self.$range($rb_minus(self.te,1),self.te)):$truthy($truthy($b=$truthy($c=digits())?self.num_base(8):$c)?self(18):$b)?digits=”0“.$freeze():$truthy(digits())?self.$diagnostic(”error“,”empty_numeric“):$truthy(($b=self.num_base(8))?invalid_idx=digits.$index(//):self.num_base(8))&&(invalid_s=$rb_plus(self.num_digits_s,invalid_idx),self.$diagnostic(”error“,”invalid_octal“,nil,self.$range(invalid_s,$rb_plus(invalid_s,1)))),$truthy(self(18,19,20))?(self.$emit(”tINTEGER“,digits.$to_i(self.num_base),self.ts,self.num_suffix_s),p=$rb_minus(self.num_suffix_s,1)):self.num_xfrm.$call(digits.$to_i(self.num_base)),p=$rb_plus(p,1),_goto_level=40;continue}if(451($case)){self.num_base=10,self.num_digits_s=self.ts,self.num_suffix_s=p,self.num_xfrm=$send(self,”lambda“,[],(($$37=function(chars){var self=$$37.$$s||this;return null==chars&&(chars=nil),self.$emit(”tINTEGER“,chars)}).$$s=self,$$37.$$arity=1,$$37)),p=$rb_minus(self.te=p,1),digits=self.$tok(self.num_digits_s,self.num_suffix_s),$truthy(digits(”_“.$freeze()))?self.$diagnostic(”error“,”trailing_in_number“,$hash2(,{character:”_“.$freeze()}),self.$range($rb_minus(self.te,1),self.te)):$truthy($truthy($b=$truthy($c=digits())?self.num_base(8):$c)?self(18):$b)?digits=”0“.$freeze():$truthy(digits())?self.$diagnostic(”error“,”empty_numeric“):$truthy(($b=self.num_base(8))?invalid_idx=digits.$index(//):self.num_base(8))&&(invalid_s=$rb_plus(self.num_digits_s,invalid_idx),self.$diagnostic(”error“,”invalid_octal“,nil,self.$range(invalid_s,$rb_plus(invalid_s,1)))),$truthy(self(18,19,20))?(self.$emit(”tINTEGER“,digits.$to_i(self.num_base),self.ts,self.num_suffix_s),p=$rb_minus(self.num_suffix_s,1)):self.num_xfrm.$call(digits.$to_i(self.num_base)),p=$rb_plus(p,1),_goto_level=40;continue}if(415($case)){self.num_base=8,self.num_digits_s=self.ts,self.num_suffix_s=p,self.num_xfrm=$send(self,”lambda“,[],(($$38=function(chars){var self=$$38.$$s||this;return null==chars&&(chars=nil),self.$emit(”tINTEGER“,chars)}).$$s=self,$$38.$$arity=1,$$38)),p=$rb_minus(self.te=p,1),digits=self.$tok(self.num_digits_s,self.num_suffix_s),$truthy(digits(”_“.$freeze()))?self.$diagnostic(”error“,”trailing_in_number“,$hash2(,{character:”_“.$freeze()}),self.$range($rb_minus(self.te,1),self.te)):$truthy($truthy($b=$truthy($c=digits())?self.num_base(8):$c)?self(18):$b)?digits=”0“.$freeze():$truthy(digits())?self.$diagnostic(”error“,”empty_numeric“):$truthy(($b=self.num_base(8))?invalid_idx=digits.$index(//):self.num_base(8))&&(invalid_s=$rb_plus(self.num_digits_s,invalid_idx),self.$diagnostic(”error“,”invalid_octal“,nil,self.$range(invalid_s,$rb_plus(invalid_s,1)))),$truthy(self(18,19,20))?(self.$emit(”tINTEGER“,digits.$to_i(self.num_base),self.ts,self.num_suffix_s),p=$rb_minus(self.num_suffix_s,1)):self.num_xfrm.$call(digits.$to_i(self.num_base)),p=$rb_plus(p,1),_goto_level=40;continue}31($case)?(self.te=$rb_plus(p,1),$truthy(self.herebody_s)&&(p=self.herebody_s,self.herebody_s=nil),tm=p,self.act=68):62($case)?(self.te=$rb_plus(p,1),self.sharp_s=$rb_minus(p,1),self.$emit_comment(self.sharp_s,p(pe)?$rb_minus(p,2):p),self.act=94):458($case)?(self.te=$rb_plus(p,1),self.num_suffix_s=p,self.num_xfrm=$send(self,”lambda“,[],(($$39=function(chars){var self=$$39.$$s||this;return null==chars&&(chars=nil),self.$emit(”tINTEGER“,chars)}).$$s=self,$$39.$$arity=1,$$39)),self.act=146):454($case)?(self.te=$rb_plus(p,1),self.num_base=10,self.num_digits_s=self.ts,self.num_suffix_s=p,self.num_xfrm=$send(self,”lambda“,[],(($$40=function(chars){var self=$$40.$$s||this;return null==chars&&(chars=nil),self.$emit(”tINTEGER“,chars)}).$$s=self,$$40.$$arity=1,$$40)),self.act=146):418($case)&&(self.te=$rb_plus(p,1),self.num_base=8,self.num_digits_s=self.ts,self.num_suffix_s=p,self.num_xfrm=$send(self,”lambda“,[],(($$41=function(chars){var self=$$41.$$s||this;return null==chars&&(chars=nil),self.$emit(”tINTEGER“,chars)}).$$s=self,$$41.$$arity=1,$$41)),self.act=146)}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}if($truthy($rb_le(_goto_level,20))){if($case=_lex_to_state_actions[”$“](self.cs),88($case)&&(self.ts=nil),self.cs(0)){_goto_level=40;continue}if(p=$rb_plus(p,1),$truthy(p(pe))){_goto_level=10;continue}}if($truthy($rb_le(_goto_level,30))&&p(eof)&&$truthy($rb_gt(_lex_eof_trans[”$“](self.cs),0)))_trans=$rb_minus(_lex_eof_trans[”$“](self.cs),1),_goto_level=15;else if($truthy($rb_le(_goto_level,40)))break}return self.p=p,$truthy(self.token_queue())?self.token_queue.$shift():self.cs(klass.$lex_error())?[!1,]:(eof=self.source_pts.$size(),[!1,])},$Lexer_advance$12.$$arity=0),self.$protected(),Opal.def(self,”$eof_codepoint?“,$Lexer_eof_codepoint$ques$42=function(point){return[”$include?“](point)},$Lexer_eof_codepoint$ques$42.$$arity=1),Opal.def(self,”$version?“,$Lexer_version$ques$43=function($a){return Opal.slice.call(arguments,0,arguments.length)(this.version)},$Lexer_version$ques$43.$$arity=-1),Opal.def(self,”$stack_pop“,$Lexer_stack_pop$44=function(){return this.top=$rb_minus(this.top,1),this.stack[”$“](this.top)},$Lexer_stack_pop$44.$$arity=0),Opal.def(self,”$encode_escape“,$Lexer_encode_escape$45=function(ord){return ord.$chr().$force_encoding(this.source_buffer.$source().$encoding())},$Lexer_encode_escape$45.$$arity=1),Opal.def(self,”$tok“,$Lexer_tok$46=function(s,e){return null==s&&(s=this.ts),null==e&&(e=this.te),this.source_buffer.$slice(Opal.Range.$new(s,e,!0))},$Lexer_tok$46.$$arity=-1),Opal.def(self,”$range“,$Lexer_range$47=function(s,e){return null==s&&(s=this.ts),null==e&&(e=this.te),$$$($$$($$($nesting,”Parser“),”Source“),”Range“).$new(this.source_buffer,s,e)},$Lexer_range$47.$$arity=-1),Opal.def(self,”$emit“,$Lexer_emit$48=function(type,value,s,e){var token;return null==value&&(value=this.$tok()),null==s&&(s=this.ts),null==e&&(e=this.te),token=[type,],this.token_queue.$push(token),$truthy(this.tokens)&&this.tokens.$push(token),token},$Lexer_emit$48.$$arity=-2),Opal.def(self,”$emit_table“,$Lexer_emit_table$49=function(table,s,e){var value;return null==s&&(s=this.ts),null==e&&(e=this.te),value=this.$tok(s,e),this.$emit(table[”$“](value),value,s,e)},$Lexer_emit_table$49.$$arity=-2),Opal.def(self,”$emit_do“,$Lexer_emit_do$50=function(do_block){var $a;return null==do_block&&(do_block=!1),$truthy(this.cond())?this.$emit(”kDO_COND“,”do“.$freeze()):$truthy($truthy($a=this.cmdarg())?$a:do_block)?this.$emit(”kDO_BLOCK“,”do“.$freeze()):this.$emit(”kDO“,”do“.$freeze())},$Lexer_emit_do$50.$$arity=-1),Opal.def(self,”$arg_or_cmdarg“,$Lexer_arg_or_cmdarg$51=function(){return $truthy(this.command_state)?this.$class().$lex_en_expr_cmdarg():this.$class().$lex_en_expr_arg()},$Lexer_arg_or_cmdarg$51.$$arity=0),Opal.def(self,”$emit_comment“,$Lexer_emit_comment$52=function(s,e){return null==s&&(s=this.ts),null==e&&(e=this.te),$truthy(this.comments)&&this.comments.$push($$$($$$($$($nesting,”Parser“),”Source“),”Comment“).$new(this.$range(s,e))),$truthy(this.tokens)&&this.tokens.$push([”tCOMMENT“,]),nil},$Lexer_emit_comment$52.$$arity=-1),Opal.def(self,”$diagnostic“,$Lexer_diagnostic$53=function(type,reason,arguments$,location,highlights){return null==arguments$&&(arguments$=nil),null==location&&(location=this.$range()),null==highlights&&(highlights=[]),this.diagnostics.$process($$$($$($nesting,”Parser“),”Diagnostic“).$new(type,reason,arguments$,location,highlights))},$Lexer_diagnostic$53.$$arity=-3),Opal.def(self,”$push_literal“,$Lexer_push_literal$54=function($a){var args,new_literal,self=this;return args=Opal.slice.call(arguments,0,arguments.length),new_literal=$send($$($nesting,”Literal“),”new“,.concat(Opal.to_a(args))),self.literal_stack.$push(new_literal),self.$next_state_for_literal(new_literal)},$Lexer_push_literal$54.$$arity=-1),Opal.def(self,”$next_state_for_literal“,$Lexer_next_state_for_literal$55=function(literal){var $a;return $truthy($truthy($a=literal())?literal():$a)?$truthy(literal())?this.$class().$lex_en_interp_backslash_delimited_words():this.$class().$lex_en_plain_backslash_delimited_words():$truthy($truthy($a=literal())?literal()[”$!“]():$a)?$truthy(literal())?this.$class().$lex_en_interp_words():this.$class().$lex_en_plain_words():$truthy($truthy($a=literal()[”$!“]())?literal():$a)?$truthy(literal())?this.$class().$lex_en_interp_backslash_delimited():this.$class().$lex_en_plain_backslash_delimited():$truthy(literal())?this.$class().$lex_en_interp_string():this.$class().$lex_en_plain_string()},$Lexer_next_state_for_literal$55.$$arity=1),Opal.def(self,”$literal“,$Lexer_literal$56=function(){return this.literal_stack.$last()},$Lexer_literal$56.$$arity=0),Opal.def(self,”$pop_literal“,$Lexer_pop_literal$57=function(){var old_literal=nil;return old_literal=this.literal_stack.$pop(),this.dedent_level=old_literal.$dedent_level(),old_literal.$type()(”tREGEXP_BEG“)?this.$class().$lex_en_regexp_modifiers():this.$class().$lex_en_expr_end()},$Lexer_pop_literal$57.$$arity=0),Opal.const_set($nesting,”PUNCTUATION“,$hash2([”=“,”&“,”|“,”!“,”^“,”+“,”-“,”*“,”/“,”%“,”~“,”,“,”;“,”.“,”..“,”…“,”“,”(“,”)“,”?“,”:“,”&&“,”||“,”-@“,”+@“,”~@“,”**“,”->“,”=~“,”!~“,”==“,”!=“,”>“,”>>“,”>=“,”<“,”<<“,”<=“,”=>“,”::“,”===“,”<=>“,”[]“,”[]=“,”{“,”}“,”`“,”!@“,”&.“],{”=“:”tEQL“,”&“:”tAMPER2“,”|“:”tPIPE“,”!“:”tBANG“,”^“:”tCARET“,”+“:”tPLUS“,”-“:”tMINUS“,”*“:”tSTAR2“,”/“:”tDIVIDE“,”%“:”tPERCENT“,”~“:”tTILDE“,”,“:”tCOMMA“,”;“:”tSEMI“,”.“:”tDOT“,”..“:”tDOT2“,”…“:”tDOT3“,”“:”tRBRACK“,”(“:”tLPAREN2“,”)“:”tRPAREN“,”?“:”tEH“,”:“:”tCOLON“,”&&“:”tANDOP“,”||“:”tOROP“,”-@“:”tUMINUS“,”+@“:”tUPLUS“,”~@“:”tTILDE“,”**“:”tPOW“,”->“:”tLAMBDA“,”=~“:”tMATCH“,”!~“:”tNMATCH“,”==“:”tEQ“,”!=“:”tNEQ“,”>“:”tGT“,”>>“:”tRSHFT“,”>=“:”tGEQ“,”<":"tLT","<<":"tLSHFT","<=":"tLEQ","=>“:”tASSOC“,”::“:”tCOLON2“,”===“:”tEQQ“,”<=>“:”tCMP“,”[]“:”tAREF“,”=“:”tASET“,”{“:”tLCURLY“,”}“:”tRCURLY“,”`“:”tBACK_REF2“,”!@“:”tBANG“,”&.“:”tANDDOT“})),Opal.const_set($nesting,”PUNCTUATION_BEGIN“,$hash2([”&“,”*“,”**“,”+“,”-“,”::“,”(“,”{“,”,{“&”:“tAMPER”,“*”:“tSTAR”,“**”:“tDSTAR”,“+”:“tUPLUS”,“-”:“tUMINUS”,“::”:“tCOLON3”,“(”:“tLPAREN”,“{”:“tLBRACE”,“[”:“tLBRACK”})),Opal.const_set($nesting,“KEYWORDS”,$hash2(,{if:“kIF_MOD”,unless:“kUNLESS_MOD”,while:“kWHILE_MOD”,until:“kUNTIL_MOD”,rescue:“kRESCUE_MOD”,“defined?”:“kDEFINED”,BEGIN:“klBEGIN”,END:“klEND”})),Opal.const_set($nesting,“KEYWORDS_BEGIN”,$hash2(,{if:“kIF”,unless:“kUNLESS”,while:“kWHILE”,until:“kUNTIL”,rescue:“kRESCUE”,“defined?”:“kDEFINED”,BEGIN:“klBEGIN”,END:“klEND”})),$send(,“each”,[],(($Lexer$58=function(keyword){$Lexer$58.$$s;return null==keyword&&(keyword=nil),$writer=[keyword,($writer=,$send($$($nesting,“KEYWORDS”),“[]=”,Opal.to_a($writer)),$writer)],$send($$($nesting,“KEYWORDS_BEGIN”),“[]=”,Opal.to_a($writer)),$writer}).$$s=self,$Lexer$58.$$arity=1,$Lexer$58))}($$($nesting,“Parser”),0,$nesting)},Opal.modules=function(Opal){function $rb_plus(lhs,rhs){return“number”==typeof lhs&&“number”==typeof rhs?lhs+rhs:lhs(rhs)}function $rb_minus(lhs,rhs){return“number”==typeof lhs&&“number”==typeof rhs?lhs-rhs:lhs(rhs)}Opal.top;var $nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$hash2=Opal.hash2,$truthy=Opal.truthy,$send=Opal.send;return Opal.add_stubs([“$attr_reader”,“$attr_accessor”,“$coerce_encoding”,“$include?”,“$send”,“$+”,“$”,“$fetch”,“$==”,“$!”,“$heredoc?”,“$start_with?”,“$freeze”,“$clear_buffer”,“$emit_start_tok”,“$type”,“$words?”,“$=~”,“$delimiter?”,“$-”,“$extend_space”,“$!=”,“$flush_string”,“$emit”,“$each_char”,“$===”,“$%”,“$nil?”,“$>”,“$<<”,“$empty?”,“$extend_content”,“$protected”,“$lstrip”,“$b”,“$dup”,“$force_encoding”,“$encoding”,“$source”,“$source_buffer”,“$length”]),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $Literal_initialize$1,$Literal_interpolate$ques$2,$Literal_words$ques$3,$Literal_regexp$ques$4,$Literal_heredoc$ques$5,$Literal_plain_heredoc$ques$6,$Literal_squiggly_heredoc$ques$7,$Literal_backslash_delimited$ques$8,$Literal_type$9,$Literal_munge_escape$ques$10,$Literal_nest_and_try_closing$11,$Literal_infer_indent_level$12,$Literal_start_interp_brace$14,$Literal_end_interp_brace_and_try_closing$15,$Literal_extend_string$16,$Literal_flush_string$17,$Literal_extend_content$18,$Literal_extend_space$19,$Literal_delimiter$ques$20,$Literal_coerce_encoding$21,$Literal_clear_buffer$22,$Literal_emit_start_tok$23,$Literal_emit$24,self=$klass($base,null,“Literal”),$nesting=.concat($parent_nesting);self.$$prototype.lexer=self.$$prototype.start_tok=self.$$prototype.str_type=self.$$prototype.monolithic=self.$$prototype.interpolate=self.$$prototype.heredoc_e=self.$$prototype.dedent_body=self.$$prototype.end_delim=self.$$prototype.start_delim=self.$$prototype.nesting=self.$$prototype.label_allowed=self.$$prototype.buffer=self.$$prototype.str_s=self.$$prototype.interp_braces=self.$$prototype.buffer_s=self.$$prototype.buffer_e=self.$$prototype.space_emitted=self.$$prototype.indent=nil,Opal.const_set($nesting,“DELIMITERS”,$hash2([“(”,“,{”(“:”)“.$force_encoding(”ASCII-8BIT“),”“.$force_encoding(”ASCII-8BIT“),”{“:”}“.$force_encoding(”ASCII-8BIT“),”<“:”>“.$force_encoding(”ASCII-8BIT“)})),Opal.const_set($nesting,”TYPES“,$hash2(,{”'“:[”tSTRING_BEG“,!1],”<<'":,“%q”:,'“':[”tSTRING_BEG“,!0],‘<<"':,”%“:[”tSTRING_BEG“,!0],”%Q“:,”%w“:,”%W“:,”%i“:,”%I“:,”:'“:[”tSYMBEG“,!1],”%s“:,':”':[“tSYMBEG”,!0],“/”:,“%r”:,“%x”:,“`”:[“tXSTRING_BEG”,!0],“<<`":})),self.$attr_reader(”heredoc_e“,”str_s“,”dedent_level“),self.$attr_accessor(”saved_herebody_s“),Opal.def(self,”$initialize“,$Literal_initialize$1=function(lexer,str_type,delimiter,str_s,heredoc_e,indent,dedent_body,label_allowed){var $a,$b;return null==heredoc_e&&(heredoc_e=nil),null==indent&&(indent=!1),null==dedent_body&&(dedent_body=!1),null==label_allowed&&(label_allowed=!1),this.lexer=lexer,this.nesting=1,str_type=this.$coerce_encoding(str_type),delimiter=this.$coerce_encoding(delimiter),$truthy($$($nesting,”TYPES“)(str_type))||lexer.$send(”diagnostic“,”error“,”unexpected_percent_str“,$hash2(,{type:str_type}),this.lexer.$send(”range“,str_s,$rb_plus(str_s,2))),this.str_type=str_type,this.str_s=str_s,$b=$$($nesting,”TYPES“)[”$“](str_type),$a=Opal.to_ary($b),this.start_tok=null==$a?nil:$a,this.interpolate=null==$a?nil:$a,this.start_delim=$truthy($$($nesting,”DELIMITERS“)(delimiter))?delimiter:nil,this.end_delim=$$($nesting,”DELIMITERS“).$fetch(delimiter,delimiter),this.heredoc_e=heredoc_e,this.indent=indent,this.label_allowed=label_allowed,this.dedent_body=dedent_body,this.dedent_level=nil,this.interp_braces=0,this.space_emitted=!0,this.monolithic=$truthy($a=($b=this.start_tok(”tSTRING_BEG“))?[”$include?“](str_type):this.start_tok(”tSTRING_BEG“))?this()[”$!“]():$a,$truthy(this.str_type(”%“.$force_encoding(”ASCII-8BIT“).$freeze()))&&(this.str_type=$rb_plus(this.str_type,delimiter)),this.$clear_buffer(),$truthy(this.monolithic)?nil:this.$emit_start_tok()},$Literal_initialize$1.$$arity=-5),Opal.def(self,”$interpolate?“,$Literal_interpolate$ques$2=function(){return this.interpolate},$Literal_interpolate$ques$2.$$arity=0),Opal.def(self,”$words?“,$Literal_words$ques$3=function(){var $a,$b,$c;return $truthy($a=$truthy($b=$truthy($c=this.$type()(”tWORDS_BEG“))?$c:this.$type()(”tQWORDS_BEG“))?$b:this.$type()(”tSYMBOLS_BEG“))?$a:this.$type()(”tQSYMBOLS_BEG“)},$Literal_words$ques$3.$$arity=0),Opal.def(self,”$regexp?“,$Literal_regexp$ques$4=function(){return this.$type()(”tREGEXP_BEG“)},$Literal_regexp$ques$4.$$arity=0),Opal.def(self,”$heredoc?“,$Literal_heredoc$ques$5=function(){return this.heredoc_e()[”$!“]()},$Literal_heredoc$ques$5.$$arity=0),Opal.def(self,”$plain_heredoc?“,$Literal_plain_heredoc$ques$6=function(){var $a;return $truthy($a=this())?this.dedent_body():$a},$Literal_plain_heredoc$ques$6.$$arity=0),Opal.def(self,”$squiggly_heredoc?“,$Literal_squiggly_heredoc$ques$7=function(){var $a;return $truthy($a=this())?this.dedent_body:$a},$Literal_squiggly_heredoc$ques$7.$$arity=0),Opal.def(self,”$backslash_delimited?“,$Literal_backslash_delimited$ques$8=function(){return this.end_delim(”\“.$force_encoding(”ASCII-8BIT“).$freeze())},$Literal_backslash_delimited$ques$8.$$arity=0),Opal.def(self,”$type“,$Literal_type$9=function(){return this.start_tok},$Literal_type$9.$$arity=0),Opal.def(self,”$munge_escape?“,$Literal_munge_escape$ques$10=function(character){var $a;return character=this.$coerce_encoding(character),!!$truthy($truthy($a=this())?character(/[ tvrfn]/):$a)||[”\“.$force_encoding(”ASCII-8BIT“).$freeze(),this.start_delim,this.end_delim][”$include?“](character)},$Literal_munge_escape$ques$10.$$arity=1),Opal.def(self,”$nest_and_try_closing“,$Literal_nest_and_try_closing$11=function(delimiter,ts,te,lookahead){var $a,$b,$c,$d;return null==lookahead&&(lookahead=nil),delimiter=this.$coerce_encoding(delimiter),$truthy($truthy($a=this.start_delim)?this.start_delim(delimiter):$a)?this.nesting=$rb_plus(this.nesting,1):$truthy(this(delimiter))&&(this.nesting=$rb_minus(this.nesting,1)),this.nesting(0)?($truthy(this())&&this.$extend_space(ts,ts),$truthy($truthy($a=$truthy($b=$truthy($c=$truthy($d=lookahead)?this.label_allowed:$d)?lookahead[”$“](0)(”:“.$force_encoding(”ASCII-8BIT“)):$c)?lookahead[”$“](1)(”:“.$force_encoding(”ASCII-8BIT“)):$b)?this.start_tok(”tSTRING_BEG“):$a)?(this.$flush_string(),this.$emit(”tLABEL_END“,this.end_delim,ts,$rb_plus(te,1))):$truthy(this.monolithic)?this.$emit(”tSTRING“,this.buffer,this.str_s,te):($truthy(this())||this.$flush_string(),this.$emit(”tSTRING_END“,this.end_delim,ts,te))):nil},$Literal_nest_and_try_closing$11.$$arity=-4),Opal.def(self,”$infer_indent_level“,$Literal_infer_indent_level$12=function(line){var $$13,self=this,indent_level=nil;return $truthy(self.dedent_body())?nil:(indent_level=0,function(){var $brk=Opal.new_brk();try{return $send(line,”each_char“,[],(($$13=function(char$){var $a,lhs,rhs,self=$$13.$$s||this,$case=nil;return null==self.dedent_level&&(self.dedent_level=nil),null==char$&&(char$=nil),” “[”$===“]($case=char$)?indent_level=$rb_plus(indent_level,1):”t“($case)?indent_level=$rb_plus(indent_level,$rb_minus(8,indent_level(8))):($truthy($truthy($a=self.dedent_level())?$a:(lhs=self.dedent_level,rhs=indent_level,”number“==typeof lhs&&”number“==typeof ”“>rhs?rhs(rhs)))&&(self.dedent_level=indent_level),void Opal.brk(nil,$brk))}).$$s=self,$$13.$$brk=$brk,$$13.$$arity=1,$$13))}catch(err){if(err===$brk)return err.$v;throw err}}())},$Literal_infer_indent_level$12.$$arity=1),Opal.def(self,”$start_interp_brace“,$Literal_start_interp_brace$14=function(){return this.interp_braces=$rb_plus(this.interp_braces,1)},$Literal_start_interp_brace$14.$$arity=0),Opal.def(self,”$end_interp_brace_and_try_closing“,$Literal_end_interp_brace_and_try_closing$15=function(){return this.interp_braces=$rb_minus(this.interp_braces,1),this.interp_braces(0)},$Literal_end_interp_brace_and_try_closing$15.$$arity=0),Opal.def(self,”$extend_string“,$Literal_extend_string$16=function(string,ts,te){var $a;return this.buffer_s=$truthy($a=this.buffer_s)?$a:ts,this.buffer_e=te,this.buffer(string)},$Literal_extend_string$16.$$arity=3),Opal.def(self,”$flush_string“,$Literal_flush_string$17=function(){return $truthy(this.monolithic)&&(this.$emit_start_tok(),this.monolithic=!1),$truthy(this.buffer())?nil:(this.$emit(”tSTRING_CONTENT“,this.buffer,this.buffer_s,this.buffer_e),this.$clear_buffer(),this.$extend_content())},$Literal_flush_string$17.$$arity=0),Opal.def(self,”$extend_content“,$Literal_extend_content$18=function(){return this.space_emitted=!1},$Literal_extend_content$18.$$arity=0),Opal.def(self,”$extend_space“,$Literal_extend_space$19=function(ts,te){return this.$flush_string(),$truthy(this.space_emitted)?nil:(this.$emit(”tSPACE“,nil,ts,te),this.space_emitted=!0)},$Literal_extend_space$19.$$arity=2),self.$protected(),Opal.def(self,”$delimiter?“,$Literal_delimiter$ques$20=function(delimiter){return $truthy(this.indent)?this.end_delim(delimiter.$lstrip()):this.end_delim(delimiter)},$Literal_delimiter$ques$20.$$arity=1),Opal.def(self,”$coerce_encoding“,$Literal_coerce_encoding$21=function(string){return string.$b()},$Literal_coerce_encoding$21.$$arity=1),Opal.def(self,”$clear_buffer“,$Literal_clear_buffer$22=function(){return this.buffer=”“.$force_encoding(”ASCII-8BIT“).$dup(),this.buffer.$force_encoding(this.lexer.$source_buffer().$source().$encoding()),this.buffer_s=nil,this.buffer_e=nil},$Literal_clear_buffer$22.$$arity=0),Opal.def(self,”$emit_start_tok“,$Literal_emit_start_tok$23=function(){var $a,str_e;return str_e=$truthy($a=this.heredoc_e)?$a:$rb_plus(this.str_s,this.str_type.$length()),this.$emit(this.start_tok,this.str_type,this.str_s,str_e)},$Literal_emit_start_tok$23.$$arity=0),Opal.def(self,”$emit“,$Literal_emit$24=function(token,type,s,e){return this.lexer.$send(”emit“,token,type,s,e)},$Literal_emit$24.$$arity=4)}($$($nesting,”Lexer“),0,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){Opal.top;var $nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$truthy=Opal.truthy;return Opal.add_stubs([”$freeze“,”$clear“,”$|“,”$<<","$&","$>>“,”$==“,”$“,”$to_s“]),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $StackState_initialize$1,$StackState_clear$2,$StackState_push$3,$StackState_pop$4,$StackState_lexpop$5,$StackState_active$ques$6,$StackState_empty$ques$7,$StackState_to_s$8,self=$klass($base,null,”StackState“);.concat($parent_nesting);self.$$prototype.stack=self.$$prototype.name=nil,Opal.def(self,”$initialize“,$StackState_initialize$1=function(name){return this.name=name.$freeze(),this.$clear()},$StackState_initialize$1.$$arity=1),Opal.def(self,”$clear“,$StackState_clear$2=function(){return this.stack=0},$StackState_clear$2.$$arity=0),Opal.def(self,”$push“,$StackState_push$3=function(bit){var bit_value;return bit_value=$truthy(bit)?1:0,this.stack=this.stack(1)(bit_value),bit},$StackState_push$3.$$arity=1),Opal.def(self,”$pop“,$StackState_pop$4=function(){var bit_value=nil;return bit_value=this.stack(>”“>1),this.stack=this.stack(1),bit_value(1)},$StackState_pop$4.$$arity=0),Opal.def(self,”$lexpop“,$StackState_lexpop$5=function(){return >”“>this.stack=this.stack(1)(this.stack(1)),this.stack[”$“](0)(1)},$StackState_lexpop$5.$$arity=0),Opal.def(self,”$active?“,$StackState_active$ques$6=function(){return this.stack[”$“](0)(1)},$StackState_active$ques$6.$$arity=0),Opal.def(self,”$empty?“,$StackState_empty$ques$7=function(){return this.stack(0)},$StackState_empty$ques$7.$$arity=0),Opal.def(self,”$to_s“,$StackState_to_s$8=function(){return”[“+this.stack.$to_s(2)+” <= “this.name”]“},$StackState_to_s$8.$$arity=0),Opal.alias(self,”inspect“,”to_s“)}($$($nesting,”Lexer“),0,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){function $rb_minus(lhs,rhs){return”number“==typeof lhs&&”number“==typeof rhs?lhs-rhs:lhs(rhs)}function $rb_plus(lhs,rhs){return”number“==typeof lhs&&”number“==typeof rhs?lhs+rhs:lhs(rhs)}Opal.top;var $nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$slice=(Opal.breaker,Opal.slice),$module=Opal.module,$klass=Opal.klass,$send=Opal.send,$truthy=Opal.truthy;return =”,“$===”,“$%”“>Opal.add_stubs(),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $Dedenter_initialize$1,$Dedenter_dedent$2,$Dedenter_interrupt$4,self=$klass($base,null,”Dedenter“);.concat($parent_nesting);self.$$prototype.at_line_begin=nil,Opal.def(self,”$initialize“,$Dedenter_initialize$1=function(dedent_level){return this.dedent_level=dedent_level,this.at_line_begin=!0,this.indent_level=0},$Dedenter_initialize$1.$$arity=1),Opal.def(self,”$dedent“,$Dedenter_dedent$2=function(string){var $$3,last_index,space_begin=nil,space_end=nil,offset=nil,escape=nil,_at_line_begin=nil;return space_begin=space_end=offset=0,last_index=$rb_minus(string.$length(),1),escape=!1,_at_line_begin=nil,$send(string.$chars(),”each_with_index“,[],(($$3=function(char$,index){var $a,lhs,rhs,self=$$3.$$s||this,$case=nil;if(null==self.at_line_begin&&(self.at_line_begin=nil),null==self.indent_level&&(self.indent_level=nil),null==self.dedent_level&&(self.dedent_level=nil),null==char$&&(char$=nil),null==index&&(index=nil),char$(”\“))return escape=!0,string($rb_minus(index,offset)),offset=$rb_plus(offset,1),_at_line_begin=self.at_line_begin,self.at_line_begin=!1;if($truthy(escape)){if(char$(”n“))string($rb_minus(index,offset)),offset=$rb_plus(offset,1),self.at_line_begin=!0,space_begin=space_end=$rb_minus(index,offset),self.indent_level=0;else{if(!char$(”n“))return self.at_line_begin=_at_line_begin,escape=!1,$$3.apply(null,$slice.call(arguments));string($rb_minus(index,offset)),string.$insert($rb_minus(index,offset),”n“)}return escape=!1}return $truthy(self.at_line_begin)?($truthy($truthy($a=char$(”n“))?$a:(lhs=self.indent_level,rhs=self.dedent_level,”number“==typeof lhs&&”number“==typeof =”“>rhs?rhs<=lhs:lhs(rhs)))&&(string(Opal.Range.$new(space_begin,space_end,!0)),offset=$rb_plus(offset,$rb_minus(space_end,space_begin)),self.at_line_begin=!1),” “[”$===“]($case=char$)?(self.indent_level=$rb_plus(self.indent_level,1),space_end=$rb_plus(space_end,1)):”t“($case)?(self.indent_level=$rb_plus(self.indent_level,$rb_minus(8,self.indent_level(8))),space_end=$rb_plus(space_end,1)):nil):$truthy(($a=char$(”n“))?index(last_index):char$(”n“))?(self.at_line_begin=!0,self.indent_level=0,space_begin=space_end=$rb_plus($rb_minus(index,offset),1)):nil}).$$s=this,$$3.$$arity=2,$$3)),$truthy(this.at_line_begin)&&string(Opal.Range.$new(space_begin,space_end,!1)),nil},$Dedenter_dedent$2.$$arity=1),Opal.def(self,”$interrupt“,$Dedenter_interrupt$4=function(){return this.at_line_begin=!1},$Dedenter_interrupt$4.$$arity=0)}($$($nesting,”Lexer“),0,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){function $rb_minus(lhs,rhs){return”number“==typeof lhs&&”number“==typeof rhs?lhs-rhs:lhs(rhs)}function $rb_plus(lhs,rhs){return”number“==typeof lhs&&”number“==typeof rhs?lhs+rhs:lhs(rhs)}function $rb_gt(lhs,rhs){return”number“==typeof lhs&&”number“==typeof ”“>rhs?rhs(rhs)}Opal.top;var $nesting=[],nil=Opal.nil,$$$=Opal.const_get_qualified,$$=Opal.const_get_relative,$slice=(Opal.breaker,Opal.slice),$module=Opal.module,$klass=Opal.klass,$hash2=Opal.hash2,$truthy=Opal.truthy,$send=Opal.send,$range=Opal.range;return ”,“$updated”,“$join”,“$expression”,“$string_value”,“$delimited_string_map”,“$unquoted_map”,“$collapse_string_parts?”,“$nil?”,“$first”,“$children”,“$string_map”,“$prefix_string_map”,“$to_sym”,“$collection_map”,“$==”,“$version”,“$empty?”,“$diagnostic”,“$!”,“$type”,“$dedent”,“$each”,“$interrupt”,“$map”,“$uniq”,“$sort”,“$each_char”,“$to_proc”,“$static_regexp”,“$message”,“$<<","$regexp_map","$unary_op_map","$binary_op_map","$!=","$%","$size","$last","$each_slice","$pair_keyword_map","$pair_quoted_map","$symbol_compose","$range_map","$variable_map","$name","$source_buffer","$dup","$line","$emit_encoding","$class","$declared?","$static_env","$var_send_map","$constant_map","$dynamic_const_definition_allowed?","$context","$declare","$with_expression","$with_operator","$join_exprs","$[] at Opal.add_stubs([”$attr_accessor“,”$n0“,”$token_map“,”$numeric“,”$n“,”$value“,”$new“,”$loc“,”$private“,”$===“,”$+@“,”$-“,”$module_definition_map“,”$definition_map“,”$keyword_map“,”$check_duplicate_args“,”$arg_prefix_map“,”$kwarg_map“,”$emit_procarg0“,”$resize“,”$-“,”$end“,”$call_type_for_dot“,”$send_map“,”$emit_lambda“,”$expr_map“,”$keyword“,”$include?“,”$block_map“,”$array“,”$+“,”$emit_index“,”$index_map“,”$send_index_map“,”$send_binary_op_map“,”$static_regexp_node“,”$names“,”$send_unary_op_map“,”$check_condition“,”$condition_map“,”$keyword_mod_map“,”$ternary_map“,”$for_map“,”$>“,”$count“,”$rescue_body_map“,”$any?“,”$eh_keyword_map“,”$push“,”$none?“,”$one?“,”$begin“,”$<=","$),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $Default_initialize$2,$Default_nil$3,$Default_true$4,$Default_false$5,$Default_integer$6,$Default_float$7,$Default_rational$8,$Default_complex$9,$Default_numeric$10,$Default_unary_num$11,$Default___LINE__$12,$Default_string$13,$Default_string_internal$14,$Default_string_compose$15,$Default_character$16,$Default___FILE__$17,$Default_symbol$18,$Default_symbol_internal$19,$Default_symbol_compose$20,$Default_xstring_compose$21,$Default_dedent_string$22,$Default_regexp_options$24,$Default_regexp_compose$25,$Default_array$26,$Default_splat$27,$Default_word$28,$Default_words_compose$29,$Default_symbols_compose$30,$Default_pair$32,$Default_pair_list_18$33,$Default_pair_keyword$35,$Default_pair_quoted$36,$Default_kwsplat$37,$Default_associate$38,$Default_range_inclusive$39,$Default_range_exclusive$40,$Default_self$41,$Default_ident$42,$Default_ivar$43,$Default_gvar$44,$Default_cvar$45,$Default_back_ref$46,$Default_nth_ref$47,$Default_accessible$48,$Default_const$49,$Default_const_global$50,$Default_const_fetch$51,$Default___ENCODING__$52,$Default_assignable$53,$Default_const_op_assignable$54,$Default_assign$55,$Default_op_assign$56,$Default_multi_lhs$57,$Default_multi_assign$58,$Default_def_class$59,$Default_def_sclass$60,$Default_def_module$61,$Default_def_method$62,$Default_def_singleton$63,$Default_undef_method$64,$Default_alias$65,$Default_args$66,$Default_arg$67,$Default_optarg$68,$Default_restarg$69,$Default_kwarg$70,$Default_kwoptarg$71,$Default_kwrestarg$72,$Default_shadowarg$73,$Default_blockarg$74,$Default_procarg0$75,$Default_arg_expr$76,$Default_restarg_expr$77,$Default_blockarg_expr$78,$Default_objc_kwarg$79,$Default_objc_restarg$80,$Default_call_type_for_dot$81,$Default_call_method$82,$Default_call_lambda$83,$Default_block$84,$Default_block_pass$85,$Default_objc_varargs$86,$Default_attr_asgn$87,$Default_index$88,$Default_index_asgn$89,$Default_binary_op$90,$Default_match_op$91,$Default_unary_op$93,$Default_not_op$94,$Default_logical_op$95,$Default_condition$96,$Default_condition_mod$97,$Default_ternary$98,$Default_when$99,$Default_case$100,$Default_loop$101,$Default_loop_mod$102,$Default_for$103,$Default_keyword_cmd$104,$Default_preexe$105,$Default_postexe$106,$Default_rescue_body$107,$Default_begin_body$108,$Default_compstmt$109,$Default_begin$110,$Default_begin_keyword$111,$Default_check_condition$112,$Default_check_duplicate_args$113,$Default_arg_name_collides$ques$115,$Default_n$116,$Default_n0$117,$Default_join_exprs$118,$Default_token_map$119,$Default_delimited_string_map$120,$Default_prefix_string_map$121,$Default_unquoted_map$122,$Default_pair_keyword_map$123,$Default_pair_quoted_map$124,$Default_expr_map$125,$Default_collection_map$126,$Default_string_map$127,$Default_regexp_map$128,$Default_constant_map$129,$Default_variable_map$130,$Default_binary_op_map$131,$Default_unary_op_map$132,$Default_range_map$133,$Default_arg_prefix_map$134,$Default_kwarg_map$135,$Default_module_definition_map$136,$Default_definition_map$137,$Default_send_map$138,$Default_var_send_map$139,$Default_send_binary_op_map$140,$Default_send_unary_op_map$141,$Default_index_map$142,$Default_send_index_map$143,$Default_block_map$144,$Default_keyword_map$145,$Default_keyword_mod_map$146,$Default_condition_map$147,$Default_ternary_map$148,$Default_for_map$149,$Default_rescue_body_map$150,$Default_eh_keyword_map$151,$Default_static_string$152,$Default_static_regexp$154,$Default_static_regexp_node$155,$Default_collapse_string_parts$ques$156,$Default_value$157,$Default_string_value$158,$Default_loc$159,$Default_diagnostic$160,self=$klass($base,null,“Default”),$nesting=.concat($parent_nesting);self.$$prototype.parser=self.$$prototype.emit_file_line_as_literals=nil,function(self,$parent_nesting){[self].concat($parent_nesting);self.$attr_accessor(“emit_lambda”)}(Opal.get_singleton_class(self),$nesting),self.emit_lambda=!1,function(self,$parent_nesting){[self].concat($parent_nesting);self.$attr_accessor(“emit_procarg0”)}(Opal.get_singleton_class(self),$nesting),self.emit_procarg0=!1,function(self,$parent_nesting){[self].concat($parent_nesting);self.$attr_accessor(“emit_encoding”)}(Opal.get_singleton_class(self),$nesting),self.emit_encoding=!1,function(self,$parent_nesting){[self].concat($parent_nesting);self.$attr_accessor(“emit_index”)}(Opal.get_singleton_class(self),$nesting),self.emit_index=!1,function(self,$parent_nesting){var $modernize$1;.concat($parent_nesting);Opal.def(self,“$modernize”,$modernize$1=function(){return this.emit_lambda=!0,this.emit_procarg0=!0,this.emit_encoding=!0,this.emit_index=!0},$modernize$1.$$arity=0)}(Opal.get_singleton_class(self),$nesting),self.$attr_accessor(“parser”),self.$attr_accessor(“emit_file_line_as_literals”),Opal.def(self,“$initialize”,$Default_initialize$2=function(){return this.emit_file_line_as_literals=!0},$Default_initialize$2.$$arity=0),Opal.def(self,“$nil”,$Default_nil$3=function(nil_t){return this.$n0(“nil”,this.$token_map(nil_t))},$Default_nil$3.$$arity=1),Opal.def(self,“$true”,$Default_true$4=function(true_t){return this.$n0(“true”,this.$token_map(true_t))},$Default_true$4.$$arity=1),Opal.def(self,“$false”,$Default_false$5=function(false_t){return this.$n0(“false”,this.$token_map(false_t))},$Default_false$5.$$arity=1),Opal.def(self,“$integer”,$Default_integer$6=function(integer_t){return this.$numeric(“int”,integer_t)},$Default_integer$6.$$arity=1),Opal.def(self,“$float”,$Default_float$7=function(float_t){return this.$numeric(“float”,float_t)},$Default_float$7.$$arity=1),Opal.def(self,“$rational”,$Default_rational$8=function(rational_t){return this.$numeric(“rational”,rational_t)},$Default_rational$8.$$arity=1),Opal.def(self,“$complex”,$Default_complex$9=function(complex_t){return this.$numeric(“complex”,complex_t)},$Default_complex$9.$$arity=1),Opal.def(self,“$numeric”,$Default_numeric$10=function(kind,token){return this.$n(kind,,$$$($$$($$($nesting,“Source”),“Map”),“Operator”).$new(nil,this.$loc(token)))},$Default_numeric$10.$$arity=2),self.$private(“numeric”),Opal.def(self,“$unary_num”,$Default_unary_num$11=function(unary_t,numeric){var $a,$case,value=nil,operator_loc=nil;return value=null==($a=[].concat(Opal.to_a(numeric)))?nil:$a,operator_loc=this.$loc(unary_t),$case=this.$value(unary_t),“+”($case)?value=value():“-”[“$===”]($case)&&(value=value()),numeric.$updated(nil,,$hash2(,{location:$$$($$$($$($nesting,“Source”),“Map”),“Operator”).$new(operator_loc,operator_loc.$join(numeric.$loc().$expression()))}))},$Default_unary_num$11.$$arity=2),Opal.def(self,“$__LINE__”,$Default___LINE__$12=function(__LINE__t){return this.$n0(“__LINE__”,this.$token_map(__LINE__t))},$Default___LINE__$12.$$arity=1),Opal.def(self,“$string”,$Default_string$13=function(string_t){return this.$n(“str”,,this.$delimited_string_map(string_t))},$Default_string$13.$$arity=1),Opal.def(self,“$string_internal”,$Default_string_internal$14=function(string_t){return this.$n(“str”,,this.$unquoted_map(string_t))},$Default_string_internal$14.$$arity=1),Opal.def(self,“$string_compose”,$Default_string_compose$15=function(begin_t,parts,end_t){var $a;return $truthy(this(parts))?$truthy($truthy($a=begin_t())?end_t():$a)?parts.$first():this.$n(“str”,parts.$first().$children(),this.$string_map(begin_t,parts,end_t)):this.$n(“dstr”,[].concat(Opal.to_a(parts)),this.$string_map(begin_t,parts,end_t))},$Default_string_compose$15.$$arity=3),Opal.def(self,“$character”,$Default_character$16=function(char_t){return this.$n(“str”,,this.$prefix_string_map(char_t))},$Default_character$16.$$arity=1),Opal.def(self,“$__FILE__”,$Default___FILE__$17=function(__FILE__t){return this.$n0(“__FILE__”,this.$token_map(__FILE__t))},$Default___FILE__$17.$$arity=1),Opal.def(self,“$symbol”,$Default_symbol$18=function(symbol_t){return this.$n(“sym”,,this.$prefix_string_map(symbol_t))},$Default_symbol$18.$$arity=1),Opal.def(self,“$symbol_internal”,$Default_symbol_internal$19=function(symbol_t){return this.$n(“sym”,,this.$unquoted_map(symbol_t))},$Default_symbol_internal$19.$$arity=1),Opal.def(self,“$symbol_compose”,$Default_symbol_compose$20=function(begin_t,parts,end_t){var str=nil;return $truthy(this(parts))?(str=parts.$first(),this.$n(“sym”,,this.$collection_map(begin_t,str.$loc().$expression(),end_t))):$truthy(this.parser.$version()(18)?parts():this.parser.$version()(18))?this.$diagnostic(“error”,“empty_symbol”,nil,this.$loc(begin_t).$join(this.$loc(end_t))):this.$n(“dsym”,[].concat(Opal.to_a(parts)),this.$collection_map(begin_t,parts,end_t))},$Default_symbol_compose$20.$$arity=3),Opal.def(self,“$xstring_compose”,$Default_xstring_compose$21=function(begin_t,parts,end_t){return this.$n(“xstr”,[].concat(Opal.to_a(parts)),this.$string_map(begin_t,parts,end_t))},$Default_xstring_compose$21.$$arity=3),Opal.def(self,“$dedent_string”,$Default_dedent_string$22=function(node,dedent_level){var $a,$$23,dedenter=nil,str=nil;return $truthy(dedent_level()[“$!”]())&&(dedenter=$$$($$($nesting,“Lexer”),“Dedenter”).$new(dedent_level),node.$type()(“str”)?(str=node.$children().$first(),dedenter.$dedent(str)):$truthy($truthy($a=node.$type()(“dstr”))?$a:node.$type()(“xstr”))&&$send(node.$children(),“each”,[],(($$23=function(str_node){$$23.$$s;return null==str_node&&(str_node=nil),str_node.$type()(“str”)?(str=str_node.$children().$first(),dedenter.$dedent(str)):dedenter.$interrupt()}).$$s=this,$$23.$$arity=1,$$23))),node},$Default_dedent_string$22.$$arity=2),Opal.def(self,“$regexp_options”,$Default_regexp_options$24=function(regopt_t){var options;return options=$send(this.$value(regopt_t).$each_char().$sort().$uniq(),“map”,[],“to_sym”.$to_proc()),this.$n(“regopt”,options,this.$token_map(regopt_t))},$Default_regexp_options$24.$$arity=1),Opal.def(self,“$regexp_compose”,$Default_regexp_compose$25=function(begin_t,parts,end_t,options){var self=this,e=nil;try{self.$static_regexp(parts,options)}catch($err){if(!Opal.rescue($err,))throw $err;e=$err;try{self.$diagnostic(“error”,“invalid_regexp”,$hash2(,{message:e.$message()}),self.$loc(begin_t).$join(self.$loc(end_t)))}finally{Opal.pop_exception()}}return self.$n(“regexp”,parts(options),self.$regexp_map(begin_t,end_t,options))},$Default_regexp_compose$25.$$arity=4),Opal.def(self,“$array”,$Default_array$26=function(begin_t,elements,end_t){return this.$n(“array”,elements,this.$collection_map(begin_t,elements,end_t))},$Default_array$26.$$arity=3),Opal.def(self,“$splat”,$Default_splat$27=function(star_t,arg){return null==arg&&(arg=nil),$truthy(arg())?this.$n0(“splat”,this.$unary_op_map(star_t)):this.$n(“splat”,,this.$unary_op_map(star_t,arg))},$Default_splat$27.$$arity=-2),Opal.def(self,“$word”,$Default_word$28=function(parts){return $truthy(this(parts))?parts.$first():this.$n(“dstr”,[].concat(Opal.to_a(parts)),this.$collection_map(nil,parts,nil))},$Default_word$28.$$arity=1),Opal.def(self,“$words_compose”,$Default_words_compose$29=function(begin_t,parts,end_t){return this.$n(“array”,[].concat(Opal.to_a(parts)),this.$collection_map(begin_t,parts,end_t))},$Default_words_compose$29.$$arity=3),Opal.def(self,“$symbols_compose”,$Default_symbols_compose$30=function(begin_t,parts,end_t){var $$31;return parts=$send(parts,“map”,[],(($$31=function(part){$$31.$$s;var $a,$case=nil,value=nil;return null==part&&(part=nil),$case=part.$type(),“str”($case)?($a=[].concat(Opal.to_a(part)),value=null==$a?nil:$a,part.$updated(“sym”,)):“dstr”($case)?part.$updated(“dsym”):part}).$$s=this,$$31.$$arity=1,$$31)),this.$n(“array”,[].concat(Opal.to_a(parts)),this.$collection_map(begin_t,parts,end_t))},$Default_symbols_compose$30.$$arity=3),Opal.def(self,“$pair”,$Default_pair$32=function(key,assoc_t,value){return this.$n(“pair”,,this.$binary_op_map(key,assoc_t,value))},$Default_pair$32.$$arity=3),Opal.def(self,“$pair_list_18”,$Default_pair_list_18$33=function(list){var $$34;return $truthy(list.$size()(2)(0))?this.$diagnostic(“error”,“odd_hash”,nil,list.$last().$loc().$expression()):$send(list.$each_slice(2),“map”,[],(($$34=function(key,value){var self=$$34.$$s||this;return null==key&&(key=nil),null==value&&(value=nil),self.$n(“pair”,,self.$binary_op_map(key,nil,value))}).$$s=this,$$34.$$arity=2,$$34))},$Default_pair_list_18$33.$$arity=1),Opal.def(self,“$pair_keyword”,$Default_pair_keyword$35=function(key_t,value){var $a,$b,key_map,pair_map,key;return $b=this.$pair_keyword_map(key_t,value),key_map=null==($a=Opal.to_ary($b))?nil:$a,pair_map=null==$a?nil:$a,key=this.$n(“sym”,,key_map),this.$n(“pair”,,pair_map)},$Default_pair_keyword$35.$$arity=2),Opal.def(self,“$pair_quoted”,$Default_pair_quoted$36=function(begin_t,parts,end_t,value){var $a,$b,pair_map,key;return $b=this.$pair_quoted_map(begin_t,end_t,value),end_t=null==($a=Opal.to_ary($b))?nil:$a,pair_map=null==$a?nil:$a,key=this.$symbol_compose(begin_t,parts,end_t),this.$n(“pair”,,pair_map)},$Default_pair_quoted$36.$$arity=4),Opal.def(self,“$kwsplat”,$Default_kwsplat$37=function(dstar_t,arg){return this.$n(“kwsplat”,,this.$unary_op_map(dstar_t,arg))},$Default_kwsplat$37.$$arity=2),Opal.def(self,“$associate”,$Default_associate$38=function(begin_t,pairs,end_t){return this.$n(“hash”,[].concat(Opal.to_a(pairs)),this.$collection_map(begin_t,pairs,end_t))},$Default_associate$38.$$arity=3),Opal.def(self,“$range_inclusive”,$Default_range_inclusive$39=function(lhs,dot2_t,rhs){return this.$n(“irange”,,this.$range_map(lhs,dot2_t,rhs))},$Default_range_inclusive$39.$$arity=3),Opal.def(self,“$range_exclusive”,$Default_range_exclusive$40=function(lhs,dot3_t,rhs){return this.$n(“erange”,,this.$range_map(lhs,dot3_t,rhs))},$Default_range_exclusive$40.$$arity=3),Opal.def(self,“$self”,$Default_self$41=function(token){return this.$n0(“self”,this.$token_map(token))},$Default_self$41.$$arity=1),Opal.def(self,“$ident”,$Default_ident$42=function(token){return this.$n(“ident”,,this.$variable_map(token))},$Default_ident$42.$$arity=1),Opal.def(self,“$ivar”,$Default_ivar$43=function(token){return this.$n(“ivar”,,this.$variable_map(token))},$Default_ivar$43.$$arity=1),Opal.def(self,“$gvar”,$Default_gvar$44=function(token){return this.$n(“gvar”,,this.$variable_map(token))},$Default_gvar$44.$$arity=1),Opal.def(self,“$cvar”,$Default_cvar$45=function(token){return this.$n(“cvar”,,this.$variable_map(token))},$Default_cvar$45.$$arity=1),Opal.def(self,“$back_ref”,$Default_back_ref$46=function(token){return this.$n(“back_ref”,,this.$token_map(token))},$Default_back_ref$46.$$arity=1),Opal.def(self,“$nth_ref”,$Default_nth_ref$47=function(token){return this.$n(“nth_ref”,,this.$token_map(token))},$Default_nth_ref$47.$$arity=1),Opal.def(self,“$accessible”,$Default_accessible$48=function(node){var $a,self=this,$case=nil,name=nil;return $case=node.$type(),“__FILE__”($case)?$truthy(self.emit_file_line_as_literals)?self.$n(“str”,,node.$loc().$dup()):node:“__LINE__”($case)?$truthy(self.emit_file_line_as_literals)?self.$n(“int”,,node.$loc().$dup()):node:“__ENCODING__”($case)?$truthy(self.$class().$emit_encoding()())?self.$n(“const”,[self.$n(“const”,,nil),“UTF_8”],node.$loc().$dup()):node:“ident”($case)?($a=[].concat(Opal.to_a(node)),name=null==$a?nil:$a,$truthy(self.parser.$static_env()(name))?node.$updated(“lvar”):($a=[].concat(Opal.to_a(node)),name=null==$a?nil:$a,self.$n(“send”,,self.$var_send_map(node)))):node},$Default_accessible$48.$$arity=1),Opal.def(self,“$const”,$Default_const$49=function(name_t){return this.$n(“const”,,this.$constant_map(nil,nil,name_t))},$Default_const$49.$$arity=1),Opal.def(self,“$const_global”,$Default_const_global$50=function(t_colon3,name_t){var cbase;return cbase=this.$n0(“cbase”,this.$token_map(t_colon3)),this.$n(“const”,,this.$constant_map(cbase,t_colon3,name_t))},$Default_const_global$50.$$arity=2),Opal.def(self,“$const_fetch”,$Default_const_fetch$51=function(scope,t_colon2,name_t){return this.$n(“const”,,this.$constant_map(scope,t_colon2,name_t))},$Default_const_fetch$51.$$arity=3),Opal.def(self,“$__ENCODING__”,$Default___ENCODING__$52=function(__ENCODING__t){return this.$n0(“__ENCODING__”,this.$token_map(__ENCODING__t))},$Default___ENCODING__$52.$$arity=1),Opal.def(self,“$assignable”,$Default_assignable$53=function(node){var $a,self=this,$case=nil,name=nil;return $case=node.$type(),“cvar”($case)?node.$updated(“cvasgn”):“ivar”($case)?node.$updated(“ivasgn”):“gvar”($case)?node.$updated(“gvasgn”):“const”($case)?($truthy(self.parser.$context()())||self.$diagnostic(“error”,“dynamic_const”,nil,node.$loc().$expression()),node.$updated(“casgn”)):“ident”($case)?($a=[].concat(Opal.to_a(node)),name=null==$a?nil:$a,self.parser.$static_env().$declare(name),node.$updated(“lvasgn”)):“nil”($case)||“self”($case)||“true”($case)||“false”($case)||“__FILE__”($case)||“__LINE__”($case)||“__ENCODING__”($case)?self.$diagnostic(“error”,“invalid_assignment”,nil,node.$loc().$expression()):“back_ref”($case)||“nth_ref”($case)?self.$diagnostic(“error”,“backref_assignment”,nil,node.$loc().$expression()):nil},$Default_assignable$53.$$arity=1),Opal.def(self,“$const_op_assignable”,$Default_const_op_assignable$54=function(node){return node.$updated(“casgn”)},$Default_const_op_assignable$54.$$arity=1),Opal.def(self,“$assign”,$Default_assign$55=function(lhs,eql_t,rhs){return lhs(rhs).$updated(nil,nil,$hash2(,{location:lhs.$loc().$with_operator(this.$loc(eql_t)).$with_expression(this.$join_exprs(lhs,rhs))}))},$Default_assign$55.$$arity=3),Opal.def(self,“$op_assign”,$Default_op_assign$56=function(lhs,op_t,rhs){var self=this,$case=nil,operator=nil,source_map=nil;return $case=lhs.$type(),“gvasgn”($case)||“ivasgn”($case)||“lvasgn”($case)||“cvasgn”($case)||“casgn”($case)||“send”($case)||“csend”($case)||“index”($case)?(operator=self.$value(op_t)[“$”]($range(0,-1,!1)).$to_sym(),source_map=lhs.$loc().$with_operator(self.$loc(op_t)).$with_expression(self.$join_exprs(lhs,rhs)),lhs.$type()(“index”)&&(lhs=lhs.$updated(“indexasgn”)),“&&”($case=operator)?self.$n(“and_asgn”,,source_map):“||”($case)?self.$n(“or_asgn”,,source_map):self.$n(“op_asgn”,,source_map)):“back_ref”($case)||“nth_ref”($case)?self.$diagnostic(“error”,“backref_assignment”,nil,lhs.$loc().$expression()):nil},$Default_op_assign$56.$$arity=3),Opal.def(self,“$multi_lhs”,$Default_multi_lhs$57=function(begin_t,items,end_t){return this.$n(“mlhs”,[].concat(Opal.to_a(items)),this.$collection_map(begin_t,items,end_t))},$Default_multi_lhs$57.$$arity=3),Opal.def(self,“$multi_assign”,$Default_multi_assign$58=function(lhs,eql_t,rhs){return this.$n(“masgn”,,this.$binary_op_map(lhs,eql_t,rhs))},$Default_multi_assign$58.$$arity=3),Opal.def(self,“$def_class”,$Default_def_class$59=function(class_t,name,lt_t,superclass,body,end_t){return this.$n(“class”,,this.$module_definition_map(class_t,name,lt_t,end_t))},$Default_def_class$59.$$arity=6),Opal.def(self,“$def_sclass”,$Default_def_sclass$60=function(class_t,lshft_t,expr,body,end_t){return this.$n(“sclass”,,this.$module_definition_map(class_t,nil,lshft_t,end_t))},$Default_def_sclass$60.$$arity=5),Opal.def(self,“$def_module”,$Default_def_module$61=function(module_t,name,body,end_t){return this.$n(“module”,,this.$module_definition_map(module_t,name,nil,end_t))},$Default_def_module$61.$$arity=4),Opal.def(self,“$def_method”,$Default_def_method$62=function(def_t,name_t,args,body,end_t){return this.$n(“def”,,this.$definition_map(def_t,nil,name_t,end_t))},$Default_def_method$62.$$arity=5),Opal.def(self,“$def_singleton”,$Default_def_singleton$63=function(def_t,definee,dot_t,name_t,args,body,end_t){var self=this,$case=nil;return $case=definee.$type(),“int”($case)||“str”($case)||“dstr”($case)||“sym”($case)||“dsym”($case)||“regexp”($case)||“array”($case)||“hash”($case)?self.$diagnostic(“error”,“singleton_literal”,nil,definee.$loc().$expression()):self.$n(“defs”,,self.$definition_map(def_t,dot_t,name_t,end_t))},$Default_def_singleton$63.$$arity=7),Opal.def(self,“$undef_method”,$Default_undef_method$64=function(undef_t,names){return this.$n(“undef”,[].concat(Opal.to_a(names)),this.$keyword_map(undef_t,nil,names,nil))},$Default_undef_method$64.$$arity=2),Opal.def(self,“$alias”,$Default_alias$65=function(alias_t,to,from){return this.$n(“alias”,,this.$keyword_map(alias_t,nil,,nil))},$Default_alias$65.$$arity=3),Opal.def(self,“$args”,$Default_args$66=function(begin_t,args,end_t,check_args){return null==check_args&&(check_args=!0),$truthy(check_args)&&(args=this.$check_duplicate_args(args)),this.$n(“args”,args,this.$collection_map(begin_t,args,end_t))},$Default_args$66.$$arity=-4),Opal.def(self,“$arg”,$Default_arg$67=function(name_t){return this.$n(“arg”,,this.$variable_map(name_t))},$Default_arg$67.$$arity=1),Opal.def(self,“$optarg”,$Default_optarg$68=function(name_t,eql_t,value){return this.$n(“optarg”,,this.$variable_map(name_t).$with_operator(this.$loc(eql_t)).$with_expression(this.$loc(name_t).$join(value.$loc().$expression())))},$Default_optarg$68.$$arity=3),Opal.def(self,“$restarg”,$Default_restarg$69=function(star_t,name_t){return null==name_t&&(name_t=nil),$truthy(name_t)?this.$n(“restarg”,,this.$arg_prefix_map(star_t,name_t)):this.$n0(“restarg”,this.$arg_prefix_map(star_t))},$Default_restarg$69.$$arity=-2),Opal.def(self,“$kwarg”,$Default_kwarg$70=function(name_t){return this.$n(“kwarg”,,this.$kwarg_map(name_t))},$Default_kwarg$70.$$arity=1),Opal.def(self,“$kwoptarg”,$Default_kwoptarg$71=function(name_t,value){return this.$n(“kwoptarg”,,this.$kwarg_map(name_t,value))},$Default_kwoptarg$71.$$arity=2),Opal.def(self,“$kwrestarg”,$Default_kwrestarg$72=function(dstar_t,name_t){return null==name_t&&(name_t=nil),$truthy(name_t)?this.$n(“kwrestarg”,,this.$arg_prefix_map(dstar_t,name_t)):this.$n0(“kwrestarg”,this.$arg_prefix_map(dstar_t))},$Default_kwrestarg$72.$$arity=-2),Opal.def(self,“$shadowarg”,$Default_shadowarg$73=function(name_t){return this.$n(“shadowarg”,,this.$variable_map(name_t))},$Default_shadowarg$73.$$arity=1),Opal.def(self,“$blockarg”,$Default_blockarg$74=function(amper_t,name_t){return this.$n(“blockarg”,,this.$arg_prefix_map(amper_t,name_t))},$Default_blockarg$74.$$arity=2),Opal.def(self,“$procarg0”,$Default_procarg0$75=function(arg){return $truthy(this.$class().$emit_procarg0())?arg.$updated(“procarg0”):arg},$Default_procarg0$75.$$arity=1),Opal.def(self,“$arg_expr”,$Default_arg_expr$76=function(expr){return expr.$type()(“lvasgn”)?expr.$updated(“arg”):this.$n(“arg_expr”,,expr.$loc().$dup())},$Default_arg_expr$76.$$arity=1),Opal.def(self,“$restarg_expr”,$Default_restarg_expr$77=function(star_t,expr){return null==expr&&(expr=nil),$truthy(expr())?this.$n0(“restarg”,this.$token_map(star_t)):expr.$type()(“lvasgn”)?expr.$updated(“restarg”):this.$n(“restarg_expr”,,expr.$loc().$dup())},$Default_restarg_expr$77.$$arity=-2),Opal.def(self,“$blockarg_expr”,$Default_blockarg_expr$78=function(amper_t,expr){return expr.$type()(“lvasgn”)?expr.$updated(“blockarg”):this.$n(“blockarg_expr”,,expr.$loc().$dup())},$Default_blockarg_expr$78.$$arity=2),Opal.def(self,“$objc_kwarg”,$Default_objc_kwarg$79=function(kwname_t,assoc_t,name_t){var kwname_l=nil,operator_l=nil;return kwname_l=this.$loc(kwname_t),operator_l=$truthy(assoc_t())?(kwname_l=kwname_l.$resize($rb_minus(kwname_l.$size(),1))).$end().$resize(1):this.$loc(assoc_t),this.$n(“objc_kwarg”,,$$$($$$($$($nesting,“Source”),“Map”),“ObjcKwarg”).$new(kwname_l,operator_l,this.$loc(name_t),kwname_l.$join(this.$loc(name_t))))},$Default_objc_kwarg$79.$$arity=3),Opal.def(self,“$objc_restarg”,$Default_objc_restarg$80=function(star_t,name){return null==name&&(name=nil),$truthy(name())?this.$n0(“restarg”,this.$arg_prefix_map(star_t)):name.$type()(“arg”)?name.$updated(“restarg”,nil,$hash2(,{location:name.$loc().$with_operator(this.$loc(star_t))})):this.$n(“objc_restarg”,,this.$unary_op_map(star_t,name))},$Default_objc_restarg$80.$$arity=-2),Opal.def(self,“$call_type_for_dot”,$Default_call_type_for_dot$81=function(dot_t){var $a;return $truthy($truthy($a=dot_t()[“$!”]())?this.$value(dot_t)(“anddot”):$a)?“csend”:“send”},$Default_call_type_for_dot$81.$$arity=1),Opal.def(self,“$call_method”,$Default_call_method$82=function(receiver,dot_t,selector_t,lparen_t,args,rparen_t){var type;return null==lparen_t&&(lparen_t=nil),null==args&&(args=[]),null==rparen_t&&(rparen_t=nil),type=this.$call_type_for_dot(dot_t),$truthy(selector_t())?this.$n(type,.concat(Opal.to_a(args)),this.$send_map(receiver,dot_t,nil,lparen_t,args,rparen_t)):this.$n(type,.concat(Opal.to_a(args)),this.$send_map(receiver,dot_t,selector_t,lparen_t,args,rparen_t))},$Default_call_method$82.$$arity=-4),Opal.def(self,“$call_lambda”,$Default_call_lambda$83=function(lambda_t){return $truthy(this.$class().$emit_lambda())?this.$n0(“lambda”,this.$expr_map(this.$loc(lambda_t))):this.$n(“send”,,this.$send_map(nil,nil,lambda_t))},$Default_call_lambda$83.$$arity=1),Opal.def(self,“$block”,$Default_block$84=function(method_call,begin_t,args,body,end_t){var $a,call_args=nil,last_arg=nil,actual_send=nil,block=nil;return null==($a=[].concat(Opal.to_a(method_call)))?nil:$a,null==$a?nil:$a,call_args=$slice.call($a,2),method_call.$type()(“yield”)&&this.$diagnostic(“error”,“block_given_to_yield”,nil,method_call.$loc().$keyword(),),last_arg=call_args.$last(),$truthy($truthy($a=last_arg)?last_arg.$type()(“block_pass”):$a)&&this.$diagnostic(“error”,“block_and_blockarg”,nil,last_arg.$loc().$expression(),),$truthy([“$include?”](method_call.$type()))?this.$n(“block”,,this.$block_map(method_call.$loc().$expression(),begin_t,end_t)):(actual_send=null==($a=[].concat(Opal.to_a(method_call)))?nil:$a,block=this.$n(“block”,,this.$block_map(actual_send.$loc().$expression(),begin_t,end_t)),this.$n(method_call.$type(),,method_call.$loc().$with_expression(this.$join_exprs(method_call,block))))},$Default_block$84.$$arity=5),Opal.def(self,“$block_pass”,$Default_block_pass$85=function(amper_t,arg){return this.$n(“block_pass”,,this.$unary_op_map(amper_t,arg))},$Default_block_pass$85.$$arity=2),Opal.def(self,“$objc_varargs”,$Default_objc_varargs$86=function(pair,rest_of_varargs){var $a,value,first_vararg=nil,vararg_array=nil;return value=null==($a=[].concat(Opal.to_a(pair)))?nil:$a,first_vararg=null==$a?nil:$a,vararg_array=this.$array(nil,.concat(Opal.to_a(rest_of_varargs)),nil).$updated(“objc_varargs”),pair.$updated(nil,,$hash2(,{location:pair.$loc().$with_expression(pair.$loc().$expression().$join(vararg_array.$loc().$expression()))}))},$Default_objc_varargs$86.$$arity=2),Opal.def(self,“$attr_asgn”,$Default_attr_asgn$87=function(receiver,dot_t,selector_t){var method_name,type;return method_name=$rb_plus(this.$value(selector_t),“=”).$to_sym(),type=this.$call_type_for_dot(dot_t),this.$n(type,,this.$send_map(receiver,dot_t,selector_t))},$Default_attr_asgn$87.$$arity=3),Opal.def(self,“$index”,$Default_index$88=function(receiver,lbrack_t,indexes,rbrack_t){return $truthy(this.$class().$emit_index())?this.$n(“index”,.concat(Opal.to_a(indexes)),this.$index_map(receiver,lbrack_t,rbrack_t)):this.$n(“send”,[receiver,“”].concat(Opal.to_a(indexes)),this.$send_index_map(receiver,lbrack_t,rbrack_t))},$Default_index$88.$$arity=4),Opal.def(self,“$index_asgn”,$Default_index_asgn$89=function(receiver,lbrack_t,indexes,rbrack_t){return $truthy(this.$class().$emit_index())?this.$n(“indexasgn”,.concat(Opal.to_a(indexes)),this.$index_map(receiver,lbrack_t,rbrack_t)):this.$n(“send”,[receiver,“=”].concat(Opal.to_a(indexes)),this.$send_index_map(receiver,lbrack_t,rbrack_t))},$Default_index_asgn$89.$$arity=4),Opal.def(self,“$binary_op”,$Default_binary_op$90=function(receiver,operator_t,arg){var source_map=nil,operator=nil,method_call=nil;return source_map=this.$send_binary_op_map(receiver,operator_t,arg),this.parser.$version()(18)&&((operator=this.$value(operator_t))(“!=”)?method_call=this.$n(“send”,,source_map):operator(“!~”)&&(method_call=this.$n(“send”,,source_map)),$truthy([“$include?”](operator)))?this.$n(“not”,,this.$expr_map(source_map.$expression())):this.$n(“send”,,source_map)},$Default_binary_op$90.$$arity=3),Opal.def(self,“$match_op”,$Default_match_op$91=function(receiver,match_t,arg){var $$92,source_map,regexp=nil;return source_map=this.$send_binary_op_map(receiver,match_t,arg),$truthy(regexp=this.$static_regexp_node(receiver))?($send(regexp.$names(),“each”,[],(($$92=function(name){var self=$$92.$$s||this;return null==self.parser&&(self.parser=nil),null==name&&(name=nil),self.parser.$static_env().$declare(name)}).$$s=this,$$92.$$arity=1,$$92)),this.$n(“match_with_lvasgn”,,source_map)):this.$n(“send”,,source_map)},$Default_match_op$91.$$arity=3),Opal.def(self,“$unary_op”,$Default_unary_op$93=function(op_t,receiver){var $case,method=nil;return $case=this.$value(op_t),method=“+”($case)||“-”($case)?$rb_plus(this.$value(op_t),“@”):this.$value(op_t),this.$n(“send”,,this.$send_unary_op_map(op_t,receiver))},$Default_unary_op$93.$$arity=2),Opal.def(self,“$not_op”,$Default_not_op$94=function(not_t,begin_t,receiver,end_t){var nil_node=nil;return null==begin_t&&(begin_t=nil),null==receiver&&(receiver=nil),null==end_t&&(end_t=nil),this.parser.$version()(18)?this.$n(“not”,,this.$unary_op_map(not_t,receiver)):$truthy(receiver())?(nil_node=this.$n0(“begin”,this.$collection_map(begin_t,nil,end_t)),this.$n(“send”,,this.$send_unary_op_map(not_t,nil_node))):this.$n(“send”,,this.$send_map(nil,nil,not_t,begin_t,,end_t))},$Default_not_op$94.$$arity=-2),Opal.def(self,“$logical_op”,$Default_logical_op$95=function(type,lhs,op_t,rhs){return this.$n(type,,this.$binary_op_map(lhs,op_t,rhs))},$Default_logical_op$95.$$arity=4),Opal.def(self,“$condition”,$Default_condition$96=function(cond_t,cond,then_t,if_true,else_t,if_false,end_t){return this.$n(“if”,,this.$condition_map(cond_t,cond,then_t,if_true,else_t,if_false,end_t))},$Default_condition$96.$$arity=7),Opal.def(self,“$condition_mod”,$Default_condition_mod$97=function(if_true,if_false,cond_t,cond){var $a;return this.$n(“if”,,this.$keyword_mod_map($truthy($a=if_true)?$a:if_false,cond_t,cond))},$Default_condition_mod$97.$$arity=4),Opal.def(self,“$ternary”,$Default_ternary$98=function(cond,question_t,if_true,colon_t,if_false){return this.$n(“if”,,this.$ternary_map(cond,question_t,if_true,colon_t,if_false))},$Default_ternary$98.$$arity=5),Opal.def(self,“$when”,$Default_when$99=function(when_t,patterns,then_t,body){var children;return children=patterns(body),this.$n(“when”,children,this.$keyword_map(when_t,then_t,children,nil))},$Default_when$99.$$arity=4),Opal.def(self,“$case”,$Default_case$100=function(case_t,expr,when_bodies,else_t,else_body,end_t){return this.$n(“case”,.concat(Opal.to_a(when_bodies(else_body))),this.$condition_map(case_t,expr,nil,nil,else_t,else_body,end_t))},$Default_case$100.$$arity=6),Opal.def(self,“$loop”,$Default_loop$101=function(type,keyword_t,cond,do_t,body,end_t){return this.$n(type,,this.$keyword_map(keyword_t,do_t,nil,end_t))},$Default_loop$101.$$arity=6),Opal.def(self,“$loop_mod”,$Default_loop_mod$102=function(type,body,keyword_t,cond){return body.$type()(“kwbegin”)&&(type+=“_post”),this.$n(type,,this.$keyword_mod_map(body,keyword_t,cond))},$Default_loop_mod$102.$$arity=4),Opal.def(self,“$for”,$Default_for$103=function(for_t,iterator,in_t,iteratee,do_t,body,end_t){return this.$n(“for”,,this.$for_map(for_t,in_t,do_t,end_t))},$Default_for$103.$$arity=7),Opal.def(self,“$keyword_cmd”,$Default_keyword_cmd$104=function(type,keyword_t,lparen_t,args,rparen_t){var last_arg=nil;return null==lparen_t&&(lparen_t=nil),null==args&&(args=[]),null==rparen_t&&(rparen_t=nil),$truthy(type(“yield”)?$rb_gt(args.$count(),0):type(“yield”))&&(last_arg=args.$last()).$type()(“block_pass”)&&this.$diagnostic(“error”,“block_given_to_yield”,nil,this.$loc(keyword_t),),this.$n(type,args,this.$keyword_map(keyword_t,lparen_t,args,rparen_t))},$Default_keyword_cmd$104.$$arity=-3),Opal.def(self,“$preexe”,$Default_preexe$105=function(preexe_t,lbrace_t,compstmt,rbrace_t){return this.$n(“preexe”,,this.$keyword_map(preexe_t,lbrace_t,[],rbrace_t))},$Default_preexe$105.$$arity=4),Opal.def(self,“$postexe”,$Default_postexe$106=function(postexe_t,lbrace_t,compstmt,rbrace_t){return this.$n(“postexe”,,this.$keyword_map(postexe_t,lbrace_t,[],rbrace_t))},$Default_postexe$106.$$arity=4),Opal.def(self,“$rescue_body”,$Default_rescue_body$107=function(rescue_t,exc_list,assoc_t,exc_var,then_t,compound_stmt){return this.$n(“resbody”,,this.$rescue_body_map(rescue_t,exc_list,assoc_t,exc_var,then_t,compound_stmt))},$Default_rescue_body$107.$$arity=6),Opal.def(self,“$begin_body”,$Default_begin_body$108=function(compound_stmt,rescue_bodies,else_t,else_,ensure_t,ensure_){var statements=nil;return null==rescue_bodies&&(rescue_bodies=[]),null==else_t&&(else_t=nil),null==else_&&(else_=nil),null==ensure_t&&(ensure_t=nil),null==ensure_&&(ensure_=nil),$truthy(rescue_bodies())?compound_stmt=$truthy(else_t)?this.$n(“rescue”,.concat(Opal.to_a($rb_plus(rescue_bodies,))),this.$eh_keyword_map(compound_stmt,nil,rescue_bodies,else_t,else_)):this.$n(“rescue”,.concat(Opal.to_a($rb_plus(rescue_bodies,))),this.$eh_keyword_map(compound_stmt,nil,rescue_bodies,nil,nil)):$truthy(else_t)&&(statements=[],$truthy(compound_stmt()[“$!”]())&&(compound_stmt.$type()(“begin”)?statements=$rb_plus(statements,compound_stmt.$children()):statements.$push(compound_stmt)),statements.$push(this.$n(“begin”,,this.$collection_map(else_t,,nil))),compound_stmt=this.$n(“begin”,statements,this.$collection_map(nil,statements,nil))),$truthy(ensure_t)&&(compound_stmt=this.$n(“ensure”,,this.$eh_keyword_map(compound_stmt,ensure_t,,nil,nil))),compound_stmt},$Default_begin_body$108.$$arity=-2),Opal.def(self,“$compstmt”,$Default_compstmt$109=function(statements){var self=this;return $truthy(statements())?nil:$truthy(statements())?statements.$first():self.$n(“begin”,statements,self.$collection_map(nil,statements,nil))},$Default_compstmt$109.$$arity=1),Opal.def(self,“$begin”,$Default_begin$110=function(begin_t,body,end_t){var $a,$b;return $truthy(body())?this.$n0(“begin”,this.$collection_map(begin_t,nil,end_t)):$truthy($truthy($a=body.$type()(“mlhs”))?$a:$truthy($b=body.$type()(“begin”)?body.$loc().$begin()():body.$type()(“begin”))?body.$loc().$end()():$b)?this.$n(body.$type(),body.$children(),this.$collection_map(begin_t,body.$children(),end_t)):this.$n(“begin”,,this.$collection_map(begin_t,,end_t))},$Default_begin$110.$$arity=3),Opal.def(self,“$begin_keyword”,$Default_begin_keyword$111=function(begin_t,body,end_t){var $a;return $truthy(body())?this.$n0(“kwbegin”,this.$collection_map(begin_t,nil,end_t)):$truthy($truthy($a=body.$type()(“begin”)?body.$loc().$begin()():body.$type()(“begin”))?body.$loc().$end()():$a)?this.$n(“kwbegin”,body.$children(),this.$collection_map(begin_t,body.$children(),end_t)):this.$n(“kwbegin”,,this.$collection_map(begin_t,,end_t))},$Default_begin_keyword$111.$$arity=3),self.$private(),Opal.def(self,“$check_condition”,$Default_check_condition$112=function(cond){var $a,self=this,$case=nil,lhs=nil,rhs=nil,type=nil;return $case=cond.$type(),“masgn”($case)?$truthy(function(lhs,rhs){return“number”==typeof lhs&&“number”==typeof rhs?lhs<=rhs:lhs(rhs)}(self.parser.$version(),23))?self.$diagnostic(“error”,“masgn_as_condition”,nil,cond.$loc().$expression()):cond:“begin”($case)?cond.$children().$count()(1)?cond.$updated(nil,):cond:“and”($case)||“or”($case)||“irange”($case)||“erange”($case)?($a=[].concat(Opal.to_a(cond)),lhs=null==$a?nil:$a,rhs=null==$a?nil:$a,$case=cond.$type(),type=“irange”($case)?“iflipflop”:“erange”($case)?“eflipflop”:nil,$truthy($truthy($a=[“$include?”](cond.$type()))?self.parser.$version()(18):$a)?cond:cond.$updated(type,)):“regexp”($case)?self.$n(“match_current_line”,,self.$expr_map(cond.$loc().$expression())):cond},$Default_check_condition$112.$$arity=1),Opal.def(self,“$check_duplicate_args”,$Default_check_duplicate_args$113=function(args,map){var $$114;return null==map&&(map=$hash2([],{})),$send(args,“each”,,(($$114=function(this_arg){var $a,self=$$114.$$s||this,$case=nil,this_name=nil,that_arg=nil,that_name=nil,$writer=nil;return null==this_arg&&(this_arg=nil),$case=this_arg.$type(),“arg”($case)||“optarg”($case)||“restarg”($case)||“blockarg”($case)||“kwarg”($case)||“kwoptarg”($case)||“kwrestarg”($case)||“shadowarg”($case)||“procarg0”($case)?($a=[].concat(Opal.to_a(this_arg)),this_name=null==$a?nil:$a,that_arg=map[“$”](this_name),$a=[].concat(Opal.to_a(that_arg)),that_name=null==$a?nil:$a,$truthy(that_arg())?($writer=,$send(map,“[]=”,Opal.to_a($writer)),$writer):$truthy(self(this_name,that_name))?self.$diagnostic(“error”,“duplicate_argument”,nil,this_arg.$loc().$name(),):nil):“mlhs”($case)?self.$check_duplicate_args(this_arg.$children(),map):nil}).$$s=this,$$114.$$arity=1,$$114))},$Default_check_duplicate_args$113.$$arity=-2),Opal.def(self,“$arg_name_collides?”,$Default_arg_name_collides$ques$115=function(this_name,that_name){var $a,$b,$case=nil;return $case=this.parser.$version(),18($case)?this_name(that_name):19($case)?$truthy($a=this_name(“_”))?this_name(that_name):$a:$truthy($a=$truthy($b=this_name)?this_name[“$”](0)(“_”):$b)?this_name(that_name):$a},$Default_arg_name_collides$ques$115.$$arity=2),Opal.def(self,“$n”,$Default_n$116=function(type,children,source_map){return $$$($$($nesting,“AST”),“Node”).$new(type,children,$hash2(,{location:source_map}))},$Default_n$116.$$arity=3),Opal.def(self,“$n0”,$Default_n0$117=function(type,source_map){return this.$n(type,[],source_map)},$Default_n0$117.$$arity=2),Opal.def(self,“$join_exprs”,$Default_join_exprs$118=function(left_expr,right_expr){return left_expr.$loc().$expression().$join(right_expr.$loc().$expression())},$Default_join_exprs$118.$$arity=2),Opal.def(self,“$token_map”,$Default_token_map$119=function(token){return $$$($$($nesting,“Source”),“Map”).$new(this.$loc(token))},$Default_token_map$119.$$arity=1),Opal.def(self,“$delimited_string_map”,$Default_delimited_string_map$120=function(string_t){var begin_l,end_l,str_range=nil;return begin_l=(str_range=this.$loc(string_t)).$with($hash2(,{end_pos:$rb_plus(str_range.$begin_pos(),1)})),end_l=str_range.$with($hash2(,{begin_pos:$rb_minus(str_range.$end_pos(),1)})),$$$($$$($$($nesting,“Source”),“Map”),“Collection”).$new(begin_l,end_l,this.$loc(string_t))},$Default_delimited_string_map$120.$$arity=1),Opal.def(self,“$prefix_string_map”,$Default_prefix_string_map$121=function(symbol){var begin_l,str_range=nil;return begin_l=(str_range=this.$loc(symbol)).$with($hash2(,{end_pos:$rb_plus(str_range.$begin_pos(),1)})),$$$($$$($$($nesting,“Source”),“Map”),“Collection”).$new(begin_l,nil,this.$loc(symbol))},$Default_prefix_string_map$121.$$arity=1),Opal.def(self,“$unquoted_map”,$Default_unquoted_map$122=function(token){return $$$($$$($$($nesting,“Source”),“Map”),“Collection”).$new(nil,nil,this.$loc(token))},$Default_unquoted_map$122.$$arity=1),Opal.def(self,“$pair_keyword_map”,$Default_pair_keyword_map$123=function(key_t,value_e){var key_l,colon_l,key_range=nil;return key_l=(key_range=this.$loc(key_t)).$adjust($hash2(,{end_pos:-1})),colon_l=key_range.$with($hash2(,{begin_pos:$rb_minus(key_range.$end_pos(),1)})),[$$$($$$($$($nesting,“Source”),“Map”),“Collection”).$new(nil,nil,key_l),$$$($$$($$($nesting,“Source”),“Map”),“Operator”).$new(colon_l,key_range.$join(value_e.$loc().$expression()))]},$Default_pair_keyword_map$123.$$arity=2),Opal.def(self,“$pair_quoted_map”,$Default_pair_quoted_map$124=function(begin_t,end_t,value_e){var quote_l,colon_l,end_l=nil;return quote_l=(end_l=this.$loc(end_t)).$with($hash2(,{begin_pos:$rb_minus(end_l.$end_pos(),2),end_pos:$rb_minus(end_l.$end_pos(),1)})),colon_l=end_l.$with($hash2(,{begin_pos:$rb_minus(end_l.$end_pos(),1)})),[[this.$value(end_t),quote_l],$$$($$$($$($nesting,“Source”),“Map”),“Operator”).$new(colon_l,this.$loc(begin_t).$join(value_e.$loc().$expression()))]},$Default_pair_quoted_map$124.$$arity=3),Opal.def(self,“$expr_map”,$Default_expr_map$125=function(loc){return $$$($$($nesting,“Source”),“Map”).$new(loc)},$Default_expr_map$125.$$arity=1),Opal.def(self,“$collection_map”,$Default_collection_map$126=function(begin_t,parts,end_t){var $a,expr_l=nil;return $truthy($truthy($a=begin_t())?$a:end_t())?$truthy(parts())?expr_l=this.$join_exprs(parts.$first(),parts.$last()):$truthy(begin_t()[“$!”]())?expr_l=this.$loc(begin_t):$truthy(end_t()[“$!”]())&&(expr_l=this.$loc(end_t)):expr_l=this.$loc(begin_t).$join(this.$loc(end_t)),$$$($$$($$($nesting,“Source”),“Map”),“Collection”).$new(this.$loc(begin_t),this.$loc(end_t),expr_l)},$Default_collection_map$126.$$arity=3),Opal.def(self,“$string_map”,$Default_string_map$127=function(begin_t,parts,end_t){var $a,expr_l=nil;return $truthy($truthy($a=begin_t)?this.$value(begin_t)(“<<”):$a)?(expr_l=$truthy(parts())?this.$join_exprs(parts.$first(),parts.$last()):this.$loc(end_t).$begin(),$$$($$$($$($nesting,“Source”),“Map”),“Heredoc”).$new(this.$loc(begin_t),expr_l,this.$loc(end_t))):this.$collection_map(begin_t,parts,end_t)},$Default_string_map$127.$$arity=3),Opal.def(self,“$regexp_map”,$Default_regexp_map$128=function(begin_t,end_t,options_e){return $$$($$$($$($nesting,“Source”),“Map”),“Collection”).$new(this.$loc(begin_t),this.$loc(end_t),this.$loc(begin_t).$join(options_e.$loc().$expression()))},$Default_regexp_map$128.$$arity=3),Opal.def(self,“$constant_map”,$Default_constant_map$129=function(scope,colon2_t,name_t){var expr_l=nil;return expr_l=$truthy(scope())?this.$loc(name_t):scope.$loc().$expression().$join(this.$loc(name_t)),$$$($$$($$($nesting,“Source”),“Map”),“Constant”).$new(this.$loc(colon2_t),this.$loc(name_t),expr_l)},$Default_constant_map$129.$$arity=3),Opal.def(self,“$variable_map”,$Default_variable_map$130=function(name_t){return $$$($$$($$($nesting,“Source”),“Map”),“Variable”).$new(this.$loc(name_t))},$Default_variable_map$130.$$arity=1),Opal.def(self,“$binary_op_map”,$Default_binary_op_map$131=function(left_e,op_t,right_e){return $$$($$$($$($nesting,“Source”),“Map”),“Operator”).$new(this.$loc(op_t),this.$join_exprs(left_e,right_e))},$Default_binary_op_map$131.$$arity=3),Opal.def(self,“$unary_op_map”,$Default_unary_op_map$132=function(op_t,arg_e){var expr_l=nil;return null==arg_e&&(arg_e=nil),expr_l=$truthy(arg_e())?this.$loc(op_t):this.$loc(op_t).$join(arg_e.$loc().$expression()),$$$($$$($$($nesting,“Source”),“Map”),“Operator”).$new(this.$loc(op_t),expr_l)},$Default_unary_op_map$132.$$arity=-2),Opal.def(self,“$range_map”,$Default_range_map$133=function(start_e,op_t,end_e){var expr_l=nil;return expr_l=$truthy(end_e)?this.$join_exprs(start_e,end_e):start_e.$loc().$expression().$join(this.$loc(op_t)),$$$($$$($$($nesting,“Source”),“Map”),“Operator”).$new(this.$loc(op_t),expr_l)},$Default_range_map$133.$$arity=3),Opal.def(self,“$arg_prefix_map”,$Default_arg_prefix_map$134=function(op_t,name_t){var expr_l=nil;return null==name_t&&(name_t=nil),expr_l=$truthy(name_t())?this.$loc(op_t):this.$loc(op_t).$join(this.$loc(name_t)),$$$($$$($$($nesting,“Source”),“Map”),“Variable”).$new(this.$loc(name_t),expr_l)},$Default_arg_prefix_map$134.$$arity=-2),Opal.def(self,“$kwarg_map”,$Default_kwarg_map$135=function(name_t,value_e){var name_range,expr_l=nil;return null==value_e&&(value_e=nil),name_range=this.$loc(name_t).$adjust($hash2(,{end_pos:-1})),expr_l=$truthy(value_e)?this.$loc(name_t).$join(value_e.$loc().$expression()):this.$loc(name_t),$$$($$$($$($nesting,“Source”),“Map”),“Variable”).$new(name_range,expr_l)},$Default_kwarg_map$135.$$arity=-2),Opal.def(self,“$module_definition_map”,$Default_module_definition_map$136=function(keyword_t,name_e,operator_t,end_t){var name_l=nil;return $truthy(name_e)&&(name_l=name_e.$loc().$expression()),$$$($$$($$($nesting,“Source”),“Map”),“Definition”).$new(this.$loc(keyword_t),this.$loc(operator_t),name_l,this.$loc(end_t))},$Default_module_definition_map$136.$$arity=4),Opal.def(self,“$definition_map”,$Default_definition_map$137=function(keyword_t,operator_t,name_t,end_t){return $$$($$$($$($nesting,“Source”),“Map”),“Definition”).$new(this.$loc(keyword_t),this.$loc(operator_t),this.$loc(name_t),this.$loc(end_t))},$Default_definition_map$137.$$arity=4),Opal.def(self,“$send_map”,$Default_send_map$138=function(receiver_e,dot_t,selector_t,begin_t,args,end_t){var begin_l=nil,end_l=nil;return null==begin_t&&(begin_t=nil),null==args&&(args=[]),null==end_t&&(end_t=nil),$truthy(receiver_e)?begin_l=receiver_e.$loc().$expression():$truthy(selector_t)&&(begin_l=this.$loc(selector_t)),$truthy(end_t)?end_l=this.$loc(end_t):$truthy(args())?end_l=args.$last().$loc().$expression():$truthy(selector_t)&&(end_l=this.$loc(selector_t)),$$$($$$($$($nesting,“Source”),“Map”),“Send”).$new(this.$loc(dot_t),this.$loc(selector_t),this.$loc(begin_t),this.$loc(end_t),begin_l.$join(end_l))},$Default_send_map$138.$$arity=-4),Opal.def(self,“$var_send_map”,$Default_var_send_map$139=function(variable_e){return $$$($$$($$($nesting,“Source”),“Map”),“Send”).$new(nil,variable_e.$loc().$expression(),nil,nil,variable_e.$loc().$expression())},$Default_var_send_map$139.$$arity=1),Opal.def(self,“$send_binary_op_map”,$Default_send_binary_op_map$140=function(lhs_e,selector_t,rhs_e){return $$$($$$($$($nesting,“Source”),“Map”),“Send”).$new(nil,this.$loc(selector_t),nil,nil,this.$join_exprs(lhs_e,rhs_e))},$Default_send_binary_op_map$140.$$arity=3),Opal.def(self,“$send_unary_op_map”,$Default_send_unary_op_map$141=function(selector_t,arg_e){var expr_l=nil;return expr_l=$truthy(arg_e())?this.$loc(selector_t):this.$loc(selector_t).$join(arg_e.$loc().$expression()),$$$($$$($$($nesting,“Source”),“Map”),“Send”).$new(nil,this.$loc(selector_t),nil,nil,expr_l)},$Default_send_unary_op_map$141.$$arity=2),Opal.def(self,“$index_map”,$Default_index_map$142=function(receiver_e,lbrack_t,rbrack_t){return $$$($$$($$($nesting,“Source”),“Map”),“Index”).$new(this.$loc(lbrack_t),this.$loc(rbrack_t),receiver_e.$loc().$expression().$join(this.$loc(rbrack_t)))},$Default_index_map$142.$$arity=3),Opal.def(self,“$send_index_map”,$Default_send_index_map$143=function(receiver_e,lbrack_t,rbrack_t){return $$$($$$($$($nesting,“Source”),“Map”),“Send”).$new(nil,this.$loc(lbrack_t).$join(this.$loc(rbrack_t)),nil,nil,receiver_e.$loc().$expression().$join(this.$loc(rbrack_t)))},$Default_send_index_map$143.$$arity=3),Opal.def(self,“$block_map”,$Default_block_map$144=function(receiver_l,begin_t,end_t){return $$$($$$($$($nesting,“Source”),“Map”),“Collection”).$new(this.$loc(begin_t),this.$loc(end_t),receiver_l.$join(this.$loc(end_t)))},$Default_block_map$144.$$arity=3),Opal.def(self,“$keyword_map”,$Default_keyword_map$145=function(keyword_t,begin_t,args,end_t){var $a,end_l=nil;return args=$truthy($a=args)?$a:[],end_l=$truthy(end_t)?this.$loc(end_t):$truthy($truthy($a=args())?args.$last()()[“$!”]():$a)?args.$last().$loc().$expression():$truthy($truthy($a=args())?$rb_gt(args.$count(),1):$a)?args[“$”](-2).$loc().$expression():this.$loc(keyword_t),$$$($$$($$($nesting,“Source”),“Map”),“Keyword”).$new(this.$loc(keyword_t),this.$loc(begin_t),this.$loc(end_t),this.$loc(keyword_t).$join(end_l))},$Default_keyword_map$145.$$arity=4),Opal.def(self,“$keyword_mod_map”,$Default_keyword_mod_map$146=function(pre_e,keyword_t,post_e){return $$$($$$($$($nesting,“Source”),“Map”),“Keyword”).$new(this.$loc(keyword_t),nil,nil,this.$join_exprs(pre_e,post_e))},$Default_keyword_mod_map$146.$$arity=3),Opal.def(self,“$condition_map”,$Default_condition_map$147=function(keyword_t,cond_e,begin_t,body_e,else_t,else_e,end_t){var $a,end_l=nil;return end_l=$truthy(end_t)?this.$loc(end_t):$truthy($truthy($a=else_e)?else_e.$loc().$expression():$a)?else_e.$loc().$expression():$truthy(this.$loc(else_t))?this.$loc(else_t):$truthy($truthy($a=body_e)?body_e.$loc().$expression():$a)?body_e.$loc().$expression():$truthy(this.$loc(begin_t))?this.$loc(begin_t):cond_e.$loc().$expression(),$$$($$$($$($nesting,“Source”),“Map”),“Condition”).$new(this.$loc(keyword_t),this.$loc(begin_t),this.$loc(else_t),this.$loc(end_t),this.$loc(keyword_t).$join(end_l))},$Default_condition_map$147.$$arity=7),Opal.def(self,“$ternary_map”,$Default_ternary_map$148=function(begin_e,question_t,mid_e,colon_t,end_e){return $$$($$$($$($nesting,“Source”),“Map”),“Ternary”).$new(this.$loc(question_t),this.$loc(colon_t),this.$join_exprs(begin_e,end_e))},$Default_ternary_map$148.$$arity=5),Opal.def(self,“$for_map”,$Default_for_map$149=function(keyword_t,in_t,begin_t,end_t){return $$$($$$($$($nesting,“Source”),“Map”),“For”).$new(this.$loc(keyword_t),this.$loc(in_t),this.$loc(begin_t),this.$loc(end_t),this.$loc(keyword_t).$join(this.$loc(end_t)))},$Default_for_map$149.$$arity=4),Opal.def(self,“$rescue_body_map”,$Default_rescue_body_map$150=function(keyword_t,exc_list_e,assoc_t,exc_var_e,then_t,compstmt_e){var $a,end_l=nil;return $truthy(compstmt_e)&&(end_l=compstmt_e.$loc().$expression()),$truthy($truthy($a=end_l())?then_t:$a)&&(end_l=this.$loc(then_t)),$truthy($truthy($a=end_l())?exc_var_e:$a)&&(end_l=exc_var_e.$loc().$expression()),$truthy($truthy($a=end_l())?exc_list_e:$a)&&(end_l=exc_list_e.$loc().$expression()),$truthy(end_l())&&(end_l=this.$loc(keyword_t)),$$$($$$($$($nesting,“Source”),“Map”),“RescueBody”).$new(this.$loc(keyword_t),this.$loc(assoc_t),this.$loc(then_t),this.$loc(keyword_t).$join(end_l))},$Default_rescue_body_map$150.$$arity=6),Opal.def(self,“$eh_keyword_map”,$Default_eh_keyword_map$151=function(compstmt_e,keyword_t,body_es,else_t,else_e){var begin_l=nil,end_l=nil;return begin_l=$truthy(compstmt_e())?$truthy(keyword_t())?body_es.$first().$loc().$expression():this.$loc(keyword_t):compstmt_e.$loc().$expression(),end_l=$truthy(else_t)?$truthy(else_e())?this.$loc(else_t):else_e.$loc().$expression():$truthy(body_es.$last()()[“$!”]())?body_es.$last().$loc().$expression():this.$loc(keyword_t),$$$($$$($$($nesting,“Source”),“Map”),“Condition”).$new(this.$loc(keyword_t),nil,this.$loc(else_t),nil,begin_l.$join(end_l))},$Default_eh_keyword_map$151.$$arity=5),Opal.def(self,“$static_string”,$Default_static_string$152=function(nodes){try{var $$153;return $send(nodes,“map”,[],($$153=function(node){var self=$$153.$$s||this,$case=nil,string=nil;return null==node&&(node=nil),function(){if($case=node.$type(),“str”($case))return node.$children()[“$”](0);if(“begin”($case)){if($truthy(string=self.$static_string(node.$children())))return string;Opal.ret(nil)}else Opal.ret(nil)}()},$$153.$$s=this,$$153.$$arity=1,$$153)).$join()}catch($returner){if($returner===Opal.returner)return $returner.$v;throw $returner}},$Default_static_string$152.$$arity=1),Opal.def(self,“$static_regexp”,$Default_static_regexp$154=function(parts,options){var source=nil;return source=this.$static_string(parts),$truthy(source())?nil:(source=$truthy(options.$children()(“u”))?source.$encode($$$($$($nesting,“Encoding”),“UTF_8”)):$truthy(options.$children()(“e”))?source.$encode($$$($$($nesting,“Encoding”),“EUC_JP”)):$truthy(options.$children()(“s”))?source.$encode($$$($$($nesting,“Encoding”),“WINDOWS_31J”)):$truthy(options.$children()(“n”))?source.$encode($$$($$($nesting,“Encoding”),“BINARY”)):source,$$($nesting,“Regexp”).$new(source,$truthy(options.$children()(“x”))?$$$($$($nesting,“Regexp”),“EXTENDED”):nil))},$Default_static_regexp$154.$$arity=2),Opal.def(self,“$static_regexp_node”,$Default_static_regexp_node$155=function(node){var $a,parts=nil,options=nil;return node.$type()(“regexp”)?(parts=($a=[node.$children()[“$”]($range(0,-2,!1)),node.$children()[“$”](-1)]),options=$a,this.$static_regexp(parts,options)):nil},$Default_static_regexp_node$155.$$arity=1),Opal.def(self,“$collapse_string_parts?”,$Default_collapse_string_parts$ques$156=function(parts){var $a;return $truthy($a=parts())?[“str”,“dstr”](parts.$first().$type()):$a},$Default_collapse_string_parts$ques$156.$$arity=1),Opal.def(self,“$value”,$Default_value$157=function(token){return token[“$”](0)},$Default_value$157.$$arity=1),Opal.def(self,“$string_value”,$Default_string_value$158=function(token){return $truthy(token[“$”](0)())||this.$diagnostic(“error”,“invalid_encoding”,nil,token[“$”](1)),token[“$”](0)},$Default_string_value$158.$$arity=1),Opal.def(self,“$loc”,$Default_loc$159=function(token){var $a;return $truthy($truthy($a=token)?token[“$”](0):$a)?token[“$”](1):nil},$Default_loc$159.$$arity=1),Opal.def(self,“$diagnostic”,$Default_diagnostic$160=function(type,reason,arguments$,location,highlights){return null==highlights&&(highlights=[]),this.parser.$diagnostics().$process($$($nesting,“Diagnostic”).$new(type,reason,arguments$,location,highlights)),type(“error”)?this.parser.$send(“yyerror”):nil},$Default_diagnostic$160.$$arity=-5)}($$($nesting,“Builders”),0,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){Opal.top;var $nesting=[],nil=Opal.nil,$module=(Opal.const_get_qualified,Opal.const_get_relative,Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$truthy=Opal.truthy,$send=Opal.send;return “”>Opal.add_stubs(),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $Context_initialize$1,$Context_push$2,$Context_pop$3,$Context_reset$4,$Context_in_class$ques$5,$Context_indirectly_in_def$ques$6,$Context_class_definition_allowed$ques$7,self=$klass($base,null,“Context”);.concat($parent_nesting);self.$$prototype.stack=nil,self.$attr_reader(“stack”),Opal.def(self,“$initialize”,$Context_initialize$1=function(){return this.stack=[],this.$freeze()},$Context_initialize$1.$$arity=0),Opal.def(self,“$push”,$Context_push$2=function(state){return this.stack(state)},$Context_push$2.$$arity=1),Opal.def(self,“$pop”,$Context_pop$3=function(){return this.stack.$pop()},$Context_pop$3.$$arity=0),Opal.def(self,“$reset”,$Context_reset$4=function(){return this.stack.$clear()},$Context_reset$4.$$arity=0),Opal.def(self,“$in_class?”,$Context_in_class$ques$5=function(){return this.stack.$last()(“class”)},$Context_in_class$ques$5.$$arity=0),Opal.def(self,“$indirectly_in_def?”,$Context_indirectly_in_def$ques$6=function(){var $a;return $truthy($a=this.stack(“def”))?$a:this.stack(“defs”)},$Context_indirectly_in_def$ques$6.$$arity=0),Opal.def(self,“$class_definition_allowed?”,$Context_class_definition_allowed$ques$7=function(){var $$8,$a,$b,lhs,rhs,def_index=nil,sclass_index=nil;return def_index=$send(this.$stack(),“rindex”,[],(($$8=function(item){$$8.$$s;return null==item&&(item=nil),[“$include?”](item)}).$$s=this,$$8.$$arity=1,$$8)),sclass_index=this.$stack().$rindex(“sclass”),$truthy($a=def_index())?$a:$truthy($b=sclass_index()[“$!”]())?(rhs=def_index,“number”==typeof(lhs=sclass_index)&&“number”==typeof “”>rhs?rhs(rhs)):$b},$Context_class_definition_allowed$ques$7.$$arity=0),Opal.alias(self,“module_definition_allowed?”,“class_definition_allowed?”),Opal.alias(self,“dynamic_const_definition_allowed?”,“class_definition_allowed?”)}($nesting,0,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){function $rb_minus(lhs,rhs){return“number”==typeof lhs&&“number”==typeof rhs?lhs-rhs:lhs(rhs)}Opal.top;var $nesting=[],nil=Opal.nil,$$$=Opal.const_get_qualified,$$=Opal.const_get_relative,$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$send=Opal.send,$gvars=Opal.gvars,$truthy=Opal.truthy,$hash2=Opal.hash2;return Opal.add_stubs([“$default_parser”,“$setup_source_buffer”,“$default_encoding”,“$parse”,“$parse_with_comments”,“$read”,“$new”,“$all_errors_are_fatal=”,“$diagnostics”,“$-”,“$ignore_warnings=”,“$lambda”,“$puts”,“$render”,“$consumer=”,“$force_encoding”,“$dup”,“$==”,“$name”,“$raw_source=”,“$source=”,“$private_class_method”,“$attr_reader”,“$version”,“$diagnostics=”,“$static_env=”,“$parser=”,“$class”,“$”,“$reset”,“$source_buffer=”,“$do_parse”,“$comments=”,“$comments”,“$tokens=”,“$!”,“$raise”,“$tokens”,“$private”,“$advance”,“$===”,“$diagnostic”,“$map”,“$process”,“$yyerror”,“$token_to_str”]),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $Base_parse$1,$Base_parse_with_comments$2,$Base_parse_file$3,$Base_parse_file_with_comments$4,$Base_default_parser$5,$Base_setup_source_buffer$7,$Base_initialize$8,$Base_reset$9,$Base_parse$10,$Base_parse_with_comments$11,$Base_tokenize$12,$Base_next_token$13,$Base_check_kwarg_name$14,$Base_diagnostic$15,$Base_on_error$17,self=$klass($base,$super,“Base”),$nesting=.concat($parent_nesting);self.$$prototype.diagnostics=self.$$prototype.lexer=self.$$prototype.static_env=self.$$prototype.builder=self.$$prototype.context=nil,Opal.defs(self,“$parse”,$Base_parse$1=function(string,file,line){var source_buffer,parser=nil;return null==file&&(file=“(string)”),null==line&&(line=1),parser=this.$default_parser(),source_buffer=this.$setup_source_buffer(file,line,string,parser.$default_encoding()),parser.$parse(source_buffer)},$Base_parse$1.$$arity=-2),Opal.defs(self,“$parse_with_comments”,$Base_parse_with_comments$2=function(string,file,line){var source_buffer,parser=nil;return null==file&&(file=“(string)”),null==line&&(line=1),parser=this.$default_parser(),source_buffer=this.$setup_source_buffer(file,line,string,parser.$default_encoding()),parser.$parse_with_comments(source_buffer)},$Base_parse_with_comments$2.$$arity=-2),Opal.defs(self,“$parse_file”,$Base_parse_file$3=function(filename){return this.$parse($$($nesting,“File”).$read(filename),filename)},$Base_parse_file$3.$$arity=1),Opal.defs(self,“$parse_file_with_comments”,$Base_parse_file_with_comments$4=function(filename){return this.$parse_with_comments($$($nesting,“File”).$read(filename),filename)},$Base_parse_file_with_comments$4.$$arity=1),Opal.defs(self,“$default_parser”,$Base_default_parser$5=function(){var $$6,parser=nil,$writer=nil;return parser=this.$new(),$writer=,$send(parser.$diagnostics(),“all_errors_are_fatal=”,Opal.to_a($writer)),$writer,$writer=,$send(parser.$diagnostics(),“ignore_warnings=”,Opal.to_a($writer)),$writer,$writer=[$send(this,“lambda”,,($$6=function(diagnostic){$$6.$$s;return null==$gvars.stderr&&($gvars.stderr=nil),null==diagnostic&&(diagnostic=nil),$gvars.stderr.$puts(diagnostic.$render())},$$6.$$s=this,$$6.$$arity=1,$$6))],$send(parser.$diagnostics(),“consumer=”,Opal.to_a($writer)),$writer,parser},$Base_default_parser$5.$$arity=0),Opal.defs(self,“$setup_source_buffer”,$Base_setup_source_buffer$7=function(file,line,string,encoding){var source_buffer,$writer=nil;return string=string.$dup().$force_encoding(encoding),source_buffer=$$$($$($nesting,“Source”),“Buffer”).$new(file,line),this.$name()(“Parser::Ruby18”)?($writer=,$send(source_buffer,“raw_source=”,Opal.to_a($writer))):($writer=,$send(source_buffer,“source=”,Opal.to_a($writer))),$writer,source_buffer},$Base_setup_source_buffer$7.$$arity=4),self.$private_class_method(“setup_source_buffer”),self.$attr_reader(“diagnostics”),self.$attr_reader(“builder”),self.$attr_reader(“static_env”),self.$attr_reader(“source_buffer”),self.$attr_reader(“context”),Opal.def(self,“$initialize”,$Base_initialize$8=function(builder){var $a,$writer=nil;return null==builder&&(builder=$$$($$$($$($nesting,“Parser”),“Builders”),“Default”).$new()),this.diagnostics=$$$($$($nesting,“Diagnostic”),“Engine”).$new(),this.static_env=$$($nesting,“StaticEnvironment”).$new(),this.lexer=$$($nesting,“Lexer”).$new(this.$version()),$writer=,$send(this.lexer,“diagnostics=”,Opal.to_a($writer)),$writer,$writer=,$send(this.lexer,“static_env=”,Opal.to_a($writer)),$writer,this.builder=builder,$writer=,$send(this.builder,“parser=”,Opal.to_a($writer)),$writer,this.context=$$($nesting,“Context”).$new(),this.last_token=nil,$truthy($truthy($a=$$$(this.$class(),“Racc_debug_parser”))?$$($nesting,“ENV”)[“$”](“RACC_DEBUG”):$a)&&(this.yydebug=!0),this.$reset()},$Base_initialize$8.$$arity=-1),Opal.def(self,“$reset”,$Base_reset$9=function(){return this.source_buffer=nil,this.lexer.$reset(),this.static_env.$reset(),this.context.$reset(),this},$Base_reset$9.$$arity=0),Opal.def(self,“$parse”,$Base_parse$10=function(source_buffer){var self=this,$writer=nil;return function(){try{return $writer=,$send(self.lexer,“source_buffer=”,Opal.to_a($writer)),$writer,self.source_buffer=source_buffer,self.$do_parse()}finally{self.source_buffer=nil,$writer=,$send(self.lexer,“source_buffer=”,Opal.to_a($writer)),$writer}}()},$Base_parse$10.$$arity=1),Opal.def(self,“$parse_with_comments”,$Base_parse_with_comments$11=function(source_buffer){var self=this,$writer=nil;return function(){try{return $writer=[],$send(self.lexer,“comments=”,Opal.to_a($writer)),$writer,[self.$parse(source_buffer),self.lexer.$comments()]}finally{$writer=,$send(self.lexer,“comments=”,Opal.to_a($writer)),$writer}}()},$Base_parse_with_comments$11.$$arity=1),Opal.def(self,“$tokenize”,$Base_tokenize$12=function(source_buffer,recover){var self=this,$writer=nil,ast=nil;return null==recover&&(recover=!1),function(){try{$writer=[],$send(self.lexer,“tokens=”,Opal.to_a($writer)),$writer,$writer=[],$send(self.lexer,“comments=”,Opal.to_a($writer)),$writer;try{ast=self.$parse(source_buffer)}catch($err){if(!Opal.rescue($err,))throw $err;try{$truthy(recover())&&self.$raise()}finally{Opal.pop_exception()}}return}finally{$writer=,$send(self.lexer,“tokens=”,Opal.to_a($writer)),$writer,$writer=,$send(self.lexer,“comments=”,Opal.to_a($writer)),$writer}}()},$Base_tokenize$12.$$arity=-2),self.$private(),Opal.def(self,“$next_token”,$Base_next_token$13=function(){var token;return token=this.lexer.$advance(),this.last_token=token},$Base_next_token$13.$$arity=0),Opal.def(self,“$check_kwarg_name”,$Base_check_kwarg_name$14=function(name_t){var self=this,$case=nil;return $case=name_t[“$”](0),/^/[“$===”]($case)?nil:/^/[“$===”]($case)?self.$diagnostic(“error”,“argument_const”,nil,name_t):nil},$Base_check_kwarg_name$14.$$arity=1),Opal.def(self,“$diagnostic”,$Base_diagnostic$15=function(level,reason,arguments$,location_t,highlights_ts){var $a,$b,$$16,location,highlights;return null==highlights_ts&&(highlights_ts=[]),$b=location_t,$a=Opal.to_ary($b),null==$a?nil:$a,location=null==$a?nil:$a,highlights=$send(highlights_ts,“map”,[],(($$16=function(token){var $c,$d;$$16.$$s;return null==token&&(token=nil),$d=token,$c=Opal.to_ary($d),null==$c?nil:$c,null==$c?nil:$c}).$$s=this,$$16.$$arity=1,$$16)),this.diagnostics.$process($$($nesting,“Diagnostic”).$new(level,reason,arguments$,location,highlights)),level(“error”)?this.$yyerror():nil},$Base_diagnostic$15.$$arity=-5),Opal.def(self,“$on_error”,$Base_on_error$17=function(error_token_id,error_value,value_stack){var $a,$b,token_name,location;return token_name=this.$token_to_str(error_token_id),$b=error_value,null==($a=Opal.to_ary($b))?nil:$a,location=null==$a?nil:$a,this.diagnostics.$process($$($nesting,“Diagnostic”).$new(“error”,“unexpected_token”,$hash2(,{token:token_name}),location))},$Base_on_error$17.$$arity=3)}($nesting,$$$($$($nesting,“Racc”),“Parser”),$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){Opal.top;var $nesting=[],nil=Opal.nil,$$$=Opal.const_get_qualified,$$=Opal.const_get_relative,$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$send=Opal.send;return Opal.add_stubs(),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $Rewriter_rewrite$1,$Rewriter_assignment$ques$2,$Rewriter_remove$3,$Rewriter_wrap$4,$Rewriter_insert_before$5,$Rewriter_insert_after$6,$Rewriter_replace$7,$Rewriter_initialize$8,self=$klass($base,$super,“Rewriter”),$nesting=.concat($parent_nesting);self.$$prototype.source_rewriter=nil,Opal.def(self,“$rewrite”,$Rewriter_rewrite$1=function(source_buffer,ast){return this.source_rewriter=$$$($$($nesting,“Source”),“Rewriter”).$new(source_buffer),this.$process(ast),this.source_rewriter.$process()},$Rewriter_rewrite$1.$$arity=2),Opal.def(self,“$assignment?”,$Rewriter_assignment$ques$2=function(node){return[“$include?”](node.$type())},$Rewriter_assignment$ques$2.$$arity=1),Opal.def(self,“$remove”,$Rewriter_remove$3=function(range){return this.source_rewriter.$remove(range)},$Rewriter_remove$3.$$arity=1),Opal.def(self,“$wrap”,$Rewriter_wrap$4=function(range,before,after){return this.source_rewriter.$wrap(range,before,after)},$Rewriter_wrap$4.$$arity=3),Opal.def(self,“$insert_before”,$Rewriter_insert_before$5=function(range,content){return this.source_rewriter.$insert_before(range,content)},$Rewriter_insert_before$5.$$arity=2),Opal.def(self,“$insert_after”,$Rewriter_insert_after$6=function(range,content){return this.source_rewriter.$insert_after(range,content)},$Rewriter_insert_after$6.$$arity=2),Opal.def(self,“$replace”,$Rewriter_replace$7=function(range,content){return this.source_rewriter.$replace(range,content)},$Rewriter_replace$7.$$arity=2),Opal.const_set($nesting,“DEPRECATION_WARNING”,[“Parser::Rewriter is deprecated.”,“Please update your code to use Parser::TreeRewriter instead”].$join(“n”).$freeze()),self.$extend($$($nesting,“Deprecation”)),Opal.def(self,“$initialize”,$Rewriter_initialize$8=function($a){var $writer,$zuper_ii,lhs,rhs,$iter=$Rewriter_initialize$8.$$p,$zuper=nil,$zuper_i=nil;for($iter&&($Rewriter_initialize$8.$$p=null),$zuper_i=0,$zuper_ii=arguments.length,$zuper=new Array($zuper_ii);$zuper_i<$zuper_ii;$zuper_i++)$zuper=arguments;return Opal.slice.call(arguments,0,arguments.length),this.$class().$warn_of_deprecation(),$writer=,$send($$$($$($nesting,“Source”),“Rewriter”),“warned_of_deprecation=”,Opal.to_a($writer)),rhs=1,“number”==typeof(lhs=$writer.length)&&“number”==typeof rhs||lhs(rhs),$send(this,Opal.find_super_dispatcher(this,“initialize”,$Rewriter_initialize$8,!1),$zuper,$iter)},$Rewriter_initialize$8.$$arity=-1)}($nesting,$$$($$$($$($nesting,“Parser”),“AST”),“Processor”),$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){Opal.top;var $nesting=[],nil=Opal.nil,$$$=Opal.const_get_qualified,$$=Opal.const_get_relative,$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$hash2=Opal.hash2;Opal.hash;return Opal.add_stubs(),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $TreeRewriter_rewrite$1,$TreeRewriter_assignment$ques$2,$TreeRewriter_remove$3,$TreeRewriter_wrap$4,$TreeRewriter_insert_before$5,$TreeRewriter_insert_after$6,$TreeRewriter_replace$7,self=$klass($base,$super,“TreeRewriter”),$nesting=.concat($parent_nesting);self.$$prototype.source_rewriter=nil,Opal.def(self,“$rewrite”,$TreeRewriter_rewrite$1=function(source_buffer,ast,$kwargs){var policy;if(null==$kwargs)$kwargs=$hash2([],{});else if(!$kwargs.$$is_hash)throw Opal.ArgumentError.$new(“expected kwargs”);return policy=Opal.kwrestargs($kwargs,{}),this.source_rewriter=$$$($$$($$($nesting,“Parser”),“Source”),“TreeRewriter”).$new(source_buffer,Opal.to_hash(policy)),this.$process(ast),this.source_rewriter.$process()},$TreeRewriter_rewrite$1.$$arity=-3),Opal.def(self,“$assignment?”,$TreeRewriter_assignment$ques$2=function(node){return[“$include?”](node.$type())},$TreeRewriter_assignment$ques$2.$$arity=1),Opal.def(self,“$remove”,$TreeRewriter_remove$3=function(range){return this.source_rewriter.$remove(range)},$TreeRewriter_remove$3.$$arity=1),Opal.def(self,“$wrap”,$TreeRewriter_wrap$4=function(range,before,after){return this.source_rewriter.$wrap(range,before,after)},$TreeRewriter_wrap$4.$$arity=3),Opal.def(self,“$insert_before”,$TreeRewriter_insert_before$5=function(range,content){return this.source_rewriter.$insert_before(range,content)},$TreeRewriter_insert_before$5.$$arity=2),Opal.def(self,“$insert_after”,$TreeRewriter_insert_after$6=function(range,content){return this.source_rewriter.$insert_after(range,content)},$TreeRewriter_insert_after$6.$$arity=2),Opal.def(self,“$replace”,$TreeRewriter_replace$7=function(range,content){return this.source_rewriter.$replace(range,content)},$TreeRewriter_replace$7.$$arity=2)}($nesting,$$$($$$($$($nesting,“Parser”),“AST”),“Processor”),$nesting)}($nesting,$nesting)},Opal.modules.parser=function(Opal){var self=Opal.top,$nesting=[],$$$=(Opal.nil,Opal.const_get_qualified),$$=Opal.const_get_relative,$truthy=(Opal.breaker,Opal.slice,Opal.truthy),$module=Opal.module;return Opal.add_stubs(),$truthy($$($nesting,“RUBY_VERSION”)(/^1../))&&(self.$require(“parser/version”),self.$raise($$($nesting,“LoadError”),“parser v”+$$$($$($nesting,“Parser”),“VERSION”)+“ cannot run on Ruby ”+$$($nesting,“RUBY_VERSION”)+“.nPlease upgrade to Ruby 2.0.0 or higher, or use an older version of the parser gem.n”)),self.$require(“set”),self.$require(“racc/parser”),self.$require(“ast”),function($base,$parent_nesting){var self=$module($base,“Parser”),$nesting=.concat($parent_nesting);self.$require(“parser/version”),self.$require(“parser/messages”),self.$require(“parser/deprecation”),function($base,$parent_nesting){var self=$module($base,“AST”);.concat($parent_nesting);self.$require(“parser/ast/node”),self.$require(“parser/ast/processor”),self.$require(“parser/meta”)}($nesting,$nesting),function($base,$parent_nesting){var self=$module($base,“Source”);.concat($parent_nesting);self.$require(“parser/source/buffer”),self.$require(“parser/source/range”),self.$require(“parser/source/comment”),self.$require(“parser/source/comment/associator”),self.$require(“parser/source/rewriter”),self.$require(“parser/source/rewriter/action”),self.$require(“parser/source/tree_rewriter”),self.$require(“parser/source/tree_rewriter/action”),self.$require(“parser/source/map”),self.$require(“parser/source/map/operator”),self.$require(“parser/source/map/collection”),self.$require(“parser/source/map/constant”),self.$require(“parser/source/map/variable”),self.$require(“parser/source/map/keyword”),self.$require(“parser/source/map/definition”),self.$require(“parser/source/map/send”),self.$require(“parser/source/map/index”),self.$require(“parser/source/map/condition”),self.$require(“parser/source/map/ternary”),self.$require(“parser/source/map/for”),self.$require(“parser/source/map/rescue_body”),self.$require(“parser/source/map/heredoc”),self.$require(“parser/source/map/objc_kwarg”)}($nesting,$nesting),self.$require(“parser/syntax_error”),self.$require(“parser/clobbering_error”),self.$require(“parser/diagnostic”),self.$require(“parser/diagnostic/engine”),self.$require(“parser/static_environment”),self.$require(“parser/lexer”),self.$require(“parser/lexer/literal”),self.$require(“parser/lexer/stack_state”),self.$require(“parser/lexer/dedenter”),function($base,$parent_nesting){var self=$module($base,“Builders”);.concat($parent_nesting);self.$require(“parser/builders/default”)}($nesting,$nesting),self.$require(“parser/context”),self.$require(“parser/base”),self.$require(“parser/rewriter”),self.$require(“parser/tree_rewriter”)}($nesting,$nesting)},Opal.modules=function(Opal){function $rb_minus(lhs,rhs){return“number”==typeof lhs&&“number”==typeof rhs?lhs-rhs:lhs(rhs)}function $rb_plus(lhs,rhs){return“number”==typeof lhs&&“number”==typeof rhs?lhs+rhs:lhs(rhs)}var self=Opal.top,$nesting=[],nil=Opal.nil,$$$=Opal.const_get_qualified,$$=Opal.const_get_relative,$slice=(Opal.breaker,Opal.slice),$module=Opal.module,$klass=Opal.klass,$send=Opal.send,$truthy=Opal.truthy,$hash=Opal.hash;return Opal.add_stubs([“$require”,“$new”,“$each”,“$split”,“$empty?”,“$to_i”,“$=”,“$-”,“$+”,“$compstmt”,“$),self.$require(”racc/parser.rb“),self.$require(”parser“),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $Ruby25_version$1,$Ruby25_default_encoding$2,$Ruby25$3,$Ruby25$5,$Ruby25$7,$Ruby25$9,$Ruby25__reduce_2$11,$Ruby25__reduce_3$12,$Ruby25__reduce_4$13,$Ruby25__reduce_5$14,$Ruby25__reduce_6$15,$Ruby25__reduce_8$16,$Ruby25__reduce_9$17,$Ruby25__reduce_10$18,$Ruby25__reduce_11$19,$Ruby25__reduce_12$20,$Ruby25__reduce_13$21,$Ruby25__reduce_14$22,$Ruby25__reduce_15$23,$Ruby25__reduce_17$24,$Ruby25__reduce_18$25,$Ruby25__reduce_19$26,$Ruby25__reduce_20$27,$Ruby25__reduce_21$28,$Ruby25__reduce_22$29,$Ruby25__reduce_23$30,$Ruby25__reduce_24$31,$Ruby25__reduce_25$32,$Ruby25__reduce_26$33,$Ruby25__reduce_27$34,$Ruby25__reduce_28$35,$Ruby25__reduce_29$36,$Ruby25__reduce_31$37,$Ruby25__reduce_32$38,$Ruby25__reduce_33$39,$Ruby25__reduce_35$40,$Ruby25__reduce_36$41,$Ruby25__reduce_37$42,$Ruby25__reduce_38$43,$Ruby25__reduce_39$44,$Ruby25__reduce_40$45,$Ruby25__reduce_41$46,$Ruby25__reduce_42$47,$Ruby25__reduce_44$48,$Ruby25__reduce_47$49,$Ruby25__reduce_48$50,$Ruby25__reduce_49$51,$Ruby25__reduce_50$52,$Ruby25__reduce_53$53,$Ruby25__reduce_54$54,$Ruby25__reduce_58$55,$Ruby25__reduce_59$56,$Ruby25__reduce_60$57,$Ruby25__reduce_62$58,$Ruby25__reduce_63$59,$Ruby25__reduce_64$60,$Ruby25__reduce_65$61,$Ruby25__reduce_66$62,$Ruby25__reduce_67$63,$Ruby25__reduce_68$64,$Ruby25__reduce_69$65,$Ruby25__reduce_70$66,$Ruby25__reduce_71$67,$Ruby25__reduce_72$68,$Ruby25__reduce_73$69,$Ruby25__reduce_74$70,$Ruby25__reduce_75$71,$Ruby25__reduce_76$72,$Ruby25__reduce_78$73,$Ruby25__reduce_79$74,$Ruby25__reduce_80$75,$Ruby25__reduce_81$76,$Ruby25__reduce_82$77,$Ruby25__reduce_83$78,$Ruby25__reduce_84$79,$Ruby25__reduce_85$80,$Ruby25__reduce_86$81,$Ruby25__reduce_88$82,$Ruby25__reduce_89$83,$Ruby25__reduce_90$84,$Ruby25__reduce_91$85,$Ruby25__reduce_92$86,$Ruby25__reduce_93$87,$Ruby25__reduce_94$88,$Ruby25__reduce_95$89,$Ruby25__reduce_96$90,$Ruby25__reduce_97$91,$Ruby25__reduce_98$92,$Ruby25__reduce_99$93,$Ruby25__reduce_100$94,$Ruby25__reduce_101$95,$Ruby25__reduce_102$96,$Ruby25__reduce_103$97,$Ruby25__reduce_104$98,$Ruby25__reduce_105$99,$Ruby25__reduce_106$100,$Ruby25__reduce_107$101,$Ruby25__reduce_108$102,$Ruby25__reduce_109$103,$Ruby25__reduce_110$104,$Ruby25__reduce_111$105,$Ruby25__reduce_113$106,$Ruby25__reduce_114$107,$Ruby25__reduce_115$108,$Ruby25__reduce_121$109,$Ruby25__reduce_125$110,$Ruby25__reduce_126$111,$Ruby25__reduce_127$112,$Ruby25__reduce_199$113,$Ruby25__reduce_200$114,$Ruby25__reduce_201$115,$Ruby25__reduce_202$116,$Ruby25__reduce_203$117,$Ruby25__reduce_204$118,$Ruby25__reduce_205$119,$Ruby25__reduce_206$120,$Ruby25__reduce_207$121,$Ruby25__reduce_208$122,$Ruby25__reduce_209$123,$Ruby25__reduce_210$124,$Ruby25__reduce_211$125,$Ruby25__reduce_212$126,$Ruby25__reduce_213$127,$Ruby25__reduce_214$128,$Ruby25__reduce_215$129,$Ruby25__reduce_216$130,$Ruby25__reduce_217$131,$Ruby25__reduce_218$132,$Ruby25__reduce_219$133,$Ruby25__reduce_220$134,$Ruby25__reduce_221$135,$Ruby25__reduce_222$136,$Ruby25__reduce_224$137,$Ruby25__reduce_225$138,$Ruby25__reduce_226$139,$Ruby25__reduce_227$140,$Ruby25__reduce_228$141,$Ruby25__reduce_229$142,$Ruby25__reduce_230$143,$Ruby25__reduce_231$144,$Ruby25__reduce_232$145,$Ruby25__reduce_233$146,$Ruby25__reduce_234$147,$Ruby25__reduce_235$148,$Ruby25__reduce_236$149,$Ruby25__reduce_242$150,$Ruby25__reduce_243$151,$Ruby25__reduce_247$152,$Ruby25__reduce_248$153,$Ruby25__reduce_250$154,$Ruby25__reduce_251$155,$Ruby25__reduce_252$156,$Ruby25__reduce_254$157,$Ruby25__reduce_257$158,$Ruby25__reduce_258$159,$Ruby25__reduce_259$160,$Ruby25__reduce_260$161,$Ruby25__reduce_261$162,$Ruby25__reduce_262$163,$Ruby25__reduce_263$164,$Ruby25__reduce_264$165,$Ruby25__reduce_265$166,$Ruby25__reduce_266$167,$Ruby25__reduce_267$168,$Ruby25__reduce_268$169,$Ruby25__reduce_269$170,$Ruby25__reduce_270$171,$Ruby25__reduce_271$172,$Ruby25__reduce_272$173,$Ruby25__reduce_273$174,$Ruby25__reduce_275$175,$Ruby25__reduce_276$176,$Ruby25__reduce_277$177,$Ruby25__reduce_288$178,$Ruby25__reduce_289$179,$Ruby25__reduce_290$180,$Ruby25__reduce_291$181,$Ruby25__reduce_292$182,$Ruby25__reduce_293$183,$Ruby25__reduce_294$184,$Ruby25__reduce_295$185,$Ruby25__reduce_296$186,$Ruby25__reduce_297$187,$Ruby25__reduce_298$188,$Ruby25__reduce_299$189,$Ruby25__reduce_300$190,$Ruby25__reduce_301$191,$Ruby25__reduce_302$192,$Ruby25__reduce_303$193,$Ruby25__reduce_304$194,$Ruby25__reduce_305$195,$Ruby25__reduce_306$196,$Ruby25__reduce_307$197,$Ruby25__reduce_309$198,$Ruby25__reduce_310$199,$Ruby25__reduce_311$200,$Ruby25__reduce_312$201,$Ruby25__reduce_313$202,$Ruby25__reduce_314$203,$Ruby25__reduce_315$204,$Ruby25__reduce_316$205,$Ruby25__reduce_317$206,$Ruby25__reduce_318$207,$Ruby25__reduce_319$208,$Ruby25__reduce_320$209,$Ruby25__reduce_321$210,$Ruby25__reduce_322$211,$Ruby25__reduce_323$212,$Ruby25__reduce_324$213,$Ruby25__reduce_325$214,$Ruby25__reduce_326$215,$Ruby25__reduce_327$216,$Ruby25__reduce_328$217,$Ruby25__reduce_329$218,$Ruby25__reduce_330$219,$Ruby25__reduce_331$220,$Ruby25__reduce_332$221,$Ruby25__reduce_334$222,$Ruby25__reduce_337$223,$Ruby25__reduce_341$224,$Ruby25__reduce_343$225,$Ruby25__reduce_346$226,$Ruby25__reduce_347$227,$Ruby25__reduce_348$228,$Ruby25__reduce_349$229,$Ruby25__reduce_351$230,$Ruby25__reduce_352$231,$Ruby25__reduce_353$232,$Ruby25__reduce_354$233,$Ruby25__reduce_355$234,$Ruby25__reduce_356$235,$Ruby25__reduce_357$236,$Ruby25__reduce_358$237,$Ruby25__reduce_359$238,$Ruby25__reduce_360$239,$Ruby25__reduce_361$240,$Ruby25__reduce_362$241,$Ruby25__reduce_363$242,$Ruby25__reduce_364$243,$Ruby25__reduce_365$244,$Ruby25__reduce_366$245,$Ruby25__reduce_367$246,$Ruby25__reduce_368$247,$Ruby25__reduce_369$248,$Ruby25__reduce_371$249,$Ruby25__reduce_372$250,$Ruby25__reduce_373$251,$Ruby25__reduce_374$252,$Ruby25__reduce_375$253,$Ruby25__reduce_376$254,$Ruby25__reduce_377$255,$Ruby25__reduce_378$256,$Ruby25__reduce_380$257,$Ruby25__reduce_381$258,$Ruby25__reduce_382$259,$Ruby25__reduce_383$260,$Ruby25__reduce_384$261,$Ruby25__reduce_385$262,$Ruby25__reduce_386$263,$Ruby25__reduce_387$264,$Ruby25__reduce_388$265,$Ruby25__reduce_389$266,$Ruby25__reduce_391$267,$Ruby25__reduce_392$268,$Ruby25__reduce_393$269,$Ruby25__reduce_394$270,$Ruby25__reduce_395$271,$Ruby25__reduce_396$272,$Ruby25__reduce_397$273,$Ruby25__reduce_398$274,$Ruby25__reduce_399$275,$Ruby25__reduce_400$276,$Ruby25__reduce_401$277,$Ruby25__reduce_402$278,$Ruby25__reduce_403$279,$Ruby25__reduce_404$280,$Ruby25__reduce_405$281,$Ruby25__reduce_406$282,$Ruby25__reduce_407$283,$Ruby25__reduce_408$284,$Ruby25__reduce_409$285,$Ruby25__reduce_410$286,$Ruby25__reduce_411$287,$Ruby25__reduce_412$288,$Ruby25__reduce_413$289,$Ruby25__reduce_414$290,$Ruby25__reduce_415$291,$Ruby25__reduce_416$292,$Ruby25__reduce_417$293,$Ruby25__reduce_418$294,$Ruby25__reduce_419$295,$Ruby25__reduce_420$296,$Ruby25__reduce_421$297,$Ruby25__reduce_422$298,$Ruby25__reduce_423$299,$Ruby25__reduce_424$300,$Ruby25__reduce_425$301,$Ruby25__reduce_427$302,$Ruby25__reduce_428$303,$Ruby25__reduce_429$304,$Ruby25__reduce_432$305,$Ruby25__reduce_434$306,$Ruby25__reduce_439$307,$Ruby25__reduce_440$308,$Ruby25__reduce_441$309,$Ruby25__reduce_442$310,$Ruby25__reduce_443$311,$Ruby25__reduce_444$312,$Ruby25__reduce_445$313,$Ruby25__reduce_446$314,$Ruby25__reduce_447$315,$Ruby25__reduce_448$316,$Ruby25__reduce_449$317,$Ruby25__reduce_450$318,$Ruby25__reduce_451$319,$Ruby25__reduce_452$320,$Ruby25__reduce_453$321,$Ruby25__reduce_454$322,$Ruby25__reduce_455$323,$Ruby25__reduce_456$324,$Ruby25__reduce_457$325,$Ruby25__reduce_458$326,$Ruby25__reduce_459$327,$Ruby25__reduce_460$328,$Ruby25__reduce_461$329,$Ruby25__reduce_462$330,$Ruby25__reduce_463$331,$Ruby25__reduce_464$332,$Ruby25__reduce_465$333,$Ruby25__reduce_466$334,$Ruby25__reduce_467$335,$Ruby25__reduce_468$336,$Ruby25__reduce_469$337,$Ruby25__reduce_470$338,$Ruby25__reduce_471$339,$Ruby25__reduce_472$340,$Ruby25__reduce_473$341,$Ruby25__reduce_475$342,$Ruby25__reduce_476$343,$Ruby25__reduce_477$344,$Ruby25__reduce_478$345,$Ruby25__reduce_479$346,$Ruby25__reduce_480$347,$Ruby25__reduce_481$348,$Ruby25__reduce_482$349,$Ruby25__reduce_483$350,$Ruby25__reduce_484$351,$Ruby25__reduce_485$352,$Ruby25__reduce_486$353,$Ruby25__reduce_487$354,$Ruby25__reduce_488$355,$Ruby25__reduce_489$356,$Ruby25__reduce_490$357,$Ruby25__reduce_491$358,$Ruby25__reduce_492$359,$Ruby25__reduce_493$360,$Ruby25__reduce_494$361,$Ruby25__reduce_495$362,$Ruby25__reduce_496$363,$Ruby25__reduce_497$364,$Ruby25__reduce_498$365,$Ruby25__reduce_499$366,$Ruby25__reduce_500$367,$Ruby25__reduce_501$368,$Ruby25__reduce_502$369,$Ruby25__reduce_503$370,$Ruby25__reduce_504$371,$Ruby25__reduce_505$372,$Ruby25__reduce_506$373,$Ruby25__reduce_507$374,$Ruby25__reduce_508$375,$Ruby25__reduce_509$376,$Ruby25__reduce_510$377,$Ruby25__reduce_511$378,$Ruby25__reduce_512$379,$Ruby25__reduce_513$380,$Ruby25__reduce_514$381,$Ruby25__reduce_515$382,$Ruby25__reduce_516$383,$Ruby25__reduce_517$384,$Ruby25__reduce_518$385,$Ruby25__reduce_519$386,$Ruby25__reduce_520$387,$Ruby25__reduce_521$388,$Ruby25__reduce_522$389,$Ruby25__reduce_523$390,$Ruby25__reduce_524$391,$Ruby25__reduce_525$392,$Ruby25__reduce_526$393,$Ruby25__reduce_527$394,$Ruby25__reduce_528$395,$Ruby25__reduce_529$396,$Ruby25__reduce_530$397,$Ruby25__reduce_531$398,$Ruby25__reduce_533$399,$Ruby25__reduce_534$400,$Ruby25__reduce_535$401,$Ruby25__reduce_536$402,$Ruby25__reduce_537$403,$Ruby25__reduce_538$404,$Ruby25__reduce_539$405,$Ruby25__reduce_540$406,$Ruby25__reduce_541$407,$Ruby25__reduce_542$408,$Ruby25__reduce_543$409,$Ruby25__reduce_544$410,$Ruby25__reduce_545$411,$Ruby25__reduce_546$412,$Ruby25__reduce_547$413,$Ruby25__reduce_550$414,$Ruby25__reduce_551$415,$Ruby25__reduce_552$416,$Ruby25__reduce_553$417,$Ruby25__reduce_554$418,$Ruby25__reduce_555$419,$Ruby25__reduce_556$420,$Ruby25__reduce_557$421,$Ruby25__reduce_560$422,$Ruby25__reduce_561$423,$Ruby25__reduce_564$424,$Ruby25__reduce_565$425,$Ruby25__reduce_566$426,$Ruby25__reduce_568$427,$Ruby25__reduce_569$428,$Ruby25__reduce_571$429,$Ruby25__reduce_572$430,$Ruby25__reduce_573$431,$Ruby25__reduce_574$432,$Ruby25__reduce_575$433,$Ruby25__reduce_576$434,$Ruby25__reduce_589$435,$Ruby25__reduce_590$436,$Ruby25__reduce_595$437,$Ruby25__reduce_596$438,$Ruby25__reduce_600$439,$Ruby25__reduce_604$440,$Ruby25__reduce_none$441,racc_action_table,racc_action_check,racc_action_pointer,racc_action_default,racc_goto_table,racc_goto_check,racc_goto_pointer,racc_goto_default,racc_reduce_table,racc_token_table,self=$klass($base,$super,”Ruby25“),$nesting=.concat($parent_nesting),clist=nil,arr=nil,idx=nil;self.$$prototype.builder=self.$$prototype.lexer=self.$$prototype.context=self.$$prototype.last_token=self.$$prototype.static_env=nil,Opal.def(self,”$version“,$Ruby25_version$1=function(){return 25},$Ruby25_version$1.$$arity=0),Opal.def(self,”$default_encoding“,$Ruby25_default_encoding$2=function(){return $$$($$($nesting,”Encoding“),”UTF_8“)},$Ruby25_default_encoding$2.$$arity=0),clist=,racc_action_table=arr=$$$(”::“,”Array“).$new(24698,nil),idx=0,$send(clist,”each“,[],(($Ruby25$3=function(str){var $$4,self=$Ruby25$3.$$s||this;return null==str&&(str=nil),$send(str.$split(”,“,-1),”each“,[],(($$4=function(i){$$4.$$s;var $writer=nil;return null==i&&(i=nil),$truthy(i())||($writer=,$send(arr,”[]=“,Opal.to_a($writer)),$writer),idx=$rb_plus(idx,1)}).$$s=self,$$4.$$arity=1,$$4))}).$$s=self,$Ruby25$3.$$arity=1,$Ruby25$3)),clist=,racc_action_check=arr=$$$(”::“,”Array“).$new(24698,nil),idx=0,$send(clist,”each“,[],(($Ruby25$5=function(str){var $$6,self=$Ruby25$5.$$s||this;return null==str&&(str=nil),$send(str.$split(”,“,-1),”each“,[],(($$6=function(i){$$6.$$s;var $writer=nil;return null==i&&(i=nil),$truthy(i())||($writer=,$send(arr,”[]=“,Opal.to_a($writer)),$writer),idx=$rb_plus(idx,1)}).$$s=self,$$6.$$arity=1,$$6))}).$$s=self,$Ruby25$5.$$arity=1,$Ruby25$5)),racc_action_pointer=,racc_action_default=,clist=,racc_goto_table=arr=$$$(”::“,”Array“).$new(3624,nil),idx=0,$send(clist,”each“,[],(($Ruby25$7=function(str){var $$8,self=$Ruby25$7.$$s||this;return null==str&&(str=nil),$send(str.$split(”,“,-1),”each“,[],(($$8=function(i){$$8.$$s;var $writer=nil;return null==i&&(i=nil),$truthy(i())||($writer=,$send(arr,”[]=“,Opal.to_a($writer)),$writer),idx=$rb_plus(idx,1)}).$$s=self,$$8.$$arity=1,$$8))}).$$s=self,$Ruby25$7.$$arity=1,$Ruby25$7)),clist=,racc_goto_check=arr=$$$(”::“,”Array“).$new(3624,nil),idx=0,$send(clist,”each“,[],(($Ruby25$9=function(str){var $$10,self=$Ruby25$9.$$s||this;return null==str&&(str=nil),$send(str.$split(”,“,-1),”each“,[],(($$10=function(i){$$10.$$s;var $writer=nil;return null==i&&(i=nil),$truthy(i())||($writer=,$send(arr,”[]=“,Opal.to_a($writer)),$writer),idx=$rb_plus(idx,1)}).$$s=self,$$10.$$arity=1,$$10))}).$$s=self,$Ruby25$9.$$arity=1,$Ruby25$9)),racc_goto_pointer=,racc_goto_default=,racc_reduce_table=,605,racc_token_table=$hash(!1032,0,”error“,1,”kCLASS“,2,”kMODULE“,3,”kDEF“,4,”kUNDEF“,5,”kBEGIN“,6,”kRESCUE“,7,”kENSURE“,8,”kEND“,9,”kIF“,10,”kUNLESS“,11,”kTHEN“,12,”kELSIF“,13,”kELSE“,14,”kCASE“,15,”kWHEN“,16,”kWHILE“,17,”kUNTIL“,18,”kFOR“,19,”kBREAK“,20,”kNEXT“,21,”kREDO“,22,”kRETRY“,23,”kIN“,24,”kDO“,25,”kDO_COND“,26,”kDO_BLOCK“,27,”kDO_LAMBDA“,28,”kRETURN“,29,”kYIELD“,30,”kSUPER“,31,”kSELF“,32,”kNIL“,33,”kTRUE“,34,”kFALSE“,35,”kAND“,36,”kOR“,37,”kNOT“,38,”kIF_MOD“,39,”kUNLESS_MOD“,40,”kWHILE_MOD“,41,”kUNTIL_MOD“,42,”kRESCUE_MOD“,43,”kALIAS“,44,”kDEFINED“,45,”klBEGIN“,46,”klEND“,47,”k__LINE__“,48,”k__FILE__“,49,”k__ENCODING__“,50,”tIDENTIFIER“,51,”tFID“,52,”tGVAR“,53,”tIVAR“,54,”tCONSTANT“,55,”tLABEL“,56,”tCVAR“,57,”tNTH_REF“,58,”tBACK_REF“,59,”tSTRING_CONTENT“,60,”tINTEGER“,61,”tFLOAT“,62,”tUPLUS“,63,”tUMINUS“,64,”tUNARY_NUM“,65,”tPOW“,66,”tCMP“,67,”tEQ“,68,”tEQQ“,69,”tNEQ“,70,”tGEQ“,71,”tLEQ“,72,”tANDOP“,73,”tOROP“,74,”tMATCH“,75,”tNMATCH“,76,”tDOT“,77,”tDOT2“,78,”tDOT3“,79,”tAREF“,80,”tASET“,81,”tLSHFT“,82,”tRSHFT“,83,”tCOLON2“,84,”tCOLON3“,85,”tOP_ASGN“,86,”tASSOC“,87,”tLPAREN“,88,”tLPAREN2“,89,”tRPAREN“,90,”tLPAREN_ARG“,91,”tLBRACK“,92,”tLBRACK2“,93,”tRBRACK“,94,”tLBRACE“,95,”tLBRACE_ARG“,96,”tSTAR“,97,”tSTAR2“,98,”tAMPER“,99,”tAMPER2“,100,”tTILDE“,101,”tPERCENT“,102,”tDIVIDE“,103,”tDSTAR“,104,”tPLUS“,105,”tMINUS“,106,”tLT“,107,”tGT“,108,”tPIPE“,109,”tBANG“,110,”tCARET“,111,”tLCURLY“,112,”tRCURLY“,113,”tBACK_REF2“,114,”tSYMBEG“,115,”tSTRING_BEG“,116,”tXSTRING_BEG“,117,”tREGEXP_BEG“,118,”tREGEXP_OPT“,119,”tWORDS_BEG“,120,”tQWORDS_BEG“,121,”tSYMBOLS_BEG“,122,”tQSYMBOLS_BEG“,123,”tSTRING_DBEG“,124,”tSTRING_DVAR“,125,”tSTRING_END“,126,”tSTRING_DEND“,127,”tSTRING“,128,”tSYMBOL“,129,”tNL“,130,”tEH“,131,”tCOLON“,132,”tCOMMA“,133,”tSPACE“,134,”tSEMI“,135,”tLAMBDA“,136,”tLAMBEG“,137,”tCHARACTER“,138,”tRATIONAL“,139,”tIMAGINARY“,140,”tLABEL_END“,141,”tANDDOT“,142,”tEQL“,143,”tLOWEST“,144),145,!0,Opal.const_set($nesting,”Racc_arg“,),Opal.const_set($nesting,”Racc_token_to_s_table“,),Opal.const_set($nesting,”Racc_debug_parser“,!1),Opal.def(self,”$_reduce_2“,$Ruby25__reduce_2$11=function(val,_values,result){return this.builder.$compstmt(val[”$“](0))},$Ruby25__reduce_2$11.$$arity=3),Opal.def(self,”$_reduce_3“,$Ruby25__reduce_3$12=function(val,_values,result){return[]},$Ruby25__reduce_3$12.$$arity=3),Opal.def(self,”$_reduce_4“,$Ruby25__reduce_4$13=function(val,_values,result){return[val[”$“](0)]},$Ruby25__reduce_4$13.$$arity=3),Opal.def(self,”$_reduce_5“,$Ruby25__reduce_5$14=function(val,_values,result){return val[”$“](0)(val[”$“](2))},$Ruby25__reduce_5$14.$$arity=3),Opal.def(self,”$_reduce_6“,$Ruby25__reduce_6$15=function(val,_values,result){return[val[”$“](1)]},$Ruby25__reduce_6$15.$$arity=3),Opal.def(self,”$_reduce_8“,$Ruby25__reduce_8$16=function(val,_values,result){return $send(this.builder,”preexe“,[val[”$“](0)].concat(Opal.to_a(val[”$“](1))))},$Ruby25__reduce_8$16.$$arity=3),Opal.def(self,”$_reduce_9“,$Ruby25__reduce_9$17=function(val,_values,result){return val},$Ruby25__reduce_9$17.$$arity=3),Opal.def(self,”$_reduce_10“,$Ruby25__reduce_10$18=function(val,_values,result){var $a,$b,else_t,ensure_t,ensure_,rescue_bodies=nil,else_=nil;return rescue_bodies=val[”$“](1),$b=val[”$“](2),else_t=null==($a=Opal.to_ary($b))?nil:$a,else_=null==$a?nil:$a,$b=val[”$“](3),ensure_t=null==($a=Opal.to_ary($b))?nil:$a,ensure_=null==$a?nil:$a,$truthy($truthy($a=rescue_bodies())?else_()[”$!“]():$a)&&this.$diagnostic(”warning“,”useless_else“,nil,else_t),this.builder.$begin_body(val[”$“](0),rescue_bodies,else_t,else_,ensure_t,ensure_)},$Ruby25__reduce_10$18.$$arity=3),Opal.def(self,”$_reduce_11“,$Ruby25__reduce_11$19=function(val,_values,result){return this.builder.$compstmt(val[”$“](0))},$Ruby25__reduce_11$19.$$arity=3),Opal.def(self,”$_reduce_12“,$Ruby25__reduce_12$20=function(val,_values,result){return[]},$Ruby25__reduce_12$20.$$arity=3),Opal.def(self,”$_reduce_13“,$Ruby25__reduce_13$21=function(val,_values,result){return[val[”$“](0)]},$Ruby25__reduce_13$21.$$arity=3),Opal.def(self,”$_reduce_14“,$Ruby25__reduce_14$22=function(val,_values,result){return val[”$“](0)(val[”$“](2))},$Ruby25__reduce_14$22.$$arity=3),Opal.def(self,”$_reduce_15“,$Ruby25__reduce_15$23=function(val,_values,result){return[val[”$“](1)]},$Ruby25__reduce_15$23.$$arity=3),Opal.def(self,”$_reduce_17“,$Ruby25__reduce_17$24=function(val,_values,result){return this.$diagnostic(”error“,”begin_in_method“,nil,val[”$“](0)),result},$Ruby25__reduce_17$24.$$arity=3),Opal.def(self,”$_reduce_18“,$Ruby25__reduce_18$25=function(val,_values,result){var $writer;return $writer=,$send(this.lexer,”state=“,Opal.to_a($writer)),$rb_minus($writer.length,1),result},$Ruby25__reduce_18$25.$$arity=3),Opal.def(self,”$_reduce_19“,$Ruby25__reduce_19$26=function(val,_values,result){return this.builder.$alias(val[”$“](0),val[”$“](1),val[”$“](3))},$Ruby25__reduce_19$26.$$arity=3),Opal.def(self,”$_reduce_20“,$Ruby25__reduce_20$27=function(val,_values,result){return this.builder.$alias(val[”$“](0),this.builder.$gvar(val[”$“](1)),this.builder.$gvar(val[”$“](2)))},$Ruby25__reduce_20$27.$$arity=3),Opal.def(self,”$_reduce_21“,$Ruby25__reduce_21$28=function(val,_values,result){return this.builder.$alias(val[”$“](0),this.builder.$gvar(val[”$“](1)),this.builder.$back_ref(val[”$“](2)))},$Ruby25__reduce_21$28.$$arity=3),Opal.def(self,”$_reduce_22“,$Ruby25__reduce_22$29=function(val,_values,result){return this.$diagnostic(”error“,”nth_ref_alias“,nil,val[”$“](2)),result},$Ruby25__reduce_22$29.$$arity=3),Opal.def(self,”$_reduce_23“,$Ruby25__reduce_23$30=function(val,_values,result){return this.builder.$undef_method(val[”$“](0),val[”$“](1))},$Ruby25__reduce_23$30.$$arity=3),Opal.def(self,”$_reduce_24“,$Ruby25__reduce_24$31=function(val,_values,result){return this.builder.$condition_mod(val[”$“](0),nil,val[”$“](1),val[”$“](2))},$Ruby25__reduce_24$31.$$arity=3),Opal.def(self,”$_reduce_25“,$Ruby25__reduce_25$32=function(val,_values,result){return this.builder.$condition_mod(nil,val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_25$32.$$arity=3),Opal.def(self,”$_reduce_26“,$Ruby25__reduce_26$33=function(val,_values,result){return this.builder.$loop_mod(”while“,val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_26$33.$$arity=3),Opal.def(self,”$_reduce_27“,$Ruby25__reduce_27$34=function(val,_values,result){return this.builder.$loop_mod(”until“,val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_27$34.$$arity=3),Opal.def(self,”$_reduce_28“,$Ruby25__reduce_28$35=function(val,_values,result){var rescue_body;return rescue_body=this.builder.$rescue_body(val[”$“](1),nil,nil,nil,nil,val[”$“](2)),this.builder.$begin_body(val[”$“](0),)},$Ruby25__reduce_28$35.$$arity=3),Opal.def(self,”$_reduce_29“,$Ruby25__reduce_29$36=function(val,_values,result){return this.builder.$postexe(val[”$“](0),val[”$“](1),val[”$“](2),val[”$“](3))},$Ruby25__reduce_29$36.$$arity=3),Opal.def(self,”$_reduce_31“,$Ruby25__reduce_31$37=function(val,_values,result){return this.builder.$multi_assign(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_31$37.$$arity=3),Opal.def(self,”$_reduce_32“,$Ruby25__reduce_32$38=function(val,_values,result){return this.builder.$assign(val[”$“](0),val[”$“](1),this.builder.$array(nil,val[”$“](2),nil))},$Ruby25__reduce_32$38.$$arity=3),Opal.def(self,”$_reduce_33“,$Ruby25__reduce_33$39=function(val,_values,result){return this.builder.$multi_assign(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_33$39.$$arity=3),Opal.def(self,”$_reduce_35“,$Ruby25__reduce_35$40=function(val,_values,result){return this.builder.$assign(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_35$40.$$arity=3),Opal.def(self,”$_reduce_36“,$Ruby25__reduce_36$41=function(val,_values,result){return this.builder.$op_assign(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_36$41.$$arity=3),Opal.def(self,”$_reduce_37“,$Ruby25__reduce_37$42=function(val,_values,result){return this.builder.$op_assign(this.builder.$index(val[”$“](0),val[”$“](1),val[”$“](2),val[”$“](3)),val[”$“](4),val[”$“](5))},$Ruby25__reduce_37$42.$$arity=3),Opal.def(self,”$_reduce_38“,$Ruby25__reduce_38$43=function(val,_values,result){return this.builder.$op_assign(this.builder.$call_method(val[”$“](0),val[”$“](1),val[”$“](2)),val[”$“](3),val[”$“](4))},$Ruby25__reduce_38$43.$$arity=3),Opal.def(self,”$_reduce_39“,$Ruby25__reduce_39$44=function(val,_values,result){return this.builder.$op_assign(this.builder.$call_method(val[”$“](0),val[”$“](1),val[”$“](2)),val[”$“](3),val[”$“](4))},$Ruby25__reduce_39$44.$$arity=3),Opal.def(self,”$_reduce_40“,$Ruby25__reduce_40$45=function(val,_values,result){var const$;return const$=this.builder.$const_op_assignable(this.builder.$const_fetch(val[”$“](0),val[”$“](1),val[”$“](2))),this.builder.$op_assign(const$,val[”$“](3),val[”$“](4))},$Ruby25__reduce_40$45.$$arity=3),Opal.def(self,”$_reduce_41“,$Ruby25__reduce_41$46=function(val,_values,result){return this.builder.$op_assign(this.builder.$call_method(val[”$“](0),val[”$“](1),val[”$“](2)),val[”$“](3),val[”$“](4))},$Ruby25__reduce_41$46.$$arity=3),Opal.def(self,”$_reduce_42“,$Ruby25__reduce_42$47=function(val,_values,result){return this.builder.$op_assign(val[”$“](0),val[”$“](1),val[”$“](2)),result},$Ruby25__reduce_42$47.$$arity=3),Opal.def(self,”$_reduce_44“,$Ruby25__reduce_44$48=function(val,_values,result){var rescue_body;return rescue_body=this.builder.$rescue_body(val[”$“](1),nil,nil,nil,nil,val[”$“](2)),this.builder.$begin_body(val[”$“](0),)},$Ruby25__reduce_44$48.$$arity=3),Opal.def(self,”$_reduce_47“,$Ruby25__reduce_47$49=function(val,_values,result){return this.builder.$logical_op(”and“,val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_47$49.$$arity=3),Opal.def(self,”$_reduce_48“,$Ruby25__reduce_48$50=function(val,_values,result){return this.builder.$logical_op(”or“,val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_48$50.$$arity=3),Opal.def(self,”$_reduce_49“,$Ruby25__reduce_49$51=function(val,_values,result){return this.builder.$not_op(val[”$“](0),nil,val[”$“](2),nil)},$Ruby25__reduce_49$51.$$arity=3),Opal.def(self,”$_reduce_50“,$Ruby25__reduce_50$52=function(val,_values,result){return this.builder.$not_op(val[”$“](0),nil,val[”$“](1),nil)},$Ruby25__reduce_50$52.$$arity=3),Opal.def(self,”$_reduce_53“,$Ruby25__reduce_53$53=function(val,_values,result){return this.lexer.$cond().$push(!0),result},$Ruby25__reduce_53$53.$$arity=3),Opal.def(self,”$_reduce_54“,$Ruby25__reduce_54$54=function(val,_values,result){return this.lexer.$cond().$pop(),[val[”$“](1),val[”$“](2)]},$Ruby25__reduce_54$54.$$arity=3),Opal.def(self,”$_reduce_58“,$Ruby25__reduce_58$55=function(val,_values,result){return this.builder.$call_method(val[”$“](0),val[”$“](1),val[”$“](2),nil,val[”$“](3),nil)},$Ruby25__reduce_58$55.$$arity=3),Opal.def(self,”$_reduce_59“,$Ruby25__reduce_59$56=function(val,_values,result){return this.context.$push(”block“),result},$Ruby25__reduce_59$56.$$arity=3),Opal.def(self,”$_reduce_60“,$Ruby25__reduce_60$57=function(val,_values,result){return result=[val[”$“](0)].concat(Opal.to_a(val[”$“](2))).concat([val[”$“](3)]),this.context.$pop(),result},$Ruby25__reduce_60$57.$$arity=3),Opal.def(self,”$_reduce_62“,$Ruby25__reduce_62$58=function(val,_values,result){return this.builder.$call_method(nil,nil,val[”$“](0),nil,val[”$“](1),nil)},$Ruby25__reduce_62$58.$$arity=3),Opal.def(self,”$_reduce_63“,$Ruby25__reduce_63$59=function(val,_values,result){var $a,$b,method_call,begin_t,args,body,end_t;return method_call=this.builder.$call_method(nil,nil,val[”$“](0),nil,val[”$“](1),nil),$b=val[”$“](2),begin_t=null==($a=Opal.to_ary($b))?nil:$a,args=null==$a?nil:$a,body=null==$a?nil:$a,end_t=null==$a?nil:$a,this.builder.$block(method_call,begin_t,args,body,end_t)},$Ruby25__reduce_63$59.$$arity=3),Opal.def(self,”$_reduce_64“,$Ruby25__reduce_64$60=function(val,_values,result){return this.builder.$call_method(val[”$“](0),val[”$“](1),val[”$“](2),nil,val[”$“](3),nil)},$Ruby25__reduce_64$60.$$arity=3),Opal.def(self,”$_reduce_65“,$Ruby25__reduce_65$61=function(val,_values,result){var $a,$b,method_call,begin_t,args,body,end_t;return method_call=this.builder.$call_method(val[”$“](0),val[”$“](1),val[”$“](2),nil,val[”$“](3),nil),$b=val[”$“](4),begin_t=null==($a=Opal.to_ary($b))?nil:$a,args=null==$a?nil:$a,body=null==$a?nil:$a,end_t=null==$a?nil:$a,this.builder.$block(method_call,begin_t,args,body,end_t)},$Ruby25__reduce_65$61.$$arity=3),Opal.def(self,”$_reduce_66“,$Ruby25__reduce_66$62=function(val,_values,result){return this.builder.$call_method(val[”$“](0),val[”$“](1),val[”$“](2),nil,val[”$“](3),nil)},$Ruby25__reduce_66$62.$$arity=3),Opal.def(self,”$_reduce_67“,$Ruby25__reduce_67$63=function(val,_values,result){var $a,$b,method_call,begin_t,args,body,end_t;return method_call=this.builder.$call_method(val[”$“](0),val[”$“](1),val[”$“](2),nil,val[”$“](3),nil),$b=val[”$“](4),begin_t=null==($a=Opal.to_ary($b))?nil:$a,args=null==$a?nil:$a,body=null==$a?nil:$a,end_t=null==$a?nil:$a,this.builder.$block(method_call,begin_t,args,body,end_t)},$Ruby25__reduce_67$63.$$arity=3),Opal.def(self,”$_reduce_68“,$Ruby25__reduce_68$64=function(val,_values,result){return this.builder.$keyword_cmd(”super“,val[”$“](0),nil,val[”$“](1),nil)},$Ruby25__reduce_68$64.$$arity=3),Opal.def(self,”$_reduce_69“,$Ruby25__reduce_69$65=function(val,_values,result){return this.builder.$keyword_cmd(”yield“,val[”$“](0),nil,val[”$“](1),nil)},$Ruby25__reduce_69$65.$$arity=3),Opal.def(self,”$_reduce_70“,$Ruby25__reduce_70$66=function(val,_values,result){return this.builder.$keyword_cmd(”return“,val[”$“](0),nil,val[”$“](1),nil)},$Ruby25__reduce_70$66.$$arity=3),Opal.def(self,”$_reduce_71“,$Ruby25__reduce_71$67=function(val,_values,result){return this.builder.$keyword_cmd(”break“,val[”$“](0),nil,val[”$“](1),nil)},$Ruby25__reduce_71$67.$$arity=3),Opal.def(self,”$_reduce_72“,$Ruby25__reduce_72$68=function(val,_values,result){return this.builder.$keyword_cmd(”next“,val[”$“](0),nil,val[”$“](1),nil)},$Ruby25__reduce_72$68.$$arity=3),Opal.def(self,”$_reduce_73“,$Ruby25__reduce_73$69=function(val,_values,result){return this.builder.$multi_lhs(nil,val[”$“](0),nil)},$Ruby25__reduce_73$69.$$arity=3),Opal.def(self,”$_reduce_74“,$Ruby25__reduce_74$70=function(val,_values,result){return this.builder.$begin(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_74$70.$$arity=3),Opal.def(self,”$_reduce_75“,$Ruby25__reduce_75$71=function(val,_values,result){return this.builder.$multi_lhs(nil,val[”$“](0),nil)},$Ruby25__reduce_75$71.$$arity=3),Opal.def(self,”$_reduce_76“,$Ruby25__reduce_76$72=function(val,_values,result){return this.builder.$multi_lhs(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_76$72.$$arity=3),Opal.def(self,”$_reduce_78“,$Ruby25__reduce_78$73=function(val,_values,result){return val[”$“](0).$push(val[”$“](1))},$Ruby25__reduce_78$73.$$arity=3),Opal.def(self,”$_reduce_79“,$Ruby25__reduce_79$74=function(val,_values,result){return val[”$“](0).$push(this.builder.$splat(val[”$“](1),val[”$“](2)))},$Ruby25__reduce_79$74.$$arity=3),Opal.def(self,”$_reduce_80“,$Ruby25__reduce_80$75=function(val,_values,result){return val[”$“](0).$push(this.builder.$splat(val[”$“](1),val[”$“](2))).$concat(val[”$“](4))},$Ruby25__reduce_80$75.$$arity=3),Opal.def(self,”$_reduce_81“,$Ruby25__reduce_81$76=function(val,_values,result){return val[”$“](0).$push(this.builder.$splat(val[”$“](1)))},$Ruby25__reduce_81$76.$$arity=3),Opal.def(self,”$_reduce_82“,$Ruby25__reduce_82$77=function(val,_values,result){return val[”$“](0).$push(this.builder.$splat(val[”$“](1))).$concat(val[”$“](3))},$Ruby25__reduce_82$77.$$arity=3),Opal.def(self,”$_reduce_83“,$Ruby25__reduce_83$78=function(val,_values,result){return[this.builder.$splat(val[”$“](0),val[”$“](1))]},$Ruby25__reduce_83$78.$$arity=3),Opal.def(self,”$_reduce_84“,$Ruby25__reduce_84$79=function(val,_values,result){return[this.builder.$splat(val[”$“](0),val[”$“](1))].concat(Opal.to_a(val[”$“](3)))},$Ruby25__reduce_84$79.$$arity=3),Opal.def(self,”$_reduce_85“,$Ruby25__reduce_85$80=function(val,_values,result){return[this.builder.$splat(val[”$“](0))]},$Ruby25__reduce_85$80.$$arity=3),Opal.def(self,”$_reduce_86“,$Ruby25__reduce_86$81=function(val,_values,result){return[this.builder.$splat(val[”$“](0))].concat(Opal.to_a(val[”$“](2)))},$Ruby25__reduce_86$81.$$arity=3),Opal.def(self,”$_reduce_88“,$Ruby25__reduce_88$82=function(val,_values,result){return this.builder.$begin(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_88$82.$$arity=3),Opal.def(self,”$_reduce_89“,$Ruby25__reduce_89$83=function(val,_values,result){return[val[”$“](0)]},$Ruby25__reduce_89$83.$$arity=3),Opal.def(self,”$_reduce_90“,$Ruby25__reduce_90$84=function(val,_values,result){return val[”$“](0)(val[”$“](1))},$Ruby25__reduce_90$84.$$arity=3),Opal.def(self,”$_reduce_91“,$Ruby25__reduce_91$85=function(val,_values,result){return[val[”$“](0)]},$Ruby25__reduce_91$85.$$arity=3),Opal.def(self,”$_reduce_92“,$Ruby25__reduce_92$86=function(val,_values,result){return val[”$“](0)(val[”$“](2))},$Ruby25__reduce_92$86.$$arity=3),Opal.def(self,”$_reduce_93“,$Ruby25__reduce_93$87=function(val,_values,result){return this.builder.$assignable(val[”$“](0))},$Ruby25__reduce_93$87.$$arity=3),Opal.def(self,”$_reduce_94“,$Ruby25__reduce_94$88=function(val,_values,result){return this.builder.$assignable(val[”$“](0))},$Ruby25__reduce_94$88.$$arity=3),Opal.def(self,”$_reduce_95“,$Ruby25__reduce_95$89=function(val,_values,result){return this.builder.$index_asgn(val[”$“](0),val[”$“](1),val[”$“](2),val[”$“](3))},$Ruby25__reduce_95$89.$$arity=3),Opal.def(self,”$_reduce_96“,$Ruby25__reduce_96$90=function(val,_values,result){return this.builder.$attr_asgn(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_96$90.$$arity=3),Opal.def(self,”$_reduce_97“,$Ruby25__reduce_97$91=function(val,_values,result){return this.builder.$attr_asgn(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_97$91.$$arity=3),Opal.def(self,”$_reduce_98“,$Ruby25__reduce_98$92=function(val,_values,result){return this.builder.$attr_asgn(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_98$92.$$arity=3),Opal.def(self,”$_reduce_99“,$Ruby25__reduce_99$93=function(val,_values,result){return this.builder.$assignable(this.builder.$const_fetch(val[”$“](0),val[”$“](1),val[”$“](2)))},$Ruby25__reduce_99$93.$$arity=3),Opal.def(self,”$_reduce_100“,$Ruby25__reduce_100$94=function(val,_values,result){return this.builder.$assignable(this.builder.$const_global(val[”$“](0),val[”$“](1)))},$Ruby25__reduce_100$94.$$arity=3),Opal.def(self,”$_reduce_101“,$Ruby25__reduce_101$95=function(val,_values,result){return this.builder.$assignable(val[”$“](0))},$Ruby25__reduce_101$95.$$arity=3),Opal.def(self,”$_reduce_102“,$Ruby25__reduce_102$96=function(val,_values,result){return this.builder.$assignable(val[”$“](0))},$Ruby25__reduce_102$96.$$arity=3),Opal.def(self,”$_reduce_103“,$Ruby25__reduce_103$97=function(val,_values,result){return this.builder.$assignable(val[”$“](0))},$Ruby25__reduce_103$97.$$arity=3),Opal.def(self,”$_reduce_104“,$Ruby25__reduce_104$98=function(val,_values,result){return this.builder.$index_asgn(val[”$“](0),val[”$“](1),val[”$“](2),val[”$“](3))},$Ruby25__reduce_104$98.$$arity=3),Opal.def(self,”$_reduce_105“,$Ruby25__reduce_105$99=function(val,_values,result){return this.builder.$attr_asgn(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_105$99.$$arity=3),Opal.def(self,”$_reduce_106“,$Ruby25__reduce_106$100=function(val,_values,result){return this.builder.$attr_asgn(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_106$100.$$arity=3),Opal.def(self,”$_reduce_107“,$Ruby25__reduce_107$101=function(val,_values,result){return this.builder.$attr_asgn(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_107$101.$$arity=3),Opal.def(self,”$_reduce_108“,$Ruby25__reduce_108$102=function(val,_values,result){return this.builder.$assignable(this.builder.$const_fetch(val[”$“](0),val[”$“](1),val[”$“](2)))},$Ruby25__reduce_108$102.$$arity=3),Opal.def(self,”$_reduce_109“,$Ruby25__reduce_109$103=function(val,_values,result){return this.builder.$assignable(this.builder.$const_global(val[”$“](0),val[”$“](1)))},$Ruby25__reduce_109$103.$$arity=3),Opal.def(self,”$_reduce_110“,$Ruby25__reduce_110$104=function(val,_values,result){return this.builder.$assignable(val[”$“](0))},$Ruby25__reduce_110$104.$$arity=3),Opal.def(self,”$_reduce_111“,$Ruby25__reduce_111$105=function(val,_values,result){return this.$diagnostic(”error“,”module_name_const“,nil,val[”$“](0)),result},$Ruby25__reduce_111$105.$$arity=3),Opal.def(self,”$_reduce_113“,$Ruby25__reduce_113$106=function(val,_values,result){return this.builder.$const_global(val[”$“](0),val[”$“](1))},$Ruby25__reduce_113$106.$$arity=3),Opal.def(self,”$_reduce_114“,$Ruby25__reduce_114$107=function(val,_values,result){return this.builder.$const(val[”$“](0))},$Ruby25__reduce_114$107.$$arity=3),Opal.def(self,”$_reduce_115“,$Ruby25__reduce_115$108=function(val,_values,result){return this.builder.$const_fetch(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_115$108.$$arity=3),Opal.def(self,”$_reduce_121“,$Ruby25__reduce_121$109=function(val,_values,result){return this.builder.$symbol(val[”$“](0))},$Ruby25__reduce_121$109.$$arity=3),Opal.def(self,”$_reduce_125“,$Ruby25__reduce_125$110=function(val,_values,result){return[val[”$“](0)]},$Ruby25__reduce_125$110.$$arity=3),Opal.def(self,”$_reduce_126“,$Ruby25__reduce_126$111=function(val,_values,result){var $writer;return $writer=,$send(this.lexer,”state=“,Opal.to_a($writer)),$rb_minus($writer.length,1),result},$Ruby25__reduce_126$111.$$arity=3),Opal.def(self,”$_reduce_127“,$Ruby25__reduce_127$112=function(val,_values,result){return val[”$“](0)(val[”$“](3))},$Ruby25__reduce_127$112.$$arity=3),Opal.def(self,”$_reduce_199“,$Ruby25__reduce_199$113=function(val,_values,result){return this.builder.$assign(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_199$113.$$arity=3),Opal.def(self,”$_reduce_200“,$Ruby25__reduce_200$114=function(val,_values,result){return this.builder.$op_assign(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_200$114.$$arity=3),Opal.def(self,”$_reduce_201“,$Ruby25__reduce_201$115=function(val,_values,result){return this.builder.$op_assign(this.builder.$index(val[”$“](0),val[”$“](1),val[”$“](2),val[”$“](3)),val[”$“](4),val[”$“](5))},$Ruby25__reduce_201$115.$$arity=3),Opal.def(self,”$_reduce_202“,$Ruby25__reduce_202$116=function(val,_values,result){return this.builder.$op_assign(this.builder.$call_method(val[”$“](0),val[”$“](1),val[”$“](2)),val[”$“](3),val[”$“](4))},$Ruby25__reduce_202$116.$$arity=3),Opal.def(self,”$_reduce_203“,$Ruby25__reduce_203$117=function(val,_values,result){return this.builder.$op_assign(this.builder.$call_method(val[”$“](0),val[”$“](1),val[”$“](2)),val[”$“](3),val[”$“](4))},$Ruby25__reduce_203$117.$$arity=3),Opal.def(self,”$_reduce_204“,$Ruby25__reduce_204$118=function(val,_values,result){return this.builder.$op_assign(this.builder.$call_method(val[”$“](0),val[”$“](1),val[”$“](2)),val[”$“](3),val[”$“](4))},$Ruby25__reduce_204$118.$$arity=3),Opal.def(self,”$_reduce_205“,$Ruby25__reduce_205$119=function(val,_values,result){var const$;return const$=this.builder.$const_op_assignable(this.builder.$const_fetch(val[”$“](0),val[”$“](1),val[”$“](2))),this.builder.$op_assign(const$,val[”$“](3),val[”$“](4))},$Ruby25__reduce_205$119.$$arity=3),Opal.def(self,”$_reduce_206“,$Ruby25__reduce_206$120=function(val,_values,result){var const$;return const$=this.builder.$const_op_assignable(this.builder.$const_global(val[”$“](0),val[”$“](1))),this.builder.$op_assign(const$,val[”$“](2),val[”$“](3))},$Ruby25__reduce_206$120.$$arity=3),Opal.def(self,”$_reduce_207“,$Ruby25__reduce_207$121=function(val,_values,result){return this.builder.$op_assign(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_207$121.$$arity=3),Opal.def(self,”$_reduce_208“,$Ruby25__reduce_208$122=function(val,_values,result){return this.builder.$range_inclusive(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_208$122.$$arity=3),Opal.def(self,”$_reduce_209“,$Ruby25__reduce_209$123=function(val,_values,result){return this.builder.$range_exclusive(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_209$123.$$arity=3),Opal.def(self,”$_reduce_210“,$Ruby25__reduce_210$124=function(val,_values,result){return this.builder.$binary_op(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_210$124.$$arity=3),Opal.def(self,”$_reduce_211“,$Ruby25__reduce_211$125=function(val,_values,result){return this.builder.$binary_op(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_211$125.$$arity=3),Opal.def(self,”$_reduce_212“,$Ruby25__reduce_212$126=function(val,_values,result){return this.builder.$binary_op(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_212$126.$$arity=3),Opal.def(self,”$_reduce_213“,$Ruby25__reduce_213$127=function(val,_values,result){return this.builder.$binary_op(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_213$127.$$arity=3),Opal.def(self,”$_reduce_214“,$Ruby25__reduce_214$128=function(val,_values,result){return this.builder.$binary_op(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_214$128.$$arity=3),Opal.def(self,”$_reduce_215“,$Ruby25__reduce_215$129=function(val,_values,result){return this.builder.$binary_op(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_215$129.$$arity=3),Opal.def(self,”$_reduce_216“,$Ruby25__reduce_216$130=function(val,_values,result){return this.builder.$unary_op(val[”$“](0),this.builder.$binary_op(val[”$“](1),val[”$“](2),val[”$“](3)))},$Ruby25__reduce_216$130.$$arity=3),Opal.def(self,”$_reduce_217“,$Ruby25__reduce_217$131=function(val,_values,result){return this.builder.$unary_op(val[”$“](0),val[”$“](1))},$Ruby25__reduce_217$131.$$arity=3),Opal.def(self,”$_reduce_218“,$Ruby25__reduce_218$132=function(val,_values,result){return this.builder.$unary_op(val[”$“](0),val[”$“](1))},$Ruby25__reduce_218$132.$$arity=3),Opal.def(self,”$_reduce_219“,$Ruby25__reduce_219$133=function(val,_values,result){return this.builder.$binary_op(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_219$133.$$arity=3),Opal.def(self,”$_reduce_220“,$Ruby25__reduce_220$134=function(val,_values,result){return this.builder.$binary_op(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_220$134.$$arity=3),Opal.def(self,”$_reduce_221“,$Ruby25__reduce_221$135=function(val,_values,result){return this.builder.$binary_op(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_221$135.$$arity=3),Opal.def(self,”$_reduce_222“,$Ruby25__reduce_222$136=function(val,_values,result){return this.builder.$binary_op(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_222$136.$$arity=3),Opal.def(self,”$_reduce_224“,$Ruby25__reduce_224$137=function(val,_values,result){return this.builder.$binary_op(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_224$137.$$arity=3),Opal.def(self,”$_reduce_225“,$Ruby25__reduce_225$138=function(val,_values,result){return this.builder.$binary_op(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_225$138.$$arity=3),Opal.def(self,”$_reduce_226“,$Ruby25__reduce_226$139=function(val,_values,result){return this.builder.$binary_op(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_226$139.$$arity=3),Opal.def(self,”$_reduce_227“,$Ruby25__reduce_227$140=function(val,_values,result){return this.builder.$match_op(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_227$140.$$arity=3),Opal.def(self,”$_reduce_228“,$Ruby25__reduce_228$141=function(val,_values,result){return this.builder.$binary_op(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_228$141.$$arity=3),Opal.def(self,”$_reduce_229“,$Ruby25__reduce_229$142=function(val,_values,result){return this.builder.$not_op(val[”$“](0),nil,val[”$“](1),nil)},$Ruby25__reduce_229$142.$$arity=3),Opal.def(self,”$_reduce_230“,$Ruby25__reduce_230$143=function(val,_values,result){return this.builder.$unary_op(val[”$“](0),val[”$“](1))},$Ruby25__reduce_230$143.$$arity=3),Opal.def(self,”$_reduce_231“,$Ruby25__reduce_231$144=function(val,_values,result){return this.builder.$binary_op(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_231$144.$$arity=3),Opal.def(self,”$_reduce_232“,$Ruby25__reduce_232$145=function(val,_values,result){return this.builder.$binary_op(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_232$145.$$arity=3),Opal.def(self,”$_reduce_233“,$Ruby25__reduce_233$146=function(val,_values,result){return this.builder.$logical_op(”and“,val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_233$146.$$arity=3),Opal.def(self,”$_reduce_234“,$Ruby25__reduce_234$147=function(val,_values,result){return this.builder.$logical_op(”or“,val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_234$147.$$arity=3),Opal.def(self,”$_reduce_235“,$Ruby25__reduce_235$148=function(val,_values,result){return this.builder.$keyword_cmd(”defined?“,val[”$“](0),nil,[val[”$“](2)],nil)},$Ruby25__reduce_235$148.$$arity=3),Opal.def(self,”$_reduce_236“,$Ruby25__reduce_236$149=function(val,_values,result){return this.builder.$ternary(val[”$“](0),val[”$“](1),val[”$“](2),val[”$“](4),val[”$“](5))},$Ruby25__reduce_236$149.$$arity=3),Opal.def(self,”$_reduce_242“,$Ruby25__reduce_242$150=function(val,_values,result){return this.builder.$binary_op(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_242$150.$$arity=3),Opal.def(self,”$_reduce_243“,$Ruby25__reduce_243$151=function(val,_values,result){return this.builder.$binary_op(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_243$151.$$arity=3),Opal.def(self,”$_reduce_247“,$Ruby25__reduce_247$152=function(val,_values,result){return val[”$“](0)(this.builder.$associate(nil,val[”$“](2),nil))},$Ruby25__reduce_247$152.$$arity=3),Opal.def(self,”$_reduce_248“,$Ruby25__reduce_248$153=function(val,_values,result){return[this.builder.$associate(nil,val[”$“](0),nil)]},$Ruby25__reduce_248$153.$$arity=3),Opal.def(self,”$_reduce_250“,$Ruby25__reduce_250$154=function(val,_values,result){var rescue_body;return rescue_body=this.builder.$rescue_body(val[”$“](1),nil,nil,nil,nil,val[”$“](2)),this.builder.$begin_body(val[”$“](0),)},$Ruby25__reduce_250$154.$$arity=3),Opal.def(self,”$_reduce_251“,$Ruby25__reduce_251$155=function(val,_values,result){return val},$Ruby25__reduce_251$155.$$arity=3),Opal.def(self,”$_reduce_252“,$Ruby25__reduce_252$156=function(val,_values,result){return[nil,,nil]},$Ruby25__reduce_252$156.$$arity=3),Opal.def(self,”$_reduce_254“,$Ruby25__reduce_254$157=function(val,_values,result){return[]},$Ruby25__reduce_254$157.$$arity=3),Opal.def(self,”$_reduce_257“,$Ruby25__reduce_257$158=function(val,_values,result){return val[”$“](0)(this.builder.$associate(nil,val[”$“](2),nil))},$Ruby25__reduce_257$158.$$arity=3),Opal.def(self,”$_reduce_258“,$Ruby25__reduce_258$159=function(val,_values,result){return[this.builder.$associate(nil,val[”$“](0),nil)]},$Ruby25__reduce_258$159.$$arity=3),Opal.def(self,”$_reduce_259“,$Ruby25__reduce_259$160=function(val,_values,result){return[val[”$“](0)]},$Ruby25__reduce_259$160.$$arity=3),Opal.def(self,”$_reduce_260“,$Ruby25__reduce_260$161=function(val,_values,result){return val[”$“](0).$concat(val[”$“](1))},$Ruby25__reduce_260$161.$$arity=3),Opal.def(self,”$_reduce_261“,$Ruby25__reduce_261$162=function(val,_values,result){return(result=[this.builder.$associate(nil,val[”$“](0),nil)]).$concat(val[”$“](1)),result},$Ruby25__reduce_261$162.$$arity=3),Opal.def(self,”$_reduce_262“,$Ruby25__reduce_262$163=function(val,_values,result){var assocs;return assocs=this.builder.$associate(nil,val[”$“](2),nil),(result=val[”$“](0)(assocs)).$concat(val[”$“](3)),result},$Ruby25__reduce_262$163.$$arity=3),Opal.def(self,”$_reduce_263“,$Ruby25__reduce_263$164=function(val,_values,result){return[val[”$“](0)]},$Ruby25__reduce_263$164.$$arity=3),Opal.def(self,”$_reduce_264“,$Ruby25__reduce_264$165=function(val,_values,result){var $a,lookahead,last_token=nil,top=nil;return last_token=this.last_token[”$“](0),lookahead=$truthy($a=last_token(”tLBRACK“))?$a:last_token(”tLPAREN_ARG“),$truthy(lookahead)?(top=this.lexer.$cmdarg().$pop(),this.lexer.$cmdarg().$push(!0),this.lexer.$cmdarg().$push(top)):this.lexer.$cmdarg().$push(!0),result},$Ruby25__reduce_264$165.$$arity=3),Opal.def(self,”$_reduce_265“,$Ruby25__reduce_265$166=function(val,_values,result){var lookahead,top=nil;return lookahead=this.last_token[”$“](0)(”tLBRACE_ARG“),$truthy(lookahead)?(top=this.lexer.$cmdarg().$pop(),this.lexer.$cmdarg().$pop(),this.lexer.$cmdarg().$push(top)):this.lexer.$cmdarg().$pop(),val[”$“](1)},$Ruby25__reduce_265$166.$$arity=3),Opal.def(self,”$_reduce_266“,$Ruby25__reduce_266$167=function(val,_values,result){return this.builder.$block_pass(val[”$“](0),val[”$“](1))},$Ruby25__reduce_266$167.$$arity=3),Opal.def(self,”$_reduce_267“,$Ruby25__reduce_267$168=function(val,_values,result){return[val[”$“](1)]},$Ruby25__reduce_267$168.$$arity=3),Opal.def(self,”$_reduce_268“,$Ruby25__reduce_268$169=function(val,_values,result){return[]},$Ruby25__reduce_268$169.$$arity=3),Opal.def(self,”$_reduce_269“,$Ruby25__reduce_269$170=function(val,_values,result){return[val[”$“](0)]},$Ruby25__reduce_269$170.$$arity=3),Opal.def(self,”$_reduce_270“,$Ruby25__reduce_270$171=function(val,_values,result){return[this.builder.$splat(val[”$“](0),val[”$“](1))]},$Ruby25__reduce_270$171.$$arity=3),Opal.def(self,”$_reduce_271“,$Ruby25__reduce_271$172=function(val,_values,result){return val[”$“](0)(val[”$“](2))},$Ruby25__reduce_271$172.$$arity=3),Opal.def(self,”$_reduce_272“,$Ruby25__reduce_272$173=function(val,_values,result){return val[”$“](0)(this.builder.$splat(val[”$“](2),val[”$“](3)))},$Ruby25__reduce_272$173.$$arity=3),Opal.def(self,”$_reduce_273“,$Ruby25__reduce_273$174=function(val,_values,result){return this.builder.$array(nil,val[”$“](0),nil)},$Ruby25__reduce_273$174.$$arity=3),Opal.def(self,”$_reduce_275“,$Ruby25__reduce_275$175=function(val,_values,result){return val[”$“](0)(val[”$“](2))},$Ruby25__reduce_275$175.$$arity=3),Opal.def(self,”$_reduce_276“,$Ruby25__reduce_276$176=function(val,_values,result){return val[”$“](0)(this.builder.$splat(val[”$“](2),val[”$“](3)))},$Ruby25__reduce_276$176.$$arity=3),Opal.def(self,”$_reduce_277“,$Ruby25__reduce_277$177=function(val,_values,result){return[this.builder.$splat(val[”$“](0),val[”$“](1))]},$Ruby25__reduce_277$177.$$arity=3),Opal.def(self,”$_reduce_288“,$Ruby25__reduce_288$178=function(val,_values,result){return this.builder.$call_method(nil,nil,val[”$“](0))},$Ruby25__reduce_288$178.$$arity=3),Opal.def(self,”$_reduce_289“,$Ruby25__reduce_289$179=function(val,_values,result){return this.lexer.$cmdarg().$push(!1),result},$Ruby25__reduce_289$179.$$arity=3),Opal.def(self,”$_reduce_290“,$Ruby25__reduce_290$180=function(val,_values,result){return this.lexer.$cmdarg().$pop(),this.builder.$begin_keyword(val[”$“](0),val[”$“](2),val[”$“](3))},$Ruby25__reduce_290$180.$$arity=3),Opal.def(self,”$_reduce_291“,$Ruby25__reduce_291$181=function(val,_values,result){var $writer;return $writer=,$send(this.lexer,”state=“,Opal.to_a($writer)),$rb_minus($writer.length,1),result},$Ruby25__reduce_291$181.$$arity=3),Opal.def(self,”$_reduce_292“,$Ruby25__reduce_292$182=function(val,_values,result){return this.builder.$begin(val[”$“](0),val[”$“](1),val[”$“](3))},$Ruby25__reduce_292$182.$$arity=3),Opal.def(self,”$_reduce_293“,$Ruby25__reduce_293$183=function(val,_values,result){var $writer;return $writer=,$send(this.lexer,”state=“,Opal.to_a($writer)),$rb_minus($writer.length,1),result},$Ruby25__reduce_293$183.$$arity=3),Opal.def(self,”$_reduce_294“,$Ruby25__reduce_294$184=function(val,_values,result){return this.builder.$begin(val[”$“](0),nil,val[”$“](3))},$Ruby25__reduce_294$184.$$arity=3),Opal.def(self,”$_reduce_295“,$Ruby25__reduce_295$185=function(val,_values,result){return this.builder.$begin(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_295$185.$$arity=3),Opal.def(self,”$_reduce_296“,$Ruby25__reduce_296$186=function(val,_values,result){return this.builder.$const_fetch(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_296$186.$$arity=3),Opal.def(self,”$_reduce_297“,$Ruby25__reduce_297$187=function(val,_values,result){return this.builder.$const_global(val[”$“](0),val[”$“](1))},$Ruby25__reduce_297$187.$$arity=3),Opal.def(self,”$_reduce_298“,$Ruby25__reduce_298$188=function(val,_values,result){return this.builder.$array(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_298$188.$$arity=3),Opal.def(self,”$_reduce_299“,$Ruby25__reduce_299$189=function(val,_values,result){return this.builder.$associate(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_299$189.$$arity=3),Opal.def(self,”$_reduce_300“,$Ruby25__reduce_300$190=function(val,_values,result){return this.builder.$keyword_cmd(”return“,val[”$“](0))},$Ruby25__reduce_300$190.$$arity=3),Opal.def(self,”$_reduce_301“,$Ruby25__reduce_301$191=function(val,_values,result){return this.builder.$keyword_cmd(”yield“,val[”$“](0),val[”$“](1),val[”$“](2),val[”$“](3))},$Ruby25__reduce_301$191.$$arity=3),Opal.def(self,”$_reduce_302“,$Ruby25__reduce_302$192=function(val,_values,result){return this.builder.$keyword_cmd(”yield“,val[”$“](0),val[”$“](1),[],val[”$“](2))},$Ruby25__reduce_302$192.$$arity=3),Opal.def(self,”$_reduce_303“,$Ruby25__reduce_303$193=function(val,_values,result){return this.builder.$keyword_cmd(”yield“,val[”$“](0))},$Ruby25__reduce_303$193.$$arity=3),Opal.def(self,”$_reduce_304“,$Ruby25__reduce_304$194=function(val,_values,result){return this.builder.$keyword_cmd(”defined?“,val[”$“](0),val[”$“](2),[val[”$“](3)],val[”$“](4))},$Ruby25__reduce_304$194.$$arity=3),Opal.def(self,”$_reduce_305“,$Ruby25__reduce_305$195=function(val,_values,result){return this.builder.$not_op(val[”$“](0),val[”$“](1),val[”$“](2),val[”$“](3))},$Ruby25__reduce_305$195.$$arity=3),Opal.def(self,”$_reduce_306“,$Ruby25__reduce_306$196=function(val,_values,result){return this.builder.$not_op(val[”$“](0),val[”$“](1),nil,val[”$“](2))},$Ruby25__reduce_306$196.$$arity=3),Opal.def(self,”$_reduce_307“,$Ruby25__reduce_307$197=function(val,_values,result){var $a,$b,method_call,begin_t,args,body,end_t;return method_call=this.builder.$call_method(nil,nil,val[”$“](0)),$b=val[”$“](1),begin_t=null==($a=Opal.to_ary($b))?nil:$a,args=null==$a?nil:$a,body=null==$a?nil:$a,end_t=null==$a?nil:$a,this.builder.$block(method_call,begin_t,args,body,end_t)},$Ruby25__reduce_307$197.$$arity=3),Opal.def(self,”$_reduce_309“,$Ruby25__reduce_309$198=function(val,_values,result){var $a,$b,begin_t,args,body,end_t;return $b=val[”$“](1),begin_t=null==($a=Opal.to_ary($b))?nil:$a,args=null==$a?nil:$a,body=null==$a?nil:$a,end_t=null==$a?nil:$a,this.builder.$block(val[”$“](0),begin_t,args,body,end_t)},$Ruby25__reduce_309$198.$$arity=3),Opal.def(self,”$_reduce_310“,$Ruby25__reduce_310$199=function(val,_values,result){var $a,$b,$c,lambda_call,args,begin_t,body,end_t;return lambda_call=this.builder.$call_lambda(val[”$“](0)),$b=val[”$“](1),args=null==($a=Opal.to_ary($b))?nil:$a,begin_t=null==($c=Opal.to_ary(null==$a?nil:$a))[0]?nil:$c,body=null==$c?nil:$c,end_t=null==$c?nil:$c,this.builder.$block(lambda_call,begin_t,args,body,end_t)},$Ruby25__reduce_310$199.$$arity=3),Opal.def(self,”$_reduce_311“,$Ruby25__reduce_311$200=function(val,_values,result){var $a,$b,else_t,else_;return $b=val[”$“](4),else_t=null==($a=Opal.to_ary($b))?nil:$a,else_=null==$a?nil:$a,this.builder.$condition(val[”$“](0),val[”$“](1),val[”$“](2),val[”$“](3),else_t,else_,val[”$“](5))},$Ruby25__reduce_311$200.$$arity=3),Opal.def(self,”$_reduce_312“,$Ruby25__reduce_312$201=function(val,_values,result){var $a,$b,else_t,else_;return $b=val[”$“](4),else_t=null==($a=Opal.to_ary($b))?nil:$a,else_=null==$a?nil:$a,this.builder.$condition(val[”$“](0),val[”$“](1),val[”$“](2),else_,else_t,val[”$“](3),val[”$“](5))},$Ruby25__reduce_312$201.$$arity=3),Opal.def(self,”$_reduce_313“,$Ruby25__reduce_313$202=function(val,_values,result){return $send(this.builder,”loop“,[”while“,val[”$“](0)].concat(Opal.to_a(val[”$“](1))).concat([val[”$“](2),val[”$“](3)]))},$Ruby25__reduce_313$202.$$arity=3),Opal.def(self,”$_reduce_314“,$Ruby25__reduce_314$203=function(val,_values,result){return $send(this.builder,”loop“,[”until“,val[”$“](0)].concat(Opal.to_a(val[”$“](1))).concat([val[”$“](2),val[”$“](3)]))},$Ruby25__reduce_314$203.$$arity=3),Opal.def(self,”$_reduce_315“,$Ruby25__reduce_315$204=function(val,_values,result){var $a,$b,$c,when_bodies,else_t,else_body;return $b=($b=($a=[].concat(Opal.to_a(val[”$“](3)))).length-1)<0?0:$b,when_bodies=$slice.call($a,0,$b),else_t=null==($c=Opal.to_ary(null==$a?nil:$a))[0]?nil:$c,else_body=null==$c?nil:$c,this.builder.$case(val[”$“](0),val[”$“](1),when_bodies,else_t,else_body,val[”$“](4))},$Ruby25__reduce_315$204.$$arity=3),Opal.def(self,”$_reduce_316“,$Ruby25__reduce_316$205=function(val,_values,result){var $a,$b,$c,when_bodies,else_t,else_body;return $b=($b=($a=[].concat(Opal.to_a(val[”$“](2)))).length-1)<0?0:$b,when_bodies=$slice.call($a,0,$b),else_t=null==($c=Opal.to_ary(null==$a?nil:$a))[0]?nil:$c,else_body=null==$c?nil:$c,this.builder.$case(val[”$“](0),nil,when_bodies,else_t,else_body,val[”$“](3))},$Ruby25__reduce_316$205.$$arity=3),Opal.def(self,”$_reduce_317“,$Ruby25__reduce_317$206=function(val,_values,result){return $send(this.builder,”for“,[val[”$“](0),val[”$“](1),val[”$“](2)].concat(Opal.to_a(val[”$“](3))).concat([val[”$“](4),val[”$“](5)]))},$Ruby25__reduce_317$206.$$arity=3),Opal.def(self,”$_reduce_318“,$Ruby25__reduce_318$207=function(val,_values,result){return this.static_env.$extend_static(),this.lexer.$cmdarg().$push(!1),this.lexer.$cond().$push(!1),this.context.$push(”class“),result},$Ruby25__reduce_318$207.$$arity=3),Opal.def(self,”$_reduce_319“,$Ruby25__reduce_319$208=function(val,_values,result){var $a,$b,lt_t,superclass;return $truthy(this.context())||this.$diagnostic(”error“,”class_in_def“,nil,val[”$“](0)),$b=val[”$“](2),lt_t=null==($a=Opal.to_ary($b))?nil:$a,superclass=null==$a?nil:$a,result=this.builder.$def_class(val[”$“](0),val[”$“](1),lt_t,superclass,val[”$“](4),val[”$“](5)),this.lexer.$cmdarg().$pop(),this.lexer.$cond().$pop(),this.static_env.$unextend(),this.context.$pop(),result},$Ruby25__reduce_319$208.$$arity=3),Opal.def(self,”$_reduce_320“,$Ruby25__reduce_320$209=function(val,_values,result){return this.static_env.$extend_static(),this.lexer.$cmdarg().$push(!1),this.lexer.$cond().$push(!1),this.context.$push(”sclass“),result},$Ruby25__reduce_320$209.$$arity=3),Opal.def(self,”$_reduce_321“,$Ruby25__reduce_321$210=function(val,_values,result){return result=this.builder.$def_sclass(val[”$“](0),val[”$“](1),val[”$“](2),val[”$“](5),val[”$“](6)),this.lexer.$cmdarg().$pop(),this.lexer.$cond().$pop(),this.static_env.$unextend(),this.context.$pop(),result},$Ruby25__reduce_321$210.$$arity=3),Opal.def(self,”$_reduce_322“,$Ruby25__reduce_322$211=function(val,_values,result){return this.static_env.$extend_static(),this.lexer.$cmdarg().$push(!1),result},$Ruby25__reduce_322$211.$$arity=3),Opal.def(self,”$_reduce_323“,$Ruby25__reduce_323$212=function(val,_values,result){return $truthy(this.context())||this.$diagnostic(”error“,”module_in_def“,nil,val[”$“](0)),result=this.builder.$def_module(val[”$“](0),val[”$“](1),val[”$“](3),val[”$“](4)),this.lexer.$cmdarg().$pop(),this.static_env.$unextend(),result},$Ruby25__reduce_323$212.$$arity=3),Opal.def(self,”$_reduce_324“,$Ruby25__reduce_324$213=function(val,_values,result){return this.static_env.$extend_static(),this.lexer.$cmdarg().$push(!1),this.lexer.$cond().$push(!1),this.context.$push(”def“),result},$Ruby25__reduce_324$213.$$arity=3),Opal.def(self,”$_reduce_325“,$Ruby25__reduce_325$214=function(val,_values,result){return result=this.builder.$def_method(val[”$“](0),val[”$“](1),val[”$“](3),val[”$“](4),val[”$“](5)),this.lexer.$cmdarg().$pop(),this.lexer.$cond().$pop(),this.static_env.$unextend(),this.context.$pop(),result},$Ruby25__reduce_325$214.$$arity=3),Opal.def(self,”$_reduce_326“,$Ruby25__reduce_326$215=function(val,_values,result){var $writer;return $writer=,$send(this.lexer,”state=“,Opal.to_a($writer)),$rb_minus($writer.length,1),result},$Ruby25__reduce_326$215.$$arity=3),Opal.def(self,”$_reduce_327“,$Ruby25__reduce_327$216=function(val,_values,result){return this.static_env.$extend_static(),this.lexer.$cmdarg().$push(!1),this.lexer.$cond().$push(!1),this.context.$push(”defs“),result},$Ruby25__reduce_327$216.$$arity=3),Opal.def(self,”$_reduce_328“,$Ruby25__reduce_328$217=function(val,_values,result){return result=this.builder.$def_singleton(val[”$“](0),val[”$“](1),val[”$“](2),val[”$“](4),val[”$“](6),val[”$“](7),val[”$“](8)),this.lexer.$cmdarg().$pop(),this.lexer.$cond().$pop(),this.static_env.$unextend(),this.context.$pop(),result},$Ruby25__reduce_328$217.$$arity=3),Opal.def(self,”$_reduce_329“,$Ruby25__reduce_329$218=function(val,_values,result){return this.builder.$keyword_cmd(”break“,val[”$“](0))},$Ruby25__reduce_329$218.$$arity=3),Opal.def(self,”$_reduce_330“,$Ruby25__reduce_330$219=function(val,_values,result){return this.builder.$keyword_cmd(”next“,val[”$“](0))},$Ruby25__reduce_330$219.$$arity=3),Opal.def(self,”$_reduce_331“,$Ruby25__reduce_331$220=function(val,_values,result){return this.builder.$keyword_cmd(”redo“,val[”$“](0))},$Ruby25__reduce_331$220.$$arity=3),Opal.def(self,”$_reduce_332“,$Ruby25__reduce_332$221=function(val,_values,result){return this.builder.$keyword_cmd(”retry“,val[”$“](0))},$Ruby25__reduce_332$221.$$arity=3),Opal.def(self,”$_reduce_334“,$Ruby25__reduce_334$222=function(val,_values,result){return $truthy(this.context())&&this.$diagnostic(”error“,”invalid_return“,nil,val[”$“](0)),result},$Ruby25__reduce_334$222.$$arity=3),Opal.def(self,”$_reduce_337“,$Ruby25__reduce_337$223=function(val,_values,result){return val[”$“](1)},$Ruby25__reduce_337$223.$$arity=3),Opal.def(self,”$_reduce_341“,$Ruby25__reduce_341$224=function(val,_values,result){var $a,$b,else_t,else_;return $b=val[”$“](4),else_t=null==($a=Opal.to_ary($b))?nil:$a,else_=null==$a?nil:$a,[val[”$“](0),this.builder.$condition(val[”$“](0),val[”$“](1),val[”$“](2),val[”$“](3),else_t,else_,nil)]},$Ruby25__reduce_341$224.$$arity=3),Opal.def(self,”$_reduce_343“,$Ruby25__reduce_343$225=function(val,_values,result){return val},$Ruby25__reduce_343$225.$$arity=3),Opal.def(self,”$_reduce_346“,$Ruby25__reduce_346$226=function(val,_values,result){return this.builder.$arg(val[”$“](0))},$Ruby25__reduce_346$226.$$arity=3),Opal.def(self,”$_reduce_347“,$Ruby25__reduce_347$227=function(val,_values,result){return this.builder.$multi_lhs(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_347$227.$$arity=3),Opal.def(self,”$_reduce_348“,$Ruby25__reduce_348$228=function(val,_values,result){return[val[”$“](0)]},$Ruby25__reduce_348$228.$$arity=3),Opal.def(self,”$_reduce_349“,$Ruby25__reduce_349$229=function(val,_values,result){return val[”$“](0)(val[”$“](2))},$Ruby25__reduce_349$229.$$arity=3),Opal.def(self,”$_reduce_351“,$Ruby25__reduce_351$230=function(val,_values,result){return val[”$“](0).$push(this.builder.$restarg(val[”$“](2),val[”$“](3)))},$Ruby25__reduce_351$230.$$arity=3),Opal.def(self,”$_reduce_352“,$Ruby25__reduce_352$231=function(val,_values,result){return val[”$“](0).$push(this.builder.$restarg(val[”$“](2),val[”$“](3))).$concat(val[”$“](5))},$Ruby25__reduce_352$231.$$arity=3),Opal.def(self,”$_reduce_353“,$Ruby25__reduce_353$232=function(val,_values,result){return val[”$“](0).$push(this.builder.$restarg(val[”$“](2)))},$Ruby25__reduce_353$232.$$arity=3),Opal.def(self,”$_reduce_354“,$Ruby25__reduce_354$233=function(val,_values,result){return val[”$“](0).$push(this.builder.$restarg(val[”$“](2))).$concat(val[”$“](4))},$Ruby25__reduce_354$233.$$arity=3),Opal.def(self,”$_reduce_355“,$Ruby25__reduce_355$234=function(val,_values,result){return[this.builder.$restarg(val[”$“](0),val[”$“](1))]},$Ruby25__reduce_355$234.$$arity=3),Opal.def(self,”$_reduce_356“,$Ruby25__reduce_356$235=function(val,_values,result){return[this.builder.$restarg(val[”$“](0),val[”$“](1))].concat(Opal.to_a(val[”$“](3)))},$Ruby25__reduce_356$235.$$arity=3),Opal.def(self,”$_reduce_357“,$Ruby25__reduce_357$236=function(val,_values,result){return[this.builder.$restarg(val[”$“](0))]},$Ruby25__reduce_357$236.$$arity=3),Opal.def(self,”$_reduce_358“,$Ruby25__reduce_358$237=function(val,_values,result){return[this.builder.$restarg(val[”$“](0))].concat(Opal.to_a(val[”$“](2)))},$Ruby25__reduce_358$237.$$arity=3),Opal.def(self,”$_reduce_359“,$Ruby25__reduce_359$238=function(val,_values,result){return val[”$“](0).$concat(val[”$“](2)).$concat(val[”$“](3))},$Ruby25__reduce_359$238.$$arity=3),Opal.def(self,”$_reduce_360“,$Ruby25__reduce_360$239=function(val,_values,result){return val[”$“](0).$concat(val[”$“](1))},$Ruby25__reduce_360$239.$$arity=3),Opal.def(self,”$_reduce_361“,$Ruby25__reduce_361$240=function(val,_values,result){return val[”$“](0).$concat(val[”$“](1))},$Ruby25__reduce_361$240.$$arity=3),Opal.def(self,”$_reduce_362“,$Ruby25__reduce_362$241=function(val,_values,result){return[val[”$“](0)]},$Ruby25__reduce_362$241.$$arity=3),Opal.def(self,”$_reduce_363“,$Ruby25__reduce_363$242=function(val,_values,result){return val[”$“](1)},$Ruby25__reduce_363$242.$$arity=3),Opal.def(self,”$_reduce_364“,$Ruby25__reduce_364$243=function(val,_values,result){return[]},$Ruby25__reduce_364$243.$$arity=3),Opal.def(self,”$_reduce_365“,$Ruby25__reduce_365$244=function(val,_values,result){return val[”$“](0).$concat(val[”$“](2)).$concat(val[”$“](4)).$concat(val[”$“](5))},$Ruby25__reduce_365$244.$$arity=3),Opal.def(self,”$_reduce_366“,$Ruby25__reduce_366$245=function(val,_values,result){return val[”$“](0).$concat(val[”$“](2)).$concat(val[”$“](4)).$concat(val[”$“](6)).$concat(val[”$“](7))},$Ruby25__reduce_366$245.$$arity=3),Opal.def(self,”$_reduce_367“,$Ruby25__reduce_367$246=function(val,_values,result){return val[”$“](0).$concat(val[”$“](2)).$concat(val[”$“](3))},$Ruby25__reduce_367$246.$$arity=3),Opal.def(self,”$_reduce_368“,$Ruby25__reduce_368$247=function(val,_values,result){return val[”$“](0).$concat(val[”$“](2)).$concat(val[”$“](4)).$concat(val[”$“](5))},$Ruby25__reduce_368$247.$$arity=3),Opal.def(self,”$_reduce_369“,$Ruby25__reduce_369$248=function(val,_values,result){return val[”$“](0).$concat(val[”$“](2)).$concat(val[”$“](3))},$Ruby25__reduce_369$248.$$arity=3),Opal.def(self,”$_reduce_371“,$Ruby25__reduce_371$249=function(val,_values,result){return val[”$“](0).$concat(val[”$“](2)).$concat(val[”$“](4)).$concat(val[”$“](5))},$Ruby25__reduce_371$249.$$arity=3),Opal.def(self,”$_reduce_372“,$Ruby25__reduce_372$250=function(val,_values,result){var $a;return $truthy($truthy($a=val[”$“](1)())?val[”$“](0).$size()(1):$a)?[this.builder.$procarg0(val[”$“](0)[”$“](0))]:val[”$“](0).$concat(val[”$“](1))},$Ruby25__reduce_372$250.$$arity=3),Opal.def(self,”$_reduce_373“,$Ruby25__reduce_373$251=function(val,_values,result){return val[”$“](0).$concat(val[”$“](2)).$concat(val[”$“](3))},$Ruby25__reduce_373$251.$$arity=3),Opal.def(self,”$_reduce_374“,$Ruby25__reduce_374$252=function(val,_values,result){return val[”$“](0).$concat(val[”$“](2)).$concat(val[”$“](4)).$concat(val[”$“](5))},$Ruby25__reduce_374$252.$$arity=3),Opal.def(self,”$_reduce_375“,$Ruby25__reduce_375$253=function(val,_values,result){return val[”$“](0).$concat(val[”$“](1))},$Ruby25__reduce_375$253.$$arity=3),Opal.def(self,”$_reduce_376“,$Ruby25__reduce_376$254=function(val,_values,result){return val[”$“](0).$concat(val[”$“](2)).$concat(val[”$“](3))},$Ruby25__reduce_376$254.$$arity=3),Opal.def(self,”$_reduce_377“,$Ruby25__reduce_377$255=function(val,_values,result){return val[”$“](0).$concat(val[”$“](1))},$Ruby25__reduce_377$255.$$arity=3),Opal.def(self,”$_reduce_378“,$Ruby25__reduce_378$256=function(val,_values,result){return val[”$“](0).$concat(val[”$“](2)).$concat(val[”$“](3))},$Ruby25__reduce_378$256.$$arity=3),Opal.def(self,”$_reduce_380“,$Ruby25__reduce_380$257=function(val,_values,result){return this.builder.$args(nil,[],nil)},$Ruby25__reduce_380$257.$$arity=3),Opal.def(self,”$_reduce_381“,$Ruby25__reduce_381$258=function(val,_values,result){var $writer;return $writer=,$send(this.lexer,”state=“,Opal.to_a($writer)),$rb_minus($writer.length,1),result},$Ruby25__reduce_381$258.$$arity=3),Opal.def(self,”$_reduce_382“,$Ruby25__reduce_382$259=function(val,_values,result){return this.builder.$args(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_382$259.$$arity=3),Opal.def(self,”$_reduce_383“,$Ruby25__reduce_383$260=function(val,_values,result){return this.builder.$args(val[”$“](0),[],val[”$“](0))},$Ruby25__reduce_383$260.$$arity=3),Opal.def(self,”$_reduce_384“,$Ruby25__reduce_384$261=function(val,_values,result){return this.builder.$args(val[”$“](0),val[”$“](1).$concat(val[”$“](2)),val[”$“](3))},$Ruby25__reduce_384$261.$$arity=3),Opal.def(self,”$_reduce_385“,$Ruby25__reduce_385$262=function(val,_values,result){return[]},$Ruby25__reduce_385$262.$$arity=3),Opal.def(self,”$_reduce_386“,$Ruby25__reduce_386$263=function(val,_values,result){return val[”$“](2)},$Ruby25__reduce_386$263.$$arity=3),Opal.def(self,”$_reduce_387“,$Ruby25__reduce_387$264=function(val,_values,result){return[val[”$“](0)]},$Ruby25__reduce_387$264.$$arity=3),Opal.def(self,”$_reduce_388“,$Ruby25__reduce_388$265=function(val,_values,result){return val[”$“](0)(val[”$“](2))},$Ruby25__reduce_388$265.$$arity=3),Opal.def(self,”$_reduce_389“,$Ruby25__reduce_389$266=function(val,_values,result){return this.static_env.$declare(val[”$“](0)[”$“](0)),this.builder.$shadowarg(val[”$“](0))},$Ruby25__reduce_389$266.$$arity=3),Opal.def(self,”$_reduce_391“,$Ruby25__reduce_391$267=function(val,_values,result){return this.static_env.$extend_dynamic(),result},$Ruby25__reduce_391$267.$$arity=3),Opal.def(self,”$_reduce_392“,$Ruby25__reduce_392$268=function(val,_values,result){return this.lexer.$cmdarg().$push(!1),result},$Ruby25__reduce_392$268.$$arity=3),Opal.def(self,”$_reduce_393“,$Ruby25__reduce_393$269=function(val,_values,result){return this.lexer.$cmdarg().$pop(),result=[val[”$“](1),val[”$“](3)],this.static_env.$unextend(),result},$Ruby25__reduce_393$269.$$arity=3),Opal.def(self,”$_reduce_394“,$Ruby25__reduce_394$270=function(val,_values,result){return this.builder.$args(val[”$“](0),val[”$“](1).$concat(val[”$“](2)),val[”$“](3))},$Ruby25__reduce_394$270.$$arity=3),Opal.def(self,”$_reduce_395“,$Ruby25__reduce_395$271=function(val,_values,result){return this.builder.$args(nil,val[”$“](0),nil)},$Ruby25__reduce_395$271.$$arity=3),Opal.def(self,”$_reduce_396“,$Ruby25__reduce_396$272=function(val,_values,result){return this.context.$push(”lambda“),result},$Ruby25__reduce_396$272.$$arity=3),Opal.def(self,”$_reduce_397“,$Ruby25__reduce_397$273=function(val,_values,result){return result=[val[”$“](0),val[”$“](2),val[”$“](3)],this.context.$pop(),result},$Ruby25__reduce_397$273.$$arity=3),Opal.def(self,”$_reduce_398“,$Ruby25__reduce_398$274=function(val,_values,result){return this.context.$push(”lambda“),result},$Ruby25__reduce_398$274.$$arity=3),Opal.def(self,”$_reduce_399“,$Ruby25__reduce_399$275=function(val,_values,result){return result=[val[”$“](0),val[”$“](2),val[”$“](3)],this.context.$pop(),result},$Ruby25__reduce_399$275.$$arity=3),Opal.def(self,”$_reduce_400“,$Ruby25__reduce_400$276=function(val,_values,result){return this.context.$push(”block“),result},$Ruby25__reduce_400$276.$$arity=3),Opal.def(self,”$_reduce_401“,$Ruby25__reduce_401$277=function(val,_values,result){return result=[val[”$“](0)].concat(Opal.to_a(val[”$“](2))).concat([val[”$“](3)]),this.context.$pop(),result},$Ruby25__reduce_401$277.$$arity=3),Opal.def(self,”$_reduce_402“,$Ruby25__reduce_402$278=function(val,_values,result){var $a,$b,begin_t,block_args,body,end_t;return $b=val[”$“](1),begin_t=null==($a=Opal.to_ary($b))?nil:$a,block_args=null==$a?nil:$a,body=null==$a?nil:$a,end_t=null==$a?nil:$a,this.builder.$block(val[”$“](0),begin_t,block_args,body,end_t)},$Ruby25__reduce_402$278.$$arity=3),Opal.def(self,”$_reduce_403“,$Ruby25__reduce_403$279=function(val,_values,result){var $a,$b,lparen_t,args,rparen_t;return $b=val[”$“](3),lparen_t=null==($a=Opal.to_ary($b))?nil:$a,args=null==$a?nil:$a,rparen_t=null==$a?nil:$a,this.builder.$call_method(val[”$“](0),val[”$“](1),val[”$“](2),lparen_t,args,rparen_t)},$Ruby25__reduce_403$279.$$arity=3),Opal.def(self,”$_reduce_404“,$Ruby25__reduce_404$280=function(val,_values,result){var $a,$b,lparen_t,rparen_t,method_call,begin_t,body,end_t,args=nil;return $b=val[”$“](3),lparen_t=null==($a=Opal.to_ary($b))?nil:$a,args=null==$a?nil:$a,rparen_t=null==$a?nil:$a,method_call=this.builder.$call_method(val[”$“](0),val[”$“](1),val[”$“](2),lparen_t,args,rparen_t),$b=val[”$“](4),begin_t=null==($a=Opal.to_ary($b))?nil:$a,args=null==$a?nil:$a,body=null==$a?nil:$a,end_t=null==$a?nil:$a,this.builder.$block(method_call,begin_t,args,body,end_t)},$Ruby25__reduce_404$280.$$arity=3),Opal.def(self,”$_reduce_405“,$Ruby25__reduce_405$281=function(val,_values,result){var $a,$b,method_call,begin_t,args,body,end_t;return method_call=this.builder.$call_method(val[”$“](0),val[”$“](1),val[”$“](2),nil,val[”$“](3),nil),$b=val[”$“](4),begin_t=null==($a=Opal.to_ary($b))?nil:$a,args=null==$a?nil:$a,body=null==$a?nil:$a,end_t=null==$a?nil:$a,this.builder.$block(method_call,begin_t,args,body,end_t)},$Ruby25__reduce_405$281.$$arity=3),Opal.def(self,”$_reduce_406“,$Ruby25__reduce_406$282=function(val,_values,result){var $a,$b,lparen_t,args,rparen_t;return $b=val[”$“](1),lparen_t=null==($a=Opal.to_ary($b))?nil:$a,args=null==$a?nil:$a,rparen_t=null==$a?nil:$a,this.builder.$call_method(nil,nil,val[”$“](0),lparen_t,args,rparen_t)},$Ruby25__reduce_406$282.$$arity=3),Opal.def(self,”$_reduce_407“,$Ruby25__reduce_407$283=function(val,_values,result){var $a,$b,lparen_t,args,rparen_t;return $b=val[”$“](3),lparen_t=null==($a=Opal.to_ary($b))?nil:$a,args=null==$a?nil:$a,rparen_t=null==$a?nil:$a,this.builder.$call_method(val[”$“](0),val[”$“](1),val[”$“](2),lparen_t,args,rparen_t)},$Ruby25__reduce_407$283.$$arity=3),Opal.def(self,”$_reduce_408“,$Ruby25__reduce_408$284=function(val,_values,result){var $a,$b,lparen_t,args,rparen_t;return $b=val[”$“](3),lparen_t=null==($a=Opal.to_ary($b))?nil:$a,args=null==$a?nil:$a,rparen_t=null==$a?nil:$a,this.builder.$call_method(val[”$“](0),val[”$“](1),val[”$“](2),lparen_t,args,rparen_t)},$Ruby25__reduce_408$284.$$arity=3),Opal.def(self,”$_reduce_409“,$Ruby25__reduce_409$285=function(val,_values,result){return this.builder.$call_method(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_409$285.$$arity=3),Opal.def(self,”$_reduce_410“,$Ruby25__reduce_410$286=function(val,_values,result){var $a,$b,lparen_t,args,rparen_t;return $b=val[”$“](2),lparen_t=null==($a=Opal.to_ary($b))?nil:$a,args=null==$a?nil:$a,rparen_t=null==$a?nil:$a,this.builder.$call_method(val[”$“](0),val[”$“](1),nil,lparen_t,args,rparen_t)},$Ruby25__reduce_410$286.$$arity=3),Opal.def(self,”$_reduce_411“,$Ruby25__reduce_411$287=function(val,_values,result){var $a,$b,lparen_t,args,rparen_t;return $b=val[”$“](2),lparen_t=null==($a=Opal.to_ary($b))?nil:$a,args=null==$a?nil:$a,rparen_t=null==$a?nil:$a,this.builder.$call_method(val[”$“](0),val[”$“](1),nil,lparen_t,args,rparen_t)},$Ruby25__reduce_411$287.$$arity=3),Opal.def(self,”$_reduce_412“,$Ruby25__reduce_412$288=function(val,_values,result){var $a,$b,lparen_t,args,rparen_t;return $b=val[”$“](1),lparen_t=null==($a=Opal.to_ary($b))?nil:$a,args=null==$a?nil:$a,rparen_t=null==$a?nil:$a,this.builder.$keyword_cmd(”super“,val[”$“](0),lparen_t,args,rparen_t)},$Ruby25__reduce_412$288.$$arity=3),Opal.def(self,”$_reduce_413“,$Ruby25__reduce_413$289=function(val,_values,result){return this.builder.$keyword_cmd(”zsuper“,val[”$“](0))},$Ruby25__reduce_413$289.$$arity=3),Opal.def(self,”$_reduce_414“,$Ruby25__reduce_414$290=function(val,_values,result){return this.builder.$index(val[”$“](0),val[”$“](1),val[”$“](2),val[”$“](3))},$Ruby25__reduce_414$290.$$arity=3),Opal.def(self,”$_reduce_415“,$Ruby25__reduce_415$291=function(val,_values,result){return this.context.$push(”block“),result},$Ruby25__reduce_415$291.$$arity=3),Opal.def(self,”$_reduce_416“,$Ruby25__reduce_416$292=function(val,_values,result){return result=[val[”$“](0)].concat(Opal.to_a(val[”$“](2))).concat([val[”$“](3)]),this.context.$pop(),result},$Ruby25__reduce_416$292.$$arity=3),Opal.def(self,”$_reduce_417“,$Ruby25__reduce_417$293=function(val,_values,result){return this.context.$push(”block“),result},$Ruby25__reduce_417$293.$$arity=3),Opal.def(self,”$_reduce_418“,$Ruby25__reduce_418$294=function(val,_values,result){return result=[val[”$“](0)].concat(Opal.to_a(val[”$“](2))).concat([val[”$“](3)]),this.context.$pop(),result},$Ruby25__reduce_418$294.$$arity=3),Opal.def(self,”$_reduce_419“,$Ruby25__reduce_419$295=function(val,_values,result){return this.static_env.$extend_dynamic(),result},$Ruby25__reduce_419$295.$$arity=3),Opal.def(self,”$_reduce_420“,$Ruby25__reduce_420$296=function(val,_values,result){return result=[val[”$“](1),val[”$“](2)],this.static_env.$unextend(),result},$Ruby25__reduce_420$296.$$arity=3),Opal.def(self,”$_reduce_421“,$Ruby25__reduce_421$297=function(val,_values,result){return this.static_env.$extend_dynamic(),result},$Ruby25__reduce_421$297.$$arity=3),Opal.def(self,”$_reduce_422“,$Ruby25__reduce_422$298=function(val,_values,result){return this.lexer.$cmdarg().$push(!1),result},$Ruby25__reduce_422$298.$$arity=3),Opal.def(self,”$_reduce_423“,$Ruby25__reduce_423$299=function(val,_values,result){return result=[val[”$“](2),val[”$“](3)],this.static_env.$unextend(),this.lexer.$cmdarg().$pop(),result},$Ruby25__reduce_423$299.$$arity=3),Opal.def(self,”$_reduce_424“,$Ruby25__reduce_424$300=function(val,_values,result){return[this.builder.$when(val[”$“](0),val[”$“](1),val[”$“](2),val[”$“](3))].concat(Opal.to_a(val[”$“](4)))},$Ruby25__reduce_424$300.$$arity=3),Opal.def(self,”$_reduce_425“,$Ruby25__reduce_425$301=function(val,_values,result){return[val[”$“](0)]},$Ruby25__reduce_425$301.$$arity=3),Opal.def(self,”$_reduce_427“,$Ruby25__reduce_427$302=function(val,_values,result){var $a,$b,assoc_t,exc_var,exc_list=nil;return $b=val[”$“](2),assoc_t=null==($a=Opal.to_ary($b))?nil:$a,exc_var=null==$a?nil:$a,$truthy(val[”$“](1))&&(exc_list=this.builder.$array(nil,val[”$“](1),nil)),[this.builder.$rescue_body(val[”$“](0),exc_list,assoc_t,exc_var,val[”$“](3),val[”$“](4))].concat(Opal.to_a(val[”$“](5)))},$Ruby25__reduce_427$302.$$arity=3),Opal.def(self,”$_reduce_428“,$Ruby25__reduce_428$303=function(val,_values,result){return[]},$Ruby25__reduce_428$303.$$arity=3),Opal.def(self,”$_reduce_429“,$Ruby25__reduce_429$304=function(val,_values,result){return[val[”$“](0)]},$Ruby25__reduce_429$304.$$arity=3),Opal.def(self,”$_reduce_432“,$Ruby25__reduce_432$305=function(val,_values,result){return[val[”$“](0),val[”$“](1)]},$Ruby25__reduce_432$305.$$arity=3),Opal.def(self,”$_reduce_434“,$Ruby25__reduce_434$306=function(val,_values,result){return[val[”$“](0),val[”$“](1)]},$Ruby25__reduce_434$306.$$arity=3),Opal.def(self,”$_reduce_439“,$Ruby25__reduce_439$307=function(val,_values,result){return this.builder.$string_compose(nil,val[”$“](0),nil)},$Ruby25__reduce_439$307.$$arity=3),Opal.def(self,”$_reduce_440“,$Ruby25__reduce_440$308=function(val,_values,result){return[val[”$“](0)]},$Ruby25__reduce_440$308.$$arity=3),Opal.def(self,”$_reduce_441“,$Ruby25__reduce_441$309=function(val,_values,result){return val[”$“](0)(val[”$“](1))},$Ruby25__reduce_441$309.$$arity=3),Opal.def(self,”$_reduce_442“,$Ruby25__reduce_442$310=function(val,_values,result){var string;return string=this.builder.$string_compose(val[”$“](0),val[”$“](1),val[”$“](2)),this.builder.$dedent_string(string,this.lexer.$dedent_level())},$Ruby25__reduce_442$310.$$arity=3),Opal.def(self,”$_reduce_443“,$Ruby25__reduce_443$311=function(val,_values,result){var string;return string=this.builder.$string(val[”$“](0)),this.builder.$dedent_string(string,this.lexer.$dedent_level())},$Ruby25__reduce_443$311.$$arity=3),Opal.def(self,”$_reduce_444“,$Ruby25__reduce_444$312=function(val,_values,result){return this.builder.$character(val[”$“](0))},$Ruby25__reduce_444$312.$$arity=3),Opal.def(self,”$_reduce_445“,$Ruby25__reduce_445$313=function(val,_values,result){var string;return string=this.builder.$xstring_compose(val[”$“](0),val[”$“](1),val[”$“](2)),this.builder.$dedent_string(string,this.lexer.$dedent_level())},$Ruby25__reduce_445$313.$$arity=3),Opal.def(self,”$_reduce_446“,$Ruby25__reduce_446$314=function(val,_values,result){var opts;return opts=this.builder.$regexp_options(val[”$“](3)),this.builder.$regexp_compose(val[”$“](0),val[”$“](1),val[”$“](2),opts)},$Ruby25__reduce_446$314.$$arity=3),Opal.def(self,”$_reduce_447“,$Ruby25__reduce_447$315=function(val,_values,result){return this.builder.$words_compose(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_447$315.$$arity=3),Opal.def(self,”$_reduce_448“,$Ruby25__reduce_448$316=function(val,_values,result){return[]},$Ruby25__reduce_448$316.$$arity=3),Opal.def(self,”$_reduce_449“,$Ruby25__reduce_449$317=function(val,_values,result){return val[”$“](0)(this.builder.$word(val[”$“](1)))},$Ruby25__reduce_449$317.$$arity=3),Opal.def(self,”$_reduce_450“,$Ruby25__reduce_450$318=function(val,_values,result){return[val[”$“](0)]},$Ruby25__reduce_450$318.$$arity=3),Opal.def(self,”$_reduce_451“,$Ruby25__reduce_451$319=function(val,_values,result){return val[”$“](0)(val[”$“](1))},$Ruby25__reduce_451$319.$$arity=3),Opal.def(self,”$_reduce_452“,$Ruby25__reduce_452$320=function(val,_values,result){return this.builder.$symbols_compose(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_452$320.$$arity=3),Opal.def(self,”$_reduce_453“,$Ruby25__reduce_453$321=function(val,_values,result){return[]},$Ruby25__reduce_453$321.$$arity=3),Opal.def(self,”$_reduce_454“,$Ruby25__reduce_454$322=function(val,_values,result){return val[”$“](0)(this.builder.$word(val[”$“](1)))},$Ruby25__reduce_454$322.$$arity=3),Opal.def(self,”$_reduce_455“,$Ruby25__reduce_455$323=function(val,_values,result){return this.builder.$words_compose(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_455$323.$$arity=3),Opal.def(self,”$_reduce_456“,$Ruby25__reduce_456$324=function(val,_values,result){return this.builder.$symbols_compose(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_456$324.$$arity=3),Opal.def(self,”$_reduce_457“,$Ruby25__reduce_457$325=function(val,_values,result){return[]},$Ruby25__reduce_457$325.$$arity=3),Opal.def(self,”$_reduce_458“,$Ruby25__reduce_458$326=function(val,_values,result){return val[”$“](0)(this.builder.$string_internal(val[”$“](1)))},$Ruby25__reduce_458$326.$$arity=3),Opal.def(self,”$_reduce_459“,$Ruby25__reduce_459$327=function(val,_values,result){return[]},$Ruby25__reduce_459$327.$$arity=3),Opal.def(self,”$_reduce_460“,$Ruby25__reduce_460$328=function(val,_values,result){return val[”$“](0)(this.builder.$symbol_internal(val[”$“](1)))},$Ruby25__reduce_460$328.$$arity=3),Opal.def(self,”$_reduce_461“,$Ruby25__reduce_461$329=function(val,_values,result){return[]},$Ruby25__reduce_461$329.$$arity=3),Opal.def(self,”$_reduce_462“,$Ruby25__reduce_462$330=function(val,_values,result){return val[”$“](0)(val[”$“](1))},$Ruby25__reduce_462$330.$$arity=3),Opal.def(self,”$_reduce_463“,$Ruby25__reduce_463$331=function(val,_values,result){return[]},$Ruby25__reduce_463$331.$$arity=3),Opal.def(self,”$_reduce_464“,$Ruby25__reduce_464$332=function(val,_values,result){return val[”$“](0)(val[”$“](1))},$Ruby25__reduce_464$332.$$arity=3),Opal.def(self,”$_reduce_465“,$Ruby25__reduce_465$333=function(val,_values,result){return[]},$Ruby25__reduce_465$333.$$arity=3),Opal.def(self,”$_reduce_466“,$Ruby25__reduce_466$334=function(val,_values,result){return val[”$“](0)(val[”$“](1))},$Ruby25__reduce_466$334.$$arity=3),Opal.def(self,”$_reduce_467“,$Ruby25__reduce_467$335=function(val,_values,result){return this.builder.$string_internal(val[”$“](0))},$Ruby25__reduce_467$335.$$arity=3),Opal.def(self,”$_reduce_468“,$Ruby25__reduce_468$336=function(val,_values,result){return val[”$“](1)},$Ruby25__reduce_468$336.$$arity=3),Opal.def(self,”$_reduce_469“,$Ruby25__reduce_469$337=function(val,_values,result){return this.lexer.$cmdarg().$push(!1),this.lexer.$cond().$push(!1),result},$Ruby25__reduce_469$337.$$arity=3),Opal.def(self,”$_reduce_470“,$Ruby25__reduce_470$338=function(val,_values,result){return this.lexer.$cmdarg().$pop(),this.lexer.$cond().$pop(),this.builder.$begin(val[”$“](0),val[”$“](2),val[”$“](3))},$Ruby25__reduce_470$338.$$arity=3),Opal.def(self,”$_reduce_471“,$Ruby25__reduce_471$339=function(val,_values,result){return this.builder.$gvar(val[”$“](0))},$Ruby25__reduce_471$339.$$arity=3),Opal.def(self,”$_reduce_472“,$Ruby25__reduce_472$340=function(val,_values,result){return this.builder.$ivar(val[”$“](0))},$Ruby25__reduce_472$340.$$arity=3),Opal.def(self,”$_reduce_473“,$Ruby25__reduce_473$341=function(val,_values,result){return this.builder.$cvar(val[”$“](0))},$Ruby25__reduce_473$341.$$arity=3),Opal.def(self,”$_reduce_475“,$Ruby25__reduce_475$342=function(val,_values,result){var $writer;return $writer=,$send(this.lexer,”state=“,Opal.to_a($writer)),$rb_minus($writer.length,1),this.builder.$symbol(val[”$“](0))},$Ruby25__reduce_475$342.$$arity=3),Opal.def(self,”$_reduce_476“,$Ruby25__reduce_476$343=function(val,_values,result){var $writer;return $writer=,$send(this.lexer,”state=“,Opal.to_a($writer)),$rb_minus($writer.length,1),this.builder.$symbol_compose(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_476$343.$$arity=3),Opal.def(self,”$_reduce_477“,$Ruby25__reduce_477$344=function(val,_values,result){return val[”$“](0)},$Ruby25__reduce_477$344.$$arity=3),Opal.def(self,”$_reduce_478“,$Ruby25__reduce_478$345=function(val,_values,result){return $truthy(this.builder(”negate“))?this.builder.$negate(val[”$“](0),val[”$“](1)):this.builder.$unary_num(val[”$“](0),val[”$“](1))},$Ruby25__reduce_478$345.$$arity=3),Opal.def(self,”$_reduce_479“,$Ruby25__reduce_479$346=function(val,_values,result){var $writer;return $writer=,$send(this.lexer,”state=“,Opal.to_a($writer)),$rb_minus($writer.length,1),this.builder.$integer(val[”$“](0))},$Ruby25__reduce_479$346.$$arity=3),Opal.def(self,”$_reduce_480“,$Ruby25__reduce_480$347=function(val,_values,result){var $writer;return $writer=,$send(this.lexer,”state=“,Opal.to_a($writer)),$rb_minus($writer.length,1),this.builder.$float(val[”$“](0))},$Ruby25__reduce_480$347.$$arity=3),Opal.def(self,”$_reduce_481“,$Ruby25__reduce_481$348=function(val,_values,result){var $writer;return $writer=,$send(this.lexer,”state=“,Opal.to_a($writer)),$rb_minus($writer.length,1),this.builder.$rational(val[”$“](0))},$Ruby25__reduce_481$348.$$arity=3),Opal.def(self,”$_reduce_482“,$Ruby25__reduce_482$349=function(val,_values,result){var $writer;return $writer=,$send(this.lexer,”state=“,Opal.to_a($writer)),$rb_minus($writer.length,1),this.builder.$complex(val[”$“](0))},$Ruby25__reduce_482$349.$$arity=3),Opal.def(self,”$_reduce_483“,$Ruby25__reduce_483$350=function(val,_values,result){return this.builder.$ident(val[”$“](0))},$Ruby25__reduce_483$350.$$arity=3),Opal.def(self,”$_reduce_484“,$Ruby25__reduce_484$351=function(val,_values,result){return this.builder.$ivar(val[”$“](0))},$Ruby25__reduce_484$351.$$arity=3),Opal.def(self,”$_reduce_485“,$Ruby25__reduce_485$352=function(val,_values,result){return this.builder.$gvar(val[”$“](0))},$Ruby25__reduce_485$352.$$arity=3),Opal.def(self,”$_reduce_486“,$Ruby25__reduce_486$353=function(val,_values,result){return this.builder.$const(val[”$“](0))},$Ruby25__reduce_486$353.$$arity=3),Opal.def(self,”$_reduce_487“,$Ruby25__reduce_487$354=function(val,_values,result){return this.builder.$cvar(val[”$“](0))},$Ruby25__reduce_487$354.$$arity=3),Opal.def(self,”$_reduce_488“,$Ruby25__reduce_488$355=function(val,_values,result){return this.builder.$nil(val[”$“](0))},$Ruby25__reduce_488$355.$$arity=3),Opal.def(self,”$_reduce_489“,$Ruby25__reduce_489$356=function(val,_values,result){return this.builder.$self(val[”$“](0))},$Ruby25__reduce_489$356.$$arity=3),Opal.def(self,”$_reduce_490“,$Ruby25__reduce_490$357=function(val,_values,result){return this.builder.$true(val[”$“](0))},$Ruby25__reduce_490$357.$$arity=3),Opal.def(self,”$_reduce_491“,$Ruby25__reduce_491$358=function(val,_values,result){return this.builder.$false(val[”$“](0))},$Ruby25__reduce_491$358.$$arity=3),Opal.def(self,”$_reduce_492“,$Ruby25__reduce_492$359=function(val,_values,result){return this.builder.$__FILE__(val[”$“](0))},$Ruby25__reduce_492$359.$$arity=3),Opal.def(self,”$_reduce_493“,$Ruby25__reduce_493$360=function(val,_values,result){return this.builder.$__LINE__(val[”$“](0))},$Ruby25__reduce_493$360.$$arity=3),Opal.def(self,”$_reduce_494“,$Ruby25__reduce_494$361=function(val,_values,result){return this.builder.$__ENCODING__(val[”$“](0))},$Ruby25__reduce_494$361.$$arity=3),Opal.def(self,”$_reduce_495“,$Ruby25__reduce_495$362=function(val,_values,result){return this.builder.$accessible(val[”$“](0))},$Ruby25__reduce_495$362.$$arity=3),Opal.def(self,”$_reduce_496“,$Ruby25__reduce_496$363=function(val,_values,result){return this.builder.$accessible(val[”$“](0))},$Ruby25__reduce_496$363.$$arity=3),Opal.def(self,”$_reduce_497“,$Ruby25__reduce_497$364=function(val,_values,result){return this.builder.$assignable(val[”$“](0))},$Ruby25__reduce_497$364.$$arity=3),Opal.def(self,”$_reduce_498“,$Ruby25__reduce_498$365=function(val,_values,result){return this.builder.$assignable(val[”$“](0))},$Ruby25__reduce_498$365.$$arity=3),Opal.def(self,”$_reduce_499“,$Ruby25__reduce_499$366=function(val,_values,result){return this.builder.$nth_ref(val[”$“](0))},$Ruby25__reduce_499$366.$$arity=3),Opal.def(self,”$_reduce_500“,$Ruby25__reduce_500$367=function(val,_values,result){return this.builder.$back_ref(val[”$“](0))},$Ruby25__reduce_500$367.$$arity=3),Opal.def(self,”$_reduce_501“,$Ruby25__reduce_501$368=function(val,_values,result){var $writer;return $writer=,$send(this.lexer,”state=“,Opal.to_a($writer)),$rb_minus($writer.length,1),result},$Ruby25__reduce_501$368.$$arity=3),Opal.def(self,”$_reduce_502“,$Ruby25__reduce_502$369=function(val,_values,result){return[val[”$“](0),val[”$“](2)]},$Ruby25__reduce_502$369.$$arity=3),Opal.def(self,”$_reduce_503“,$Ruby25__reduce_503$370=function(val,_values,result){return nil},$Ruby25__reduce_503$370.$$arity=3),Opal.def(self,”$_reduce_504“,$Ruby25__reduce_504$371=function(val,_values,result){var $writer;return result=this.builder.$args(val[”$“](0),val[”$“](1),val[”$“](2)),$writer=,$send(this.lexer,”state=“,Opal.to_a($writer)),$rb_minus($writer.length,1),result},$Ruby25__reduce_504$371.$$arity=3),Opal.def(self,”$_reduce_505“,$Ruby25__reduce_505$372=function(val,_values,result){var $writer;return result=this.lexer.$in_kwarg(),$writer=,$send(this.lexer,”in_kwarg=“,Opal.to_a($writer)),$rb_minus($writer.length,1),result},$Ruby25__reduce_505$372.$$arity=3),Opal.def(self,”$_reduce_506“,$Ruby25__reduce_506$373=function(val,_values,result){var $writer;return $writer=[val[”$“](0)],$send(this.lexer,”in_kwarg=“,Opal.to_a($writer)),$rb_minus($writer.length,1),this.builder.$args(nil,val[”$“](1),nil)},$Ruby25__reduce_506$373.$$arity=3),Opal.def(self,”$_reduce_507“,$Ruby25__reduce_507$374=function(val,_values,result){return val[”$“](0).$concat(val[”$“](2)).$concat(val[”$“](3))},$Ruby25__reduce_507$374.$$arity=3),Opal.def(self,”$_reduce_508“,$Ruby25__reduce_508$375=function(val,_values,result){return val[”$“](0).$concat(val[”$“](1))},$Ruby25__reduce_508$375.$$arity=3),Opal.def(self,”$_reduce_509“,$Ruby25__reduce_509$376=function(val,_values,result){return val[”$“](0).$concat(val[”$“](1))},$Ruby25__reduce_509$376.$$arity=3),Opal.def(self,”$_reduce_510“,$Ruby25__reduce_510$377=function(val,_values,result){return[val[”$“](0)]},$Ruby25__reduce_510$377.$$arity=3),Opal.def(self,”$_reduce_511“,$Ruby25__reduce_511$378=function(val,_values,result){return val[”$“](1)},$Ruby25__reduce_511$378.$$arity=3),Opal.def(self,”$_reduce_512“,$Ruby25__reduce_512$379=function(val,_values,result){return[]},$Ruby25__reduce_512$379.$$arity=3),Opal.def(self,”$_reduce_513“,$Ruby25__reduce_513$380=function(val,_values,result){return val[”$“](0).$concat(val[”$“](2)).$concat(val[”$“](4)).$concat(val[”$“](5))},$Ruby25__reduce_513$380.$$arity=3),Opal.def(self,”$_reduce_514“,$Ruby25__reduce_514$381=function(val,_values,result){return val[”$“](0).$concat(val[”$“](2)).$concat(val[”$“](4)).$concat(val[”$“](6)).$concat(val[”$“](7))},$Ruby25__reduce_514$381.$$arity=3),Opal.def(self,”$_reduce_515“,$Ruby25__reduce_515$382=function(val,_values,result){return val[”$“](0).$concat(val[”$“](2)).$concat(val[”$“](3))},$Ruby25__reduce_515$382.$$arity=3),Opal.def(self,”$_reduce_516“,$Ruby25__reduce_516$383=function(val,_values,result){return val[”$“](0).$concat(val[”$“](2)).$concat(val[”$“](4)).$concat(val[”$“](5))},$Ruby25__reduce_516$383.$$arity=3),Opal.def(self,”$_reduce_517“,$Ruby25__reduce_517$384=function(val,_values,result){return val[”$“](0).$concat(val[”$“](2)).$concat(val[”$“](3))},$Ruby25__reduce_517$384.$$arity=3),Opal.def(self,”$_reduce_518“,$Ruby25__reduce_518$385=function(val,_values,result){return val[”$“](0).$concat(val[”$“](2)).$concat(val[”$“](4)).$concat(val[”$“](5))},$Ruby25__reduce_518$385.$$arity=3),Opal.def(self,”$_reduce_519“,$Ruby25__reduce_519$386=function(val,_values,result){return val[”$“](0).$concat(val[”$“](1))},$Ruby25__reduce_519$386.$$arity=3),Opal.def(self,”$_reduce_520“,$Ruby25__reduce_520$387=function(val,_values,result){return val[”$“](0).$concat(val[”$“](2)).$concat(val[”$“](3))},$Ruby25__reduce_520$387.$$arity=3),Opal.def(self,”$_reduce_521“,$Ruby25__reduce_521$388=function(val,_values,result){return val[”$“](0).$concat(val[”$“](2)).$concat(val[”$“](4)).$concat(val[”$“](5))},$Ruby25__reduce_521$388.$$arity=3),Opal.def(self,”$_reduce_522“,$Ruby25__reduce_522$389=function(val,_values,result){return val[”$“](0).$concat(val[”$“](1))},$Ruby25__reduce_522$389.$$arity=3),Opal.def(self,”$_reduce_523“,$Ruby25__reduce_523$390=function(val,_values,result){return val[”$“](0).$concat(val[”$“](2)).$concat(val[”$“](3))},$Ruby25__reduce_523$390.$$arity=3),Opal.def(self,”$_reduce_524“,$Ruby25__reduce_524$391=function(val,_values,result){return val[”$“](0).$concat(val[”$“](1))},$Ruby25__reduce_524$391.$$arity=3),Opal.def(self,”$_reduce_525“,$Ruby25__reduce_525$392=function(val,_values,result){return val[”$“](0).$concat(val[”$“](2)).$concat(val[”$“](3))},$Ruby25__reduce_525$392.$$arity=3),Opal.def(self,”$_reduce_526“,$Ruby25__reduce_526$393=function(val,_values,result){return val[”$“](0)},$Ruby25__reduce_526$393.$$arity=3),Opal.def(self,”$_reduce_527“,$Ruby25__reduce_527$394=function(val,_values,result){return[]},$Ruby25__reduce_527$394.$$arity=3),Opal.def(self,”$_reduce_528“,$Ruby25__reduce_528$395=function(val,_values,result){return this.$diagnostic(”error“,”argument_const“,nil,val[”$“](0)),result},$Ruby25__reduce_528$395.$$arity=3),Opal.def(self,”$_reduce_529“,$Ruby25__reduce_529$396=function(val,_values,result){return this.$diagnostic(”error“,”argument_ivar“,nil,val[”$“](0)),result},$Ruby25__reduce_529$396.$$arity=3),Opal.def(self,”$_reduce_530“,$Ruby25__reduce_530$397=function(val,_values,result){return this.$diagnostic(”error“,”argument_gvar“,nil,val[”$“](0)),result},$Ruby25__reduce_530$397.$$arity=3),Opal.def(self,”$_reduce_531“,$Ruby25__reduce_531$398=function(val,_values,result){return this.$diagnostic(”error“,”argument_cvar“,nil,val[”$“](0)),result},$Ruby25__reduce_531$398.$$arity=3),Opal.def(self,”$_reduce_533“,$Ruby25__reduce_533$399=function(val,_values,result){return this.static_env.$declare(val[”$“](0)[”$“](0)),val[”$“](0)},$Ruby25__reduce_533$399.$$arity=3),Opal.def(self,”$_reduce_534“,$Ruby25__reduce_534$400=function(val,_values,result){return val[”$“](0)},$Ruby25__reduce_534$400.$$arity=3),Opal.def(self,”$_reduce_535“,$Ruby25__reduce_535$401=function(val,_values,result){return this.builder.$arg(val[”$“](0))},$Ruby25__reduce_535$401.$$arity=3),Opal.def(self,”$_reduce_536“,$Ruby25__reduce_536$402=function(val,_values,result){return this.builder.$multi_lhs(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_536$402.$$arity=3),Opal.def(self,”$_reduce_537“,$Ruby25__reduce_537$403=function(val,_values,result){return[val[”$“](0)]},$Ruby25__reduce_537$403.$$arity=3),Opal.def(self,”$_reduce_538“,$Ruby25__reduce_538$404=function(val,_values,result){return val[”$“](0)(val[”$“](2))},$Ruby25__reduce_538$404.$$arity=3),Opal.def(self,”$_reduce_539“,$Ruby25__reduce_539$405=function(val,_values,result){return this.$check_kwarg_name(val[”$“](0)),this.static_env.$declare(val[”$“](0)[”$“](0)),val[”$“](0)},$Ruby25__reduce_539$405.$$arity=3),Opal.def(self,”$_reduce_540“,$Ruby25__reduce_540$406=function(val,_values,result){return this.builder.$kwoptarg(val[”$“](0),val[”$“](1))},$Ruby25__reduce_540$406.$$arity=3),Opal.def(self,”$_reduce_541“,$Ruby25__reduce_541$407=function(val,_values,result){return this.builder.$kwarg(val[”$“](0))},$Ruby25__reduce_541$407.$$arity=3),Opal.def(self,”$_reduce_542“,$Ruby25__reduce_542$408=function(val,_values,result){return this.builder.$kwoptarg(val[”$“](0),val[”$“](1))},$Ruby25__reduce_542$408.$$arity=3),Opal.def(self,”$_reduce_543“,$Ruby25__reduce_543$409=function(val,_values,result){return this.builder.$kwarg(val[”$“](0))},$Ruby25__reduce_543$409.$$arity=3),Opal.def(self,”$_reduce_544“,$Ruby25__reduce_544$410=function(val,_values,result){return[val[”$“](0)]},$Ruby25__reduce_544$410.$$arity=3),Opal.def(self,”$_reduce_545“,$Ruby25__reduce_545$411=function(val,_values,result){return val[”$“](0)(val[”$“](2))},$Ruby25__reduce_545$411.$$arity=3),Opal.def(self,”$_reduce_546“,$Ruby25__reduce_546$412=function(val,_values,result){return[val[”$“](0)]},$Ruby25__reduce_546$412.$$arity=3),Opal.def(self,”$_reduce_547“,$Ruby25__reduce_547$413=function(val,_values,result){return val[”$“](0)(val[”$“](2))},$Ruby25__reduce_547$413.$$arity=3),Opal.def(self,”$_reduce_550“,$Ruby25__reduce_550$414=function(val,_values,result){return this.static_env.$declare(val[”$“](1)[”$“](0)),[this.builder.$kwrestarg(val[”$“](0),val[”$“](1))]},$Ruby25__reduce_550$414.$$arity=3),Opal.def(self,”$_reduce_551“,$Ruby25__reduce_551$415=function(val,_values,result){return[this.builder.$kwrestarg(val[”$“](0))]},$Ruby25__reduce_551$415.$$arity=3),Opal.def(self,”$_reduce_552“,$Ruby25__reduce_552$416=function(val,_values,result){return this.builder.$optarg(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_552$416.$$arity=3),Opal.def(self,”$_reduce_553“,$Ruby25__reduce_553$417=function(val,_values,result){return this.builder.$optarg(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_553$417.$$arity=3),Opal.def(self,”$_reduce_554“,$Ruby25__reduce_554$418=function(val,_values,result){return[val[”$“](0)]},$Ruby25__reduce_554$418.$$arity=3),Opal.def(self,”$_reduce_555“,$Ruby25__reduce_555$419=function(val,_values,result){return val[”$“](0)(val[”$“](2))},$Ruby25__reduce_555$419.$$arity=3),Opal.def(self,”$_reduce_556“,$Ruby25__reduce_556$420=function(val,_values,result){return[val[”$“](0)]},$Ruby25__reduce_556$420.$$arity=3),Opal.def(self,”$_reduce_557“,$Ruby25__reduce_557$421=function(val,_values,result){return val[”$“](0)(val[”$“](2))},$Ruby25__reduce_557$421.$$arity=3),Opal.def(self,”$_reduce_560“,$Ruby25__reduce_560$422=function(val,_values,result){return this.static_env.$declare(val[”$“](1)[”$“](0)),[this.builder.$restarg(val[”$“](0),val[”$“](1))]},$Ruby25__reduce_560$422.$$arity=3),Opal.def(self,”$_reduce_561“,$Ruby25__reduce_561$423=function(val,_values,result){return[this.builder.$restarg(val[”$“](0))]},$Ruby25__reduce_561$423.$$arity=3),Opal.def(self,”$_reduce_564“,$Ruby25__reduce_564$424=function(val,_values,result){return this.static_env.$declare(val[”$“](1)[”$“](0)),this.builder.$blockarg(val[”$“](0),val[”$“](1))},$Ruby25__reduce_564$424.$$arity=3),Opal.def(self,”$_reduce_565“,$Ruby25__reduce_565$425=function(val,_values,result){return[val[”$“](1)]},$Ruby25__reduce_565$425.$$arity=3),Opal.def(self,”$_reduce_566“,$Ruby25__reduce_566$426=function(val,_values,result){return[]},$Ruby25__reduce_566$426.$$arity=3),Opal.def(self,”$_reduce_568“,$Ruby25__reduce_568$427=function(val,_values,result){return val[”$“](1)},$Ruby25__reduce_568$427.$$arity=3),Opal.def(self,”$_reduce_569“,$Ruby25__reduce_569$428=function(val,_values,result){return[]},$Ruby25__reduce_569$428.$$arity=3),Opal.def(self,”$_reduce_571“,$Ruby25__reduce_571$429=function(val,_values,result){return[val[”$“](0)]},$Ruby25__reduce_571$429.$$arity=3),Opal.def(self,”$_reduce_572“,$Ruby25__reduce_572$430=function(val,_values,result){return val[”$“](0)(val[”$“](2))},$Ruby25__reduce_572$430.$$arity=3),Opal.def(self,”$_reduce_573“,$Ruby25__reduce_573$431=function(val,_values,result){return this.builder.$pair(val[”$“](0),val[”$“](1),val[”$“](2))},$Ruby25__reduce_573$431.$$arity=3),Opal.def(self,”$_reduce_574“,$Ruby25__reduce_574$432=function(val,_values,result){return this.builder.$pair_keyword(val[”$“](0),val[”$“](1))},$Ruby25__reduce_574$432.$$arity=3),Opal.def(self,”$_reduce_575“,$Ruby25__reduce_575$433=function(val,_values,result){return this.builder.$pair_quoted(val[”$“](0),val[”$“](1),val[”$“](2),val[”$“](3))},$Ruby25__reduce_575$433.$$arity=3),Opal.def(self,”$_reduce_576“,$Ruby25__reduce_576$434=function(val,_values,result){return this.builder.$kwsplat(val[”$“](0),val[”$“](1))},$Ruby25__reduce_576$434.$$arity=3),Opal.def(self,”$_reduce_589“,$Ruby25__reduce_589$435=function(val,_values,result){return[”dot“,val[”$“](0)[”$“](1)]},$Ruby25__reduce_589$435.$$arity=3),Opal.def(self,”$_reduce_590“,$Ruby25__reduce_590$436=function(val,_values,result){return[”anddot“,val[”$“](0)[”$“](1)]},$Ruby25__reduce_590$436.$$arity=3),Opal.def(self,”$_reduce_595“,$Ruby25__reduce_595$437=function(val,_values,result){return val[”$“](1)},$Ruby25__reduce_595$437.$$arity=3),Opal.def(self,”$_reduce_596“,$Ruby25__reduce_596$438=function(val,_values,result){return val[”$“](1)},$Ruby25__reduce_596$438.$$arity=3),Opal.def(self,”$_reduce_600“,$Ruby25__reduce_600$439=function(val,_values,result){return this.$yyerrok(),result},$Ruby25__reduce_600$439.$$arity=3),Opal.def(self,”$_reduce_604“,$Ruby25__reduce_604$440=function(val,_values,result){return nil},$Ruby25__reduce_604$440.$$arity=3),Opal.def(self,”$_reduce_none“,$Ruby25__reduce_none$441=function(val,_values,result){return val[”$“](0)},$Ruby25__reduce_none$441.$$arity=3)}($nesting,$$$($$($nesting,”Parser“),”Base“),$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],$$$=(Opal.nil,Opal.const_get_qualified),$module=(Opal.const_get_relative,Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$send=Opal.send,$hash2=Opal.hash2;return Opal.add_stubs(),self.$require(”opal/ast/node“),self.$require(”parser/ruby25“),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $Builder_n$1,$writer,lhs,rhs,self=$klass($base,$super,”Builder“);.concat($parent_nesting);$writer=,$send(self,”emit_lambda=“,Opal.to_a($writer)),rhs=1,”number“==typeof(lhs=$writer.length)&&”number“==typeof rhs||lhs(rhs),Opal.def(self,”$n“,$Builder_n$1=function(type,children,location){return $$$($$$($$$(”::“,”Opal“),”AST“),”Node“).$new(type,children,$hash2(,{location:location}))},$Builder_n$1.$$arity=3)}($nesting,$$$($$$($$$(”::“,”Parser“),”Builders“),”Default“),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){function $rb_plus(lhs,rhs){return”number“==typeof lhs&&”number“==typeof rhs?lhs+rhs:lhs(rhs)}function $rb_minus(lhs,rhs){return”number“==typeof lhs&&”number“==typeof rhs?lhs-rhs:lhs(rhs)}var self=Opal.top,$nesting=[],nil=Opal.nil,$$$=Opal.const_get_qualified,$$=Opal.const_get_relative,$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$truthy=Opal.truthy,$hash2=Opal.hash2,$send=Opal.send;return Opal.add_stubs([”$require“,”$new“,”$current_node“,”$loc“,”$+“,”$stmts_of“,”$begin_with_stmts“,”$nil?“,”$include?“,”$type“,”$children“,”$length“,”$===“,”$“,”$s“,”$attr_accessor“,”$current_node=“,”$-“,”$location=“,”$raise“]),self.$require(”parser“),self.$require(”opal/ast/node“),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $Base_s$9,$Base_s$10,$Base_prepend_to_body$11,$Base_append_to_body$12,$Base_stmts_of$13,$Base_begin_with_stmts$14,$Base_process$15,$Base_error$16,self=$klass($base,$super,”Base“),$nesting=.concat($parent_nesting);(function($base,$super,$parent_nesting){var $DummyLocation_node$eq$1,$DummyLocation_expression$2,$DummyLocation_begin_pos$3,$DummyLocation_end_pos$4,$DummyLocation_source$5,$DummyLocation_line$6,$DummyLocation_column$7,$DummyLocation_last_line$8,self=$klass($base,null,”DummyLocation“),$nesting=.concat($parent_nesting);Opal.def(self,”$node=“,$DummyLocation_node$eq$1=function($a){return Opal.slice.call(arguments,0,arguments.length),nil},$DummyLocation_node$eq$1.$$arity=-1),Opal.def(self,”$expression“,$DummyLocation_expression$2=function(){return this},$DummyLocation_expression$2.$$arity=0),Opal.def(self,”$begin_pos“,$DummyLocation_begin_pos$3=function(){return 0},$DummyLocation_begin_pos$3.$$arity=0),Opal.def(self,”$end_pos“,$DummyLocation_end_pos$4=function(){return 0},$DummyLocation_end_pos$4.$$arity=0),Opal.def(self,”$source“,$DummyLocation_source$5=function(){return”“},$DummyLocation_source$5.$$arity=0),Opal.def(self,”$line“,$DummyLocation_line$6=function(){return 0},$DummyLocation_line$6.$$arity=0),Opal.def(self,”$column“,$DummyLocation_column$7=function(){return 0},$DummyLocation_column$7.$$arity=0),Opal.def(self,”$last_line“,$DummyLocation_last_line$8=function(){return $$$($$($nesting,”Float“),”INFINITY“)},$DummyLocation_last_line$8.$$arity=0)})($nesting,0,$nesting),Opal.const_set($nesting,”DUMMY_LOCATION“,$$($nesting,”DummyLocation“).$new()),Opal.def(self,”$s“,$Base_s$9=function(type,$a){var children,loc,self=this;return children=Opal.slice.call(arguments,1,arguments.length),loc=$truthy(self.$current_node())?self.$current_node().$loc():$$($nesting,”DUMMY_LOCATION“),$$$($$$($$$(”::“,”Opal“),”AST“),”Node“).$new(type,children,$hash2(,{location:loc}))},$Base_s$9.$$arity=-2),Opal.defs(self,”$s“,$Base_s$10=function(type,$a){var children;return children=Opal.slice.call(arguments,1,arguments.length),$$$($$$($$$(”::“,”Opal“),”AST“),”Node“).$new(type,children,$hash2(,{location:$$($nesting,”DUMMY_LOCATION“)}))},$Base_s$10.$$arity=-2),Opal.alias(self,”on_iter“,”process_regular_node“),Opal.alias(self,”on_top“,”process_regular_node“),Opal.alias(self,”on_zsuper“,”process_regular_node“),Opal.alias(self,”on_jscall“,”on_send“),Opal.alias(self,”on_jsattr“,”process_regular_node“),Opal.alias(self,”on_jsattrasgn“,”process_regular_node“),Opal.alias(self,”on_kwsplat“,”process_regular_node“),Opal.def(self,”$prepend_to_body“,$Base_prepend_to_body$11=function(body,node){var stmts;return stmts=$rb_plus(this.$stmts_of(node),this.$stmts_of(body)),this.$begin_with_stmts(stmts)},$Base_prepend_to_body$11.$$arity=2),Opal.def(self,”$append_to_body“,$Base_append_to_body$12=function(body,node){var stmts;return stmts=$rb_plus(this.$stmts_of(body),this.$stmts_of(node)),this.$begin_with_stmts(stmts)},$Base_append_to_body$12.$$arity=2),Opal.def(self,”$stmts_of“,$Base_stmts_of$13=function(node){return $truthy(node())?[]:$truthy([”$include?“](node.$type()))?node.$children():},$Base_stmts_of$13.$$arity=1),Opal.def(self,”$begin_with_stmts“,$Base_begin_with_stmts$14=function(stmts){var self=this,$case=nil;return $case=stmts.$length(),(0)($case)?nil:1($case)?stmts[”$“](0):$send(self,”s“,.concat(Opal.to_a(stmts)))},$Base_begin_with_stmts$14.$$arity=1),self.$attr_accessor(”current_node“),Opal.def(self,”$process“,$Base_process$15=function(node){var $zuper_ii,$iter=$Base_process$15.$$p,self=this,$writer=nil,$zuper=nil,$zuper_i=nil;for($iter&&($Base_process$15.$$p=null),$zuper_i=0,$zuper_ii=arguments.length,$zuper=new Array($zuper_ii);$zuper_i<$zuper_ii;$zuper_i++)$zuper=arguments;return function(){try{return $writer=,$send(self,”current_node=“,Opal.to_a($writer)),$writer,$send(self,Opal.find_super_dispatcher(self,”process“,$Base_process$15,!1),$zuper,$iter)}finally{$writer=,$send(self,”current_node=“,Opal.to_a($writer)),$writer}}()},$Base_process$15.$$arity=1),Opal.def(self,”$error“,$Base_error$16=function(msg){var error,$writer=nil;return error=$$$($$$(”::“,”Opal“),”RewritingError“).$new(msg),$truthy(this.$current_node())&&($writer=,$send(error,”location=“,Opal.to_a($writer)),$writer),this.$raise(error)},$Base_error$16.$$arity=1)}($nesting,$$$($$$($$$(”::“,”Parser“),”AST“),”Processor“),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$truthy=Opal.truthy;return Opal.add_stubs(),self.$require(”opal/rewriters/base“),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $OpalEngineCheck_on_if$1,$OpalEngineCheck_skip_check_present$ques$2,$OpalEngineCheck_skip_check_present_not$ques$3,self=$klass($base,$super,”OpalEngineCheck“),$nesting=.concat($parent_nesting);Opal.def(self,”$on_if“,$OpalEngineCheck_on_if$1=function(node){var $a,test,true_body=nil,false_body=nil;return test=null==($a=[].concat(Opal.to_a(node.$children())))?nil:$a,true_body=null==$a?nil:$a,false_body=null==$a?nil:$a,$truthy(this(test))&&(false_body=this.$s(”nil“)),$truthy(this(test))&&(true_body=this.$s(”nil“)),node.$updated(nil,this.$process_all())},$OpalEngineCheck_on_if$1.$$arity=1),Opal.def(self,”$skip_check_present?“,$OpalEngineCheck_skip_check_present$ques$2=function(test){var $a;return $truthy($a=test($$($nesting,”RUBY_ENGINE_CHECK“)))?$a:test($$($nesting,”RUBY_PLATFORM_CHECK“))},$OpalEngineCheck_skip_check_present$ques$2.$$arity=1),Opal.def(self,”$skip_check_present_not?“,$OpalEngineCheck_skip_check_present_not$ques$3=function(test){var $a;return $truthy($a=test($$($nesting,”RUBY_ENGINE_CHECK_NOT“)))?$a:test($$($nesting,”RUBY_PLATFORM_CHECK_NOT“))},$OpalEngineCheck_skip_check_present_not$ques$3.$$arity=1),Opal.const_set($nesting,”RUBY_ENGINE_CHECK“,self.$s(”send“,self.$s(”const“,nil,”RUBY_ENGINE“),”==“,self.$s(”str“,”opal“))),Opal.const_set($nesting,”RUBY_ENGINE_CHECK_NOT“,self.$s(”send“,self.$s(”const“,nil,”RUBY_ENGINE“),”!=“,self.$s(”str“,”opal“))),Opal.const_set($nesting,”RUBY_PLATFORM_CHECK“,self.$s(”send“,self.$s(”const“,nil,”RUBY_PLATFORM“),”==“,self.$s(”str“,”opal“))),Opal.const_set($nesting,”RUBY_PLATFORM_CHECK_NOT“,self.$s(”send“,self.$s(”const“,nil,”RUBY_PLATFORM“),”!=“,self.$s(”str“,”opal“)))}($nesting,$$($nesting,”Base“),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){function $rb_plus(lhs,rhs){return”number“==typeof lhs&&”number“==typeof rhs?lhs+rhs:lhs(rhs)}var self=Opal.top,$nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$truthy=Opal.truthy,$send=Opal.send;return Opal.add_stubs(),self.$require(”opal/rewriters/base“),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $ForRewriter_reset_tmp_counter$excl$1,$ForRewriter_next_tmp$2,$ForRewriter_on_for$3,self=$klass($base,$super,”ForRewriter“),$nesting=.concat($parent_nesting);Opal.defs(self,”$reset_tmp_counter!“,$ForRewriter_reset_tmp_counter$excl$1=function(){return this.counter=0},$ForRewriter_reset_tmp_counter$excl$1.$$arity=0),Opal.defs(self,”$next_tmp“,$ForRewriter_next_tmp$2=function(){var $a;return null==this.counter&&(this.counter=nil),this.counter=$truthy($a=this.counter)?$a:0,this.counter=$rb_plus(this.counter,1),”$for_tmp“+this.counter},$ForRewriter_next_tmp$2.$$arity=0),Opal.def(self,”$on_for“,$ForRewriter_on_for$3=function(node){var $a,$$4,iterating_value,iterating_lvars,lvars_declared_in_body,outer_assigns,tmp_loop_variable,get_tmp_loop_variable,self=this,loop_variable=nil,loop_body=nil,loop_variable_assignment=nil,$case=nil;return $a=[].concat(Opal.to_a(node)),loop_variable=null==$a?nil:$a,iterating_value=null==$a?nil:$a,loop_body=null==$a?nil:$a,iterating_lvars=$$($nesting,”LocalVariableAssigns“).$find(loop_variable),lvars_declared_in_body=$$($nesting,”LocalVariableAssigns“).$find(loop_body),outer_assigns=$send($rb_plus(iterating_lvars,lvars_declared_in_body),”map“,[],(($$4=function(lvar_name){var self=$$4.$$s||this;return null==lvar_name&&(lvar_name=nil),self.$s(”lvdeclare“,lvar_name)}).$$s=self,$$4.$$arity=1,$$4)),tmp_loop_variable=self.$class().$next_tmp(),get_tmp_loop_variable=self.$s(”js_tmp“,tmp_loop_variable),$case=loop_variable.$type(),loop_variable_assignment=”mlhs“($case)?self.$s(”masgn“,loop_variable,get_tmp_loop_variable):loop_variable(get_tmp_loop_variable),loop_body=self.$prepend_to_body(loop_body,loop_variable_assignment),node=self.$s(”send“,iterating_value,”each“,self.$s(”iter“,self.$s(”args“,self.$s(”arg“,tmp_loop_variable)),loop_body)),$send(self,”s“,.concat(Opal.to_a(outer_assigns)).concat())},$ForRewriter_on_for$3.$$arity=1),function($base,$super,$parent_nesting){var $LocalVariableAssigns_find$5,$LocalVariableAssigns_initialize$6,$LocalVariableAssigns_on_lvasgn$7,self=$klass($base,$super,”LocalVariableAssigns“),$nesting=.concat($parent_nesting);self.$attr_reader(”result“),Opal.defs(self,”$find“,$LocalVariableAssigns_find$5=function(node){var processor=nil;return(processor=this.$new()).$process(node),processor.$result().$to_a()},$LocalVariableAssigns_find$5.$$arity=1),Opal.def(self,”$initialize“,$LocalVariableAssigns_initialize$6=function(){return this.result=$$($nesting,”Set“).$new()},$LocalVariableAssigns_initialize$6.$$arity=0),Opal.def(self,”$on_lvasgn“,$LocalVariableAssigns_on_lvasgn$7=function(node){var $a,name,$zuper_ii,$iter=$LocalVariableAssigns_on_lvasgn$7.$$p,$zuper=nil,$zuper_i=nil;for($iter&&($LocalVariableAssigns_on_lvasgn$7.$$p=null),$zuper_i=0,$zuper_ii=arguments.length,$zuper=new Array($zuper_ii);$zuper_i<$zuper_ii;$zuper_i++)$zuper=arguments;return name=null==($a=[].concat(Opal.to_a(node)))?nil:$a,null==$a?nil:$a,this.$result()(name),$send(this,Opal.find_super_dispatcher(this,”on_lvasgn“,$LocalVariableAssigns_on_lvasgn$7,!1),$zuper,$iter)},$LocalVariableAssigns_on_lvasgn$7.$$arity=1)}($nesting,$$($nesting,”Base“),$nesting)}($nesting,$$($nesting,”Base“),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$slice=(Opal.breaker,Opal.slice),$module=Opal.module,$klass=Opal.klass,$truthy=Opal.truthy,$send=Opal.send;return Opal.add_stubs(),self.$require(”opal/rewriters/base“),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $ExplicitWriterReturn_initialize$1,$ExplicitWriterReturn_on_send$2,$ExplicitWriterReturn_on_masgn$3,self=$klass($base,$super,”ExplicitWriterReturn“),$nesting=.concat($parent_nesting);self.$$prototype.in_masgn=nil,Opal.def(self,”$initialize“,$ExplicitWriterReturn_initialize$1=function(){return this.in_masgn=!1},$ExplicitWriterReturn_initialize$1.$$arity=0),Opal.const_set($nesting,”TMP_NAME“,”$writer“),Opal.const_set($nesting,”GET_ARGS_NODE“,self.$s(”lvar“,$$($nesting,”TMP_NAME“))),Opal.const_set($nesting,”RETURN_ARGS_NODE“,self.$s(”jsattr“,$$($nesting,”GET_ARGS_NODE“),self.$s(”send“,self.$s(”jsattr“,$$($nesting,”GET_ARGS_NODE“),self.$s(”str“,”length“)),”-“,self.$s(”int“,1)))),Opal.def(self,”$on_send“,$ExplicitWriterReturn_on_send$2=function(node){var $a,recv,args,$zuper_ii,$iter=$ExplicitWriterReturn_on_send$2.$$p,method_name=nil,set_args_node=nil,$zuper=nil,$zuper_i=nil;for($iter&&($ExplicitWriterReturn_on_send$2.$$p=null),$zuper_i=0,$zuper_ii=arguments.length,$zuper=new Array($zuper_ii);$zuper_i<$zuper_ii;$zuper_i++)$zuper=arguments;return $truthy(this.in_masgn)?$send(this,Opal.find_super_dispatcher(this,”on_send“,$ExplicitWriterReturn_on_send$2,!1),$zuper,$iter):(recv=null==($a=[].concat(Opal.to_a(node)))?nil:$a,method_name=null==$a?nil:$a,args=$slice.call($a,2),$truthy($truthy($a=method_name.$to_s()(new RegExp($$($nesting,”REGEXP_START“)+”\w+=“+$$($nesting,”REGEXP_END“))))?$a:method_name.$to_s()(”[]=“))?(set_args_node=this.$s(”lvasgn“,$$($nesting,”TMP_NAME“),$send(this,”s“,.concat(Opal.to_a(this.$process_all(args))))),this.$s(”begin“,set_args_node,node.$updated(nil,),$$($nesting,”RETURN_ARGS_NODE“))):$send(this,Opal.find_super_dispatcher(this,”on_send“,$ExplicitWriterReturn_on_send$2,!1),$zuper,$iter))},$ExplicitWriterReturn_on_send$2.$$arity=1),Opal.def(self,”$on_masgn“,$ExplicitWriterReturn_on_masgn$3=function(node){var result,$zuper_ii,$iter=$ExplicitWriterReturn_on_masgn$3.$$p,$zuper=nil,$zuper_i=nil;for($iter&&($ExplicitWriterReturn_on_masgn$3.$$p=null),$zuper_i=0,$zuper_ii=arguments.length,$zuper=new Array($zuper_ii);$zuper_i<$zuper_ii;$zuper_i++)$zuper=arguments;return this.in_masgn=!0,result=$send(this,Opal.find_super_dispatcher(this,”on_masgn“,$ExplicitWriterReturn_on_masgn$3,!1),$zuper,$iter),this.in_masgn=!1,result},$ExplicitWriterReturn_on_masgn$3.$$arity=1)}($nesting,$$($nesting,”Base“),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){Opal.top;var $nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module);return Opal.add_stubs(),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);Opal.const_set($nesting,”REGEXP_START“,$$($nesting,”RUBY_ENGINE“)(”opal“)?”^“:nil),Opal.const_set($nesting,”REGEXP_END“,$$($nesting,”RUBY_ENGINE“)(”opal“)?”$“:nil),Opal.const_set($nesting,”FORBIDDEN_STARTING_IDENTIFIER_CHARS“,”\u0001-\u002F\u003A-\u0040\u005B-\u005E\u0060\u007B-\u007F“),Opal.const_set($nesting,”FORBIDDEN_ENDING_IDENTIFIER_CHARS“,”\u0001-\u0020\u0022-\u002F\u003A-\u003E\u0040\u005B-\u005E\u0060\u007B-\u007F“),Opal.const_set($nesting,”INLINE_IDENTIFIER_REGEXP“,$$($nesting,”Regexp“).$new(”*[^“+$$($nesting,”FORBIDDEN_ENDING_IDENTIFIER_CHARS“)+”]“)),Opal.const_set($nesting,”FORBIDDEN_CONST_NAME_CHARS“,”\u0001-\u0020\u0021-\u002F\u003B-\u003F\u0040\u005B-\u005E\u0060\u007B-\u007F“),Opal.const_set($nesting,”CONST_NAME_REGEXP“,$$($nesting,”Regexp“).$new($$($nesting,”REGEXP_START“)+”(::)?[^“+$$($nesting,”FORBIDDEN_CONST_NAME_CHARS“)+”]*“+$$($nesting,”REGEXP_END“)))}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$truthy=Opal.truthy,$range=Opal.range,$send=Opal.send,$hash2=Opal.hash2;return Opal.add_stubs([”$require“,”$=~“,”$!“,”$valid_name?“,”$class“,”$to_sym“,”$valid_ivar_name?“,”$“,”$to_s“,”$updated“,”$fix_var_name“,”$fix_ivar_name“]),self.$require(”opal/rewriters/base“),self.$require(”opal/regexp_anchors“),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $JsReservedWords_valid_name$ques$1,$JsReservedWords_valid_ivar_name$ques$2,$JsReservedWords_fix_var_name$3,$JsReservedWords_fix_ivar_name$4,$JsReservedWords_on_lvar$5,$JsReservedWords_on_lvasgn$6,$JsReservedWords_on_ivar$7,$JsReservedWords_on_ivasgn$8,$JsReservedWords_on_restarg$9,$JsReservedWords_on_argument$10,self=$klass($base,$super,”JsReservedWords“),$nesting=.concat($parent_nesting);Opal.const_set($nesting,”ES51_RESERVED_WORD“,new RegExp($$($nesting,”REGEXP_START“)+”(?:do|if|in|for|let|new|try|var|case|else|enum|eval|false|null|this|true|void|with|break|catch|class|const|super|throw|while|yield|delete|export|import|public|return|static|switch|typeof|default|extends|finally|package|private|continue|debugger|function|arguments|interface|protected|implements|instanceof)“+$$($nesting,”REGEXP_END“))),Opal.const_set($nesting,”ES3_RESERVED_WORD_EXCLUSIVE“,new RegExp($$($nesting,”REGEXP_START“)+”(?:int|byte|char|goto|long|final|float|short|double|native|throws|boolean|abstract|volatile|transient|synchronized)“+$$($nesting,”REGEXP_END“))),Opal.const_set($nesting,”PROTO_SPECIAL_PROPS“,new RegExp($$($nesting,”REGEXP_START“)+”(?:constructor|displayName|__proto__|__parent__|__noSuchMethod__|__count__)“+$$($nesting,”REGEXP_END“))),Opal.const_set($nesting,”PROTO_SPECIAL_METHODS“,new RegExp($$($nesting,”REGEXP_START“)+”(?:hasOwnProperty|valueOf)“+$$($nesting,”REGEXP_END“))),Opal.const_set($nesting,”IMMUTABLE_PROPS“,new RegExp($$($nesting,”REGEXP_START“)+”(?:NaN|Infinity|undefined)“+$$($nesting,”REGEXP_END“))),Opal.const_set($nesting,”BASIC_IDENTIFIER_RULES“,new RegExp($$($nesting,”REGEXP_START“)+”[$_a-z\d]*“+$$($nesting,”REGEXP_END“),”i“)),Opal.const_set($nesting,”RESERVED_FUNCTION_NAMES“,new RegExp($$($nesting,”REGEXP_START“)+”(?:Array)“+$$($nesting,”REGEXP_END“))),Opal.defs(self,”$valid_name?“,$JsReservedWords_valid_name$ques$1=function(name){var $a,$b,$c;return $truthy($a=$$($nesting,”BASIC_IDENTIFIER_RULES“)(name))?($truthy($b=$truthy($c=$$($nesting,”ES51_RESERVED_WORD“)(name))?$c:$$($nesting,”ES3_RESERVED_WORD_EXCLUSIVE“)(name))?$b:$$($nesting,”IMMUTABLE_PROPS“)(name))():$a},$JsReservedWords_valid_name$ques$1.$$arity=1),Opal.defs(self,”$valid_ivar_name?“,$JsReservedWords_valid_ivar_name$ques$2=function(name){var $a;return($truthy($a=$$($nesting,”PROTO_SPECIAL_PROPS“)(name))?$a:$$($nesting,”PROTO_SPECIAL_METHODS“)(name))()},$JsReservedWords_valid_ivar_name$ques$2.$$arity=1),Opal.def(self,”$fix_var_name“,$JsReservedWords_fix_var_name$3=function(name){return $truthy(this.$class()(name))?name:(name+”$“).$to_sym()},$JsReservedWords_fix_var_name$3.$$arity=1),Opal.def(self,”$fix_ivar_name“,$JsReservedWords_fix_ivar_name$4=function(name){return $truthy(this.$class()(name.$to_s()[”$“]($range(1,-1,!1))))?name:(name+”$“).$to_sym()},$JsReservedWords_fix_ivar_name$4.$$arity=1),Opal.def(self,”$on_lvar“,$JsReservedWords_on_lvar$5=function(node){var $a,name,$iter=$JsReservedWords_on_lvar$5.$$p;return $iter&&($JsReservedWords_on_lvar$5.$$p=null),name=null==($a=[].concat(Opal.to_a(node)))?nil:$a,null==$a?nil:$a,node=node.$updated(nil,),$send(this,Opal.find_super_dispatcher(this,”on_lvar“,$JsReservedWords_on_lvar$5,!1),,null)},$JsReservedWords_on_lvar$5.$$arity=1),Opal.def(self,”$on_lvasgn“,$JsReservedWords_on_lvasgn$6=function(node){var $a,name,value,$iter=$JsReservedWords_on_lvasgn$6.$$p,self=this;return $iter&&($JsReservedWords_on_lvasgn$6.$$p=null),$a=[].concat(Opal.to_a(node)),name=null==$a?nil:$a,value=null==$a?nil:$a,node=$truthy(value)?node.$updated(nil,):node.$updated(nil,),$send(self,Opal.find_super_dispatcher(self,”on_lvasgn“,$JsReservedWords_on_lvasgn$6,!1),,null)},$JsReservedWords_on_lvasgn$6.$$arity=1),Opal.def(self,”$on_ivar“,$JsReservedWords_on_ivar$7=function(node){var $a,name,$iter=$JsReservedWords_on_ivar$7.$$p;return $iter&&($JsReservedWords_on_ivar$7.$$p=null),name=null==($a=[].concat(Opal.to_a(node)))?nil:$a,null==$a?nil:$a,node=node.$updated(nil,),$send(this,Opal.find_super_dispatcher(this,”on_ivar“,$JsReservedWords_on_ivar$7,!1),,null)},$JsReservedWords_on_ivar$7.$$arity=1),Opal.def(self,”$on_ivasgn“,$JsReservedWords_on_ivasgn$8=function(node){var $a,name,value,$iter=$JsReservedWords_on_ivasgn$8.$$p,self=this;return $iter&&($JsReservedWords_on_ivasgn$8.$$p=null),$a=[].concat(Opal.to_a(node)),name=null==$a?nil:$a,value=null==$a?nil:$a,node=$truthy(value)?node.$updated(nil,):node.$updated(nil,),$send(self,Opal.find_super_dispatcher(self,”on_ivasgn“,$JsReservedWords_on_ivasgn$8,!1),,null)},$JsReservedWords_on_ivasgn$8.$$arity=1),Opal.def(self,”$on_restarg“,$JsReservedWords_on_restarg$9=function(node){var $a,name;return name=null==($a=[].concat(Opal.to_a(node)))?nil:$a,null==$a?nil:$a,$truthy(name)&&(node=node.$updated(nil,,$hash2(,{meta:$hash2(,{arg_name:name})}))),node},$JsReservedWords_on_restarg$9.$$arity=1),Opal.def(self,”$on_argument“,$JsReservedWords_on_argument$10=function(node){var $a,name,value,fixed_name,new_children,$iter=$JsReservedWords_on_argument$10.$$p;return $iter&&($JsReservedWords_on_argument$10.$$p=null),node=$send(this,Opal.find_super_dispatcher(this,”on_argument“,$JsReservedWords_on_argument$10,!1),,null),name=null==($a=[].concat(Opal.to_a(node)))?nil:$a,value=null==$a?nil:$a,fixed_name=this.$fix_var_name(name),new_children=$truthy(value)?:[fixed_name],node.$updated(nil,new_children,$hash2(,{meta:$hash2(,{arg_name:name})}))},$JsReservedWords_on_argument$10.$$arity=1)}($nesting,$$($nesting,”Base“),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$send=Opal.send;return Opal.add_stubs(),self.$require(”opal/rewriters/base“),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $BlockToIter_on_block$1,self=$klass($base,$super,”BlockToIter“);.concat($parent_nesting);Opal.def(self,”$on_block“,$BlockToIter_on_block$1=function(node){var $a,args,body,iter_node,$zuper_ii,lhs,rhs,$iter=$BlockToIter_on_block$1.$$p,recvr=nil,$zuper=nil,$zuper_i=nil;for($iter&&($BlockToIter_on_block$1.$$p=null),$zuper_i=0,$zuper_ii=arguments.length,$zuper=new Array($zuper_ii);$zuper_i<$zuper_ii;$zuper_i++)$zuper=arguments;return recvr=null==($a=[].concat(Opal.to_a($send(this,Opal.find_super_dispatcher(this,”on_block“,$BlockToIter_on_block$1,!1),$zuper,$iter))))?nil:$a,args=null==$a?nil:$a,body=null==$a?nil:$a,iter_node=this.$s(”iter“,args,body),recvr.$updated(nil,(lhs=recvr.$children(),rhs=,”number“==typeof lhs&&”number“==typeof rhs?lhs+rhs:lhs(rhs)))},$BlockToIter_on_block$1.$$arity=1)}($nesting,$$($nesting,”Base“),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$slice=(Opal.breaker,Opal.slice),$module=Opal.module,$klass=Opal.klass,$truthy=Opal.truthy,$send=Opal.send;return Opal.add_stubs(),self.$require(”opal/rewriters/base“),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $DotJsSyntax_on_send$1,$DotJsSyntax_to_native_js_call$2,$DotJsSyntax_to_js_attr_call$3,$DotJsSyntax_to_js_attr_assign_call$4,self=$klass($base,$super,”DotJsSyntax“);.concat($parent_nesting);Opal.def(self,”$on_send“,$DotJsSyntax_on_send$1=function(node){var $a,meth,$zuper_ii,$iter=$DotJsSyntax_on_send$1.$$p,recv=nil,args=nil,recv_of_recv=nil,meth_of_recv=nil,$case=nil,property=nil,value=nil,$zuper=nil,$zuper_i=nil;for($iter&&($DotJsSyntax_on_send$1.$$p=null),$zuper_i=0,$zuper_ii=arguments.length,$zuper=new Array($zuper_ii);$zuper_i<$zuper_ii;$zuper_i++)$zuper=arguments;return recv=null==($a=[].concat(Opal.to_a(node)))?nil:$a,meth=null==$a?nil:$a,args=$slice.call($a,2),$truthy($truthy($a=recv)?recv.$type()(”send“):$a)?(recv_of_recv=null==($a=[].concat(Opal.to_a(recv)))?nil:$a,meth_of_recv=null==$a?nil:$a,null==$a?nil:$a,meth_of_recv(”JS“)?(node=”[]“($case=meth)?($truthy(args.$size()(1))&&this.$error(”.JS syntax supports only one argument“),property=args.$first(),this.$to_js_attr_call(recv_of_recv,property)):”[]=“($case)?($truthy(args.$size()(2))&&this.$error(”.JS= syntax supports only two arguments“),property=null==($a=[].concat(Opal.to_a(args)))?nil:$a,value=null==$a?nil:$a,this.$to_js_attr_assign_call(recv_of_recv,property,value)):this.$to_native_js_call(recv_of_recv,meth,args),$send(this,Opal.find_super_dispatcher(this,”on_send“,$DotJsSyntax_on_send$1,!1),,null)):$send(this,Opal.find_super_dispatcher(this,”on_send“,$DotJsSyntax_on_send$1,!1),$zuper,$iter)):$send(this,Opal.find_super_dispatcher(this,”on_send“,$DotJsSyntax_on_send$1,!1),$zuper,$iter)},$DotJsSyntax_on_send$1.$$arity=1),Opal.def(self,”$to_native_js_call“,$DotJsSyntax_to_native_js_call$2=function(recv,meth,args){return $send(this,”s“,.concat(Opal.to_a(args)))},$DotJsSyntax_to_native_js_call$2.$$arity=3),Opal.def(self,”$to_js_attr_call“,$DotJsSyntax_to_js_attr_call$3=function(recv,property){return this.$s(”jsattr“,recv,property)},$DotJsSyntax_to_js_attr_call$3.$$arity=2),Opal.def(self,”$to_js_attr_assign_call“,$DotJsSyntax_to_js_attr_assign_call$4=function(recv,property,value){return this.$s(”jsattrasgn“,recv,property,value)},$DotJsSyntax_to_js_attr_assign_call$4.$$arity=3)}($nesting,$$($nesting,”Base“),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$slice=(Opal.breaker,Opal.slice),$module=Opal.module,$klass=Opal.klass,$truthy=Opal.truthy,$lambda=Opal.lambda,$hash2=Opal.hash2,$send=Opal.send;return Opal.add_stubs([”$require“,”$+“,”$updated“,”$s“,”$==“,”$“,”$type“,”$new_temp“,”$freeze“,”$call“,”$fetch“,”$error“,”$process“,”$include?“]),self.$require(”opal/rewriters/base“),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $LogicalOperatorAssignment_reset_tmp_counter$excl$1,$LogicalOperatorAssignment_new_temp$2,$LogicalOperatorAssignment$3,$LogicalOperatorAssignment_on_or_asgn$7,$LogicalOperatorAssignment_on_and_asgn$9,$LogicalOperatorAssignment_on_defined$ques$11,self=$klass($base,$super,”LogicalOperatorAssignment“),$nesting=.concat($parent_nesting);Opal.defs(self,”$reset_tmp_counter!“,$LogicalOperatorAssignment_reset_tmp_counter$excl$1=function(){return Opal.class_variable_set($nesting,”@@counter“,0)},$LogicalOperatorAssignment_reset_tmp_counter$excl$1.$$arity=0),Opal.defs(self,”$new_temp“,$LogicalOperatorAssignment_new_temp$2=function(){var $a,$b,lhs,rhs;return Opal.class_variable_set($nesting,”@@counter“,$truthy($a=null==($b=$nesting.$$cvars)?nil:$b)?$a:0),Opal.class_variable_set($nesting,”@@counter“,(lhs=null==($a=$nesting.$$cvars)?nil:$a,rhs=1,”number“==typeof lhs&&”number“==typeof rhs?lhs+rhs:lhs(rhs))),”$logical_op_recvr_tmp_“+(null==($a=$nesting.$$cvars)?nil:$a)},$LogicalOperatorAssignment_new_temp$2.$$arity=0),Opal.const_set($nesting,”GET_SET“,$lambda((($LogicalOperatorAssignment$3=function(get_type,set_type){var $$4,self=$LogicalOperatorAssignment$3.$$s||this;return null==get_type&&(get_type=nil),null==set_type&&(set_type=nil),$lambda((($$4=function(lhs,rhs,root_type){var get_node,self=$$4.$$s||this,condition_node=nil,defined_node=nil;return null==lhs&&(lhs=nil),null==rhs&&(rhs=nil),null==root_type&&(root_type=nil),get_node=lhs.$updated(get_type),condition_node=self.$s(root_type,get_node,rhs),$truthy(get_type(”const“)?root_type(”or“):get_type(”const“))&&(defined_node=self.$s(”defined?“,get_node),condition_node=self.$s(”if“,defined_node,self.$s(”begin“,condition_node),rhs)),lhs.$updated(set_type,[].concat(Opal.to_a(lhs)).concat())}).$$s=self,$$4.$$arity=3,$$4))}).$$s=self,$LogicalOperatorAssignment$3.$$arity=2,$LogicalOperatorAssignment$3))),Opal.const_set($nesting,”LocalVariableHandler“,$$($nesting,”GET_SET“)[”$“](”lvar“,”lvasgn“)),Opal.const_set($nesting,”InstanceVariableHandler“,$$($nesting,”GET_SET“)[”$“](”ivar“,”ivasgn“)),Opal.const_set($nesting,”ConstantHandler“,$$($nesting,”GET_SET“)[”$“](”const“,”casgn“)),Opal.const_set($nesting,”GlobalVariableHandler“,$$($nesting,”GET_SET“)[”$“](”gvar“,”gvasgn“)),Opal.const_set($nesting,”ClassVariableHandler“,$$($nesting,”GET_SET“)[”$“](”cvar“,”cvasgn“)),function($base,$super,$parent_nesting){var $SendHandler_call$5,self=$klass($base,$super,”SendHandler“);.concat($parent_nesting);Opal.defs(self,”$call“,$SendHandler_call$5=function(lhs,rhs,root_type){var $a,args,call_reader,call_writer,get_or_set,recvr=nil,reader_method=nil,recvr_tmp=nil,cache_recvr=nil,writer_method=nil;return recvr=null==($a=[].concat(Opal.to_a(lhs)))?nil:$a,reader_method=null==$a?nil:$a,args=$slice.call($a,2),$truthy($truthy($a=recvr)?recvr.$type()(”send“):$a)&&(recvr_tmp=this.$new_temp(),cache_recvr=this.$s(”lvasgn“,recvr_tmp,recvr),recvr=this.$s(”js_tmp“,recvr_tmp)),writer_method=reader_method+”=“,call_reader=lhs.$updated(”send“,.concat(Opal.to_a(args))),call_writer=lhs.$updated(”send“,.concat(Opal.to_a(args)).concat()),get_or_set=this.$s(root_type,call_reader,call_writer),$truthy(cache_recvr)?this.$s(”begin“,cache_recvr,get_or_set):get_or_set},$SendHandler_call$5.$$arity=3)}($nesting,self,$nesting),function($base,$super,$parent_nesting){var $ConditionalSendHandler_call$6,self=$klass($base,$super,”ConditionalSendHandler“);.concat($parent_nesting);Opal.defs(self,”$call“,$ConditionalSendHandler_call$6=function(lhs,rhs,root_type){var $a,args,recvr_tmp,cache_recvr,recvr_is_nil,plain_send,plain_or_asgn,recvr=nil,meth=nil;return root_type+=”_asgn“,recvr=null==($a=[].concat(Opal.to_a(lhs)))?nil:$a,meth=null==$a?nil:$a,args=$slice.call($a,2),recvr_tmp=this.$new_temp(),cache_recvr=this.$s(”lvasgn“,recvr_tmp,recvr),recvr=this.$s(”js_tmp“,recvr_tmp),recvr_is_nil=this.$s(”send“,recvr,”nil?“),plain_send=lhs.$updated(”send“,.concat(Opal.to_a(args))),plain_or_asgn=this.$s(root_type,plain_send,rhs),this.$s(”begin“,cache_recvr,this.$s(”if“,recvr_is_nil,this.$s(”nil“),plain_or_asgn))},$ConditionalSendHandler_call$6.$$arity=3)}($nesting,self,$nesting),Opal.const_set($nesting,”HANDLERS“,$hash2(,{lvasgn:$$($nesting,”LocalVariableHandler“),ivasgn:$$($nesting,”InstanceVariableHandler“),casgn:$$($nesting,”ConstantHandler“),gvasgn:$$($nesting,”GlobalVariableHandler“),cvasgn:$$($nesting,”ClassVariableHandler“),send:$$($nesting,”SendHandler“),csend:$$($nesting,”ConditionalSendHandler“)}).$freeze()),Opal.def(self,”$on_or_asgn“,$LogicalOperatorAssignment_on_or_asgn$7=function(node){var $a,$$8,rhs,result,lhs=nil;return $a=[].concat(Opal.to_a(node)),lhs=null==$a?nil:$a,rhs=null==$a?nil:$a,result=$send($$($nesting,”HANDLERS“),”fetch“,,($$8=function(){return($$8.$$s||this).$error(”cannot handle LHS type: “+lhs.$type())},$$8.$$s=this,$$8.$$arity=0,$$8)).$call(lhs,rhs,”or“),this.$process(result)},$LogicalOperatorAssignment_on_or_asgn$7.$$arity=1),Opal.def(self,”$on_and_asgn“,$LogicalOperatorAssignment_on_and_asgn$9=function(node){var $a,$$10,rhs,result,lhs=nil;return $a=[].concat(Opal.to_a(node)),lhs=null==$a?nil:$a,rhs=null==$a?nil:$a,result=$send($$($nesting,”HANDLERS“),”fetch“,,($$10=function(){return($$10.$$s||this).$error(”cannot handle LHS type: “+lhs.$type())},$$10.$$s=this,$$10.$$arity=0,$$10)).$call(lhs,rhs,”and“),this.$process(result)},$LogicalOperatorAssignment_on_and_asgn$9.$$arity=1),Opal.const_set($nesting,”ASSIGNMENT_STRING_NODE“,self.$s(”str“,”assignment“)),Opal.def(self,”$on_defined?“,$LogicalOperatorAssignment_on_defined$ques$11=function(node){var $a,$iter=$LogicalOperatorAssignment_on_defined$ques$11.$$p,inner=nil;return $iter&&($LogicalOperatorAssignment_on_defined$ques$11.$$p=null),inner=null==($a=[].concat(Opal.to_a(node)))?nil:$a,null==$a?nil:$a,$truthy([”$include?“](inner.$type()))?$$($nesting,”ASSIGNMENT_STRING_NODE“):$send(this,Opal.find_super_dispatcher(this,”on_defined?“,$LogicalOperatorAssignment_on_defined$ques$11,!1),,null)},$LogicalOperatorAssignment_on_defined$ques$11.$$arity=1)}($nesting,$$($nesting,”Base“),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$slice=(Opal.breaker,Opal.slice),$module=Opal.module,$klass=Opal.klass,$truthy=Opal.truthy,$lambda=Opal.lambda,$hash2=Opal.hash2,$send=Opal.send;return Opal.add_stubs([”$require“,”$+“,”$updated“,”$s“,”$“,”$==“,”$type“,”$new_temp“,”$freeze“,”$call“,”$fetch“,”$error“,”$process“]),self.$require(”opal/rewriters/base“),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $BinaryOperatorAssignment_reset_tmp_counter$excl$1,$BinaryOperatorAssignment_new_temp$2,$BinaryOperatorAssignment$3,$BinaryOperatorAssignment_on_op_asgn$7,$BinaryOperatorAssignment_on_defined$ques$9,self=$klass($base,$super,”BinaryOperatorAssignment“),$nesting=.concat($parent_nesting);Opal.defs(self,”$reset_tmp_counter!“,$BinaryOperatorAssignment_reset_tmp_counter$excl$1=function(){return Opal.class_variable_set($nesting,”@@counter“,0)},$BinaryOperatorAssignment_reset_tmp_counter$excl$1.$$arity=0),Opal.defs(self,”$new_temp“,$BinaryOperatorAssignment_new_temp$2=function(){var $a,$b,lhs,rhs;return Opal.class_variable_set($nesting,”@@counter“,$truthy($a=null==($b=$nesting.$$cvars)?nil:$b)?$a:0),Opal.class_variable_set($nesting,”@@counter“,(lhs=null==($a=$nesting.$$cvars)?nil:$a,rhs=1,”number“==typeof lhs&&”number“==typeof rhs?lhs+rhs:lhs(rhs))),”$binary_op_recvr_tmp_“+(null==($a=$nesting.$$cvars)?nil:$a)},$BinaryOperatorAssignment_new_temp$2.$$arity=0),Opal.const_set($nesting,”GET_SET“,$lambda((($BinaryOperatorAssignment$3=function(get_type,set_type){var $$4,self=$BinaryOperatorAssignment$3.$$s||this;return null==get_type&&(get_type=nil),null==set_type&&(set_type=nil),$lambda((($$4=function(lhs,operation,rhs){var get_node,set_node,self=$$4.$$s||this;return null==lhs&&(lhs=nil),null==operation&&(operation=nil),null==rhs&&(rhs=nil),get_node=lhs.$updated(get_type),set_node=self.$s(”send“,get_node,operation,rhs),lhs.$updated(set_type,[].concat(Opal.to_a(lhs)).concat())}).$$s=self,$$4.$$arity=3,$$4))}).$$s=self,$BinaryOperatorAssignment$3.$$arity=2,$BinaryOperatorAssignment$3))),Opal.const_set($nesting,”LocalVariableHandler“,$$($nesting,”GET_SET“)[”$“](”lvar“,”lvasgn“)),Opal.const_set($nesting,”InstanceVariableHandler“,$$($nesting,”GET_SET“)[”$“](”ivar“,”ivasgn“)),Opal.const_set($nesting,”ConstantHandler“,$$($nesting,”GET_SET“)[”$“](”const“,”casgn“)),Opal.const_set($nesting,”GlobalVariableHandler“,$$($nesting,”GET_SET“)[”$“](”gvar“,”gvasgn“)),Opal.const_set($nesting,”ClassVariableHandler“,$$($nesting,”GET_SET“)[”$“](”cvar“,”cvasgn“)),function($base,$super,$parent_nesting){var $SendHandler_call$5,self=$klass($base,$super,”SendHandler“);.concat($parent_nesting);Opal.defs(self,”$call“,$SendHandler_call$5=function(lhs,operation,rhs){var $a,args,call_reader,call_op,call_writer,recvr=nil,reader_method=nil,recvr_tmp=nil,cache_recvr=nil,writer_method=nil;return recvr=null==($a=[].concat(Opal.to_a(lhs)))?nil:$a,reader_method=null==$a?nil:$a,args=$slice.call($a,2),$truthy($truthy($a=recvr)?recvr.$type()(”send“):$a)&&(recvr_tmp=this.$new_temp(),cache_recvr=this.$s(”lvasgn“,recvr_tmp,recvr),recvr=this.$s(”js_tmp“,recvr_tmp)),writer_method=reader_method+”=“,call_reader=lhs.$updated(”send“,.concat(Opal.to_a(args))),call_op=this.$s(”send“,call_reader,operation,rhs),call_writer=lhs.$updated(”send“,.concat(Opal.to_a(args)).concat()),$truthy(cache_recvr)?this.$s(”begin“,cache_recvr,call_writer):call_writer},$SendHandler_call$5.$$arity=3)}($nesting,self,$nesting),function($base,$super,$parent_nesting){var $ConditionalSendHandler_call$6,self=$klass($base,$super,”ConditionalSendHandler“);.concat($parent_nesting);Opal.defs(self,”$call“,$ConditionalSendHandler_call$6=function(lhs,operation,rhs){var $a,args,recvr_tmp,cache_recvr,recvr_is_nil,plain_send,plain_op_asgn,recvr=nil,meth=nil;return recvr=null==($a=[].concat(Opal.to_a(lhs)))?nil:$a,meth=null==$a?nil:$a,args=$slice.call($a,2),recvr_tmp=this.$new_temp(),cache_recvr=this.$s(”lvasgn“,recvr_tmp,recvr),recvr=this.$s(”js_tmp“,recvr_tmp),recvr_is_nil=this.$s(”send“,recvr,”nil?“),plain_send=lhs.$updated(”send“,.concat(Opal.to_a(args))),plain_op_asgn=this.$s(”op_asgn“,plain_send,operation,rhs),this.$s(”begin“,cache_recvr,this.$s(”if“,recvr_is_nil,this.$s(”nil“),plain_op_asgn))},$ConditionalSendHandler_call$6.$$arity=3)}($nesting,self,$nesting),Opal.const_set($nesting,”HANDLERS“,$hash2(,{lvasgn:$$($nesting,”LocalVariableHandler“),ivasgn:$$($nesting,”InstanceVariableHandler“),casgn:$$($nesting,”ConstantHandler“),gvasgn:$$($nesting,”GlobalVariableHandler“),cvasgn:$$($nesting,”ClassVariableHandler“),send:$$($nesting,”SendHandler“),csend:$$($nesting,”ConditionalSendHandler“)}).$freeze()),Opal.def(self,”$on_op_asgn“,$BinaryOperatorAssignment_on_op_asgn$7=function(node){var $a,$$8,op,rhs,result,lhs=nil;return $a=[].concat(Opal.to_a(node)),lhs=null==$a?nil:$a,op=null==$a?nil:$a,rhs=null==$a?nil:$a,result=$send($$($nesting,”HANDLERS“),”fetch“,,($$8=function(){return($$8.$$s||this).$error(”cannot handle LHS type: “+lhs.$type())},$$8.$$s=this,$$8.$$arity=0,$$8)).$call(lhs,op,rhs),this.$process(result)},$BinaryOperatorAssignment_on_op_asgn$7.$$arity=1),Opal.const_set($nesting,”ASSIGNMENT_STRING_NODE“,self.$s(”str“,”assignment“)),Opal.def(self,”$on_defined?“,$BinaryOperatorAssignment_on_defined$ques$9=function(node){var $a,$iter=$BinaryOperatorAssignment_on_defined$ques$9.$$p,inner=nil;return $iter&&($BinaryOperatorAssignment_on_defined$ques$9.$$p=null),inner=null==($a=[].concat(Opal.to_a(node)))?nil:$a,null==$a?nil:$a,inner.$type()(”op_asgn“)?$$($nesting,”ASSIGNMENT_STRING_NODE“):$send(this,Opal.find_super_dispatcher(this,”on_defined?“,$BinaryOperatorAssignment_on_defined$ques$9,!1),,null)},$BinaryOperatorAssignment_on_defined$ques$9.$$arity=1)}($nesting,$$($nesting,”Base“),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],nil=Opal.nil,$$$=Opal.const_get_qualified,$$=Opal.const_get_relative,$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$send=Opal.send,$truthy=Opal.truthy;return Opal.add_stubs(),self.$require(”opal/rewriters/base“),self.$require(”set“),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $KeyDuplicatesRewriter_initialize$1,$KeyDuplicatesRewriter_on_hash$2,$KeyDuplicatesRewriter_on_pair$3,$KeyDuplicatesRewriter_on_kwsplat$4,self=$klass($base,$super,”KeyDuplicatesRewriter“),$nesting=.concat($parent_nesting);self.$$prototype.keys=nil,Opal.def(self,”$initialize“,$KeyDuplicatesRewriter_initialize$1=function(){return this.keys=$$($nesting,”UniqKeysSet“).$new()},$KeyDuplicatesRewriter_initialize$1.$$arity=0),Opal.def(self,”$on_hash“,$KeyDuplicatesRewriter_on_hash$2=function(node){var $a,$iter=$KeyDuplicatesRewriter_on_hash$2.$$p,self=this,previous_keys=nil;return $iter&&($KeyDuplicatesRewriter_on_hash$2.$$p=null),function(){try{return $a=,previous_keys=$a,self.keys=$a,$send(self,Opal.find_super_dispatcher(self,”on_hash“,$KeyDuplicatesRewriter_on_hash$2,!1),,null)}finally{self.keys=previous_keys}}()},$KeyDuplicatesRewriter_on_hash$2.$$arity=1),Opal.def(self,”$on_pair“,$KeyDuplicatesRewriter_on_pair$3=function(node){var $a,$iter=$KeyDuplicatesRewriter_on_pair$3.$$p,key=nil;return $iter&&($KeyDuplicatesRewriter_on_pair$3.$$p=null),key=null==($a=[].concat(Opal.to_a(node)))?nil:$a,null==$a?nil:$a,$truthy([”$include?“](key.$type()))&&this.keys(key),$send(this,Opal.find_super_dispatcher(this,”on_pair“,$KeyDuplicatesRewriter_on_pair$3,!1),,null)},$KeyDuplicatesRewriter_on_pair$3.$$arity=1),Opal.def(self,”$on_kwsplat“,$KeyDuplicatesRewriter_on_kwsplat$4=function(node){var $a,hash=nil;return hash=null==($a=[].concat(Opal.to_a(node)))?nil:$a,null==$a?nil:$a,hash.$type()(”hash“)&&(hash=this.$process_regular_node(hash)),node.$updated(nil,)},$KeyDuplicatesRewriter_on_kwsplat$4.$$arity=1),function($base,$super,$parent_nesting){var $UniqKeysSet_initialize$5,$UniqKeysSet_$lt$lt$6,self=$klass($base,null,”UniqKeysSet“),$nesting=.concat($parent_nesting);self.$$prototype.set=nil,Opal.def(self,”$initialize“,$UniqKeysSet_initialize$5=function(){return this.set=$$($nesting,”Set“).$new()},$UniqKeysSet_initialize$5.$$arity=0),Opal.def(self,”$<<“,$UniqKeysSet_$lt$lt$6=function(element){var $a,key=nil;return $truthy(this.set(element))?($a=[].concat(Opal.to_a(element)),key=null==$a?nil:$a,null==$a?nil:$a,key=element.$type()(”str“)?key.$inspect():”:“+key,$$($nesting,”Kernel“).$warn(”warning: key “key” is duplicated and overwritten“)):this.set(element)},$UniqKeysSet_$lt$lt$6.$$arity=1)}($nesting,0,$nesting)}($nesting,$$$($$$($$$(”::“,”Opal“),”Rewriters“),”Base“),$nesting)}($nesting,$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$send=Opal.send,$hash2=Opal.hash2;return Opal.add_stubs(),self.$require(”opal/rewriters/base“),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $DumpArgs_on_def$1,$DumpArgs_on_defs$2,$DumpArgs_on_iter$3,self=$klass($base,$super,”DumpArgs“);.concat($parent_nesting);Opal.def(self,”$on_def“,$DumpArgs_on_def$1=function(node){var $a,args,$iter=$DumpArgs_on_def$1.$$p;return $iter&&($DumpArgs_on_def$1.$$p=null),node=$send(this,Opal.find_super_dispatcher(this,”on_def“,$DumpArgs_on_def$1,!1),,null),null==($a=[].concat(Opal.to_a(node)))?nil:$a,args=null==$a?nil:$a,null==$a?nil:$a,node.$updated(nil,nil,$hash2(,{meta:$hash2(,{original_args:args})}))},$DumpArgs_on_def$1.$$arity=1),Opal.def(self,”$on_defs“,$DumpArgs_on_defs$2=function(node){var $a,args,$iter=$DumpArgs_on_defs$2.$$p;return $iter&&($DumpArgs_on_defs$2.$$p=null),node=$send(this,Opal.find_super_dispatcher(this,”on_defs“,$DumpArgs_on_defs$2,!1),,null),null==($a=[].concat(Opal.to_a(node)))?nil:$a,null==$a?nil:$a,args=null==$a?nil:$a,null==$a?nil:$a,node.$updated(nil,nil,$hash2(,{meta:$hash2(,{original_args:args})}))},$DumpArgs_on_defs$2.$$arity=1),Opal.def(self,”$on_iter“,$DumpArgs_on_iter$3=function(node){var $a,args,$iter=$DumpArgs_on_iter$3.$$p;return $iter&&($DumpArgs_on_iter$3.$$p=null),node=$send(this,Opal.find_super_dispatcher(this,”on_iter“,$DumpArgs_on_iter$3,!1),,null),args=null==($a=[].concat(Opal.to_a(node)))?nil:$a,null==$a?nil:$a,node.$updated(nil,nil,$hash2(,{meta:$hash2(,{original_args:args})}))},$DumpArgs_on_iter$3.$$arity=1)}($nesting,$$($nesting,”Base“),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$send=Opal.send,$truthy=Opal.truthy,$hash2=Opal.hash2;return Opal.add_stubs([”$require“,”$new“,”$updated“,”$rewritten“,”$initialization“,”$s“,”$prepend_to_body“,”$attr_reader“,”$split!“,”$+“,”$each“,”$children“,”$==“,”$type“,”$new_mlhs_tmp“,”$process“,”$<<","$length","$“,”$empty?“]),self.$require(”opal/rewriters/base“),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $MlhsArgs_on_def$1,$MlhsArgs_on_defs$2,$MlhsArgs_on_iter$3,self=$klass($base,$super,”MlhsArgs“),$nesting=.concat($parent_nesting);Opal.def(self,”$on_def“,$MlhsArgs_on_def$1=function(node){var $a,mid,$iter=$MlhsArgs_on_def$1.$$p,args=nil,body=nil,arguments$=nil;return $iter&&($MlhsArgs_on_def$1.$$p=null),node=$send(this,Opal.find_super_dispatcher(this,”on_def“,$MlhsArgs_on_def$1,!1),,null),mid=null==($a=[].concat(Opal.to_a(node)))?nil:$a,args=null==$a?nil:$a,body=null==$a?nil:$a,arguments$=$$($nesting,”Arguments“).$new(args),args=args.$updated(nil,arguments$.$rewritten()),$truthy(arguments$.$initialization())&&(body=$truthy($a=body)?$a:this.$s(”nil“),body=this.$prepend_to_body(body,arguments$.$initialization())),node.$updated(nil,)},$MlhsArgs_on_def$1.$$arity=1),Opal.def(self,”$on_defs“,$MlhsArgs_on_defs$2=function(node){var $a,recv,mid,$iter=$MlhsArgs_on_defs$2.$$p,args=nil,body=nil,arguments$=nil;return $iter&&($MlhsArgs_on_defs$2.$$p=null),node=$send(this,Opal.find_super_dispatcher(this,”on_defs“,$MlhsArgs_on_defs$2,!1),,null),recv=null==($a=[].concat(Opal.to_a(node)))?nil:$a,mid=null==$a?nil:$a,args=null==$a?nil:$a,body=null==$a?nil:$a,arguments$=$$($nesting,”Arguments“).$new(args),args=args.$updated(nil,arguments$.$rewritten()),$truthy(arguments$.$initialization())&&(body=$truthy($a=body)?$a:this.$s(”nil“),body=this.$prepend_to_body(body,arguments$.$initialization())),node.$updated(nil,)},$MlhsArgs_on_defs$2.$$arity=1),Opal.def(self,”$on_iter“,$MlhsArgs_on_iter$3=function(node){var $a,$iter=$MlhsArgs_on_iter$3.$$p,args=nil,body=nil,arguments$=nil;return $iter&&($MlhsArgs_on_iter$3.$$p=null),node=$send(this,Opal.find_super_dispatcher(this,”on_iter“,$MlhsArgs_on_iter$3,!1),,null),args=null==($a=[].concat(Opal.to_a(node)))?nil:$a,body=null==$a?nil:$a,arguments$=$$($nesting,”Arguments“).$new(args),args=args.$updated(nil,arguments$.$rewritten()),$truthy(arguments$.$initialization())&&(body=$truthy($a=body)?$a:this.$s(”nil“),body=this.$prepend_to_body(body,arguments$.$initialization())),node.$updated(nil,)},$MlhsArgs_on_iter$3.$$arity=1),function($base,$super,$parent_nesting){var $Arguments_initialize$4,$Arguments_reset_tmp_counter$excl$5,$Arguments_new_mlhs_tmp$6,$Arguments_split$excl$7,self=$klass($base,$super,”Arguments“),$nesting=.concat($parent_nesting);self.$$prototype.counter=self.$$prototype.args=self.$$prototype.initialization=nil,self.$attr_reader(”rewritten“,”initialization“),Opal.def(self,”$initialize“,$Arguments_initialize$4=function(args){return this.args=args,this.rewritten=[],this.initialization=,this.rewriter=$$($nesting,”MlhsRewriter“).$new(),this()},$Arguments_initialize$4.$$arity=1),Opal.def(self,”$reset_tmp_counter!“,$Arguments_reset_tmp_counter$excl$5=function(){return this.counter=0},$Arguments_reset_tmp_counter$excl$5.$$arity=0),Opal.def(self,”$new_mlhs_tmp“,$Arguments_new_mlhs_tmp$6=function(){var $a,lhs,rhs;return this.counter=$truthy($a=this.counter)?$a:0,this.counter=(lhs=this.counter,rhs=1,”number“==typeof lhs&&”number“==typeof rhs?lhs+rhs:lhs(rhs)),”$mlhs_tmp“+this.counter},$Arguments_new_mlhs_tmp$6.$$arity=0),Opal.def(self,”$split!“,$Arguments_split$excl$7=function(){var $$8;return $send(this.args.$children(),”each“,[],(($$8=function(arg){var self=$$8.$$s||this,var_name=nil,rhs=nil,mlhs=nil;return null==self.rewriter&&(self.rewriter=nil),null==self.initialization&&(self.initialization=nil),null==self.rewritten&&(self.rewritten=nil),null==arg&&(arg=nil),arg.$type()(”mlhs“)?(var_name=self.$new_mlhs_tmp(),rhs=self.$s(”lvar“,var_name),mlhs=self.rewriter.$process(arg),self.initialization(self.$s(”masgn“,mlhs,rhs)),self.rewritten(self.$s(”arg“,var_name).$updated(nil,nil,$hash2(,{meta:$hash2(,{arg_name:var_name})})))):self.rewritten(arg)}).$$s=this,$$8.$$arity=1,$$8)),this.initialization.$length()(1)?this.initialization=this.initialization[”$“](0):$truthy(this.initialization())?this.initialization=nil:this.initialization=$send(this,”s“,.concat(Opal.to_a(this.initialization)))},$Arguments_split$excl$7.$$arity=0)}($nesting,$$($nesting,”Base“),$nesting),function($base,$super,$parent_nesting){var $MlhsRewriter_on_arg$9,$MlhsRewriter_on_restarg$10,self=$klass($base,$super,”MlhsRewriter“);.concat($parent_nesting);Opal.def(self,”$on_arg“,$MlhsRewriter_on_arg$9=function(node){return node.$updated(”lvasgn“)},$MlhsRewriter_on_arg$9.$$arity=1),Opal.def(self,”$on_restarg“,$MlhsRewriter_on_restarg$10=function(node){var name;return name=node.$children()[”$“](0),$truthy(name)?this.$s(”splat“,node.$updated(”lvasgn“)):this.$s(”splat“)},$MlhsRewriter_on_restarg$10.$$arity=1)}($nesting,$$($nesting,”Base“),$nesting)}($nesting,$$($nesting,”Base“),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){Opal.top;var $nesting=[],nil=Opal.nil,$module=(Opal.const_get_qualified,Opal.const_get_relative,Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$send=Opal.send,$truthy=Opal.truthy;return Opal.add_stubs(),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $Arguments_initialize$1,$Arguments_has_post_args$ques$3,$Arguments_has_any_kwargs$ques$4,$Arguments_can_inline_kwargs$ques$5,self=$klass($base,null,”Arguments“);.concat($parent_nesting);self.$$prototype.restarg=self.$$prototype.postargs=self.$$prototype.kwargs=self.$$prototype.kwoptargs=self.$$prototype.kwrestarg=self.$$prototype.optargs=nil,self.$attr_reader(”args“,”optargs“,”restarg“,”postargs“,”kwargs“,”kwoptargs“,”kwrestarg“,”shadowargs“,”blockarg“),Opal.def(self,”$initialize“,$Arguments_initialize$1=function(args){var $$2;return this.args=[],this.optargs=,this.restarg=nil,this.postargs=[],this.kwargs=,this.kwoptargs=[],this.kwrestarg=nil,this.shadowargs=,this.blockarg=nil,$send(args,”each“,[],(($$2=function(arg){var $a,self=$$2.$$s||this,$case=nil;return null==self.restarg&&(self.restarg=nil),null==self.optargs&&(self.optargs=nil),null==self.postargs&&(self.postargs=nil),null==self.args&&(self.args=nil),null==self.kwargs&&(self.kwargs=nil),null==self.kwoptargs&&(self.kwoptargs=nil),null==self.shadowargs&&(self.shadowargs=nil),null==arg&&(arg=nil),$case=arg.$type(),”arg“($case)||”mlhs“($case)?($truthy($truthy($a=self.restarg)?$a:self.optargs())?self.postargs:self.args)(arg):”optarg“($case)?self.optargs(arg):”restarg“($case)?self.restarg=arg:”kwarg“($case)?self.kwargs(arg):”kwoptarg“($case)?self.kwoptargs(arg):”kwrestarg“($case)?self.kwrestarg=arg:”shadowarg“($case)?self.shadowargs(arg):”blockarg“($case)?self.blockarg=arg:self.$raise(”Unsupported arg type “+arg.$type())}).$$s=this,$$2.$$arity=1,$$2))},$Arguments_initialize$1.$$arity=1),Opal.def(self,”$has_post_args?“,$Arguments_has_post_args$ques$3=function(){var $a,$b;return $truthy($a=$truthy($b=this.restarg()[”$!“]())?$b:this.postargs())?$a:$truthy($b=this())?this()[”$!“]():$b},$Arguments_has_post_args$ques$3.$$arity=0),Opal.def(self,”$has_any_kwargs?“,$Arguments_has_any_kwargs$ques$4=function(){var $a,$b;return $truthy($a=$truthy($b=this.kwargs())?$b:this.kwoptargs())?$a:this.kwrestarg()[”$!“]()},$Arguments_has_any_kwargs$ques$4.$$arity=0),Opal.def(self,”$can_inline_kwargs?“,$Arguments_can_inline_kwargs$ques$5=function(){var $a,$b;return $truthy($a=$truthy($b=this.optargs())?this.restarg():$b)?this.postargs():$a},$Arguments_can_inline_kwargs$ques$5.$$arity=0)}($nesting,0,$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],nil=Opal.nil,$$$=Opal.const_get_qualified,$$=Opal.const_get_relative,$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$send=Opal.send,$truthy=Opal.truthy,$hash2=Opal.hash2;return Opal.add_stubs([”$require“,”$s“,”$new“,”$updated“,”$inline“,”$prepend_to_body“,”$initialization“,”$attr_reader“,”$freeze“,”$children“,”$each“,”$send“,”$any?“,”$blockarg“,”$<<","$shadowargs","$args","$==","$“,”$has_post_args?“,”$length“,”$has_any_kwargs?“,”$can_inline_kwargs?“,”$kwargs“,”$kwoptargs“,”$kwrestarg“,”$postargs“,”$optargs“,”$args_to_keep“,”$restarg“]),self.$require(”opal/rewriters/base“),self.$require(”opal/rewriters/arguments“),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $InlineArgs_on_def$1,$InlineArgs_on_defs$2,$InlineArgs_on_iter$3,self=$klass($base,$super,”InlineArgs“),$nesting=.concat($parent_nesting);Opal.def(self,”$on_def“,$InlineArgs_on_def$1=function(node){var $a,mid,inline_args,$iter=$InlineArgs_on_def$1.$$p,args=nil,body=nil,initializer=nil;return $iter&&($InlineArgs_on_def$1.$$p=null),node=$send(this,Opal.find_super_dispatcher(this,”on_def“,$InlineArgs_on_def$1,!1),,null),mid=null==($a=[].concat(Opal.to_a(node)))?nil:$a,args=null==$a?nil:$a,body=null==$a?nil:$a,body=$truthy($a=body)?$a:this.$s(”nil“),initializer=$$($nesting,”Initializer“).$new(args,$hash2(,{type:”def“})),inline_args=args.$updated(nil,initializer.$inline()),body=this.$prepend_to_body(body,initializer.$initialization()),node.$updated(nil,)},$InlineArgs_on_def$1.$$arity=1),Opal.def(self,”$on_defs“,$InlineArgs_on_defs$2=function(node){var $a,recv,mid,inline_args,$iter=$InlineArgs_on_defs$2.$$p,args=nil,body=nil,initializer=nil;return $iter&&($InlineArgs_on_defs$2.$$p=null),node=$send(this,Opal.find_super_dispatcher(this,”on_defs“,$InlineArgs_on_defs$2,!1),,null),recv=null==($a=[].concat(Opal.to_a(node)))?nil:$a,mid=null==$a?nil:$a,args=null==$a?nil:$a,body=null==$a?nil:$a,body=$truthy($a=body)?$a:this.$s(”nil“),initializer=$$($nesting,”Initializer“).$new(args,$hash2(,{type:”defs“})),inline_args=args.$updated(nil,initializer.$inline()),body=this.$prepend_to_body(body,initializer.$initialization()),node.$updated(nil,)},$InlineArgs_on_defs$2.$$arity=1),Opal.def(self,”$on_iter“,$InlineArgs_on_iter$3=function(node){var $a,inline_args,$iter=$InlineArgs_on_iter$3.$$p,args=nil,body=nil,initializer=nil;return $iter&&($InlineArgs_on_iter$3.$$p=null),node=$send(this,Opal.find_super_dispatcher(this,”on_iter“,$InlineArgs_on_iter$3,!1),,null),args=null==($a=[].concat(Opal.to_a(node)))?nil:$a,body=null==$a?nil:$a,body=$truthy($a=body)?$a:this.$s(”nil“),initializer=$$($nesting,”Initializer“).$new(args,$hash2(,{type:”iter“})),inline_args=args.$updated(nil,initializer.$inline()),body=this.$prepend_to_body(body,initializer.$initialization()),node.$updated(nil,)},$InlineArgs_on_iter$3.$$arity=1),function($base,$super,$parent_nesting){var $Initializer_initialize$4,$Initializer_extract_blockarg$6,$Initializer_initialize_shadowargs$7,$Initializer_extract_args$9,$Initializer_prepare_post_args$11,$Initializer_prepare_kwargs$12,$Initializer_extract_kwargs$13,$Initializer_extract_kwoptargs$15,$Initializer_extract_kwrestarg$17,$Initializer_extract_post_args$18,$Initializer_extract_optargs$20,$Initializer_extract_restarg$22,$Initializer_args_to_keep$23,self=$klass($base,$super,”Initializer“),$nesting=.concat($parent_nesting);self.$$prototype.initialization=self.$$prototype.args=self.$$prototype.inline=nil,self.$attr_reader(”inline“,”initialization“),Opal.const_set($nesting,”STEPS“,.$freeze()),Opal.def(self,”$initialize“,$Initializer_initialize$4=function(args,$kwargs){var type,$$5;if(null==$kwargs)$kwargs=$hash2([],{});else if(!$kwargs.$$is_hash)throw Opal.ArgumentError.$new(”expected kwargs“);if(!Opal.hasOwnProperty.call($kwargs.$$smap,”type“))throw Opal.ArgumentError.$new(”missing keyword: type“);return type=$kwargs.$$smap.type,this.args=$$($nesting,”Arguments“).$new(args.$children()),this.inline=[],this.initialization=,this.type=type,this.underscore_found=!1,$send($$($nesting,”STEPS“),”each“,[],(($$5=function(step){var self=$$5.$$s||this;return null==step&&(step=nil),self.$send(step)}).$$s=this,$$5.$$arity=1,$$5)),$truthy(this.initialization())?this.initialization=$send(this,”s“,.concat(Opal.to_a(this.initialization))):this.initialization=nil},$Initializer_initialize$4.$$arity=2),Opal.def(self,”$extract_blockarg“,$Initializer_extract_blockarg$6=function(){var arg=nil;return $truthy(arg=this.args.$blockarg())?this.initialization(arg.$updated(”extract_blockarg“)):nil},$Initializer_extract_blockarg$6.$$arity=0),Opal.def(self,”$initialize_shadowargs“,$Initializer_initialize_shadowargs$7=function(){var $$8;return $send(this.args.$shadowargs(),”each“,[],(($$8=function(arg){var self=$$8.$$s||this;return null==self.initialization&&(self.initialization=nil),null==arg&&(arg=nil),self.initialization(arg.$updated(”initialize_shadowarg“))}).$$s=this,$$8.$$arity=1,$$8))},$Initializer_initialize_shadowargs$7.$$arity=0),Opal.def(self,”$extract_args“,$Initializer_extract_args$9=function(){var $$10;return $send(this.args.$args(),”each“,[],(($$10=function(arg){var self=$$10.$$s||this;return null==self.type&&(self.type=nil),null==self.initialization&&(self.initialization=nil),null==self.underscore_found&&(self.underscore_found=nil),null==self.inline&&(self.inline=nil),null==arg&&(arg=nil),self.type(”iter“)&&(self.initialization(arg.$updated(”initialize_iter_arg“)),arg.$children()[”$“](0)(”_“)&&($truthy(self.underscore_found)&&(arg=self.$s(”fake_arg“)),self.underscore_found=!0)),self.inline(arg)}).$$s=this,$$10.$$arity=1,$$10))},$Initializer_extract_args$9.$$arity=0),Opal.def(self,”$prepare_post_args“,$Initializer_prepare_post_args$11=function(){return $truthy(this.args())?this.initialization(this.$s(”prepare_post_args“,this.args.$args().$length())):nil},$Initializer_prepare_post_args$11.$$arity=0),Opal.def(self,”$prepare_kwargs“,$Initializer_prepare_kwargs$12=function(){return $truthy(this.args())?($truthy(this.args())?this.inline(this.$s(”arg“,”$kwargs“)):(this.initialization(this.$s(”extract_kwargs“)),this.inline(this.$s(”fake_arg“))),this.initialization(this.$s(”ensure_kwargs_are_kwargs“))):nil},$Initializer_prepare_kwargs$12.$$arity=0),Opal.def(self,”$extract_kwargs“,$Initializer_extract_kwargs$13=function(){var $$14;return $send(this.args.$kwargs(),”each“,[],(($$14=function(arg){var self=$$14.$$s||this;return null==self.initialization&&(self.initialization=nil),null==arg&&(arg=nil),self.initialization(arg.$updated(”extract_kwarg“))}).$$s=this,$$14.$$arity=1,$$14))},$Initializer_extract_kwargs$13.$$arity=0),Opal.def(self,”$extract_kwoptargs“,$Initializer_extract_kwoptargs$15=function(){var $$16;return $send(this.args.$kwoptargs(),”each“,[],(($$16=function(arg){var self=$$16.$$s||this;return null==self.initialization&&(self.initialization=nil),null==arg&&(arg=nil),self.initialization(arg.$updated(”extract_kwoptarg“))}).$$s=this,$$16.$$arity=1,$$16))},$Initializer_extract_kwoptargs$15.$$arity=0),Opal.def(self,”$extract_kwrestarg“,$Initializer_extract_kwrestarg$17=function(){var arg=nil;return $truthy(arg=this.args.$kwrestarg())?this.initialization(arg.$updated(”extract_kwrestarg“)):nil},$Initializer_extract_kwrestarg$17.$$arity=0),Opal.def(self,”$extract_post_args“,$Initializer_extract_post_args$18=function(){var $$19;return $send(this.args.$postargs(),”each“,[],(($$19=function(arg){var self=$$19.$$s||this;return null==self.initialization&&(self.initialization=nil),null==self.inline&&(self.inline=nil),null==arg&&(arg=nil),self.initialization(arg.$updated(”extract_post_arg“)),self.inline(self.$s(”fake_arg“))}).$$s=this,$$19.$$arity=1,$$19))},$Initializer_extract_post_args$18.$$arity=0),Opal.def(self,”$extract_optargs“,$Initializer_extract_optargs$20=function(){var $$21,has_post_args;return has_post_args=this.args(),$send(this.args.$optargs(),”each“,[],(($$21=function(arg){var $a,self=$$21.$$s||this,arg_name=nil,default_value=nil;return null==self.initialization&&(self.initialization=nil),null==self.inline&&(self.inline=nil),null==arg&&(arg=nil),$truthy(has_post_args)?(arg_name=null==($a=[].concat(Opal.to_a(arg)))?nil:$a,default_value=null==$a?nil:$a,self.initialization(arg.$updated(”extract_post_optarg“,)),self.inline(self.$s(”fake_arg“))):(self.inline(arg.$updated(”arg“)),self.initialization(arg.$updated(”extract_optarg“)))}).$$s=this,$$21.$$arity=1,$$21))},$Initializer_extract_optargs$20.$$arity=0),Opal.def(self,”$extract_restarg“,$Initializer_extract_restarg$22=function(){var arg=nil,arg_name=nil;return $truthy(arg=this.args.$restarg())?(arg_name=arg.$children()[”$“](0),this.initialization(arg.$updated(”extract_restarg“,)),this.inline(this.$s(”fake_arg“))):nil},$Initializer_extract_restarg$22.$$arity=0),Opal.def(self,”$args_to_keep“,$Initializer_args_to_keep$23=function(){return this.args.$postargs().$length()},$Initializer_args_to_keep$23.$$arity=0)}($nesting,$$$($$$($$$(”::“,”Opal“),”Rewriters“),”Base“),$nesting)}($nesting,$$($nesting,”Base“),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],nil=Opal.nil,$$$=Opal.const_get_qualified,$$=Opal.const_get_relative,$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$truthy=Opal.truthy,$send=Opal.send;return Opal.add_stubs(),self.$require(”opal/rewriters/opal_engine_check“),self.$require(”opal/rewriters/for_rewriter“),self.$require(”opal/rewriters/explicit_writer_return“),self.$require(”opal/rewriters/js_reserved_words“),self.$require(”opal/rewriters/block_to_iter“),self.$require(”opal/rewriters/dot_js_syntax“),self.$require(”opal/rewriters/logical_operator_assignment“),self.$require(”opal/rewriters/binary_operator_assignment“),self.$require(”opal/rewriters/hashes/key_duplicates_rewriter“),self.$require(”opal/rewriters/dump_args“),self.$require(”opal/rewriters/mlhs_args“),self.$require(”opal/rewriters/inline_args“),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $Rewriter_initialize$6,$Rewriter_process$7,self=$klass($base,null,”Rewriter“),$nesting=.concat($parent_nesting);self.$$prototype.sexp=nil,function(self,$parent_nesting){var $list$1,$use$2,$delete$3,$disable$4,$disabled$ques$5;.concat($parent_nesting);Opal.def(self,”$list“,$list$1=function(){var $a;return null==this.list&&(this.list=nil),this.list=$truthy($a=this.list)?$a:[]},$list$1.$$arity=0),Opal.def(self,”$use“,$use$2=function(rewriter){return this.$list()(rewriter)},$use$2.$$arity=1),Opal.def(self,”$delete“,$delete$3=function(rewriter){return this.$list().$delete(rewriter)},$delete$3.$$arity=1),Opal.def(self,”$disable“,$disable$4=function(){var $iter=$disable$4.$$p,$yield=$iter||nil,self=this;return $iter&&($disable$4.$$p=null),function(){try{return self.disabled=!0,Opal.yieldX($yield,[])}finally{self.disabled=!1}}()},$disable$4.$$arity=0),Opal.def(self,”$disabled?“,$disabled$ques$5=function(){var $a;return null==this.disabled&&(this.disabled=nil),$truthy(null!=($a=this.disabled)&&$a!==nil?”instance-variable“:nil)?this.disabled:nil},$disabled$ques$5.$$arity=0)}(Opal.get_singleton_class(self),$nesting),self.$use($$$($$($nesting,”Rewriters“),”OpalEngineCheck“)),self.$use($$$($$($nesting,”Rewriters“),”ForRewriter“)),self.$use($$$($$($nesting,”Rewriters“),”BlockToIter“)),self.$use($$$($$($nesting,”Rewriters“),”DotJsSyntax“)),self.$use($$$($$($nesting,”Rewriters“),”JsReservedWords“)),self.$use($$$($$($nesting,”Rewriters“),”LogicalOperatorAssignment“)),self.$use($$$($$($nesting,”Rewriters“),”BinaryOperatorAssignment“)),self.$use($$$($$($nesting,”Rewriters“),”ExplicitWriterReturn“)),self.$use($$$($$$($$($nesting,”Rewriters“),”Hashes“),”KeyDuplicatesRewriter“)),self.$use($$$($$($nesting,”Rewriters“),”DumpArgs“)),self.$use($$$($$($nesting,”Rewriters“),”MlhsArgs“)),self.$use($$$($$($nesting,”Rewriters“),”InlineArgs“)),Opal.def(self,”$initialize“,$Rewriter_initialize$6=function(sexp){return this.sexp=sexp},$Rewriter_initialize$6.$$arity=1),Opal.def(self,”$process“,$Rewriter_process$7=function(){var $$8;return $truthy(this.$class()())||$send(this.$class().$list(),”each“,[],(($$8=function(rewriter_class){var self=$$8.$$s||this,rewriter=nil;return null==self.sexp&&(self.sexp=nil),null==rewriter_class&&(rewriter_class=nil),rewriter=rewriter_class.$new(),self.sexp=rewriter.$process(self.sexp)}).$$s=this,$$8.$$arity=1,$$8)),this.sexp},$Rewriter_process$7.$$arity=0)}($nesting,0,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){Opal.top;var $nesting=[],nil=Opal.nil,$$$=Opal.const_get_qualified,$$=Opal.const_get_relative,$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$truthy=Opal.truthy,$send=Opal.send;return function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $SourceBuffer_recognize_encoding$1,self=$klass($base,$super,”SourceBuffer“),$nesting=.concat($parent_nesting);Opal.defs(self,”$recognize_encoding“,$SourceBuffer_recognize_encoding$1=function(string){var $a,$zuper_ii,$iter=$SourceBuffer_recognize_encoding$1.$$p,$zuper=nil,$zuper_i=nil;for($iter&&($SourceBuffer_recognize_encoding$1.$$p=null),$zuper_i=0,$zuper_ii=arguments.length,$zuper=new Array($zuper_ii);$zuper_i<$zuper_ii;$zuper_i++)$zuper=arguments;return $truthy($a=$send(this,Opal.find_super_dispatcher(this,”recognize_encoding“,$SourceBuffer_recognize_encoding$1,!1,this.$$class.$$prototype),$zuper,$iter))?$a:$$$($$($nesting,”Encoding“),”UTF_8“)},$SourceBuffer_recognize_encoding$1.$$arity=1)}($nesting,$$$($$$($$$(”::“,”Parser“),”Source“),”Buffer“),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){function $rb_minus(lhs,rhs){return”number“==typeof lhs&&”number“==typeof rhs?lhs-rhs:lhs(rhs)}Opal.top;var $nesting=[],nil=Opal.nil,$$$=Opal.const_get_qualified,$$=Opal.const_get_relative,$module=(Opal.breaker,Opal.slice,Opal.module),$send=Opal.send,$lambda=Opal.lambda,$truthy=Opal.truthy;return Opal.add_stubs(),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var self=$module($base,”Parser“),$nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $DefaultConfig_included$2,$DefaultConfig_initialize$4,$DefaultConfig_parse$5,$DefaultConfig_rewrite$6,self=$module($base,”DefaultConfig“),$nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $ClassMethods_default_parser$1,self=$module($base,”ClassMethods“);.concat($parent_nesting);self.$attr_accessor(”diagnostics_consumer“),Opal.def(self,”$default_parser“,$ClassMethods_default_parser$1=function(){var $zuper_ii,$iter=$ClassMethods_default_parser$1.$$p,parser=nil,$writer=nil,$zuper=nil,$zuper_i=nil;for($iter&&($ClassMethods_default_parser$1.$$p=null),$zuper_i=0,$zuper_ii=arguments.length,$zuper=new Array($zuper_ii);$zuper_i<$zuper_ii;$zuper_i++)$zuper=arguments;return parser=$send(this,Opal.find_super_dispatcher(this,”default_parser“,$ClassMethods_default_parser$1,!1),$zuper,$iter),$writer=,$send(parser.$diagnostics(),”all_errors_are_fatal=“,Opal.to_a($writer)),$writer,$writer=,$send(parser.$diagnostics(),”ignore_warnings=“,Opal.to_a($writer)),$writer,$writer=,$send(parser.$diagnostics(),”consumer=“,Opal.to_a($writer)),$writer,parser},$ClassMethods_default_parser$1.$$arity=0)}($nesting,$nesting),Opal.defs(self,”$included“,$DefaultConfig_included$2=function(klass){var $$3,$writer;return klass.$extend($$($nesting,”ClassMethods“)),$writer=[$lambda(($$3=function(diagnostic){$$3.$$s;return null==diagnostic&&(diagnostic=nil),$truthy($$($nesting,”RUBY_ENGINE“)(”opal“)),nil},$$3.$$s=this,$$3.$$arity=1,$$3))],$send(klass,”diagnostics_consumer=“,Opal.to_a($writer)),$writer},$DefaultConfig_included$2.$$arity=1),Opal.def(self,”$initialize“,$DefaultConfig_initialize$4=function($a){var $iter=$DefaultConfig_initialize$4.$$p;return $iter&&($DefaultConfig_initialize$4.$$p=null),Opal.slice.call(arguments,0,arguments.length),$send(this,Opal.find_super_dispatcher(this,”initialize“,$DefaultConfig_initialize$4,!1),,null)},$DefaultConfig_initialize$4.$$arity=-1),Opal.def(self,”$parse“,$DefaultConfig_parse$5=function(source_buffer){var parsed,$zuper_ii,$iter=$DefaultConfig_parse$5.$$p,$zuper=nil,$zuper_i=nil;for($iter&&($DefaultConfig_parse$5.$$p=null),$zuper_i=0,$zuper_ii=arguments.length,$zuper=new Array($zuper_ii);$zuper_i<$zuper_ii;$zuper_i++)$zuper=arguments;return parsed=$send(this,Opal.find_super_dispatcher(this,”parse“,$DefaultConfig_parse$5,!1),$zuper,$iter),this.$rewrite(parsed)},$DefaultConfig_parse$5.$$arity=1),Opal.def(self,”$rewrite“,$DefaultConfig_rewrite$6=function(node){return $$$($$($nesting,”Opal“),”Rewriter“).$new(node).$process()},$DefaultConfig_rewrite$6.$$arity=1)}($nesting,$nesting),function(self,$parent_nesting){var $default_parser$7;.concat($parent_nesting);self.$attr_accessor(”default_parser_class“),Opal.def(self,”$default_parser“,$default_parser$7=function(){return this.$default_parser_class().$default_parser()},$default_parser$7.$$arity=0)}(Opal.get_singleton_class(self),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){Opal.top;var $nesting=[],$$$=(Opal.nil,Opal.const_get_qualified),$$=Opal.const_get_relative,$klass=(Opal.breaker,Opal.slice,Opal.klass),$send=Opal.send;return Opal.add_stubs(),function($base,$super,$parent_nesting){var $writer,lhs,rhs,self=$klass($base,$super,”WithRubyLexer“),$nesting=.concat($parent_nesting);return self.$include($$$($$$($$($nesting,”Opal“),”Parser“),”DefaultConfig“)),$writer=,$send($$$($$($nesting,”Opal“),”Parser“),”default_parser_class=“,Opal.to_a($writer)),$writer[(lhs=$writer.length,rhs=1,”number“==typeof lhs&&”number“==typeof rhs?lhs-rhs:lhs(rhs))]}($$$($$($nesting,”Opal“),”Parser“),$$$($$($nesting,”Parser“),”Ruby25“),$nesting)},Opal.modules=function(Opal){Opal.top;var $nesting=[],nil=Opal.nil,$$$=Opal.const_get_qualified,$$=Opal.const_get_relative,$klass=(Opal.breaker,Opal.slice,Opal.klass),$truthy=Opal.truthy,$send=Opal.send;return Opal.add_stubs(),$$($nesting,”RUBY_ENGINE“)(”opal“)?(function($base,$super,$parent_nesting){var $Literal_extend_string$1,self=$klass($base,null,”Literal“);.concat($parent_nesting);self.$$prototype.buffer_s=self.$$prototype.buffer=nil,Opal.udef(self,”$extend_string“),Opal.def(self,”$extend_string“,$Literal_extend_string$1=function(string,ts,te){var $a,lhs,rhs;return this.buffer_s=$truthy($a=this.buffer_s)?$a:ts,this.buffer_e=te,this.buffer=(lhs=this.buffer,rhs=string,”number“==typeof lhs&&”number“==typeof rhs?lhs+rhs:lhs(rhs))},$Literal_extend_string$1.$$arity=3)}($$$($$($nesting,”Parser“),”Lexer“),0,$nesting),function($base,$super,$parent_nesting){var $Buffer_source_lines$2,self=$klass($base,null,”Buffer“);.concat($parent_nesting);return self.$$prototype.lines=self.$$prototype.source=nil,Opal.def(self,”$source_lines“,$Buffer_source_lines$2=function(){var $a,$$3,self=this,lines=nil;return self.lines=$truthy($a=self.lines)?$a:(lines=self.source.$lines().$to_a(),$truthy(self.source(”n“))&&lines(”“),$send(lines,”map“,[],(($$3=function(line){$$3.$$s;return null==line&&(line=nil),line.$chomp(”n“)}).$$s=self,$$3.$$arity=1,$$3)))},$Buffer_source_lines$2.$$arity=0),nil&&”source_lines“}($$$($$($nesting,”Parser“),”Source“),0,$nesting)):nil},Opal.modules=function(Opal){var self=Opal.top,nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative);Opal.breaker,Opal.slice;return Opal.add_stubs(),self.$require(”opal/ast/builder“),self.$require(”opal/rewriter“),self.$require(”opal/parser/source_buffer“),self.$require(”opal/parser/default_config“),self.$require(”opal/parser/with_ruby_lexer“),$$([],”RUBY_ENGINE“)(”opal“)?self.$require(”opal/parser/patch“):nil},Opal.modules=function(Opal){Opal.top;var $nesting=[],nil=Opal.nil,$module=(Opal.const_get_qualified,Opal.const_get_relative,Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$truthy=Opal.truthy;return Opal.add_stubs([”$attr_reader“,”$to_s“,”$inspect“,”$type“,”$===“,”$first“,”$children“,”$“,”$line“,”$column“]),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $Fragment_initialize$1,$Fragment_inspect$2,$Fragment_source_map_name$3,$Fragment_line$4,$Fragment_column$5,self=$klass($base,null,”Fragment“);.concat($parent_nesting);self.$$prototype.code=self.$$prototype.sexp=nil,self.$attr_reader(”code“),Opal.def(self,”$initialize“,$Fragment_initialize$1=function(code,scope,sexp){return null==sexp&&(sexp=nil),this.code=code.$to_s(),this.sexp=sexp,this.scope=scope},$Fragment_initialize$1.$$arity=-3),Opal.def(self,”$inspect“,$Fragment_inspect$2=function(){return”f(“+this.code.$inspect()+”)“},$Fragment_inspect$2.$$arity=0),Opal.def(self,”$source_map_name“,$Fragment_source_map_name$3=function(){var self=this,$case=nil;return $case=self.sexp.$type(),”top“($case)||”begin“($case)||”newline“($case)||”js_return“($case)?nil:”self“($case)?”self“:”module“($case)?”module“:”class“($case)?”class“:”int“($case)?self.sexp.$children().$first():”def“($case)?self.sexp.$children().$first():”defs“($case)?self.sexp.$children()[”$“](1):”send“($case)?self.sexp.$children()[”$“](1):”lvar“($case)||”lvasgn“($case)||”lvdeclare“($case)||”ivar“($case)||”ivasgn“($case)||”gvar“($case)||”cvar“($case)||”cvasgn“($case)||”gvars“($case)||”gvasgn“($case)?self.sexp.$children().$first():nil},$Fragment_source_map_name$3.$$arity=0),Opal.def(self,”$line“,$Fragment_line$4=function(){return $truthy(this.sexp)?this.sexp.$line():nil},$Fragment_line$4.$$arity=0),Opal.def(self,”$column“,$Fragment_column$5=function(){return $truthy(this.sexp)?this.sexp.$column():nil},$Fragment_column$5.$$arity=0)}($nesting,0,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],nil=Opal.nil,$$$=Opal.const_get_qualified,$$=Opal.const_get_relative,$module=(Opal.breaker,Opal.slice,Opal.module),$truthy=Opal.truthy,$send=Opal.send;return Opal.add_stubs([”$require“,”$valid_name?“,”$inspect“,”$=~“,”$to_s“,”$+“,”$indent“,”$compiler“,”$to_proc“,”$parser_indent“,”$push“,”$current_indent“,”$js_truthy_optimize“,”$helper“,”$fragment“,”$expr“,”$==“,”$type“,”$“,”$children“,”$uses_block!“,”$scope“,”$block_name“,”$handlers“,”$include?“,”$truthy_optimize?“,”$new_temp“,”$wrap“]),self.$require(”opal/regexp_anchors“),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $Helpers_property$1,$Helpers_valid_name$ques$2,$Helpers_mid_to_jsid$3,$Helpers_indent$4,$Helpers_current_indent$5,$Helpers_line$6,$Helpers_empty_line$7,$Helpers_js_truthy$8,$Helpers_js_falsy$9,$Helpers_js_truthy_optimize$10,$Helpers_conditional_send$11,self=$module($base,”Helpers“),$nesting=.concat($parent_nesting);Opal.def(self,”$property“,$Helpers_property$1=function(name){return $truthy(this(name))?”.“+name:”“},$Helpers_property$1.$$arity=1),Opal.def(self,”$valid_name?“,$Helpers_valid_name$ques$2=function(name){return $$$($$$($$($nesting,”Opal“),”Rewriters“),”JsReservedWords“)(name)},$Helpers_valid_name$ques$2.$$arity=1),Opal.def(self,”$mid_to_jsid“,$Helpers_mid_to_jsid$3=function(mid){var lhs,rhs;return $truthy(/=|+|-|*|/|!|?|<|\>|&|||^|%|~|[/(mid.$to_s()))?”[’$“mid”‘]“:(rhs=mid,”number“==typeof(lhs=”.$“)&&”number“==typeof rhs?lhs+rhs:lhs(rhs))},$Helpers_mid_to_jsid$3.$$arity=1),Opal.def(self,”$indent“,$Helpers_indent$4=function(){var $iter=$Helpers_indent$4.$$p,block=$iter||nil;return $iter&&($Helpers_indent$4.$$p=null),$iter&&($Helpers_indent$4.$$p=null),$send(this.$compiler(),”indent“,[],block.$to_proc())},$Helpers_indent$4.$$arity=0),Opal.def(self,”$current_indent“,$Helpers_current_indent$5=function(){return this.$compiler().$parser_indent()},$Helpers_current_indent$5.$$arity=0),Opal.def(self,”$line“,$Helpers_line$6=function($a){var strs;return strs=Opal.slice.call(arguments,0,arguments.length),this.$push(”n“+this.$current_indent()),$send(this,”push“,Opal.to_a(strs))},$Helpers_line$6.$$arity=-1),Opal.def(self,”$empty_line“,$Helpers_empty_line$7=function(){return this.$push(”n“)},$Helpers_empty_line$7.$$arity=0),Opal.def(self,”$js_truthy“,$Helpers_js_truthy$8=function(sexp){var optimize;return $truthy(optimize=this.$js_truthy_optimize(sexp))?optimize:(this.$helper(”truthy“),)},$Helpers_js_truthy$8.$$arity=1),Opal.def(self,”$js_falsy“,$Helpers_js_falsy$9=function(sexp){return sexp.$type()(”send“)&&sexp.$children()[”$“](1)(”block_given?“)?(this.$scope()(),this.$scope().$block_name()+” === nil“):(this.$helper(”falsy“),)},$Helpers_js_falsy$9.$$arity=1),Opal.def(self,”$js_truthy_optimize“,$Helpers_js_truthy_optimize$10=function(sexp){var $a,$b,mid=nil,receiver_handler_class=nil,receiver=nil,allow_optimization_on_type=nil;return sexp.$type()(”send“)?(mid=sexp.$children()[”$“](1),receiver_handler_class=$truthy($a=receiver=sexp.$children()[”$“](0))?this.$compiler().$handlers()[”$“](receiver.$type()):$a,allow_optimization_on_type=$truthy($a=$truthy($b=$$$($$($nesting,”Compiler“),”COMPARE“)(mid.$to_s()))?receiver_handler_class:$b)?receiver_handler_class():$a,$truthy($truthy($a=$truthy($b=allow_optimization_on_type)?$b:mid(”block_given?“))?$a:mid(”==“))?this.$expr(sexp):nil):nil},$Helpers_js_truthy_optimize$10.$$arity=1),Opal.def(self,”$conditional_send“,$Helpers_conditional_send$11=function(recvr){var receiver_temp,$iter=$Helpers_conditional_send$11.$$p,$yield=$iter||nil;return $iter&&($Helpers_conditional_send$11.$$p=null),receiver_temp=this.$scope().$new_temp(),this.$push(receiver_temp+” = “,recvr),this.$push(”, (“receiver_temp” === nil || “receiver_temp” == null) ? nil : “),Opal.yield1($yield,receiver_temp),this.$wrap(”(“,”)“)},$Helpers_conditional_send$11.$$arity=1)}($nesting,$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],nil=Opal.nil,$$$=Opal.const_get_qualified,$$=Opal.const_get_relative,$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$truthy=Opal.truthy,$hash2=Opal.hash2,$send=Opal.send;return Opal.add_stubs([”$require“,”$include“,”$each“,”$=“,”$handlers“,”$-“,”$each_with_index“,”$define_method“,”$),self.$require(“opal/nodes/helpers”),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $Base_handlers$1,$Base_handle$2,$Base_children$4,$Base_truthy_optimize$ques$7,$Base_initialize$8,$Base_children$9,$Base_compile_to_fragments$10,$Base_compile$11,$Base_push$12,$Base_unshift$14,$Base_wrap$16,$Base_fragment$17,$Base_error$18,$Base_scope$19,$Base_s$20,$Base_expr$ques$21,$Base_recv$ques$22,$Base_stmt$ques$23,$Base_process$24,$Base_expr$25,$Base_recv$26,$Base_stmt$27,$Base_expr_or_nil$28,$Base_add_local$29,$Base_add_ivar$30,$Base_add_gvar$31,$Base_add_temp$32,$Base_helper$33,$Base_with_temp$34,$Base_in_while$ques$35,$Base_while_loop$36,$Base_has_rescue_else$ques$37,$Base_in_ensure$38,$Base_in_ensure$ques$39,$Base_class_variable_owner_nesting_level$40,$Base_class_variable_owner$41,$Base_comments$42,self=$klass($base,null,“Base”),$nesting=.concat($parent_nesting);self.$$prototype.sexp=self.$$prototype.fragments=self.$$prototype.compiler=self.$$prototype.level=nil,self.$include($$($nesting,“Helpers”)),Opal.defs(self,“$handlers”,$Base_handlers$1=function(){var $a;return null==this.handlers&&(this.handlers=nil),this.handlers=$truthy($a=this.handlers)?$a:$hash2([],{})},$Base_handlers$1.$$arity=0),Opal.defs(self,“$handle”,$Base_handle$2=function($a){var $post_args,$$3;return $post_args=Opal.slice.call(arguments,0,arguments.length),$send($post_args,“each”,[],(($$3=function(type){var $writer,lhs,rhs,self=$$3.$$s||this;return null==type&&(type=nil),$writer=,$send($$($nesting,“Base”).$handlers(),“[]=”,Opal.to_a($writer)),$writer[(lhs=$writer.length,rhs=1,“number”==typeof lhs&&“number”==typeof rhs?lhs-rhs:lhs(rhs))]}).$$s=this,$$3.$$arity=1,$$3))},$Base_handle$2.$$arity=-1),Opal.defs(self,“$children”,$Base_children$4=function($a){var $post_args,$$5;return $post_args=Opal.slice.call(arguments,0,arguments.length),$send($post_args,“each_with_index”,[],(($$5=function(name,idx){var $$6,self=$$5.$$s||this;return null==name&&(name=nil),null==idx&&(idx=nil),$send(self,“define_method”,,(($$6=function(){var self=$$6.$$s||this;return null==self.sexp&&(self.sexp=nil),self.sexp.$children()[“$”](idx)}).$$s=self,$$6.$$arity=0,$$6))}).$$s=this,$$5.$$arity=2,$$5))},$Base_children$4.$$arity=-1),Opal.defs(self,“$truthy_optimize?”,$Base_truthy_optimize$ques$7=function(){return!1},$Base_truthy_optimize$ques$7.$$arity=0),self.$attr_reader(“compiler”,“type”),Opal.def(self,“$initialize”,$Base_initialize$8=function(sexp,level,compiler){return this.sexp=sexp,this.type=sexp.$type(),this.level=level,this.compiler=compiler},$Base_initialize$8.$$arity=3),Opal.def(self,“$children”,$Base_children$9=function(){return this.sexp.$children()},$Base_children$9.$$arity=0),Opal.def(self,“$compile_to_fragments”,$Base_compile_to_fragments$10=function(){var $a;return $truthy(null!=($a=this.fragments)&&$a!==nil?“instance-variable”:nil)||(this.fragments=[],this.$compile()),this.fragments},$Base_compile_to_fragments$10.$$arity=0),Opal.def(self,“$compile”,$Base_compile$11=function(){return this.$raise(“Not Implemented”)},$Base_compile$11.$$arity=0),Opal.def(self,“$push”,$Base_push$12=function($a){var $post_args,$$13;return $post_args=Opal.slice.call(arguments,0,arguments.length),$send($post_args,“each”,[],(($$13=function(str){var self=$$13.$$s||this;return null==self.fragments&&(self.fragments=nil),null==str&&(str=nil),$truthy(str($$($nesting,“String”)))&&(str=self.$fragment(str)),self.fragments(str)}).$$s=this,$$13.$$arity=1,$$13))},$Base_push$12.$$arity=-1),Opal.def(self,“$unshift”,$Base_unshift$14=function($a){var $post_args,$$15;return $post_args=Opal.slice.call(arguments,0,arguments.length),$send($post_args.$reverse(),“each”,[],(($$15=function(str){var self=$$15.$$s||this;return null==self.fragments&&(self.fragments=nil),null==str&&(str=nil),$truthy(str($$($nesting,“String”)))&&(str=self.$fragment(str)),self.fragments.$unshift(str)}).$$s=this,$$15.$$arity=1,$$15))},$Base_unshift$14.$$arity=-1),Opal.def(self,“$wrap”,$Base_wrap$16=function(pre,post){return this.$unshift(pre),this.$push(post)},$Base_wrap$16.$$arity=2),Opal.def(self,“$fragment”,$Base_fragment$17=function(str){return $$$($$($nesting,“Opal”),“Fragment”).$new(str,this.$scope(),this.sexp)},$Base_fragment$17.$$arity=1),Opal.def(self,“$error”,$Base_error$18=function(msg){return this.compiler.$error(msg)},$Base_error$18.$$arity=1),Opal.def(self,“$scope”,$Base_scope$19=function(){return this.compiler.$scope()},$Base_scope$19.$$arity=0),Opal.def(self,“$s”,$Base_s$20=function($a){var args;return args=Opal.slice.call(arguments,0,arguments.length),$send(this.compiler,“s”,Opal.to_a(args))},$Base_s$20.$$arity=-1),Opal.def(self,“$expr?”,$Base_expr$ques$21=function(){return this.level(“expr”)},$Base_expr$ques$21.$$arity=0),Opal.def(self,“$recv?”,$Base_recv$ques$22=function(){return this.level(“recv”)},$Base_recv$ques$22.$$arity=0),Opal.def(self,“$stmt?”,$Base_stmt$ques$23=function(){return this.level(“stmt”)},$Base_stmt$ques$23.$$arity=0),Opal.def(self,“$process”,$Base_process$24=function(sexp,level){return null==level&&(level=“expr”),this.compiler.$process(sexp,level)},$Base_process$24.$$arity=-2),Opal.def(self,“$expr”,$Base_expr$25=function(sexp){return this.compiler.$process(sexp,“expr”)},$Base_expr$25.$$arity=1),Opal.def(self,“$recv”,$Base_recv$26=function(sexp){return this.compiler.$process(sexp,“recv”)},$Base_recv$26.$$arity=1),Opal.def(self,“$stmt”,$Base_stmt$27=function(sexp){return this.compiler.$process(sexp,“stmt”)},$Base_stmt$27.$$arity=1),Opal.def(self,“$expr_or_nil”,$Base_expr_or_nil$28=function(sexp){return $truthy(sexp)?this.$expr(sexp):“nil”},$Base_expr_or_nil$28.$$arity=1),Opal.def(self,“$add_local”,$Base_add_local$29=function(name){return this.$scope().$add_scope_local(name.$to_sym())},$Base_add_local$29.$$arity=1),Opal.def(self,“$add_ivar”,$Base_add_ivar$30=function(name){return this.$scope().$add_scope_ivar(name)},$Base_add_ivar$30.$$arity=1),Opal.def(self,“$add_gvar”,$Base_add_gvar$31=function(name){return this.$scope().$add_scope_gvar(name)},$Base_add_gvar$31.$$arity=1),Opal.def(self,“$add_temp”,$Base_add_temp$32=function(temp){return this.$scope().$add_scope_temp(temp)},$Base_add_temp$32.$$arity=1),Opal.def(self,“$helper”,$Base_helper$33=function(name){return this.compiler.$helper(name)},$Base_helper$33.$$arity=1),Opal.def(self,“$with_temp”,$Base_with_temp$34=function(){var $iter=$Base_with_temp$34.$$p,block=$iter||nil;return $iter&&($Base_with_temp$34.$$p=null),$iter&&($Base_with_temp$34.$$p=null),$send(this.compiler,“with_temp”,[],block.$to_proc())},$Base_with_temp$34.$$arity=0),Opal.def(self,“$in_while?”,$Base_in_while$ques$35=function(){return this.compiler()},$Base_in_while$ques$35.$$arity=0),Opal.def(self,“$while_loop”,$Base_while_loop$36=function(){return this.compiler.$instance_variable_get(“@while_loop”)},$Base_while_loop$36.$$arity=0),Opal.def(self,“$has_rescue_else?”,$Base_has_rescue_else$ques$37=function(){return this.$scope()()},$Base_has_rescue_else$ques$37.$$arity=0),Opal.def(self,“$in_ensure”,$Base_in_ensure$38=function(){var $iter=$Base_in_ensure$38.$$p,block=$iter||nil;return $iter&&($Base_in_ensure$38.$$p=null),$iter&&($Base_in_ensure$38.$$p=null),$send(this.$scope(),“in_ensure”,[],block.$to_proc())},$Base_in_ensure$38.$$arity=0),Opal.def(self,“$in_ensure?”,$Base_in_ensure$ques$39=function(){return this.$scope()()},$Base_in_ensure$ques$39.$$arity=0),Opal.def(self,“$class_variable_owner_nesting_level”,$Base_class_variable_owner_nesting_level$40=function(){var $b,lhs,rhs,cvar_scope=nil,nesting_level=nil;for(cvar_scope=this.$scope(),nesting_level=0;$truthy($truthy($b=cvar_scope)?cvar_scope()[“$!”]():$b);)$truthy(cvar_scope())&&(rhs=1,nesting_level=“number”==typeof(lhs=nesting_level)&&“number”==typeof rhs?lhs+rhs:lhs(rhs)),cvar_scope=cvar_scope.$parent();return nesting_level},$Base_class_variable_owner_nesting_level$40.$$arity=0),Opal.def(self,“$class_variable_owner”,$Base_class_variable_owner$41=function(){return $truthy(this.$scope())?“$nesting”:“Opal.Object”},$Base_class_variable_owner$41.$$arity=0),Opal.def(self,“$comments”,$Base_comments$42=function(){return this.$compiler().$comments()[“$”](this.sexp.$loc())},$Base_comments$42.$$arity=0)}($nesting,0,$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){function $rb_plus(lhs,rhs){return“number”==typeof lhs&&“number”==typeof rhs?lhs+rhs:lhs(rhs)}function $rb_minus(lhs,rhs){return“number”==typeof lhs&&“number”==typeof rhs?lhs-rhs:lhs(rhs)}var self=Opal.top,$nesting=[],nil=Opal.nil,$$$=Opal.const_get_qualified,$$=Opal.const_get_relative,$slice=(Opal.breaker,Opal.slice),$module=Opal.module,$klass=Opal.klass,$truthy=Opal.truthy,$hash2=Opal.hash2,$send=Opal.send,$lambda=Opal.lambda;return Opal.add_stubs([“$require”,“$handle”,“$push”,“$to_s”,“$type”,“$children”,“$value”,“$recv?”,“$wrap”,“$freeze”,“$join”,“$keys”,“$gsub”,“$even?”,“$length”,“$last_match”,“$+”,“$chop”,“$”,“$encoding”,“$!=”,“$inspect”,“$to_i”,“$to_utf16”,“$translate_escape_chars”,“$name”,“$upcase”,“$<=”,“$call”,“$-”,“$>>”,“$&”,“$attr_accessor”,“$extract_flags_and_value”,“$select!”,“$flags”,“$=~”,“$warning”,“$compiler”,“$===”,“$compile_dynamic_regexp”,“$compile_static_regexp”,“$any?”,“$expr”,“$new”,“$map”,“$to_proc”,“$flags=”,“$s”,“$value=”,“$include?”,“$is_a?”,“$==”,“$updated”,“$delete”,“$source”,“$expression”,“$loc”,“$regexp”,“$each”,“$compile_inline?”,“$helper”,“$compile_inline”,“$compile_range_initialize”,“$start”,“$finish”,“$raise”,“$numerator”,“$denominator”,“$real”,“$imag”]),self.$require(“opal/nodes/base”),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $ValueNode_compile$1,$ValueNode_truthy_optimize$ques$2,self=$klass($base,$super,“ValueNode”);.concat($parent_nesting);self.$handle(“true”,“false”,“self”,“nil”),Opal.def(self,“$compile”,$ValueNode_compile$1=function(){return this.$push(this.$type().$to_s())},$ValueNode_compile$1.$$arity=0),Opal.defs(self,“$truthy_optimize?”,$ValueNode_truthy_optimize$ques$2=function(){return!0},$ValueNode_truthy_optimize$ques$2.$$arity=0)}($nesting,$$($nesting,“Base”),$nesting),function($base,$super,$parent_nesting){var $NumericNode_compile$3,$NumericNode_truthy_optimize$ques$4,self=$klass($base,$super,“NumericNode”);.concat($parent_nesting);self.$handle(“int”,“float”),self.$children(“value”),Opal.def(self,“$compile”,$NumericNode_compile$3=function(){return this.$push(this.$value().$to_s()),$truthy(this())?this.$wrap(“(”,“)”):nil},$NumericNode_compile$3.$$arity=0),Opal.defs(self,“$truthy_optimize?”,$NumericNode_truthy_optimize$ques$4=function(){return!0},$NumericNode_truthy_optimize$ques$4.$$arity=0)}($nesting,$$($nesting,“Base”),$nesting),function($base,$super,$parent_nesting){var $StringNode_translate_escape_chars$5,$StringNode_compile$7,$StringNode_to_utf16$9,self=$klass($base,$super,“StringNode”),$nesting=.concat($parent_nesting);self.$handle(“str”),self.$children(“value”),Opal.const_set($nesting,“ESCAPE_CHARS”,$hash2(,{a:“\u0007”,e:“\u001b”}).$freeze()),Opal.const_set($nesting,“ESCAPE_REGEX”,new RegExp(“(\+)()”)),Opal.def(self,“$translate_escape_chars”,$StringNode_translate_escape_chars$5=function(inspect_string){var $$6;return $send(inspect_string,“gsub”,,(($$6=function(original){$$6.$$s;return null==original&&(original=nil),$truthy($$($nesting,“Regexp”).$last_match(1).$length()())?original:$rb_plus($$($nesting,“Regexp”).$last_match(1).$chop(),$$($nesting,“ESCAPE_CHARS”)[“$”]($$($nesting,“Regexp”).$last_match(2)))}).$$s=this,$$6.$$arity=1,$$6))},$StringNode_translate_escape_chars$5.$$arity=1),Opal.def(self,“$compile”,$StringNode_compile$7=function(){var $$8,$a,should_encode,sanitized_value,string_value=nil,encoding=nil;return should_encode=(encoding=(string_value=this.$value()).$encoding())($$$($$($nesting,“Encoding”),“UTF_8”)),sanitized_value=$send(string_value.$inspect(),“gsub”,[/\u{(+)}/],(($$8=function(){var code_point,self=$$8.$$s||this;return code_point=$$($nesting,“Regexp”).$last_match(1).$to_i(16),self.$to_utf16(code_point)}).$$s=this,$$8.$$arity=0,$$8)),this.$push(this.$translate_escape_chars(sanitized_value)),$truthy($truthy($a=should_encode)?$$($nesting,“RUBY_ENGINE”)(“opal”):$a)?this.$push('.$force_encoding(“',encoding.$name(),'”)'):nil},$StringNode_compile$7.$$arity=0),Opal.def(self,“$to_utf16”,$StringNode_to_utf16$9=function(code_point){var $$10,lead_surrogate,tail_surrogate,lhs,rhs,u=nil;return 1023,u=$lambda((($$10=function(code_unit){$$10.$$s;return null==code_unit&&(code_unit=nil),$rb_plus(“\u”,code_unit.$to_s(16).$upcase())}).$$s=this,$$10.$$arity=1,$$10)),$truthy((rhs=65535,“number”==typeof(lhs=code_point)&&“number”==typeof rhs?lhs<=rhs:lhs(>“”>rhs)))?u.$call(code_point):(lead_surrogate=$rb_plus(55296,(code_point=$rb_minus(code_point,65536))(10)),tail_surrogate=$rb_plus(56320,code_point(1023)),$rb_plus(u.$call(lead_surrogate),u.$call(tail_surrogate)))},$StringNode_to_utf16$9.$$arity=1)}($nesting,$$($nesting,“Base”),$nesting),function($base,$super,$parent_nesting){var $SymbolNode_compile$11,self=$klass($base,$super,“SymbolNode”);.concat($parent_nesting);self.$handle(“sym”),self.$children(“value”),Opal.def(self,“$compile”,$SymbolNode_compile$11=function(){return this.$push(this.$value().$to_s().$inspect())},$SymbolNode_compile$11.$$arity=0)}($nesting,$$($nesting,“Base”),$nesting),function($base,$super,$parent_nesting){var $RegexpNode_initialize$12,$RegexpNode_compile$13,$RegexpNode_compile_dynamic_regexp$15,$RegexpNode_compile_static_regexp$16,$RegexpNode_extract_flags_and_value$17,$RegexpNode_raw_value$19,self=$klass($base,$super,“RegexpNode”),$nesting=.concat($parent_nesting);self.$$prototype.sexp=nil,self.$handle(“regexp”),self.$attr_accessor(“value”,“flags”),Opal.const_set($nesting,“SUPPORTED_FLAGS”,//),Opal.def(self,“$initialize”,$RegexpNode_initialize$12=function($a){var $zuper_ii,$iter=$RegexpNode_initialize$12.$$p,$zuper=nil,$zuper_i=nil;for($iter&&($RegexpNode_initialize$12.$$p=null),$zuper_i=0,$zuper_ii=arguments.length,$zuper=new Array($zuper_ii);$zuper_i<$zuper_ii;$zuper_i++)$zuper=arguments;return Opal.slice.call(arguments,0,arguments.length),$send(this,Opal.find_super_dispatcher(this,“initialize”,$RegexpNode_initialize$12,!1),$zuper,$iter),this.$extract_flags_and_value()},$RegexpNode_initialize$12.$$arity=-1),Opal.def(self,“$compile”,$RegexpNode_compile$13=function(){var $$14,self=this,$case=nil;return $send(self.$flags(),“select!”,[],(($$14=function(flag){var self=$$14.$$s||this;return null==flag&&(flag=nil),!!$truthy($$($nesting,“SUPPORTED_FLAGS”)(flag))||(self.$compiler().$warning(“Skipping the '”flag“' Regexp flag as it's not widely supported by JavaScript vendors.”),!1)}).$$s=self,$$14.$$arity=1,$$14)),$case=self.$value().$type(),“dstr”($case)||“begin”($case)?self.$compile_dynamic_regexp():“str”($case)?self.$compile_static_regexp():nil},$RegexpNode_compile$13.$$arity=0),Opal.def(self,“$compile_dynamic_regexp”,$RegexpNode_compile_dynamic_regexp$15=function(){return $truthy(this.$flags()())?this.$push(“new RegExp(”,this.$expr(this.$value()),“, '”+this.$flags().$join()+“')”):this.$push(“new RegExp(”,this.$expr(this.$value()),“)”)},$RegexpNode_compile_dynamic_regexp$15.$$arity=0),Opal.def(self,“$compile_static_regexp”,$RegexpNode_compile_static_regexp$16=function(){var self=this,value=nil,$case=nil,message=nil;return value=self.$value().$children()[“$”](0),“”($case=value)?self.$push(“/(?:)/”):/?<\w+\>/($case)?(message=“named captures are not supported in javascript: ”+value.$inspect(),self.$push(“self.$raise(new SyntaxError('”message“'))”)):self.$push(“”+$$($nesting,“Regexp”).$new(value).$inspect()+self.$flags().$join())},$RegexpNode_compile_static_regexp$16.$$arity=0),Opal.def(self,“$extract_flags_and_value”,$RegexpNode_extract_flags_and_value$17=function(){var $a,$b,$$18,self=this,values=nil,flags_sexp=nil,$writer=nil,$case=nil,parts=nil;return $b=($b=($a=[].concat(Opal.to_a(self.$children()))).length-1)<0?0:$b,values=$slice.call($a,0,$b),flags_sexp=null==$a?nil:$a,$writer=[$send(flags_sexp.$children(),“map”,,“to_s”.$to_proc())],$send(self,“flags=”,Opal.to_a($writer)),$writer,$writer=[($case=values.$length(),(0)($case)?self.$s(“str”,“”):1($case)?values[“$”](0):$send(self,“s”,.concat(Opal.to_a(values))))],$send(self,“value=”,Opal.to_a($writer)),$writer,$truthy(self.$flags()(“x”))&&(parts=$send(self.$value().$children(),“map”,[],(($$18=function(part){var $c,self=$$18.$$s||this,trimmed_value=nil;return null==part&&(part=nil),$truthy($truthy($c=part($$$($$$($$$(“::”,“Opal”),“AST”),“Node”)))?part.$type()(“str”):$c)?(trimmed_value=part.$children()[“$”](0).$gsub(/^s*#.*/,“”).$gsub(/s/,“”),self.$s(“str”,trimmed_value)):part}).$$s=self,$$18.$$arity=1,$$18)),$writer=,$send(self,“value=”,Opal.to_a($writer)),$writer,self.$flags().$delete(“x”)),self.$value().$type()(“str”)?($writer=[self.$s(“str”,self.$value().$children()[“$”](0).$gsub(“\A”,“^”).$gsub(“\z”,“$”))],$send(self,“value=”,Opal.to_a($writer)),$writer):nil},$RegexpNode_extract_flags_and_value$17.$$arity=0),Opal.def(self,“$raw_value”,$RegexpNode_raw_value$19=function(){var $writer;return $writer=,$send(this,“value=”,Opal.to_a($writer)),$writer},$RegexpNode_raw_value$19.$$arity=0)}($nesting,$$($nesting,“Base”),$nesting),function($base,$super,$parent_nesting){var $MatchCurrentLineNode_compile$20,self=$klass($base,$super,“MatchCurrentLineNode”);.concat($parent_nesting);self.$handle(“match_current_line”),self.$children(“regexp”),Opal.def(self,“$compile”,$MatchCurrentLineNode_compile$20=function(){var gvar_sexp,send_node;return gvar_sexp=this.$s(“gvar”,“$_”),send_node=this.$s(“send”,gvar_sexp,“=~”,this.$regexp()),this.$push(this.$expr(send_node))},$MatchCurrentLineNode_compile$20.$$arity=0)}($nesting,$$($nesting,“Base”),$nesting),function($base,$super,$parent_nesting){var $DynamicStringNode_compile$21,self=$klass($base,$super,“DynamicStringNode”);.concat($parent_nesting);self.$handle(“dstr”),Opal.def(self,“$compile”,$DynamicStringNode_compile$21=function(){var $$22;return this.$push('“”'),$send(this.$children(),“each”,[],(($$22=function(part){var self=$$22.$$s||this;return null==part&&(part=nil),self.$push(“ + ”),part.$type()(“str”)?self.$push(part.$children()[“$”](0).$inspect()):self.$push(“(”,self.$expr(part),“)”),$truthy(self())?self.$wrap(“(”,“)”):nil}).$$s=this,$$22.$$arity=1,$$22))},$DynamicStringNode_compile$21.$$arity=0)}($nesting,$$($nesting,“Base”),$nesting),function($base,$super,$parent_nesting){var self=$klass($base,$super,“DynamicSymbolNode”);.concat($parent_nesting);self.$handle(“dsym”)}($nesting,$$($nesting,“DynamicStringNode”),$nesting),function($base,$super,$parent_nesting){var $RangeNode_compile$23,$RangeNode_compile_inline$ques$24,$RangeNode_compile_inline$25,$RangeNode_compile_range_initialize$26,self=$klass($base,$super,“RangeNode”),$nesting=.concat($parent_nesting);self.$children(“start”,“finish”),Opal.const_set($nesting,“SIMPLE_CHILDREN_TYPES”,.$freeze()),Opal.def(self,“$compile”,$RangeNode_compile$23=function(){return $truthy(this())?(this.$helper(“range”),this.$compile_inline()):this.$compile_range_initialize()},$RangeNode_compile$23.$$arity=0),Opal.def(self,“$compile_inline?”,$RangeNode_compile_inline$ques$24=function(){var $a;return $truthy($a=this.$start().$type()(this.$finish().$type())?$$($nesting,“SIMPLE_CHILDREN_TYPES”)(this.$start().$type()):this.$start().$type()(this.$finish().$type()))?$$($nesting,“SIMPLE_CHILDREN_TYPES”)(this.$finish().$type()):$a},$RangeNode_compile_inline$ques$24.$$arity=0),Opal.def(self,“$compile_inline”,$RangeNode_compile_inline$25=function(){return this.$raise($$($nesting,“NotImplementedError”))},$RangeNode_compile_inline$25.$$arity=0),Opal.def(self,“$compile_range_initialize”,$RangeNode_compile_range_initialize$26=function(){return this.$raise($$($nesting,“NotImplementedError”))},$RangeNode_compile_range_initialize$26.$$arity=0)}($nesting,$$($nesting,“Base”),$nesting),function($base,$super,$parent_nesting){var $InclusiveRangeNode_compile_inline$27,$InclusiveRangeNode_compile_range_initialize$28,self=$klass($base,$super,“InclusiveRangeNode”);.concat($parent_nesting);self.$handle(“irange”),Opal.def(self,“$compile_inline”,$InclusiveRangeNode_compile_inline$27=function(){return this.$push(“$range(”,this.$expr(this.$start()),“, ”,this.$expr(this.$finish()),“, false)”)},$InclusiveRangeNode_compile_inline$27.$$arity=0),Opal.def(self,“$compile_range_initialize”,$InclusiveRangeNode_compile_range_initialize$28=function(){return this.$push(“Opal.Range.$new(”,this.$expr(this.$start()),“, ”,this.$expr(this.$finish()),“, false)”)},$InclusiveRangeNode_compile_range_initialize$28.$$arity=0)}($nesting,$$($nesting,“RangeNode”),$nesting),function($base,$super,$parent_nesting){var $ExclusiveRangeNode_compile_inline$29,$ExclusiveRangeNode_compile_range_initialize$30,self=$klass($base,$super,“ExclusiveRangeNode”);.concat($parent_nesting);self.$handle(“erange”),Opal.def(self,“$compile_inline”,$ExclusiveRangeNode_compile_inline$29=function(){return this.$push(“$range(”,this.$expr(this.$start()),“, ”,this.$expr(this.$finish()),“, true)”)},$ExclusiveRangeNode_compile_inline$29.$$arity=0),Opal.def(self,“$compile_range_initialize”,$ExclusiveRangeNode_compile_range_initialize$30=function(){return this.$push(“Opal.Range.$new(”,this.$expr(this.$start()),“,”,this.$expr(this.$finish()),“, true)”)},$ExclusiveRangeNode_compile_range_initialize$30.$$arity=0)}($nesting,$$($nesting,“RangeNode”),$nesting),function($base,$super,$parent_nesting){var $RationalNode_compile$31,self=$klass($base,$super,“RationalNode”);.concat($parent_nesting);self.$handle(“rational”),self.$children(“value”),Opal.def(self,“$compile”,$RationalNode_compile$31=function(){return this.$push(“Opal.Rational.$new(”+this.$value().$numerator()+“, ”+this.$value().$denominator()+“)”)},$RationalNode_compile$31.$$arity=0)}($nesting,$$($nesting,“Base”),$nesting),function($base,$super,$parent_nesting){var $ComplexNode_compile$32,self=$klass($base,$super,“ComplexNode”);.concat($parent_nesting);self.$handle(“complex”),self.$children(“value”),Opal.def(self,“$compile”,$ComplexNode_compile$32=function(){return this.$push(“Opal.Complex.$new(”+this.$value().$real()+“, ”+this.$value().$imag()+“)”)},$ComplexNode_compile$32.$$arity=0)}($nesting,$$($nesting,“Base”),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$truthy=Opal.truthy,$send=Opal.send,$range=Opal.range;return Opal.add_stubs([“$require”,“$handle”,“$children”,“$irb?”,“$compiler”,“$top?”,“$scope”,“$using_irb?”,“$push”,“$to_s”,“$var_name”,“$with_temp”,“$property”,“$wrap”,“$add_local”,“$expr”,“$value”,“$recv?”,“$expr?”,“$”,“$name”,“$add_ivar”,“$helper”,“$add_gvar”,“$===”,“$handle_global_match”,“$handle_post_match”,“$handle_pre_match”,“$raise”,“$index”,“$class_variable_owner”]),self.$require(“opal/nodes/base”),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $LocalVariableNode_using_irb$ques$1,$LocalVariableNode_compile$2,self=$klass($base,$super,“LocalVariableNode”);.concat($parent_nesting);self.$handle(“lvar”),self.$children(“var_name”),Opal.def(self,“$using_irb?”,$LocalVariableNode_using_irb$ques$1=function(){var $a;return $truthy($a=this.$compiler()())?this.$scope()():$a},$LocalVariableNode_using_irb$ques$1.$$arity=0),Opal.def(self,“$compile”,$LocalVariableNode_compile$2=function(){var $$3;return $truthy(this())?$send(this,“with_temp”,[],(($$3=function(tmp){var self=$$3.$$s||this;return null==tmp&&(tmp=nil),self.$push(self.$property(self.$var_name().$to_s())),self.$wrap(“((”tmp“ = Opal.irb_vars”,“) == null ? nil : ”tmp“)”)}).$$s=this,$$3.$$arity=1,$$3)):this.$push(this.$var_name().$to_s())},$LocalVariableNode_compile$2.$$arity=0)}($nesting,$$($nesting,“Base”),$nesting),function($base,$super,$parent_nesting){var $LocalAssignNode_using_irb$ques$4,$LocalAssignNode_compile$5,self=$klass($base,$super,“LocalAssignNode”);.concat($parent_nesting);self.$handle(“lvasgn”),self.$children(“var_name”,“value”),Opal.def(self,“$using_irb?”,$LocalAssignNode_using_irb$ques$4=function(){var $a;return $truthy($a=this.$compiler()())?this.$scope()():$a},$LocalAssignNode_using_irb$ques$4.$$arity=0),Opal.def(self,“$compile”,$LocalAssignNode_compile$5=function(){var $a,$b;return $truthy(this())?this.$push(“Opal.irb_vars”+this.$property(this.$var_name().$to_s())+“ = ”):(this.$add_local(this.$var_name().$to_s()),this.$push(this.$var_name()+“ = ”)),this.$push(this.$expr(this.$value())),$truthy($truthy($a=$truthy($b=this())?$b:this())?this.$value():$a)?this.$wrap(“(”,“)”):nil},$LocalAssignNode_compile$5.$$arity=0)}($nesting,$$($nesting,“Base”),$nesting),function($base,$super,$parent_nesting){var $LocalDeclareNode_compile$6,self=$klass($base,$super,“LocalDeclareNode”);.concat($parent_nesting);self.$handle(“lvdeclare”),self.$children(“var_name”),Opal.def(self,“$compile”,$LocalDeclareNode_compile$6=function(){return this.$add_local(this.$var_name().$to_s()),nil},$LocalDeclareNode_compile$6.$$arity=0)}($nesting,$$($nesting,“Base”),$nesting),function($base,$super,$parent_nesting){var $InstanceVariableNode_var_name$7,$InstanceVariableNode_compile$8,self=$klass($base,$super,“InstanceVariableNode”);.concat($parent_nesting);self.$handle(“ivar”),self.$children(“name”),Opal.def(self,“$var_name”,$InstanceVariableNode_var_name$7=function(){return this.$name().$to_s()[“$”]($range(1,-1,!1))},$InstanceVariableNode_var_name$7.$$arity=0),Opal.def(self,“$compile”,$InstanceVariableNode_compile$8=function(){var name;return name=this.$property(this.$var_name()),this.$add_ivar(name),this.$push(“self”+name)},$InstanceVariableNode_compile$8.$$arity=0)}($nesting,$$($nesting,“Base”),$nesting),function($base,$super,$parent_nesting){var $InstanceAssignNode_var_name$9,$InstanceAssignNode_compile$10,self=$klass($base,$super,“InstanceAssignNode”);.concat($parent_nesting);self.$handle(“ivasgn”),self.$children(“name”,“value”),Opal.def(self,“$var_name”,$InstanceAssignNode_var_name$9=function(){return this.$name().$to_s()[“$”]($range(1,-1,!1))},$InstanceAssignNode_var_name$9.$$arity=0),Opal.def(self,“$compile”,$InstanceAssignNode_compile$10=function(){var $a,$b,name;return name=this.$property(this.$var_name()),this.$push(“self”name“ = ”),this.$push(this.$expr(this.$value())),$truthy($truthy($a=$truthy($b=this())?$b:this())?this.$value():$a)?this.$wrap(“(”,“)”):nil},$InstanceAssignNode_compile$10.$$arity=0)}($nesting,$$($nesting,“Base”),$nesting),function($base,$super,$parent_nesting){var $GlobalVariableNode_var_name$11,$GlobalVariableNode_compile$12,self=$klass($base,$super,“GlobalVariableNode”);.concat($parent_nesting);self.$handle(“gvar”),self.$children(“name”),Opal.def(self,“$var_name”,$GlobalVariableNode_var_name$11=function(){return this.$name().$to_s()[“$”]($range(1,-1,!1))},$GlobalVariableNode_var_name$11.$$arity=0),Opal.def(self,“$compile”,$GlobalVariableNode_compile$12=function(){var name;return this.$helper(“gvars”),name=this.$property(this.$var_name()),this.$add_gvar(name),this.$push(“$gvars”+name)},$GlobalVariableNode_compile$12.$$arity=0)}($nesting,$$($nesting,“Base”),$nesting),function($base,$super,$parent_nesting){var $BackRefNode_compile$13,$BackRefNode_handle_global_match$14,$BackRefNode_handle_pre_match$16,$BackRefNode_handle_post_match$18,self=$klass($base,$super,“BackRefNode”),$nesting=.concat($parent_nesting);self.$handle(“back_ref”),Opal.def(self,“$compile”,$BackRefNode_compile$13=function(){var $zuper_ii,$iter=$BackRefNode_compile$13.$$p,self=this,$case=nil,$zuper=nil,$zuper_i=nil;for($iter&&($BackRefNode_compile$13.$$p=null),$zuper_i=0,$zuper_ii=arguments.length,$zuper=new Array($zuper_ii);$zuper_i<$zuper_ii;$zuper_i++)$zuper=arguments;return self.$helper(“gvars”),$case=self.$var_name(),“&”($case)?self.$handle_global_match():“’”($case)?self.$handle_post_match():“`”($case)?self.$handle_pre_match():“+”($case)?$send(self,Opal.find_super_dispatcher(self,“compile”,$BackRefNode_compile$13,!1),$zuper,$iter):self.$raise($$($nesting,“NotImplementedError”))},$BackRefNode_compile$13.$$arity=0),Opal.def(self,“$handle_global_match”,$BackRefNode_handle_global_match$14=function(){var $$15;return $send(this,“with_temp”,[],(($$15=function(tmp){var self=$$15.$$s||this;return null==tmp&&(tmp=nil),self.$push(“((”tmp“ = $gvars) === nil ? nil : ”tmp“[‘$'](0))”)}).$$s=this,$$15.$$arity=1,$$15))},$BackRefNode_handle_global_match$14.$$arity=0),Opal.def(self,“$handle_pre_match”,$BackRefNode_handle_pre_match$16=function(){var $$17;return $send(this,“with_temp”,[],(($$17=function(tmp){var self=$$17.$$s||this;return null==tmp&&(tmp=nil),self.$push(“((”tmp“ = $gvars) === nil ? nil : ”tmp“.$pre_match())”)}).$$s=this,$$17.$$arity=1,$$17))},$BackRefNode_handle_pre_match$16.$$arity=0),Opal.def(self,“$handle_post_match”,$BackRefNode_handle_post_match$18=function(){var $$19;return $send(this,“with_temp”,[],(($$19=function(tmp){var self=$$19.$$s||this;return null==tmp&&(tmp=nil),self.$push(“((”tmp“ = $gvars) === nil ? nil : ”tmp“.$post_match())”)}).$$s=this,$$19.$$arity=1,$$19))},$BackRefNode_handle_post_match$18.$$arity=0)}($nesting,$$($nesting,“GlobalVariableNode”),$nesting),function($base,$super,$parent_nesting){var $GlobalAssignNode_var_name$20,$GlobalAssignNode_compile$21,self=$klass($base,$super,“GlobalAssignNode”);.concat($parent_nesting);self.$handle(“gvasgn”),self.$children(“name”,“value”),Opal.def(self,“$var_name”,$GlobalAssignNode_var_name$20=function(){return this.$name().$to_s()[“$”]($range(1,-1,!1))},$GlobalAssignNode_var_name$20.$$arity=0),Opal.def(self,“$compile”,$GlobalAssignNode_compile$21=function(){var $a,$b,name;return this.$helper(“gvars”),name=this.$property(this.$var_name()),this.$push(“$gvars”name“ = ”),this.$push(this.$expr(this.$value())),$truthy($truthy($a=$truthy($b=this())?$b:this())?this.$value():$a)?this.$wrap(“(”,“)”):nil},$GlobalAssignNode_compile$21.$$arity=0)}($nesting,$$($nesting,“Base”),$nesting),function($base,$super,$parent_nesting){var $NthrefNode_compile$22,self=$klass($base,$super,“NthrefNode”);.concat($parent_nesting);self.$handle(“nth_ref”),self.$children(“index”),Opal.def(self,“$compile”,$NthrefNode_compile$22=function(){var $$23;return this.$helper(“gvars”),$send(this,“with_temp”,[],(($$23=function(tmp){var self=$$23.$$s||this;return null==tmp&&(tmp=nil),self.$push(“((”tmp“ = $gvars) === nil ? nil : ”tmp“[’$'](”+self.$index()+“))”)}).$$s=this,$$23.$$arity=1,$$23))},$NthrefNode_compile$22.$$arity=0)}($nesting,$$($nesting,“Base”),$nesting),function($base,$super,$parent_nesting){var $ClassVariableNode_compile$24,self=$klass($base,$super,“ClassVariableNode”);.concat($parent_nesting);self.$handle(“cvar”),self.$children(“name”),Opal.def(self,“$compile”,$ClassVariableNode_compile$24=function(){var $$25;return $send(this,“with_temp”,[],(($$25=function(tmp){var self=$$25.$$s||this;return null==tmp&&(tmp=nil),self.$push(“((”tmp“ = ”+self.$class_variable_owner()+“.$$cvars) == null ? nil : ”tmp“)”)}).$$s=this,$$25.$$arity=1,$$25))},$ClassVariableNode_compile$24.$$arity=0)}($nesting,$$($nesting,“Base”),$nesting),function($base,$super,$parent_nesting){var $ClassVarAssignNode_compile$26,self=$klass($base,$super,“ClassVarAssignNode”);.concat($parent_nesting);self.$handle(“cvasgn”),self.$children(“name”,“value”),Opal.def(self,“$compile”,$ClassVarAssignNode_compile$26=function(){return this.$push(“(Opal.class_variable_set(”+this.$class_variable_owner()+“, '”+this.$name()+“', ”,this.$expr(this.$value()),“))”)},$ClassVarAssignNode_compile$26.$$arity=0)}($nesting,$$($nesting,“Base”),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],$$=(Opal.nil,Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$truthy=Opal.truthy;return Opal.add_stubs(),self.$require(“opal/nodes/base”),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $ConstNode_compile$1,$ConstNode_magical_data_const$ques$2,self=$klass($base,$super,“ConstNode”);.concat($parent_nesting);self.$handle(“const”),self.$children(“const_scope”,“name”),Opal.def(self,“$compile”,$ConstNode_compile$1=function(){return $truthy(this())?this.$push(“$__END__”):$truthy(this.$const_scope())?this.$push(“$$$(”,this.$recv(this.$const_scope()),“, '”+this.$name()+“‘)”):($truthy(this.$compiler()()),this.$push(“$$($nesting, '”+this.$name()+“')”))},$ConstNode_compile$1.$$arity=0),Opal.def(self,“$magical_data_const?”,$ConstNode_magical_data_const$ques$2=function(){var $a,$b;return $truthy($a=$truthy($b=this.$const_scope()())?this.$name()(“DATA”):$b)?this.$compiler().$eof_content():$a},$ConstNode_magical_data_const$ques$2.$$arity=0)}($nesting,$$($nesting,“Base”),$nesting),function($base,$super,$parent_nesting){var $CbaseNode_compile$3,self=$klass($base,$super,“CbaseNode”);.concat($parent_nesting);self.$handle(“cbase”),Opal.def(self,“$compile”,$CbaseNode_compile$3=function(){return this.$push(“'::'”)},$CbaseNode_compile$3.$$arity=0)}($nesting,$$($nesting,“Base”),$nesting),function($base,$super,$parent_nesting){var $ConstAssignNode_compile$4,self=$klass($base,$super,“ConstAssignNode”);.concat($parent_nesting);self.$handle(“casgn”),self.$children(“base”,“name”,“value”),Opal.def(self,“$compile”,$ConstAssignNode_compile$4=function(){return $truthy(this.$base())?this.$push(“Opal.const_set(”,this.$expr(this.$base()),“, '”+this.$name()+“', ”,this.$expr(this.$value()),“)”):this.$push(“Opal.const_set($nesting, '”+this.$name()+“', ”,this.$expr(this.$value()),“)”)},$ConstAssignNode_compile$4.$$arity=0)}($nesting,$$($nesting,“Base”),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){function $rb_gt(lhs,rhs){return“number”==typeof lhs&&“number”==typeof “”>rhs?rhs(rhs)}function $rb_lt(lhs,rhs){return“number”==typeof lhs&&“number”==typeof rhs?lhs(rhs)}Opal.top;var $nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$truthy=Opal.truthy;return “,”$<","$===","$raise","$class","$equal?","$<=>“”>Opal.add_stubs(),function($base,$parent_nesting){var $Comparable_$eq_eq$1,$Comparable_$gt$2,$Comparable_$gt_eq$3,$Comparable_$lt$4,$Comparable_$lt_eq$5,$Comparable_between$ques$6,$Comparable_clamp$7,self=$module($base,“Comparable”),$nesting=.concat($parent_nesting),$case=nil;function normalize(what){return Opal.is_a(what,Opal.Integer)?what:$rb_gt(what,0)?1:$rb_lt(what,0)?-1:0}function fail_comparison(lhs,rhs){var class_name;$case=rhs,class_name=nil($case)||(!0)($case)||(!1)($case)||$$($nesting,“Integer”)($case)||$$($nesting,“Float”)($case)?rhs.$inspect():rhs.$$class,self.$raise($$($nesting,“ArgumentError”),“comparison of ”+lhs.$class()+“ with ”class_name“ failed”)}Opal.def(self,“$==”,$Comparable_$eq_eq$1=function(other){var cmp;return!!$truthy(this(“”>other))||this!=“”>Opal.Kernel&&(this.$$comparable?(delete “”>this.$$comparable,!1):!!$truthy(cmp=this(other))&&0==normalize(cmp))},$Comparable_$eq_eq$1.$$arity=1),Opal.def(self,“$>”,$Comparable_$gt$2=function(other){var cmp;return $“”>truthy(cmp=this(other))||fail_comparison(this,other),0<normalize(cmp)},$Comparable_$gt$2.$$arity=1),Opal.def(self,“$>=”,$Comparable_$gt_eq$3=function(other){var cmp;return $“”>truthy(cmp=this(other))||fail_comparison(this,other),0<=normalize(cmp)},$Comparable_$gt_eq$3.$$arity=1),Opal.def(self,“$<”,$Comparable_$lt$4=function(other){var cmp;return $“”>truthy(cmp=this(other))||fail_comparison(this,other),normalize(cmp)<0},$Comparable_$lt$4.$$arity=1),Opal.def(self,“$<=”,$Comparable_$lt_eq$5=function(other){var cmp;return $“”>truthy(cmp=this(other))||fail_comparison(this,other),normalize(cmp)<=0},$Comparable_$lt_eq$5.$$arity=1),Opal.def(self,“$between?”,$Comparable_between$ques$6=function(min,max){return!$rb_lt(this,min)&&!$rb_gt(this,max)},$Comparable_between$ques$6.$$arity=2),Opal.def(self,“$clamp”,$Comparable_clamp$7=function(min,max){var cmp;return “”>cmp=min(max),$truthy(cmp)||fail_comparison(min,max),$truthy(0<normalize(cmp))&&this.$raise($$($nesting,“ArgumentError”),“min argument must be smaller than max ”“>argument”),$truthy(normalize(this(“”>min))<0)?min:$truthy(0(max)))?max:this},$Comparable_clamp$7.$$arity=2)}($nesting,$nesting)},Opal.modules.pathname=function(Opal){function $rb_plus(lhs,rhs){return“number”==typeof lhs&&“number”==typeof rhs?lhs+rhs:lhs(rhs)}var self=Opal.top,$nesting=[],nil=Opal.nil,$$$=Opal.const_get_qualified,$$=Opal.const_get_relative,$klass=(Opal.breaker,Opal.slice,Opal.klass),$truthy=Opal.truthy,$send=Opal.send,$module=Opal.module;return Opal.add_stubs([“$require”,“$include”,“$quote”,“$===”,“$to_s”,“$path”,“$respond_to?”,“$to_path”,“$is_a?”,“$nil?”,“$raise”,“$class”,“$==”,“$attr_reader”,“$!”,“$relative?”,“$chop_basename”,“$basename”,“$=~”,“$new”,“$source”,“$”,“$rindex”,“$sub”,“$absolute?”,“$expand_path”,“$plus”,“$unshift”,“$length”,“$!=”,“$empty?”,“$first”,“$shift”,“$+”,“$join”,“$dirname”,“$pop”,“$reverse_each”,“$directory?”,“$extname”,“$<=>”,“$nonzero?”,“$proc”,“$casecmp”,“$cleanpath”,“$inspect”,“$include?”,“$fill”,“$map”,“$entries”]),self.$require(“corelib/comparable”),function($base,$super,$parent_nesting){var $Pathname_initialize$1,$Pathname_$eq_eq$2,$Pathname_absolute$ques$3,$Pathname_relative$ques$4,$Pathname_chop_basename$5,$Pathname_root$ques$6,$Pathname_parent$7,$Pathname_sub$8,$Pathname_cleanpath$9,$Pathname_to_path$10,$Pathname_hash$11,$Pathname_expand_path$12,$Pathname_$plus$13,$Pathname_plus$14,$Pathname_join$15,$Pathname_split$17,$Pathname_dirname$18,$Pathname_basename$19,$Pathname_directory$ques$20,$Pathname_extname$21,$Pathname_$lt_eq_gt$22,$Pathname$23,$Pathname$24,$Pathname_relative_path_from$25,$Pathname_entries$26,self=$klass($base,null,“Pathname”),$nesting=.concat($parent_nesting);self.$$prototype.path=nil,self.$include($$($nesting,“Comparable”)),Opal.const_set($nesting,“SEPARATOR_PAT”,new RegExp($$($nesting,“Regexp”).$quote($$$($$($nesting,“File”),“SEPARATOR”)))),Opal.def(self,“$initialize”,$Pathname_initialize$1=function(path){return $truthy($$($nesting,“Pathname”)(path))?this.path=path.$path().$to_s():$truthy(path(“to_path”))?this.path=path.$to_path():$truthy(path($$($nesting,“String”)))?this.path=path:$truthy(path())?this.$raise($$($nesting,“TypeError”),“no implicit conversion of nil into String”):this.$raise($$($nesting,“TypeError”),“no implicit conversion of ”+path.$class()+“ into String”),this.path(“0”)?this.$raise($$($nesting,“ArgumentError”)):nil},$Pathname_initialize$1.$$arity=1),self.$attr_reader(“path”),Opal.def(self,“$==”,$Pathname_$eq_eq$2=function(other){return other.$path()(this.path)},$Pathname_$eq_eq$2.$$arity=1),Opal.def(self,“$absolute?”,$Pathname_absolute$ques$3=function(){return this()[“$!”]()},$Pathname_absolute$ques$3.$$arity=0),Opal.def(self,“$relative?”,$Pathname_relative$ques$4=function(){var $b,$c,path=nil,r=nil;for(path=this.path;$truthy(r=this.$chop_basename(path));)$c=r,path=null==($b=Opal.to_ary($c))?nil:$b;return path(“”)},$Pathname_relative$ques$4.$$arity=0),Opal.def(self,“$chop_basename”,$Pathname_chop_basename$5=function(path){var base;return base=$$($nesting,“File”).$basename(path),$truthy($$($nesting,“Regexp”).$new(“^”+$$$($$($nesting,“Pathname”),“SEPARATOR_PAT”).$source()+“?$”)(base))?nil:[path[“$”](0,path.$rindex(base)),base]},$Pathname_chop_basename$5.$$arity=1),Opal.def(self,“$root?”,$Pathname_root$ques$6=function(){return this.path(“/”)},$Pathname_root$ques$6.$$arity=0),Opal.def(self,“$parent”,$Pathname_parent$7=function(){var self=this,new_path=nil;return(new_path=self.path.$sub(//(+/?$)/,“”))[“$==”](“”)&&(new_path=$truthy(self())?“/”:“.”),$$($nesting,“Pathname”).$new(new_path)},$Pathname_parent$7.$$arity=0),Opal.def(self,“$sub”,$Pathname_sub$8=function($a){var args;return args=Opal.slice.call(arguments,0,arguments.length),$$($nesting,“Pathname”).$new($send(this.path,“sub”,Opal.to_a(args)))},$Pathname_sub$8.$$arity=-1),Opal.def(self,“$cleanpath”,$Pathname_cleanpath$9=function(){return Opal.normalize(this.path)},$Pathname_cleanpath$9.$$arity=0),Opal.def(self,“$to_path”,$Pathname_to_path$10=function(){return this.path},$Pathname_to_path$10.$$arity=0),Opal.def(self,“$hash”,$Pathname_hash$11=function(){return this.path},$Pathname_hash$11.$$arity=0),Opal.def(self,“$expand_path”,$Pathname_expand_path$12=function(){return $$($nesting,“Pathname”).$new($$($nesting,“File”).$expand_path(this.path))},$Pathname_expand_path$12.$$arity=0),Opal.def(self,“$+”,$Pathname_$plus$13=function(other){return $truthy($$($nesting,“Pathname”)(other))||(other=$$($nesting,“Pathname”).$new(other)),$$($nesting,“Pathname”).$new(this.$plus(this.path,other.$to_s()))},$Pathname_$plus$13.$$arity=1),Opal.def(self,“$plus”,$Pathname_plus$14=function(path1,path2){var $a,$b,$c,prefix2=nil,index_list2=nil,basename_list2=nil,r2=nil,basename2=nil,prefix1=nil,r1=nil,basename1=nil,suffix2=nil;for(prefix2=path2,index_list2=[],basename_list2=;$truthy(r2=this.$chop_basename(prefix2));)$c=r2,prefix2=null==($b=Opal.to_ary($c))?nil:$b,basename2=null==$b?nil:$b,index_list2.$unshift(prefix2.$length()),basename_list2.$unshift(basename2);if($truthy(prefix2(“”)))return path2;for(prefix1=path1;$truthy(!0);){for(;$truthy($truthy($c=basename_list2()[“$!”]())?basename_list2.$first()(“.”):$c);)index_list2.$shift(),basename_list2.$shift();if(!$truthy(r1=this.$chop_basename(prefix1)))break;if($c=r1,prefix1=null==($b=Opal.to_ary($c))?nil:$b,!(basename1=null==$b?nil:$b)[“$==”](“.”)){if($truthy($truthy($b=$truthy($c=basename1(“..”))?$c:basename_list2())?$b:basename_list2.$first()(“..”))){prefix1=$rb_plus(prefix1,basename1);break}index_list2.$shift(),basename_list2.$shift()}}if(r1=this.$chop_basename(prefix1),$truthy($truthy($a=r1())?new RegExp($$($nesting,“SEPARATOR_PAT”))($$($nesting,“File”).$basename(prefix1)):$a))for(;$truthy($truthy($b=basename_list2()[“$!”]())?basename_list2.$first()(“..”):$b);)index_list2.$shift(),basename_list2.$shift();return $truthy(basename_list2()[“$!”]())?(suffix2=path2[“$”](Opal.Range.$new(index_list2.$first(),-1,!1)),$truthy(r1)?$$($nesting,“File”).$join(prefix1,suffix2):$rb_plus(prefix1,suffix2)):$truthy(r1)?prefix1:$$($nesting,“File”).$dirname(prefix1)},$Pathname_plus$14.$$arity=2),Opal.def(self,“$join”,$Pathname_join$15=function($a){try{var $post_args,args,$$16,result=nil;return $post_args=Opal.slice.call(arguments,0,arguments.length),$truthy((args=$post_args)())?this:(result=args.$pop(),$truthy($$($nesting,“Pathname”)(result))||(result=$$($nesting,“Pathname”).$new(result)),$truthy(result())?result:($send(args,“reverse_each”,[],(($$16=function(arg){$$16.$$s;if(null==arg&&(arg=nil),$truthy($$($nesting,“Pathname”)(arg))||(arg=$$($nesting,“Pathname”).$new(arg)),result=$rb_plus(arg,result),!$truthy(result()))return nil;Opal.ret(result)}).$$s=this,$$16.$$arity=1,$$16)),$rb_plus(this,result)))}catch($returner){if($returner===Opal.returner)return $returner.$v;throw $returner}},$Pathname_join$15.$$arity=-1),Opal.def(self,“$split”,$Pathname_split$17=function(){return},$Pathname_split$17.$$arity=0),Opal.def(self,“$dirname”,$Pathname_dirname$18=function(){return $$($nesting,“Pathname”).$new($$($nesting,“File”).$dirname(this.path))},$Pathname_dirname$18.$$arity=0),Opal.def(self,“$basename”,$Pathname_basename$19=function(){return $$($nesting,“Pathname”).$new($$($nesting,“File”).$basename(this.path))},$Pathname_basename$19.$$arity=0),Opal.def(self,“$directory?”,$Pathname_directory$ques$20=function(){return $$($nesting,“File”)(this.path)},$Pathname_directory$ques$20.$$arity=0),Opal.def(self,“$extname”,$Pathname_extname$21=function(){return $$($nesting,“File”).$extname(this.path)},$Pathname_extname$21.$$arity=0),Opal.def(self,“$<=>”,$Pathname_$lt_eq_gt$22=function(other){return “”>this.$path()(other.$path())},$Pathname_$lt_eq_gt$22.$$arity=1),Opal.alias(self,“eql?”,“==”),Opal.alias(self,“===”,“==”),Opal.alias(self,“to_str”,“to_path”),Opal.alias(self,“to_s”,“to_path”),Opal.const_set($nesting,“SAME_PATHS”,$truthy($$$($$($nesting,“File”),“FNM_SYSCASE”)())?$send(self,“proc”,[],(($Pathname$23=function(a,b){return $Pathname$23.$$s,null==a&&(a=nil),null==b&&(b=nil),a.$casecmp(b)(0)}).$$s=self,$Pathname$23.$$arity=2,$Pathname$23)):$send(self,“proc”,[],(($Pathname$24=function(a,b){return $Pathname$24.$$s,null==a&&(a=nil),null==b&&(b=nil),a(b)}).$$s=self,$Pathname$24.$$arity=2,$Pathname$24))),Opal.def(self,“$relative_path_from”,$Pathname_relative_path_from$25=function(base_directory){var $b,$c,dest_directory,dest_prefix=nil,dest_names=nil,r=nil,basename=nil,base_prefix=nil,base_names=nil,relpath_names=nil;for(dest_directory=this.$cleanpath().$to_s(),base_directory=base_directory.$cleanpath().$to_s(),dest_prefix=dest_directory,dest_names=[];$truthy(r=this.$chop_basename(dest_prefix));)$c=r,dest_prefix=null==($b=Opal.to_ary($c))?nil:$b,basename=null==$b?nil:$b,$truthy(basename(“.”))&&dest_names.$unshift(basename);for(base_prefix=base_directory,base_names=[];$truthy(r=this.$chop_basename(base_prefix));)$c=r,base_prefix=null==($b=Opal.to_ary($c))?nil:$b,basename=null==$b?nil:$b,$truthy(basename(“.”))&&base_names.$unshift(basename);for($truthy($$($nesting,“SAME_PATHS”)[“$”](dest_prefix,base_prefix))||this.$raise($$($nesting,“ArgumentError”),“different prefix: ”+dest_prefix.$inspect()+“ and ”+base_directory.$inspect());$truthy($truthy($b=$truthy($c=dest_names()[“$!”]())?base_names()[“$!”]():$c)?$$($nesting,“SAME_PATHS”)[“$”](dest_names.$first(),base_names.$first()):$b);)dest_names.$shift(),base_names.$shift();return $truthy(base_names(“..”))&&this.$raise($$($nesting,“ArgumentError”),“base_directory has ..: ”+base_directory.$inspect()),base_names.$fill(“..”),relpath_names=$rb_plus(base_names,dest_names),$truthy(relpath_names())?$$($nesting,“Pathname”).$new(“.”):$$($nesting,“Pathname”).$new($send($$($nesting,“File”),“join”,Opal.to_a(relpath_names)))},$Pathname_relative_path_from$25.$$arity=1),Opal.def(self,“$entries”,$Pathname_entries$26=function(){var $$27;return $send($$($nesting,“Dir”).$entries(this.path),“map”,[],(($$27=function(f){var self=$$27.$$s||this;return null==f&&(f=nil),self.$class().$new(f)}).$$s=this,$$27.$$arity=1,$$27))},$Pathname_entries$26.$$arity=0)}($nesting,0,$nesting),function($base,$parent_nesting){var $Kernel_Pathname$28,self=$module($base,“Kernel”),$nesting=.concat($parent_nesting);Opal.def(self,“$Pathname”,$Kernel_Pathname$28=function(path){return $$($nesting,“Pathname”).$new(path)},$Kernel_Pathname$28.$$arity=1)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],nil=Opal.nil,$$$=Opal.const_get_qualified,$$=Opal.const_get_relative,$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$send=Opal.send,$truthy=Opal.truthy;return Opal.add_stubs([“$require”,“$new”,“$children”,“$==”,“$s”,“$include?”,“$to_sym”,“$<<","$define_method","$to_proc","$meth","$__send__","$raise","$helper","$”,“$arglist”,“$js_truthy”,“$js_falsy”]),self.$require(“set”),self.$require(“opal/nodes/base”),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $RuntimeHelpers_s$1,$RuntimeHelpers_compatible$ques$2,$RuntimeHelpers_helper$3,$RuntimeHelpers_compile$4,$RuntimeHelpers$5,$RuntimeHelpers$6,self=$klass($base,$super,“RuntimeHelpers”),$nesting=.concat($parent_nesting);Opal.const_set($nesting,“HELPERS”,$$($nesting,“Set”).$new()),self.$children(“recvr”,“meth”,“arglist”),Opal.defs(self,“$s”,$RuntimeHelpers_s$1=function(type,$a){var children;return children=Opal.slice.call(arguments,1,arguments.length),$$$($$$($$$(“::”,“Opal”),“AST”),“Node”).$new(type,children)},$RuntimeHelpers_s$1.$$arity=-2),Opal.defs(self,“$compatible?”,$RuntimeHelpers_compatible$ques$2=function(recvr,meth){return recvr(this.$s(“const”,nil,“Opal”))?$$($nesting,“HELPERS”)(meth.$to_sym()):recvr(this.$s(“const”,nil,“Opal”))},$RuntimeHelpers_compatible$ques$2.$$arity=2),Opal.defs(self,“$helper”,$RuntimeHelpers_helper$3=function(name){var $iter=$RuntimeHelpers_helper$3.$$p,block=$iter||nil;return $iter&&($RuntimeHelpers_helper$3.$$p=null),$iter&&($RuntimeHelpers_helper$3.$$p=null),$$($nesting,“HELPERS”)(name),$send(this,“define_method”,,block.$to_proc())},$RuntimeHelpers_helper$3.$$arity=1),Opal.def(self,“$compile”,$RuntimeHelpers_compile$4=function(){return $truthy($$($nesting,“HELPERS”)(this.$meth().$to_sym()))?this.$__send__(“compile_”+this.$meth()):this.$raise(“Helper not supported: ”+this.$meth())},$RuntimeHelpers_compile$4.$$arity=0),$send(self,“helper”,,(($RuntimeHelpers$5=function(){var sexp,self=$RuntimeHelpers$5.$$s||this;return $truthy(sexp=self.$arglist().$children()[“$”](0))||self.$raise(“truthy? requires an object”),self.$js_truthy(sexp)}).$$s=self,$RuntimeHelpers$5.$$arity=0,$RuntimeHelpers$5)),$send(self,“helper”,,(($RuntimeHelpers$6=function(){var sexp,self=$RuntimeHelpers$6.$$s||this;return $truthy(sexp=self.$arglist().$children()[“$”](0))||self.$raise(“falsy? requires an object”),self.$js_falsy(sexp)}).$$s=self,$RuntimeHelpers$6.$$arity=0,$RuntimeHelpers$6))}($nesting,$$($nesting,“Base”),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],nil=Opal.nil,$$$=Opal.const_get_qualified,$$=Opal.const_get_relative,$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass;return Opal.add_stubs(),self.$require(“opal/rewriter”),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $BreakFinder_initialize$1,$BreakFinder_found_break$ques$2,$BreakFinder_on_break$3,$BreakFinder_stop_lookup$4,self=$klass($base,$super,“BreakFinder”);.concat($parent_nesting);self.$$prototype.found_break=nil,Opal.def(self,“$initialize”,$BreakFinder_initialize$1=function(){return this.found_break=!1},$BreakFinder_initialize$1.$$arity=0),Opal.def(self,“$found_break?”,$BreakFinder_found_break$ques$2=function(){return this.found_break},$BreakFinder_found_break$ques$2.$$arity=0),Opal.def(self,“$on_break”,$BreakFinder_on_break$3=function(node){return this.found_break=!0,node},$BreakFinder_on_break$3.$$arity=1),Opal.def(self,“$stop_lookup”,$BreakFinder_stop_lookup$4=function(node){return nil},$BreakFinder_stop_lookup$4.$$arity=1),Opal.alias(self,“on_for”,“stop_lookup”),Opal.alias(self,“on_while”,“stop_lookup”),Opal.alias(self,“on_while_post”,“stop_lookup”),Opal.alias(self,“on_until”,“stop_lookup”),Opal.alias(self,“on_until_post”,“stop_lookup”),Opal.alias(self,“on_block”,“stop_lookup”)}($nesting,$$$($$$($$($nesting,“Opal”),“Rewriters”),“Base”),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],nil=Opal.nil,$$$=Opal.const_get_qualified,$$=Opal.const_get_relative,$slice=(Opal.breaker,Opal.slice),$module=Opal.module,$klass=Opal.klass,$hash2=Opal.hash2,$send=Opal.send,$truthy=Opal.truthy,$range=Opal.range;return Opal.add_stubs([“$require”,“$handle”,“$attr_reader”,“$freeze”,“$=”,“$-”,“$define_method”,“$to_proc”,“$include?”,“$type”,“$s”,“$handle_special”,“$record_method?”,“$<<","$method_calls","$compiler","$to_sym","$meth","$using_irb?","$compile_irb_var","$default_compile","$private","$iter","$new","$process","$found_break?","$splat?","$invoke_using_send?","$compile_using_send","$compile_simple_call_chain","$compile_break_catcher","$helper","$push","$compile_receiver","$compile_method_name","$compile_arguments","$compile_block_pass","$recv","$receiver_sexp","$expr","$arglist","$empty?","$children","$iter_has_break?","$unshift","$line","$method_jsid","$any?","$==","$recvr","$mid_to_jsid","$to_s","$with_temp","$intern","$irb?","$top?","$scope","$nil?","$updated","$method","$arity","$),self.$require(”set“),self.$require(”pathname“),self.$require(”opal/nodes/base“),self.$require(”opal/nodes/runtime_helpers“),self.$require(”opal/rewriters/break_finder“),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $CallNode_add_special$1,$CallNode_initialize$2,$CallNode_compile$3,$CallNode_iter_has_break$ques$5,$CallNode_invoke_using_send$ques$6,$CallNode_default_compile$7,$CallNode_compile_using_send$8,$CallNode_compile_receiver$9,$CallNode_compile_method_name$10,$CallNode_compile_arguments$11,$CallNode_compile_block_pass$12,$CallNode_compile_break_catcher$13,$CallNode_compile_simple_call_chain$14,$CallNode_splat$ques$15,$CallNode_receiver_sexp$17,$CallNode_method_jsid$18,$CallNode_record_method$ques$19,$CallNode_compile_irb_var$20,$CallNode_using_irb$ques$22,$CallNode_sexp_with_arglist$23,$CallNode_handle_special$24,$CallNode$25,$CallNode$27,$CallNode$28,$CallNode$29,$CallNode$30,$CallNode$31,$CallNode$32,$CallNode$33,$CallNode$34,$CallNode$35,$CallNode$36,$CallNode$37,$CallNode_push_nesting$ques$38,self=$klass($base,$super,”CallNode“),$nesting=.concat($parent_nesting);self.$$prototype.sexp=self.$$prototype.compiler=self.$$prototype.level=nil,self.$handle(”send“),self.$attr_reader(”recvr“,”meth“,”arglist“,”iter“),Opal.const_set($nesting,”SPECIALS“,$hash2([],{})),Opal.const_set($nesting,”“,”>=“”>OPERATORS“,$hash2(,{”+“:”plus“,”-“:”minus“,”*“:”times“,”/“:”divide“,”<“:”lt“,”<=“:”le“,”>“:”gt“,”>=“:”ge“}).$freeze()),Opal.defs(self,”$add_special“,$CallNode_add_special$1=function(name,options){var $writer,lhs,rhs,$iter=$CallNode_add_special$1.$$p,handler=$iter||nil;return $iter&&($CallNode_add_special$1.$$p=null),$iter&&($CallNode_add_special$1.$$p=null),null==options&&(options=$hash2([],{})),$writer=,$send($$($nesting,”SPECIALS“),”[]=“,Opal.to_a($writer)),rhs=1,”number“==typeof(lhs=$writer.length)&&”number“==typeof rhs||lhs(rhs),$send(this,”define_method“,,handler.$to_proc())},$CallNode_add_special$1.$$arity=-2),Opal.def(self,”$initialize“,$CallNode_initialize$2=function($a){var $b,$c,rest,$zuper_ii,$iter=$CallNode_initialize$2.$$p,args=nil,last_arg=nil,$zuper=nil,$zuper_i=nil;for($iter&&($CallNode_initialize$2.$$p=null),$zuper_i=0,$zuper_ii=arguments.length,$zuper=new Array($zuper_ii);$zuper_i<$zuper_ii;$zuper_i++)$zuper=arguments;return Opal.slice.call(arguments,0,arguments.length),$send(this,Opal.find_super_dispatcher(this,”initialize“,$CallNode_initialize$2,!1),$zuper,$iter),$b=[].concat(Opal.to_a(this.sexp)),this.recvr=null==$b?nil:$b,this.meth=null==$b?nil:$b,args=$slice.call($b,2),$c=($c=($b=[].concat(Opal.to_a(args))).length-1)<0?0:$c,rest=$slice.call($b,0,$c),last_arg=null==$b?nil:$b,$truthy($truthy($b=last_arg)?[”$include?“](last_arg.$type()):$b)?(this.iter=last_arg,args=rest):this.iter=nil,this.arglist=$send(this,”s“,.concat(Opal.to_a(args)))},$CallNode_initialize$2.$$arity=-1),Opal.def(self,”$compile“,$CallNode_compile$3=function(){try{var $$4;return $send(this,”handle_special“,[],(($$4=function(){var self=$$4.$$s||this;return $truthy(self())&&self.$compiler().$method_calls()(self.$meth().$to_sym()),$truthy(self())&&Opal.ret(self.$compile_irb_var()),self.$default_compile()}).$$s=this,$$4.$$arity=0,$$4))}catch($returner){if($returner===Opal.returner)return $returner.$v;throw $returner}},$CallNode_compile$3.$$arity=0),self.$private(),Opal.def(self,”$iter_has_break?“,$CallNode_iter_has_break$ques$5=function(){var finder=nil;return!!$truthy(this.$iter())&&((finder=$$$($$$($$($nesting,”Opal“),”Rewriters“),”BreakFinder“).$new()).$process(this.$iter()),finder())},$CallNode_iter_has_break$ques$5.$$arity=0),Opal.def(self,”$invoke_using_send?“,$CallNode_invoke_using_send$ques$6=function(){var $a;return $truthy($a=this.$iter())?$a:this()},$CallNode_invoke_using_send$ques$6.$$arity=0),Opal.def(self,”$default_compile“,$CallNode_default_compile$7=function(){return $truthy(this())?this.$compile_using_send():this.$compile_simple_call_chain(),this.$compile_break_catcher()},$CallNode_default_compile$7.$$arity=0),Opal.def(self,”$compile_using_send“,$CallNode_compile_using_send$8=function(){return this.$helper(”send“),this.$push(”$send(“),this.$compile_receiver(),this.$compile_method_name(),this.$compile_arguments(),this.$compile_block_pass(),this.$push(”)“)},$CallNode_compile_using_send$8.$$arity=0),Opal.def(self,”$compile_receiver“,$CallNode_compile_receiver$9=function(){return this.$push(this.$recv(this.$receiver_sexp()))},$CallNode_compile_receiver$9.$$arity=0),Opal.def(self,”$compile_method_name“,$CallNode_compile_method_name$10=function(){return this.$push(”, '“+this.$meth()+”'“)},$CallNode_compile_method_name$10.$$arity=0),Opal.def(self,”$compile_arguments“,$CallNode_compile_arguments$11=function(){return this.$push(”, “),$truthy(this())?this.$push(this.$expr(this.$arglist())):$truthy(this.$arglist().$children()())?this.$push(”[]“):this.$push(”“)},$CallNode_compile_arguments$11.$$arity=0),Opal.def(self,”$compile_block_pass“,$CallNode_compile_block_pass$12=function(){return $truthy(this.$iter())?this.$push(”, “,this.$expr(this.$iter())):nil},$CallNode_compile_block_pass$12.$$arity=0),Opal.def(self,”$compile_break_catcher“,$CallNode_compile_break_catcher$13=function(){return $truthy(this())?(this.$unshift(”return “),this.$unshift(”(function(){var $brk = Opal.new_brk(); try {“),this.$line(”} catch (err) { if (err === $brk) { return err.$v } else { throw err } }})()“)):nil},$CallNode_compile_break_catcher$13.$$arity=0),Opal.def(self,”$compile_simple_call_chain“,$CallNode_compile_simple_call_chain$14=function(){return this.$push(this.$recv(this.$receiver_sexp()),this.$method_jsid(),”(“,this.$expr(this.$arglist()),”)“)},$CallNode_compile_simple_call_chain$14.$$arity=0),Opal.def(self,”$splat?“,$CallNode_splat$ques$15=function(){var $$16;return $send(this.$arglist().$children(),”any?“,[],(($$16=function(a){$$16.$$s;return null==a&&(a=nil),a.$type()(”splat“)}).$$s=this,$$16.$$arity=1,$$16))},$CallNode_splat$ques$15.$$arity=0),Opal.def(self,”$receiver_sexp“,$CallNode_receiver_sexp$17=function(){var $a;return $truthy($a=this.$recvr())?$a:this.$s(”self“)},$CallNode_receiver_sexp$17.$$arity=0),Opal.def(self,”$method_jsid“,$CallNode_method_jsid$18=function(){return this.$mid_to_jsid(this.$meth().$to_s())},$CallNode_method_jsid$18.$$arity=0),Opal.def(self,”$record_method?“,$CallNode_record_method$ques$19=function(){return!0},$CallNode_record_method$ques$19.$$arity=0),Opal.def(self,”$compile_irb_var“,$CallNode_compile_irb_var$20=function(){var $$21;return $send(this,”with_temp“,[],(($$21=function(tmp){var lvar,call,self=$$21.$$s||this;return null==tmp&&(tmp=nil),lvar=self.$meth(),call=self.$s(”send“,self.$s(”self“),self.$meth().$intern(),self.$s(”arglist“)),self.$push(”((“tmp” = Opal.irb_vars.“lvar”) == null ? “,self.$expr(call),” : “tmp”)“)}).$$s=this,$$21.$$arity=1,$$21))},$CallNode_compile_irb_var$20.$$arity=0),Opal.def(self,”$using_irb?“,$CallNode_using_irb$ques$22=function(){var $a,$b,$c,$d;return $truthy($a=$truthy($b=$truthy($c=$truthy($d=this.compiler())?this.$scope()():$d)?this.$arglist()(this.$s(”arglist“)):$c)?this.$recvr()():$b)?this.$iter()():$a},$CallNode_using_irb$ques$22.$$arity=0),Opal.def(self,”$sexp_with_arglist“,$CallNode_sexp_with_arglist$23=function(){return this.sexp.$updated(nil,)},$CallNode_sexp_with_arglist$23.$$arity=0),Opal.def(self,”$handle_special“,$CallNode_handle_special$24=function(){var $iter=$CallNode_handle_special$24.$$p,compile_default=$iter||nil,method=nil;return $iter&&($CallNode_handle_special$24.$$p=null),$iter&&($CallNode_handle_special$24.$$p=null),$truthy($$($nesting,”SPECIALS“)(this.$meth()))?(method=this.$method(”handle_“+this.$meth())).$arity()(1)?method[”$“](compile_default):method[”$“]():$truthy($$($nesting,”RuntimeHelpers“)(this.$recvr(),this.$meth()))?this.$push($$($nesting,”RuntimeHelpers“).$new(this.$sexp_with_arglist(),this.level,this.compiler).$compile()):Opal.yieldX(compile_default,[])},$CallNode_handle_special$24.$$arity=0),$send($$($nesting,”OPERATORS“),”each“,,(($CallNode$25=function(operator,name){var $$26,self=$CallNode$25.$$s||this;return null==operator&&(operator=nil),null==name&&(name=nil),$send(self,”add_special“,,(($$26=function(compile_default){var $a,self=$$26.$$s||this,lhs=nil,rhs=nil;return null==compile_default&&(compile_default=nil),$truthy(self.$compiler()())?($truthy(self())&&self.$compiler().$method_calls()(operator.$to_sym()),self.$compiler().$operator_helpers()(operator.$to_sym()),lhs=($a=)[0],rhs=$a,self.$push(self.$fragment(”$rb_“name”(“)),self.$push(lhs),self.$push(self.$fragment(”, “)),self.$push(rhs),self.$push(self.$fragment(”)“))):compile_default.$call()}).$$s=self,$$26.$$arity=1,$$26))}).$$s=self,$CallNode$25.$$arity=2,$CallNode$25)),$send(self,”add_special“,,(($CallNode$27=function(compile_default){var self=$CallNode$27.$$s||this,str=nil;return null==compile_default&&(compile_default=nil),str=$$($nesting,”DependencyResolver“).$new(self.$compiler(),self.$arglist().$children()[”$“](0)).$resolve(),$truthy(str())||self.$compiler().$requires()(str),compile_default.$call()}).$$s=self,$CallNode$27.$$arity=1,$CallNode$27)),$send(self,”add_special“,,(($CallNode$28=function(){var self=$CallNode$28.$$s||this,arg=nil,file=nil,dir=nil;return arg=self.$arglist().$children()[”$“](0),file=self.$compiler().$file(),arg.$type()(”str“)&&(dir=$$($nesting,”File“).$dirname(file),self.$compiler().$requires()(self.$Pathname(dir).$join(arg.$children()[”$“](0)).$cleanpath().$to_s())),self.$push(self.$fragment(”self.$require(“+file.$inspect()+”+ '/../' + “)),self.$push(self.$process(self.$arglist())),self.$push(self.$fragment(”)“))}).$$s=self,$CallNode$28.$$arity=0,$CallNode$28)),$send(self,”add_special“,,(($CallNode$29=function(compile_default){var self=$CallNode$29.$$s||this,str=nil;return null==compile_default&&(compile_default=nil),$truthy(self.$scope()())?(str=$$($nesting,”DependencyResolver“).$new(self.$compiler(),self.$arglist().$children()[”$“](1)).$resolve(),$truthy(str())||self.$compiler().$requires()(str),compile_default.$call()):nil}).$$s=self,$CallNode$29.$$arity=1,$CallNode$29)),$send(self,”add_special“,,(($CallNode$30=function(compile_default){var $a,rest,lhs,rhs,self=$CallNode$30.$$s||this,first_arg=nil,relative_path=nil,dir=nil,full_path=nil;return null==compile_default&&(compile_default=nil),first_arg=null==($a=[].concat(Opal.to_a(self.$arglist().$children())))?nil:$a,rest=$slice.call($a,1),first_arg.$type()(”str“)&&(relative_path=first_arg.$children()[”$“](0),self.$compiler().$required_trees()(relative_path),dir=$$($nesting,”File“).$dirname(self.$compiler().$file()),(full_path=self.$Pathname(dir).$join(relative_path).$cleanpath().$to_s()).$force_encoding(relative_path.$encoding()),first_arg=first_arg.$updated(nil,)),self.arglist=self.$arglist().$updated(nil,(rhs=rest,”number“==typeof(lhs=)&&”number“==typeof rhs?lhs+rhs:lhs(rhs))),compile_default.$call()}).$$s=self,$CallNode$30.$$arity=1,$CallNode$30)),$send(self,”add_special“,,(($CallNode$31=function(){var self=$CallNode$31.$$s||this;return null==self.sexp&&(self.sexp=nil),self.$push(self.$compiler().$handle_block_given_call(self.sexp))}).$$s=self,$CallNode$31.$$arity=0,$CallNode$31)),$send(self,”add_special“,,(($CallNode$32=function(){var self=$CallNode$32.$$s||this;return $truthy(self.$scope()())?self.$push(self.$fragment(self.$scope().$mid().$to_s().$inspect())):self.$push(self.$fragment(”nil“))}).$$s=self,$CallNode$32.$$arity=0,$CallNode$32)),$send(self,”add_special“,,(($CallNode$33=function(){var self=$CallNode$33.$$s||this;return $truthy(self.$scope()())?self.$push(self.$fragment(self.$scope().$mid().$to_s().$inspect())):self.$push(self.$fragment(”nil“))}).$$s=self,$CallNode$33.$$arity=0,$CallNode$33)),$send(self,”add_special“,,(($CallNode$34=function(){var self=$CallNode$34.$$s||this;return self.$push(self.$fragment(”debugger“))}).$$s=self,$CallNode$34.$$arity=0,$CallNode$34)),$send(self,”add_special“,[”OPAL_COMPILER_CONFIG“],(($CallNode$35=function(){var self=$CallNode$35.$$s||this;return self.$push(self.$fragment(”Opal.hash({ arity_check: “+self.$compiler()()+” })“))}).$$s=self,$CallNode$35.$$arity=0,$CallNode$35)),$send(self,”add_special“,,(($CallNode$36=function(compile_default){var push_nesting,self=$CallNode$36.$$s||this;return null==compile_default&&(compile_default=nil),push_nesting=self(),$truthy(push_nesting)&&self.$push(”(Opal.Module.$$nesting = $nesting, “),compile_default.$call(),$truthy(push_nesting)?self.$push(”)“):nil}).$$s=self,$CallNode$36.$$arity=1,$CallNode$36)),$send(self,”add_special“,,(($CallNode$37=function(compile_default){var push_nesting,self=$CallNode$37.$$s||this;return null==compile_default&&(compile_default=nil),push_nesting=self(),$truthy(push_nesting)&&self.$push(”(Opal.Module.$$nesting = $nesting, “),compile_default.$call(),$truthy(push_nesting)?self.$push(”)“):nil}).$$s=self,$CallNode$37.$$arity=1,$CallNode$37)),Opal.def(self,”$push_nesting?“,$CallNode_push_nesting$ques$38=function(){var $b,recv=nil;return recv=this.$children().$first(),this.$children().$size()(2)?$truthy($b=recv())?$b:recv.$type()(”const“)?recv.$children().$last()(”Module“):recv.$type()(”const“):this.$children().$size()(2)},$CallNode_push_nesting$ques$38.$$arity=0),function($base,$super,$parent_nesting){var $DependencyResolver_initialize$39,$DependencyResolver_resolve$40,$DependencyResolver_handle_part$41,$DependencyResolver_expand_path$43,self=$klass($base,null,”DependencyResolver“);.concat($parent_nesting);self.$$prototype.sexp=self.$$prototype.compiler=nil,Opal.def(self,”$initialize“,$DependencyResolver_initialize$39=function(compiler,sexp){return this.compiler=compiler,this.sexp=sexp},$DependencyResolver_initialize$39.$$arity=2),Opal.def(self,”$resolve“,$DependencyResolver_resolve$40=function(){return this.$handle_part(this.sexp)},$DependencyResolver_resolve$40.$$arity=0),Opal.def(self,”$handle_part“,$DependencyResolver_handle_part$41=function(sexp){var $a,$b,$$42,msg,self=this,type=nil,recv=nil,meth=nil,args=nil,parts=nil,$case=nil;if((type=sexp.$type())(”str“))return sexp.$children()[”$“](0);if(type(”send“)&&($b=sexp.$children(),recv=null==($a=Opal.to_ary($b))?nil:$a,meth=null==$a?nil:$a,args=$slice.call($a,2),parts=$send(args,”map“,[],(($$42=function(s){var self=$$42.$$s||this;return null==s&&(s=nil),self.$handle_part(s)}).$$s=self,$$42.$$arity=1,$$42)),$truthy($truthy($a=$truthy($b=recv($$$($$$($$$(”::“,”Opal“),”AST“),”Node“)))?recv.$type()(”const“):$b)?recv.$children().$last()(”File“):$a))){if(meth(”expand_path“))return $send(self,”expand_path“,Opal.to_a(parts));if(meth(”join“))return self.$expand_path(parts.$join(”/“));if(meth(”dirname“))return self.$expand_path(parts[”$“](0).$split(”/“)[”$“]($range(0,-1,!0)).$join(”/“))}return msg=”Cannot handle dynamic require“,$case=self.compiler.$dynamic_require_severity(),”error“($case)?self.compiler.$error(msg,self.sexp.$line()):”warning“($case)?self.compiler.$warning(msg,self.sexp.$line()):nil},$DependencyResolver_handle_part$41.$$arity=1),Opal.def(self,”$expand_path“,$DependencyResolver_expand_path$43=function(path,base){var $$44;return null==base&&(base=”“),$send((base+”/“+path).$split(”/“),”each_with_object“,[],($$44=function(part,p){$$44.$$s;return null==part&&(part=nil),null==p&&(p=nil),part(”“)?nil:part(”..“)?p.$pop():p(part)},$$44.$$s=this,$$44.$$arity=2,$$44)).$join(”/“)},$DependencyResolver_expand_path$43.$$arity=-2)}($nesting,0,$nesting)}($nesting,$$($nesting,”Base“),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$send=Opal.send;return Opal.add_stubs(),self.$require(”opal/nodes/call“),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $CSendNode_default_compile$1,self=$klass($base,$super,”CSendNode“);.concat($parent_nesting);self.$handle(”csend“),Opal.def(self,”$default_compile“,$CSendNode_default_compile$1=function(){var $$2;return this.$helper(”send“),$send(this,”conditional_send“,,(($$2=function(receiver_temp){var self=$$2.$$s||this;return null==receiver_temp&&(receiver_temp=nil),self.$push(”$send(“,receiver_temp),self.$compile_method_name(),self.$compile_arguments(),self.$compile_block_pass(),self.$push(”)“)}).$$s=this,$$2.$$arity=1,$$2))},$CSendNode_default_compile$1.$$arity=0)}($nesting,$$($nesting,”CallNode“),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$send=Opal.send,$truthy=Opal.truthy;return Opal.add_stubs(),self.$require(”opal/nodes/base“),self.$require(”opal/nodes/call“),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $JsAttrNode_compile$1,self=$klass($base,$super,”JsAttrNode“);.concat($parent_nesting);self.$handle(”jsattr“),self.$children(”recvr“,”property“),Opal.def(self,”$compile“,$JsAttrNode_compile$1=function(){return this.$push(this.$recv(this.$recvr()),”“)},$JsAttrNode_compile$1.$$arity=0)}($nesting,$$($nesting,”Base“),$nesting),function($base,$super,$parent_nesting){var $JsAttrAsgnNode_compile$2,self=$klass($base,$super,”JsAttrAsgnNode“);.concat($parent_nesting);self.$handle(”jsattrasgn“),self.$children(”recvr“,”property“,”value“),Opal.def(self,”$compile“,$JsAttrAsgnNode_compile$2=function(){return this.$push(this.$recv(this.$recvr()),” = “,this.$expr(this.$value()))},$JsAttrAsgnNode_compile$2.$$arity=0)}($nesting,$$($nesting,”Base“),$nesting),function($base,$super,$parent_nesting){var $JsCallNode_initialize$3,$JsCallNode_compile$4,$JsCallNode_method_jsid$5,$JsCallNode_compile_using_send$6,self=$klass($base,$super,”JsCallNode“);.concat($parent_nesting);self.$$prototype.iter=self.$$prototype.arglist=nil,self.$handle(”jscall“),Opal.def(self,”$initialize“,$JsCallNode_initialize$3=function($a){var $zuper_ii,$iter=$JsCallNode_initialize$3.$$p,$zuper=nil,$zuper_i=nil;for($iter&&($JsCallNode_initialize$3.$$p=null),$zuper_i=0,$zuper_ii=arguments.length,$zuper=new Array($zuper_ii);$zuper_i<$zuper_ii;$zuper_i++)$zuper=arguments;return Opal.slice.call(arguments,0,arguments.length),$send(this,Opal.find_super_dispatcher(this,”initialize“,$JsCallNode_initialize$3,!1),$zuper,$iter),$truthy(this.iter)&&(this.arglist=this.arglist(this.iter)),this.iter=nil},$JsCallNode_initialize$3.$$arity=-1),Opal.def(self,”$compile“,$JsCallNode_compile$4=function(){return this.$default_compile()},$JsCallNode_compile$4.$$arity=0),Opal.def(self,”$method_jsid“,$JsCallNode_method_jsid$5=function(){return”.“+this.$meth()},$JsCallNode_method_jsid$5.$$arity=0),Opal.def(self,”$compile_using_send“,$JsCallNode_compile_using_send$6=function(){return this.$push(this.$recv(this.$receiver_sexp()),this.$method_jsid(),”.apply(null“),this.$compile_arguments(),$truthy(this.$iter())&&this.$push(”.concat(“,this.$expr(this.$iter()),”)“),this.$push(”)“)},$JsCallNode_compile_using_send$6.$$arity=0)}($nesting,$$($nesting,”CallNode“),$nesting),function($base,$super,$parent_nesting){var $Match3Node_compile$7,self=$klass($base,$super,”Match3Node“);.concat($parent_nesting);self.$$prototype.level=nil,self.$handle(”match_with_lvasgn“),self.$children(”lhs“,”rhs“),Opal.def(self,”$compile“,$Match3Node_compile$7=function(){var sexp;return sexp=this.$s(”send“,this.$lhs(),”=~“,this.$rhs()),this.$push(this.$process(sexp,this.level))},$Match3Node_compile$7.$$arity=0)}($nesting,$$($nesting,”Base“),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){function $rb_minus(lhs,rhs){return”number“==typeof lhs&&”number“==typeof rhs?lhs-rhs:lhs(rhs)}function $rb_plus(lhs,rhs){return”number“==typeof lhs&&”number“==typeof rhs?lhs+rhs:lhs(rhs)}var self=Opal.top,$nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$send=Opal.send,$truthy=Opal.truthy,$hash2=Opal.hash2;return Opal.add_stubs(),self.$require(”opal/nodes/base“),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $ScopeNode_initialize$1,$ScopeNode_in_scope$2,$ScopeNode_class_scope$ques$4,$ScopeNode_class$ques$5,$ScopeNode_module$ques$6,$ScopeNode_sclass$ques$7,$ScopeNode_top$ques$8,$ScopeNode_iter$ques$9,$ScopeNode_def$ques$10,$ScopeNode_def_in_class$ques$11,$ScopeNode_to_vars$12,$ScopeNode_add_scope_ivar$17,$ScopeNode_add_scope_gvar$18,$ScopeNode_add_proto_ivar$19,$ScopeNode_add_arg$20,$ScopeNode_add_scope_local$21,$ScopeNode_has_local$ques$22,$ScopeNode_add_scope_temp$23,$ScopeNode_has_temp$ques$24,$ScopeNode_new_temp$25,$ScopeNode_next_temp$26,$ScopeNode_queue_temp$28,$ScopeNode_push_while$29,$ScopeNode_pop_while$30,$ScopeNode_in_while$ques$31,$ScopeNode_uses_block$excl$32,$ScopeNode_identify$excl$33,$ScopeNode_find_parent_def$34,$ScopeNode_super_chain$35,$ScopeNode_uses_block$ques$36,$ScopeNode_has_rescue_else$ques$37,$ScopeNode_in_ensure$38,$ScopeNode_in_ensure$ques$39,self=$klass($base,$super,”ScopeNode“);.concat($parent_nesting);self.$$prototype.type=self.$$prototype.defs=self.$$prototype.parent=self.$$prototype.temps=self.$$prototype.locals=self.$$prototype.compiler=self.$$prototype.proto_ivars=self.$$prototype.ivars=self.$$prototype.gvars=self.$$prototype.args=self.$$prototype.queue=self.$$prototype.while_stack=self.$$prototype.identity=self.$$prototype.uses_block=self.$$prototype.in_ensure=nil,self.$attr_accessor(”parent“),self.$attr_accessor(”name“),self.$attr_accessor(”block_name“),self.$attr_reader(”scope_name“),self.$attr_reader(”locals“),self.$attr_reader(”ivars“),self.$attr_reader(”gvars“),self.$attr_accessor(”mid“),self.$attr_accessor(”defs“),self.$attr_reader(”methods“),self.$attr_accessor(”uses_super“),self.$attr_accessor(”uses_zuper“),self.$attr_accessor(”catch_return“,”has_break“),self.$attr_accessor(”rescue_else_sexp“),Opal.def(self,”$initialize“,$ScopeNode_initialize$1=function($a){var $zuper_ii,$iter=$ScopeNode_initialize$1.$$p,$zuper=nil,$zuper_i=nil;for($iter&&($ScopeNode_initialize$1.$$p=null),$zuper_i=0,$zuper_ii=arguments.length,$zuper=new Array($zuper_ii);$zuper_i<$zuper_ii;$zuper_i++)$zuper=arguments;return Opal.slice.call(arguments,0,arguments.length),$send(this,Opal.find_super_dispatcher(this,”initialize“,$ScopeNode_initialize$1,!1),$zuper,$iter),this.locals=[],this.temps=,this.args=[],this.ivars=,this.gvars=[],this.parent=nil,this.queue=,this.unique=”a“,this.while_stack=[],this.identity=nil,this.defs=nil,this.methods=,this.uses_block=!1,this.in_ensure=!1,this.proto_ivars=[]},$ScopeNode_initialize$1.$$arity=-1),Opal.def(self,”$in_scope“,$ScopeNode_in_scope$2=function(){var $$3,$iter=$ScopeNode_in_scope$2.$$p,$yield=$iter||nil;return $iter&&($ScopeNode_in_scope$2.$$p=null),$send(this,”indent“,[],(($$3=function(){var self=$$3.$$s||this,$writer=nil;return null==self.parent&&(self.parent=nil),self.parent=self.$compiler().$scope(),$writer=,$send(self.$compiler(),”scope=“,Opal.to_a($writer)),$writer,Opal.yield1($yield,self),$writer=,$send(self.$compiler(),”scope=“,Opal.to_a($writer)),$writer}).$$s=this,$$3.$$arity=0,$$3))},$ScopeNode_in_scope$2.$$arity=0),Opal.def(self,”$class_scope?“,$ScopeNode_class_scope$ques$4=function(){var $a;return $truthy($a=this.type(”class“))?$a:this.type(”module“)},$ScopeNode_class_scope$ques$4.$$arity=0),Opal.def(self,”$class?“,$ScopeNode_class$ques$5=function(){return this.type(”class“)},$ScopeNode_class$ques$5.$$arity=0),Opal.def(self,”$module?“,$ScopeNode_module$ques$6=function(){return this.type(”module“)},$ScopeNode_module$ques$6.$$arity=0),Opal.def(self,”$sclass?“,$ScopeNode_sclass$ques$7=function(){return this.type(”sclass“)},$ScopeNode_sclass$ques$7.$$arity=0),Opal.def(self,”$top?“,$ScopeNode_top$ques$8=function(){return this.type(”top“)},$ScopeNode_top$ques$8.$$arity=0),Opal.def(self,”$iter?“,$ScopeNode_iter$ques$9=function(){return this.type(”iter“)},$ScopeNode_iter$ques$9.$$arity=0),Opal.def(self,”$def?“,$ScopeNode_def$ques$10=function(){var $a;return $truthy($a=this.type(”def“))?$a:this.type(”defs“)},$ScopeNode_def$ques$10.$$arity=0),Opal.def(self,”$def_in_class?“,$ScopeNode_def_in_class$ques$11=function(){var $a,$b,$c;return $truthy($a=$truthy($b=$truthy($c=this.defs())?this.type(”def“):$c)?this.parent:$b)?this.parent():$a},$ScopeNode_def_in_class$ques$11.$$arity=0),Opal.def(self,”$to_vars“,$ScopeNode_to_vars$12=function(){var $$13,$$14,$$15,$a,$$16,indent,vars=nil,iv=nil,gv=nil,str=nil,result=nil;return vars=this.temps.$dup(),$send(vars,”push“,Opal.to_a($send(this.locals,”map“,[],(($$13=function(l){$$13.$$s;return null==l&&(l=nil),l+” = nil“}).$$s=this,$$13.$$arity=1,$$13)))),iv=$send(this.$ivars(),”map“,[],(($$14=function(ivar){$$14.$$s;return null==ivar&&(ivar=nil),”if (self“ivar” == null) self“ivar” = nil;n“}).$$s=this,$$14.$$arity=1,$$14)),gv=$send(this.$gvars(),”map“,[],(($$15=function(gvar){$$15.$$s;return null==gvar&&(gvar=nil),”if ($gvars“gvar” == null) $gvars“gvar” = nil;n“}).$$s=this,$$15.$$arity=1,$$15)),indent=this.compiler.$parser_indent(),str=$truthy(vars())?”“:”var “+vars.$join(”, “)+”;n“,$truthy(this.$ivars()())||(str=$rb_plus(str,”“+indent+iv.$join(indent))),$truthy(this.$gvars()())||(str=$rb_plus(str,”“+indent+gv.$join(indent))),result=$truthy($truthy($a=this())?this.proto_ivars()[”$!“]():$a)?str+”n“indent$send(this.proto_ivars,”map“,[],($$16=function(i){$$16.$$s;return null==i&&(i=nil),”self.$$prototype“+i},$$16.$$s=this,$$16.$$arity=1,$$16)).$join(” = “)+” = nil;“:str,this.$fragment(result)},$ScopeNode_to_vars$12.$$arity=0),Opal.def(self,”$add_scope_ivar“,$ScopeNode_add_scope_ivar$17=function(ivar){return $truthy(this())?this.parent.$add_proto_ivar(ivar):$truthy(this.ivars(ivar))?nil:this.ivars(ivar)},$ScopeNode_add_scope_ivar$17.$$arity=1),Opal.def(self,”$add_scope_gvar“,$ScopeNode_add_scope_gvar$18=function(gvar){return $truthy(this.gvars(gvar))?nil:this.gvars(gvar)},$ScopeNode_add_scope_gvar$18.$$arity=1),Opal.def(self,”$add_proto_ivar“,$ScopeNode_add_proto_ivar$19=function(ivar){return $truthy(this.proto_ivars(ivar))?nil:this.proto_ivars(ivar)},$ScopeNode_add_proto_ivar$19.$$arity=1),Opal.def(self,”$add_arg“,$ScopeNode_add_arg$20=function(arg){return $truthy(this.args(arg))||this.args(arg),arg},$ScopeNode_add_arg$20.$$arity=1),Opal.def(self,”$add_scope_local“,$ScopeNode_add_scope_local$21=function(local){return $truthy(this(local))?nil:this.locals(local)},$ScopeNode_add_scope_local$21.$$arity=1),Opal.def(self,”$has_local?“,$ScopeNode_has_local$ques$22=function(local){var $a,$b;return!!$truthy($truthy($a=$truthy($b=this.locals(local))?$b:this.args(local))?$a:this.temps(local))||!!$truthy($truthy($a=this.parent)?this.type(”iter“):$a)&&this.parent(local)},$ScopeNode_has_local$ques$22.$$arity=1),Opal.def(self,”$add_scope_temp“,$ScopeNode_add_scope_temp$23=function(tmp){return $truthy(this(tmp))?nil:this.temps.$push(tmp)},$ScopeNode_add_scope_temp$23.$$arity=1),Opal.def(self,”$has_temp?“,$ScopeNode_has_temp$ques$24=function(tmp){return this.temps(tmp)},$ScopeNode_has_temp$ques$24.$$arity=1),Opal.def(self,”$new_temp“,$ScopeNode_new_temp$25=function(){var tmp;return $truthy(this.queue())?(tmp=this.$next_temp(),this.temps(tmp),tmp):this.queue.$pop()},$ScopeNode_new_temp$25.$$arity=0),Opal.def(self,”$next_temp“,$ScopeNode_next_temp$26=function(){var $$27,self=this,tmp=nil;return tmp=nil,function(){var $brk=Opal.new_brk();try{$send(self,”loop“,[],(($$27=function(){var self=$$27.$$s||this;if(null==self.unique&&(self.unique=nil),tmp=”$“+self.unique,self.unique=self.unique.$succ(),$truthy(self(tmp)))return nil;Opal.brk(nil,$brk)}).$$s=self,$$27.$$brk=$brk,$$27.$$arity=0,$$27))}catch(err){if(err===$brk)return err.$v;throw err}}(),tmp},$ScopeNode_next_temp$26.$$arity=0),Opal.def(self,”$queue_temp“,$ScopeNode_queue_temp$28=function(name){return this.queue(name)},$ScopeNode_queue_temp$28.$$arity=1),Opal.def(self,”$push_while“,$ScopeNode_push_while$29=function(){var info;return info=$hash2([],{}),this.while_stack.$push(info),info},$ScopeNode_push_while$29.$$arity=0),Opal.def(self,”$pop_while“,$ScopeNode_pop_while$30=function(){return this.while_stack.$pop()},$ScopeNode_pop_while$30.$$arity=0),Opal.def(self,”$in_while?“,$ScopeNode_in_while$ques$31=function(){return this.while_stack()[”$!“]()},$ScopeNode_in_while$ques$31.$$arity=0),Opal.def(self,”$uses_block!“,$ScopeNode_uses_block$excl$32=function(){return $truthy(this.type(”iter“)?this.parent:this.type(”iter“))?this.parent():(this.uses_block=!0,this())},$ScopeNode_uses_block$excl$32.$$arity=0),Opal.def(self,”$identify!“,$ScopeNode_identify$excl$33=function(name){var $a,$b,$c;return null==name&&(name=nil),$truthy(this.identity)||(name=$truthy($a=name)?$a:.$compact().$join(”_“),this.identity=this.compiler.$unique_temp(name),$truthy(this.parent)&&this.parent.$add_scope_temp(this.identity)),this.identity},$ScopeNode_identify$excl$33.$$arity=-1),self.$attr_reader(”identity“),Opal.def(self,”$find_parent_def“,$ScopeNode_find_parent_def$34=function(){var scope=nil;for(scope=this;$truthy(scope=scope.$parent());)if($truthy(scope()))return scope;return nil},$ScopeNode_find_parent_def$34.$$arity=0),Opal.def(self,”$super_chain“,$ScopeNode_super_chain$35=function(){var $a,chain=nil,scope=nil,defn=nil,mid=nil;for(chain=($a=[,this,”null“,”null“]),scope=$a,defn=$a,mid=$a;$truthy(scope);){if(!scope.$type()(”iter“)){if($truthy([”$include?“](scope.$type()))){defn=scope(),mid=”'“+scope.$mid()+”'“;break}break}chain(scope()),$truthy(scope.$parent())&&(scope=scope.$parent())}return},$ScopeNode_super_chain$35.$$arity=0),Opal.def(self,”$uses_block?“,$ScopeNode_uses_block$ques$36=function(){return this.uses_block},$ScopeNode_uses_block$ques$36.$$arity=0),Opal.def(self,”$has_rescue_else?“,$ScopeNode_has_rescue_else$ques$37=function(){return this.$rescue_else_sexp()()[”$!“]()},$ScopeNode_has_rescue_else$ques$37.$$arity=0),Opal.def(self,”$in_ensure“,$ScopeNode_in_ensure$38=function(){var result,$iter=$ScopeNode_in_ensure$38.$$p,$yield=$iter||nil;return $iter&&($ScopeNode_in_ensure$38.$$p=null),$yield===nil?nil:(this.in_ensure=!0,result=Opal.yieldX($yield,[]),this.in_ensure=!1,result)},$ScopeNode_in_ensure$38.$$arity=0),Opal.def(self,”$in_ensure?“,$ScopeNode_in_ensure$ques$39=function(){return this.in_ensure},$ScopeNode_in_ensure$ques$39.$$arity=0)}($nesting,$$($nesting,”Base“),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$send=Opal.send,$truthy=Opal.truthy;return Opal.add_stubs(),self.$require(”opal/nodes/scope“),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $ModuleNode_compile$1,$ModuleNode_name_and_base$3,self=$klass($base,$super,”ModuleNode“);.concat($parent_nesting);self.$handle(”module“),self.$children(”cid“,”body“),Opal.def(self,”$compile“,$ModuleNode_compile$1=function(){var $a,$b,$$2,name,base;return $b=this.$name_and_base(),$a=Opal.to_ary($b),name=null==$a?nil:$a,base=null==$a?nil:$a,this.$helper(”module“),this.$push(”(function($base, $parent_nesting) {“),this.$line(” var self = $module($base, '“name”');“),$send(this,”in_scope“,[],(($$2=function(){var $c,$writer,body_code,lhs,rhs,self=$$2.$$s||this;return $writer=,$send(self.$scope(),”name=“,Opal.to_a($writer)),rhs=1,”number“==typeof(lhs=$writer.length)&&”number“==typeof rhs||lhs(rhs),self.$add_temp(”$nesting = [self].concat($parent_nesting)“),body_code=self.$stmt($truthy($c=self.$body())?$c:self.$s(”nil“)),self.$empty_line(),self.$line(self.$scope().$to_vars()),self.$line(body_code)}).$$s=this,$$2.$$arity=0,$$2)),this.$line(”})(“,base,”, $nesting)“)},$ModuleNode_compile$1.$$arity=0),Opal.def(self,”$name_and_base“,$ModuleNode_name_and_base$3=function(){var $a,$b,name,base=nil;return $b=this.$cid().$children(),base=null==($a=Opal.to_ary($b))?nil:$a,name=null==$a?nil:$a,$truthy(base())?[name,”$nesting“]:[name,this.$expr(base)]},$ModuleNode_name_and_base$3.$$arity=0)}($nesting,$$($nesting,”ScopeNode“),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$send=Opal.send,$truthy=Opal.truthy;return Opal.add_stubs(),self.$require(”opal/nodes/module“),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $ClassNode_compile$1,$ClassNode_super_code$3,$ClassNode_body_code$4,self=$klass($base,$super,”ClassNode“);.concat($parent_nesting);self.$handle(”class“),self.$children(”cid“,”sup“,”body“),Opal.def(self,”$compile“,$ClassNode_compile$1=function(){var $a,$b,$$2,name,base;return $b=this.$name_and_base(),$a=Opal.to_ary($b),name=null==$a?nil:$a,base=null==$a?nil:$a,this.$helper(”klass“),this.$push(”(function($base, $super, $parent_nesting) {“),this.$line(” var self = $klass($base, $super, '“name”');“),$send(this,”in_scope“,[],(($$2=function(){var $writer,body_code,lhs,rhs,self=$$2.$$s||this;return $writer=,$send(self.$scope(),”name=“,Opal.to_a($writer)),rhs=1,”number“==typeof(lhs=$writer.length)&&”number“==typeof rhs||lhs(rhs),self.$add_temp(”$nesting = [self].concat($parent_nesting)“),body_code=self.$body_code(),self.$empty_line(),self.$line(self.$scope().$to_vars()),self.$line(body_code)}).$$s=this,$$2.$$arity=0,$$2)),this.$line(”})(“,base,”, “,this.$super_code(),”, $nesting)“)},$ClassNode_compile$1.$$arity=0),Opal.def(self,”$super_code“,$ClassNode_super_code$3=function(){return $truthy(this.$sup())?this.$expr(this.$sup()):”null“},$ClassNode_super_code$3.$$arity=0),Opal.def(self,”$body_code“,$ClassNode_body_code$4=function(){var $a;return this.$stmt(this.$compiler().$returns($truthy($a=this.$body())?$a:this.$s(”nil“)))},$ClassNode_body_code$4.$$arity=0)}($nesting,$$($nesting,”ModuleNode“),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],$$=(Opal.nil,Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$send=Opal.send;return Opal.add_stubs(),self.$require(”opal/nodes/scope“),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $SingletonClassNode_compile$1,self=$klass($base,$super,”SingletonClassNode“);.concat($parent_nesting);self.$handle(”sclass“),self.$children(”object“,”body“),Opal.def(self,”$compile“,$SingletonClassNode_compile$1=function(){var $$2;return this.$push(”(function(self, $parent_nesting) {“),$send(this,”in_scope“,[],(($$2=function(){var body_stmt,self=$$2.$$s||this;return self.$add_temp(”$nesting = [self].concat($parent_nesting)“),body_stmt=self.$stmt(self.$compiler().$returns(self.$body())),self.$line(self.$scope().$to_vars()),self.$line(body_stmt)}).$$s=this,$$2.$$arity=0,$$2)),this.$line(”})(Opal.get_singleton_class(“,this.$recv(this.$object()),”), $nesting)“)},$SingletonClassNode_compile$1.$$arity=0)}($nesting,$$($nesting,”ScopeNode“),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],$$=(Opal.nil,Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass;return Opal.add_stubs(),self.$require(”opal/nodes/base“),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $ArgNode_compile$1,self=$klass($base,$super,”ArgNode“);.concat($parent_nesting);self.$handle(”arg“),self.$children(”name“),Opal.def(self,”$compile“,$ArgNode_compile$1=function(){return this.$scope().$add_arg(this.$name()),this.$push(this.$name().$to_s())},$ArgNode_compile$1.$$arity=0)}($nesting,$$($nesting,”Base“),$nesting)}($nesting,$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){function $rb_minus(lhs,rhs){return”number“==typeof lhs&&”number“==typeof rhs?lhs-rhs:lhs(rhs)}function $rb_plus(lhs,rhs){return”number“==typeof lhs&&”number“==typeof rhs?lhs+rhs:lhs(rhs)}var self=Opal.top,$nesting=[],nil=Opal.nil,$$$=Opal.const_get_qualified,$$=Opal.const_get_relative,$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$send=Opal.send,$truthy=Opal.truthy;return ”,“$<","$ ","$>”,“$<<","$any?","$has_only_optional_kwargs?","$negative_arity","$positive_arity","$select","$include?","$type","$has_required_kwargs?","$all?","$==","$def?","$class_scope?","$top?","$parent","$class?","$name","$module?","$identity"] at Opal.add_stubs([”$require“,”$handle“,”$children“,”$new“,”$args_node“,”$args“,”$optargs“,”$restarg“,”$postargs“,”$kwargs“,”$kwoptargs“,”$kwrestarg“,”$arity“,”$arity=“,”$scope“,”$-“,”$arity_check?“,”$compiler“,”$empty?“,”$arity_checks“,”$inspect“,”$to_s“,”$mid“,”$line“,”$push“,”$join“,”$compact“,”$size“,”$all_args“,”$!“,”$-),self.$require(“opal/nodes/base”),self.$require(“opal/rewriters/arguments”),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $ArityCheckNode_initialize$1,$ArityCheckNode_compile$2,$ArityCheckNode_kwargs$3,$ArityCheckNode_all_args$4,$ArityCheckNode_arity_checks$5,$ArityCheckNode_arity$6,$ArityCheckNode_negative_arity$7,$ArityCheckNode_positive_arity$9,$ArityCheckNode_has_only_optional_kwargs$ques$10,$ArityCheckNode_has_required_kwargs$ques$12,self=$klass($base,$super,“ArityCheckNode”),$nesting=.concat($parent_nesting);self.$$prototype.kwargs=self.$$prototype.kwoptargs=self.$$prototype.kwrestarg=self.$$prototype.all_args=self.$$prototype.args=self.$$prototype.optargs=self.$$prototype.restarg=self.$$prototype.postargs=self.$$prototype.arity_checks=nil,self.$handle(“arity_check”),self.$children(“args_node”),Opal.def(self,“$initialize”,$ArityCheckNode_initialize$1=function($a){var $zuper_ii,$iter=$ArityCheckNode_initialize$1.$$p,arguments$=nil,$zuper=nil,$zuper_i=nil;for($iter&&($ArityCheckNode_initialize$1.$$p=null),$zuper_i=0,$zuper_ii=arguments.length,$zuper=new Array($zuper_ii);$zuper_i<$zuper_ii;$zuper_i++)$zuper=arguments;return Opal.slice.call(arguments,0,arguments.length),$send(this,Opal.find_super_dispatcher(this,“initialize”,$ArityCheckNode_initialize$1,!1),$zuper,$iter),arguments$=$$$($$($nesting,“Rewriters”),“Arguments”).$new(this.$args_node().$children()),this.args=arguments$.$args(),this.optargs=arguments$.$optargs(),this.restarg=arguments$.$restarg(),this.postargs=arguments$.$postargs(),this.kwargs=arguments$.$kwargs(),this.kwoptargs=arguments$.$kwoptargs(),this.kwrestarg=arguments$.$kwrestarg()},$ArityCheckNode_initialize$1.$$arity=-1),Opal.def(self,“$compile”,$ArityCheckNode_compile$2=function(){var $writer,meth=nil;return $writer=,$send(this.$scope(),“arity=”,Opal.to_a($writer)),$rb_minus($writer.length,1),$truthy(this.$compiler()())?$truthy(this.$arity_checks()())?nil:(meth=this.$scope().$mid().$to_s().$inspect(),this.$line(“var $arity = arguments.length;”),this.$push(“ if (”+this.$arity_checks().$join(“ || ”)+“) { Opal.ac($arity, ”+this.$arity()+“, this, ”meth“); }”)):nil},$ArityCheckNode_compile$2.$$arity=0),Opal.def(self,“$kwargs”,$ArityCheckNode_kwargs$3=function(){return[].concat(Opal.to_a(this.kwargs)).concat(Opal.to_a(this.kwoptargs)).concat().$compact()},$ArityCheckNode_kwargs$3.$$arity=0),Opal.def(self,“$all_args”,$ArityCheckNode_all_args$4=function(){var $a;return this.all_args=$truthy($a=this.all_args)?$a:[].concat(Opal.to_a(this.args)).concat(Opal.to_a(this.optargs)).concat().concat(Opal.to_a(this.postargs)).concat(Opal.to_a(this.$kwargs())).$compact()},$ArityCheckNode_all_args$4.$$arity=0),Opal.def(self,“$arity_checks”,$ArityCheckNode_arity_checks$5=function(){var $a,$b,$c,lhs,rhs,arity=nil,min_arity=nil,max_arity=nil;return $truthy(null!=($a=this.arity_checks)&&$a!==nil?“instance-variable”:nil)||(arity=$rb_minus(arity=this.$all_args().$size(),this.optargs.$size()),$truthy(this.restarg)&&(arity=$rb_minus(arity,1)),arity=$rb_minus(arity,this.$kwargs().$size()),$truthy($truthy($b=$truthy($c=this.optargs()[“$!”]())?$c:this.$kwargs()()[“$!”]())?$b:this.restarg)&&(arity=$rb_minus(arity(),1)),this.arity_checks=[],$truthy((rhs=0,“number”==typeof(lhs=arity)&&“number”==typeof rhs?lhs(rhs)))?(min_arity=$rb_plus(arity,1)(),max_arity=this.$all_args().$size(),$truthy(function(lhs,rhs){return“number”==typeof lhs&&“number”==typeof “”>rhs?rhs(rhs)}(min_arity,0))&&this.arity_checks(“$arity < ”+min_arity),$truthy(this.restarg)||this.arity_checks(“$arity > ”+max_arity)):this.arity_checks(“$arity !== ”+arity)),this.arity_checks},$ArityCheckNode_arity_checks$5.$$arity=0),Opal.def(self,“$arity”,$ArityCheckNode_arity$6=function(){var $a,$b;return $truthy($truthy($a=$truthy($b=this.restarg)?$b:this.optargs())?$a:this())?this.$negative_arity():this.$positive_arity()},$ArityCheckNode_arity$6.$$arity=0),Opal.def(self,“$negative_arity”,$ArityCheckNode_negative_arity$7=function(){var $$8,result=nil;return result=$send(this.$all_args(),“select”,[],(($$8=function(arg){$$8.$$s;return null==arg&&(arg=nil),[“$include?”](arg.$type())}).$$s=this,$$8.$$arity=1,$$8)).$size(),$truthy(this())&&(result=$rb_plus(result,1)),result=$rb_minus(result(),1)},$ArityCheckNode_negative_arity$7.$$arity=0),Opal.def(self,“$positive_arity”,$ArityCheckNode_positive_arity$9=function(){var result=nil;return result=$rb_minus(result=this.$all_args().$size(),this.$kwargs().$size()),$truthy(this.$kwargs()())&&(result=$rb_plus(result,1)),result},$ArityCheckNode_positive_arity$9.$$arity=0),Opal.def(self,“$has_only_optional_kwargs?”,$ArityCheckNode_has_only_optional_kwargs$ques$10=function(){var $a,$$11;return $truthy($a=this.$kwargs()())?$send(this.$kwargs(),“all?”,[],(($$11=function(arg){$$11.$$s;return null==arg&&(arg=nil),[“$include?”](arg.$type())}).$$s=this,$$11.$$arity=1,$$11)):$a},$ArityCheckNode_has_only_optional_kwargs$ques$10.$$arity=0),Opal.def(self,“$has_required_kwargs?”,$ArityCheckNode_has_required_kwargs$ques$12=function(){var $$13;return $send(this.$kwargs(),“any?”,[],(($$13=function(arg){$$13.$$s;return null==arg&&(arg=nil),arg.$type()(“kwarg”)}).$$s=this,$$13.$$arity=1,$$13))},$ArityCheckNode_has_required_kwargs$ques$12.$$arity=0)}($nesting,$$($nesting,“Base”),$nesting),function($base,$super,$parent_nesting){var $IterArityCheckNode_compile$14,self=$klass($base,$super,“IterArityCheckNode”);.concat($parent_nesting);self.$handle(“iter_arity_check”),Opal.def(self,“$compile”,$IterArityCheckNode_compile$14=function(){var $b,$c,$writer,parent_scope=nil,context=nil,identity=nil;if($writer=,$send(this.$scope(),“arity=”,Opal.to_a($writer)),$rb_minus($writer.length,1),!$truthy(this.$compiler()()))return nil;if($truthy(this.$arity_checks()()))return nil;for(parent_scope=this.$scope();!$truthy($truthy($b=$truthy($c=parent_scope())?$c:parent_scope())?$b:parent_scope());)parent_scope=parent_scope.$parent();return context=$truthy(parent_scope())?“'<main>’”:$truthy(parent_scope())?“'”+parent_scope.$mid()+“‘”:$truthy(parent_scope())?“'<class:”+parent_scope.$name()+“>’”:$truthy(parent_scope())?“'<module:”+parent_scope.$name()+“>'”:nil,identity=this.$scope().$identity(),this.$line(“if (”identity“.$$is_lambda || ”identity“.$$define_meth) {”),this.$line(“ var $arity = arguments.length;”),this.$line(“ if (”+this.$arity_checks().$join(“ || ”)+“) { Opal.block_ac($arity, ”+this.$arity()+“, ”context“); }”),this.$line(“}”)},$IterArityCheckNode_compile$14.$$arity=0)}($nesting,$$($nesting,“ArityCheckNode”),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],$$=(Opal.nil,Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass;return Opal.add_stubs(),self.$require(“opal/nodes/base”),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $EnsureKwargsAreKwargs_compile$1,self=$klass($base,$super,“EnsureKwargsAreKwargs”);.concat($parent_nesting);self.$handle(“ensure_kwargs_are_kwargs”),Opal.def(self,“$compile”,$EnsureKwargsAreKwargs_compile$1=function(){return this.$helper(“hash2”),this.$line(“if ($kwargs == null) {”),this.$line(“ $kwargs = $hash2([], {});”),this.$line(“} else if (!$kwargs.$$is_hash) {”),this.$line(“ throw Opal.ArgumentError.$new('expected kwargs');”),this.$line(“}”)},$EnsureKwargsAreKwargs_compile$1.$$arity=0)}($nesting,$$($nesting,“Base”),$nesting)}($nesting,$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],$$=(Opal.nil,Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$send=Opal.send;return Opal.add_stubs(),self.$require(“opal/nodes/base”),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $ExtractBlockarg_compile$1,self=$klass($base,$super,“ExtractBlockarg”);.concat($parent_nesting);self.$handle(“extract_blockarg”),self.$children(“name”),Opal.def(self,“$compile”,$ExtractBlockarg_compile$1=function(){var $writer,scope_name,yielder,lhs,rhs;return this.$scope()(),this.$scope().$add_arg(this.$name()),$writer=,$send(this.$scope(),“block_name=”,Opal.to_a($writer)),rhs=1,“number”==typeof(lhs=$writer.length)&&“number”==typeof rhs||lhs(rhs),scope_name=this.$scope().$identity(),yielder=this.$scope().$block_name(),this.$add_temp(“$iter = ”scope_name“.$$p”),this.$add_temp(yielder+“ = $iter || nil”),this.$line(“if ($iter) ”scope_name“.$$p = null;”)},$ExtractBlockarg_compile$1.$$arity=0)}($nesting,$$($nesting,“Base”),$nesting)}($nesting,$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass;return Opal.add_stubs([“$require”,“$handle”,“$children”,“$”,“$meta”,“$<<”,“$used_kwargs”,“$scope”,“$add_temp”,“$lvar_name”,“$line”,“$inspect”,“$to_s”]),self.$require(“opal/nodes/base”),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $ExtractKwarg_compile$1,self=$klass($base,$super,“ExtractKwarg”);.concat($parent_nesting);self.$$prototype.sexp=nil,self.$handle(“extract_kwarg”),self.$children(“lvar_name”),Opal.def(self,“$compile”,$ExtractKwarg_compile$1=function(){var key_name=nil;return key_name=this.sexp.$meta()[“$”](“arg_name”),this.$scope().$used_kwargs()(key_name),this.$add_temp(this.$lvar_name()),this.$line(“if (!Opal.hasOwnProperty.call($kwargs.$$smap, '”key_name“')) {”),this.$line(“ throw Opal.ArgumentError.$new('missing keyword: ”key_name“');”),this.$line(“}”),this.$line(this.$lvar_name()+“ = $kwargs.$$smap;”)},$ExtractKwarg_compile$1.$$arity=0)}($nesting,$$($nesting,“Base”),$nesting)}($nesting,$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],$$=(Opal.nil,Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass;return Opal.add_stubs(),self.$require(“opal/nodes/base”),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $ExtractKwargs_compile$1,self=$klass($base,$super,“ExtractKwargs”);.concat($parent_nesting);self.$handle(“extract_kwargs”),Opal.def(self,“$compile”,$ExtractKwargs_compile$1=function(){return this.$add_temp(“$kwargs”),this.$line(“$kwargs = Opal.extract_kwargs($post_args)”)},$ExtractKwargs_compile$1.$$arity=0)}($nesting,$$($nesting,“Base”),$nesting)}($nesting,$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass;return Opal.add_stubs([“$require”,“$handle”,“$children”,“$”,“$meta”,“$<<”,“$used_kwargs”,“$scope”,“$add_temp”,“$lvar_name”,“$line”,“$inspect”,“$to_s”,“$==”,“$default_value”,“$expr”]),self.$require(“opal/nodes/base”),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $ExtractKwoptarg_compile$1,self=$klass($base,$super,“ExtractKwoptarg”);.concat($parent_nesting);self.$$prototype.sexp=nil,self.$handle(“extract_kwoptarg”),self.$children(“lvar_name”,“default_value”),Opal.def(self,“$compile”,$ExtractKwoptarg_compile$1=function(){var key_name=nil;return key_name=this.sexp.$meta()[“$”](“arg_name”),this.$scope().$used_kwargs()(key_name),this.$add_temp(this.$lvar_name()),this.$line(this.$lvar_name()+“ = $kwargs.$$smap;”),this.$default_value().$children()[“$”](1)(“undefined”)?nil:(this.$line(“if (”+this.$lvar_name()+“ == null) {”),this.$line(“ ”+this.$lvar_name()+“ = ”,this.$expr(this.$default_value())),this.$line(“}”))},$ExtractKwoptarg_compile$1.$$arity=0)}($nesting,$$($nesting,“Base”),$nesting)}($nesting,$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$truthy=Opal.truthy,$send=Opal.send;return Opal.add_stubs(),self.$require(“opal/nodes/base”),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $ExtractKwrestarg_compile$1,$ExtractKwrestarg_used_kwargs$2,self=$klass($base,$super,“ExtractKwrestarg”);.concat($parent_nesting);self.$handle(“extract_kwrestarg”),self.$children(“name”),Opal.def(self,“$compile”,$ExtractKwrestarg_compile$1=function(){return $truthy(this.$name())?(this.$add_temp(this.$name()),this.$line(this.$name()+“ = Opal.kwrestargs($kwargs, ”+this.$used_kwargs()+“);”)):nil},$ExtractKwrestarg_compile$1.$$arity=0),Opal.def(self,“$used_kwargs”,$ExtractKwrestarg_used_kwargs$2=function(){var $$3;return“{”+$send(this.$scope().$used_kwargs(),“map”,[],(($$3=function(arg_name){$$3.$$s;return null==arg_name&&(arg_name=nil),“'”arg_name“': true”}).$$s=this,$$3.$$arity=1,$$3)).$join(“,”)+“}”},$ExtractKwrestarg_used_kwargs$2.$$arity=0)}($nesting,$$($nesting,“Base”),$nesting)}($nesting,$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass;return Opal.add_stubs([“$require”,“$handle”,“$children”,“$==”,“$”,“$default_value”,“$line”,“$name”,“$expr”]),self.$require(“opal/nodes/base”),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $ExtractOptargNode_compile$1,self=$klass($base,$super,“ExtractOptargNode”);.concat($parent_nesting);self.$handle(“extract_optarg”),self.$children(“name”,“default_value”),Opal.def(self,“$compile”,$ExtractOptargNode_compile$1=function(){return this.$default_value().$children()[“$”](1)(“undefined”)?nil:(this.$line(“if (”+this.$name()+“ == null) {”),this.$line(“ ”+this.$name()+“ = ”,this.$expr(this.$default_value()),“;”),this.$line(“}”))},$ExtractOptargNode_compile$1.$$arity=0)}($nesting,$$($nesting,“Base”),$nesting)}($nesting,$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],$$=(Opal.nil,Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass;return Opal.add_stubs(),self.$require(“opal/nodes/base”),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $ExtractPostArg_compile$1,self=$klass($base,$super,“ExtractPostArg”);.concat($parent_nesting);self.$handle(“extract_post_arg”),self.$children(“name”),Opal.def(self,“$compile”,$ExtractPostArg_compile$1=function(){return this.$add_temp(this.$name()),this.$line(this.$name()+“ = $post_args;”),this.$line(“$post_args.splice(0, 1);”),this.$line(“if (”+this.$name()+“ == null) {”),this.$line(“ ”+this.$name()+“ = nil”),this.$line(“}”)},$ExtractPostArg_compile$1.$$arity=0)}($nesting,$$($nesting,“Base”),$nesting)}($nesting,$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass;return Opal.add_stubs([“$require”,“$handle”,“$children”,“$add_temp”,“$name”,“$line”,“$args_to_keep”,“$==”,“$”,“$default_value”,“$expr”]),self.$require(“opal/nodes/base”),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $ExtractPostOptarg_compile$1,self=$klass($base,$super,“ExtractPostOptarg”);.concat($parent_nesting);self.$handle(“extract_post_optarg”),self.$children(“name”,“default_value”,“args_to_keep”),Opal.def(self,“$compile”,$ExtractPostOptarg_compile$1=function(){return this.$add_temp(this.$name()),this.$line(“if ($post_args.length > ”+this.$args_to_keep()+“) {”),this.$line(“ ”+this.$name()+“ = $post_args;”),this.$line(“ $post_args.splice(0, 1);”),this.$line(“}”),this.$default_value().$children()[“$”](1)(“undefined”)?nil:(this.$line(“if (”+this.$name()+“ == null) {”),this.$line(“ ”+this.$name()+“ = ”,this.$expr(this.$default_value()),“;”),this.$line(“}”))},$ExtractPostOptarg_compile$1.$$arity=0)}($nesting,$$($nesting,“Base”),$nesting)}($nesting,$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$truthy=Opal.truthy;return Opal.add_stubs(),self.$require(“opal/nodes/base”),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $ExtractRestarg_compile$1,self=$klass($base,$super,“ExtractRestarg”);.concat($parent_nesting);self.$handle(“extract_restarg”),self.$children(“name”,“args_to_keep”),Opal.def(self,“$compile”,$ExtractRestarg_compile$1=function(){return $truthy(this.$name())?(this.$add_temp(this.$name()),this.$args_to_keep()(0)?this.$line(this.$name()+“ = $post_args;”):this.$line(this.$name()+“ = $post_args.splice(0, $post_args.length - ”+this.$args_to_keep()+“);”)):$truthy(this.$args_to_keep()(0))?this.$line(“$post_args.splice(0, $post_args.length - ”+this.$args_to_keep()+“);”):nil},$ExtractRestarg_compile$1.$$arity=0)}($nesting,$$($nesting,“Base”),$nesting)}($nesting,$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],$$=(Opal.nil,Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass;return Opal.add_stubs(),self.$require(“opal/nodes/base”),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $FakeArgNode_compile$1,self=$klass($base,$super,“FakeArgNode”);.concat($parent_nesting);self.$handle(“fake_arg”),Opal.def(self,“$compile”,$FakeArgNode_compile$1=function(){var name;return name=this.$scope().$next_temp(),this.$scope().$add_arg(name),this.$push(name)},$FakeArgNode_compile$1.$$arity=0)}($nesting,$$($nesting,“Base”),$nesting)}($nesting,$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],$$=(Opal.nil,Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass;return Opal.add_stubs(),self.$require(“opal/nodes/base”),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $InitializeIterarg_compile$1,self=$klass($base,$super,“InitializeIterarg”);.concat($parent_nesting);self.$handle(“initialize_iter_arg”),self.$children(“name”),Opal.def(self,“$compile”,$InitializeIterarg_compile$1=function(){return this.$line(“if (”+this.$name()+“ == null) {”),this.$line(“ ”+this.$name()+“ = nil;”),this.$line(“}”)},$InitializeIterarg_compile$1.$$arity=0)}($nesting,$$($nesting,“Base”),$nesting)}($nesting,$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],$$=(Opal.nil,Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass;return Opal.add_stubs(),self.$require(“opal/nodes/base”),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $InitializeShadowarg_compile$1,self=$klass($base,$super,“InitializeShadowarg”);.concat($parent_nesting);self.$handle(“initialize_shadowarg”),self.$children(“name”),Opal.def(self,“$compile”,$InitializeShadowarg_compile$1=function(){return this.$scope().$locals()(this.$name()),this.$scope().$add_arg(this.$name()),this.$line(this.$name()+“ = nil;”)},$InitializeShadowarg_compile$1.$$arity=0)}($nesting,$$($nesting,“Base”),$nesting)}($nesting,$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){Opal.top;var $nesting=[],nil=Opal.nil,$module=(Opal.const_get_qualified,Opal.const_get_relative,Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$send=Opal.send,$truthy=Opal.truthy;return Opal.add_stubs(),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $Parameters_initialize$1,$Parameters_to_code$2,$Parameters_on_arg$4,$Parameters_on_mlhs$5,$Parameters_on_optarg$6,$Parameters_on_restarg$7,$Parameters_on_kwarg$8,$Parameters_on_kwoptarg$9,$Parameters_on_kwrestarg$10,$Parameters_on_blockarg$11,$Parameters_on_shadowarg$12,self=$klass($base,null,“Parameters”);.concat($parent_nesting);self.$$prototype.args=nil,Opal.def(self,“$initialize”,$Parameters_initialize$1=function(args){return this.args=args.$children()},$Parameters_initialize$1.$$arity=1),Opal.def(self,“$to_code”,$Parameters_to_code$2=function(){var $$3;return“[”+$send(this.args,“map”,,(($$3=function(arg){var self=$$3.$$s||this;return null==arg&&(arg=nil),$send(self,“public_send”,.concat(Opal.to_a(arg)))}).$$s=this,$$3.$$arity=1,$$3)).$compact().$join(“, ”)+“]”},$Parameters_to_code$2.$$arity=0),Opal.def(self,“$on_arg”,$Parameters_on_arg$4=function(arg_name){return“['req', '”arg_name“']”},$Parameters_on_arg$4.$$arity=1),Opal.def(self,“$on_mlhs”,$Parameters_on_mlhs$5=function($a){return Opal.slice.call(arguments,0,arguments.length),“”},$Parameters_on_mlhs$5.$$arity=-1),Opal.def(self,“$on_optarg”,$Parameters_on_optarg$6=function(arg_name,_default_value){return“['opt', '”arg_name“']”},$Parameters_on_optarg$6.$$arity=2),Opal.def(self,“$on_restarg”,$Parameters_on_restarg$7=function(arg_name){return null==arg_name&&(arg_name=nil),$truthy(arg_name)?“['rest', '”arg_name“‘]”:“”},$Parameters_on_restarg$7.$$arity=-1),Opal.def(self,“$on_kwarg”,$Parameters_on_kwarg$8=function(arg_name){return“['keyreq', '”arg_name“']”},$Parameters_on_kwarg$8.$$arity=1),Opal.def(self,“$on_kwoptarg”,$Parameters_on_kwoptarg$9=function(arg_name,_default_value){return“['key', '”arg_name“']”},$Parameters_on_kwoptarg$9.$$arity=2),Opal.def(self,“$on_kwrestarg”,$Parameters_on_kwrestarg$10=function(arg_name){return null==arg_name&&(arg_name=nil),$truthy(arg_name)?“['keyrest', '”arg_name“’]”:“”},$Parameters_on_kwrestarg$10.$$arity=-1),Opal.def(self,“$on_blockarg”,$Parameters_on_blockarg$11=function(arg_name){return“['block', '”arg_name“']”},$Parameters_on_blockarg$11.$$arity=1),Opal.def(self,“$on_shadowarg”,$Parameters_on_shadowarg$12=function(_arg_name){return nil},$Parameters_on_shadowarg$12.$$arity=1)}($nesting,0,$nesting)}($nesting,$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],$$=(Opal.nil,Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass;return Opal.add_stubs(),self.$require(“opal/nodes/base”),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $PreparePostArgs_compile$1,self=$klass($base,$super,“PreparePostArgs”);.concat($parent_nesting);self.$handle(“prepare_post_args”),self.$children(“offset”),Opal.def(self,“$compile”,$PreparePostArgs_compile$1=function(){return this.$add_temp(“$post_args”),this.$line(“$post_args = Opal.slice.call(arguments, ”+this.$offset()+“, arguments.length)”)},$PreparePostArgs_compile$1.$$arity=0)}($nesting,$$($nesting,“Base”),$nesting)}($nesting,$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$send=Opal.send,$truthy=Opal.truthy;return Opal.add_stubs(),self.$require(“opal/nodes/base”),self.$require(“opal/nodes/args/arg”),self.$require(“opal/nodes/args/arity_check”),self.$require(“opal/nodes/args/ensure_kwargs_are_kwargs”),self.$require(“opal/nodes/args/extract_block_arg”),self.$require(“opal/nodes/args/extract_kwarg”),self.$require(“opal/nodes/args/extract_kwargs”),self.$require(“opal/nodes/args/extract_kwoptarg”),self.$require(“opal/nodes/args/extract_kwrestarg”),self.$require(“opal/nodes/args/extract_optarg”),self.$require(“opal/nodes/args/extract_post_arg”),self.$require(“opal/nodes/args/extract_post_optarg”),self.$require(“opal/nodes/args/extract_restarg”),self.$require(“opal/nodes/args/fake_arg”),self.$require(“opal/nodes/args/initialize_iterarg”),self.$require(“opal/nodes/args/initialize_shadowarg”),self.$require(“opal/nodes/args/parameters”),self.$require(“opal/nodes/args/prepare_post_args”),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $ArgsNode_compile$1,self=$klass($base,$super,“ArgsNode”);.concat($parent_nesting);self.$handle(“args”),Opal.def(self,“$compile”,$ArgsNode_compile$1=function(){var $$2;return $send(this.$children(),“each_with_index”,[],(($$2=function(arg,idx){var self=$$2.$$s||this;return null==arg&&(arg=nil),null==idx&&(idx=nil),$truthy(idx(0))&&self.$push(“, ”),self.$push(self.$process(arg))}).$$s=this,$$2.$$arity=2,$$2))},$ArgsNode_compile$1.$$arity=0)}($nesting,$$($nesting,“Base”),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],nil=Opal.nil,$$$=Opal.const_get_qualified,$$=Opal.const_get_relative,$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$send=Opal.send,$truthy=Opal.truthy;return Opal.add_stubs([“$require”,“$attr_reader”,“$attr_accessor”,“$”,“$meta”,“$s”,“$original_args”,“$push”,“$process”,“$arity_check_node”,“$uses_block?”,“$scope”,“$identity”,“$block_name”,“$add_temp”,“$line”,“$to_code”,“$new”]),self.$require(“opal/nodes/scope”),self.$require(“opal/nodes/args/parameters”),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $NodeWithArgs_initialize$1,$NodeWithArgs_arity_check_node$2,$NodeWithArgs_compile_arity_check$3,$NodeWithArgs_compile_block_arg$4,$NodeWithArgs_parameters_code$5,self=$klass($base,$super,“NodeWithArgs”),$nesting=.concat($parent_nesting);self.$$prototype.sexp=nil,self.$attr_reader(“used_kwargs”),self.$attr_accessor(“arity”),self.$attr_reader(“original_args”),Opal.def(self,“$initialize”,$NodeWithArgs_initialize$1=function($a){var $zuper_ii,$iter=$NodeWithArgs_initialize$1.$$p,$zuper=nil,$zuper_i=nil;for($iter&&($NodeWithArgs_initialize$1.$$p=null),$zuper_i=0,$zuper_ii=arguments.length,$zuper=new Array($zuper_ii);$zuper_i<$zuper_ii;$zuper_i++)$zuper=arguments;return Opal.slice.call(arguments,0,arguments.length),$send(this,Opal.find_super_dispatcher(this,“initialize”,$NodeWithArgs_initialize$1,!1),$zuper,$iter),this.original_args=this.sexp.$meta()[“$”](“original_args”),this.used_kwargs=[],this.arity=0},$NodeWithArgs_initialize$1.$$arity=-1),Opal.def(self,“$arity_check_node”,$NodeWithArgs_arity_check_node$2=function(){return this.$s(“arity_check”,this.$original_args())},$NodeWithArgs_arity_check_node$2.$$arity=0),Opal.def(self,“$compile_arity_check”,$NodeWithArgs_compile_arity_check$3=function(){return this.$push(this.$process(this.$arity_check_node()))},$NodeWithArgs_compile_arity_check$3.$$arity=0),Opal.def(self,“$compile_block_arg”,$NodeWithArgs_compile_block_arg$4=function(){var $a,scope_name=nil,yielder=nil;return $truthy(this.$scope()())?(scope_name=this.$scope().$identity(),yielder=$truthy($a=this.$scope().$block_name())?$a:“$yield”,this.$add_temp(“$iter = ”scope_name“.$$p”),this.$add_temp(yielder+“ = $iter || nil”),this.$line(“if ($iter) ”scope_name“.$$p = null;”)):nil},$NodeWithArgs_compile_block_arg$4.$$arity=0),Opal.def(self,“$parameters_code”,$NodeWithArgs_parameters_code$5=function(){return $$$($$($nesting,“Args”),“Parameters”).$new(this.$original_args()).$to_code()},$NodeWithArgs_parameters_code$5.$$arity=0)}($nesting,$$($nesting,“ScopeNode”),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],nil=Opal.nil,$$$=Opal.const_get_qualified,$$=Opal.const_get_relative,$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$send=Opal.send,$truthy=Opal.truthy;return Opal.add_stubs(),self.$require(“opal/nodes/node_with_args”),self.$require(“opal/rewriters/break_finder”),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $IterNode_compile$1,$IterNode_compile_block_arg$3,$IterNode_extract_underscore_args$4,$IterNode_returned_body$6,$IterNode_has_top_level_mlhs_arg$ques$7,$IterNode_has_trailing_comma_in_args$ques$9,$IterNode_arity_check_node$10,$IterNode_contains_break$ques$11,self=$klass($base,$super,“IterNode”),$nesting=.concat($parent_nesting);self.$$prototype.sexp=nil,self.$handle(“iter”),self.$children(“inline_args”,“body”),Opal.def(self,“$compile”,$IterNode_compile$1=function(){var $$2,inline_params=nil,to_vars=nil,identity=nil,body_code=nil;return to_vars=identity=body_code=inline_params=nil,$send(this,“in_scope”,[],(($$2=function(){var self=$$2.$$s||this;return identity=self.$scope()(),self.$add_temp(“self = ”identity“.$$s || this”),inline_params=self.$process(self.$inline_args()),self.$compile_arity_check(),body_code=self.$stmt(self.$returned_body()),to_vars=self.$scope().$to_vars()}).$$s=this,$$2.$$arity=0,$$2)),this.$line(body_code),this.$unshift(to_vars),this.$unshift(“(”identity“ = function(”,inline_params,“){”),this.$push(“}, ”identity“.$$s = self,”),$truthy(this())&&this.$push(“ ”identity“.$$brk = $brk,”),this.$push(“ ”identity“.$$arity = ”+this.$arity()+“,”),$truthy(this.$compiler()())&&this.$push(“ ”identity“.$$parameters = ”+this.$parameters_code()+“,”),$truthy(this())&&this.$push(“ ”identity“.$$has_top_level_mlhs_arg = true,”),$truthy(this())&&this.$push(“ ”identity“.$$has_trailing_comma_in_args = true,”),this.$push(“ ”identity“)”)},$IterNode_compile$1.$$arity=0),Opal.def(self,“$compile_block_arg”,$IterNode_compile_block_arg$3=function(){var lhs,rhs,$writer=nil,scope_name=nil;return $truthy(this.$block_arg())?($writer=,$send(this.$scope(),“block_name=”,Opal.to_a($writer)),$writer[(lhs=$writer.length,rhs=1,“number”==typeof lhs&&“number”==typeof rhs?lhs-rhs:lhs(rhs))],this.$scope().$add_temp(this.$block_arg()),scope_name=this.$scope()(),this.$line(this.$block_arg()+“ = ”scope_name“.$$p || nil;”),this.$line(“if (”+this.$block_arg()+“) ”scope_name“.$$p = null;”)):nil},$IterNode_compile_block_arg$3.$$arity=0),Opal.def(self,“$extract_underscore_args”,$IterNode_extract_underscore_args$4=function(){var $$5,valid_args=nil,caught_blank_argument=nil;return caught_blank_argument=!(valid_args=[]),$send(this.$args().$children(),“each”,,(($$5=function(arg){$$5.$$s;return null==arg&&(arg=nil),arg.$children().$first()(“_”)?$truthy(caught_blank_argument)?nil:(caught_blank_argument=!0,valid_args(arg)):valid_args(arg)}).$$s=this,$$5.$$arity=1,$$5)),this.sexp=this.sexp.$updated(nil,)},$IterNode_extract_underscore_args$4.$$arity=0),Opal.def(self,“$returned_body”,$IterNode_returned_body$6=function(){var $a;return this.$compiler().$returns($truthy($a=this.$body())?$a:this.$s(“nil”))},$IterNode_returned_body$6.$$arity=0),Opal.def(self,“$has_top_level_mlhs_arg?”,$IterNode_has_top_level_mlhs_arg$ques$7=function(){var $$8;return $send(this.$original_args().$children(),“any?”,[],(($$8=function(arg){$$8.$$s;return null==arg&&(arg=nil),arg.$type()(“mlhs”)}).$$s=this,$$8.$$arity=1,$$8))},$IterNode_has_top_level_mlhs_arg$ques$7.$$arity=0),Opal.def(self,“$has_trailing_comma_in_args?”,$IterNode_has_trailing_comma_in_args$ques$9=function(){var $a;return $truthy($truthy($a=this.$original_args().$loc())?this.$original_args().$loc().$expression():$a)?this.$original_args().$loc().$expression().$source().$match(/,s*|/):nil},$IterNode_has_trailing_comma_in_args$ques$9.$$arity=0),Opal.def(self,“$arity_check_node”,$IterNode_arity_check_node$10=function(){return this.$s(“iter_arity_check”,this.$original_args())},$IterNode_arity_check_node$10.$$arity=0),Opal.def(self,“$contains_break?”,$IterNode_contains_break$ques$11=function(){var finder=nil;return(finder=$$$($$$($$($nesting,“Opal”),“Rewriters”),“BreakFinder”).$new()).$process(this.sexp),finder()},$IterNode_contains_break$ques$11.$$arity=0)}($nesting,$$($nesting,“NodeWithArgs”),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){function $rb_minus(lhs,rhs){return“number”==typeof lhs&&“number”==typeof rhs?lhs-rhs:lhs(rhs)}function $rb_plus(lhs,rhs){return“number”==typeof lhs&&“number”==typeof rhs?lhs+rhs:lhs(rhs)}var self=Opal.top,$nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$send=Opal.send,$truthy=Opal.truthy;return Opal.add_stubs(),self.$require(“opal/nodes/node_with_args”),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $DefNode_compile$1,$DefNode_wrap_with_definition$3,$DefNode_source_location$4,$DefNode_comments_code$5,$DefNode_prepare_super$7,self=$klass($base,$super,“DefNode”);.concat($parent_nesting);self.$$prototype.sexp=nil,self.$handle(“def”),self.$children(“mid”,“inline_args”,“stmts”),Opal.def(self,“$compile”,$DefNode_compile$1=function(){var $$2,function_name,self=this,inline_params=nil,scope_name=nil;return scope_name=inline_params=nil,$send(self,“in_scope”,[],(($$2=function(){var stmt_code,self=$$2.$$s||this,$writer=nil;return null==self.sexp&&(self.sexp=nil),$writer=,$send(self.$scope(),“mid=”,Opal.to_a($writer)),$writer,self.sexp.$type()(“defs”)&&($writer=,$send(self.$scope(),“defs=”,Opal.to_a($writer)),$writer),self.$scope()(),scope_name=self.$scope().$identity(),$writer=,$send(self.$scope(),“block_name=”,Opal.to_a($writer)),$writer,inline_params=self.$process(self.$inline_args()),stmt_code=self.$stmt(self.$compiler().$returns(self.$stmts())),self.$compile_block_arg(),self.$add_temp(“self = this”),self.$compile_arity_check(),$truthy(self.$scope().$uses_zuper())&&self.$prepare_super(),self.$unshift(“n”+self.$current_indent(),self.$scope().$to_vars()),self.$line(stmt_code),$truthy(self.$scope().$catch_return())?(self.$unshift(“try {n”),self.$line(“} catch ($returner) { if ($returner === Opal.returner) { return $returner.$v }”),self.$push(“ throw $returner; }”)):nil}).$$s=self,$$2.$$arity=0,$$2)),function_name=$truthy(self(self.$mid()))?“ $$”+self.$mid():“”,self.$unshift(“) {”),self.$unshift(inline_params),self.$unshift(“function”function_name“(”),$truthy(scope_name)&&self.$unshift(scope_name+“ = ”),self.$line(“}”),self.$push(“, ”scope_name“.$$arity = ”+self.$arity()),$truthy(self.$compiler()())&&self.$push(“, ”scope_name“.$$parameters = ”+self.$parameters_code()),$truthy(self.$compiler()())&&self.$push(“, ”scope_name“.$$comments = ”+self.$comments_code()),$truthy(self.$compiler()())&&self.$push(“, ”scope_name“.$$source_location = ”+self.$source_location()),self.$wrap_with_definition()},$DefNode_compile$1.$$arity=0),Opal.def(self,“$wrap_with_definition”,$DefNode_wrap_with_definition$3=function(){return this.$wrap(“Opal.def(self, '$”+this.$mid()+“', ”,“)”),$truthy(this())?this.$wrap(“(”,“, nil) && '”+this.$mid()+“'”):this.$unshift(“n”+this.$current_indent())},$DefNode_wrap_with_definition$3.$$arity=0),Opal.def(self,“$source_location”,$DefNode_source_location$4=function(){return“['”+this.sexp.$loc().$expression().$source_buffer().$name()+“', ”+this.sexp.$loc().$line()+“]”},$DefNode_source_location$4.$$arity=0),Opal.def(self,“$comments_code”,$DefNode_comments_code$5=function(){var $$6;return $rb_plus($rb_plus(“[”,$send(this.$comments(),“map”,,($$6=function(comment){$$6.$$s;return null==comment&&(comment=nil),comment.$text().$inspect()},$$6.$$s=this,$$6.$$arity=1,$$6)).$join(“, ”)),“]”)},$DefNode_comments_code$5.$$arity=0),Opal.def(self,“$prepare_super”,$DefNode_prepare_super$7=function(){return this.$add_local(“$zuper”),this.$add_local(“$zuper_i”),this.$add_local(“$zuper_ii”),this.$line(“// Prepare super implicit arguments”),this.$line(“for($zuper_i = 0, $zuper_ii = arguments.length, $zuper = new Array($zuper_ii); $zuper_i < $zuper_ii; $zuper_i++) {”),this.$line(“ $zuper = arguments;”),this.$line(“}”)},$DefNode_prepare_super$7.$$arity=0)}($nesting,$$($nesting,“NodeWithArgs”),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$truthy=Opal.truthy;return Opal.add_stubs(),self.$require(“opal/nodes/def”),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $DefsNode_wrap_with_definition$1,self=$klass($base,$super,“DefsNode”);.concat($parent_nesting);self.$handle(“defs”),self.$children(“recvr”,“mid”,“inline_args”,“stmts”),Opal.def(self,“$wrap_with_definition”,$DefsNode_wrap_with_definition$1=function(){return this.$unshift(“Opal.defs(”,this.$expr(this.$recvr()),“, '$”+this.$mid()+“', ”),this.$push(“)”),$truthy(this())?this.$wrap(“(”,“, nil) && '”+this.$mid()+“'”):nil},$DefsNode_wrap_with_definition$1.$$arity=0)}($nesting,$$($nesting,“DefNode”),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$truthy=Opal.truthy,$send=Opal.send;return Opal.add_stubs(),self.$require(“opal/nodes/base”),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $IfNode_compile$1,$IfNode_truthy$4,$IfNode_falsy$5,$IfNode_needs_wrapper$ques$6,self=$klass($base,$super,“IfNode”);.concat($parent_nesting);self.$handle(“if”),self.$children(“test”,“true_body”,“false_body”),Opal.def(self,“$compile”,$IfNode_compile$1=function(){var $$2,$$3,truthy,falsy=nil;return truthy=this.$truthy(),falsy=this.$falsy(),this.$push(“if (”,this.$js_truthy(this.$test()),“) {”),$truthy(truthy)&&$send(this,“indent”,[],(($$2=function(){var self=$$2.$$s||this;return self.$line(self.$stmt(truthy))}).$$s=this,$$2.$$arity=0,$$2)),$truthy(falsy)?falsy.$type()(“if”)?this.$line(“} else ”,this.$stmt(falsy)):(this.$line(“} else {”),$send(this,“indent”,[],(($$3=function(){var self=$$3.$$s||this;return self.$line(self.$stmt(falsy))}).$$s=this,$$3.$$arity=0,$$3)),this.$line(“}”)):this.$push(“}”),$truthy(this())?this.$wrap(“(function() {”,“; return nil; })()”):nil},$IfNode_compile$1.$$arity=0),Opal.def(self,“$truthy”,$IfNode_truthy$4=function(){var $a;return $truthy(this())?this.$compiler().$returns($truthy($a=this.$true_body())?$a:this.$s(“nil”)):this.$true_body()},$IfNode_truthy$4.$$arity=0),Opal.def(self,“$falsy”,$IfNode_falsy$5=function(){var $a;return $truthy(this())?this.$compiler().$returns($truthy($a=this.$false_body())?$a:this.$s(“nil”)):this.$false_body()},$IfNode_falsy$5.$$arity=0),Opal.def(self,“$needs_wrapper?”,$IfNode_needs_wrapper$ques$6=function(){var $a;return $truthy($a=this())?$a:this()},$IfNode_needs_wrapper$ques$6.$$arity=0)}($nesting,$$($nesting,“Base”),$nesting),function($base,$super,$parent_nesting){var $IFlipFlop_compile$7,self=$klass($base,$super,“IFlipFlop”);.concat($parent_nesting);self.$handle(“iflipflop”),Opal.def(self,“$compile”,$IFlipFlop_compile$7=function(){return this.$push(“true”)},$IFlipFlop_compile$7.$$arity=0)}($nesting,$$($nesting,“Base”),$nesting),function($base,$super,$parent_nesting){var $EFlipFlop_compile$8,self=$klass($base,$super,“EFlipFlop”);.concat($parent_nesting);self.$handle(“eflipflop”),Opal.def(self,“$compile”,$EFlipFlop_compile$8=function(){return this.$push(“true”)},$EFlipFlop_compile$8.$$arity=0)}($nesting,$$($nesting,“Base”),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){function $rb_minus(lhs,rhs){return“number”==typeof lhs&&“number”==typeof rhs?lhs-rhs:lhs(rhs)}var self=Opal.top,$nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$truthy=Opal.truthy,$send=Opal.send;return Opal.add_stubs([“$require”,“$handle”,“$in_while?”,“$push”,“$expr_or_nil”,“$value”,“$wrap”,“$size”,“$children”,“$===”,“$s”,“$first”,“$compile_while”,“$iter?”,“$scope”,“$compile_iter”,“$error”,“$”,“$”,“$find_parent_def”,“$expr?”,“$def?”,“$return_in_iter?”,“$return_expr_in_def?”,“$scope_to_catch_return”,“$catch_return=”,“$return_val”,“$to_s”“>while_loop”,“$stmt?”,“$line”,“$break_val”,“$nil?”,“$expr”,“$),self.$require(”opal/nodes/base“),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $NextNode_compile$1,$NextNode_value$2,self=$klass($base,$super,”NextNode“);.concat($parent_nesting);self.$handle(”next“),Opal.def(self,”$compile“,$NextNode_compile$1=function(){return $truthy(this())?this.$push(”continue;“):(this.$push(this.$expr_or_nil(this.$value())),this.$wrap(”return “,”;“))},$NextNode_compile$1.$$arity=0),Opal.def(self,”$value“,$NextNode_value$2=function(){var self=this,$case=nil;return $case=self.$children().$size(),(0)($case)?self.$s(”nil“):1($case)?self.$children().$first():$send(self,”s“,.concat(Opal.to_a(self.$children())))},$NextNode_value$2.$$arity=0)}($nesting,$$($nesting,”Base“),$nesting),function($base,$super,$parent_nesting){var $BreakNode_compile$3,$BreakNode_compile_while$4,$BreakNode_compile_iter$5,$BreakNode_break_val$6,self=$klass($base,$super,”BreakNode“);.concat($parent_nesting);self.$handle(”break“),self.$children(”value“),Opal.def(self,”$compile“,$BreakNode_compile$3=function(){return $truthy(this())?this.$compile_while():$truthy(this.$scope()())?this.$compile_iter():this.$error(”void value expression: cannot use break outside of iter/while“)},$BreakNode_compile$3.$$arity=0),Opal.def(self,”$compile_while“,$BreakNode_compile_while$4=function(){return $truthy(this.$while_loop()[”$“](”closure“))?this.$push(”return “,this.$expr_or_nil(this.$value())):this.$push(”break;“)},$BreakNode_compile_while$4.$$arity=0),Opal.def(self,”$compile_iter“,$BreakNode_compile_iter$5=function(){return $truthy(this())||this.$error(”break must be used as a statement“),this.$line(”Opal.brk(“,this.$break_val(),”, $brk)“)},$BreakNode_compile_iter$5.$$arity=0),Opal.def(self,”$break_val“,$BreakNode_break_val$6=function(){return $truthy(this.$value()())?this.$expr(this.$s(”nil“)):this.$expr(this.$value())},$BreakNode_break_val$6.$$arity=0)}($nesting,$$($nesting,”Base“),$nesting),function($base,$super,$parent_nesting){var $RedoNode_compile$7,$RedoNode_compile_while$8,$RedoNode_compile_iter$9,self=$klass($base,$super,”RedoNode“);.concat($parent_nesting);self.$handle(”redo“),Opal.def(self,”$compile“,$RedoNode_compile$7=function(){return $truthy(this())?this.$compile_while():$truthy(this.$scope()())?this.$compile_iter():this.$push(”REDO()“)},$RedoNode_compile$7.$$arity=0),Opal.def(self,”$compile_while“,$RedoNode_compile_while$8=function(){var $writer;return $writer=,$send(this.$while_loop(),”[]=“,Opal.to_a($writer)),$rb_minus($writer.length,1),this.$push(this.$while_loop()[”$“](”redo_var“)+” = true; continue;“)},$RedoNode_compile_while$8.$$arity=0),Opal.def(self,”$compile_iter“,$RedoNode_compile_iter$9=function(){return this.$push(”return “+this.$scope().$identity()+”.apply(null, $slice.call(arguments))“)},$RedoNode_compile_iter$9.$$arity=0)}($nesting,$$($nesting,”Base“),$nesting),function($base,$super,$parent_nesting){var $SplatNode_empty_splat$ques$10,$SplatNode_compile$11,self=$klass($base,$super,”SplatNode“);.concat($parent_nesting);self.$handle(”splat“),self.$children(”value“),Opal.def(self,”$empty_splat?“,$SplatNode_empty_splat$ques$10=function(){return this.$value()(this.$s(”array“))},$SplatNode_empty_splat$ques$10.$$arity=0),Opal.def(self,”$compile“,$SplatNode_compile$11=function(){return $truthy(this())?this.$push(”[]“):this.$push(”Opal.to_a(“,this.$recv(this.$value()),”)“)},$SplatNode_compile$11.$$arity=0)}($nesting,$$($nesting,”Base“),$nesting),function($base,$super,$parent_nesting){var $BinaryOp_compile$12,$BinaryOp_compile_ternary$13,$BinaryOp_compile_if$14,self=$klass($base,$super,”BinaryOp“),$nesting=.concat($parent_nesting);Opal.def(self,”$compile“,$BinaryOp_compile$12=function(){return this.$rhs().$type()(”break“)?this.$compile_if():this.$compile_ternary()},$BinaryOp_compile$12.$$arity=0),Opal.def(self,”$compile_ternary“,$BinaryOp_compile_ternary$13=function(){return this.$raise($$($nesting,”NotImplementedError“))},$BinaryOp_compile_ternary$13.$$arity=0),Opal.def(self,”$compile_if“,$BinaryOp_compile_if$14=function(){return this.$raise($$($nesting,”NotImplementedError“))},$BinaryOp_compile_if$14.$$arity=0)}($nesting,$$($nesting,”Base“),$nesting),function($base,$super,$parent_nesting){var $OrNode_compile_ternary$15,$OrNode_compile_if$17,self=$klass($base,$super,”OrNode“);.concat($parent_nesting);self.$handle(”or“),self.$children(”lhs“,”rhs“),Opal.def(self,”$compile_ternary“,$OrNode_compile_ternary$15=function(){var $$16;return this.$helper(”truthy“),$send(this,”with_temp“,[],(($$16=function(tmp){var self=$$16.$$s||this;return null==tmp&&(tmp=nil),self.$push(”($truthy(“tmp” = “,self.$expr(self.$lhs()),”) ? “tmp” : “,self.$expr(self.$rhs()),”)“)}).$$s=this,$$16.$$arity=1,$$16))},$OrNode_compile_ternary$15.$$arity=0),Opal.def(self,”$compile_if“,$OrNode_compile_if$17=function(){var $$18;return this.$helper(”truthy“),$send(this,”with_temp“,[],(($$18=function(tmp){var $$19,$$20,self=$$18.$$s||this;return null==tmp&&(tmp=nil),self.$push(”if ($truthy(“tmp” = “,self.$expr(self.$lhs()),”)) {“),$send(self,”indent“,[],(($$19=function(){return($$19.$$s||this).$line(tmp)}).$$s=self,$$19.$$arity=0,$$19)),self.$line(”} else {“),$send(self,”indent“,[],(($$20=function(){var self=$$20.$$s||this;return self.$line(self.$expr(self.$rhs()))}).$$s=self,$$20.$$arity=0,$$20)),self.$line(”}“)}).$$s=this,$$18.$$arity=1,$$18))},$OrNode_compile_if$17.$$arity=0)}($nesting,$$($nesting,”BinaryOp“),$nesting),function($base,$super,$parent_nesting){var $AndNode_compile_ternary$21,$AndNode_compile_if$23,self=$klass($base,$super,”AndNode“);.concat($parent_nesting);self.$handle(”and“),self.$children(”lhs“,”rhs“),Opal.def(self,”$compile_ternary“,$AndNode_compile_ternary$21=function(){var $$22,truthy_opt=nil;return truthy_opt=nil,$send(this,”with_temp“,[],(($$22=function(tmp){var self=$$22.$$s||this;return null==tmp&&(tmp=nil),$truthy(truthy_opt=self.$js_truthy_optimize(self.$lhs()))?(self.$push(”((“tmp” = “,truthy_opt),self.$push(”) ? “),self.$push(self.$expr(self.$rhs())),self.$push(” : “,self.$expr(self.$lhs()),”)“)):(self.$helper(”truthy“),self.$push(”($truthy(“tmp” = “,self.$expr(self.$lhs()),”) ? “,self.$expr(self.$rhs()),” : “tmp”)“))}).$$s=this,$$22.$$arity=1,$$22))},$AndNode_compile_ternary$21.$$arity=0),Opal.def(self,”$compile_if“,$AndNode_compile_if$23=function(){var $a,$$24,$$25,condition;return this.$helper(”truthy“),condition=$truthy($a=this.$js_truthy_optimize(this.$lhs()))?$a:this.$expr(this.$lhs()),this.$line(”if ($truthy(“,condition,”)) {“),$send(this,”indent“,[],(($$24=function(){var self=$$24.$$s||this;return self.$line(self.$expr(self.$rhs()))}).$$s=this,$$24.$$arity=0,$$24)),this.$line(”} else {“),$send(this,”indent“,[],(($$25=function(){var self=$$25.$$s||this;return self.$line(self.$expr(self.$lhs()))}).$$s=this,$$25.$$arity=0,$$25)),this.$line(”}“)},$AndNode_compile_if$23.$$arity=0)}($nesting,$$($nesting,”BinaryOp“),$nesting),function($base,$super,$parent_nesting){var $ReturnNode_return_val$26,$ReturnNode_return_in_iter$ques$27,$ReturnNode_return_expr_in_def$ques$28,$ReturnNode_scope_to_catch_return$29,$ReturnNode_compile$30,self=$klass($base,$super,”ReturnNode“),$nesting=.concat($parent_nesting);self.$handle(”return“),self.$children(”value“),Opal.def(self,”$return_val“,$ReturnNode_return_val$26=function(){var lhs,rhs;return $truthy(this.$value()())?this.$expr(this.$s(”nil“)):$truthy((lhs=this.$children().$size(),rhs=1,”number“==typeof lhs&&”number“==typeof ”“>rhs?rhs(rhs)))?this.$expr($send(this,”s“,.concat(Opal.to_a(this.$children())))):this.$expr(this.$value())},$ReturnNode_return_val$26.$$arity=0),Opal.def(self,”$return_in_iter?“,$ReturnNode_return_in_iter$ques$27=function(){var $a,parent_def=nil;return $truthy($truthy($a=this.$scope()())?parent_def=this.$scope().$find_parent_def():$a)?parent_def:nil},$ReturnNode_return_in_iter$ques$27.$$arity=0),Opal.def(self,”$return_expr_in_def?“,$ReturnNode_return_expr_in_def$ques$28=function(){var $a;return $truthy($truthy($a=this())?this.$scope()():$a)?this.$scope():nil},$ReturnNode_return_expr_in_def$ques$28.$$arity=0),Opal.def(self,”$scope_to_catch_return“,$ReturnNode_scope_to_catch_return$29=function(){var $a;return $truthy($a=this())?$a:this()},$ReturnNode_scope_to_catch_return$29.$$arity=0),Opal.def(self,”$compile“,$ReturnNode_compile$30=function(){var def_scope,$writer=nil;return $truthy(def_scope=this.$scope_to_catch_return())?($writer=,$send(def_scope,”catch_return=“,Opal.to_a($writer)),$writer,this.$push(”Opal.ret(“,this.$return_val(),”)“)):$truthy(this())?this.$push(”return “,this.$return_val()):this.$raise($$($nesting,”SyntaxError“),”void value expression: cannot return as an expression“)},$ReturnNode_compile$30.$$arity=0)}($nesting,$$($nesting,”Base“),$nesting),function($base,$super,$parent_nesting){var $JSReturnNode_compile$31,self=$klass($base,$super,”JSReturnNode“);.concat($parent_nesting);self.$handle(”js_return“),self.$children(”value“),Opal.def(self,”$compile“,$JSReturnNode_compile$31=function(){return this.$push(”return “),this.$push(this.$expr(this.$value()))},$JSReturnNode_compile$31.$$arity=0)}($nesting,$$($nesting,”Base“),$nesting),function($base,$super,$parent_nesting){var $JSTempNode_compile$32,self=$klass($base,$super,”JSTempNode“);.concat($parent_nesting);self.$handle(”js_tmp“),self.$children(”value“),Opal.def(self,”$compile“,$JSTempNode_compile$32=function(){return this.$push(this.$value().$to_s())},$JSTempNode_compile$32.$$arity=0)}($nesting,$$($nesting,”Base“),$nesting),function($base,$super,$parent_nesting){var $BlockPassNode_compile$33,self=$klass($base,$super,”BlockPassNode“);.concat($parent_nesting);self.$handle(”block_pass“),self.$children(”value“),Opal.def(self,”$compile“,$BlockPassNode_compile$33=function(){return this.$push(this.$expr(this.$s(”send“,this.$value(),”to_proc“,this.$s(”arglist“))))},$BlockPassNode_compile$33.$$arity=0)}($nesting,$$($nesting,”Base“),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$slice=(Opal.breaker,Opal.slice),$module=Opal.module,$klass=Opal.klass,$send=Opal.send,$truthy=Opal.truthy;return ”,“$size”,“$wrap”,“$==”,“$returned_children”,“$+”,“$returns”,“$compiler”,“$s”,“$process”,“$freeze”,“$none?”,“$include?”,“$type”,“$map”,“$each_with_index”,“$reject”,“$to_proc”“>Opal.add_stubs(),self.$require(”opal/nodes/base“),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $UndefNode_compile$1,self=$klass($base,$super,”UndefNode“);.concat($parent_nesting);self.$handle(”undef“),self.$children(”value“),Opal.def(self,”$compile“,$UndefNode_compile$1=function(){var $$2;return $send(this.$children(),”each“,[],(($$2=function(child){var self=$$2.$$s||this;return null==child&&(child=nil),self.$line(”Opal.udef(self, '$' + “,self.$expr(child),”);“)}).$$s=this,$$2.$$arity=1,$$2))},$UndefNode_compile$1.$$arity=0)}($nesting,$$($nesting,”Base“),$nesting),function($base,$super,$parent_nesting){var $AliasNode_compile$3,self=$klass($base,$super,”AliasNode“);.concat($parent_nesting);self.$handle(”alias“),self.$children(”new_name“,”old_name“),Opal.def(self,”$compile“,$AliasNode_compile$3=function(){return this.$push(”Opal.alias(self, “,this.$expr(this.$new_name()),”, “,this.$expr(this.$old_name()),”)“)},$AliasNode_compile$3.$$arity=0)}($nesting,$$($nesting,”Base“),$nesting),function($base,$super,$parent_nesting){var $BeginNode_compile$4,$BeginNode_returned_children$5,$BeginNode_compile_children$6,$BeginNode_simple_children$ques$8,$BeginNode_compile_inline_children$10,self=$klass($base,$super,”BeginNode“),$nesting=.concat($parent_nesting);self.$$prototype.level=self.$$prototype.returned_children=nil,self.$handle(”begin“),Opal.def(self,”$compile“,$BeginNode_compile$4=function(){var lhs,rhs;return $truthy(this.$children()())?this.$push(”nil“):$truthy(this())?this.$compile_children(this.$children(),this.level):$truthy(this())?(this.$compile_inline_children(this.$children(),this.level),$truthy((lhs=this.$children().$size(),rhs=1,”number“==typeof lhs&&”number“==typeof ”“>rhs?rhs(rhs)))?this.$wrap(”(“,”)“):nil):this.$children().$size()(1)?this.$compile_inline_children(this.$returned_children(),this.level):(this.$compile_children(this.$returned_children(),this.level),this.$wrap(”(function() {“,”})()“))},$BeginNode_compile$4.$$arity=0),Opal.def(self,”$returned_children“,$BeginNode_returned_children$5=function(){var $a,$b,$c,lhs,rhs,self=this,rest=nil,last_child=nil;return self.returned_children=$truthy($a=self.returned_children)?$a:($c=($c=($b=[].concat(Opal.to_a(self.$children()))).length-1)<0?0:$c,rest=$slice.call($b,0,$c),last_child=null==$b?nil:$b,$truthy(last_child)?(lhs=rest,rhs=,”number“==typeof lhs&&”number“==typeof rhs?lhs+rhs:lhs(rhs)):)},$BeginNode_returned_children$5.$$arity=0),Opal.def(self,”$compile_children“,$BeginNode_compile_children$6=function(children,level){var $$7;return $send(children,”each“,[],(($$7=function(child){var self=$$7.$$s||this;return null==child&&(child=nil),self.$line(self.$process(child,level),”;“)}).$$s=this,$$7.$$arity=1,$$7))},$BeginNode_compile_children$6.$$arity=2),Opal.const_set($nesting,”COMPLEX_CHILDREN“,.$freeze()),Opal.def(self,”$simple_children?“,$BeginNode_simple_children$ques$8=function(){var $$9;return $send(this.$children(),”none?“,[],(($$9=function(child){$$9.$$s;return null==child&&(child=nil),$$($nesting,”COMPLEX_CHILDREN“)(child.$type())}).$$s=this,$$9.$$arity=1,$$9))},$BeginNode_simple_children$ques$8.$$arity=0),Opal.def(self,”$compile_inline_children“,$BeginNode_compile_inline_children$10=function(children,level){var $$11,$$12,processed_children;return processed_children=$send(children,”map“,[],(($$11=function(child){var self=$$11.$$s||this;return null==child&&(child=nil),self.$process(child,level)}).$$s=this,$$11.$$arity=1,$$11)),$send($send(processed_children,”reject“,[],”empty?“.$to_proc()),”each_with_index“,,(($$12=function(child,idx){var self=$$12.$$s||this;return null==child&&(child=nil),null==idx&&(idx=nil),idx(0)||self.$push(”, “),self.$push(child)}).$$s=this,$$12.$$arity=2,$$12))},$BeginNode_compile_inline_children$10.$$arity=2)}($nesting,$$($nesting,”ScopeNode“),$nesting),function($base,$super,$parent_nesting){var self=$klass($base,$super,”KwBeginNode“);.concat($parent_nesting);self.$handle(”kwbegin“)}($nesting,$$($nesting,”BeginNode“),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$truthy=Opal.truthy,$send=Opal.send;return Opal.add_stubs(),self.$require(”opal/nodes/base“),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $BaseYieldNode_compile_call$1,$BaseYieldNode_find_yielding_scope$2,$BaseYieldNode_yields_single_arg$ques$3,$BaseYieldNode_uses_splat$ques$4,self=$klass($base,$super,”BaseYieldNode“);.concat($parent_nesting);Opal.def(self,”$compile_call“,$BaseYieldNode_compile_call$1=function(){var block_name,lhs,rhs,yielding_scope=nil,$writer=nil;return(yielding_scope=this.$find_yielding_scope())(),$truthy(yielding_scope.$block_name())||($writer=,$send(yielding_scope,”block_name=“,Opal.to_a($writer)),$writer[(lhs=$writer.length,rhs=1,”number“==typeof lhs&&”number“==typeof rhs?lhs-rhs:lhs(rhs))]),block_name=yielding_scope.$block_name(),$truthy(this(this.$children()))?(this.$push(this.$expr(this.$children().$first())),this.$wrap(”Opal.yield1(“block_name”, “,”)“)):(this.$push(this.$expr($send(this,”s“,.concat(Opal.to_a(this.$children()))))),$truthy(this(this.$children()))?this.$wrap(”Opal.yieldX(“block_name”, “,”)“):this.$wrap(”Opal.yieldX(“block_name”, [“,”])“))},$BaseYieldNode_compile_call$1.$$arity=0),Opal.def(self,”$find_yielding_scope“,$BaseYieldNode_find_yielding_scope$2=function(){var $b,working=nil;for(working=this.$scope();$truthy(working)&&!$truthy($truthy($b=working.$block_name())?$b:working());)working=working.$parent();return working},$BaseYieldNode_find_yielding_scope$2.$$arity=0),Opal.def(self,”$yields_single_arg?“,$BaseYieldNode_yields_single_arg$ques$3=function(children){var $a;return $truthy($a=this(children)())?children.$size()(1):$a},$BaseYieldNode_yields_single_arg$ques$3.$$arity=1),Opal.def(self,”$uses_splat?“,$BaseYieldNode_uses_splat$ques$4=function(children){var $$5;return $send(children,”any?“,[],(($$5=function(child){$$5.$$s;return null==child&&(child=nil),child.$type()(”splat“)}).$$s=this,$$5.$$arity=1,$$5))},$BaseYieldNode_uses_splat$ques$4.$$arity=1)}($nesting,$$($nesting,”Base“),$nesting),function($base,$super,$parent_nesting){var $YieldNode_compile$6,self=$klass($base,$super,”YieldNode“);.concat($parent_nesting);self.$handle(”yield“),Opal.def(self,”$compile“,$YieldNode_compile$6=function(){return this.$compile_call()},$YieldNode_compile$6.$$arity=0)}($nesting,$$($nesting,”BaseYieldNode“),$nesting),function($base,$super,$parent_nesting){var $ReturnableYieldNode_compile$7,self=$klass($base,$super,”ReturnableYieldNode“);.concat($parent_nesting);self.$handle(”returnable_yield“),Opal.def(self,”$compile“,$ReturnableYieldNode_compile$7=function(){return this.$compile_call(),this.$wrap(”return “,”;“)},$ReturnableYieldNode_compile$7.$$arity=0)}($nesting,$$($nesting,”BaseYieldNode“),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$send=Opal.send,$truthy=Opal.truthy,$range=Opal.range;return Opal.add_stubs([”$require“,”$handle“,”$children“,”$push“,”$in_ensure“,”$line“,”$stmt“,”$body_sexp“,”$indent“,”$has_rescue_else?“,”$unshift“,”$rescue_else_code“,”$process“,”$compiler“,”$ensr_sexp“,”$wrap_in_closure?“,”$wrap“,”$returns“,”$begn“,”$ensr“,”$s“,”$recv?“,”$expr?“,”$rescue_else_sexp“,”$scope“,”$stmt?“,”$detect“,”$“,”$!=“,”$type“,”$rescue_else_sexp=“,”$-“,”$handle_rescue_else_manually?“,”$body_code“,”$each_with_index“,”$==“,”$nil?“,”$body“,”$!“,”$in_ensure?“,”$expr“,”$klasses“,”$lvar“,”$rescue_body“,”$klasses_sexp“]),self.$require(”opal/nodes/base“),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $EnsureNode_compile$1,$EnsureNode_body_sexp$6,$EnsureNode_ensr_sexp$7,$EnsureNode_wrap_in_closure$ques$8,$EnsureNode_rescue_else_code$9,self=$klass($base,$super,”EnsureNode“);.concat($parent_nesting);self.$handle(”ensure“),self.$children(”begn“,”ensr“),Opal.def(self,”$compile“,$EnsureNode_compile$1=function(){var $$2,$$3;return this.$push(”try {“),$send(this,”in_ensure“,[],(($$2=function(){var self=$$2.$$s||this;return self.$line(self.$stmt(self.$body_sexp()))}).$$s=this,$$2.$$arity=0,$$2)),this.$line(”} finally {“),$send(this,”indent“,[],(($$3=function(){var $$4,self=$$3.$$s||this;return null==self.level&&(self.level=nil),$truthy(self())?(self.$unshift(”var $no_errors = true; “),self.$line(”var $rescue_else_result;“),self.$line(”if ($no_errors) { “),$send(self,”indent“,[],(($$4=function(){var $$5,self=$$4.$$s||this;return self.$line(”$rescue_else_result = (function() {“),$send(self,”indent“,[],(($$5=function(){var self=$$5.$$s||this;return self.$line(self.$stmt(self.$rescue_else_code()))}).$$s=self,$$5.$$arity=0,$$5)),self.$line(”})();“)}).$$s=self,$$4.$$arity=0,$$4)),self.$line(”}“),self.$line(self.$compiler().$process(self.$ensr_sexp(),self.level)),self.$line(”if ($no_errors) { return $rescue_else_result; }“)):self.$line(self.$compiler().$process(self.$ensr_sexp(),self.level))}).$$s=this,$$3.$$arity=0,$$3)),this.$line(”}“),$truthy(this())?this.$wrap(”(function() { “,”; })()“):nil},$EnsureNode_compile$1.$$arity=0),Opal.def(self,”$body_sexp“,$EnsureNode_body_sexp$6=function(){return $truthy(this())?this.$compiler().$returns(this.$begn()):this.$begn()},$EnsureNode_body_sexp$6.$$arity=0),Opal.def(self,”$ensr_sexp“,$EnsureNode_ensr_sexp$7=function(){var $a;return $truthy($a=this.$ensr())?$a:this.$s(”nil“)},$EnsureNode_ensr_sexp$7.$$arity=0),Opal.def(self,”$wrap_in_closure?“,$EnsureNode_wrap_in_closure$ques$8=function(){var $a,$b;return $truthy($a=$truthy($b=this())?$b:this())?$a:this()},$EnsureNode_wrap_in_closure$ques$8.$$arity=0),Opal.def(self,”$rescue_else_code“,$EnsureNode_rescue_else_code$9=function(){var rescue_else_code=nil;return rescue_else_code=this.$scope().$rescue_else_sexp(),$truthy(this())||(rescue_else_code=this.$compiler().$returns(rescue_else_code)),rescue_else_code},$EnsureNode_rescue_else_code$9.$$arity=0)}($nesting,$$($nesting,”Base“),$nesting),function($base,$super,$parent_nesting){var $RescueNode_compile$10,$RescueNode_body_code$17,$RescueNode_rescue_else_code$18,$RescueNode_handle_rescue_else_manually$ques$19,self=$klass($base,$super,”RescueNode“);.concat($parent_nesting);self.$handle(”rescue“),self.$children(”body“),Opal.def(self,”$compile“,$RescueNode_compile$10=function(){var $$11,$$12,$$13,$$15,$a,$writer,lhs,rhs;return $writer=[$send(this.$children()[”$“]($range(1,-1,!1)),”detect“,[],($$11=function(sexp){var $a;$$11.$$s;return null==sexp&&(sexp=nil),$truthy($a=sexp)?sexp.$type()(”resbody“):$a},$$11.$$s=this,$$11.$$arity=1,$$11))],$send(this.$scope(),”rescue_else_sexp=“,Opal.to_a($writer)),rhs=1,”number“==typeof(lhs=$writer.length)&&”number“==typeof rhs||lhs(rhs),!1,$truthy(this())&&this.$line(”var $no_errors = true;“),this.$push(”try {“),$send(this,”indent“,[],(($$12=function(){var self=$$12.$$s||this;return self.$line(self.$stmt(self.$body_code()))}).$$s=this,$$12.$$arity=0,$$12)),this.$line(”} catch ($err) {“),$send(this,”indent“,[],(($$13=function(){var $$14,self=$$13.$$s||this;return $truthy(self())&&self.$line(”$no_errors = false;“),$send(self.$children()[”$“]($range(1,-1,!1)),”each_with_index“,[],(($$14=function(child,idx){var $a,self=$$14.$$s||this;return null==self.level&&(self.level=nil),null==child&&(child=nil),null==idx&&(idx=nil),$truthy($truthy($a=child)?child.$type()(”resbody“):$a)?(!0,idx(0)||self.$push(” else “),self.$line(self.$process(child,self.level))):nil}).$$s=self,$$14.$$arity=2,$$14)),self.$push(” else { throw $err; }“)}).$$s=this,$$13.$$arity=0,$$13)),this.$line(”}“),$truthy(this())&&(this.$push(”finally {“),$send(this,”indent“,[],(($$15=function(){var $$16,self=$$15.$$s||this;return self.$line(”if ($no_errors) { “),$send(self,”indent“,[],(($$16=function(){var self=$$16.$$s||this;return self.$line(self.$stmt(self.$rescue_else_code()))}).$$s=self,$$16.$$arity=0,$$16)),self.$line(”}“)}).$$s=this,$$15.$$arity=0,$$15)),this.$push(”}“)),$truthy($truthy($a=this())?$a:this())?this.$wrap(”(function() { “,”})()“):nil},$RescueNode_compile$10.$$arity=0),Opal.def(self,”$body_code“,$RescueNode_body_code$17=function(){var $a,self=this,body_code=nil;return body_code=$truthy($truthy($a=self.$body()())?$a:self.$body().$type()(”resbody“))?self.$s(”nil“):self.$body(),$truthy(self())||(body_code=self.$compiler().$returns(body_code)),body_code},$RescueNode_body_code$17.$$arity=0),Opal.def(self,”$rescue_else_code“,$RescueNode_rescue_else_code$18=function(){var rescue_else_code=nil;return rescue_else_code=this.$scope().$rescue_else_sexp(),$truthy(this())||(rescue_else_code=this.$compiler().$returns(rescue_else_code)),rescue_else_code},$RescueNode_rescue_else_code$18.$$arity=0),Opal.def(self,”$handle_rescue_else_manually?“,$RescueNode_handle_rescue_else_manually$ques$19=function(){var $a;return $truthy($a=this.$scope()()[”$!“]())?this.$scope()():$a},$RescueNode_handle_rescue_else_manually$ques$19.$$arity=0)}($nesting,$$($nesting,”Base“),$nesting),function($base,$super,$parent_nesting){var $ResBodyNode_compile$20,$ResBodyNode_klasses$23,$ResBodyNode_rescue_body$24,self=$klass($base,$super,”ResBodyNode“);.concat($parent_nesting);self.$handle(”resbody“),self.$children(”klasses_sexp“,”lvar“,”body“),Opal.def(self,”$compile“,$ResBodyNode_compile$20=function(){var $$21;return this.$push(”if (Opal.rescue($err, “,this.$expr(this.$klasses()),”)) {“),$send(this,”indent“,[],(($$21=function(){var $$22,self=$$21.$$s||this;return $truthy(self.$lvar())&&self.$push(self.$expr(self.$lvar()),”$err;“),self.$line(”try {“),$send(self,”indent“,[],(($$22=function(){var self=$$22.$$s||this;return self.$line(self.$stmt(self.$rescue_body()))}).$$s=self,$$22.$$arity=0,$$22)),self.$line(”} finally { Opal.pop_exception() }“)}).$$s=this,$$21.$$arity=0,$$21)),this.$line(”}“)},$ResBodyNode_compile$20.$$arity=0),Opal.def(self,”$klasses“,$ResBodyNode_klasses$23=function(){var $a;return $truthy($a=this.$klasses_sexp())?$a:this.$s(”array“,this.$s(”const“,nil,”StandardError“))},$ResBodyNode_klasses$23.$$arity=0),Opal.def(self,”$rescue_body“,$ResBodyNode_rescue_body$24=function(){var $a,body_code=nil;return body_code=$truthy($a=this.$body())?$a:this.$s(”nil“),$truthy(this())||(body_code=this.$compiler().$returns(body_code)),body_code},$ResBodyNode_rescue_body$24.$$arity=0)}($nesting,$$($nesting,”Base“),$nesting),function($base,$super,$parent_nesting){var $RetryNode_compile$25,self=$klass($base,$super,”RetryNode“);.concat($parent_nesting);self.$handle(”retry“),Opal.def(self,”$compile“,$RetryNode_compile$25=function(){return this.$push(this.$stmt(this.$s(”send“,nil,”retry“)))},$RetryNode_compile$25.$$arity=0)}($nesting,$$($nesting,”Base“),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$send=Opal.send,$truthy=Opal.truthy,$range=Opal.range;return Opal.add_stubs([”$require“,”$handle“,”$children“,”$in_case“,”$compiler“,”$compile_code“,”$needs_closure?“,”$wrap“,”$condition“,”$=“,”$case_stmt“,”$-“,”$add_local“,”$push“,”$expr“,”$each_with_index“,”$case_parts“,”$line“,”$type“,”$===“,”$returns“,”$==“,”$stmt“,”$!“,”$stmt?“,”$),self.$require(“opal/nodes/base”),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $CaseNode_compile$1,$CaseNode_compile_code$3,$CaseNode_needs_closure$ques$5,$CaseNode_case_parts$6,$CaseNode_case_stmt$7,self=$klass($base,$super,“CaseNode”);.concat($parent_nesting);self.$handle(“case”),self.$children(“condition”),Opal.def(self,“$compile”,$CaseNode_compile$1=function(){var $$2;return $send(this.$compiler(),“in_case”,[],(($$2=function(){var self=$$2.$$s||this;return self.$compile_code(),$truthy(self())?self.$wrap(“(function() {”,“})()”):nil}).$$s=this,$$2.$$arity=0,$$2))},$CaseNode_compile$1.$$arity=0),Opal.def(self,“$compile_code”,$CaseNode_compile_code$3=function(){var $$4,$a,lhs,rhs,handled_else=nil,$writer=nil;return handled_else=!1,$truthy(this.$condition())&&($writer=,$send(this.$case_stmt(),“[]=”,Opal.to_a($writer)),$writer[(lhs=$writer.length,rhs=1,“number”==typeof lhs&&“number”==typeof rhs?lhs-rhs:lhs(rhs))],this.$add_local(“$case”),this.$push(“$case = ”,this.$expr(this.$condition()),“;”)),$send(this.$case_parts(),“each_with_index”,[],(($$4=function(wen,idx){var self=$$4.$$s||this,$case=nil;return null==wen&&(wen=nil),null==idx&&(idx=nil),$truthy(wen)?(self.$line(),$case=wen.$type(),“when”($case)?($truthy(self())&&(wen=self.$compiler().$returns(wen)),idx(0)||self.$push(“else ”),self.$push(self.$stmt(wen))):(handled_else=!0,$truthy(self())&&(wen=self.$compiler().$returns(wen)),self.$push(“else {”,self.$stmt(wen),“}”))):nil}).$$s=this,$$4.$$arity=2,$$4)),$truthy($truthy($a=this())?handled_else():$a)?(this.$line(),this.$push(“else { return nil }”)):nil},$CaseNode_compile_code$3.$$arity=0),Opal.def(self,“$needs_closure?”,$CaseNode_needs_closure$ques$5=function(){return this()[“$!”]()},$CaseNode_needs_closure$ques$5.$$arity=0),Opal.def(self,“$case_parts”,$CaseNode_case_parts$6=function(){return this.$children()[“$”]($range(1,-1,!1))},$CaseNode_case_parts$6.$$arity=0),Opal.def(self,“$case_stmt”,$CaseNode_case_stmt$7=function(){return this.$compiler().$case_stmt()},$CaseNode_case_stmt$7.$$arity=0)}($nesting,$$($nesting,“Base”),$nesting),function($base,$super,$parent_nesting){var $WhenNode_compile$8,$WhenNode_when_checks$10,$WhenNode_case_stmt$11,$WhenNode_body_code$12,self=$klass($base,$super,“WhenNode”);.concat($parent_nesting);self.$$prototype.level=nil,self.$handle(“when”),self.$children(“whens”,“body”),Opal.def(self,“$compile”,$WhenNode_compile$8=function(){var $$9;return this.$push(“if (”),$send(this.$when_checks(),“each_with_index”,[],(($$9=function(check,idx){var self=$$9.$$s||this,call=nil;return null==check&&(check=nil),null==idx&&(idx=nil),idx(0)||self.$push(“ || ”),check.$type()(“splat”)?(self.$push(“(function($splt) { for (var i = 0, ii = $splt.length; i < ii; i++) {”),$truthy(self.$case_stmt()[“$”](“cond”))?self.$push(“if ($splt['$===']($case)) { return true; }”):self.$push(“if (”,self.$js_truthy(check),“)) { return true; }”),self.$push(“} return false; })(”,self.$expr(check.$children()[“$”](0)),“)”)):$truthy(self.$case_stmt()[“$”](“cond”))?(call=self.$s(“send”,check,“===”,self.$s(“arglist”,self.$s(“js_tmp”,“$case”))),self.$push(self.$expr(call))):self.$push(self.$js_truthy(check))}).$$s=this,$$9.$$arity=2,$$9)),this.$push(“) {”,this.$process(this.$body_code(),this.level),“}”)},$WhenNode_compile$8.$$arity=0),Opal.def(self,“$when_checks”,$WhenNode_when_checks$10=function(){return this.$children()[“$”]($range(0,-2,!1))},$WhenNode_when_checks$10.$$arity=0),Opal.def(self,“$case_stmt”,$WhenNode_case_stmt$11=function(){return this.$compiler().$case_stmt()},$WhenNode_case_stmt$11.$$arity=0),Opal.def(self,“$body_code”,$WhenNode_body_code$12=function(){var $a;return $truthy($a=this.$children().$last())?$a:this.$s(“nil”)},$WhenNode_body_code$12.$$arity=0)}($nesting,$$($nesting,“Base”),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],nil=Opal.nil,$$$=Opal.const_get_qualified,$$=Opal.const_get_relative,$slice=(Opal.breaker,Opal.slice),$module=Opal.module,$klass=Opal.klass,$send=Opal.send,$truthy=Opal.truthy;return Opal.add_stubs(),self.$require(“opal/nodes/base”),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $BaseSuperNode_initialize$1,$BaseSuperNode_compile_using_send$2,$BaseSuperNode_def_scope$3,$BaseSuperNode_raise_exception$ques$4,$BaseSuperNode_defined_check_param$5,$BaseSuperNode_implicit_args$ques$6,$BaseSuperNode_implicit_arguments_param$7,$BaseSuperNode_method_id$8,$BaseSuperNode_def_scope_identity$9,$BaseSuperNode_super_method_invocation$10,$BaseSuperNode_super_block_invocation$11,$BaseSuperNode_compile_method$13,self=$klass($base,$super,“BaseSuperNode”);.concat($parent_nesting);self.$$prototype.sexp=self.$$prototype.def_scope=nil,Opal.def(self,“$initialize”,$BaseSuperNode_initialize$1=function($a){var $b,$c,rest,$zuper_ii,$iter=$BaseSuperNode_initialize$1.$$p,args=nil,last_child=nil,$zuper=nil,$zuper_i=nil;for($iter&&($BaseSuperNode_initialize$1.$$p=null),$zuper_i=0,$zuper_ii=arguments.length,$zuper=new Array($zuper_ii);$zuper_i<$zuper_ii;$zuper_i++)$zuper=arguments;return Opal.slice.call(arguments,0,arguments.length),$send(this,Opal.find_super_dispatcher(this,“initialize”,$BaseSuperNode_initialize$1,!1),$zuper,$iter),args=[].concat(Opal.to_a(this.sexp)),$c=($c=($b=.concat(Opal.to_a(args))).length-1)<0?0:$c,rest=$slice.call($b,0,$c),last_child=null==$b?nil:$b,$truthy($truthy($b=last_child)?[“$include?”](last_child.$type()):$b)?(this.iter=last_child,args=rest):this.iter=this.$s(“js_tmp”,“null”),this.arglist=$send(this,“s”,.concat(Opal.to_a(args))),this.recvr=this.$s(“self”)},$BaseSuperNode_initialize$1.$$arity=-1),Opal.def(self,“$compile_using_send”,$BaseSuperNode_compile_using_send$2=function(){return this.$helper(“send”),this.$push(“$send(”),this.$compile_receiver(),this.$compile_method(),this.$compile_arguments(),this.$compile_block_pass(),this.$push(“)”)},$BaseSuperNode_compile_using_send$2.$$arity=0),self.$private(),Opal.def(self,“$def_scope”,$BaseSuperNode_def_scope$3=function(){var $a,self=this;return self.def_scope=$truthy($a=self.def_scope)?$a:$truthy(self.$scope()())?self.$scope():self.$scope().$find_parent_def()},$BaseSuperNode_def_scope$3.$$arity=0),Opal.def(self,“$raise_exception?”,$BaseSuperNode_raise_exception$ques$4=function(){return this.sexp.$type()(“defined_super”)},$BaseSuperNode_raise_exception$ques$4.$$arity=0),Opal.def(self,“$defined_check_param”,$BaseSuperNode_defined_check_param$5=function(){return $truthy(this())?“true”:“false”},$BaseSuperNode_defined_check_param$5.$$arity=0),Opal.def(self,“$implicit_args?”,$BaseSuperNode_implicit_args$ques$6=function(){return this.sexp.$type()(“zsuper”)},$BaseSuperNode_implicit_args$ques$6.$$arity=0),Opal.def(self,“$implicit_arguments_param”,$BaseSuperNode_implicit_arguments_param$7=function(){return $truthy(this())?“true”:“false”},$BaseSuperNode_implicit_arguments_param$7.$$arity=0),Opal.def(self,“$method_id”,$BaseSuperNode_method_id$8=function(){return this.$def_scope().$mid().$to_s()},$BaseSuperNode_method_id$8.$$arity=0),Opal.def(self,“$def_scope_identity”,$BaseSuperNode_def_scope_identity$9=function(){return this.$def_scope()(this.$def_scope().$mid())},$BaseSuperNode_def_scope_identity$9.$$arity=0),Opal.def(self,“$super_method_invocation”,$BaseSuperNode_super_method_invocation$10=function(){return $truthy(this.$def_scope().$defs())?“Opal.find_super_dispatcher(self, '”+this.$method_id()+“', ”+this.$def_scope_identity()+“, ”+this.$defined_check_param()+“, self.$$class.$$prototype)”:“Opal.find_super_dispatcher(self, '”+this.$method_id()+“', ”+this.$def_scope_identity()+“, ”+this.$defined_check_param()+“)”},$BaseSuperNode_super_method_invocation$10.$$arity=0),Opal.def(self,“$super_block_invocation”,$BaseSuperNode_super_block_invocation$11=function(){var $a,$b,$$12,chain,cur_defn;return $b=this.$scope().$super_chain(),chain=null==($a=Opal.to_ary($b))?nil:$a,cur_defn=null==$a?nil:$a,“Opal.find_iter_super_dispatcher(self, ”+(null==$a?nil:$a)+“, (”+$send(chain,“map”,[],($$12=function©{$$12.$$s;return null==c&&(c=nil),c+“.$$def”},$$12.$$s=this,$$12.$$arity=1,$$12)).$join(“ || ”)+“ || ”cur_defn“), ”+this.$defined_check_param()+“, ”+this.$implicit_arguments_param()+“)”},$BaseSuperNode_super_block_invocation$11.$$arity=0),Opal.def(self,“$compile_method”,$BaseSuperNode_compile_method$13=function(){return this.$push(“, ”),$truthy(this.$scope()())?this.$push(this.$super_method_invocation()):$truthy(this.$scope()())?this.$push(this.$super_block_invocation()):this.$raise(“super must be called from method body or block”)},$BaseSuperNode_compile_method$13.$$arity=0)}($nesting,$$($nesting,“CallNode”),$nesting),function($base,$super,$parent_nesting){var $DefinedSuperNode_compile$14,self=$klass($base,$super,“DefinedSuperNode”);.concat($parent_nesting);self.$handle(“defined_super”),Opal.def(self,“$compile”,$DefinedSuperNode_compile$14=function(){return this.$compile_receiver(),this.$compile_method(),this.$wrap(“((”,') != null ? “super” : nil)')},$DefinedSuperNode_compile$14.$$arity=0)}($nesting,$$($nesting,“BaseSuperNode”),$nesting),function($base,$super,$parent_nesting){var $SuperNode_initialize$15,$SuperNode_compile$16,self=$klass($base,$super,“SuperNode”);.concat($parent_nesting);self.$handle(“super”),Opal.def(self,“$initialize”,$SuperNode_initialize$15=function($a){var $zuper_ii,$iter=$SuperNode_initialize$15.$$p,$zuper=nil,$zuper_i=nil;for($iter&&($SuperNode_initialize$15.$$p=null),$zuper_i=0,$zuper_ii=arguments.length,$zuper=new Array($zuper_ii);$zuper_i<$zuper_ii;$zuper_i++)$zuper=arguments;return Opal.slice.call(arguments,0,arguments.length),$send(this,Opal.find_super_dispatcher(this,“initialize”,$SuperNode_initialize$15,!1),$zuper,$iter),$truthy(this.$scope()())?this.$scope()():nil},$SuperNode_initialize$15.$$arity=-1),Opal.def(self,“$compile”,$SuperNode_compile$16=function(){return this.$compile_using_send()},$SuperNode_compile$16.$$arity=0)}($nesting,$$($nesting,“BaseSuperNode”),$nesting),function($base,$super,$parent_nesting){var $ZsuperNode_initialize$17,$ZsuperNode_compile$18,$ZsuperNode_compile_arguments$19,$ZsuperNode_block_name$20,self=$klass($base,$super,“ZsuperNode”),$nesting=.concat($parent_nesting);self.$handle(“zsuper”),Opal.def(self,“$initialize”,$ZsuperNode_initialize$17=function($a){var $zuper_ii,$iter=$ZsuperNode_initialize$17.$$p,$zuper=nil,$zuper_i=nil;for($iter&&($ZsuperNode_initialize$17.$$p=null),$zuper_i=0,$zuper_ii=arguments.length,$zuper=new Array($zuper_ii);$zuper_i<$zuper_ii;$zuper_i++)$zuper=arguments;return Opal.slice.call(arguments,0,arguments.length),$send(this,Opal.find_super_dispatcher(this,“initialize”,$ZsuperNode_initialize$17,!1),$zuper,$iter),this.$iter().$type()(“iter”)?nil:(this.$scope()(),this.iter=this.$s(“js_tmp”,“$iter”))},$ZsuperNode_initialize$17.$$arity=-1),Opal.def(self,“$compile”,$ZsuperNode_compile$18=function(){var $a,lhs,rhs,$writer=nil,implicit_args=nil,block_pass=nil;return $truthy(this.$def_scope())&&($writer=,$send(this.$def_scope(),“uses_zuper=”,Opal.to_a($writer)),$writer[(lhs=$writer.length,rhs=1,“number”==typeof lhs&&“number”==typeof rhs?lhs-rhs:lhs(rhs))],implicit_args=,$truthy($truthy($a=this.$block_name())?this.$iter()():$a)&&(block_pass=this.$s(“block_pass”,this.$s(“lvar”,this.$block_name())),implicit_args(block_pass)),this.arglist=$send(this,“s”,.concat(Opal.to_a(implicit_args)))),this.$compile_using_send()},$ZsuperNode_compile$18.$$arity=0),Opal.def(self,“$compile_arguments”,$ZsuperNode_compile_arguments$19=function(){return this.$push(“, ”),$truthy(this.$arglist().$children()())?this.$push(“[]”):this.$push(this.$expr(this.$arglist()))},$ZsuperNode_compile_arguments$19.$$arity=0),Opal.def(self,“$block_name”,$ZsuperNode_block_name$20=function(){var self=this,$case=nil;return $case=self.$def_scope(),$$$($$$($$($nesting,“Opal”),“Nodes”),“IterNode”)($case)?self.$def_scope().$block_name():$$$($$$($$($nesting,“Opal”),“Nodes”),“DefNode”)($case)?self.$def_scope().$block_name():self.$raise(“Don't know what to do with super in the scope ”+self.$def_scope())},$ZsuperNode_block_name$20.$$arity=0)}($nesting,$$($nesting,“SuperNode”),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){Opal.top;var $nesting=[],$module=(Opal.nil,Opal.const_get_qualified,Opal.const_get_relative,Opal.breaker,Opal.slice,Opal.module);return function($base,$parent_nesting){var $nesting=.concat($parent_nesting);Opal.const_set($nesting,“VERSION”,“1.0.0”)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],nil=Opal.nil,$$$=Opal.const_get_qualified,$$=Opal.const_get_relative,$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$send=Opal.send,$truthy=Opal.truthy;return Opal.add_stubs([“$require”,“$handle”,“$children”,“$push”,“$version_comment”,“$opening”,“$in_scope”,“$stmt”,“$stmts”,“$is_a?”,“$eval?”,“$compiler”,“$add_temp”,“$add_used_helpers”,“$add_used_operators”,“$line”,“$to_vars”,“$scope”,“$compile_method_stubs”,“$compile_irb_vars”,“$compile_end_construct”,“$closing”,“$requirable?”,“$inspect”,“$module_name”,“$file”,“$returns”,“$body”,“$irb?”,“$to_a”,“$helpers”,“$each”,“$operator_helpers”,“$”,“$method_missing?”,“$method_calls”,“$join”,“$map”,“$empty?”,“$eof_content”]),self.$require(“pathname”),self.$require(“opal/version”),self.$require(“opal/nodes/scope”),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $TopNode_compile$1,$TopNode_opening$3,$TopNode_closing$4,$TopNode_stmts$5,$TopNode_compile_irb_vars$6,$TopNode_add_used_helpers$7,$TopNode_add_used_operators$9,$TopNode_compile_method_stubs$11,$TopNode_compile_end_construct$13,$TopNode_version_comment$14,self=$klass($base,$super,“TopNode”),$nesting=.concat($parent_nesting);self.$handle(“top”),self.$children(“body”),Opal.def(self,“$compile”,$TopNode_compile$1=function(){var $$2;return this.$push(this.$version_comment()),this.$opening(),$send(this,“in_scope”,[],(($$2=function(){var self=$$2.$$s||this,body_code=nil;return body_code=self.$stmt(self.$stmts()),$truthy(body_code($$($nesting,“Array”)))||(body_code=),$truthy(self.$compiler()())?self.$add_temp(“$nesting = self.$$is_a_module ? [self] : [self.$$class]”):(self.$add_temp(“self = Opal.top”),self.$add_temp(“$nesting = []”)),self.$add_temp(“nil = Opal.nil”),self.$add_temp(“$$$ = Opal.const_get_qualified”),self.$add_temp(“$$ = Opal.const_get_relative”),self.$add_used_helpers(),self.$add_used_operators(),self.$line(self.$scope().$to_vars()),self.$compile_method_stubs(),self.$compile_irb_vars(),self.$compile_end_construct(),self.$line(body_code)}).$$s=this,$$2.$$arity=0,$$2)),this.$closing()},$TopNode_compile$1.$$arity=0),Opal.def(self,“$opening”,$TopNode_opening$3=function(){return $truthy(this.$compiler()())?this.$line(“Opal.modules = function(Opal) {”):$truthy(this.$compiler()())?this.$line(“(function(Opal, self) {”):this.$line(“(function(Opal) {”)},$TopNode_opening$3.$$arity=0),Opal.def(self,“$closing”,$TopNode_closing$4=function(){return $truthy(this.$compiler()())?this.$line(“};n”):$truthy(this.$compiler()())?this.$line(“})(Opal, self)”):this.$line(“})(Opal);n”)},$TopNode_closing$4.$$arity=0),Opal.def(self,“$stmts”,$TopNode_stmts$5=function(){return this.$compiler().$returns(this.$body())},$TopNode_stmts$5.$$arity=0),Opal.def(self,“$compile_irb_vars”,$TopNode_compile_irb_vars$6=function(){return $truthy(this.$compiler()())?this.$line(“if (!Opal.irb_vars) { Opal.irb_vars = {}; }”):nil},$TopNode_compile_irb_vars$6.$$arity=0),Opal.def(self,“$add_used_helpers”,$TopNode_add_used_helpers$7=function(){var $$8,helpers=nil;return helpers=this.$compiler().$helpers().$to_a(),$send(helpers.$to_a(),“each”,[],(($$8=function(h){var self=$$8.$$s||this;return null==h&&(h=nil),self.$add_temp(“$”h“ = Opal.”+h)}).$$s=this,$$8.$$arity=1,$$8))},$TopNode_add_used_helpers$7.$$arity=0),Opal.def(self,“$add_used_operators”,$TopNode_add_used_operators$9=function(){var $$10,operators;return operators=this.$compiler().$operator_helpers().$to_a(),$send(operators,“each”,[],(($$10=function(op){var name,self=$$10.$$s||this;return null==op&&(op=nil),name=$$$($$$($$($nesting,“Nodes”),“CallNode”),“OPERATORS”)[“$”](op),self.$line(“function $rb_”name“(lhs, rhs) {”),self.$line(“ return (typeof(lhs) === 'number' && typeof(rhs) === 'number') ? lhs ”op“ rhs : lhs[‘$”op“’](rhs);”),self.$line(“}”)}).$$s=this,$$10.$$arity=1,$$10))},$TopNode_add_used_operators$9.$$arity=0),Opal.def(self,“$compile_method_stubs”,$TopNode_compile_method_stubs$11=function(){var $$12,calls=nil,stubs=nil;return $truthy(this.$compiler()())?(calls=this.$compiler().$method_calls(),stubs=$send(calls.$to_a(),“map”,[],($$12=function(k){$$12.$$s;return null==k&&(k=nil),“'$”k“'”},$$12.$$s=this,$$12.$$arity=1,$$12)).$join(“, ”),$truthy(stubs())?nil:this.$line(“Opal.add_stubs([”stubs“]);”)):nil},$TopNode_compile_method_stubs$11.$$arity=0),Opal.def(self,“$compile_end_construct”,$TopNode_compile_end_construct$13=function(){var content=nil;return $truthy(content=this.$compiler().$eof_content())?(this.$line(“var $__END__ = Opal.Object.$new();”),this.$line(“$__END__.$read = function() { return ”+content.$inspect()+“; };”)):nil},$TopNode_compile_end_construct$13.$$arity=0),Opal.def(self,“$version_comment”,$TopNode_version_comment$14=function(){return“/* Generated by Opal ”+$$$($$($nesting,“Opal”),“VERSION”)+“ */”},$TopNode_version_comment$14.$$arity=0)}($nesting,$$($nesting,“ScopeNode”),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){function $rb_minus(lhs,rhs){return“number”==typeof lhs&&“number”==typeof rhs?lhs-rhs:lhs(rhs)}var self=Opal.top,$nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$send=Opal.send,$truthy=Opal.truthy;return Opal.add_stubs([“$require”,“$handle”,“$children”,“$with_temp”,“$js_truthy”,“$test”,“$in_while”,“$compiler”,“$wrap_in_closure?”,“$=”,“$while_loop”,“$-”,“$stmt”,“$body”,“$uses_redo?”,“$push”,“$while_open”,“$while_close”,“$line”,“$wrap”,“$),self.$require(”opal/nodes/base“),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $WhileNode_compile$1,$WhileNode_while_open$4,$WhileNode_while_close$5,$WhileNode_uses_redo$ques$6,$WhileNode_wrap_in_closure$ques$7,self=$klass($base,$super,”WhileNode“);.concat($parent_nesting);self.$handle(”while“),self.$children(”test“,”body“),Opal.def(self,”$compile“,$WhileNode_compile$1=function(){var $$2;return $send(this,”with_temp“,[],(($$2=function(redo_var){var $$3,test_code,self=$$2.$$s||this;return null==redo_var&&(redo_var=nil),test_code=self.$js_truthy(self.$test()),$send(self.$compiler(),”in_while“,[],(($$3=function(){var body_code,self=$$3.$$s||this,$writer=nil;return $truthy(self())&&($writer=,$send(self.$while_loop(),”[]=“,Opal.to_a($writer)),$writer),$writer=,$send(self.$while_loop(),”[]=“,Opal.to_a($writer)),$writer,body_code=self.$stmt(self.$body()),$truthy(self())?(self.$push(redo_var+” = false; “+self.$while_open()redo_var” || “),self.$push(test_code),self.$push(self.$while_close())):self.$push(self.$while_open(),test_code,self.$while_close()),$truthy(self())&&self.$push(redo_var+” = false;“),self.$line(body_code)}).$$s=self,$$3.$$arity=0,$$3)),self.$line(”}“)}).$$s=this,$$2.$$arity=1,$$2)),$truthy(this())?this.$wrap(”(function() {“,”; return nil; })()“):nil},$WhileNode_compile$1.$$arity=0),Opal.def(self,”$while_open“,$WhileNode_while_open$4=function(){return”while (“},$WhileNode_while_open$4.$$arity=0),Opal.def(self,”$while_close“,$WhileNode_while_close$5=function(){return”) {“},$WhileNode_while_close$5.$$arity=0),Opal.def(self,”$uses_redo?“,$WhileNode_uses_redo$ques$6=function(){return this.$while_loop()[”$“](”use_redo“)},$WhileNode_uses_redo$ques$6.$$arity=0),Opal.def(self,”$wrap_in_closure?“,$WhileNode_wrap_in_closure$ques$7=function(){var $a;return $truthy($a=this())?$a:this()},$WhileNode_wrap_in_closure$ques$7.$$arity=0)}($nesting,$$($nesting,”Base“),$nesting),function($base,$super,$parent_nesting){var self=$klass($base,$super,”WhilePostNode“);.concat($parent_nesting);self.$handle(”while_post“)}($nesting,$$($nesting,”WhileNode“),$nesting),function($base,$super,$parent_nesting){var $UntilNode_while_open$8,$UntilNode_while_close$9,self=$klass($base,$super,”UntilNode“);.concat($parent_nesting);self.$handle(”until“),Opal.def(self,”$while_open“,$UntilNode_while_open$8=function(){return”while (!(“},$UntilNode_while_open$8.$$arity=0),Opal.def(self,”$while_close“,$UntilNode_while_close$9=function(){return”)) {“},$UntilNode_while_close$9.$$arity=0)}($nesting,$$($nesting,”WhileNode“),$nesting),function($base,$super,$parent_nesting){var self=$klass($base,$super,”UntilPostNode“);.concat($parent_nesting);self.$handle(”until_post“)}($nesting,$$($nesting,”UntilNode“),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$send=Opal.send,$truthy=Opal.truthy,$hash2=Opal.hash2;return Opal.add_stubs([”$require“,”$handle“,”$attr_accessor“,”$each“,”$children“,”$type“,”$===“,”$<<","$“,”$all?“,”$keys“,”$include?“,”$has_kwsplat“,”$compile_merge“,”$simple_keys?“,”$compile_hash2“,”$compile_hash“,”$helper“,”$==“,”$empty?“,”$expr“,”$s“,”$each_with_index“,”$push“,”$wrap“,”$times“,”$size“,”$inspect“,”$to_s“,”$values“,”$),self.$require(“opal/nodes/base”),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $HashNode_initialize$1,$HashNode_simple_keys$ques$3,$HashNode_compile$5,$HashNode_compile_merge$6,$HashNode_compile_hash$9,$HashNode_compile_hash2$11,self=$klass($base,$super,“HashNode”);.concat($parent_nesting);self.$handle(“hash”),self.$attr_accessor(“has_kwsplat”,“keys”,“values”),Opal.def(self,“$initialize”,$HashNode_initialize$1=function($a){var $$2,$zuper_ii,$iter=$HashNode_initialize$1.$$p,$zuper=nil,$zuper_i=nil;for($iter&&($HashNode_initialize$1.$$p=null),$zuper_i=0,$zuper_ii=arguments.length,$zuper=new Array($zuper_ii);$zuper_i<$zuper_ii;$zuper_i++)$zuper=arguments;return Opal.slice.call(arguments,0,arguments.length),$send(this,Opal.find_super_dispatcher(this,“initialize”,$HashNode_initialize$1,!1),$zuper,$iter),this.has_kwsplat=!1,this.keys=[],this.values=,$send(this.$children(),“each”,[],(($$2=function(child){var self=$$2.$$s||this,$case=nil;return null==self.keys&&(self.keys=nil),null==self.values&&(self.values=nil),null==child&&(child=nil),$case=child.$type(),“kwsplat”($case)?self.has_kwsplat=!0:“pair”($case)?(self.keys(child.$children()[“$”](0)),self.values(child.$children()[“$”](1))):nil}).$$s=this,$$2.$$arity=1,$$2))},$HashNode_initialize$1.$$arity=-1),Opal.def(self,“$simple_keys?”,$HashNode_simple_keys$ques$3=function(){var $$4;return $send(this.$keys(),“all?”,[],(($$4=function(key){$$4.$$s;return null==key&&(key=nil),[“$include?”](key.$type())}).$$s=this,$$4.$$arity=1,$$4))},$HashNode_simple_keys$ques$3.$$arity=0),Opal.def(self,“$compile”,$HashNode_compile$5=function(){return $truthy(this.$has_kwsplat())?this.$compile_merge():$truthy(this())?this.$compile_hash2():this.$compile_hash()},$HashNode_compile$5.$$arity=0),Opal.def(self,“$compile_merge”,$HashNode_compile_merge$6=function(){var $a,$$7,$$8,result=nil,seq=nil;return this.$helper(“hash”),result=($a=[,[]])[0],seq=$a,$send(this.$children(),“each”,[],(($$7=function(child){var self=$$7.$$s||this;return null==child&&(child=nil),child.$type()(“kwsplat”)?($truthy(seq())||result(self.$expr($send(self,“s”,.concat(Opal.to_a(seq))))),result(self.$expr(child)),seq=[]):seq(child)}).$$s=this,$$7.$$arity=1,$$7)),$truthy(seq())||result(this.$expr($send(this,“s”,.concat(Opal.to_a(seq))))),$send(result,“each_with_index”,[],(($$8=function(fragment,idx){var self=$$8.$$s||this;return null==fragment&&(fragment=nil),null==idx&&(idx=nil),idx(0)?self.$push(fragment):self.$push(“.$merge(”,fragment,“)”)}).$$s=this,$$8.$$arity=2,$$8))},$HashNode_compile_merge$6.$$arity=0),Opal.def(self,“$compile_hash”,$HashNode_compile_hash$9=function(){var $$10;return this.$helper(“hash”),$send(this.$children(),“each_with_index”,[],(($$10=function(pair,idx){var $a,$b,key,value,self=$$10.$$s||this;return null==pair&&(pair=nil),null==idx&&(idx=nil),$b=pair.$children(),key=null==($a=Opal.to_ary($b))?nil:$a,value=null==$a?nil:$a,idx(0)||self.$push(“, ”),self.$push(self.$expr(key),“, ”,self.$expr(value))}).$$s=this,$$10.$$arity=2,$$10)),this.$wrap(“$hash(”,“)”)},$HashNode_compile_hash$9.$$arity=0),Opal.def(self,“$compile_hash2”,$HashNode_compile_hash2$11=function(){var $a,$$12,$$13,hash_obj=nil,hash_keys=nil;return $a=[$hash2(,{}),[]],hash_obj=$a,hash_keys=$a,this.$helper(“hash2”),$send(this.$keys().$size(),“times”,[],(($$12=function(idx){var key,$writer,lhs,rhs,self=$$12.$$s||this;return null==idx&&(idx=nil),key=self.$keys()[“$”](idx).$children()[“$”](0).$to_s().$inspect(),$truthy(hash_obj(key))||hash_keys(key),$writer=[key,self.$expr(self.$values()[“$”](idx))],$send(hash_obj,“[]=”,Opal.to_a($writer)),$writer[(lhs=$writer.length,rhs=1,“number”==typeof lhs&&“number”==typeof rhs?lhs-rhs:lhs(rhs))]}).$$s=this,$$12.$$arity=1,$$12)),$send(hash_keys,“each_with_index”,[],(($$13=function(key,idx){var self=$$13.$$s||this;return null==key&&(key=nil),null==idx&&(idx=nil),idx(0)||self.$push(“, ”),self.$push(key+“: ”),self.$push(hash_obj[“$”](key))}).$$s=this,$$13.$$arity=2,$$13)),this.$wrap(“$hash2([”+hash_keys.$join(“, ”)+“], {”,“})”)},$HashNode_compile_hash2$11.$$arity=0)}($nesting,$$($nesting,“Base”),$nesting),function($base,$super,$parent_nesting){var $KwSplatNode_compile$14,self=$klass($base,$super,“KwSplatNode”);.concat($parent_nesting);self.$handle(“kwsplat”),self.$children(“value”),Opal.def(self,“$compile”,$KwSplatNode_compile$14=function(){return this.$push(“Opal.to_hash(”,this.$expr(this.$value()),“)”)},$KwSplatNode_compile$14.$$arity=0)}($nesting,$$($nesting,“Base”),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$truthy=Opal.truthy,$send=Opal.send;return Opal.add_stubs(),self.$require(“opal/nodes/base”),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $ArrayNode_compile$1,self=$klass($base,$super,“ArrayNode”);.concat($parent_nesting);self.$handle(“array”),Opal.def(self,“$compile”,$ArrayNode_compile$1=function(){var $a,$$2,code=nil,work=nil,join=nil;return $truthy(this.$children()())?this.$push(“[]”):(code=($a=[,[]])[0],work=$a,$send(this.$children(),“each”,[],(($$2=function(child){var splat,part,self=$$2.$$s||this;return null==child&&(child=nil),splat=child.$type()(“splat”),part=self.$expr(child),$truthy(splat)?($truthy(work())?$truthy(code())?code(self.$fragment(“[].concat(”))(part)(self.$fragment(“)”)):code(self.$fragment(“.concat(”))(part)(self.$fragment(“)”)):($truthy(code())?code(self.$fragment(“[”))(work)(self.$fragment(“]”)):code(self.$fragment(“.concat([”))(work)(self.$fragment(“])”)),code(self.$fragment(“.concat(”))(part)(self.$fragment(“)”))),work=[]):($truthy(work())||work(self.$fragment(“, ”)),work(part))}).$$s=this,$$2.$$arity=1,$$2)),$truthy(work())||(join=[this.$fragment(“”)],$truthy(code())?code=join:code.$push()),this.$push(code))},$ArrayNode_compile$1.$$arity=0)}($nesting,$$($nesting,“Base”),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$slice=(Opal.breaker,Opal.slice),$module=Opal.module,$klass=Opal.klass,$truthy=Opal.truthy,$send=Opal.send,$range=Opal.range;return Opal.add_stubs([“$require”,“$handle”,“$children”,“$type”,“$value”,“$===”,“$push”,“$inspect”,“$to_s”,“$==”,“$size”,“$”,“$compile_defined_send”,“$wrap”,“$compile_defined_ivar”,“$compile_defined_super”,“$compile_defined_yield”,“$compile_defined_xstr”,“$compile_defined_const”,“$compile_defined_cvar”,“$compile_defined_gvar”,“$compile_defined_back_ref”,“$compile_defined_nth_ref”,“$compile_defined_array”,“$respond_to?”,“$__send__”,“$new_temp”,“$scope”,“$expr”,“$wrap_with_try_catch”,“$mid_to_jsid”,“$compile_defined”,“$compile_send_recv_doesnt_raise”,“$each”,“$s”,“$uses_block!”,“$block_name”,“$find_parent_def”,“$nil?”,“$class_variable_owner”,“$helper”,“$include?”,“$each_with_index”]),self.$require(“opal/nodes/base”),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $DefinedNode_compile$1,$DefinedNode_compile_defined$2,$DefinedNode_wrap_with_try_catch$3,$DefinedNode_compile_send_recv_doesnt_raise$4,$DefinedNode_compile_defined_send$5,$DefinedNode_compile_defined_ivar$7,$DefinedNode_compile_defined_super$8,$DefinedNode_compile_defined_yield$9,$DefinedNode_compile_defined_xstr$10,$DefinedNode_compile_defined_const$11,$DefinedNode_compile_defined_cvar$12,$DefinedNode_compile_defined_gvar$13,$DefinedNode_compile_defined_back_ref$14,$DefinedNode_compile_defined_nth_ref$15,$DefinedNode_compile_defined_array$16,self=$klass($base,$super,“DefinedNode”);.concat($parent_nesting);self.$handle(“defined?”),self.$children(“value”),Opal.def(self,“$compile”,$DefinedNode_compile$1=function(){var self=this,$case=nil;return $case=self.$value().$type(),“self”($case)||“nil”($case)||“false”($case)||“true”($case)?self.$push(self.$value().$type().$to_s().$inspect()):“lvasgn”($case)||“ivasgn”($case)||“gvasgn”($case)||“cvasgn”($case)||“casgn”($case)||“op_asgn”($case)||“or_asgn”($case)||“and_asgn”($case)?self.$push(“‘assignment’”):“lvar”($case)?self.$push(“‘local-variable’”):“begin”($case)?$truthy(self.$value().$children().$size()(1)?self.$value().$children()[“$”](0).$type()(“masgn”):self.$value().$children().$size()(1))?self.$push(“‘assignment’”):self.$push(“‘expression’”):“send”($case)?(self.$compile_defined_send(self.$value()),self.$wrap(“(”,“ ? 'method' : nil)”)):“ivar”($case)?(self.$compile_defined_ivar(self.$value()),self.$wrap(“(”,“ ? 'instance-variable' : nil)”)):“zsuper”($case)||“super”($case)?self.$compile_defined_super():“yield”($case)?(self.$compile_defined_yield(),self.$wrap(“(”,“ ? 'yield' : nil)”)):“xstr”($case)?self.$compile_defined_xstr(self.$value()):“const”($case)?(self.$compile_defined_const(self.$value()),self.$wrap(“(”,“ ? 'constant' : nil)”)):“cvar”($case)?(self.$compile_defined_cvar(self.$value()),self.$wrap(“(”,“ ? 'class variable' : nil)”)):“gvar”($case)?(self.$compile_defined_gvar(self.$value()),self.$wrap(“(”,“ ? 'global-variable' : nil)”)):“back_ref”($case)?(self.$compile_defined_back_ref(),self.$wrap(“(”,“ ? 'global-variable' : nil)”)):“nth_ref”($case)?(self.$compile_defined_nth_ref(),self.$wrap(“(”,“ ? 'global-variable' : nil)”)):“array”($case)?(self.$compile_defined_array(self.$value()),self.$wrap(“(”,“ ? 'expression' : nil)”)):self.$push(“'expression'”)},$DefinedNode_compile$1.$$arity=0),Opal.def(self,“$compile_defined”,$DefinedNode_compile_defined$2=function(node){var type,node_tmp=nil;return type=node.$type(),$truthy(this(“compile_defined_”+type))?this.$__send__(“compile_defined_”+type,node):(node_tmp=this.$scope().$new_temp(),this.$push(“(”node_tmp“ = ”,this.$expr(node),“)”),node_tmp)},$DefinedNode_compile_defined$2.$$arity=1),Opal.def(self,“$wrap_with_try_catch”,$DefinedNode_wrap_with_try_catch$3=function(code){var returning_tmp;return returning_tmp=this.$scope().$new_temp(),this.$push(“(”returning_tmp“ = (function() { try {”),this.$push(“ return ”code“;”),this.$push(“} catch ($err) {”),this.$push(“ if (Opal.rescue($err, [Opal.Exception])) {”),this.$push(“ try {”),this.$push(“ return false;”),this.$push(“ } finally { Opal.pop_exception() }”),this.$push(“ } else { throw $err; }”),this.$push(“}})())”),returning_tmp},$DefinedNode_wrap_with_try_catch$3.$$arity=1),Opal.def(self,“$compile_send_recv_doesnt_raise”,$DefinedNode_compile_send_recv_doesnt_raise$4=function(recv_code){return this.$wrap_with_try_catch(recv_code)},$DefinedNode_compile_send_recv_doesnt_raise$4.$$arity=1),Opal.def(self,“$compile_defined_send”,$DefinedNode_compile_defined_send$5=function(node){var $a,$$6,args,mid,recv_value_tmp,meth_tmp,recv=nil,method_name=nil,recv_code=nil,recv_tmp=nil;return recv=null==($a=[].concat(Opal.to_a(node)))?nil:$a,method_name=null==$a?nil:$a,args=$slice.call($a,2),mid=this.$mid_to_jsid(method_name.$to_s()),$truthy(recv)?(recv_code=this.$compile_defined(recv),this.$push(“ && ”),recv.$type()(“send”)&&(recv_code=this.$compile_send_recv_doesnt_raise(recv_code),this.$push(“ && ”)),recv_tmp=this.$scope().$new_temp(),this.$push(“(”recv_tmp“ = ”,recv_code,“, ”recv_tmp“) && ”)):recv_tmp=“self”,recv_value_tmp=this.$scope().$new_temp(),this.$push(“(”recv_value_tmp“ = ”recv_tmp“) && ”),meth_tmp=this.$scope().$new_temp(),this.$push(“(((”meth_tmp“ = ”+recv_value_tmp+mid+“) && !”meth_tmp“.$$stub)”),this.$push(“ || ”recv_value_tmp('”method_name“'))”),$send(args,“each”,[],(($$6=function(arg){var self=$$6.$$s||this,$case=nil;return null==arg&&(arg=nil),$case=arg.$type(),“block_pass”($case)?nil:(self.$push(“ && ”),self.$compile_defined(arg))}).$$s=this,$$6.$$arity=1,$$6)),this.$wrap(“(”,“)”),meth_tmp+“()”},$DefinedNode_compile_defined_send$5.$$arity=1),Opal.def(self,“$compile_defined_ivar”,$DefinedNode_compile_defined_ivar$7=function(node){var name,tmp;return name=node.$children()[“$”](0).$to_s()[“$”]($range(1,-1,!1)),tmp=this.$scope().$new_temp(),this.$push(“(”tmp“ = self[‘”name“’], ”tmp“ != null && ”tmp“ !== nil)”),tmp},$DefinedNode_compile_defined_ivar$7.$$arity=1),Opal.def(self,“$compile_defined_super”,$DefinedNode_compile_defined_super$8=function(){return this.$push(this.$expr(this.$s(“defined_super”)))},$DefinedNode_compile_defined_super$8.$$arity=0),Opal.def(self,“$compile_defined_yield”,$DefinedNode_compile_defined_yield$9=function(){var $a,block_name;return this.$scope()(),block_name=$truthy($a=this.$scope().$block_name())?$a:this.$scope().$find_parent_def().$block_name(),this.$push(“(”block_name“ != null && ”block_name“ !== nil)”),block_name},$DefinedNode_compile_defined_yield$9.$$arity=0),Opal.def(self,“$compile_defined_xstr”,$DefinedNode_compile_defined_xstr$10=function(node){return this.$push(“(typeof(”,this.$expr(node),') !== “undefined”)')},$DefinedNode_compile_defined_xstr$10.$$arity=1),Opal.def(self,“$compile_defined_const”,$DefinedNode_compile_defined_const$11=function(node){var $a,const_name,const_tmp,const_scope=nil,const_scope_tmp=nil;return const_scope=null==($a=[].concat(Opal.to_a(node)))?nil:$a,const_name=null==$a?nil:$a,const_tmp=this.$scope().$new_temp(),$truthy(const_scope())?this.$push(“(”const_tmp“ = $$($nesting, '”const_name“', 'skip_raise’))”):const_scope(this.$s(“cbase”))?this.$push(“(”const_tmp“ = $$$('::', '”const_name“', 'skip_raise'))”):(const_scope_tmp=this.$compile_defined(const_scope),this.$push(“ && (”const_tmp“ = $$$(”const_scope_tmp“, '”const_name“', 'skip_raise'))”)),const_tmp},$DefinedNode_compile_defined_const$11.$$arity=1),Opal.def(self,“$compile_defined_cvar”,$DefinedNode_compile_defined_cvar$12=function(node){var $a,cvar_name,cvar_tmp;return cvar_name=null==($a=[].concat(Opal.to_a(node)))?nil:$a,null==$a?nil:$a,cvar_tmp=this.$scope().$new_temp(),this.$push(“(”cvar_tmp“ = ”+this.$class_variable_owner()+“.$$cvars[‘”cvar_name“’], ”cvar_tmp“ != null)”),cvar_tmp},$DefinedNode_compile_defined_cvar$12.$$arity=1),Opal.def(self,“$compile_defined_gvar”,$DefinedNode_compile_defined_gvar$13=function(node){var gvar_temp,name=nil;return this.$helper(“gvars”),name=node.$children()[“$”](0).$to_s()[“$”]($range(1,-1,!1)),gvar_temp=this.$scope().$new_temp(),$truthy([“$include?”](name))?this.$push(“(”gvar_temp“ = ”,this.$expr(node),“ || true)”):this.$push(“(”gvar_temp“ = $gvars, ”gvar_temp“ != null)”),gvar_temp},$DefinedNode_compile_defined_gvar$13.$$arity=1),Opal.def(self,“$compile_defined_back_ref”,$DefinedNode_compile_defined_back_ref$14=function(){var back_ref_temp;return this.$helper(“gvars”),back_ref_temp=this.$scope().$new_temp(),this.$push(“(”back_ref_temp“ = $gvars, ”back_ref_temp“ != null && ”back_ref_temp“ !== nil)”),back_ref_temp},$DefinedNode_compile_defined_back_ref$14.$$arity=0),Opal.def(self,“$compile_defined_nth_ref”,$DefinedNode_compile_defined_nth_ref$15=function(){var nth_ref_tmp;return this.$helper(“gvars”),nth_ref_tmp=this.$scope().$new_temp(),this.$push(“(”nth_ref_tmp“ = $gvars, ”nth_ref_tmp“ != null && ”nth_ref_tmp“ != nil)”),nth_ref_tmp},$DefinedNode_compile_defined_nth_ref$15.$$arity=0),Opal.def(self,“$compile_defined_array”,$DefinedNode_compile_defined_array$16=function(node){var $$17;return $send(node.$children(),“each_with_index”,[],(($$17=function(child,idx){var self=$$17.$$s||this;return null==child&&(child=nil),null==idx&&(idx=nil),idx(0)||self.$push(“ && ”),self.$compile_defined(child)}).$$s=this,$$17.$$arity=2,$$17))},$DefinedNode_compile_defined_array$16.$$arity=1)}($nesting,$$($nesting,“Base”),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){function $rb_plus(lhs,rhs){return“number”==typeof lhs&&“number”==typeof rhs?lhs+rhs:lhs(rhs)}var self=Opal.top,$nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$truthy=Opal.truthy,$send=Opal.send;return Opal.add_stubs([“$require”,“$freeze”,“$handle”,“$children”,“$new_temp”,“$scope”,“$==”,“$type”,“$rhs”,“$push”,“$expr”,“$any?”,“$size”,“$compile_masgn”,“$lhs”,“$queue_temp”,“$take_while”,“$!=”,“$drop”,“$each_with_index”,“$compile_assignment”,“$empty?”,“$shift”,“$”,“$<<”,“$dup”,“$s”,“$!”,“$>=”,“$updated”,“$include?”,“$+”,“$last”,“$raise”]),self.$require(“opal/nodes/base”),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $MassAssignNode_compile$1,$MassAssignNode_compile_masgn$3,$MassAssignNode_compile_assignment$7,self=$klass($base,$super,“MassAssignNode”),$nesting=.concat($parent_nesting);Opal.const_set($nesting,“SIMPLE_ASSIGNMENT”,.$freeze()),self.$handle(“masgn”),self.$children(“lhs”,“rhs”),Opal.def(self,“$compile”,$MassAssignNode_compile$1=function(){var $$2,array,self=this,rhs_len=nil,retval=nil;return array=self.$scope().$new_temp(),self.$rhs().$type()(“array”)?(self.$push(array+“ = ”,self.$expr(self.$rhs())),rhs_len=$truthy($send(self.$rhs().$children(),“any?”,[],(($$2=function©{return $$2.$$s,null==c&&(c=nil),c.$type()(“splat”)}).$$s=self,$$2.$$arity=1,$$2)))?nil:self.$rhs().$children().$size(),self.$compile_masgn(self.$lhs().$children(),array,rhs_len),self.$push(“, ”+array)):(self.$rhs().$type()(“begin”),retval=self.$scope().$new_temp(),self.$push(retval+“ = ”,self.$expr(self.$rhs())),self.$push(“, ”array“ = Opal.to_ary(”retval“)”),self.$compile_masgn(self.$lhs().$children(),array),self.$push(“, ”+retval),self.$scope().$queue_temp(retval)),self.$scope().$queue_temp(array)},$MassAssignNode_compile$1.$$arity=0),Opal.def(self,“$compile_masgn”,$MassAssignNode_compile_masgn$3=function(lhs_items,array,len){var $$4,$$5,$$6,pre_splat=nil,post_splat=nil,splat=nil,part=nil,tmp=nil;return null==len&&(len=nil),pre_splat=$send(lhs_items,“take_while”,[],(($$4=function(child){$$4.$$s;return null==child&&(child=nil),child.$type()(“splat”)}).$$s=this,$$4.$$arity=1,$$4)),post_splat=lhs_items.$drop(pre_splat.$size()),$send(pre_splat,“each_with_index”,[],(($$5=function(child,idx){var self=$$5.$$s||this;return null==child&&(child=nil),null==idx&&(idx=nil),self.$compile_assignment(child,array,idx,len)}).$$s=this,$$5.$$arity=2,$$5)),$truthy(post_splat())?nil:(splat=post_splat.$shift(),$truthy(post_splat())?$truthy(part=splat.$children()[“$”](0))?(part=part.$dup()(this.$s(“js_tmp”,“$slice.call(”array“, ”+pre_splat.$size()+“)”)),this.$push(“, ”),this.$push(this.$expr(part))):nil:(tmp=this.$scope().$new_temp(),this.$push(“, ”tmp“ = ”array“.length - ”+post_splat.$size()),this.$push(“, ”tmp“ = (”tmp“ < ”+pre_splat.$size()+“) ? ”+pre_splat.$size()+“ : ”+tmp),$truthy(part=splat.$children()[“$”](0))&&(part=part.$dup()(this.$s(“js_tmp”,“$slice.call(”array“, ”+pre_splat.$size()+“, ”tmp“)”)),this.$push(“, ”),this.$push(this.$expr(part))),$send(post_splat,“each_with_index”,[],(($$6=function(child,idx){var self=$$6.$$s||this;return null==child&&(child=nil),null==idx&&(idx=nil),idx(0)?self.$compile_assignment(child,array,tmp):self.$compile_assignment(child,array,tmp+“ + ”+idx)}).$$s=this,$$6.$$arity=2,$$6)),this.$scope().$queue_temp(tmp)))},$MassAssignNode_compile_masgn$3.$$arity=-3),Opal.def(self,“$compile_assignment”,$MassAssignNode_compile_assignment$7=function(child,array,idx,len){var $a,lhs,rhs,self=this,assign=nil,part=nil,tmp=nil;if(null==len&&(len=nil),assign=$truthy($truthy($a=len())?$a:(rhs=len,“number”==typeof(lhs=idx)&&“number”==typeof =“”>rhs?rhs<=lhs:lhs(rhs)))?self.$s(“js_tmp”,“(”array“[”idx“] == null ? nil : ”array“[”idx“])”):self.$s(“js_tmp”,array+“[”idx“]”),part=child.$updated(),$truthy($$($nesting,“SIMPLE_ASSIGNMENT”)(child.$type())))part=part.$updated(nil,$rb_plus(part.$children(),));else if(child.$type()(“send”))part=part.$updated(nil,$rb_plus(part.$children(),));else if(child.$type()(“attrasgn”))part.$last()(assign);else{if(child.$type()(“mlhs”))return tmp=self.$scope().$new_temp(),self.$push(“, (”tmp“ = Opal.to_ary(”+assign.$children()[“$”](0)+“)”),self.$compile_masgn(child.$children(),tmp),self.$push(“)”),self.$scope().$queue_temp(tmp),nil;self.$raise(“Bad child node in masgn LHS: ”child“. LHS: ”+self.$lhs())}return self.$push(“, ”),self.$push(self.$expr(part))},$MassAssignNode_compile_assignment$7.$$arity=-4)}($nesting,$$($nesting,“Base”),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$send=Opal.send,$truthy=Opal.truthy;return Opal.add_stubs(),self.$require(“opal/nodes/base”),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $ArglistNode_compile$1,self=$klass($base,$super,“ArglistNode”);.concat($parent_nesting);self.$handle(“arglist”),Opal.def(self,“$compile”,$ArglistNode_compile$1=function(){var $a,$$2,code=nil,work=nil,join=nil;return code=($a=[,[]])[0],work=$a,$send(this.$children(),“each”,[],(($$2=function(current){var splat,arg,self=$$2.$$s||this;return null==current&&(current=nil),splat=current.$type()(“splat”),arg=self.$expr(current),$truthy(splat)?($truthy(work())?$truthy(code())?code(arg):code(self.$fragment(“.concat(”))(arg)(self.$fragment(“)”)):($truthy(code())?code(self.$fragment(“[”))(work)(self.$fragment(“]”)):code(self.$fragment(“.concat([”))(work)(self.$fragment(“])”)),code(self.$fragment(“.concat(”))(arg)(self.$fragment(“)”))),work=[]):($truthy(work())||work(self.$fragment(“, ”)),work(arg))}).$$s=this,$$2.$$arity=1,$$2)),$truthy(work())||(join=work,$truthy(code())?code=join:code(this.$fragment(“.concat([”))(join)(this.$fragment(“])”))),$send(this,“push”,Opal.to_a(code))},$ArglistNode_compile$1.$$arity=0)}($nesting,$$($nesting,“Base”),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){Opal.top;var $nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$truthy=Opal.truthy,$send=Opal.send,$range=Opal.range,$lambda=Opal.lambda;return Opal.add_stubs([“$handle”,“$unpack_return”,“$children”,“$strip_empty_children”,“$single_line?”,“$compile_single_line”,“$each”,“$compile_child”,“$recv?”,“$wrap”,“$push”,“$private”,“$type”,“$===”,“$source”,“$expression”,“$loc”,“$new”,“$scope”,“$expr”,“$raise”,“$shift”,“$empty?”,“$s”,“$==”,“$strip”,“$=~”,“$!”,“$pop”,“$extract_last_value”,“$rstrip”,“$expr?”,“$end_with?”,“$warning”,“$compiler”,“$line”,“$”,“$size”,“$none?”,“$first”,“$dup”,“$nil?”,“$any?”,“$last”]),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $XStringNode_compile$1,$XStringNode_compile_child$3,$XStringNode_compile_single_line$4,$XStringNode_extract_last_value$6,$XStringNode_single_line$ques$7,$XStringNode_unpack_return$9,$XStringNode_strip_empty_children$10,self=$klass($base,$super,“XStringNode”),$nesting=.concat($parent_nesting);self.$$prototype.should_add_semicolon=self.$$prototype.returning=nil,self.$handle(“xstr”),Opal.def(self,“$compile”,$XStringNode_compile$1=function(){var $$2,unpacked_children,stripped_children;return this.should_add_semicolon=!1,unpacked_children=this.$unpack_return(this.$children()),stripped_children=this.$strip_empty_children(unpacked_children),$truthy(this(stripped_children))?this.$compile_single_line(stripped_children):$send(unpacked_children,“each”,[],(($$2=function©{var self=$$2.$$s||this;return null==c&&(c=nil),self.$compile_child©}).$$s=this,$$2.$$arity=1,$$2)),$truthy(this())&&this.$wrap(“(”,“)”),$truthy(this.should_add_semicolon)?this.$push(“;”):nil},$XStringNode_compile$1.$$arity=0),self.$private(),Opal.def(self,“$compile_child”,$XStringNode_compile_child$3=function(child){var self=this,$case=nil,value=nil;return $case=child.$type(),“str”($case)?(value=child.$loc().$expression().$source(),self.$push($$($nesting,“Fragment”).$new(value,self.$scope(),child))):“begin”($case)||“gvar”($case)||“ivar”($case)||“nil”($case)?self.$push(self.$expr(child)):self.$raise(“Unsupported xstr part: ”+child.$type())},$XStringNode_compile_child$3.$$arity=1),Opal.def(self,“$compile_single_line”,$XStringNode_compile_single_line$4=function(children){var $a,$$5,single_child,has_embeded_return=nil,first_child=nil,last_child=nil,last_value=nil;return has_embeded_return=!1,first_child=children.$shift(),single_child=children(),(first_child=$truthy($a=first_child)?$a:this.$s(“nil”)).$type()(“str”)&&(has_embeded_return=first_child.$loc().$expression().$source().$strip()(/^returnb/)),$truthy($truthy($a=this.returning)?has_embeded_return():$a)&&this.$push(“return ”),(last_child=$truthy($a=children.$pop())?$a:first_child).$type()(“str”)&&(last_value=this.$extract_last_value(last_child)),$truthy(single_child)||(this.should_add_semicolon=!1,this.$compile_child(first_child),$send(children,“each”,[],(($$5=function©{var self=$$5.$$s||this;return null==c&&(c=nil),self.$compile_child©}).$$s=this,$$5.$$arity=1,$$5))),last_child.$type()(“str”)?this.$push($$($nesting,“Fragment”).$new(last_value,this.$scope(),last_child)):this.$compile_child(last_child)},$XStringNode_compile_single_line$4.$$arity=1),Opal.def(self,“$extract_last_value”,$XStringNode_extract_last_value$6=function(last_child){var $a,$b,last_value=nil;return last_value=last_child.$loc().$expression().$source().$rstrip(),$truthy($truthy($a=$truthy($b=this.returning)?$b:this())?last_value(“;”):$a)&&(this.$compiler().$warning(“Removed semicolon ending x-string expression, interpreted as unintentional”,last_child.$line()),last_value=last_value[“$”]($range(0,-2,!1))),$truthy(this.returning)&&(this.should_add_semicolon=!0),last_value},$XStringNode_extract_last_value$6.$$arity=1),Opal.def(self,“$single_line?”,$XStringNode_single_line$ques$7=function(children){var $a,$$8;return $truthy($a=children.$size()(1))?$a:$send(children,“none?”,[],(($$8=function©{$$8.$$s;return null==c&&(c=nil),c.$type()(“str”)?c.$loc().$expression().$source()(“n”):c.$type()(“str”)}).$$s=this,$$8.$$arity=1,$$8))},$XStringNode_single_line$ques$7.$$arity=1),Opal.def(self,“$unpack_return”,$XStringNode_unpack_return$9=function(children){var first_child=nil;return first_child=children.$first(),this.returning=!1,first_child.$type()(“js_return”)&&(this.returning=!0,children=first_child.$children()),children},$XStringNode_unpack_return$9.$$arity=1),Opal.def(self,“$strip_empty_children”,$XStringNode_strip_empty_children$10=function(children){var $$11,$b,empty_line=nil;for(children=children.$dup(),empty_line=$lambda((($$11=function(child){var $a;$$11.$$s;return null==child&&(child=nil),$truthy($a=child())?$a:child.$type()(“str”)?child.$loc().$expression().$source().$rstrip()():child.$type()(“str”)}).$$s=this,$$11.$$arity=1,$$11));$truthy($truthy($b=children())?empty_line[“$”](children.$first()):$b);)children.$shift();for(;$truthy($truthy($b=children())?empty_line[“$”](children.$last()):$b);)children.$pop();return children},$XStringNode_strip_empty_children$10.$$arity=1)}($nesting,$$($nesting,“Base”),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],$$=(Opal.nil,Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass;return Opal.add_stubs(),self.$require(“opal/nodes/call”),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $LambdaNode_compile$1,self=$klass($base,$super,“LambdaNode”);.concat($parent_nesting);self.$handle(“lambda”),self.$children(“iter”),Opal.def(self,“$compile”,$LambdaNode_compile$1=function(){return this.$helper(“lambda”),this.$push(“$lambda(”,this.$expr(this.$iter()),“)”)},$LambdaNode_compile$1.$$arity=0)}($nesting,$$($nesting,“Base”),$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top;Opal.nil,Opal.const_get_qualified,Opal.const_get_relative,Opal.breaker,Opal.slice;return Opal.add_stubs(),self.$require(“opal/nodes/base”),self.$require(“opal/nodes/literal”),self.$require(“opal/nodes/variables”),self.$require(“opal/nodes/constants”),self.$require(“opal/nodes/call”),self.$require(“opal/nodes/csend”),self.$require(“opal/nodes/call_special”),self.$require(“opal/nodes/module”),self.$require(“opal/nodes/class”),self.$require(“opal/nodes/singleton_class”),self.$require(“opal/nodes/args”),self.$require(“opal/nodes/args/arity_check”),self.$require(“opal/nodes/iter”),self.$require(“opal/nodes/def”),self.$require(“opal/nodes/defs”),self.$require(“opal/nodes/if”),self.$require(“opal/nodes/logic”),self.$require(“opal/nodes/definitions”),self.$require(“opal/nodes/yield”),self.$require(“opal/nodes/rescue”),self.$require(“opal/nodes/case”),self.$require(“opal/nodes/super”),self.$require(“opal/nodes/top”),self.$require(“opal/nodes/while”),self.$require(“opal/nodes/hash”),self.$require(“opal/nodes/array”),self.$require(“opal/nodes/defined”),self.$require(“opal/nodes/masgn”),self.$require(“opal/nodes/arglist”),self.$require(“opal/nodes/x_string”),self.$require(“opal/nodes/lambda”)},Opal.modules=function(Opal){Opal.top;var $nesting=[],nil=Opal.nil,$module=(Opal.const_get_qualified,Opal.const_get_relative,Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$truthy=Opal.truthy,$send=Opal.send,$range=Opal.range;return Opal.add_stubs([“$empty?”,“$”,“$last_token_position”,“$drop_while”,“$lines”,“$==”,“$join”,“$private”,“$last”,“$end_pos”]),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){var $EofContent_initialize$1,$EofContent_eof$2,$EofContent_last_token_position$4,self=$klass($base,null,“EofContent”),$nesting=.concat($parent_nesting);self.$$prototype.tokens=self.$$prototype.source=nil,Opal.const_set($nesting,“DATA_SEPARATOR”,“__END__n”),Opal.def(self,“$initialize”,$EofContent_initialize$1=function(tokens,source){return this.tokens=tokens,this.source=source},$EofContent_initialize$1.$$arity=2),Opal.def(self,“$eof”,$EofContent_eof$2=function(){var $$3,$a,eof_content=nil;return $truthy(this.tokens())?nil:(eof_content=this.source[“$”](Opal.Range.$new(this.$last_token_position(),-1,!1)),$truthy(eof_content)?(eof_content=$send(eof_content.$lines(),“drop_while”,[],(($$3=function(line){$$3.$$s;return null==line&&(line=nil),line(“n”)}).$$s=this,$$3.$$arity=1,$$3)))[“$”](0)(“__END__n”)?(eof_content=$truthy($a=eof_content[“$”]($range(1,-1,!1)))?$a:[]).$join():eof_content([“__END__”])?“”:nil:nil)},$EofContent_eof$2.$$arity=0),self.$private(),Opal.def(self,“$last_token_position”,$EofContent_last_token_position$4=function(){var $a,$b;return $b=this.tokens.$last(),null==($a=Opal.to_ary($b))?nil:$a,$b=null==$a?nil:$a,null==($a=Opal.to_ary($b))?nil:$a,(null==$a?nil:$a).$end_pos()},$EofContent_last_token_position$4.$$arity=0)}($nesting,0,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){function $rb_minus(lhs,rhs){return“number”==typeof lhs&&“number”==typeof rhs?lhs-rhs:lhs(rhs)}function $rb_plus(lhs,rhs){return“number”==typeof lhs&&“number”==typeof rhs?lhs+rhs:lhs(rhs)}Opal.top;var $nesting=[],nil=Opal.nil,$$$=Opal.const_get_qualified,$$=Opal.const_get_relative,$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$send=Opal.send,$truthy=Opal.truthy;return Opal.add_stubs(),function($base,$parent_nesting){var $Opal_opal_location_from_error$2,$Opal_add_opal_location_to_error$3,self=$module($base,“Opal”),$nesting=.concat($parent_nesting);!function($base,$super,$parent_nesting){[$klass($base,$super,“Error”)].concat($parent_nesting)}($nesting,$$($nesting,“StandardError”),$nesting),function($base,$super,$parent_nesting){var $GemNotFound_initialize$1,self=$klass($base,$super,“GemNotFound”);.concat($parent_nesting);self.$attr_reader(“gem_name”),Opal.def(self,“$initialize”,$GemNotFound_initialize$1=function(gem_name){var $iter=$GemNotFound_initialize$1.$$p;return $iter&&($GemNotFound_initialize$1.$$p=null),this.gem_name=gem_name,$send(this,Opal.find_super_dispatcher(this,“initialize”,$GemNotFound_initialize$1,!1),[“can't find gem ”+gem_name],null)},$GemNotFound_initialize$1.$$arity=1)}($nesting,$$($nesting,“Error”),$nesting),function($base,$super,$parent_nesting){var self=$klass($base,$super,“CompilationError”);.concat($parent_nesting);self.$attr_accessor(“location”)}($nesting,$$($nesting,“Error”),$nesting),function($base,$super,$parent_nesting){[$klass($base,$super,“ParsingError”)].concat($parent_nesting)}($nesting,$$($nesting,“CompilationError”),$nesting),function($base,$super,$parent_nesting){[$klass($base,$super,“RewritingError”)].concat($parent_nesting)}($nesting,$$($nesting,“ParsingError”),$nesting),function($base,$super,$parent_nesting){var self=$klass($base,$super,“SyntaxError”);.concat($parent_nesting);self.$attr_accessor(“location”)}($nesting,$$$(“::”,“SyntaxError”),$nesting),Opal.defs(self,“$opal_location_from_error”,$Opal_opal_location_from_error$2=function(error){var opal_location,$writer=nil;return opal_location=$$($nesting,“OpalBacktraceLocation”).$new(),$truthy(error(“location”))&&($writer=,$send(opal_location,“location=”,Opal.to_a($writer)),$writer),$truthy(error(“diagnostic”))&&($writer=,$send(opal_location,“diagnostic=”,Opal.to_a($writer)),$writer),opal_location},$Opal_opal_location_from_error$2.$$arity=1),Opal.defs(self,“$add_opal_location_to_error”,$Opal_add_opal_location_to_error$3=function(opal_location,error){var backtrace=nil;return(backtrace=error.$backtrace().$to_a()).$unshift(opal_location.$to_s()),error.$set_backtrace(backtrace),error},$Opal_add_opal_location_to_error$3.$$arity=2),function($base,$super,$parent_nesting){var $OpalBacktraceLocation_initialize$4,$OpalBacktraceLocation_to_s$5,$OpalBacktraceLocation_diagnostic$eq$6,$OpalBacktraceLocation_location$eq$7,self=$klass($base,null,“OpalBacktraceLocation”);.concat($parent_nesting);self.$attr_accessor(“path”,“lineno”,“label”),Opal.def(self,“$initialize”,$OpalBacktraceLocation_initialize$4=function(path,lineno,label){var $a;return null==path&&(path=nil),null==lineno&&(lineno=nil),null==label&&(label=nil),$a=,this.path=$a,this.lineno=$a,this.label=$a,$a},$OpalBacktraceLocation_initialize$4.$$arity=-1),Opal.def(self,“$to_s”,$OpalBacktraceLocation_to_s$5=function(){var string=nil;return string=this.$path(),$truthy(this.$lineno())&&(string=$rb_plus(string,“:”+this.$lineno())),string=$rb_plus(string,“:in ”),string=$truthy(this.$label())?$rb_plus(string,“`”+this.$label()+“'”):$rb_plus(string,“unknown”)},$OpalBacktraceLocation_to_s$5.$$arity=0),Opal.alias(self,“line”,“lineno”),Opal.def(self,“$diagnostic=”,$OpalBacktraceLocation_diagnostic$eq$6=function(diagnostic){var $writer;return $truthy(diagnostic)?($writer=,$send(this,“location=”,Opal.to_a($writer)),$writer):nil},$OpalBacktraceLocation_diagnostic$eq$6.$$arity=1),Opal.def(self,“$location=”,$OpalBacktraceLocation_location$eq$7=function(location){var $writer=nil;return $truthy(location)?($writer=,$send(this,“lineno=”,Opal.to_a($writer)),$writer,$truthy(location(“source_line”))?($writer=,$send(this,“label=”,Opal.to_a($writer)),$writer):$truthy(location(“expression”))?($writer=,$send(this,“label=”,Opal.to_a($writer)),$writer):nil):nil},$OpalBacktraceLocation_location$eq$7.$$arity=1)}($nesting,0,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){function $rb_minus(lhs,rhs){return“number”==typeof lhs&&“number”==typeof rhs?lhs-rhs:lhs(rhs)}function $rb_plus(lhs,rhs){return“number”==typeof lhs&&“number”==typeof rhs?lhs+rhs:lhs(rhs)}var self=Opal.top,$nesting=[],nil=Opal.nil,$$$=Opal.const_get_qualified,$$=Opal.const_get_relative,$slice=(Opal.breaker,Opal.slice),$module=Opal.module,$hash2=Opal.hash2,$klass=Opal.klass,$send=Opal.send,$truthy=Opal.truthy;return Opal.add_stubs([“$require”,“$compile”,“$new”,“$freeze”,“$join”,“$dirname”,“$first”,“$split”,“$basename”,“$to_s”,“$cleanpath”,“$Pathname”,“$”,“$define_method”,“$fetch”,“$!”,“$include?”,“$raise”,“$inspect”,“$compiler_option”,“$attr_reader”,“$attr_accessor”,“$parse”,“$re_raise_with_location”,“$flatten”,“$process”,“$end_with?”,“$code”,“$last”,“$<<”,“$fragment”,“$s”,“$map”,“$to_proc”,“$file”,“$source=”,“$-”,“$default_parser”,“$tokenize”,“$associate_locations”,“$eof”,“$location=”,“$opal_location_from_error”,“$path=”,“$label”,“$strip”,“$lines”,“$to_i”,“$line”,“$label=”,“$message”,“$set_backtrace”,“$backtrace”,“$add_opal_location_to_error”,“$warn”,“$empty?”,“$gsub”,“$+”,“$start_with?”,“$helpers”,“$new_temp”,“$queue_temp”,“$push_while”,“$indent”,“$pop_while”,“$in_while?”,“$nil?”,“$scope”,“$handlers”,“$type”,“$compile_to_fragments”,“$error”,“$returns”,“$===”,“$updated”,“$children”,“$loc”,“$uses_block!”,“$block_name”,“$find_parent_def”]),self.$require(“set”),self.$require(“opal/parser”),self.$require(“opal/fragment”),self.$require(“opal/nodes”),self.$require(“opal/eof_content”),self.$require(“opal/errors”),function($base,$parent_nesting){var $Opal_compile$1,self=$module($base,“Opal”),$nesting=.concat($parent_nesting);Opal.defs(self,“$compile”,$Opal_compile$1=function(source,options){return null==options&&(options=$hash2([],{})),$$($nesting,“Compiler”).$new(source,options).$compile()},$Opal_compile$1.$$arity=-2),function($base,$super,$parent_nesting){var $Compiler_module_name$2,$Compiler_compiler_option$3,$Compiler_initialize$6,$Compiler_compile$7,$Compiler_parse$9,$Compiler_source_map$11,$Compiler_helpers$12,$Compiler_operator_helpers$13,$Compiler_method_calls$14,$Compiler_error$15,$Compiler_re_raise_with_location$16,$Compiler_warning$17,$Compiler_parser_indent$18,$Compiler_s$19,$Compiler_fragment$20,$Compiler_unique_temp$21,$Compiler_helper$22,$Compiler_indent$23,$Compiler_with_temp$24,$Compiler_in_while$25,$Compiler_in_case$27,$Compiler_in_while$ques$28,$Compiler_process$29,$Compiler_handlers$30,$Compiler_requires$31,$Compiler_required_trees$32,$Compiler_returns$33,$Compiler_handle_block_given_call$35,self=$klass($base,null,“Compiler”),$nesting=.concat($parent_nesting);self.$$prototype.fragments=self.$$prototype.source=self.$$prototype.buffer=self.$$prototype.helpers=self.$$prototype.operator_helpers=self.$$prototype.method_calls=self.$$prototype.indent=self.$$prototype.unique=self.$$prototype.scope=self.$$prototype.case_stmt=self.$$prototype.handlers=self.$$prototype.requires=self.$$prototype.required_trees=nil,Opal.const_set($nesting,“INDENT”,“ ”),Opal.const_set($nesting,“”,“<=",">=”“>COMPARE”,.$freeze()),Opal.defs(self,“$module_name”,$Compiler_module_name$2=function(path){return path=$$($nesting,“File”).$join($$($nesting,“File”).$dirname(path),$$($nesting,“File”).$basename(path).$split(“.”).$first()),this.$Pathname(path).$cleanpath().$to_s()},$Compiler_module_name$2.$$arity=1),Opal.defs(self,“$compiler_option”,$Compiler_compiler_option$3=function(name,default_value,options){var $a,$$4,mid,valid_values=nil;return null==options&&(options=$hash2([],{})),mid=options[“$”](“as”),valid_values=options[“$”](“valid_values”),$send(this,“define_method”,,(($$4=function(){var $$5,$b,self=$$4.$$s||this,value=nil;return null==self.options&&(self.options=nil),value=$send(self.options,“fetch”,,(($$5=function(){$$5.$$s;return default_value}).$$s=self,$$5.$$arity=0,$$5)),$truthy($truthy($b=valid_values)?valid_values(value)():$b)&&self.$raise($$($nesting,“ArgumentError”),“invalid value ”+value.$inspect()+“ for option ”+name.$inspect()+“ (valid values: ”+valid_values.$inspect()+“)”),value}).$$s=this,$$4.$$arity=0,$$4))},$Compiler_compiler_option$3.$$arity=-3),self.$compiler_option(“file”,“(file)”),self.$compiler_option(“method_missing”,!0,$hash2(,{as:“method_missing?”})),self.$compiler_option(“arity_check”,!1,$hash2(,{as:“arity_check?”})),self.$compiler_option(“freezing”,!0,$hash2(,{as:“freezing?”})),self.$compiler_option(“tainting”,!0,$hash2(,{as:“tainting?”})),self.$compiler_option(“irb”,!1,$hash2(,{as:“irb?”})),self.$compiler_option(“dynamic_require_severity”,“ignore”,$hash2(,{valid_values:})),self.$compiler_option(“requirable”,!1,$hash2(,{as:“requirable?”})),self.$compiler_option(“inline_operators”,!0,$hash2(,{as:“inline_operators?”})),self.$compiler_option(“eval”,!1,$hash2(,{as:“eval?”})),self.$compiler_option(“enable_source_location”,!1,$hash2(,{as:“enable_source_location?”})),self.$compiler_option(“parse_comments”,!1,$hash2(,{as:“parse_comments?”})),self.$attr_reader(“result”),self.$attr_reader(“fragments”),self.$attr_accessor(“scope”),self.$attr_reader(“case_stmt”),self.$attr_reader(“eof_content”),self.$attr_reader(“comments”),Opal.def(self,“$initialize”,$Compiler_initialize$6=function(source,options){return null==options&&(options=$hash2([],{})),this.source=source,this.indent=“”,this.unique=0,this.options=options,this.comments=$$($nesting,“Hash”).$new(),this.case_stmt=nil},$Compiler_initialize$6.$$arity=-2),Opal.def(self,“$compile”,$Compiler_compile$7=function(){var $$8;return this.$parse(),this.fragments=$send(this,“re_raise_with_location”,[],(($$8=function(){var self=$$8.$$s||this;return null==self.sexp&&(self.sexp=nil),self.$process(self.sexp).$flatten()}).$$s=this,$$8.$$arity=0,$$8)),$truthy(this.fragments.$last().$code()(“n”))||this.fragments(this.$fragment(“n”,nil,this.$s(“newline”))),this.result=$send(this.fragments,“map”,[],“code”.$to_proc()).$join(“”)},$Compiler_compile$7.$$arity=0),Opal.def(self,“$parse”,$Compiler_parse$9=function(){var $a,$b,$$10,$writer,sexp,comments,tokens;return this.buffer=$$$($$$($$$(“::”,“Opal”),“Parser”),“SourceBuffer”).$new(this.$file(),1),$writer=,$send(this.buffer,“source=”,Opal.to_a($writer)),$rb_minus($writer.length,1),this.parser=$$$($$($nesting,“Opal”),“Parser”).$default_parser(),$b=$send(this,“re_raise_with_location”,[],(($$10=function(){var self=$$10.$$s||this;return null==self.parser&&(self.parser=nil),null==self.buffer&&(self.buffer=nil),self.parser.$tokenize(self.buffer)}).$$s=this,$$10.$$arity=0,$$10)),sexp=null==($a=Opal.to_ary($b))?nil:$a,comments=null==$a?nil:$a,tokens=null==$a?nil:$a,this.sexp=this.$s(“top”,$truthy($a=sexp)?$a:this.$s(“nil”)),this.comments=$$$($$$($$$(“::”,“Parser”),“Source”),“Comment”).$associate_locations(sexp,comments),this.eof_content=$$($nesting,“EofContent”).$new(tokens,this.source).$eof()},$Compiler_parse$9.$$arity=0),Opal.def(self,“$source_map”,$Compiler_source_map$11=function(){return $$$($$$($$$(“::”,“Opal”),“SourceMap”),“File”).$new(this.fragments,this.$file(),this.source)},$Compiler_source_map$11.$$arity=0),Opal.def(self,“$helpers”,$Compiler_helpers$12=function(){var $a;return this.helpers=$truthy($a=this.helpers)?$a:$$($nesting,“Set”).$new()},$Compiler_helpers$12.$$arity=0),Opal.def(self,“$operator_helpers”,$Compiler_operator_helpers$13=function(){var $a;return this.operator_helpers=$truthy($a=this.operator_helpers)?$a:$$($nesting,“Set”).$new()},$Compiler_operator_helpers$13.$$arity=0),Opal.def(self,“$method_calls”,$Compiler_method_calls$14=function(){var $a;return this.method_calls=$truthy($a=this.method_calls)?$a:$$($nesting,“Set”).$new()},$Compiler_method_calls$14.$$arity=0),Opal.def(self,“$error”,$Compiler_error$15=function(msg,line){var error,$writer;return null==line&&(line=nil),error=$$$($$$(“::”,“Opal”),“SyntaxError”).$new(msg),$writer=,$send(error,“location=”,Opal.to_a($writer)),$rb_minus($writer.length,1),this.$raise(error)},$Compiler_error$15.$$arity=-2),Opal.def(self,“$re_raise_with_location”,$Compiler_re_raise_with_location$16=function(){var $iter=$Compiler_re_raise_with_location$16.$$p,$yield=$iter||nil,self=this,error=nil,opal_location=nil,$writer=nil,new_error=nil;$iter&&($Compiler_re_raise_with_location$16.$$p=null);try{return Opal.yieldX($yield,[])}catch($err){if(!Opal.rescue($err,))throw $err;error=$err;try{return opal_location=$$$(“::”,“Opal”).$opal_location_from_error(error),$writer=,$send(opal_location,“path=”,Opal.to_a($writer)),$writer,$truthy(opal_location.$label())||($writer=[self.source.$lines()[“$”]($rb_minus(opal_location.$line().$to_i(),1)).$strip()],$send(opal_location,“label=”,Opal.to_a($writer)),$writer),(new_error=$$$($$$(“::”,“Opal”),“SyntaxError”).$new(error.$message())).$set_backtrace(error.$backtrace()),$$$(“::”,“Opal”).$add_opal_location_to_error(opal_location,new_error),self.$raise(new_error)}finally{Opal.pop_exception()}}},$Compiler_re_raise_with_location$16.$$arity=0),Opal.def(self,“$warning”,$Compiler_warning$17=function(msg,line){return null==line&&(line=nil),this.$warn(“warning: ”msg“ – ”+this.$file()+“:”+line)},$Compiler_warning$17.$$arity=-2),Opal.def(self,“$parser_indent”,$Compiler_parser_indent$18=function(){return this.indent},$Compiler_parser_indent$18.$$arity=0),Opal.def(self,“$s”,$Compiler_s$19=function(type,$a){var children;return children=Opal.slice.call(arguments,1,arguments.length),$$$($$$($$$(“::”,“Opal”),“AST”),“Node”).$new(type,children)},$Compiler_s$19.$$arity=-2),Opal.def(self,“$fragment”,$Compiler_fragment$20=function(str,scope,sexp){return null==sexp&&(sexp=nil),$$($nesting,“Fragment”).$new(str,scope,sexp)},$Compiler_fragment$20.$$arity=-3),Opal.def(self,“$unique_temp”,$Compiler_unique_temp$21=function(name){var $a,unique;return name=name.$to_s(),$truthy($truthy($a=name)?name()[“$!”]():$a)&&(name=name.$to_s().$gsub(“<=>”,“$lt_eq_gt”).$gsub(“===”,“$eq_eq_eq”).$gsub(“==”,“$eq_eq”).$gsub(“=~”,“$eq_tilde”).$gsub(“!~”,“$excl_tilde”).$gsub(“!=”,“$not_eq”).$gsub(“<=","$lt_eq").$gsub(">=”,“$gt_eq”).$gsub(“=”,“$eq”).$gsub(“?”,“$ques”).$gsub(“!”,“$excl”).$gsub(“/”,“$slash”).$gsub(“%”,“$percent”).$gsub(“+”,“$plus”).$gsub(“-”,“$minus”).$gsub(“<","$lt").$gsub(">”,“$gt”).$gsub(//,“$”)),unique=this.unique=$rb_plus(this.unique,1),“”+($truthy(name(“$”))?nil:“$”)name“$”+unique},$Compiler_unique_temp$21.$$arity=1),Opal.def(self,“$helper”,$Compiler_helper$22=function(name){return this.$helpers()(name)},$Compiler_helper$22.$$arity=1),Opal.def(self,“$indent”,$Compiler_indent$23=function(){var indent,res,$iter=$Compiler_indent$23.$$p,$yield=$iter||nil;return $iter&&($Compiler_indent$23.$$p=null),indent=this.indent,this.indent=$rb_plus(this.indent,$$($nesting,“INDENT”)),this.space=“n”+this.indent,res=Opal.yieldX($yield,[]),this.indent=indent,this.space=“n”+this.indent,res},$Compiler_indent$23.$$arity=0),Opal.def(self,“$with_temp”,$Compiler_with_temp$24=function(){var tmp,res,$iter=$Compiler_with_temp$24.$$p,$yield=$iter||nil;return $iter&&($Compiler_with_temp$24.$$p=null),tmp=this.scope.$new_temp(),res=Opal.yield1($yield,tmp),this.scope.$queue_temp(tmp),res},$Compiler_with_temp$24.$$arity=0),Opal.def(self,“$in_while”,$Compiler_in_while$25=function(){var $$26,result,$iter=$Compiler_in_while$25.$$p,$yield=$iter||nil;return $iter&&($Compiler_in_while$25.$$p=null),$yield===nil?nil:(this.while_loop=this.scope.$push_while(),result=$send(this,“indent”,[],(($$26=function(){$$26.$$s;return Opal.yieldX($yield,[])}).$$s=this,$$26.$$arity=0,$$26)),this.scope.$pop_while(),result)},$Compiler_in_while$25.$$arity=0),Opal.def(self,“$in_case”,$Compiler_in_case$27=function(){var old,$iter=$Compiler_in_case$27.$$p,$yield=$iter||nil;return $iter&&($Compiler_in_case$27.$$p=null),$yield===nil?nil:(old=this.case_stmt,this.case_stmt=$hash2([],{}),Opal.yieldX($yield,),this.case_stmt=old)},$Compiler_in_case$27.$$arity=0),Opal.def(self,“$in_while?”,$Compiler_in_while$ques$28=function(){return this.scope()},$Compiler_in_while$ques$28.$$arity=0),Opal.def(self,“$process”,$Compiler_process$29=function(sexp,level){var handler=nil;return null==level&&(level=“expr”),$truthy(sexp())?this.$fragment(“”,this.$scope()):$truthy(handler=this.$handlers()[“$”](sexp.$type()))?handler.$new(sexp,level,this).$compile_to_fragments():this.$error(“Unsupported sexp: ”+sexp.$type())},$Compiler_process$29.$$arity=-2),Opal.def(self,“$handlers”,$Compiler_handlers$30=function(){var $a;return this.handlers=$truthy($a=this.handlers)?$a:$$$($$$($$($nesting,“Opal”),“Nodes”),“Base”).$handlers()},$Compiler_handlers$30.$$arity=0),Opal.def(self,“$requires”,$Compiler_requires$31=function(){var $a;return this.requires=$truthy($a=this.requires)?$a:[]},$Compiler_requires$31.$$arity=0),Opal.def(self,“$required_trees”,$Compiler_required_trees$32=function(){var $a;return this.required_trees=$truthy($a=this.required_trees)?$a:[]},$Compiler_required_trees$32.$$arity=0),Opal.def(self,“$returns”,$Compiler_returns$33=function(sexp){var $a,$b,$$34,self=this,$case=nil,when_sexp=nil,then_sexp=nil,body_sexp=nil,resbodies=nil,else_sexp=nil,klass=nil,lvar=nil,body=nil,rescue_sexp=nil,ensure_body=nil,rest=nil,last=nil,cond=nil,true_body=nil,false_body=nil;return $truthy(sexp)?($case=sexp.$type(),“undef”($case)?self.$returns(self.$s(“begin”,sexp,self.$s(“nil”))):“break”($case)||“next”($case)||“redo”($case)?sexp:“yield”($case)?sexp.$updated(“returnable_yield”,nil):“when”($case)?($a=[].concat(Opal.to_a(sexp)),$b=($b=$a.length-1)<0?0:$b,when_sexp=$slice.call($a,0,$b),then_sexp=null==$a?nil:$a,sexp.$updated(nil,[].concat(Opal.to_a(when_sexp)).concat())):“rescue”($case)?($a=[].concat(Opal.to_a(sexp)),body_sexp=null==$a?nil:$a,$b=($b=$a.length-1)<1?1:$b,resbodies=$slice.call($a,1,$b),else_sexp=null==$a?nil:$a,resbodies=$send(resbodies,“map”,[],(($$34=function(resbody){var self=$$34.$$s||this;return null==resbody&&(resbody=nil),self.$returns(resbody)}).$$s=self,$$34.$$arity=1,$$34)),$truthy(else_sexp)&&(else_sexp=self.$returns(else_sexp)),sexp.$updated(nil,.concat(Opal.to_a(resbodies)).concat())):“resbody”($case)?($a=[].concat(Opal.to_a(sexp)),klass=null==$a?nil:$a,lvar=null==$a?nil:$a,body=null==$a?nil:$a,sexp.$updated(nil,)):“ensure”($case)?($a=[].concat(Opal.to_a(sexp)),rescue_sexp=null==$a?nil:$a,ensure_body=null==$a?nil:$a,sexp=sexp.$updated(nil,),self.$s(“js_return”,sexp)):“begin”($case)||“kwbegin”($case)?($a=[].concat(Opal.to_a(sexp)),$b=($b=$a.length-1)<0?0:$b,rest=$slice.call($a,0,$b),last=null==$a?nil:$a,sexp.$updated(nil,[].concat(Opal.to_a(rest)).concat())):“while”($case)||“until”($case)||“while_post”($case)||“until_post”($case)?sexp:“return”($case)||“js_return”($case)||“returnable_yield”($case)?sexp:“xstr”($case)?sexp.$updated(nil,[$send(self,“s”,.concat(Opal.to_a(sexp.$children())))]):“if”($case)?($a=[].concat(Opal.to_a(sexp)),cond=null==$a?nil:$a,true_body=null==$a?nil:$a,false_body=null==$a?nil:$a,sexp.$updated(nil,)):self.$s(“js_return”,sexp).$updated(nil,nil,$hash2(,{location:sexp.$loc()}))):self.$returns(self.$s(“nil”))},$Compiler_returns$33.$$arity=1),Opal.def(self,“$handle_block_given_call”,$Compiler_handle_block_given_call$35=function(sexp){var $a,scope=nil;return this.scope(),$truthy(this.scope.$block_name())?this.$fragment(“(”+this.scope.$block_name()+“ !== nil)”,this.$scope(),sexp):$truthy($truthy($a=scope=this.scope.$find_parent_def())?scope.$block_name():$a)?this.$fragment(“(”+scope.$block_name()+“ !== nil)”,scope,sexp):this.$fragment(“false”,scope,sexp)},$Compiler_handle_block_given_call$35.$$arity=1)}($nesting,0,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],nil=Opal.nil,$$=(Opal.const_get_qualified,Opal.const_get_relative),$module=(Opal.breaker,Opal.slice,Opal.module),$klass=Opal.klass,$truthy=Opal.truthy,$send=Opal.send;return Opal.add_stubs(),self.$require(“opal/compiler”),function($base,$parent_nesting){var $nesting=.concat($parent_nesting);!function($base,$parent_nesting){var $ERB_compile$1,self=$module($base,“ERB”),$nesting=.concat($parent_nesting);Opal.defs(self,“$compile”,$ERB_compile$1=function(source,file_name){return null==file_name&&(file_name=“(erb)”),$$($nesting,“Compiler”).$new(source,file_name).$compile()},$ERB_compile$1.$$arity=-2),function($base,$super,$parent_nesting){var $Compiler_initialize$2,$Compiler_prepared_source$3,$Compiler_compile$4,$Compiler_fix_quotes$5,$Compiler_require_erb$6,$Compiler_find_contents$7,$Compiler_find_code$9,$Compiler_wrap_compiled$11,self=$klass($base,null,“Compiler”),$nesting=.concat($parent_nesting);self.$$prototype.prepared_source=self.$$prototype.source=self.$$prototype.file_name=nil,Opal.const_set($nesting,“BLOCK_EXPR”,/s+(do|{)(s*|[^|]*|)?s*Z/),Opal.def(self,“$initialize”,$Compiler_initialize$2=function(source,file_name){var $a;return null==file_name&&(file_name=“(erb)”),$a=,this.source=$a,this.file_name=$a,this.result=$a,$a},$Compiler_initialize$2.$$arity=-2),Opal.def(self,“$prepared_source”,$Compiler_prepared_source$3=function(){var $a,source=nil;return this.prepared_source=$truthy($a=this.prepared_source)?$a:(source=this.source,source=this.$fix_quotes(source),source=this.$find_contents(source),source=this.$find_code(source),source=this.$wrap_compiled(source),source=this.$require_erb(source))},$Compiler_prepared_source$3.$$arity=0),Opal.def(self,“$compile”,$Compiler_compile$4=function(){return $$($nesting,“Opal”).$compile(this.$prepared_source())},$Compiler_compile$4.$$arity=0),Opal.def(self,“$fix_quotes”,$Compiler_fix_quotes$5=function(result){return result.$gsub('“','\”')},$Compiler_fix_quotes$5.$$arity=1),Opal.def(self,“$require_erb”,$Compiler_require_erb$6=function(result){var lhs,rhs;return rhs=result,“number”==typeof(lhs='require “erb”;')&&“number”==typeof rhs?lhs+rhs:lhs(rhs)},$Compiler_require_erb$6.$$arity=1),Opal.def(self,“$find_contents”,$Compiler_find_contents$7=function(result){var $$8;return $send(result,“gsub”,[/<%=(+?)%>/],(($$8=function(){$$8.$$s;var inner=nil;return inner=$$($nesting,“Regexp”).$last_match(1).$gsub(/\‘/,“’”).$gsub(/\“/,‘”’),$truthy(inner($$($nesting,“BLOCK_EXPR”)))?'“)noutput_buffer.append= 'inner'noutput_buffer.append(”':'“)noutput_buffer.append=('inner')noutput_buffer.append(”'}).$$s=this,$$8.$$arity=0,$$8))},$Compiler_find_contents$7.$$arity=1),Opal.def(self,“$find_code”,$Compiler_find_code$9=function(result){var $$10;return $send(result,“gsub”,[/<%(+?)%>/],(($$10=function(){$$10.$$s;return'“)n'+$$($nesting,”Regexp“).$last_match(1).$gsub(/\”/,'“')+'noutput_buffer.append(”'}).$$s=this,$$10.$$arity=0,$$10))},$Compiler_find_code$9.$$arity=1),Opal.def(self,“$wrap_compiled”,$Compiler_wrap_compiled$11=function(result){return“Template.new('”+this.file_name.$sub(new RegExp(“\.opalerb”+$$($nesting,“REGEXP_END”)),“”)+“') do |output_buffer|noutput_buffer.append("”result'“)noutput_buffer.joinnendn'},$Compiler_wrap_compiled$11.$$arity=1)}($nesting,0,$nesting)}($nesting,$nesting)}($nesting,$nesting)},Opal.modules=function(Opal){var self=Opal.top,$nesting=[],nil=Opal.nil,$$$=Opal.const_get_qualified,$$=Opal.const_get_relative,$breaker=Opal.breaker,$slice=Opal.slice,$module=Opal.module,$hash2=Opal.hash2;function run_ruby_scripts(){for(var tag,tags=document.getElementsByTagName(”script“),i=0,len=tags.length;i).type&&(tag.src&&Opal.Kernel.$require_remote(tag.src),tag.innerHTML&&Opal.Kernel.$eval(tag.innerHTML))}Opal.add_stubs(),self.$require(”corelib/string/unpack“),self.$require(”opal/compiler“),self.$require(”opal/erb“),self.$require(”opal/version“),function($base,$parent_nesting){var self=$module($base,”Kernel“),$nesting=.concat($parent_nesting),$Kernel_eval$1,$Kernel_require_remote$2;Opal.def(self,”$eval“,$Kernel_eval$1=function(str){var self=this,default_eval_options=nil,compiling_options=nil,code=nil;return str=$$($nesting,”Opal“)(str,$$($nesting,”String“),”to_str“),default_eval_options=$hash2(,{file:”(eval)“,eval:!0}),compiling_options=Opal.hash({arity_check:!1}).$merge(default_eval_options),code=$$($nesting,”Opal“).$compile(str,compiling_options),function(self){return eval(code)}(self)},$Kernel_eval$1.$$arity=1),Opal.def(self,”$require_remote“,$Kernel_require_remote$2=function(url){var r=new XMLHttpRequest;return r.open(”GET“,url,!1),r.send(”“),this.$eval(r.responseText)},$Kernel_require_remote$2.$$arity=1)}($nesting,$nesting),Opal.compile=function(str,options){return options&&(options=Opal.hash(options)),Opal.Opal.$compile(str,options)},Opal.eval=function(str,options){return eval(Opal.compile(str,options))},”undefined“!=typeof document&&(window.addEventListener?window.addEventListener(”DOMContentLoaded“,run_ruby_scripts,!1):window.attachEvent(”onload“,run_ruby_scripts))};