Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
Pygments / examplefiles / output / simple.croc
Size: Mime:
€]q(cpygments.token
_TokenType
qXKeywordq…q…qq}q(Xsubtypesqcbuiltins
set
q]q	(hhXWordq
†q…qq
}q(hh]q…qRqXparentqhubhhh†q…qq}q(hh]q…qRqhhubhhXTypeq†q…qq}q(hh]q…q Rq!hhubhhXPreProcq"†q#…q$q%}q&(hh]q'…q(Rq)hhubhhXControlq*†q+…q,q-}q.(hh]q/…q0Rq1hhubhhXConstantq2†q3…q4q5}q6(hh]q7…q8Rq9hhubhhX	Namespaceq:†q;…q<q=}q>(hh]q?…q@RqAhhubhhXPseudoqB†qC…qDqE}qF(hh]qG…qHRqIhhubhhXDeclarationqJ†qK…qLqM}qN(hh]qO…qPRqQhhubhhXReservedqR†qS…qTqU}qV(hh]qW…qXRqYhhube…qZRq[hh)…q\q]}q^(hh]q_(hXEscapeq`…qa…qbqc}qd(hh]qe…qfRqghh]ubhXOperatorqh…qi…qjqk}ql(hh]qm(hhhXDBSqn†qo…qpqq}qr(hh]qs…qtRquhhkubhhhh
†qv…qwqx}qy(hh]qz…q{Rq|hhkube…q}Rq~hh]h
hxhnhqubhXNameq…q€…qq‚}qƒ(hh]q„(hhXTagq…†q†…q‡qˆ}q‰(hh]qŠ…q‹RqŒhh‚ubhhXEntityq†qŽ…qq}q‘(hh]q’hhhhn‡q“…q”q•}q–(hh]q—…q˜Rq™hhuba…qšRq›hh‚hnh•ubhhX	Exceptionqœ†q…qžqŸ}q (hh]q¡…q¢Rq£hh‚ubhhX	Decoratorq¤†q¥…q¦q§}q¨(hh]q©…qªRq«hh‚ubhhXClassq¬†q­…q®q¯}q°(hh]q±(hhh¬hn‡q²…q³q´}qµ(hh]q¶…q·Rq¸hh¯ubhhh¬XStartq¹‡qº…q»q¼}q½(hh]q¾…q¿RqÀhh¯ube…qÁRqÂhh‚h¹h¼hnh´ubhhXVariableqÆqąqŁqÆ}qÇ(hh]qÈ(hhhÃX	AnonymousqɇqʅqˁqÌ}qÍ(hh]q΅qÏRqÐhhÆubhhhÃh¬‡qхqҁqÓ}qÔ(hh]qՅqÖRq×hhÆubhhhÃXMagicq؇qمqځqÛ}qÜ(hh]q݅qÞRqßhhÆubhhhÃXGlobalqà‡qá…qâqã}qä(hh]qå…qæRqçhhÆubhhhÃXInstanceqè‡qé…qêqë}qì(hh]qí…qîRqïhhÆube…qðRqñhh‚h¬hÓhàhãhèhëhØhÛhÉhÌubhhX	Attributeqò†qó…qôqõ}qö(hh]q÷hhhòhÇqø…qùqú}qû(hh]qü…qýRqþhhõuba…qÿRrhh‚hÃhúubhhh:†r…rr}r(hh]r…rRrhh‚ubhhXPropertyr†r	…r
r}r(hh]r
…rRrhh‚ubhhXSymbolr†r…rr}r(hh]r…rRrhh‚ubhhXClassesr†r…rr}r(hh]r…rRrhh‚ubhhhB†r …r!r"}r#(hh]r$…r%Rr&hh‚ubhhXLabelr'†r(…r)r*}r+(hh]r,…r-Rr.hh‚ubhhhh†r/…r0r1}r2(hh]r3…r4Rr5hh‚ubhhXBuiltinr6†r7…r8r9}r:(hh]r;(hhj6hB‡r<…r=r>}r?(hh]r@…rARrBhj9ubhhj6h‡rC…rDrE}rF(hh]rG…rHRrIhj9ube…rJRrKhh‚hBj>hjEubhhXFieldrL†rM…rNrO}rP(hh]rQ…rRRrShh‚ubhhXOtherrT†rU…rVrW}rX(hh]rYhhjTXMemberrZ‡r[…r\r]}r^(hh]r_…r`RrahjWuba…rbRrchh‚jZj]ubhhXFunctionrd†re…rfrg}rh(hh]rihhjdh؇rj…rkrl}rm(hh]rn…roRrphjguba…rqRrrhh‚hØjlubhhh†rs…rtru}rv(hh]rw…rxRryhh‚ubhhh2†rz…r{r|}r}(hh]r~…rRr€hh‚ube…rRr‚hh]hòhõj6j9h¬h¯h2j|h¤h§hhhœhŸjdjgjjj'j*h:jjTjWh…hˆhÃhÆjLjOjjhBj"hhj1jjhjuubhXLiteralrƒ…r„…r…r†}r‡(hh]rˆ(hjƒjT†r‰…rЁr‹}rŒ(hh]r…rŽRrhj†ubhjƒXCharr†r‘…r’r“}r”(hh]r•…r–Rr—hj†ubhjƒXDater˜†r™…ršr›}rœ(hh]r…ržRrŸhj†ubhjƒXScalarr †r¡…r¢r£}r¤(hh]r¥hjƒj XPlainr¦‡r§…r¨r©}rª(hh]r«…r¬Rr­hj£uba…r®Rr¯hj†j¦j©ubhjƒXStringr°†r±…r²r³}r´(hh]rµ(hjƒj°XInterpolr¶‡r·…r¸r¹}rº(hh]r»…r¼Rr½hj³ubhjƒj°X	Delimeterr¾‡r¿…rÀrÁ}rÂ(hh]rÃ…rÄRrÅhj³ubhjƒj°j‡rÆ…rǁrÈ}rÉ(hh]rÊ…rËRrÌhj³ubhjƒj°j‡rÍ…r΁rÏ}rÐ(hh]rÑ…rÒRrÓhj³ubhjƒj°XSinglerÔ‡rÕ…rցr×}rØ(hh]rÙ…rÚRrÛhj³ubhjƒj°jT‡rÜ…r݁rÞ}rß(hh]rà…ráRrâhj³ubhjƒj°XBacktickrã‡rä…råræ}rç(hh]rè…réRrêhj³ubhjƒj°h`‡rë…rìrí}rî(hh]rï…rðRrñhj³ubhjƒj°XRegexrò‡ró…rôrõ}rö(hh]r÷…røRrùhj³ubhjƒj°XMomentrú‡rû…rürý}rþ(hh]rÿ…rRrhj³ubhjƒj°XBooleanr‡r…rr}r(hh]r…rRr	hj³ubhjƒj°X	Characterr
‡r…rr
}r(hh]r…rRrhj³ubhjƒj°X	Delimiterr‡r…rr}r(hh]r…rRrhj³ubhjƒj°XDocr‡r…rr}r(hh]r…r Rr!hj³ubhjƒj°h‡r"…r#r$}r%(hh]r&…r'Rr(hj³ubhjƒj°XAffixr)‡r*…r+r,}r-(hh]r.…r/Rr0hj³ubhjƒj°XHeredocr1‡r2…r3r4}r5(hh]r6…r7Rr8hj³ubhjƒj°XDoubler9‡r:…r;r<}r=(hh]r>…r?Rr@hj³ubhjƒj°XInterprA‡rB…rCrD}rE(hh]rF…rGRrHhj³ubhjƒj°XAtomrI‡rJ…rKrL}rM(hh]rN…rORrPhj³ube…rQRrRhj†j)j,jãjæjjÈjjjjj9j<h`jíj1j4j¶j¹jTjÞjòjõjÔj×jjÏj
j
jújýjAjDjjj¾jÁjIjLhj$ubhjƒXNumberrS†rT…rUrV}rW(hh]rX(hjƒjSXFloatrY‡rZ…r[r\}r](hh]r^…r_Rr`hjVubhjƒjSXDecra‡rb…rcrd}re(hh]rf…rgRrhhjVubhjƒjSXRadixri‡rj…rkrl}rm(hh]rn…roRrphjVubhjƒjSXOctrq‡rr…rsrt}ru(hh]rv…rwRrxhjVubhjƒjSXBinry‡rz…r{r|}r}(hh]r~…rRr€hjVubhjƒjShò‡r…r‚rƒ}r„(hh]r……r†Rr‡hjVubhjƒjSXHexrˆ‡r‰…rЁr‹}rŒ(hh]r…rŽRrhjVubhjƒjSXIntegerr‡r‘…r’r“}r”(hh]r•h(jƒjSjXLongr–tr—…r˜r™}rš(hh]r›…rœRrhj“uba…ržRrŸhjVj–j™ubhjƒjSXDecimalr ‡r¡…r¢r£}r¤(hh]r¥…r¦Rr§hjVube…r¨Rr©hj†jyj|jYj\jˆj‹jj“jqjtjijlhòjƒj j£jajdube…rªRr«hh]j°j³jSjVj˜j›j j£jTj‹jj“ubhXGenericr¬…r­…r®r¯}r°(hh]r±(hj¬XErrorr²†r³…r´rµ}r¶(hh]r·…r¸Rr¹hj¯ubhj¬X
Subheadingrº†r»…r¼r½}r¾(hh]r¿…rÀRrÁhj¯ubhj¬X	Tracebackr†rÃ…rārÅ}rÆ(hh]rÇ…rÈRrÉhj¯ubhj¬XOutputrʆrË…ŕrÍ}rÎ(hh]rÏ…rÐRrÑhj¯ubhj¬XPromptrÒ†rÓ…rԁrÕ}rÖ(hh]r×…rØRrÙhj¯ubhj¬XDeletedrÚ†rÛ…r܁rÝ}rÞ(hh]rß…ràRráhj¯ubhj¬XInsertedrâ†rã…rärå}ræ(hh]rç…rèRréhj¯ubhj¬XHeadingrê†rë…rìrí}rî(hh]rï…rðRrñhj¯ubhj¬XStrongrò†ró…rôrõ}rö(hh]r÷…røRrùhj¯ubhj¬XEmphrú†rû…rürý}rþ(hh]rÿ…rRrhj¯ube…rRrhh]jÚjÝjújýj²jµjêjíjâjåjÊjÍjÒjÕjòjõjºj½jÂjÅubhj²…r…rr}r(hh]r…r	Rr
hh]ubhhjT…r…rr
}r(hh]r…rRrhh]ubhXTextr…r…rr}r(hh]r(hjXRootr†r…rr}r(hh]r…rRrhjubhjj†r …r!r"}r#(hh]r$…r%Rr&hjubhjXRagr'†r(…r)r*}r+(hh]r,…r-Rr.hjubhjX
Whitespacer/†r0…r1r2}r3(hh]r4…r5Rr6hjubhjXBeerr7†r8…r9r:}r;(hh]r<…r=Rr>hjubhjXPunctuationr?†r@…rArB}rC(hh]rD…rERrFhjube…rGRrHhh]j/j2jj"j?jBjjj7j:j'j*ubhXCommentrI…rJ…rKrL}rM(hh]rN(hjIXPreprocrO†rP…rQrR}rS(hh]rT…rURrVhjLubhjIXMultirW†rX…rYrZ}r[(hh]r\…r]Rr^hjLubhjIXHashbangr_†r`…rarb}rc(hh]rd…reRrfhjLubhjIjÔ†rg…rhri}rj(hh]rk…rlRrmhjLubhjIX
SingleLinern†ro…rprq}rr(hh]rs…rtRruhjLubhjIj†rv…rwrx}ry(hh]rz…r{Rr|hjLubhjIX	Directiver}†r~…rr€}r(hh]r‚…rƒRr„hjLubhjIX	Multiliner…†r†…r‡rˆ}r‰(hh]rŠ…r‹RrŒhjLubhjIX
Singleliner†rŽ…rr}r‘(hh]r’…r“Rr”hjLubhjIXPreprocFiler•†r–…r—r˜}r™(hh]rš…r›RrœhjLubhjIXSpecialr†rž…rŸr }r¡(hh]r¢…r£Rr¤hjLube…r¥Rr¦hh]j_jbj…jˆjOjRj•j˜jÔjijj j}j€jnjqjjxjWjZjjubhj?…r§…r¨r©}rª(hh]r«hj?X	Indicatorr¬†r­…r®r¯}r°(hh]r±…r²Rr³hj©uba…r´Rrµhh]j¬j¯ube…r¶Rr·jjh`hcj²jjTj
hhhh‚jƒj†j?j©hhhkjIjLj¬j¯XTokenr¸h]j°j³jSjVubh2h5hJhMh:h=hBhEhRhUhhh*h-hhh"h%h
h
ubXmoduler¹†rºjX r»†r¼h‚Xsimpler½†r¾j©X;r¿†rÀjX
rÁ†rÂjjÁ†rÃjiX// Importing stuff.
rĆrÅj©X{rƆrÇjjÁ†rÈjX	rɆrÊhXfunctionrˆrÌjj»†rÍh‚XloadModrΆrÏj©X(rІrÑh‚XnamerÒ†rÓj©X,rÔ†rÕjj»†rÖh‚Xnsr׆rØj©X)rÙ†rÚjjÁ†rÛjjɆrÜj©jƆrÝjjÁ†rÞjX		r߆ràhXassertrá†râj©jІrãh‚Xnamerä†råjj»†ræj©X==rç†rèjj»†réj³X"mod"rê†rëj©jÙ†rìj©j¿†ríjjÁ†rîjX		
		rï†rðh‚Xnsrñ†ròj©X.ró†rôh‚Xxrõ†röjj»†r÷j©X=rø†rùjj»†rúj³X"I'm x"rû†rüj©j¿†rýjjÁ†rþjX	
		rÿ†rh‚Xnsr†rj©jó†rh‚Xfoor†rjj»†rj©jø†rjj»†rhXfunctionr	†r
jj»†rh‚Xfoor†r
j©jІrj©jÙ†rjjÁ†rjX		r†rj©jƆrjjÁ†rjX			r†rh‚Xwriteflnr†rj©jІrj³X"foo"r†rj©jÙ†rj©j¿†rjjÁ†rjX		r†r j©X}r!†r"j©j¿†r#jjÁ†r$jX	
		r%†r&h‚Xnsr'†r(j©jó†r)h‚Xbarr*†r+jj»†r,j©jø†r-jj»†r.hXfunctionr/†r0jj»†r1h‚Xbarr2†r3j©jІr4h‚jõ†r5j©jÙ†r6jjÁ†r7jX		r8†r9j©jƆr:jjÁ†r;jX			r<†r=hXreturnr>†r?jj»†r@h‚jõ†rAj©X[rB†rCj“X0rD†rEj©X]rF†rGj©j¿†rHjjÁ†rIjX		rJ†rKj©j!†rLj©j¿†rMjjÁ†rNjX	
		rO†rPh‚XnsrQ†rRj©jó†rSh‚XbazrT†rUjj»†rVj©jø†rWjj»†rXhXfunctionrY†rZjj»†r[h‚Xbazr\†r]j©jІr^j©jÙ†r_jjÁ†r`jX		ra†rbj©jƆrcjjÁ†rdjX			re†rfh‚Xwriteflnrg†rhj©jІrih‚jõ†rjj©jÙ†rkj©j¿†rljjÁ†rmjX		rn†roj©j!†rpj©j¿†rqjjÁ†rrjX		
		rs†rthXforeachru†rvj©jІrwh‚Xkrx†ryj©jÔ†rzjj»†r{h‚Xvr|†r}j©j¿†r~jj»†rh‚Xnsr€†rj©jÙ†r‚jjÁ†rƒjX			r„†r…hXifr††r‡j©jІrˆh‚X
