| 
					
				 | 
			
			
				@@ -1,4 +1,4 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-smalltalk.addPackage('Trapped-Frontend', {}); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+smalltalk.addPackage('Trapped-Frontend'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.addClass('TrappedBinder', smalltalk.Object, ['brush'], 'Trapped-Frontend'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.addMethod( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 "_brush_", 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -7,8 +7,8 @@ selector: "brush:", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 fn: function (aTagBrush){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 var self=this; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return smalltalk.withContext(function($ctx1) { 
self["@brush"]=aTagBrush; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return self}, function($ctx1) {$ctx1.fill(self,"brush:",{aTagBrush:aTagBrush}, smalltalk.TrappedBinder)})} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+return self}, function($ctx1) {$ctx1.fill(self,"brush:",{aTagBrush:aTagBrush},smalltalk.TrappedBinder)})}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+messageSends: []}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.TrappedBinder); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.addMethod( 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -18,8 +18,8 @@ selector: "installFor:", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 fn: function (path){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 var self=this; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return smalltalk.withContext(function($ctx1) { 
_st(self["@brush"])._trap_read_(path,_st(self)._showBlock()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return self}, function($ctx1) {$ctx1.fill(self,"installFor:",{path:path}, smalltalk.TrappedBinder)})} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+return self}, function($ctx1) {$ctx1.fill(self,"installFor:",{path:path},smalltalk.TrappedBinder)})}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+messageSends: ["trap:read:", "showBlock"]}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.TrappedBinder); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.addMethod( 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -29,8 +29,8 @@ selector: "prim:", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 fn: function (anObject){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 var self=this; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return smalltalk.withContext(function($ctx1) { 
return anObject.valueOf(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return self}, function($ctx1) {$ctx1.fill(self,"prim:",{anObject:anObject}, smalltalk.TrappedBinder)})} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+return self}, function($ctx1) {$ctx1.fill(self,"prim:",{anObject:anObject},smalltalk.TrappedBinder)})}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+messageSends: []}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.TrappedBinder); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.addMethod( 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -55,8 +55,8 @@ $3=_st($4)._with_($5); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return $3; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }, function($ctx2) {$ctx2.fillBlock({model:model},$ctx1)})}); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return $1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx1) {$ctx1.fill(self,"showBlock",{}, smalltalk.TrappedBinder)})} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}, function($ctx1) {$ctx1.fill(self,"showBlock",{},smalltalk.TrappedBinder)})}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+messageSends: ["empty", "with:", "ifNil:"]}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.TrappedBinder); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -76,8 +76,8 @@ return smalltalk.withContext(function($ctx4) {
return _st(_st(_st(self["@brush"] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }, function($ctx4) {$ctx4.fillBlock({},$ctx1)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }, function($ctx3) {$ctx3.fillBlock({},$ctx1)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }, function($ctx2) {$ctx2.fillBlock({snap:snap},$ctx1)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return self}, function($ctx1) {$ctx1.fill(self,"installFor:",{path:path}, smalltalk.TrappedCheckedBinder)})} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+return self}, function($ctx1) {$ctx1.fill(self,"installFor:",{path:path},smalltalk.TrappedCheckedBinder)})}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+messageSends: ["installFor:", "trapDescend:", "onChange:", "modify:", "notNil", "attr:", "asJQuery"]}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.TrappedCheckedBinder); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.addMethod( 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -95,8 +95,8 @@ return smalltalk.withContext(function($ctx3) {
return false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}))); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }, function($ctx2) {$ctx2.fillBlock({model:model},$ctx1)})}); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return $1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx1) {$ctx1.fill(self,"showBlock",{}, smalltalk.TrappedCheckedBinder)})} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}, function($ctx1) {$ctx1.fill(self,"showBlock",{},smalltalk.TrappedCheckedBinder)})}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+messageSends: ["attr:put:", "ifNotNil:ifNil:", "prim:", "asJQuery"]}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.TrappedCheckedBinder); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -116,8 +116,8 @@ return smalltalk.withContext(function($ctx4) {
return _st(_st(self["@brush"])._a 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }, function($ctx4) {$ctx4.fillBlock({},$ctx1)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }, function($ctx3) {$ctx3.fillBlock({},$ctx1)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }, function($ctx2) {$ctx2.fillBlock({snap:snap},$ctx1)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return self}, function($ctx1) {$ctx1.fill(self,"installFor:",{path:path}, smalltalk.TrappedValBinder)})} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+return self}, function($ctx1) {$ctx1.fill(self,"installFor:",{path:path},smalltalk.TrappedValBinder)})}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+messageSends: ["installFor:", "trapDescend:", "onChange:", "modify:", "val", "asJQuery"]}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.TrappedValBinder); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.addMethod( 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -136,8 +136,8 @@ return smalltalk.withContext(function($ctx4) {
}, function($ctx4) {$ctx4.fillBlo 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}))); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }, function($ctx2) {$ctx2.fillBlock({model:model},$ctx1)})}); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return $1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx1) {$ctx1.fill(self,"showBlock",{}, smalltalk.TrappedValBinder)})} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}, function($ctx1) {$ctx1.fill(self,"showBlock",{},smalltalk.TrappedValBinder)})}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+messageSends: ["val:", "ifNotNil:ifNil:", "prim:", "asJQuery"]}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.TrappedValBinder); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -150,8 +150,8 @@ selector: "renderOn:", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 fn: function (html){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 var self=this; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return smalltalk.withContext(function($ctx1) { 
_st(_st(html)._root())._trap_([]); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return self}, function($ctx1) {$ctx1.fill(self,"renderOn:",{html:html}, smalltalk.TrappedDumbView)})} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+return self}, function($ctx1) {$ctx1.fill(self,"renderOn:",{html:html},smalltalk.TrappedDumbView)})}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+messageSends: ["trap:", "root"]}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.TrappedDumbView); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -166,8 +166,8 @@ var self=this; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return smalltalk.withContext(function($ctx1) { 
var $1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $1=_st(self)._subclassResponsibility(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return $1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx1) {$ctx1.fill(self,"start:",{args:args}, smalltalk.TrappedSingleton)})} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}, function($ctx1) {$ctx1.fill(self,"start:",{args:args},smalltalk.TrappedSingleton)})}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+messageSends: ["subclassResponsibility"]}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.TrappedSingleton); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -187,8 +187,8 @@ $1=self["@current"]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $1=$2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return $1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx1) {$ctx1.fill(self,"current",{}, smalltalk.TrappedSingleton.klass)})} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}, function($ctx1) {$ctx1.fill(self,"current",{},smalltalk.TrappedSingleton.klass)})}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+messageSends: ["ifNil:", "new"]}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.TrappedSingleton.klass); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.addMethod( 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -198,8 +198,8 @@ selector: "start:", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 fn: function (args){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 var self=this; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return smalltalk.withContext(function($ctx1) { 
_st(_st(self)._current())._start_(args); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return self}, function($ctx1) {$ctx1.fill(self,"start:",{args:args}, smalltalk.TrappedSingleton.klass)})} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+return self}, function($ctx1) {$ctx1.fill(self,"start:",{args:args},smalltalk.TrappedSingleton.klass)})}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+messageSends: ["start:", "current"]}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.TrappedSingleton.klass); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -211,39 +211,37 @@ selector: "binder:", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 fn: function (aTagBrush){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 var self=this; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 var binder,tag; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx1) { 
var $1,$3,$4,$2,$5,$7,$8,$6; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+return smalltalk.withContext(function($ctx1) { 
var $1,$2,$3,$4,$6,$7,$5; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 tag=_st(_st(aTagBrush)._element())._nodeName(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $1=_st(tag).__eq("INPUT"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-$2=(function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-var type; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx2) {
type=_st(_st(aTagBrush)._asJQuery())._attr_("type"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+if(smalltalk.assert($1)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+type=_st(_st(aTagBrush)._asJQuery())._attr_("type"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 type; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-$3=_st(type).__eq("checkbox"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-if(smalltalk.assert($3)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+$2=_st(type).__eq("checkbox"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+if(smalltalk.assert($2)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 binder=_st((smalltalk.TrappedCheckedBinder || TrappedCheckedBinder))._new(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 binder; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-$4=_st(type).__eq("text"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-if(smalltalk.assert($4)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+$3=_st(type).__eq("text"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+if(smalltalk.assert($3)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 binder=_st((smalltalk.TrappedValBinder || TrappedValBinder))._new(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return binder; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+binder; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({type:type},$ctx1)})}); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-_st($1)._ifTrue_($2); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-$5=binder; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-if(($receiver = $5) == nil || $receiver == undefined){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+$4=binder; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+if(($receiver = $4) == nil || $receiver == undefined){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 binder=_st((smalltalk.TrappedBinder || TrappedBinder))._new(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 binder; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-$5; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+$4; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-$7=binder; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-_st($7)._brush_(aTagBrush); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-$8=_st($7)._yourself(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-$6=$8; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return $6; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx1) {$ctx1.fill(self,"binder:",{aTagBrush:aTagBrush,binder:binder,tag:tag}, smalltalk.Trapped)})} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+$6=binder; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+_st($6)._brush_(aTagBrush); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+$7=_st($6)._yourself(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+$5=$7; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+return $5; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}, function($ctx1) {$ctx1.fill(self,"binder:",{aTagBrush:aTagBrush,binder:binder,tag:tag},smalltalk.Trapped)})}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+messageSends: ["nodeName", "element", "ifTrue:", "attr:", "asJQuery", "new", "=", "ifNil:", "brush:", "yourself"]}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.Trapped); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.addMethod( 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -255,8 +253,8 @@ var self=this; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return smalltalk.withContext(function($ctx1) { 
var $1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $1=_st(self["@registry"])._at_(aString); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return $1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx1) {$ctx1.fill(self,"byName:",{aString:aString}, smalltalk.Trapped)})} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}, function($ctx1) {$ctx1.fill(self,"byName:",{aString:aString},smalltalk.Trapped)})}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+messageSends: ["at:"]}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.Trapped); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.addMethod( 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -275,8 +273,8 @@ model=_st(self)._byName_(_st(path)._first()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 model; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return _st(aBlock)._value_(_st(_st((smalltalk.TrappedSnapshot || TrappedSnapshot))._new())._path_model_(path,model)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }, function($ctx2) {$ctx2.fillBlock({path:path,model:model},$ctx1)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return self}, function($ctx1) {$ctx1.fill(self,"descend:snapshotDo:",{anArray:anArray,aBlock:aBlock,tpsc:tpsc}, smalltalk.Trapped)})} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+return self}, function($ctx1) {$ctx1.fill(self,"descend:snapshotDo:",{anArray:anArray,aBlock:aBlock,tpsc:tpsc},smalltalk.Trapped)})}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+messageSends: ["current", "append:do:", "copy", "elements", "byName:", "first", "value:", "path:model:", "new"]}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.Trapped); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.addMethod( 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -287,8 +285,8 @@ fn: function (){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 var self=this; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return smalltalk.withContext(function($ctx1) { 
smalltalk.TrappedSingleton.fn.prototype._initialize.apply(_st(self), []); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 self["@registry"]=smalltalk.HashedCollection._fromPairs_([]); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return self}, function($ctx1) {$ctx1.fill(self,"initialize",{}, smalltalk.Trapped)})} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+return self}, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.Trapped)})}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+messageSends: ["initialize"]}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.Trapped); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.addMethod( 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -298,8 +296,8 @@ selector: "register:", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 fn: function (aListKeyedEntity){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 var self=this; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return smalltalk.withContext(function($ctx1) { 
_st(self)._register_name_(aListKeyedEntity,_st(_st(aListKeyedEntity)._class())._name()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return self}, function($ctx1) {$ctx1.fill(self,"register:",{aListKeyedEntity:aListKeyedEntity}, smalltalk.Trapped)})} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+return self}, function($ctx1) {$ctx1.fill(self,"register:",{aListKeyedEntity:aListKeyedEntity},smalltalk.Trapped)})}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+messageSends: ["register:name:", "name", "class"]}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.Trapped); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.addMethod( 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -309,8 +307,8 @@ selector: "register:name:", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 fn: function (aListKeyedEntity,aString){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 var self=this; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return smalltalk.withContext(function($ctx1) { 
_st(self["@registry"])._at_put_(aString,aListKeyedEntity); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return self}, function($ctx1) {$ctx1.fill(self,"register:name:",{aListKeyedEntity:aListKeyedEntity,aString:aString}, smalltalk.Trapped)})} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+return self}, function($ctx1) {$ctx1.fill(self,"register:name:",{aListKeyedEntity:aListKeyedEntity,aString:aString},smalltalk.Trapped)})}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+messageSends: ["at:put:"]}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.Trapped); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.addMethod( 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -319,12 +317,11 @@ smalltalk.method({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 selector: "start:", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 fn: function (args){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 var self=this; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx1) { 
var $1,$3,$2; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+return smalltalk.withContext(function($ctx1) { 
var $1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 _st(args)._do_((function(each){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return smalltalk.withContext(function($ctx2) {
return _st(self)._register_(each); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }, function($ctx2) {$ctx2.fillBlock({each:each},$ctx1)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-$1=_st("[data-trap]")._asJQuery(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-$2=(function(index,elem){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+_st(_st("[data-trap]")._asJQuery())._each_((function(index,elem){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 var trap,jq,viewName,modelName,tokens,path; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return smalltalk.withContext(function($ctx2) {
jq=_st(elem)._asJQuery(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 jq; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -332,8 +329,8 @@ trap=_st(jq)._attr_("data-trap"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 trap; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 tokens=_st(trap)._tokenize_(":"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 tokens; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-$3=_st(_st(tokens)._size()).__eq((1)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-if(smalltalk.assert($3)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+$1=_st(_st(tokens)._size()).__eq((1)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+if(smalltalk.assert($1)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 tokens=_st(["TrappedDumbView"]).__comma(tokens); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 tokens; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -350,10 +347,9 @@ path; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return _st(_st([modelName]).__comma(path))._trapDescend_((function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return smalltalk.withContext(function($ctx3) {
return _st(_st(_st(_st((smalltalk.Smalltalk || Smalltalk))._current())._at_(viewName))._new())._appendToJQuery_(jq); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }, function($ctx3) {$ctx3.fillBlock({},$ctx1)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({index:index,elem:elem,trap:trap,jq:jq,viewName:viewName,modelName:modelName,tokens:tokens,path:path},$ctx1)})}); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-_st($1)._each_($2); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return self}, function($ctx1) {$ctx1.fill(self,"start:",{args:args}, smalltalk.Trapped)})} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}, function($ctx2) {$ctx2.fillBlock({index:index,elem:elem,trap:trap,jq:jq,viewName:viewName,modelName:modelName,tokens:tokens,path:path},$ctx1)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+return self}, function($ctx1) {$ctx1.fill(self,"start:",{args:args},smalltalk.Trapped)})}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+messageSends: ["do:", "register:", "each:", "asJQuery", "attr:", "tokenize:", "ifTrue:", ",", "=", "size", "first", "select:", "notEmpty", "second", "parse:", "allButFirst", "trapDescend:", "appendToJQuery:", "new", "at:", "current"]}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.Trapped); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -372,8 +368,8 @@ return smalltalk.withContext(function($ctx3) {
return _st(_st(html)._perform_(aS 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return _st(_st(_st(envjq)._children())._detach())._insertBefore_(endjq); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }, function($ctx2) {$ctx2.fillBlock({item:item,i:i},$ctx1)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 _st(envjq)._remove(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return self}, function($ctx1) {$ctx1.fill(self,"envelope:loop:before:tag:do:",{envelope:envelope,model:model,endjq:endjq,aSymbol:aSymbol,aBlock:aBlock,envjq:envjq}, smalltalk.Trapped.klass)})} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+return self}, function($ctx1) {$ctx1.fill(self,"envelope:loop:before:tag:do:",{envelope:envelope,model:model,endjq:endjq,aSymbol:aSymbol,aBlock:aBlock,envjq:envjq},smalltalk.Trapped.klass)})}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+messageSends: ["asJQuery", "withIndexDo:", "with:", "trap:read:", "perform:", "insertBefore:", "detach", "children", "remove"]}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.Trapped.klass); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.addMethod( 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -392,8 +388,8 @@ return $1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return _st(self)._envelope_loop_before_tag_do_(_st(html)._div(),model,_st(end)._asJQuery(),aSymbol,aBlock); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }, function($ctx2) {$ctx2.fillBlock({html:html},$ctx1)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return self}, function($ctx1) {$ctx1.fill(self,"loop:between:and:tag:do:",{model:model,start:start,end:end,aSymbol:aSymbol,aBlock:aBlock}, smalltalk.Trapped.klass)})} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+return self}, function($ctx1) {$ctx1.fill(self,"loop:between:and:tag:do:",{model:model,start:start,end:end,aSymbol:aSymbol,aBlock:aBlock},smalltalk.Trapped.klass)})}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+messageSends: ["remove", "nextUntil:", "element", "asJQuery", "with:", "ifNotNil:", "envelope:loop:before:tag:do:", "div"]}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.Trapped.klass); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.addMethod( 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -402,29 +398,25 @@ smalltalk.method({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 selector: "parse:", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 fn: function (anArray){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 var self=this; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx1) { 
var $2,$4,$5,$7,$6,$3,$1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-$2=anArray; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-$3=(function(each){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+return smalltalk.withContext(function($ctx1) { 
var $2,$3,$1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+$1=_st(anArray)._collect_((function(each){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 var asNum; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return smalltalk.withContext(function($ctx2) {
_st(asNum).__eq(_st(each)._asNumber()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-$4=_st(asNum).__eq(asNum); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-$5=(function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx3) {
return asNum; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-$6=(function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return smalltalk.withContext(function($ctx3) {
$7=_st(_st(each)._first()).__eq("#"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-if(smalltalk.assert($7)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+$2=_st(asNum).__eq(asNum); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+if(smalltalk.assert($2)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+return asNum; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+$3=_st(_st(each)._first()).__eq("#"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+if(smalltalk.assert($3)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return _st(_st(each)._allButFirst())._asSymbol(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return each; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx3) {$ctx3.fillBlock({},$ctx1)})}); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return _st($4)._ifTrue_ifFalse_($5,$6); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx2) {$ctx2.fillBlock({each:each,asNum:asNum},$ctx1)})}); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-$1=_st($2)._collect_($3); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}, function($ctx2) {$ctx2.fillBlock({each:each,asNum:asNum},$ctx1)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return $1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx1) {$ctx1.fill(self,"parse:",{anArray:anArray}, smalltalk.Trapped.klass)})} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}, function($ctx1) {$ctx1.fill(self,"parse:",{anArray:anArray},smalltalk.Trapped.klass)})}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+messageSends: ["collect:", "=", "asNumber", "ifTrue:ifFalse:", "asSymbol", "allButFirst", "first"]}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.Trapped.klass); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -436,8 +428,8 @@ selector: "append:do:", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 fn: function (anArray,aBlock){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 var self=this; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return smalltalk.withContext(function($ctx1) { 
_st(self)._with_do_(_st(self["@elements"]).__comma(anArray),aBlock); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return self}, function($ctx1) {$ctx1.fill(self,"append:do:",{anArray:anArray,aBlock:aBlock}, smalltalk.TrappedPathStack)})} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+return self}, function($ctx1) {$ctx1.fill(self,"append:do:",{anArray:anArray,aBlock:aBlock},smalltalk.TrappedPathStack)})}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+messageSends: ["with:do:", ","]}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.TrappedPathStack); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.addMethod( 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -449,8 +441,8 @@ var self=this; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return smalltalk.withContext(function($ctx1) { 
var $1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $1=self["@elements"]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return $1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx1) {$ctx1.fill(self,"elements",{}, smalltalk.TrappedPathStack)})} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}, function($ctx1) {$ctx1.fill(self,"elements",{},smalltalk.TrappedPathStack)})}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+messageSends: []}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.TrappedPathStack); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.addMethod( 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -461,8 +453,8 @@ fn: function (){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 var self=this; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return smalltalk.withContext(function($ctx1) { 
smalltalk.TrappedSingleton.fn.prototype._initialize.apply(_st(self), []); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 self["@elements"]=[]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return self}, function($ctx1) {$ctx1.fill(self,"initialize",{}, smalltalk.TrappedPathStack)})} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+return self}, function($ctx1) {$ctx1.fill(self,"initialize",{},smalltalk.TrappedPathStack)})}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+messageSends: ["initialize"]}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.TrappedPathStack); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.addMethod( 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -481,8 +473,8 @@ return _st(aBlock)._value(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return smalltalk.withContext(function($ctx2) {
self["@elements"]=old; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return self["@elements"]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return self}, function($ctx1) {$ctx1.fill(self,"with:do:",{anArray:anArray,aBlock:aBlock,old:old}, smalltalk.TrappedPathStack)})} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+return self}, function($ctx1) {$ctx1.fill(self,"with:do:",{anArray:anArray,aBlock:aBlock,old:old},smalltalk.TrappedPathStack)})}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+messageSends: ["ensure:", "value"]}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.TrappedPathStack); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -497,8 +489,8 @@ var self=this; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return smalltalk.withContext(function($ctx1) { 
_st(_st((smalltalk.TrappedPathStack || TrappedPathStack))._current())._with_do_(self["@path"],(function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return smalltalk.withContext(function($ctx2) {
return _st(aBlock)._value_(self["@model"]); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return self}, function($ctx1) {$ctx1.fill(self,"do:",{aBlock:aBlock}, smalltalk.TrappedSnapshot)})} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+return self}, function($ctx1) {$ctx1.fill(self,"do:",{aBlock:aBlock},smalltalk.TrappedSnapshot)})}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+messageSends: ["with:do:", "value:", "current"]}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.TrappedSnapshot); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.addMethod( 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -510,8 +502,8 @@ var self=this; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return smalltalk.withContext(function($ctx1) { 
var $1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $1=self["@model"]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return $1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx1) {$ctx1.fill(self,"model",{}, smalltalk.TrappedSnapshot)})} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}, function($ctx1) {$ctx1.fill(self,"model",{},smalltalk.TrappedSnapshot)})}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+messageSends: []}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.TrappedSnapshot); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.addMethod( 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -521,8 +513,8 @@ selector: "modify:", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 fn: function (aBlock){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 var self=this; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return smalltalk.withContext(function($ctx1) { 
_st(_st(self)._model())._modify_do_(_st(_st(self)._path())._allButFirst(),aBlock); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return self}, function($ctx1) {$ctx1.fill(self,"modify:",{aBlock:aBlock}, smalltalk.TrappedSnapshot)})} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+return self}, function($ctx1) {$ctx1.fill(self,"modify:",{aBlock:aBlock},smalltalk.TrappedSnapshot)})}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+messageSends: ["modify:do:", "allButFirst", "path", "model"]}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.TrappedSnapshot); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.addMethod( 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -534,8 +526,8 @@ var self=this; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return smalltalk.withContext(function($ctx1) { 
var $1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 $1=self["@path"]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return $1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}, function($ctx1) {$ctx1.fill(self,"path",{}, smalltalk.TrappedSnapshot)})} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}, function($ctx1) {$ctx1.fill(self,"path",{},smalltalk.TrappedSnapshot)})}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+messageSends: []}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.TrappedSnapshot); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.addMethod( 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -546,8 +538,8 @@ fn: function (anArray,aTrappedMW){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 var self=this; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return smalltalk.withContext(function($ctx1) { 
self["@path"]=anArray; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 self["@model"]=aTrappedMW; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return self}, function($ctx1) {$ctx1.fill(self,"path:model:",{anArray:anArray,aTrappedMW:aTrappedMW}, smalltalk.TrappedSnapshot)})} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+return self}, function($ctx1) {$ctx1.fill(self,"path:model:",{anArray:anArray,aTrappedMW:aTrappedMW},smalltalk.TrappedSnapshot)})}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+messageSends: []}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.TrappedSnapshot); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -559,8 +551,8 @@ selector: "trapDescend:", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 fn: function (aBlock){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 var self=this; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return smalltalk.withContext(function($ctx1) { 
_st(_st((smalltalk.Trapped || Trapped))._current())._descend_snapshotDo_(self,aBlock); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return self}, function($ctx1) {$ctx1.fill(self,"trapDescend:",{aBlock:aBlock}, smalltalk.Array)})} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+return self}, function($ctx1) {$ctx1.fill(self,"trapDescend:",{aBlock:aBlock}, smalltalk.Array)})}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+messageSends: ["descend:snapshotDo:", "current"]}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.Array); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.addMethod( 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -579,8 +571,8 @@ return end; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 _st(start)._trap_read_(path,(function(model){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return smalltalk.withContext(function($ctx2) {
return _st((smalltalk.Trapped || Trapped))._loop_between_and_tag_do_(model,start,end,aSymbol,aBlock); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }, function($ctx2) {$ctx2.fillBlock({model:model},$ctx1)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return self}, function($ctx1) {$ctx1.fill(self,"trapIter:tag:do:",{path:path,aSymbol:aSymbol,aBlock:aBlock,start:start,end:end}, smalltalk.HTMLCanvas)})} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+return self}, function($ctx1) {$ctx1.fill(self,"trapIter:tag:do:",{path:path,aSymbol:aSymbol,aBlock:aBlock,start:start,end:end}, smalltalk.HTMLCanvas)})}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+messageSends: ["with:", "script", "trap:read:", "loop:between:and:tag:do:"]}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.HTMLCanvas); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.addMethod( 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -590,8 +582,8 @@ selector: "trap:", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 fn: function (path){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 var self=this; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return smalltalk.withContext(function($ctx1) { 
_st(_st(_st((smalltalk.Trapped || Trapped))._current())._binder_(self))._installFor_(path); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return self}, function($ctx1) {$ctx1.fill(self,"trap:",{path:path}, smalltalk.TagBrush)})} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+return self}, function($ctx1) {$ctx1.fill(self,"trap:",{path:path}, smalltalk.TagBrush)})}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+messageSends: ["installFor:", "binder:", "current"]}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.TagBrush); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.addMethod( 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -619,8 +611,8 @@ return smalltalk.withContext(function($ctx5) {
return _st(aBlock)._value_value_( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return _st($3)._watch_do_($4,$5); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }, function($ctx2) {$ctx2.fillBlock({snap:snap},$ctx1)})}); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 _st($1)._trapDescend_($2); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return self}, function($ctx1) {$ctx1.fill(self,"trap:read:",{path:path,aBlock:aBlock}, smalltalk.TagBrush)})} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+return self}, function($ctx1) {$ctx1.fill(self,"trap:read:",{path:path,aBlock:aBlock}, smalltalk.TagBrush)})}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+messageSends: ["trapDescend:", "watch:do:", "allButFirst", "path", "ifTrue:", "signal", "isEmpty", "toArray", "closest:", "asJQuery", "do:", "with:", "value:value:", "model"]}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.TagBrush); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.addMethod( 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -632,8 +624,8 @@ var self=this; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return smalltalk.withContext(function($ctx1) { 
_st(self)._trap_toggle_ifNotPresent_(path,aBlock,(function(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return smalltalk.withContext(function($ctx2) {
return _st(_st(self)._asJQuery())._hide(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }, function($ctx2) {$ctx2.fillBlock({},$ctx1)})})); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return self}, function($ctx1) {$ctx1.fill(self,"trap:toggle:",{path:path,aBlock:aBlock}, smalltalk.TagBrush)})} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+return self}, function($ctx1) {$ctx1.fill(self,"trap:toggle:",{path:path,aBlock:aBlock}, smalltalk.TagBrush)})}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+messageSends: ["trap:toggle:ifNotPresent:", "hide", "asJQuery"]}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.TagBrush); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.addMethod( 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -667,7 +659,7 @@ return _st($8)._value_value_(data,html); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 return _st($4)._ifFalse_($5); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }, function($ctx2) {$ctx2.fillBlock({data:data,html:html},$ctx1)})}); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 _st($1)._trap_read_($2,$3); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-return self}, function($ctx1) {$ctx1.fill(self,"trap:toggle:ifNotPresent:",{path:path,aBlock:aBlock,anotherBlock:anotherBlock,shown:shown}, smalltalk.TagBrush)})} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+return self}, function($ctx1) {$ctx1.fill(self,"trap:toggle:ifNotPresent:",{path:path,aBlock:aBlock,anotherBlock:anotherBlock,shown:shown}, smalltalk.TagBrush)})}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+messageSends: ["trap:read:", "ifFalse:", "notNil", "empty", "asJQuery", "show", "value:value:", "ifTrue:ifFalse:", "="]}), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 smalltalk.TagBrush); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 |