|  | @@ -3473,69 +3473,75 @@ protocol: 'streaming',
 | 
	
		
			
				|  |  |  fn: function (anIRClosure,aBlock){
 | 
	
		
			
				|  |  |  var self=this;
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx1) { 
 | 
	
		
			
				|  |  | -var $4,$3,$2,$1,$5,$9,$8,$7,$6,$13,$12,$11,$10,$14,$15,$22,$21,$20,$19,$18,$17,$16;
 | 
	
		
			
				|  |  | -$4=_st(anIRClosure)._scope();
 | 
	
		
			
				|  |  | +var $1,$2,$6,$5,$4,$3,$7,$11,$10,$9,$8,$15,$14,$13,$12,$16,$17,$24,$23,$22,$21,$20,$19,$18;
 | 
	
		
			
				|  |  | +$1=_st(anIRClosure)._requiresSmalltalkContext();
 | 
	
		
			
				|  |  | +if(! smalltalk.assert($1)){
 | 
	
		
			
				|  |  | +$2=_st(aBlock)._value();
 | 
	
		
			
				|  |  | +$ctx1.sendIdx["value"]=1;
 | 
	
		
			
				|  |  | +return $2;
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  | +$6=_st(anIRClosure)._scope();
 | 
	
		
			
				|  |  |  $ctx1.sendIdx["scope"]=1;
 | 
	
		
			
				|  |  | -$3=_st($4)._alias();
 | 
	
		
			
				|  |  | +$5=_st($6)._alias();
 | 
	
		
			
				|  |  |  $ctx1.sendIdx["alias"]=1;
 | 
	
		
			
				|  |  | -$2="return smalltalk.withContext(function(".__comma($3);
 | 
	
		
			
				|  |  | +$4="return smalltalk.withContext(function(".__comma($5);
 | 
	
		
			
				|  |  |  $ctx1.sendIdx[","]=2;
 | 
	
		
			
				|  |  | -$1=_st($2).__comma(") {");
 | 
	
		
			
				|  |  | +$3=_st($4).__comma(") {");
 | 
	
		
			
				|  |  |  $ctx1.sendIdx[","]=1;
 | 
	
		
			
				|  |  | -self._nextPutAll_($1);
 | 
	
		
			
				|  |  | +self._nextPutAll_($3);
 | 
	
		
			
				|  |  |  $ctx1.sendIdx["nextPutAll:"]=1;
 | 
	
		
			
				|  |  | -$5=self._lf();
 | 
	
		
			
				|  |  | +$7=self._lf();
 | 
	
		
			
				|  |  |  _st(aBlock)._value();
 | 
	
		
			
				|  |  | -$9=_st(anIRClosure)._scope();
 | 
	
		
			
				|  |  | +$11=_st(anIRClosure)._scope();
 | 
	
		
			
				|  |  |  $ctx1.sendIdx["scope"]=2;
 | 
	
		
			
				|  |  | -$8=_st($9)._alias();
 | 
	
		
			
				|  |  | +$10=_st($11)._alias();
 | 
	
		
			
				|  |  |  $ctx1.sendIdx["alias"]=2;
 | 
	
		
			
				|  |  | -$7="}, function(".__comma($8);
 | 
	
		
			
				|  |  | +$9="}, function(".__comma($10);
 | 
	
		
			
				|  |  |  $ctx1.sendIdx[","]=4;
 | 
	
		
			
				|  |  | -$6=_st($7).__comma(") {");
 | 
	
		
			
				|  |  | +$8=_st($9).__comma(") {");
 | 
	
		
			
				|  |  |  $ctx1.sendIdx[","]=3;
 | 
	
		
			
				|  |  | -self._nextPutAll_($6);
 | 
	
		
			
				|  |  | +self._nextPutAll_($8);
 | 
	
		
			
				|  |  |  $ctx1.sendIdx["nextPutAll:"]=2;
 | 
	
		
			
				|  |  | -$13=_st(anIRClosure)._scope();
 | 
	
		
			
				|  |  | +$15=_st(anIRClosure)._scope();
 | 
	
		
			
				|  |  |  $ctx1.sendIdx["scope"]=3;
 | 
	
		
			
				|  |  | -$12=_st($13)._alias();
 | 
	
		
			
				|  |  | +$14=_st($15)._alias();
 | 
	
		
			
				|  |  |  $ctx1.sendIdx["alias"]=3;
 | 
	
		
			
				|  |  | -$11=_st($12).__comma(".fillBlock({");
 | 
	
		
			
				|  |  | +$13=_st($14).__comma(".fillBlock({");
 | 
	
		
			
				|  |  |  $ctx1.sendIdx[","]=5;
 | 
	
		
			
				|  |  | -$10=self._nextPutAll_($11);
 | 
	
		
			
				|  |  | +$12=self._nextPutAll_($13);
 | 
	
		
			
				|  |  |  $ctx1.sendIdx["nextPutAll:"]=3;
 | 
	
		
			
				|  |  |  _st(_st(anIRClosure)._locals())._do_separatedBy_((function(each){
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  | -$14=_st(each)._asVariableName();
 | 
	
		
			
				|  |  | +$16=_st(each)._asVariableName();
 | 
	
		
			
				|  |  |  $ctx2.sendIdx["asVariableName"]=1;
 | 
	
		
			
				|  |  | -self._nextPutAll_($14);
 | 
	
		
			
				|  |  | +self._nextPutAll_($16);
 | 
	
		
			
				|  |  |  $ctx2.sendIdx["nextPutAll:"]=4;
 | 
	
		
			
				|  |  |  self._nextPutAll_(":");
 | 
	
		
			
				|  |  |  $ctx2.sendIdx["nextPutAll:"]=5;
 | 
	
		
			
				|  |  | -$15=self._nextPutAll_(_st(each)._asVariableName());
 | 
	
		
			
				|  |  | +$17=self._nextPutAll_(_st(each)._asVariableName());
 | 
	
		
			
				|  |  |  $ctx2.sendIdx["nextPutAll:"]=6;
 | 
	
		
			
				|  |  | -return $15;
 | 
	
		
			
				|  |  | -}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1,1)})}),(function(){
 | 
	
		
			
				|  |  | +return $17;
 | 
	
		
			
				|  |  | +}, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1,2)})}),(function(){
 | 
	
		
			
				|  |  |  return smalltalk.withContext(function($ctx2) {
 | 
	
		
			
				|  |  |  return self._nextPutAll_(",");
 | 
	
		
			
				|  |  |  $ctx2.sendIdx["nextPutAll:"]=7;
 | 
	
		
			
				|  |  | -}, function($ctx2) {$ctx2.fillBlock({},$ctx1,2)})}));
 | 
	
		
			
				|  |  | +}, function($ctx2) {$ctx2.fillBlock({},$ctx1,3)})}));
 | 
	
		
			
				|  |  |  self._nextPutAll_("},");
 | 
	
		
			
				|  |  |  $ctx1.sendIdx["nextPutAll:"]=8;
 | 
	
		
			
				|  |  | -$22=_st(anIRClosure)._scope();
 | 
	
		
			
				|  |  | +$24=_st(anIRClosure)._scope();
 | 
	
		
			
				|  |  |  $ctx1.sendIdx["scope"]=4;
 | 
	
		
			
				|  |  | -$21=_st($22)._outerScope();
 | 
	
		
			
				|  |  | -$20=_st($21)._alias();
 | 
	
		
			
				|  |  | -$19=_st($20).__comma(",");
 | 
	
		
			
				|  |  | -$18=_st($19).__comma(_st(_st(_st(anIRClosure)._scope())._blockIndex())._asString());
 | 
	
		
			
				|  |  | +$23=_st($24)._outerScope();
 | 
	
		
			
				|  |  | +$22=_st($23)._alias();
 | 
	
		
			
				|  |  | +$21=_st($22).__comma(",");
 | 
	
		
			
				|  |  | +$20=_st($21).__comma(_st(_st(_st(anIRClosure)._scope())._blockIndex())._asString());
 | 
	
		
			
				|  |  |  $ctx1.sendIdx[","]=7;
 | 
	
		
			
				|  |  | -$17=_st($18).__comma(")})");
 | 
	
		
			
				|  |  | +$19=_st($20).__comma(")})");
 | 
	
		
			
				|  |  |  $ctx1.sendIdx[","]=6;
 | 
	
		
			
				|  |  | -$16=self._nextPutAll_($17);
 | 
	
		
			
				|  |  | +$18=self._nextPutAll_($19);
 | 
	
		
			
				|  |  |  return self}, function($ctx1) {$ctx1.fill(self,"nextPutBlockContextFor:during:",{anIRClosure:anIRClosure,aBlock:aBlock},globals.JSStream)})},
 | 
	
		
			
				|  |  |  args: ["anIRClosure", "aBlock"],
 | 
	
		
			
				|  |  | -source: "nextPutBlockContextFor: anIRClosure during: aBlock\x0a\x09self\x0a\x09\x09nextPutAll: 'return smalltalk.withContext(function(', anIRClosure scope alias, ') {'; lf.\x0a\x09\x0a\x09aBlock value.\x0a\x09\x0a\x09self\x0a\x09\x09nextPutAll: '}, function(', anIRClosure scope alias, ') {';\x0a\x09\x09nextPutAll: anIRClosure scope alias, '.fillBlock({'.\x0a\x09\x0a\x09anIRClosure locals\x0a\x09\x09do: [ :each |\x0a\x09\x09\x09self\x0a\x09\x09\x09\x09nextPutAll: each asVariableName;\x0a\x09\x09\x09\x09nextPutAll: ':';\x0a\x09\x09\x09\x09nextPutAll: each asVariableName ]\x0a\x09\x09separatedBy: [ self nextPutAll: ',' ].\x0a\x09\x0a\x09self\x0a\x09\x09nextPutAll: '},';\x0a\x09\x09nextPutAll: anIRClosure scope outerScope alias, ',', anIRClosure scope blockIndex asString, ')})'",
 | 
	
		
			
				|  |  | -messageSends: ["nextPutAll:", ",", "alias", "scope", "lf", "value", "do:separatedBy:", "locals", "asVariableName", "outerScope", "asString", "blockIndex"],
 | 
	
		
			
				|  |  | +source: "nextPutBlockContextFor: anIRClosure during: aBlock\x0a\x09anIRClosure requiresSmalltalkContext ifFalse: [ ^ aBlock value ].\x0a\x09self\x0a\x09\x09nextPutAll: 'return smalltalk.withContext(function(', anIRClosure scope alias, ') {'; lf.\x0a\x09\x0a\x09aBlock value.\x0a\x09\x0a\x09self\x0a\x09\x09nextPutAll: '}, function(', anIRClosure scope alias, ') {';\x0a\x09\x09nextPutAll: anIRClosure scope alias, '.fillBlock({'.\x0a\x09\x0a\x09anIRClosure locals\x0a\x09\x09do: [ :each |\x0a\x09\x09\x09self\x0a\x09\x09\x09\x09nextPutAll: each asVariableName;\x0a\x09\x09\x09\x09nextPutAll: ':';\x0a\x09\x09\x09\x09nextPutAll: each asVariableName ]\x0a\x09\x09separatedBy: [ self nextPutAll: ',' ].\x0a\x09\x0a\x09self\x0a\x09\x09nextPutAll: '},';\x0a\x09\x09nextPutAll: anIRClosure scope outerScope alias, ',', anIRClosure scope blockIndex asString, ')})'",
 | 
	
		
			
				|  |  | +messageSends: ["ifFalse:", "requiresSmalltalkContext", "value", "nextPutAll:", ",", "alias", "scope", "lf", "do:separatedBy:", "locals", "asVariableName", "outerScope", "asString", "blockIndex"],
 | 
	
		
			
				|  |  |  referencedClasses: []
 | 
	
		
			
				|  |  |  }),
 | 
	
		
			
				|  |  |  globals.JSStream);
 |