isFunctionr‰†rŠj©jІr‹h‚j|†rŒj©jÙ†rj©jÙ†rŽjjÁ†rjX				r†r‘h‚j|†r’j©jó†r“h‚Xenvironmentr”†r•j©jІr–h‚Xnsr—†r˜j©jÙ†r™j©j¿†ršjjÁ†r›jjɆrœj©j!†rjjÁ†ržjX	
	rŸ†r h‚XsetModuleLoaderr¡†r¢j©jІr£j³X"mod"r¤†r¥j©jÔ†r¦jj»†r§h‚XloadModr¨†r©j©jÙ†rªj©j¿†r«jjÁ†r¬jX	
	r­†r®hXimportr¯†r°jj»†r±h‚Xmodr²†r³jj»†r´j©X:rµ†r¶jj»†r·h‚Xfoor¸†r¹j©jÔ†rºjj»†r»h‚Xbarr¼†r½j©j¿†r¾jjÁ†r¿jjɆrÀh‚XfoorÁ†rÂj©jІrÃj©jÙ†rÄj©j¿†rÅjjÁ†rÆjjɆrÇh‚XwriteflnrȆrÉj©jІrÊh‚XbarrˆrÌj©jІrÍj©jB†rÎj“X5rφrÐj©jF†rÑj©jÙ†rÒj©jÙ†rÓj©j¿†rÔjjÁ†rÕjjɆrÖh‚Xmodr׆rØj©jó†rÙh‚XbazrÚ†rÛj©jІrÜj©jÙ†rÝj©j¿†rÞjjÁ†rßjjÁ†ràjjɆráh‚Xwriteflnrâ†rãj©jІräj©jÙ†råj©j¿†ræjjÁ†rçj©j!†rèjjÁ†réjjÁ†rêjiX// Super calls.
rë†rìj©jƆríjjÁ†rîjjɆrïhXclassrð†rñjj»†ròh‚XBaseró†rôjjÁ†rõjjɆröj©jƆr÷jjÁ†røjX		rù†rúhXfunctionrû†rüjj»†rýh‚Xforkrþ†rÿj©jІrj©jÙ†rjjÁ†rjX		r†rj©jƆrjjÁ†rjX			r†rh‚Xwriteflnr	†r
j©jІrj³X"Base fork."r†r
j©jÙ†rj©j¿†rjjÁ†rjX		r†rj©j!†rjjÁ†rjjɆrj©j!†rjjÁ†rjjÁ†rjjɆrhXclassr†rjj»†rh‚XDerivedr†rjj»†rj©jµ†r jj»†r!h‚XBaser"†r#jjÁ†r$jjɆr%j©jƆr&jjÁ†r'jX		r(†r)hXfunctionr*†r+jj»†r,h‚Xforkr-†r.j©jІr/j©jÙ†r0jjÁ†r1jX		r2†r3j©jƆr4jjÁ†r5jX			r6†r7h‚Xwriteflnr8†r9j©jІr:j³X"Derived fork!"r;†r<j©jÙ†r=j©j¿†r>jjÁ†r?jX			r@†rAhXsuperrB†rCj©jó†rDh‚XforkrE†rFj©jІrGj©jÙ†rHj©j¿†rIjjÁ†rJjX		rK†rLj©j!†rMjjÁ†rNjjɆrOj©j!†rPjjÁ†rQjX	
	rR†rShXlocalrT†rUjj»†rVh‚XdrW†rXjj»†rYj©jø†rZjj»†r[h‚XDerivedr\†r]j©jІr^j©jÙ†r_j©j¿†r`jjÁ†rajjɆrbh‚jW†rcj©jó†rdh‚Xforkre†rfj©jІrgj©jÙ†rhj©j¿†rijjÁ†rjjX	
	rk†rlh‚Xwriteflnrm†rnj©jІroj©jÙ†rpj©j¿†rqjjÁ†rrj©j!†rsjjÁ†rtjjÁ†rujiX'// Coroutines and coroutine iteration.
rv†rwj©jƆrxjjÁ†ryjjɆrzhXlocalr{†r|jj»†r}h‚X	countDownr~†rjj»†r€j©jø†rjj»†r‚h‚X	coroutinerƒ†r„jj»†r…hXfunctionr††r‡jj»†rˆh‚X	countDownr‰†rŠj©jІr‹h‚jõ†rŒj©jÙ†rjjÁ†rŽjjɆrj©jƆrjjÁ†r‘jX		r’†r“hXyieldr”†r•j©jІr–j©jÙ†r—j©j¿†r˜jjÁ†r™jX		
		rš†r›hXwhilerœ†rj©jІržh‚jõ†rŸjj»†r j©X>r¡†r¢jj»†r£j“jD†r¤j©jÙ†r¥jjÁ†r¦jX		r§†r¨j©jƆr©jjÁ†rªjX			r«†r¬hXyieldr­†r®j©jІr¯h‚jõ†r°j©jÙ†r±j©j¿†r²jjÁ†r³jX			r´†rµh‚jõ†r¶j©X--r·†r¸j©j¿†r¹jjÁ†rºjX		r»†r¼j©j!†r½jjÁ†r¾jjɆr¿j©j!†rÀj©j¿†rÁjjÁ†rÂjX	
	rÆrÄhXforeachrņrÆj©jІrÇh‚j|†rÈj©j¿†rÉjj»†rÊh‚X	countDownrˆrÌj©jÔ†rÍjj»†rÎj“jφrÏj©jÙ†rÐjjÁ†rÑjX		rÒ†rÓh‚XwriteflnrÔ†rÕj©jІrÖh‚j|†r×j©jÙ†rØj©j¿†rÙjjÁ†rÚjX		
	rÛ†rÜh‚Xwriteflnr݆rÞj©jІrßj©jÙ†ràj©j¿†rájjÁ†râjX	
	rã†rähXlocalrå†ræjj»†rçh‚XforEachrè†réjj»†rêj©jø†rëjj»†rìh‚X	coroutinerí†rîjj»†rïhXfunctionrð†rñjj»†ròh‚XforEachró†rôj©jІrõh‚Xtrö†r÷j©jÙ†røjjÁ†rùjjɆrúj©jƆrûjjÁ†rüjX		rý†rþhXyieldrÿ†rj©jІrj©jÙ†rj©j¿†rjjÁ†rjX	
		r†rhXforeachr†rj©jІr	h‚jx†r
j©jÔ†rjj»†rh‚j|†r
j©j¿†rjj»†rh‚jö†rj©jÙ†rjjÁ†rjX			r†rhXyieldr†rj©jІrh‚jx†rj©jÔ†rjj»†rh‚j|†rj©jÙ†rj©j¿†rjjÁ†rjjɆrj©j!†r j©j¿†r!jjÁ†r"jX	
	r#†r$hXforeachr%†r&j©jІr'h‚X_r(†r)j©jÔ†r*jj»†r+h‚jx†r,j©jÔ†r-jj»†r.h‚j|†r/j©j¿†r0jj»†r1h‚XforEachr2†r3j©jÔ†r4jj»†r5j©jƆr6h‚Xhir7†r8jj»†r9j©jø†r:jj»†r;j“X1r<†r=j©jÔ†r>jj»†r?h‚Xbyer@†rAjj»†rBj©jø†rCjj»†rDj“X2rE†rFj©j!†rGj©jÙ†rHjjÁ†rIjX		rJ†rKh‚XwriteflnrL†rMj©jІrNj³X"key: "rO†rPj©jÔ†rQjj»†rRh‚jx†rSj©jÔ†rTjj»†rUj³X", value: "rV†rWj©jÔ†rXjj»†rYh‚j|†rZj©jÙ†r[j©j¿†r\jjÁ†r]jX	
	r^†r_h‚Xwriteflnr`†raj©jІrbj©jÙ†rcj©j¿†rdjjÁ†rej©j!†rfjjÁ†rgjjÁ†rhjiX// Testing tailcalls.
ri†rjj©jƆrkjjÁ†rljjɆrmhXfunctionrn†rojj»†rph‚Xrecurserq†rrj©jІrsh‚jõ†rtj©jÙ†rujjÁ†rvjjɆrwj©jƆrxjjÁ†ryjX		rz†r{h‚Xwriteflnr|†r}j©jІr~j³X"recurse: "r†r€j©jÔ†rjj»†r‚h‚jõ†rƒj©jÙ†r„j©j¿†r…jjÁ†r†jX	
		r‡†rˆhXifr‰†rŠj©jІr‹h‚jõ†rŒjj»†rj©X==rކrjj»†rj“jD†r‘j©jÙ†r’jjÁ†r“jX			r”†r•hXreturnr–†r—jj»†r˜h‚XtoStringr™†ršj©jІr›h‚jõ†rœj©jÙ†rj©j¿†ržjjÁ†rŸjX		r †r¡hXelser¢†r£jjÁ†r¤jX			r¥†r¦hXreturnr§†r¨jj»†r©h‚Xrecurserª†r«j©jІr¬h‚jõ†r­jj»†r®j©X-r¯†r°jj»†r±j“j<†r²j©jÙ†r³j©j¿†r´jjÁ†rµjjɆr¶j©j!†r·jjÁ†r¸jX	
	r¹†rºh‚Xwriteflnr»†r¼j©jІr½h‚Xrecurser¾†r¿j©jІrÀj“jφrÁj©jÙ†rÂj©jÙ†rÃj©j¿†rÄjjÁ†rÅjjɆrÆh‚XwriteflnrdžrÈj©jІrÉj©jÙ†rÊj©j¿†rËjjÁ†rÌjX	
	r͆rÎhXclassrφrÐjj»†rÑh‚XArÒ†rÓjjÁ†rÔjjɆrÕj©jƆrÖjjÁ†r×jX		r؆rÙhXfunctionrÚ†rÛjj»†rÜh‚Xfr݆rÞj©jІrßh‚jõ†ràj©jÙ†rájjÁ†râjX		rã†räj©jƆråjjÁ†ræjX			rç†rèh‚Xwriteflnré†rêj©jІrëj³X"A.f: "rì†ríj©jÔ†rîjj»†rïh‚jõ†rðj©jÙ†rñj©j¿†ròjjÁ†rójjÁ†rôjX			rõ†röhXifr÷†røj©jІrùh‚jõ†rújj»†rûj©X==rü†rýjj»†rþj“jD†rÿj©jÙ†rjjÁ†rjX				r†rhXreturnr†rjj»†rh‚XtoStringr†rj©jІr	h‚jõ†r
j©jÙ†rj©j¿†rjjÁ†r
jX			r†rhXelser†rjjÁ†rjX				r†rhXreturnr†rjj»†rhXthisr†rj©jó†rh‚j݆rj©jІrh‚jõ†rjj»†rj©j¯†rjj»†r j“j<†r!j©jÙ†r"j©j¿†r#jj»†r$jiXE// call it as this.f to force a 'method' instruction to be generated
r%†r&jX		r'†r(j©j!†r)jjÁ†r*jjɆr+j©j!†r,jjÁ†r-jX	
	r.†r/hXlocalr0†r1jj»†r2h‚Xar3†r4jj»†r5j©jø†r6jj»†r7h‚jÒ†r8j©jІr9j©jÙ†r:j©j¿†r;jjÁ†r<jjɆr=h‚Xwriteflnr>†r?j©jІr@h‚j3†rAj©jó†rBh‚j݆rCj©jІrDj“jφrEj©jÙ†rFj©jÙ†rGj©j¿†rHjjÁ†rIjjɆrJh‚XwriteflnrK†rLj©jІrMj©jÙ†rNj©j¿†rOjjÁ†rPj©j!†rQjjÁ†rRjjÁ†rSj©jƆrTjjÁ†rUjjɆrVjiX;// A function which lets us define properties for a class.
rW†rXjjɆrYjiXk// The varargs should be a bunch of tables, each with a 'name' field, and 'getter' and/or 'setter' fields.
rZ†r[jjɆr\hXfunctionr]†r^jj»†r_h‚XmixinPropertiesr`†raj©jІrbh‚X	classTyperc†rdj©jÔ†rejj»†rfhXvarargrg†rhj©jÙ†rijjÁ†rjjjɆrkj©jƆrljjÁ†rmjX		rn†roh‚X	classTyperp†rqj©jó†rrh‚XmPropsrs†rtjj»†ruj©jø†rvjj»†rwj©jƆrxjj»†ryj©j!†rzj©j¿†r{jjÁ†r|jX	
		r}†r~h‚X	classTyper†r€j©jó†rh‚XopIndexr‚†rƒjj»†r„j©jø†r…jj»†r†hXfunctionr‡†rˆjj»†r‰h‚XopIndexrІr‹j©jІrŒh‚Xkeyr†rŽj©jÙ†rjjÁ†rjX		r‘†r’j©jƆr“jjÁ†r”jX			r•†r–hXlocalr—†r˜jj»†r™h‚Xproprš†r›jj»†rœj©jø†rjj»†ržh‚XmPropsrŸ†r j©jB†r¡h‚Xkeyr¢†r£j©jF†r¤j©j¿†r¥jjÁ†r¦jX	
			r§†r¨hXifr©†rªj©jІr«h‚Xpropr¬†r­jj»†r®hXisr¯†r°jj»†r±h5Xnullr²†r³j©jÙ†r´jjÁ†rµjX				r¶†r·hXthrowr¸†r¹jj»†rºh‚Xformatr»†r¼j©jІr½h‚X	classTyper¾†r¿j©jÔ†rÀjj»†rÁj³X+".opIndex() - Property '%s' does not exist"r†rÃj©jÔ†rÄjj»†rÅh‚XkeyrƆrÇj©jÙ†rÈj©j¿†rÉjjÁ†rÊjX	
			rˆrÌhXlocalr͆rÎjj»†rÏh‚XgetterrІrÑjj»†rÒj©jø†rÓjj»†rÔh‚XproprÕ†rÖj©jó†r×h‚Xgetterr؆rÙj©j¿†rÚjjÁ†rÛjX	
			r܆rÝhXifrÞ†rßj©jІràh‚Xgetterrá†râjj»†rãhXisrä†råjj»†ræh5Xnullrç†rèj©jÙ†réjjÁ†rêjX				rë†rìhXthrowrí†rîjj»†rïh‚Xformatrð†rñj©jІròh‚X	classTyperó†rôj©jÔ†rõjj»†röj³X*".opIndex() - Property '%s' has no getter"r÷†røj©jÔ†rùjj»†rúh‚Xkeyrû†rüj©jÙ†rýj©j¿†rþjjÁ†rÿjX	
			r†rhXreturnr†rjj»†rh‚Xgetterr†rj©jІrhXwithr†r	jj»†r
hXthisr†rj©jÙ†r
j©j¿†rjjÁ†rjX		r†rj©j!†rj©j¿†rjjÁ†rjX	
		r†rh‚X	classTyper†rj©jó†rh‚X
opIndexAssignr†rjj»†rj©jø†rjj»†rhXfunctionr†r jj»†r!h‚X
opIndexAssignr"†r#j©jІr$h‚Xkeyr%†r&j©jÔ†r'jj»†r(h‚Xvaluer)†r*j©jÙ†r+jjÁ†r,jX		r-†r.j©jƆr/jjÁ†r0jX			r1†r2hXlocalr3†r4jj»†r5h‚Xpropr6†r7jj»†r8j©jø†r9jj»†r:h‚XmPropsr;†r<j©jB†r=h‚Xkeyr>†r?j©jF†r@j©j¿†rAjjÁ†rBjX	
			rC†rDhXifrE†rFj©jІrGh‚XproprH†rIjj»†rJhXisrK†rLjj»†rMh5XnullrN†rOj©jÙ†rPjjÁ†rQjX				rR†rShXthrowrT†rUjj»†rVh‚XformatrW†rXj©jІrYh‚X	classTyperZ†r[j©jÔ†r\jj»†r]j³X1".opIndexAssign() - Property '%s' does not exist"r^†r_j©jÔ†r`jj»†rah‚Xkeyrb†rcj©jÙ†rdj©j¿†rejjÁ†rfjX	
			rg†rhhXlocalri†rjjj»†rkh‚Xsetterrl†rmjj»†rnj©jø†rojj»†rph‚Xproprq†rrj©jó†rsh‚Xsetterrt†ruj©j¿†rvjjÁ†rwjX	
			rx†ryhXifrz†r{j©jІr|h‚Xsetterr}†r~jj»†rhXisr€†rjj»†r‚h5Xnullrƒ†r„j©jÙ†r…jjÁ†r†jX				r‡†rˆhXthrowr‰†rŠjj»†r‹h‚XformatrŒ†rj©jІrŽh‚X	classTyper†rj©jÔ†r‘jj»†r’j³X0".opIndexAssign() - Property '%s' has no setter"r“†r”j©jÔ†r•jj»†r–h‚Xkeyr—†r˜j©jÙ†r™j©j¿†ršjjÁ†r›jX	
			rœ†rh‚Xsetterrž†rŸj©jІr hXwithr¡†r¢jj»†r£hXthisr¤†r¥j©jÔ†r¦jj»†r§h‚Xvaluer¨†r©j©jÙ†rªj©j¿†r«jjÁ†r¬jX		r­†r®j©j!†r¯j©j¿†r°jjÁ†r±jX	
		r²†r³hXforeachr´†rµj©jІr¶h‚Xir·†r¸j©jÔ†r¹jj»†rºh‚Xpropr»†r¼j©j¿†r½jj»†r¾j©jB†r¿hXvarargrÀ†rÁj©jF†rÂj©jÙ†rÃjjÁ†rÄjX		rņrÆj©jƆrÇjjÁ†rÈjX			rɆrÊhXifrˆrÌj©jІrÍj©X!rΆrÏh‚XisTablerІrÑj©jІrÒh‚XproprÓ†rÔj©jÙ†rÕj©jÙ†rÖjjÁ†r×jX				r؆rÙhXthrowrÚ†rÛjj»†rÜh‚Xformatr݆rÞj©jІrßj³X"mixinProperties() - property "rà†ráj©jÔ†râjj»†rãh‚j·†räj©jÔ†råjj»†ræj³X" is not a table"rç†rèj©jÙ†réj©j¿†rêjjÁ†rëjX	
			rì†ríhXifrî†rïj©jІrðh‚Xproprñ†ròe(j©jó†róh‚Xnamerô†rõjj»†röhXisr÷†røjj»†rùh5Xnullrú†rûj©jÙ†rüjjÁ†rýjX				rþ†rÿhXthrowr	†r	jj»†r	h‚Xformatr	†r	j©jІr	j³X"mixinProperties() - property "r	†r	j©jÔ†r	jj»†r		h‚j·†r
	j©jÔ†r	jj»†r	j³X" has no name"r
	†r	j©jÙ†r	j©j¿†r	jjÁ†r	jX	
			r	†r	hXifr	†r	j©jІr	h‚Xpropr	†r	j©jó†r	h‚Xsetterr	†r	jj»†r	hXisr	†r	jj»†r	h5Xnullr 	†r!	jj»†r"	j©X&&r#	†r$	jj»†r%	h‚Xpropr&	†r'	j©jó†r(	h‚Xgetterr)	†r*	jj»†r+	hXisr,	†r-	jj»†r.	h5Xnullr/	†r0	j©jÙ†r1	jjÁ†r2	jX				r3	†r4	hXthrowr5	†r6	jj»†r7	h‚Xformatr8	†r9	j©jІr:	j³X;"mixinProperties() - property '%s' has no getter or setter"r;	†r<	j©jÔ†r=	jj»†r>	h‚Xpropr?	†r@	j©jó†rA	h‚XnamerB	†rC	j©jÙ†rD	j©j¿†rE	jjÁ†rF	jX	
			rG	†rH	h‚X	classTyperI	†rJ	j©jó†rK	h‚XmPropsrL	†rM	j©jB†rN	h‚XproprO	†rP	j©jó†rQ	h‚XnamerR	†rS	j©jF†rT	jj»†rU	j©jø†rV	jj»†rW	h‚XproprX	†rY	j©j¿†rZ	jjÁ†r[	jX		r\	†r]	j©j!†r^	jjÁ†r_	jjɆr`	j©j!†ra	jjÁ†rb	jX	
	rc	†rd	jiX// Create a class to test out.
re	†rf	jjɆrg	hXclassrh	†ri	jj»†rj	h‚XPropTestrk	†rl	jjÁ†rm	jjɆrn	j©jƆro	jjÁ†rp	jX		rq	†rr	h‚XmXrs	†rt	jj»†ru	j©jø†rv	jj»†rw	j“jD†rx	j©j¿†ry	jjÁ†rz	jX		r{	†r|	h‚XmYr}	†r~	jj»†r	j©jø†r€	jj»†r	j“jD†r‚	j©j¿†rƒ	jjÁ†r„	jX		r…	†r†	h‚XmNamer‡	†rˆ	jj»†r‰	j©jø†rŠ	jj»†r‹	j³X""rŒ	†r	j©j¿†rŽ	jjÁ†r	jX		
		r	†r‘	hXfunctionr’	†r“	jj»†r”	h‚Xconstructorr•	†r–	j©jІr—	h‚Xnamer˜	†r™	j©jÙ†rš	jjÁ†r›	jX		rœ	†r	j©jƆrž	jjÁ†rŸ	jX			r 	†r¡	h‚XmNamer¢	†r£	jj»†r¤	j©jø†r¥	jj»†r¦	h‚Xnamer§	†r¨	j©j¿†r©	jjÁ†rª	jX		r«	†r¬	j©j!†r­	jjÁ†r®	jX	
		r¯	†r°	hXfunctionr±	†r²	jj»†r³	h‚XtoStringr´	†rµ	j©jІr¶	j©jÙ†r·	jjÁ†r¸	jX		r¹	†rº	j©jƆr»	jjÁ†r¼	jX			r½	†r¾	hXreturnr¿	†rÀ	jj»†rÁ	h‚XformatrÂ	†rÃ	j©jІrÄ	j³X
"name = '"rÅ	†rÆ	j©jÔ†rÇ	jj»†rÈ	h‚XmNamerÉ	†rÊ	j©jÔ†rË	jj»†rÌ	j³X"' x = "rÍ	†rÎ	j©jÔ†rÏ	jj»†rÐ	h‚XmXrÑ	†rÒ	j©jÔ†rÓ	jj»†rÔ	j³X" y = "rÕ	†rÖ	j©jÔ†r×	jj»†rØ	h‚XmYrÙ	†rÚ	j©jÙ†rÛ	j©j¿†rÜ	jjÁ†rÝ	jX		rÞ	†rß	j©j!†rà	jjÁ†rá	jjɆrâ	j©j!†rã	jjÁ†rä	jX	
	rå	†ræ	jiX// Mix in the properties.
rç	†rè	jjɆré	h‚XmixinPropertiesrê	†rë	jjÁ†rì	jjɆrí	j©jІrî	jjÁ†rï	jX		rð	†rñ	h‚XPropTestrò	†ró	j©jÔ†rô	jjÁ†rõ	jX	
		rö	†r÷	j©jƆrø	jjÁ†rù	jX			rú	†rû	h‚Xnamerü	†rý	jj»†rþ	j©jø†rÿ	jj»†r
j³X"x"r
†r
j©jÔ†r
jjÁ†r
jX			
			r
†r
hXfunctionr
†r
jjȠr	
h‚Xsetterr

†r
j©jІr
h‚Xvaluer
†r
j©jÙ†r
jjÁ†r
jX			r
†r
j©jƆr
jjÁ†r
jX				r
†r
h‚XmXr
†r
jjȠr
j©jø†r
jjȠr
h‚Xvaluer
†r
j©j¿†r
jjÁ†r
jX			r 
†r!
j©j!†r"
jjÁ†r#
jX	
			r$
†r%
hXfunctionr&
†r'
jjȠr(
h‚Xgetterr)
†r*
j©jІr+
j©jÙ†r,
jjÁ†r-
jX			r.
†r/
j©jƆr0
jjÁ†r1
jX				r2
†r3
hXreturnr4
†r5
jjȠr6
h‚XmXr7
†r8
j©j¿†r9
jjÁ†r:
jX			r;
†r<
j©j!†r=
jjÁ†r>
jX		r?
†r@
j©j!†rA
j©jÔ†rB
jjÁ†rC
jX	
		rD
†rE
j©jƆrF
jjÁ†rG
jX			rH
†rI
h‚XnamerJ
†rK
jjȠrL
j©jø†rM
jjȠrN
j³X"y"rO
†rP
j©jÔ†rQ
jjÁ†rR
jX	
			rS
†rT
hXfunctionrU
†rV
jjȠrW
h‚XsetterrX
†rY
j©jІrZ
h‚Xvaluer[
†r\
j©jÙ†r]
jjÁ†r^
jX			r_
†r`
j©jƆra
jjÁ†rb
jX				rc
†rd
h‚XmYre
†rf
jjȠrg
j©jø†rh
jjȠri
h‚Xvaluerj
†rk
j©j¿†rl
jjÁ†rm
jX			rn
†ro
j©j!†rp
jjÁ†rq
jX	
			rr
†rs
hXfunctionrt
†ru
jjȠrv
h‚Xgetterrw
†rx
j©jІry
j©jÙ†rz
jjÁ†r{
jX			r|
†r}
j©jƆr~
jjÁ†r
jX				r€
†r
hXreturnr‚
†rƒ
jj»†r„
h‚XmYr…
†r†
j©j¿†r‡
jjÁ†rˆ
jX			r‰
†rŠ
j©j!†r‹
jjÁ†rŒ
jX		r
†rŽ
j©j!†r
j©jÔ†r
jjÁ†r‘
jX	
		r’
†r“
j©jƆr”
jjÁ†r•
jX			r–
†r—
h‚Xnamer˜
†r™
jj»†rš
j©jø†r›
jj»†rœ
j³X"name"r
†rž
j©jÔ†rŸ
jjÁ†r 
jX	
			r¡
†r¢
hXfunctionr£
†r¤
jj»†r¥
h‚Xgetterr¦
†r§
j©jІr¨
j©jÙ†r©
jjÁ†rª
jX			r«
†r¬
j©jƆr­
jjÁ†r®
jX				r¯
†r°
hXreturnr±
†r²
jj»†r³
h‚XmNamer´
†rµ
j©j¿†r¶
jjÁ†r·
jX			r¸
†r¹
j©j!†rº
jjÁ†r»
jX		r¼
†r½
j©j!†r¾
jjÁ†r¿
jjɆrj©jÙ†rÁ
j©j¿†rÂ
jjÁ†rÃ
jX	
	rÄ
†rÅ
jiX&// Create an instance and try it out.
rÆ
†rÇ
jjɆrÈ
hXlocalrÉ
†rÊ
jj»†rË
h‚XprÌ
†rÍ
jj»†rÎ
j©jø†rÏ
jj»†rÐ
h‚XPropTestrÑ
†rÒ
j©jІrÓ
j³X"hello"rÔ
†rÕ
j©jÙ†rÖ
j©j¿†r×
jjÁ†rØ
jX	
	rÙ
†rÚ
h‚XwriteflnrÛ
†rÜ
j©jІrÝ
h‚jÌ
†rÞ
j©jÙ†rß
j©j¿†rà
jjÁ†rá
jjɆrâ
h‚jÌ
†rã
j©jó†rä
h‚jõ†rå
jj»†ræ
j©jø†rç
jj»†rè
j“X46ré
†rê
j©j¿†rë
jjÁ†rì
jjɆrí
h‚jÌ
†rî
j©jó†rï
h‚Xyrð
†rñ
jj»†rò
j©jø†ró
jj»†rô
j“X123rõ
†rö
j©j¿†r÷
jjÁ†rø
jjɆrù
h‚jÌ
†rú
j©jó†rû
h‚jõ†rü
jj»†rý
j©jø†rþ
jj»†rÿ
h‚jÌ
†rj©jó†rh‚jõ†rjj»†rj©X+r†rjj»†rh‚jÌ
†rj©jó†rh‚jð
†r	j©j¿†r
jjÁ†rjjɆrh‚Xwriteflnr
†rj©jІrh‚jÌ
†rj©jÙ†rj©j¿†rjjÁ†rjX	
	r†rjiX)// Try to access a nonexistent property.
r†rjjɆrhXtryr†rjjÁ†rjX		r†rh‚jÌ
†rj©jó†rh‚Xnamer †r!jj»†r"j©jø†r#jj»†r$j³X"crap"r%†r&j©j¿†r'jjÁ†r(jjɆr)hXcatchr*†r+j©jІr,h‚Xer-†r.j©jÙ†r/jjÁ†r0jjɆr1j©jƆr2jjÁ†r3jX		r4†r5h‚Xwriteflnr6†r7j©jІr8j³X
"caught: "r9†r:j©jÔ†r;jj»†r<h‚j-†r=j©jÙ†r>j©j¿†r?jjÁ†r@jX		rA†rBh‚XwriteflnrC†rDj©jІrEh‚XgetTracebackrF†rGj©jІrHj©jÙ†rIj©jÙ†rJj©j¿†rKjjÁ†rLjjɆrMj©j!†rNjjÁ†rOjX	
	rP†rQh‚XwriteflnrR†rSj©jІrTj©jÙ†rUj©j¿†rVjjÁ†rWj©j!†rXjjÁ†rYjjÁ†rZjiX// Some container classes.
r[†r\j©jƆr]jjÁ†r^jjɆr_hXclassr`†rajj»†rbh‚XPQrc†rdjjÁ†rejjɆrfj©jƆrgjjÁ†rhjX		ri†rjh‚XmDatark†rlj©j¿†rmjjÁ†rnjX		ro†rph‚XmLengthrq†rrjj»†rsj©jø†rtjj»†ruj“jD†rvj©j¿†rwjjÁ†rxjX	
		ry†rzhXfunctionr{†r|jj»†r}h‚Xconstructorr~†rj©jІr€j©jÙ†rjjÁ†r‚jX		rƒ†r„j©jƆr…jjÁ†r†jX			r‡†rˆh‚XmDatar‰†rŠjj»†r‹j©jø†rŒjj»†rh‚Xarrayrކrj©jó†rh‚Xnewr‘†r’j©jІr“j“X15r”†r•j©jÙ†r–j©j¿†r—jjÁ†r˜jX		r™†ršj©j!†r›jjÁ†rœjX	
		r†ržhXfunctionrŸ†r jj»†r¡h‚Xinsertr¢†r£j©jІr¤h‚Xdatar¥†r¦j©jÙ†r§jjÁ†r¨jX		r©†rªj©jƆr«jjÁ†r¬jX			r­†r®h‚XresizeArrayr¯†r°j©jІr±j©jÙ†r²j©j¿†r³jjÁ†r´jX			rµ†r¶h‚XmDatar·†r¸j©jB†r¹h‚XmLengthrº†r»j©jF†r¼jj»†r½j©jø†r¾jj»†r¿h‚XdatarÀ†rÁj©j¿†rÂjjÁ†rÃjX	
			rĆrÅhXlocalrƆrÇjj»†rÈh‚XindexrɆrÊjj»†rËj©jø†rÌjj»†rÍh‚XmLengthrΆrÏj©j¿†rÐjjÁ†rÑjX			rÒ†rÓhXlocalrÔ†rÕjj»†rÖh‚XparentIndexr׆rØjj»†rÙj©jø†rÚjj»†rÛj©jІrÜh‚Xindexr݆rÞjj»†rßj©j¯†ràjj»†ráj“j<†râj©jÙ†rãjj»†räj©X/rå†ræjj»†rçj“jE†rèj©j¿†réjjÁ†rêjX	
			rë†rìhXwhilerí†rîj©jІrïh‚Xindexrð†rñjj»†ròj©j¡†rójj»†rôj“jD†rõjj»†röj©X&&r÷†røjj»†rùh‚XmDatarú†rûj©jB†rüh‚XparentIndexrý†rþj©jF†rÿjj»†rj©j¡†rjj»†rh‚XmDatar†rj©jB†rh‚Xindexr†rj©jF†rj©jÙ†r	jjÁ†r
jX			r†rj©jƆr
jjÁ†rjX				r†rhXlocalr†rjj»†rh‚Xtempr†rjj»†rj©jø†rjj»†rh‚XmDatar†rj©jB†rh‚XparentIndexr†rj©jF†rj©j¿†rjjÁ†r jX				r!†r"h‚XmDatar#†r$j©jB†r%h‚XparentIndexr&†r'j©jF†r(jj»†r)j©jø†r*jj»†r+h‚XmDatar,†r-j©jB†r.h‚Xindexr/†r0j©jF†r1j©j¿†r2jjÁ†r3jX				r4†r5h‚XmDatar6†r7j©jB†r8h‚Xindexr9†r:j©jF†r;jj»†r<j©jø†r=jj»†r>h‚Xtempr?†r@j©j¿†rAjjÁ†rBjX	
				rC†rDh‚XindexrE†rFjj»†rGj©jø†rHjj»†rIh‚XparentIndexrJ†rKj©j¿†rLjjÁ†rMjX				rN†rOh‚XparentIndexrP†rQjj»†rRj©jø†rSjj»†rTj©jІrUh‚XindexrV†rWjj»†rXj©j¯†rYjj»†rZj“j<†r[j©jÙ†r\jj»†r]j©jå†r^jj»†r_j“jE†r`j©j¿†rajjÁ†rbjX			rc†rdj©j!†rejjÁ†rfjX			
			rg†rhh‚XmLengthri†rjjj»†rkj©X+=rl†rmjj»†rnj“j<†roj©j¿†rpjjÁ†rqjX		rr†rsj©j!†rtjjÁ†rujX	
		rv†rwhXfunctionrx†ryjj»†rzh‚Xremover{†r|j©jІr}j©jÙ†r~jjÁ†rjX		r€†rj©jƆr‚jjÁ†rƒjX			r„†r…hXifr††r‡j©jІrˆh‚XmLengthr‰†rŠjj»†r‹j©X==rŒ†rjj»†rŽj“jD†rj©jÙ†rjjÁ†r‘jX				r’†r“hXthrowr”†r•jj»†r–j³X""PQ.remove() - No items to remove"r—†r˜j©j¿†r™jjÁ†ršjX	
			r›†rœhXlocalr†ržjj»†rŸh‚Xdatar †r¡jj»†r¢j©jø†r£jj»†r¤h‚XmDatar¥†r¦j©jB†r§j“jD†r¨j©jF†r©j©j¿†rªjjÁ†r«jX			r¬†r­h‚XmLengthr®†r¯jj»†r°j©X-=r±†r²jj»†r³j“j<†r´j©j¿†rµjjÁ†r¶jX			r·†r¸h‚XmDatar¹†rºj©jB†r»j“jD†r¼j©jF†r½jj»†r¾j©jø†r¿jj»†rÀh‚XmDatarÁ†rÂj©jB†rÃh‚XmLengthrÄ†rÅj©jF†rÆj©j¿†rÇjjÁ†rÈjX			
			rÉ†rÊhXlocalrË†rÌjj»†rÍh‚XindexrÎ†rÏjj»†rÐj©jø†rÑjj»†rÒj“jD†rÓj©j¿†rÔjjÁ†rÕjX			rÖ†r×hXlocalrØ†rÙjj»†rÚh‚XleftrÛ†rÜjj»†rÝj©jø†rÞjj»†rßj“j<†ràj©j¿†rájjÁ†râjX			rã†rähXlocalrå†ræjj»†rçh‚Xrightrè†réjj»†rêj©jø†rëjj»†rìj“jE†ríj©j¿†rîjjÁ†rïjX	
			rð†rñhXwhilerò†rój©jІrôh‚Xindexrõ†röjj»†r÷j©X<rø†rùjj»†rúh‚XmLengthrû†rüj©jÙ†rýjjÁ†rþjX			rÿ†r
j©jƆr
jjÁ†r
jX				r
†r
hXlocalr
†r
jjȠr
h‚Xsmallerr
†r	
j©j¿†r

jjÁ†r
jX					
				r
†r

hXifr
†r
j©jІr
h‚Xleftr
†r
jjȠr
j©X>=r
†r
jjȠr
h‚XmLengthr
†r
j©jÙ†r
jjÁ†r
jX				r
†r
j©jƆr
jjÁ†r
jX					r
†r 
hXifr!
†r"
j©jІr#
h‚Xrightr$
†r%
jjȠr&
j©X>=r'
†r(
jjȠr)
h‚XmLengthr*
†r+
j©jÙ†r,
jjÁ†r-
jX						r.
†r/
hXbreakr0
†r1
j©j¿†r2
jjÁ†r3
jX					r4
†r5
hXelser6
†r7
jjÁ†r8
jX						r9
†r:
h‚Xsmallerr;
†r<
jjȠr=
j©jø†r>
jjȠr?
h‚Xrightr@
†rA
j©j¿†rB
jjÁ†rC
jX				rD
†rE
j©j!†rF
jjÁ†rG
jX				rH
†rI
hXelserJ
†rK
jjÁ†rL
jX				rM
†rN
j©jƆrO
jjÁ†rP
jX					rQ
†rR
hXifrS
†rT
j©jІrU
h‚XrightrV
†rW
jjȠrX
j©X>=rY
†rZ
jjȠr[
h‚XmLengthr\
†r]
j©jÙ†r^
jjÁ†r_
jX						r`
†ra
h‚Xsmallerrb
†rc
jjȠrd
j©jø†re
jjȠrf
h‚Xleftrg
†rh
j©j¿†ri
jjÁ†rj
jX					rk
†rl
hXelserm
†rn
jjÁ†ro
jX					rp
†rq
j©jƆrr
jjÁ†rs
jX						rt
†ru
hXifrv
†rw
j©jІrx
h‚XmDatary
†rz
j©jB†r{
h‚Xleftr|
†r}
j©jF†r~
jjȠr
j©jø†r€
jj»†r
h‚XmDatar‚
†rƒ
j©jB†r„
h‚Xrightr…
†r†
j©jF†r‡
j©jÙ†rˆ
jjÁ†r‰
jX							rŠ
†r‹
h‚XsmallerrŒ
†r
jj»†rŽ
j©jø†r
jj»†r
h‚Xleftr‘
†r’
j©j¿†r“
jjÁ†r”
jX						r•
†r–
hXelser—
†r˜
jjÁ†r™
jX							rš
†r›
h‚Xsmallerrœ
†r
jj»†rž
j©jø†rŸ
jj»†r 
h‚Xrightr¡
†r¢
j©j¿†r£
jjÁ†r¤
jX					r¥
†r¦
j©j!†r§
jjÁ†r¨
jX				r©
†rª
j©j!†r«
jjÁ†r¬
jX	
				r­
†r®
hXifr¯
†r°
j©jІr±
h‚XmDatar²
†r³
j©jB†r´
h‚Xindexrµ
†r¶
j©jF†r·
jj»†r¸
j©j¡†r¹
jj»†rº
h‚XmDatar»
†r¼
j©jB†r½
h‚Xsmallerr¾
†r¿
j©jF†rÀ
j©jÙ†rÁ
jjÁ†rÂ
jX				rÃ
†rÄ
j©jƆrÅ
jjÁ†rÆ
jX					rÇ
†rÈ
hXlocalrÉ
†rÊ
jj»†rË
h‚XtemprÌ
†rÍ
jj»†rÎ
j©jø†rÏ
jj»†rÐ
h‚XmDatarÑ
†rÒ
j©jB†rÓ
h‚XindexrÔ
†rÕ
j©jF†rÖ
j©j¿†r×
jjÁ†rØ
jX					rÙ
†rÚ
h‚XmDatarÛ
†rÜ
j©jB†rÝ
h‚XindexrÞ
†rß
j©jF†rà
jj»†rá
j©jø†râ
jj»†rã
h‚XmDatarä
†rå
j©jB†ræ
h‚Xsmallerrç
†rè
j©jF†ré
j©j¿†rê
jjÁ†rë
jX					rì
†rí
h‚XmDatarî
†rï
j©jB†rð
h‚Xsmallerrñ
†rò
j©jF†ró
jj»†rô
j©jø†rõ
jj»†rö
h‚Xtempr÷
†rø
j©j¿†rù
jjÁ†rú
jX					
					rû
†rü
h‚Xindexrý
†rþ
jj»†rÿ
j©jø†rjj»†rh‚Xsmallerr†rj©j¿†rjjÁ†rjX					r†rh‚Xleftr†r	jj»†r
j©jø†rjj»†rj©jІr
h‚Xindexr†rjj»†rj©X*r†rjj»†rj“jE†rj©jÙ†rjj»†rj©j†rjj»†rj“j<†rj©j¿†rjjÁ†rjX					r†rh‚Xrightr†rjj»†r j©jø†r!jj»†r"h‚Xleftr#†r$jj»†r%j©j†r&jj»†r'j“j<†r(j©j¿†r)jjÁ†r*jX				r+†r,j©j!†r-jjÁ†r.jX				r/†r0hXelser1†r2jjÁ†r3jX					r4†r5hXbreakr6†r7j©j¿†r8jjÁ†r9jX			r:†r;j©j!†r<e(jjÁ†r=jX			
			r>†r?hXreturnr@†rAjj»†rBh‚XdatarC†rDj©j¿†rEjjÁ†rFjX		rG†rHj©j!†rIjjÁ†rJjX		
		rK†rLhXfunctionrM†rNjj»†rOh‚XresizeArrayrP†rQj©jІrRj©jÙ†rSjjÁ†rTjX		rU†rVj©jƆrWjjÁ†rXjX			rY†rZhXifr[†r\j©jІr]h‚XmLengthr^†r_jj»†r`j©X>=ra†rbjj»†rcj©X#rd†reh‚XmDatarf†rgj©jÙ†rhjjÁ†rijX				rj†rkh‚XmDatarl†rmj©jó†rnh‚Xlengthro†rpj©jІrqj©jІrrj©jd†rsh‚XmDatart†rujj»†rvj©j†rwjj»†rxj“j<†ryj©jÙ†rzjj»†r{j©j†r|jj»†r}j“jE†r~jj»†rj©j¯†r€jj»†rj“j<†r‚j©jÙ†rƒj©j¿†r„jjÁ†r…jX		r††r‡j©j!†rˆjjÁ†r‰jX		
		rІr‹hXfunctionrŒ†rjj»†rŽh‚XhasDatar†rj©jІr‘j©jÙ†r’jjÁ†r“jX		r”†r•j©jƆr–jjÁ†r—jX			r˜†r™hXreturnrš†r›jj»†rœh‚XmLengthr†ržjj»†rŸj©X!=r †r¡jj»†r¢j“jD†r£j©j¿†r¤jjÁ†r¥jX		r¦†r§j©j!†r¨jjÁ†r©jjɆrªj©j!†r«jjÁ†r¬jX	
	r­†r®hXclassr¯†r°jj»†r±h‚XStackr²†r³jjÁ†r´jjɆrµj©jƆr¶jjÁ†r·jX		r¸†r¹h‚XmHeadrº†r»jj»†r¼j©jø†r½jj»†r¾h5Xnullr¿†rÀj©j¿†rÁjjÁ†rÂjX	
		rÆrÄhXfunctionrņrÆjj»†rÇh‚XpushrȆrÉj©jІrÊh‚XdatarˆrÌj©jÙ†rÍjjÁ†rÎjX		rφrÐj©jƆrÑjjÁ†rÒjX			rÓ†rÔhXlocalrÕ†rÖjj»†r×h‚jö†rØjj»†rÙj©jø†rÚjj»†rÛj©jƆrÜjj»†rÝh‚XdatarÞ†rßjj»†ràj©jø†rájj»†râh‚Xdatarã†räj©jÔ†råjj»†ræh‚Xnextrç†rèjj»†réj©jø†rêjj»†rëh‚XmHeadrì†ríjj»†rîj©j!†rïj©j¿†rðjjÁ†rñjX			rò†róh‚XmHeadrô†rõjj»†röj©jø†r÷jj»†røh‚jö†rùj©j¿†rújjÁ†rûjX		rü†rýj©j!†rþjjÁ†rÿjX		
		r†rhXfunctionr†rjj»†rh‚Xpopr†rj©jІrj©jÙ†rjjÁ†r	jX		r
†rj©jƆrjjÁ†r
jX			r†rhXifr†rj©jІrh‚XmHeadr†rjj»†rhXisr†rjj»†rh5Xnullr†rj©jÙ†rjjÁ†rjX				r†rhXthrowr†r jj»†r!j³X"Stack.pop() - No items to pop"r"†r#j©j¿†r$jjÁ†r%jX	
			r&†r'hXlocalr(†r)jj»†r*h‚Xitemr+†r,jj»†r-j©jø†r.jj»†r/h‚XmHeadr0†r1j©j¿†r2jjÁ†r3jX			r4†r5h‚XmHeadr6†r7jj»†r8j©jø†r9jj»†r:h‚XmHeadr;†r<j©jó†r=h‚Xnextr>†r?j©j¿†r@jjÁ†rAjX			
			rB†rChXreturnrD†rEjj»†rFh‚XitemrG†rHj©jó†rIh‚XdatarJ†rKj©j¿†rLjjÁ†rMjX		rN†rOj©j!†rPjjÁ†rQjX	
		rR†rShXfunctionrT†rUjj»†rVh‚XhasDatarW†rXj©jІrYj©jÙ†rZjjÁ†r[jX		r\†r]j©jƆr^jjÁ†r_jX			r`†rahXreturnrb†rcjj»†rdh‚XmHeadre†rfjj»†rgj©jΆrhhXisri†rjjj»†rkh5Xnullrl†rmj©j¿†rnjjÁ†rojX		rp†rqj©j!†rrjjÁ†rsjjɆrtj©j!†rujjÁ†rvjX	
	rw†rxhXclassry†rzjj»†r{h‚XQueuer|†r}jjÁ†r~jjɆrj©jƆr€jjÁ†rjX		r‚†rƒh‚XmHeadr„†r…jj»†r†j©jø†r‡jj»†rˆh5Xnullr‰†rŠj©j¿†r‹jjÁ†rŒjX		r†rŽh‚XmTailr†rjj»†r‘j©jø†r’jj»†r“h5Xnullr”†r•j©j¿†r–jjÁ†r—jX	
		r˜†r™hXfunctionrš†r›jj»†rœh‚Xpushr†ržj©jІrŸh‚Xdatar †r¡j©jÙ†r¢jjÁ†r£jX		r¤†r¥j©jƆr¦jjÁ†r§jX			r¨†r©hXlocalrª†r«jj»†r¬h‚jö†r­jj»†r®j©jø†r¯jj»†r°j©jƆr±jj»†r²h‚Xdatar³†r´jj»†rµj©jø†r¶jj»†r·h‚Xdatar¸†r¹j©jÔ†rºjj»†r»h‚Xnextr¼†r½jj»†r¾j©jø†r¿jj»†rÀh5XnullrÁ†rÂjj»†rÃj©j!†rÄj©j¿†rÅjjÁ†rÆjX	
			rdžrÈhXifrɆrÊj©jІrËh‚XmTailr̆rÍjj»†rÎhXisrφrÐjj»†rÑh5XnullrÒ†rÓj©jÙ†rÔjjÁ†rÕjX			rÖ†r×j©jƆrØjjÁ†rÙjX				rÚ†rÛh‚XmHeadr܆rÝjj»†rÞj©jø†rßjj»†ràh‚jö†ráj©j¿†râjjÁ†rãjX				rä†råh‚XmTailræ†rçjj»†rèj©jø†réjj»†rêh‚jö†rëj©j¿†rìjjÁ†ríjX			rî†rïj©j!†rðjjÁ†rñjX			rò†róhXelserô†rõjjÁ†röjX			r÷†røj©jƆrùjjÁ†rújX				rû†rüh‚XmTailrý†rþj©jó†rÿh‚Xnextr†rjj»†rj©jø†rjj»†rh‚jö†rj©j¿†rjjÁ†rjX				r†r	h‚XmTailr
†rjj»†rj©jø†r
jj»†rh‚jö†rj©j¿†rjjÁ†rjX			r†rj©j!†rjjÁ†rjX		r†rj©j!†rjjÁ†rjX		
		r†rhXfunctionr†rjj»†rh‚Xpopr†r j©jІr!j©jÙ†r"jjÁ†r#jX		r$†r%j©jƆr&jjÁ†r'jX			r(†r)hXifr*†r+j©jІr,h‚XmTailr-†r.jj»†r/hXisr0†r1jj»†r2h5Xnullr3†r4j©jÙ†r5jjÁ†r6jX				r7†r8hXthrowr9†r:jj»†r;j³X"Queue.pop() - No items to pop"r<†r=j©j¿†r>jjÁ†r?jX				
			r@†rAhXlocalrB†rCjj»†rDh‚XitemrE†rFjj»†rGj©jø†rHjj»†rIh‚XmHeadrJ†rKj©j¿†rLjjÁ†rMjX			rN†rOh‚XmHeadrP†rQjj»†rRj©jø†rSjj»†rTh‚XmHeadrU†rVj©jó†rWh‚XnextrX†rYj©j¿†rZjjÁ†r[jX			
			r\†r]hXifr^†r_j©jІr`h‚XmHeadra†rbjj»†rchXisrd†rejj»†rfh5Xnullrg†rhj©jÙ†rijjÁ†rjjX				rk†rlh‚XmTailrm†rnjj»†roj©jø†rpjj»†rqh5Xnullrr†rsj©j¿†rtjjÁ†rujX				
			rv†rwhXreturnrx†ryjj»†rzh‚Xitemr{†r|j©jó†r}h‚Xdatar~†rj©j¿†r€jjÁ†rjX		r‚†rƒj©j!†r„jjÁ†r…jX		
		r††r‡hXfunctionrˆ†r‰jj»†rŠh‚XhasDatar‹†rŒj©jІrj©jÙ†rŽjjÁ†rjX		r†r‘j©jƆr’jjÁ†r“jX			r”†r•hXreturnr–†r—jj»†r˜h‚XmHeadr™†ršjj»†r›j©jΆrœhXisr†ržjj»†rŸh5Xnullr †r¡j©j¿†r¢jjÁ†r£jX		r¤†r¥j©j!†r¦jjÁ†r§jjɆr¨j©j!†r©jjÁ†rªjX	
	r«†r¬h‚Xwriteflnr­†r®j©jІr¯j³X"Priority queue (heap)"r°†r±j©jÙ†r²j©j¿†r³jjÁ†r´jX	
	rµ†r¶hXlocalr·†r¸jj»†r¹h‚XprioQrº†r»jj»†r¼j©jø†r½jj»†r¾h‚XPQr¿†rÀj©jІrÁj©jÙ†rÂj©j¿†rÃjjÁ†rÄjX	
	rņrÆhXforrdžrÈj©jІrÉh‚j·†rÊjj»†rËj©jµ†rÌjj»†rÍj“jD†rÎjj»†rÏj©X..rІrÑjj»†rÒj“X10rÓ†rÔj©jÙ†rÕjjÁ†rÖjX		r׆rØh‚XprioQrÙ†rÚj©jó†rÛh‚Xinsertr܆rÝj©jІrÞh‚Xmathr߆ràj©jó†ráh‚Xrandrâ†rãj©jІräj“jD†råj©jÔ†ræjj»†rçj“X20rè†réj©jÙ†rêj©jÙ†rëj©j¿†rìjjÁ†ríjX	
	rî†rïhXwhilerð†rñj©jІròh‚XprioQró†rôj©jó†rõh‚XhasDatarö†r÷j©jІrøj©jÙ†rùj©jÙ†rújjÁ†rûjX		rü†rýh‚Xwriteflnrþ†rÿj©jІrh‚XprioQr†rj©jó†rh‚Xremover†rj©jІrj©jÙ†rj©jÙ†rj©j¿†r	jjÁ†r
jX		
	r†rh‚Xwriteflnr
†rj©jІrj©jÙ†rj©j¿†rjjÁ†rjjɆrh‚Xwriteflnr†rj©jІrj³X"Stack"r†rj©jÙ†rj©j¿†rjjÁ†rjX	
	r†rhXlocalr†rjj»†r h‚Xstackr!†r"jj»†r#j©jø†r$jj»†r%h‚XStackr&†r'j©jІr(j©jÙ†r)j©j¿†r*jjÁ†r+jX	
	r,†r-hXforr.†r/j©jІr0h‚j·†r1jj»†r2j©jµ†r3jj»†r4j“jD†r5jj»†r6j©X..r7†r8jj»†r9j“jφr:j©jÙ†r;jjÁ†r<jX		r=†r>h‚Xstackr?†r@j©jó†rAh‚XpushrB†rCj©jІrDh‚j·†rEjj»†rFj©j†rGjj»†rHj“j<†rIj©jÙ†rJj©j¿†rKjjÁ†rLjX	
	rM†rNhXwhilerO†rPj©jІrQh‚XstackrR†rSj©jó†rTh‚XhasDatarU†rVj©jІrWj©jÙ†rXj©jÙ†rYjjÁ†rZjX		r[†r\h‚Xwriteflnr]†r^j©jІr_h‚Xstackr`†raj©jó†rbh‚Xpoprc†rdj©jІrej©jÙ†rfj©jÙ†rgj©j¿†rhjjÁ†rijX	
	rj†rkh‚Xwriteflnrl†rmj©jІrnj©jÙ†roj©j¿†rpjjÁ†rqjjɆrrh‚Xwriteflnrs†rtj©jІruj³X"Queue"rv†rwj©jÙ†rxj©j¿†ryjjÁ†rzjX	
	r{†r|hXlocalr}†r~jj»†rh‚Xqueuer€†rjj»†r‚j©jø†rƒjj»†r„h‚XQueuer…†r†j©jІr‡j©jÙ†rˆj©j¿†r‰jjÁ†rŠjX	
	r‹†rŒhXforr†rŽj©jІrh‚j·†rjj»†r‘j©jµ†r’jj»†r“j“jD†r”jj»†r•j©X..r–†r—jj»†r˜j“jφr™j©jÙ†ršjjÁ†r›jX		rœ†rh‚Xqueuerž†rŸj©jó†r h‚Xpushr¡†r¢j©jІr£h‚j·†r¤jj»†r¥j©j†r¦jj»†r§j“j<†r¨j©jÙ†r©j©j¿†rªjjÁ†r«jX	
	r¬†r­hXwhiler®†r¯j©jІr°h‚Xqueuer±†r²j©jó†r³h‚XhasDatar´†rµj©jІr¶j©jÙ†r·j©jÙ†r¸jjÁ†r¹jX		rº†r»h‚Xwriteflnr¼†r½j©jІr¾h‚Xqueuer¿†rÀj©jó†rÁh‚Xpopr†rÃj©jІrÄj©jÙ†rÅj©jÙ†rÆj©j¿†rÇjjÁ†rÈjX	
	rɆrÊh‚XwriteflnrˆrÌj©jІrÍj©jÙ†rÎj©j¿†rÏjjÁ†rÐj©j!†rÑjjÁ†rÒjjÁ†rÓjiX// opApply tests.
rÔ†rÕj©jƆrÖjjÁ†r×jjɆrØhXclassrÙ†rÚjj»†rÛh‚XTestr܆rÝjjÁ†rÞjjɆrßj©jƆràjjÁ†rájX		râ†rãh‚XmDatarä†råjj»†ræj©jø†rçjj»†rèj©jB†réj“X4rê†rëj©jÔ†rìjj»†ríj“jφrîj©jÔ†rïjj»†rðj“X6rñ†ròj©jF†rój©j¿†rôjjÁ†rõjX	
		rö†r÷hXfunctionrø†rùjj»†rúh‚XopApplyrû†rüj©jІrýh‚Xextrarþ†rÿj©jÙ†rjjÁ†rjX		r†rj©jƆrjjÁ†rjX			r†rhXifr†r	j©jІr
h‚XisStringr†rj©jІr
h‚Xextrar†rj©jÙ†rjj»†rj©X&&r†rjj»†rh‚Xextrar†rjj»†rj©X==r†rjj»†rj³X	"reverse"r†rj©jÙ†rjjÁ†rjX			r†r j©jƆr!jjÁ†r"jX				r#†r$hXlocalr%†r&jj»†r'hXfunctionr(†r)jj»†r*h‚Xiterator_reverser+†r,j©jІr-h‚Xindexr.†r/j©jÙ†r0jjÁ†r1jX				r2†r3j©jƆr4jjÁ†r5jX					r6†r7h‚Xindexr8†r9j©X--r:†r;j©j¿†r<jjÁ†r=jX					
					r>†r?hXifr@†rAj©jІrBh‚XindexrC†rDjj»†rEj©jø†rFjj»†rGj“jD†rHj©jÙ†rIjjÁ†rJjX						rK†rLhXreturnrM†rNj©j¿†rOjjÁ†rPjX						
					rQ†rRhXreturnrS†rTjj»†rUh‚XindexrV†rWj©jÔ†rXjj»†rYh‚XmDatarZ†r[j©jB†r\h‚Xindexr]†r^j©jF†r_j©j¿†r`jjÁ†rajX				rb†rcj©j!†rdjjÁ†rejX	
				rf†rghXreturnrh†rijj»†rjh‚Xiterator_reverserk†rlj©jÔ†rmjj»†rnhXthisro†rpj©jÔ†rqjj»†rrj©jd†rsh‚XmDatart†ruj©j¿†rvjjÁ†rwjX			rx†ryj©j!†rzjjÁ†r{jX			r|†r}hXelser~†rjjÁ†r€jX			r†r‚j©jƆrƒjjÁ†r„jX				r…†r†hXlocalr‡†rˆjj»†r‰hXfunctionrІr‹jj»†rŒh‚Xiteratorr†rŽj©jІrh‚Xindexr†r‘j©jÙ†r’jjÁ†r“jX				r”†r•j©jƆr–jjÁ†r—jX					r˜†r™h‚Xindexrš†r›j©X++rœ†rj©j¿†ržjjÁ†rŸjX	
					r †r¡hXifr¢†r£j©jІr¤h‚Xindexr¥†r¦jj»†r§j©X>=r¨†r©jj»†rªj©jd†r«h‚XmDatar¬†r­j©jÙ†r®jjÁ†r¯jX						r°†r±hXreturnr²†r³j©j¿†r´jjÁ†rµjX		
					r¶†r·hXreturnr¸†r¹jj»†rºh‚Xindexr»†r¼j©jÔ†r½jj»†r¾h‚XmDatar¿†rÀj©jB†rÁh‚Xindexr†rÃj©jF†rÄj©j¿†rÅjjÁ†rÆjX				rdžrÈj©j!†rÉjjÁ†rÊjX	
				rˆrÌhXreturnr͆rÎjj»†rÏh‚XiteratorrІrÑj©jÔ†rÒjj»†rÓhXthisrÔ†rÕj©jÔ†rÖjj»†r×j©j¯†rØj“j<†rÙj©j¿†rÚjjÁ†rÛjX			r܆rÝj©j!†rÞjjÁ†rßjX		rà†ráj©j!†râjjÁ†rãjjɆräj©j!†råjjÁ†ræjX	
	rç†rèhXlocalré†rêjj»†rëh‚Xtestrì†ríjj»†rîj©jø†rïjj»†rðh‚XTestrñ†ròj©jІrój©jÙ†rôj©j¿†rõjjÁ†röjX	
	r÷†røhXforeachrù†rúj©jІrûh‚jx†rüj©jÔ†rýjj»†rþh‚j|†rÿj©j¿†rjj»†rh‚Xtestr†rj©jÙ†rjjÁ†rjX		r†rh‚Xwriteflnr†r	j©jІr
j³X"test["r†rj©jÔ†r
jj»†rh‚jx†rj©jÔ†rjj»†rj³X"] = "r†rj©jÔ†rjj»†rh‚j|†rj©jÙ†rj©j¿†rjjÁ†rjX	
	r†rh‚Xwriteflnr†rj©jІrj©jÙ†rj©j¿†r jjÁ†r!jX	
	r"†r#hXforeachr$†r%j©jІr&h‚jx†r'j©jÔ†r(jj»†r)h‚j|†r*j©j¿†r+jj»†r,h‚Xtestr-†r.j©jÔ†r/jj»†r0j³X	"reverse"r1†r2j©jÙ†r3jjÁ†r4jX		r5†r6h‚Xwriteflnr7†r8j©jІr9j³X"test["r:†r;j©jÔ†r<jj»†r=h‚jx†r>j©jÔ†r?jj»†r@j³X"] = "rA†rBj©jÔ†rCjj»†rDh‚j|†rEj©jÙ†rFj©j¿†rGjjÁ†rHjX		
	rI†rJh‚XwriteflnrK†rLj©jІrMj©jÙ†rNj©j¿†rOjjÁ†rPjX	
	rQ†rRh‚XtestrS†rTjj»†rUj©jø†rVjjÁ†rWjjɆrXj©jƆrYjjÁ†rZjX		r[†r\h‚Xforkr]†r^jj»†r_j©jø†r`jj»†raj“jφrbj©jÔ†rcjjÁ†rdjX		re†rfh‚Xkniferg†rhjj»†rij©jø†rjjj»†rkj“X10rl†rmj©jÔ†rnjjÁ†rojX		rp†rqh‚Xspoonrr†rsjj»†rtj©jø†rujj»†rvj³X"hi"rw†rxjjÁ†ryjjɆrzj©j!†r{j©j¿†r|jjÁ†r}jX	
	r~†rhXforeachr€†rj©jІr‚h‚jx†rƒe(j©jÔ†r„jj»†r…h‚j|†r†j©j¿†r‡jj»†rˆh‚Xtestr‰†rŠj©jÙ†r‹jjÁ†rŒjX		r†rŽh‚Xwriteflnr†rj©jІr‘j³X"test["r’†r“j©jÔ†r”jj»†r•h‚jx†r–j©jÔ†r—jj»†r˜j³X"] = "r™†ršj©jÔ†r›jj»†rœh‚j|†rj©jÙ†ržj©j¿†rŸjjÁ†r jX	
	r¡†r¢h‚Xtestr£†r¤jj»†r¥j©jø†r¦jj»†r§j©jB†r¨j“jφr©j©jÔ†rªjj»†r«j“X10r¬†r­j©jÔ†r®jj»†r¯j³X"hi"r°†r±j©jF†r²j©j¿†r³jjÁ†r´jX	
	rµ†r¶h‚Xwriteflnr·†r¸j©jІr¹j©jÙ†rºj©j¿†r»jjÁ†r¼jX	
	r½†r¾hXforeachr¿†rÀj©jІrÁh‚jx†rÂj©jÔ†rÃjj»†rÄh‚j|†rÅj©j¿†rÆjj»†rÇh‚XtestrȆrÉj©jÙ†rÊjjÁ†rËjX		r̆rÍh‚XwriteflnrΆrÏj©jІrÐj³X"test["rцrÒj©jÔ†rÓjj»†rÔh‚jx†rÕj©jÔ†rÖjj»†r×j³X"] = "r؆rÙj©jÔ†rÚjj»†rÛh‚j|†rÜj©jÙ†rÝj©j¿†rÞjjÁ†rßjX	
	rà†ráh‚Xwriteflnrâ†rãj©jІräj©jÙ†råj©j¿†ræjjÁ†rçjX	
	rè†réhXforeachrê†rëj©jІrìh‚jx†ríj©jÔ†rîjj»†rïh‚j|†rðj©j¿†rñjj»†ròh‚Xtestró†rôj©jÔ†rõjj»†röj³X	"reverse"r÷†røj©jÙ†rùjjÁ†rújX		rû†rüh‚Xwriteflnrý†rþj©jІrÿj³X"test["r†rj©jÔ†rjj»†rh‚jx†rj©jÔ†rjj»†rj³X"] = "r†rj©jÔ†r	jj»†r
h‚j|†rj©jÙ†rj©j¿†r
jjÁ†rjX	
	r†rh‚Xwriteflnr†rj©jІrj©jÙ†rj©j¿†rjjÁ†rjX	
	r†rhXforeachr†rj©jІrh‚jx†rj©jÔ†rjj»†rh‚j|†rj©j¿†r jj»†r!j³X"hello"r"†r#j©jÙ†r$jjÁ†r%jX		r&†r'h‚Xwriteflnr(†r)j©jІr*j³X"str["r+†r,j©jÔ†r-jj»†r.h‚jx†r/j©jÔ†r0jj»†r1j³X"] = "r2†r3j©jÔ†r4jj»†r5h‚j|†r6j©jÙ†r7j©j¿†r8jjÁ†r9jX	
	r:†r;h‚Xwriteflnr<†r=j©jІr>j©jÙ†r?j©j¿†r@jjÁ†rAjX	
	rB†rChXforeachrD†rEj©jІrFh‚jx†rGj©jÔ†rHjj»†rIh‚j|†rJj©j¿†rKjj»†rLj³X"hello"rM†rNj©jÔ†rOjj»†rPj³X	"reverse"rQ†rRj©jÙ†rSjjÁ†rTjX		rU†rVh‚XwriteflnrW†rXj©jІrYj³X"str["rZ†r[j©jÔ†r\jj»†r]h‚jx†r^j©jÔ†r_jj»†r`j³X"] = "ra†rbj©jÔ†rcjj»†rdh‚j|†rej©jÙ†rfj©j¿†rgjjÁ†rhjX	
	ri†rjh‚Xwriteflnrk†rlj©jІrmj©jÙ†rnj©j¿†rojjÁ†rpj©j!†rqjjÁ†rrjjÁ†rsjiX"// Testing upvalues in for loops.
rt†ruj©jƆrvjjÁ†rwjjɆrxhXlocalry†rzjj»†r{h‚Xarrr|†r}jj»†r~j©jø†rjj»†r€h‚Xarrayr†r‚j©jó†rƒh‚Xnewr„†r…j©jІr†j“X10r‡†rˆj©jÙ†r‰j©j¿†rŠjjÁ†r‹jX	
	rŒ†rhXforrކrj©jІrh‚j·†r‘jj»†r’j©jµ†r“jj»†r”j“jD†r•jj»†r–j©X..r—†r˜jj»†r™j“X10rš†r›j©jÙ†rœjjÁ†rjX		rž†rŸh‚Xarrr †r¡j©jB†r¢h‚j·†r£j©jF†r¤jj»†r¥j©jø†r¦jj»†r§hXfunctionr¨†r©j©jІrªj©jÙ†r«jj»†r¬j©jƆr­jj»†r®hXreturnr¯†r°jj»†r±h‚j·†r²j©j¿†r³jj»†r´j©j!†rµj©j¿†r¶jjÁ†r·jX	
	r¸†r¹h‚Xwriteflnrº†r»j©jІr¼j³X("This should be the values 0 through 9:"r½†r¾j©jÙ†r¿j©j¿†rÀjjÁ†rÁjX	
	r†rÃhXforeachrĆrÅj©jІrÆh‚XfuncrdžrÈj©j¿†rÉjj»†rÊh‚XarrrˆrÌj©jÙ†rÍjjÁ†rÎjX		rφrÐh‚XwriteflnrцrÒj©jІrÓh‚XfuncrÔ†rÕj©jІrÖj©jÙ†r×j©jÙ†rØj©j¿†rÙjjÁ†rÚjX	
	rÛ†rÜh‚Xwriteflnr݆rÞj©jІrßj©jÙ†ràj©j¿†rájjÁ†râj©j!†rãjjÁ†räjjÁ†råjiX// Testing nested functions.
ræ†rçj©jƆrèjjÁ†réjjɆrêhXfunctionrë†rìjj»†ríh‚Xouterrî†rïj©jІrðj©jÙ†rñjjÁ†ròjjɆrój©jƆrôjjÁ†rõjX		rö†r÷hXlocalrø†rùjj»†rúh‚jõ†rûjj»†rüj©jø†rýjj»†rþj“X3rÿ†rj©j¿†rjjÁ†rjX	
		r†rhXfunctionr†rjj»†rh‚Xinnerr†r	j©jІr
j©jÙ†rjjÁ†rjX		r
†rj©jƆrjjÁ†rjX			r†rh‚jõ†rj©X++r†rj©j¿†rjjÁ†rjX			r†rh‚Xwriteflnr†rj©jІrj³X"inner x: "r†rj©jÔ†rjj»†r h‚jõ†r!j©jÙ†r"j©j¿†r#jjÁ†r$jX		r%†r&j©j!†r'jjÁ†r(jX	
		r)†r*h‚Xwriteflnr+†r,j©jІr-j³X"outer x: "r.†r/j©jÔ†r0jj»†r1h‚jõ†r2j©jÙ†r3j©j¿†r4jjÁ†r5jX		r6†r7h‚Xinnerr8†r9j©jІr:j©jÙ†r;j©j¿†r<jjÁ†r=jX		r>†r?h‚Xwriteflnr@†rAj©jІrBj³X"outer x: "rC†rDj©jÔ†rEjj»†rFh‚jõ†rGj©jÙ†rHj©j¿†rIjjÁ†rJjX	
		rK†rLhXreturnrM†rNjj»†rOh‚XinnerrP†rQj©j¿†rRjjÁ†rSjjɆrTj©j!†rUjjÁ†rVjX	
	rW†rXhXlocalrY†rZjj»†r[h‚Xfuncr\†r]jj»†r^j©jø†r_jj»†r`h‚Xouterra†rbj©jІrcj©jÙ†rdj©j¿†rejjÁ†rfjjɆrgh‚Xfuncrh†rij©jІrjj©jÙ†rkj©j¿†rljjÁ†rmjX	
	rn†roh‚Xwriteflnrp†rqj©jІrrj©jÙ†rsj©j¿†rtjjÁ†ruj©j!†rvjjÁ†rwjjÁ†rxjiX// Testing Exceptions.
ry†rzj©jƆr{jjÁ†r|jjɆr}hXfunctionr~†rjj»†r€h‚Xthrowerr†r‚j©jІrƒh‚jõ†r„j©jÙ†r…jjÁ†r†jjɆr‡j©jƆrˆjjÁ†r‰jX		rІr‹hXifrŒ†rj©jІrŽh‚jõ†rjj»†rj©X>=r‘†r’jj»†r“j“jÿ†r”j©jÙ†r•jjÁ†r–jX			r—†r˜hXthrowr™†ršjj»†r›j³X"Sorry, x is too big for me!"rœ†rj©j¿†ržjjÁ†rŸjjɆr j©j!†r¡jjÁ†r¢jX	
	r£†r¤hXfunctionr¥†r¦jj»†r§h‚XtryCatchr¨†r©j©jІrªh‚X
iterationsr«†r¬j©jÙ†r­jjÁ†r®jjɆr¯j©jƆr°jjÁ†r±jX		r²†r³hXtryr´†rµjjÁ†r¶jX		r·†r¸j©jƆr¹jjÁ†rºjX			r»†r¼hXforr½†r¾j©jІr¿h‚j·†rÀjj»†rÁj©jµ†rÂjj»†rÃj“jD†rÄjj»†rÅj©X..rƆrÇjj»†rÈh‚X
iterationsrɆrÊj©jÙ†rËjjÁ†rÌjX			r͆rÎj©jƆrÏjjÁ†rÐjX				rцrÒh‚XwriteflnrÓ†rÔj©jІrÕj³X"tryCatch: "rÖ†r×j©jÔ†rØjj»†rÙh‚j·†rÚj©jÙ†rÛj©j¿†rÜjjÁ†rÝjX				rÞ†rßh‚Xthrowerrà†ráj©jІrâh‚j·†rãj©jÙ†räj©j¿†råjjÁ†ræjX			rç†rèj©j!†réjjÁ†rêjX		rë†rìj©j!†ríjjÁ†rîjX		rï†rðhXcatchrñ†ròj©jІróh‚j-†rôj©jÙ†rõjjÁ†röjX		r÷†røj©jƆrùjjÁ†rújX			rû†rüh‚Xwriteflnrý†rþj©jІrÿj³X"tryCatch caught: "r†rj©jÔ†rjj»†rh‚j-†rj©jÙ†rj©j¿†rjjÁ†rjX			r†r	hXthrowr
†rjj»†rh‚j-†r
j©j¿†rjjÁ†rjX		r†rj©j!†rjjÁ†rjX		r†rhXfinallyr†rjjÁ†rjX			r†rh‚Xwriteflnr†rj©jІrj³X"tryCatch finally"r†rj©jÙ†r j©j¿†r!jjÁ†r"jjɆr#j©j!†r$jjÁ†r%jX	
	r&†r'hXtryr(†r)jjÁ†r*jjɆr+j©jƆr,jjÁ†r-jX		r.†r/h‚XtryCatchr0†r1j©jІr2j“jE†r3j©jÙ†r4j©j¿†r5jjÁ†r6jX		r7†r8h‚XtryCatchr9†r:j©jІr;j“jφr<j©jÙ†r=j©j¿†r>jjÁ†r?jjɆr@j©j!†rAjjÁ†rBjjɆrChXcatchrD†rEj©jІrFh‚j-†rGj©jÙ†rHjjÁ†rIjX		rJ†rKh‚XwriteflnrL†rMj©jІrNj³X
"caught: "rO†rPj©jÔ†rQjj»†rRh‚j-†rSj©jÙ†rTj©j¿†rUjjÁ†rVjX	
	rW†rXh‚XwriteflnrY†rZj©jІr[j©jÙ†r\j©j¿†r]jjÁ†r^j©j!†r_jjÁ†r`jjÁ†rajiX// Testing arrays.
rb†rcj©jƆrdjjÁ†rejjɆrfhXlocalrg†rhjj»†rih‚Xarrayrj†rkjj»†rlj©jø†rmjj»†rnj©jB†roj“X7rp†rqj©jÔ†rrjj»†rsj“X9rt†ruj©jÔ†rvjj»†rwj“jE†rxj©jÔ†ryjj»†rzj“jÿ†r{j©jÔ†r|jj»†r}j“jñ†r~j©jF†rj©j¿†r€jjÁ†rjX	
	r‚†rƒh‚Xarrayr„†r…j©jó†r†h‚Xsortr‡†rˆj©jІr‰j©jÙ†rŠj©j¿†r‹jjÁ†rŒjX	
	r†rŽhXforeachr†rj©jІr‘h‚j·†r’j©jÔ†r“jj»†r”h‚j|†r•j©j¿†r–jj»†r—h‚Xarrayr˜†r™j©jÙ†ršjjÁ†r›jX		rœ†rh‚Xwriteflnrž†rŸj©jІr j³X"arr["r¡†r¢j©jÔ†r£jj»†r¤h‚j·†r¥j©jÔ†r¦jj»†r§j³X"] = "r¨†r©j©jÔ†rªjj»†r«h‚j|†r¬j©jÙ†r­j©j¿†r®jjÁ†r¯jX	
	r°†r±h‚Xarrayr²†r³jj»†r´j©X~=rµ†r¶jj»†r·j©jB†r¸j³X"foo"r¹†rºj©jÔ†r»jj»†r¼j³X"far"r½†r¾j©jF†r¿j©j¿†rÀjjÁ†rÁjX	
	r†rÃh‚XwriteflnrĆrÅj©jІrÆj©jÙ†rÇj©j¿†rÈjjÁ†rÉjX	
	rʆrËhXforeachr̆rÍj©jІrÎh‚j·†rÏj©jÔ†rÐjj»†rÑh‚j|†rÒj©j¿†rÓjj»†rÔh‚XarrayrÕ†rÖj©jÙ†r×jjÁ†rØjX		rÙ†rÚh‚XwriteflnrÛ†rÜj©jІrÝj³X"arr["rÞ†rßj©jÔ†ràjj»†ráh‚j·†râj©jÔ†rãjj»†räj³X"] = "rå†ræj©jÔ†rçjj»†rèh‚j|†réj©jÙ†rêj©j¿†rëjjÁ†rìjX	
	rí†rîh‚Xwriteflnrï†rðj©jІrñj©jÙ†ròj©j¿†rójjÁ†rôj©j!†rõjjÁ†röjjÁ†r÷jiX// Testing vararg functions.
rø†rùj©jƆrújjÁ†rûjjɆrühXfunctionrý†rþjj»†rÿh‚Xvargsr†rj©jІrhXvarargr†rj©jÙ†rjjÁ†rjjɆrj©jƆrjjÁ†r	jX		r
†rhXlocalr†r
jj»†rh‚Xargsr†rjj»†rj©jø†rjj»†rj©jB†rhXvarargr†rj©jF†rj©j¿†rjjÁ†rjX	
		r†rh‚Xwriteflnr†rj©jІrj³X"num varargs: "r†r j©jÔ†r!jj»†r"j©jd†r#h‚Xargsr$†r%j©jÙ†r&j©j¿†r'jjÁ†r(jX	
		r)†r*hXforeachr+†r,j©jІr-h‚j·†r.j©jÔ†r/jj»†r0h‚j|†r1j©j¿†r2jj»†r3h‚Xargsr4†r5j©jÙ†r6jjÁ†r7jX			r8†r9h‚Xwriteflnr:†r;j©jІr<j³X"args["r=†r>j©jÔ†r?jj»†r@h‚j·†rAj©jÔ†rBjj»†rCj³X"] = "rD†rEj©jÔ†rFjj»†rGh‚j|†rHj©jÙ†rIj©j¿†rJjjÁ†rKjjɆrLj©j!†rMjjÁ†rNjX	
	rO†rPh‚XvargsrQ†rRj©jІrSj©jÙ†rTj©j¿†rUjjÁ†rVjX	
	rW†rXh‚XwriteflnrY†rZj©jІr[j©jÙ†r\j©j¿†r]jjÁ†r^jX	
	r_†r`h‚Xvargsra†rbj©jІrcj“jE†rdj©jÔ†rejj»†rfj“jÿ†rgj©jÔ†rhjj»†rij“jφrjj©jÔ†rkjj»†rlj³X"foo"rm†rnj©jÔ†rojj»†rpj³X"bar"rq†rrj©jÙ†rsj©j¿†rtjjÁ†rujX	
	rv†rwh‚Xwriteflnrx†ryj©jІrzj©jÙ†r{j©j¿†r|jjÁ†r}j©j!†r~jjÁ†rjjÁ†r€jiX// Testing switches.
r†r‚j©jƆrƒjjÁ†r„jjɆr…hXforeachr††r‡j©jІrˆh‚j|†r‰j©j¿†rŠjj»†r‹j©jB†rŒj³X"hi"r†rŽj©jÔ†rjj»†rj³X"bye"r‘†r’j©jÔ†r“jj»†r”j³X"foo"r•†r–j©jF†r—j©jÙ†r˜jjÁ†r™jjɆršj©jƆr›jjÁ†rœjX		r†ržhXswitchrŸ†r j©jІr¡h‚j|†r¢j©jÙ†r£jjÁ†r¤jX		r¥†r¦j©jƆr§jjÁ†r¨jX			r©†rªhXcaser«†r¬jj»†r­j³X"hi"r®†r¯j©jµ†r°jjÁ†r±jX				r²†r³h‚Xwriteflnr´†rµj©jІr¶j³X"switched to hi"r·†r¸j©jÙ†r¹j©j¿†rºjjÁ†r»jX				r¼†r½hXbreakr¾†r¿j©j¿†rÀjjÁ†rÁjX				
			r†rÃhXcaserĆrÅjj»†rÆj³X"bye"rdžrÈj©jµ†rÉjjÁ†rÊjX				rˆrÌh‚Xwriteflnr͆rÎj©jІrÏj³X"switched to bye"rІrÑj©jÙ†rÒj©j¿†rÓjjÁ†rÔjX				rÕ†rÖhXbreakr׆rØj©j¿†rÙjjÁ†rÚjX				
			rÛ†rÜhXdefaultr݆rÞj©jµ†rßjjÁ†ràjX				rá†râh‚Xwriteflnrã†räj©jІråj³X"switched to something else"ræ†rçj©jÙ†rèj©j¿†réjjÁ†rêjX				rë†rìhXbreakrí†rîj©j¿†rïjjÁ†rðjX		rñ†ròj©j!†rójjÁ†rôjjɆrõj©j!†röjjÁ†r÷jX	
	rø†rùh‚Xwriteflnrú†rûj©jІrüj©jÙ†rýj©j¿†rþjjÁ†rÿjX	
	r†rhXforeachr†rj©jІrh‚j|†rj©j¿†rjj»†rj©jB†rh5Xnullr	†r
j©jÔ†rjj»†rh5Xfalser
†rj©jÔ†rjj»†rj“j<†rj©jÔ†rjj»†rj\X2.3r†rj©jÔ†rjj»†rjÈX'x'r†rj©jÔ†rjj»†rj³X"hi"r†rj©jF†rj©jÙ†rjjÁ†r jjɆr!j©jƆr"jjÁ†r#jX		r$†r%hXswitchr&†r'j©jІr(h‚j|†r)j©jÙ†r*jjÁ†r+jX		r,†r-j©jƆr.jjÁ†r/jX			r0†r1hXcaser2†r3jj»†r4h5Xnullr5†r6j©jµ†r7jj»†r8h‚Xwriteflnr9†r:j©jІr;j³X"null"r<†r=j©jÙ†r>j©j¿†r?jj»†r@hXbreakrA†rBj©j¿†rCjjÁ†rDjX			rE†rFhXcaserG†rHjj»†rIh5XfalserJ†rKj©jµ†rLjj»†rMh‚XwriteflnrN†rOj©jІrPj³X"false"rQ†rRj©jÙ†rSj©j¿†rTjj»†rUhXbreakrV†rWj©j¿†rXjjÁ†rYjX			rZ†r[hXcaser\†r]jj»†r^j“j<†r_j©jµ†r`jj»†rah‚Xwriteflnrb†rcj©jІrdj³X"1"re†rfj©jÙ†rgj©j¿†rhjj»†rihXbreakrj†rkj©j¿†rljjÁ†rmjX			rn†rohXcaserp†rqjj»†rrj\X2.3rs†rtj©jµ†rujj»†rvh‚Xwriteflnrw†rxj©jІryj³X"2.3"rz†r{j©jÙ†r|j©j¿†r}jj»†r~hXbreakr†r€j©j¿†rjjÁ†r‚jX			rƒ†r„hXcaser…†r†jj»†r‡jÈX'x'rˆ†r‰j©jµ†rŠjj»†r‹h‚XwriteflnrŒ†rj©jІrŽj³X"x"r†rj©jÙ†r‘j©j¿†r’e(jj»†r“hXbreakr”†r•j©j¿†r–jjÁ†r—jX			r˜†r™hXcaserš†r›jj»†rœj³X"hi"r†ržj©jµ†rŸjj»†r h‚Xwriteflnr¡†r¢j©jІr£j³X"hi"r¤†r¥j©jÙ†r¦j©j¿†r§jj»†r¨hXbreakr©†rªj©j¿†r«jjÁ†r¬jX		r­†r®j©j!†r¯jjÁ†r°jjɆr±j©j!†r²jjÁ†r³jX	
	r´†rµh‚Xwriteflnr¶†r·j©jІr¸j©jÙ†r¹j©j¿†rºjjÁ†r»jX	
	r¼†r½hXclassr¾†r¿jj»†rÀh‚jÒ†rÁjjÁ†rÂjjɆrÃj©jƆrÄjjÁ†rÅjX		rƆrÇh‚XmValuerȆrÉj©j¿†rÊjjÁ†rËjX		
		r̆rÍhXthisrΆrÏj©jІrÐh‚XvaluerцrÒj©jÙ†rÓjjÁ†rÔjX		rÕ†rÖj©jƆr×jjÁ†rØjX			rÙ†rÚh‚XmValuerÛ†rÜjj»†rÝj©jø†rÞjj»†rßh‚Xvaluerà†ráj©j¿†râjjÁ†rãjX		rä†råj©j!†ræjjÁ†rçjX	
		rè†réhXfunctionrê†rëjj»†rìh‚XopCmprí†rîj©jІrïh‚Xotherrð†rñj©jÙ†ròjjÁ†rójX		rô†rõj©jƆröjjÁ†r÷jX			rø†rùhXassertrú†rûj©jІrüh‚Xotherrý†rþjj»†rÿhXasr†rjj»†rh‚jÒ†rj©jÙ†rj©j¿†rjjÁ†rjX			r†rhXreturnr	†r
jj»†rh‚XmValuer†r
jj»†rj©X<=>r†rjj»†rh‚Xotherr†rj©jó†rh‚XmValuer†rj©j¿†rjjÁ†rjX		r†rj©j!†rjjÁ†rjjɆrj©j!†rjjÁ†rjX	
	r †r!hXlocalr"†r#jj»†r$h‚Xa1r%†r&jj»†r'j©jø†r(jj»†r)h‚jÒ†r*j©jІr+j“j<†r,j©jÙ†r-j©j¿†r.jjÁ†r/jjɆr0hXlocalr1†r2jj»†r3h‚Xa2r4†r5jj»†r6j©jø†r7jj»†r8h‚jÒ†r9j©jІr:j“jE†r;j©jÙ†r<j©j¿†r=jjÁ†r>jjɆr?hXlocalr@†rAjj»†rBh‚Xa3rC†rDjj»†rEj©jø†rFjj»†rGh‚jÒ†rHj©jІrIj“jÿ†rJj©jÙ†rKj©j¿†rLjjÁ†rMjX	
	rN†rOhXforrP†rQj©jІrRh‚XsrS†rTjj»†rUj©jµ†rVjj»†rWj“j<†rXjj»†rYj©X..rZ†r[jj»†r\j“jê†r]j©jÙ†r^jjÁ†r_jjɆr`j©jƆrajjÁ†rbjX		rc†rdhXlocalre†rfjj»†rgh‚Xssrh†rijj»†rjj©jø†rkjj»†rlh‚jÒ†rmj©jІrnh‚jS†roj©jÙ†rpj©j¿†rqjjÁ†rrjX	
		rs†rthXswitchru†rvj©jІrwh‚Xssrx†ryj©jÙ†rzjjÁ†r{jX		r|†r}j©jƆr~jjÁ†rjX			r€†rhXcaser‚†rƒjj»†r„h‚Xa1r…†r†j©jµ†r‡jjÁ†rˆjX				r‰†rŠh‚Xwriteflnr‹†rŒj©jІrj“j<†rŽj©jÙ†rj©j¿†rjjÁ†r‘jX				r’†r“hXbreakr”†r•j©j¿†r–jjÁ†r—jX	
			r˜†r™hXcaserš†r›jj»†rœh‚Xa2r†ržj©jµ†rŸjjÁ†r jX				r¡†r¢h‚Xwriteflnr£†r¤j©jІr¥j“jE†r¦j©jÙ†r§j©j¿†r¨jjÁ†r©jX				rª†r«hXbreakr¬†r­j©j¿†r®jjÁ†r¯jX	
			r°†r±hXcaser²†r³jj»†r´h‚Xa3rµ†r¶j©jµ†r·jjÁ†r¸jX				r¹†rºh‚Xwriteflnr»†r¼j©jІr½j“jÿ†r¾j©jÙ†r¿j©j¿†rÀjjÁ†rÁjX				r†rÃhXbreakrĆrÅj©j¿†rÆjjÁ†rÇjX		rȆrÉj©j!†rÊjjÁ†rËjjɆrÌj©j!†rÍjjÁ†rÎj©j!†rÏjjÁ†rÐe.