<<

Destructors, Finalizers, and Synchronization

Hans-J. Boehm Internet Systems and Storage Laboratory HP Laboratories Palo Alto HPL-2002-335 December 4th , 2002*

E-mail: [email protected]

destructors, We compare two different facilities for running cleanup actions for finalizers, objects that are about to reach the end of their life. threads, garbage Destructors, such as we find in C++, are invoked synchronously collection when an object goes out of scope. They make it easier to implement cleanup actions for objects of well-known lifetime, especially in the presence of exceptions.

Languages like Java, Modula-3, and C# provide a different kind of "finalization" facility: Cleanup methods may be run when the garbage collector discovers a heap object to be otherwise inaccessible. Unlike C++ destructors, such methods run in a separate thread at some much less well-defined time.

We argue that these are fundamentally different, and potentially complementary, language facilities. We also try to resolve some common misunderstandings about finalization in the process. In particular: 1. The asynchronous nature of finalizers is not just an accident of implementation or a shortcoming of tracing collectors; it is necessary for correctness of client code, fundamentally affects how finalizers must be written, and how finalization facilities should be presented to the user. 2. An object may legitimately be finalized while one of its methods are still running. This should and can be addressed by the language specification and client code.

* Internal Accession Date Only Approved for External Publication To be presented at SIGPLAN-SIGACT Symposium on Principles of Programming Languages, 15-17 January 2003, New Orleans, LA ã Copyright ACM Destructors, Finalizers, and Synchronization

Hans-J. Boehm Hewlett-Packard Laboratories 1501 Page Mill Rd. Palo Alto, CA 94304 Hans [email protected]

ABSTRACT General Terms

¢¡¤£¦¥¨§ ©  ¡ ¥¡ ¡  £¦! ¡"#$¥% & '()*£ ¡ +,'(©- +£. ]I +)%'3 )%¡"@?,(¡")¨

¥%"*$¥% ¥¨/10$¡¦£"*23 +4  ¡5 /¥¨'( ¥6 ¡ £272(¡8¡(9¥¨:2(¡ $¡<;

=>¡" '£¥% "@?A"'£2B +"¡DC(E!GFIH&H&?J  ¡KLM¥%NM¡E"O,(. Keywords

=A¡ + ¥<£Nr? (¡" '£¥% @? C3 + !n< ¥¨ ?x)~  /3 +)¨¡u£¥¨  ¡£¥¨ ?>"O.

£2 ¥%¥%'" OPI2(¡Q R¥%/S0T¡£U)¨¥<¡"¤¥¨'(U¥%V"£¥¨©¡;XWI2¡O6§4 N¨¡

£2 ¥¨(n ¥¨ ?,2( ¡ 

 ¡< "¡ ¥4§ © ¡§Y¡Y£ ¡ +,'(©Z £¥¨(" $¥% ¥¨/10$¡¦£" ¥¨[¡¦ ! . N(¥@I8 !T¡§ ¡?,¡¦"©¡£   O82(¡J© ¡"¡¦£¡&¥% ¡\£¡©(!¥%"@;

]^ ()¨'3 +)¨¡": !NM¡8_M `L ¨abc?3dY¥<'(  .fe¨ag¨h+c?A +EFIi ajc3©( ¥kL,(¡ 1. INTRODUCTION

&¡ ¡¦, N!(4¥¨*lmC  n ¥%oD` £ pOSq¤Fr ¡ +'©6§ ¡2¥<("

WI2¡Y$¥¨  ¥kI)4"¡£¥¨("#¡"£ /¡*¥8§Y¡£f2 (!"§·T¥¨ u ""¥%.

§K OY/¡: '*I2(¡X2¡[)  / )%¡:£¥% ! ¡£¦¥¨ I"£¥kLM¡¦ "# V2(¡ ©¥%/.

£ ()7£ ¡ +'©€£¥<(¡¢I2€¥¨/10$¡¦£"@qQFIH&H­(¡" '£¥% "R +

0T¡£&¥X/¡Y¥%2¡ I"¡ 3 +££¡""/( !¡<;#s  NM¡DFIH&Ht¡" '(£¥¨ "@?

_M `L ¨¸¨dY¥<('  .fe%¸¨FIiBC3 + !n¦¡ "@;

"'(£f2R§Y¡2¥<("U '(RQ Y"¡©3 + @ ¡X2 ¡ +Q U"¥¨§Y¡u§U'£25 ¡""

FIH&HZ(¡" '£¥% "X  ¡ £¦ !¡< '©- £¥¨("&¡\¡£'(¡¢©( §4   O

A¡  .v(¡C(¡D§ ¡;

I2¡¦E &©( ¥¨)% @ §«L~ + p +/ ¡U)¨¥<¡" ¥¨'[¥¨>"£¥%©¡;^WI2¡#© ¡L  )

¢¡  )%'¡&2 I2¡¦"¡  ¡&T' § ¡¦,@ +  !O(!¡¦ ¡@?1 +u©¥¨.

¥¨©(¥¨€"82 ¢FIH&H¹¡" '(£¥¨ "P  ¡4£ ¡ +  !O7'"¡T' ; (

}

¡¦, + ! Ou£¥¨§ ©( ¡§ ¡@  O,?<  ()¨'3 +)¨¡U +£ !¡"@; ¢¡  "¥ Ou¥

2¡¦ ¡8"*"¥¨§ ¡R )¨ ¡¦¡§ ¡*¥¨E2¥kº2(¡OR"2¥%' E/¡8'"¡¦G»$£`;

¡¦"¥¨ LM¡#"¥¨§ ¡&£¦¥¨§ § ¥%D§ "'(¡ "@ +(!()¨"¤ /¥%'VC  n ¥%

l¼3¡"¥%' £¡XdK +3 )%¡§ ¡o*9ag¢%c½;

D2(¡J© ¥<£¦¡""@;xw8©  £'  + @q

dK Ot© ¥%)¨ @ §Y§ )Q  )%'3 +)¨¡"52 4© ¥kL¡t +'¥¨§K £?

) + /3 +)¨¡.¾£¥% ! ¡£¦¡€§ ¡§ ¥% OR§4  )%¡§ ¡6  "¥5©( ¥kL,(¡8¿3•(–M°±À

WI2¡R "O£2 ¥%¥¨'("*3 +' ¡D¥%JC  n¡ ""X(¥¨*0T'"6 

˜šÁ+ ¡ž›:¥K£ ¡ E'©R2(¡ ©R¥%/S0T¡£" "¥%§ ¡§ ¡8/¡¦$¥¨ ¡u£¥¨  ¡£¥%3;

y

£¦£¡ ¥%§ © ¡§Y¡@ ¥¨¤¥¨ V 3"2¥% £¥¨§ ():¥¨( @ £()

s:( !N¨¡D¡" '(£¥¨ "@?>C3 + !n¦¡ "6  ¡K¥%$¡7L,¡A¡| +"Âl;;;Â'.

£¥% ! ¡£¦¥¨ "@z<!>"(¡£¡""@ + O $¥% £¥%  ¡£¡¦""¥¨{£ ¡£¦¥<¡?

© ¡¦£@ /( ¡?1¥%$¡5 ()¨¡ ¥%'"@? +¢)¨¡(¡ @   O¢'((¡£¡""@ + O-;;;

$'( § ¡@ + ! O7 ¡¦£"&2¥kGC(3  n¡ "#§U'"J/¡¤I ¡3?

£ +u£ +'"¡ ¡  @ £:/¡¦23 `L!¥% @?¨©¥<¥¨ I©¡ T¥¨ §4 +£¡

(52¥k|C  n ¥%R £¦! ¡" "2(¥¨' 5/¡*©( ¡"¡¡5¥

pOK©( ¥¨/ ¡§Y"oR»agc?1@ +NM¡4" )¨2 O6¥%'J¥%^£¥%,¡¦\,@?~6"¡£¥¨

2¡:'"¡ @;

¡ ¡Zl LM¥¨uC3 + !n¦¡ "o½;

}

£¥%§ § ¥%tL¡«"u2 X2¡E "O(£f2( ¥¨¥%'"X3 +' ¡4¥¨&C(.

}

3 + !n< ¥¨5"X #£¥¨("¡Ã'¡(£¡ ¥¨A2¡¤'"¡ ¥%& U @ +£)u)  / )%¡

P¥¨/10$¡£¤§4 `OP ¡)%!§4 +¡ O5/¡C  n¡RI2 ¡X¥¨¡¥%

y8}

£¥% ! ¡£¦¥¨ I2£27(¡¡£" )~  / )¨¡8¥¨ Ot + ©¡ ¥<£D¡ L  "@?

"u§Y¡2¥<("5 + ¡¢"  J '()~;tWI2(!"X"2¥%'  (€£ 

(923 UY§ )%2,¤/¡£¥%§ ¡8§ ¥% ¡u'("¡$'( ^  @ +¥¨  I ¡T¡ .

/¡X ( ¡""¡¦D/OX2(¡J  ()¨'3 +)¨¡U"©¡£C£< ¥¨E +§ 8£ ¡

¡(£¡Y£¥%')¡¦ ¡Y'"¡¦ +"J§U'£2 +"J©¥¨""/( !¡

£¥<(¡;

C  n¡ ">£¥¨'(  /¡I ' "O(£f2( ¥¨¥%'" Ou x2¡I©( ¡£"¡V© ¥%)¨ @ §

©¥¨ +&I2£f2 ¢¥¨/10$¡£¦&/¡£ §Y¡ 3 £¦£¡""/ ¡;$Ä¢wpJ2 " + !"¥ ¥<££ +"¥¨3 +  !OK/¡¦¡8£  +!§Y¡K23 +[3C(3  n +!¥%K§¤'("V/¡&'"¡ ?

Categories and Subject Descriptors ¥¨(¡8"2(¥¨' “ `LM¥¨ ¥<£N!()¢EC  n¡ "@;R P¡8©¥%,Y¥¨'Y23 

=:;!e%;ea ‚&ƒk„~ ~ƒk†‡5‡Pˆm‰ ‹Š†(‰ ~Œ †( ~Žcq ]^ )%'3 +)¨¡Fr¥%.

/¥¨2£  +!§Y"U  ¡:I ¥%)~?<2(¥¨'()¨2*2¡[  ¡ !""¥¨§ ¡I2 ^§Y¥¨.

" '(£"# +*~¡ +' ¡"‘“’:”@•–¨—Y˜š™#›+œmMžp–¨Ÿ¡ ¤—¤–M•–MŸ¡ ¡—¤ ¡•œzS=:; ¢~;h

L ¡u/,O£¥%§ § ¥%D  )%'3 +)¨¡#§ © ¡§ ¡¦,@ +¥¨D/(')¨"@;

a £¤xƒ@†(¥ˆm‰ §¦r¨SŽ¡¥‡5Žcqª©k¥¨ @ )%¡«dK  )¨¡¦§ ¡‘­¬>–Mžf®+–MŸ¡

P¡  )%'¡J2 # + !2(¥¨'()¨28C(3 + !n +¥¨D"I @  ¡¦ !O(¡¡¡¦3?¨I"

¯

¨°š°± +™¡œm˜šM• zS=J; ¢;g*a £X¤xƒk†¥ˆm‰r E¦r¨SŽ¡¥‡5ŽcqV² ¥<£¡""*dK +3 +)¨¡.

¥¨T¡6£ !£<  xI2¡4:"J(¡¡(¡3;Iwp42¡¦"¡¤£ +"¡"@?!" /("¡£¡

§Y¡‘­³r´Mž +–MµM›

¥%' € ¡(¡ *2(¡K)  / )%¡¢£¥%  !¡¦£¥¨ X'"¡ ¡""@;t~' 2(¡ § ¥¨ ¡

 2(¥¨')%2QC3 + !n< ¥¨t§ )9"8£¡ @ + OÂ(¡¡ §  ¡?I

"2¥%' D(¥¨I ¡ 8¥ '( ¡ p +/ ¡#© ¥%)¨ @ §Y"@; ©@¥%§ ¡V¥¨12¡V¥¨/("¡ L ¥¨("'(¡  O)&2(!">©3 +©¡ 2 `LM¡V/¡¡

Permission to make digital or hard copies of all or part of this work for © ¡¦L,¥%'" O4§4 (¡ /OK¥¨2¡¦ "@;¤ P¡D ¡§ ©(&¥8©¥%!&¥%'&"'£2

personal or classroom use is granted without fee provided that copies are © ¥% ¥% Nr;QÅS'(YA¡R  ¡8¥¨D `&  ¡8¥¨* +O5©'(/ "2¡9¥% N

not made or distributed for profit or commercial advantage and that copies 23 + 2¥% ¥¨'()¨2 OR(!"£¦'""¡"2¡u§ © £ ¥%"¥¨ 2¥¨"¡u¥¨/("¡ . bear this notice and the full citation on the first page. To copy otherwise, to

republish, to post on servers or to redistribute to lists, requires prior specific L ¥¨("@?r¡2¡ #¥¨R2(¡*I !()4¥¨I£¥%  ¡£Y£¦ !¡U£¥<¡

POPL’03 January 15–17, 2003, New Orleans, Louisiana, USA "¥¨D)% ¥¨'(©"@?r +u !¡¦"" T ¡Ã'¡ O¥¨P ÆMÇmˆmŽ¡¥ÈDˆmÆMÆMÉmƨ„~‡9;

Copyright 2003 ACM 1-58113-628-5/03/0001 ... ¶ 5.00.

23 `LM¡K"¡¦LM¡ @  (L~ +,@ +)¨¡"¥kLM¡ X¡\© ££   "8¥€ tlm¡¦" ¥@Oo 2(¡:'(¡¦  !O)#(¡")¨8¥%S2(¡:C(3  n +!¥%8` £ pO,?{ (u©  £.

§ ¡2(¥<3q '(    O¢¥%52¡*T' pO6¥¨I¡¦"!)%)8"O,"¡¦§ "¤T¥¨ #"O£2 ¥%¥¨'("

C(3 + !n +¥¨3;!Ê

g¨;:Fr p +""^2(¡ @ £¦¡ "^2 ( ¡*£¥¨  ¡¦£ O /OK  "¥U,L¨¥¨N)

2¥¨'()¨2G¥%' 4¥¨/("¡ L ¥¨("¢"2(¥¨' G©¡¦ 23 ©("4/¡R¥¨/L!¥%'"@?

}

"'©¡ £  +"" (¡" '£¥% "@;

2(¡ ¡[!"¥#"2¥% @ )¨¡ ¥¨1¡§ ©(! £ + {¡L!(¡£¦¡ 2 2(¡OK + ¡:(¥¨@;

Ë ¡   O€¡L¨¡ OÂ(¡Ì_M `L 4§ ©( !¡¦§ ¡@ ¥¨t"¡¡§Y"D¥7(! + ! O

h¨;>wp&£ +5/¡*)¨'  @ ¡¡¦523 +X O4"@ £N- + ! ¥<£ +¡9¥¨/10$¡£¦

¡¦\,¡¦£'¡VC  n¡ "A"O,(£f2( ¥¨(¥¨'" O¤$ ¥¨§2¡V)~  /3 +)¨¡.¾£¥%  !¡¦£)

I!  3/¡#¡¦" ¥@O¨¡K¡\S £ OuI2¡K2(¡U¥%/S0T¡£ )¨¥<¡"J¥%'[¥¨

2( ¡  ?%¡LM¡¦ 2¥%')¨2*2(">"A© ¥¨2(/¡ /OU2¡V  )%'3 +)¨¡["©¡£.

"£¥¨©¡;IWI2¡¦ ¡Y":(¥X¥%©©¥% 'Ou¥$¥% )¨¡:¥X§K NM¡U2¡

C(£ ¥¨ ;JWI2¡Y£¦'  ¡*FIi"©¡£C£ +¥¨3aj+cJ +©©¡ + "J¥5 +  !¥k

£   ;

C(3 + !n¡¦ "^¥#/¡ '(*"O,(£f2( ¥¨(¥¨'" OSÍ?%"©¡[¥¨12¡V +£^2 @?

+"V¡ + )¨'¡:/¡ ¥@U?<2"I§4 +NM¡"II   )%¡ Ou§ ©¥%""!/( ¡&¥YI ¡

e¨; "# V©3  £'(    O*§ ©¥¨ @ +,I("@ £¦¡:¥¨S2¡ p +"I©¥¨@?

}

(¡ ( ¥<£fN.¾$ ¡¡AC  n¡ "@; '§U/¡ 1¥¨£¥¨§Y§ ¥¨U§ ¡§ ¥% OJ§4 +.

}

¡" '(£¥¨ "A"!)%C£<  O "§ © $O £¦ !¡< '©¥¨{"@ +£fN4 +  !¥%.

+)¨¡§Y¡r§ © ¡§Y¡@ ¥¨("r$¥% IFIH&HE» ¡ÎšŸ¡ÎIÅS¥<¥%"[ÏÐÑkÒ,Ó%Ô ÕÖ¨ÒM×@½

£ ¡8¥¨/10$¡£"[82(¡J© ¡"¡¦£¡&¥%3¡\£¡©¥%"@;

§ ©( ¡§ ¡V¡""¡   O8"O£2 ¥%¥%'"IC  n ¥%3;

WI2(¡#!""'(¡"* + ¡#£¡ @ ( !Ou¥*/¡¡¦ ['((¡ "¥<¥<E § ¥%)*2(¡

©@(£¡¢u!"8¡ "¡ K¥923 +( !¡¢¥¨/10$¡£¦D£ ¡ '(©t2("8& `O€

+'2(¥¨ "&¥¨A£ ¡J£¥<¡Y23 7 +§ ¥¨()8  ()¨'3 +)¨¡*§ ©( !¡¦§ ¡¥¨ "@;

FIH&H&?<!I"V£¥%§ § ¥¨u¥  O*¥ § ¥kLM¡* O*N!(8¥%r ¡"¥%' £¡u £¦.

 + )¨¡$ @ +£¥¨9¥¨V2¡*C(3 + !n +¥¨9'"¡"U23 +#¡23 `LM¡"¡¡

Ã'"¥¨Y¥* x£¥¨(" '£¥% @? +U2¡£¦¥¨  ¡"©¥%()J¡ +  !¥<£< .

}

LM¥% !L¨¡&'(!¡(¡ @ £¡¦"r'(¡x¥I!("'Ø £¦!¡¦,1"O£2 ¥%n ¥%

¥¨&¥V2¡x¡" '(£¥¨ @;WI2"^ ©©( ¥ +£f2#"S£¦¥¨§ § ¥% OJ ¡T¡  ¡

D2(¡JC  n¡ @;

¥4 +"Klš ¡"¥¨'( £¡u £Ã'(!"¥¨K"V  n ¥%o¥¨ ¤¼ ww¡ag+¢¨c;Vù

}

Wr¥X§K NM¡#2" "£'""¥%6§Y¥¨ ¡U£¥¨(£ ¡¡?A¡UI  [ ""'(§ ¡8

"D ©  £'( p +  OE  '" @ +!L¨¡R (7£¦¥¨§ § ¥%7¡¦\r +§ © ¡?3¡¦.

}

§U' .¾2 ¡ +¡¤¡L! ¥%§ ¡¦,@; "3A¡II!  ("¡¡I/¡ ¥kU?%C  n¡ "

" '£¦¥¨ "¤  ¡&¥%$¡K'("¡8¥ ¡¦ !¡< "¡# ¥<£fN"@;!ú

}

»$ NM¡Us:(!\u")¨3 + "&¥¨ :2  (&  ¡¤,¡¦  '©"@½3¡""¡   OK ¥¨.

WI2'"

('£¡2(¡ Y¥kIR2 ¡ +R¥¨[£¥¨ ¥% p;DWI2'"UL  ¥¨'("Y""'¡"¤/¡.

û

£¦¥¨§ ¡#¡ +"!¡¦ :¥ ¡\©( ¡"" 32( ¡ ("Y + ¡u   ¡ (O8©( ¡"¡@;xË ¥¨(¡

ÜMþ<ÿ¡ £¢¥¤§¦

¥%#¥¨' X""'¡"8"@ ©(©¡  X K"()¨ ¡.¾2 ¡ +¡€¡¦,L ¥¨(§ ¡@?

üAý

¢¥¤§¦

/('2¡¦OE§U'"/¡E + ¡¦""¡€I2-¡ ¡@?& +-©( ¥¨/3 +/ O

¨

ܨþ<ÿ £¢¥¤¦

¡""[3 +' @ + p?<¡£2(!Ã'(¡"@aÙc;

üAý ©



2¥¨'()¨2¤¥¨' +©© ¥~ £2 ¥JC(3  n +!¥% I  ~¡L ¡" !)%2, O

}

T ¥¨§Ì_¨ L U"¡¦§4 £"&¢J `O,"&A¡Y(!"£¦'""&/¡ ¥kU?1A¡YI  A'("¡

¥%' D/¡J ¡¦©  £¡¦K/,O

§Y¥¨" OE_M `L~ &¡ § (¥¨ ¥¨)%O62( ¥¨'()¨2¥%' 2"J©3 +©¡ @;:wp4©  £.

'(   @?x J§ ¡2¥<4¥%  4¥¨/10$¡¦£J"›+”%•(™¡´Mžp¨•˜šÁ+ +µY> +£Ã' ¡"

û

¥<£NS;

ÏMÿ¨þ¡ÕÓ@ÔMÜMþ<ÿ¡ |Ï%Ü¢ ¤§¦

ü

wS"1¥% 2U ¡¦§ ¡§U/¡ )I2 ¥%')%2¥¨'(^ +  M¥¨2"123 +S£ ¡ +'©

¢¥¤§¦

¨

+£¥¨("@?3 NM¡§ ¡§Y¥¨ OP§K 3 +)¨¡§Y¡Y""'¡"UR)¨¡(¡ @  ? ¡ + ! O



/¡¦£¥¨§ ¡#¥% ,¡¦ ¡"V¥¨ O$¥% +I ¡ "[§ ¡(!'(§ .¾"n¡D©( ¥¨)¨ @ +§ "

§K ©('  )8 ¡  LM¡ O6£¥¨§ ©( ¡\¢ @ #" '£'( ¡; (P2(¡O

}

I2¡¦ ¡Y2¡¤£¥¨(" '£¥% &$¥%  ! 4 £Ã'(! ¡¦"&2¡K + )¨'(.

/¡¦£¥¨§ ¡#`  :§Y¥¨ ¡#,¡¦ ¡")*$¥% "O"¡§Y" 2 V Ou¥Y ¡ O8¥¨

§ ¡V ¥<£fNR 8"@ L¨¡" " !(¡pO,?<"¥*23 [2¡#(¡" '£¥% V£ 

§Y¥<'  + !Ou"¥*2 V2¡¦OX(¥ ¥%I23 `LM¡&¥ ¡¦ !OX¥¨R ")¨ ¡#§ .

¡ ¡ +"¡u@;Xw ¢¥¤# @ +!"¡¦"K P¡\£¡©¥%3?S2(¡*¡" '(£¥¨ #"¤(.

¨

©( ¡§ ¡¥¨ :'(¡ "@ ()X2¡U¡ ¡ "O"¡§4;:s $¥% ' ¡ O

LM¥%NM¡Â(' )¢"@ £N7'(I!()~?A"¥52 ]“"" ! ¡ ¡ "¡¦3;

(¥¨(¡&¥¨32¡¦"¡U ¡(D2¡¦§ "¡ LM¡"V¥*£ '("!¥%E "[¡\S § ©( ¡"V!R

WI2'"II"I)¨'  @ ¡¡¦823 +I]¢I  1/¡J ¡ ¡ "¡¦9 I/( !¥<£N¡\@;#"

© ©¡ @;rWI2'("¥¨'( ^¡\S §Y© ¡"^I  {¡*¥U/¡ "¥%§ ¡I2 I£¥%§ .

=A¡" '(£¥¨ "t + ¡-)¨'  @ +,¡¦¡ ¥Z/¡-¡\¡£'(¡ t 9¡  .

©( ¡¡;

¡¦C¡¦¤©( ¥¨)¨ @ +§|©¥¨@;1WI2"x© ¥%©¡ pO#§4 +NM¡"x2¡¦§G'"¡T' ,$¥%

£ ¡ +,'(©G +£¥¨("*23 Y23 `LM¡8§ §Y¡ ¡¦ !O9L"/ ¡D"¡.¾¡¡¦£"@?

"'£2R +" ¡¦ !¡< ")* ¥<£N,"V¥% [£¦ !¥%")*I(¥@I"@;

2. C++ DESTRUCTORS =A¡" '(£¥¨ "*  ¡4 + !"¥8¡\¡£'¡¦6I2(¡62¡ +©¢¥%/S0T¡£"u  ¡¤¡\.

WI2(¡4FIH&HZ  ()¨' )¨¡6 +  !¥kI"#¥¨/10$¡¦£"#¥u2 L¨¡K - ""¥<£ +¡

© £ OK¡ +  !¥<£< ¡ ?'(")6ÔÓMÜMÓkÖ,Ó¨; ":¡UI  : + )¨'(¡¤/¡ ¥kU?

}

(¡" '£¦¥¨ § ¡2(¥<3;ÚÛ -2¡G 8"@ £NG +  !¥<£< ¡€¥%/S0T¡£X)¨¥<¡"

2"IA¥¨ N"I¡  1r2¡ © ¥%)¨ @ §Y§ ¡ V"U J  ¡&¥%r¡\S £¦ !OI2(!£2

¥%'¤¥¨V"£¥¨©¡X¥¨ ¤"Y¡\© £ O5¡<   ¥<£ ¡E'"()7Ô<ÓMÜMÓ@Ö,Ó%?x2(¡

¥¨/10$¡¦£"¤  ¡&¡<   ¥<£ ¡R II23 +I©¥¨@;%$:¥k¡¦LM¡ @?<!I/¡¦£¥¨§ ¡¦"

¥%/S0T¡£@Ý "I¡¦" '£¥% "# '(¥¨§4 +£   O£   ¡3;rWI2("^§ ¡£23 +"§

2)%2 OG© ¥%/ ¡§4 +£Âu"¥%§ ¡B +'¥%§4 £-¥% P"¡§ .f '(¥¨§4 +£

£< */¡IL¡¡K "> p + )¨¡ OD A"O,@ +££V£¥¨LM¡(¡£¡(¥<¡"

§ ¡£23 +"§¹"V'"¡D¥Y©¡ $¥% §¹¡ + ! ¥<£ +¥¨" § © £ O,;

Ê©@¥¨§Y¡ ¥¨Þ2(!" © ©¡ " + ¡\©3 +"¥¨ ¥¨ß2(¡

ù 2¥¨'()¨2U2"r" (¡")¨(¡¤¥Y ©(© OJ¥¤   ¥¨/10$¡¦£"@?k "¡¦¡§ " ¥

}

A¡/ ©3 )%¡" ¡ © ¡L¥¨'(" O §4 (¡ `L   / ¡ +

/¡V§ ¥¨ ¡['"¡¦$' $¥¨ A"@ £N4   ¥<£ +¡u¥%/S0T¡£"A23 *T¥¨ A"@ £   O

à à à à

¥¥¤rámâ~â~ã ã ãYÉ ¤ ÇmÉ ¤ Émƨ„~‡5â~¤xƒkŽ¡„~‰ †ÇmâäD†‰ Ž åY„{ ‡5â

  ¥<£ +¡7¥%¡"@;XWI2¡¢ '(2¥¨ #N¥kI"U¥¨V§ ¥% ¡X2 5¥%¡   )%¡

à à à à

ÆMâ~æ ¥ æ Ž¡¥ƒkÉ ¥‡PÇ  ¥¦¥¤ ámâ~â~ãYã ã É ¤ ÇmÉ ¤ ÉmÆM„~‡5â

© ¥,0$¡¦£V23 23 "U +/3 +¥%¡u'"¡ ¥¨ 2(!"I` £ pOX$¥% I"@ £   O

à à

¤xƒkŽ¡„~‰ †(Çmâ~äD†‰rŽ åY„{ ‡5â ~ÆMâ~ç ‰r†ÇmˆmèM†(¥ˆm„~‰ É ¥‡5Ç

  ¥<£ +¡*L~ +  / ¡">'(¡^¥:2(¡IØ £'( pO#¥¨~¡¦"' ()J23 +3£¥¨(.

ÍpW ¥é¥%' N¥kI ¡)%¡?êFIi !§Y© ¡§ ¡@ +!¥%")¨¡¦¡ @ + ! O " '£¦¥¨ JLM¥<£ +!¥%"J¥<£¦£' J #"@ +$¡ ¥% ¡ @;[wp" +©© £ +/ !O

(¥ë2(¡ì )¨2·2)~?í î'"¡ï ð"¡©3 + @ ¡ñC  n ¥% ¥ 2(¡ ©u¥¨/10$¡£"[" ("£'""¡8/¡ ¥@U;

2( ¡  ; ò(¡ñ¥¨¹2(¡§ ¡§ ©¥% @   O(!¥¨@; ©@¡¦¡

à à

ú

©k¡¡DT¥¨ *¡\S §Y© ¡ ¥¥¤ ámââ~ã ã ã Émóx„{„~Ž¡¥Ém„ƒ@ â~Çmˆmó Ž¡â~¥ ƒ@†(æ â

à à

órŒ ~ÉmÆM ~ˆmõ,ˆmæ öD÷ø~÷~÷~÷ ¥¥¤rámâ~â~ó Œ èMˆmÇmÇm†Émô1ˆm‡5ˆm†‰rÉmÆM„~‡5â~Ž „(ã

à

æ „{ÆMâ~‡6Œ ¥ô1É ¥¦‡5Çv;

;

"

w7¥%' ¥%©¥%3?>2(" @ "¡"¢ *"pO !"£D""'(¡?>E23 Y2¡ ¡

à

×

©@¡¡ ¥¦¥¤ ámâ~â~ãYã ã Émóx„{„~Ž¡¥Ém„~ƒk ~â~ÇmˆmórŽ¡â~Ž¡‡5†ƒk¥ ¤ ¥ƒkâ

§4 `OU/¡[(¥J& `O¤¥&"¡¡VI2¡2(¡ J > !¥<£NY"A/¡)J ¡ ¡ +"¡¢ >2¡

à à

Ž †ƒkæ ¤r¥ƒkÉ ¥‡

¡(5¥¨¤ Y/ ¥<£N¢I2(¥¨'U ¡ +)K2(¡X¡¦, ¡*/( !¥<£NS;uWI2'"#¡

Ú

Ë:¥¨¡&2 [2¡&¡ §§lš¡" '(£¥¨ oD2¡uFIiG  ()¨'3 +)¨¡U¡C(. ""¡¦ :¥¨( O823 +V!@Ý " £¥¨§ §Y¥¨K© @ +££¡? +K ¡ `LM¡#2¡& ¡< ¡¦

(!¥%D£¥%  ¡"©¥¨("[¥Y¥¨'( V'"@ )%¡#¥¨ 2(¡J¡ §ëlmC(3 + !n¡¦ o; ¥ 0T')%¡&I2¡2(¡ V@Ý "V(¡" @ / ¡;

¥¨ 2(¡XFr¡3 + [` £ pO ×[¥¨ VR_M `L ¨Ý "=,Ñ Ü¨Ñ ÒÓ ;

Ä

?Aý ¨

3. FINALIZERS ý

& ¡ ¥k\9² ¼IFZFr¡3 + @a!g%ec('@?>dY¥<('  .fe%a!g*)¨c? +6¥¨'( :) + /3 +)¨¡

}

dY¥¨ ¡#,¡¦ ¡")¨ O,?S µM˜ @ ¡žp ¡•(œ{¥%/S0T¡£[!"[¥%C¡D¥%32¡

y

£¦¥¨  ¡£¥¨ ¤$¥% 8FI¸%FIH&H&ahc?I § ¥%)K¥%2¡ "@?A   ¥@Û ¤C  n ¥%

' ¡< £23 /( !OX¥%[ D¥%/S0T¡£@;

T'(£¥¨R¥D/¡6 +""¥<£ ¡9I2Q R¥%/S0T¡£@;*WI2¡C  n ¥%

T'(£¥¨X!"¡\¡£'¡¦X"¥%§ ¡§ ¡ +$¡ & X¥¨/10$¡££ X¥U ¥¨)%¡

A>¡£LM¡ O,?12(¡ ¥%C£ +!¥%5§ ¡""@ +)¨¡£ +5/¡ L¡¡- "8 UC(.

/¡Y £¦£¡""¡¡\£¡©(A/O¤2¡VC  n ¥¨§ ¡¦2¥<$¥% 2¡V¥%/S0T¡£

3 + !n¦¡ V!LM¥<£< ¥¨ ?,/'(^I2D2¡:¡ ¡(£¡J23 +I2¡JC(3 + !n¡¦

"¡ `;šÄ,+ÌwpX"8)%!L¨¡ ££¡¦""D¥92¡4¥¨/10$¡£¦D"¡ ;B3!  n¡

$'(£¥%6(¥<¡":(¥¨ 23 `LM¡u ££¦¡""J¥*2¡U'( ¡ £23 +/ ¡#¥¨/10$¡£¦J.

LM¥<£ +¥¨D§4 `OX/¡  /( @   O8¡¦ p `OM¡¦8D'("©¡£C¡¦8& `O"@;

"¡ ?S (D2¡(£¡J2 I¥¨/10$¡¦£ £< D/¡J§ §Y¡ ¡¦ !Ou ¡£  § ¡¦3;

s  NM¡D(¡" '£¥% "@?C  n¡ "P  ¡E @ +£f2(¡Â¥P2¡ +©|   ¥¨.

ò2¡¦ "I23 `LM¡ + !"¥6 + )¨'(¡DD `LM¥% V¥¨3¥%$O)4 +¥¨2(¡ V¥¨/(.

£< ¡¢¥¨/10$¡£"@?{pO©£ +  !O4P£¦¥¨¡\"JPI2(!£26¥¨/10$¡£#(¡   ¥¨.

Ú

Ä

0$¡¦£ ;9WI2(¡R ©(© ¥~ £2Â23 +"*"6 L @ +)¨¡" 7¡ § "*¥¨ © ¥%.

£< ¥¨R"U!§Y© £@;uWI2¡O  ¡(¥¨#'"¡PI!2R"@ +£fN   ¥<£ +¡

)¨ @ +§ § )U"pO ¡?~ +*§4 `O¤¡  §4 +NM¡VC3 + !n¦¡ "^§ ¥% ¡ £¥%§ © ¡¦.

¥%/S0T¡£"@?<¥¨ A¥¨/10$¡£"II2(¥¨"¡ !T¡§ ¡  J O"I¡("J # ^"O@ £.

2¡¦"/ ¡?"£¦¡Blš¥¨/10$¡£¦u ¡"'(  ¡£¥¨(oR£ Â¥5 ¥¨()¨¡ X¥<££'( @;

ÄÄ

£<   O8¡¦¡ § 3 +/ ¡&© ¥%)¨ @ §¹©¥%,@;

© ¥¨ 3 23 ":"¥¨§ ¡D L @ +)¨¡" I2¡4:£¥%§ ¡"&¥¥¨ (¡ )

}

¢¡AI  < ¡T¡ ¥V¥¨/10$¡£¦" I28 +u ""¥<£ ¡¦Y¥%¡§Y©pO[C  .

""'¡"@;P»©@¡¡¢ ©(©¡(\ ½;B$ ¥@A¡LM¡ @?1!U£ +R/¡*¡§¤'(  ¡R

}

n +¥¨Z £¥%“ +"Y¿ •–M°±˜šÁ+–Mœm˜$M•Àv ¡•–M®¡°± +µM;D33 + !n< ¥¨(.v¡¦3 /( ¡

¥¨'( ^§ ¥<(¡ ?1 +^ ¡ "U +^2"^ ¡L¨¡ ¥¨S¡@ +! ?M/O4 ()8 I©¥¨"".

¥%/S0T¡£"[I2£2R  ¡&(¥¨I ¡ +£f2 /( !¡&T ¥¨§¹¥% 3 + OX ¥<¥%"VI!  S/¡

/ O¡§ ©(pO-lm¡¦\,¡¦£'¥% o*¥¨/10$¡£CD¾?1 ©¥¨¡ V$ ¥%§E¤¥1D¾?S +

¡¦$¡  ¡K¥D "[¿3•(–M°±˜šÁ+–Mœm˜šM•(Àž +–MµM”@;šÄpÊ

D

¡)%!"¡¦ !()5 JC(3  n¡ ¥¨( !O8$¥¨ F ;IWI2'(" :(¥<¡"3Ý  ¡   O9 T.

WAO©£   O4C  n¡ "X  ¡Y!§Y© ¡§ ¡¡6/ODNM¡¡¦©)X©¥¨¡ "

$¡¦£:¥%' ["£'""¥%3?3 (K¡U¥*(¥¨[£¥¨("!(¡ :2(" + !¡¦ 3 LM¡

¥*   ¥%/S0T¡£"xI2 ¥%¡§ ©(pO&C(3  n¡ ">K A"¡¦©3  @ +¡V"¡x3 @

$'( 2¡ V2(¡ ¡;

" '(£' ¡.-;“=A'( !()¢(! +  @ +£)?>2¡D)~  /3 +)¨¡K£¥%  !¡¦£¥¨

_M `L :C3 + !n¦¡ ":(!¡¦ :$ ¥%§ìdY¥<('  .feJC  n¡ " !K2 [¥¨/(.

)%¥¨ ¡¦"[2("I3 @ V" '£'( ¡;rWI2¡:)  / )%¡&£¥¨  ¡£¥% [2(¡P  "¥

0$¡¦£" §K O/¡&C(3  n¡8¡LM¡D 2(¡O¢  ¡# ¡ +£f2 / ¡&T ¥¨§ Mœm´M ¡ž

 @ +£¡"»$; ¡;I§4  N" ¥¨ :£¦¥¨©¡"@½>¥¨/10$¡£": ¡ £23 +/ ¡¤/Ou$¥¨  ¥kI)

C  n ¥%.¾¡3 +/ ¡7¥¨/10$¡£"@;9WI2"6 ¡¦£"*2¡u!§Y© ¡§ ¡@ +.

£23 +":¥%J¨• [¥% :§ ¥% ¡Y©¥%!¡ " $ ¥%§ 2¡#¥%/S0T¡£"J/-; O

}

¥¨u¥¨ O" )¨2 O,;3WI2(¡J§ ©3 +£I¥¨u£ ¡I£¥<¡&"I"£'(""¡D

¥%/S0T¡£"32 I + ¡0-7/'(rA¡ ¡(¥¨r @ +£¡U'( !()V¡2¡ ©(23 +"¡

©(©¡(\ ;

}

/¡¦£¥¨§ ¡[¡ )¨/ ¡ $¥¨ AC  n ¥¨ ;r33   O1- (*2¡I¥¨/10$¡¦£"^

FIiðlm(¡" '£¦¥¨ "o4 + ¡& ¡   OuC(3 + !n¡¦ "[u¥¨' V¡ §Y!(¥¨ ¥¨)%O,?

¡¦$¡ ¡(£¡"  ¡£ OP  ¡& @ £¦¡K¥ ¡("' ¡&23 +V¥¨/10$¡£"[¡¦¡¡

(8/¡2 `LM¡J¡""¡   O8 NM¡X_M `L C  n¡ "@;

/OC  n¡ "Y  ¡& ¡@ +¡D/O*2(¡&)  / )%¡U£¦¥¨  ¡£¥¨ @;

WI2(¡*C  n¡ #$¥% D +P¥¨/10$¡¦£2u§4 `O +"")¨38¥~?S$¥% U¡¦\r +§ .

1X§4 `OD ¡§4 +!¢ !L¨¡

©( ¡?x U"@ £¤£  ""#§ ¡§U/¡ @;:wp42 :£< "¡ 3.2 Example uses of finalization

WI2¡5 (¥¨E¥¨* C  n¡ .¾ !N¨¡8§ ¡£23 +"§ì" A¡  [§Y¥¨.

(¡C(¡ Ot T¡ *"*C3 + !n¦¡ *23 +" ' ;RWI2("*!"*"¥%§ ¡§ ¡"@?

L ¡4-a6G+cp;:$ ¡ ¡¤A¡Y ¥<¥¨N7 + #T¡­ +¥¨  x¡\S §Y© ¡"J¥

©¡¦ 23 ©("!(£¥¨  ¡¦£ O,?I ¡¦$¡  ¡€¥€ "Pžp ¡›*4žfž ™¡œm˜$M•;“wX(¡ "

§ ¥%!L ¡K ¢£   $O¢¥¨'( &"£'""¥%3;YWI2¡Y2 P¥%¡ I  /¡

T ¥¨§­¡¦" '£¥% [/¡¦23 `L!¥% @?/('^£< '"¡¦" (¥ ¡  1© ¥%/ ¡§ "@;

ÄÍ

'"¡¦*¥&"£'"">"¥¨§Y¡ ¥%12(¡I"O£2 ¥¨(n ¥¨*""'(¡"I2(!£26  ¡ £¡ @ + S¥ ¥%' V"£'(""¥¨3;

3.1 Alternatives wpu)¨¡(¡ @  ?(C(3 + !n¡¦ " "2(¥¨' D/¡&'("¡8¥* ¡¦£  §­ ¡"¥¨'( £¡"@?

² ¼IFI²{  £¦¡5©k§4   @  NQ»$"¡¡¢a65c$¥¨ D "£'""¥%3½[©( ¥kL,(¡"

}

¥¨2(¡ Y2 9) + /3 +)¨¡8£¦¥¨  ¡£¡7§ ¡§ ¥% O,?rI2¡9§ )6¥¨[2¡

K" )¨2 O-¡ ¡uC3 + !n< ¥¨t§ ¥<¡¦ p; €¥%/S0T¡£D£ +Q/¡

}

¡"¥%' £¡D ¡¦£  §4 +!¥%-"*¥% £ £  ;Ew72(¡8£ +"¡D¥¨ "£  £¦¡

¡¦$¡ ¡(£¡Q/OB 87x +– 95–Mžžp–¨”%;«©@'(£f2- ¡¦$¡ ¡(£¡"9 + ¡¢(! + ! O

¡"¥%' £¡"@?I¡\© £¡ +  !¥<£< ¥¨t"u'("'3   OE© ¡T¡ @ /( !¡<;ºÅS'

)%¥¨ ¡¦7/OP2(¡u)~  / )¨¡8£¥¨  ¡£¥% I2¡E¡¦¡ § )4¥%/S0T¡£

"8¡6"¡¡PQ2¡6"¡£¥%t¡\S § ©( !¡6/¡ ¥kU?[D"8(¥¨5  & `O"

¡< £23 /( !O,?/' £ ¡  ¡¦¢¥%£¡8 4¥¨/10$¡¦£J"J£¥% ! ¡£¦¡3;V -2¡

© @ +££  ;

2("&23 ©(©¡"@?~2(¡Y¡< N7   @ `O4¥¨/10$¡£¦&!"&(¥¨C¡¦¢2 J¥%¡ ¥%

"V¡ ¡"V23 +"[("@ ©©¡<  ¡ ; I23 X¡42 L¨¡K/¡¡€"£'("")9-pA¥

WI2("u(!¡¦ "uT ¥¨§ 3.2.1 Legacy libraries

²¡ 2 ©"A2¡V§ ¥%"£¥%§ § ¥¨X'"¡V¥%SC(3  n +!¥%u"A¥8 +££¥%§ .

J `O,"@q

§ ¥< ¡& / @  ¡" I ¡D$¥% IHÑMÜMÜMþ<ÿ@¸ Ò,Ó¨Ó&§ ¡¦§ ¥¨ OX§4  )%¡.

¨

§ ¡^P [)~  /3 +)¨¡&£¥%  !¡¦£¡8¡¦,L ¥¨(§ ¡@;rWO©(!£<   O*"'£2u .

33 + !n +¥¨5"J£¥%§¤/(¡6I2- 5lm¡< NK©¥¨¡ ou £¦! .

y

/ @ + ¡"A©( ¥kL,(¡U  ¡\©( !£x¡<   ¥<£ ¥¨T'£¦!¥%1&23 +>§U'"

pO,;D»$ ¢¡ N4©¥%!¡ "u + ¡*©¥¨¡ "#23 &(¥D¥%&© ¡L¨¡

/¡ LM¥¨N¨¡¢I2(¡€ +P¥%/S0T¡£J §4 +3 )%¡P/OK2(¡ !/( @  O4"#¥

[)~  / )¨¡&£¦¥¨  ¡£¥¨ [$ ¥%§¹L!¡¦I!()K +8¥¨/10$¡¦£¤ "I3 +££¡".

¥¨()¨¡ I(¡¡¡¦3;rwp12¡ ¥¨/10$¡£¦; S"I'"¡X/O4 [)~  / )¨¡:£¥¨  ¡£¡

"/ ¡;½:WI2¡:"@ § ¡&£¥%§¤/(3 ¥%D"['("¡X!u  ¡ VLM¡ "¥%"

¥¨/10$¡¦£2K{?2¡¦P#!"U£¥%§ § ¥¨P¥D,L¨¥¨NM¡1DT ¥¨§LK{Ý "#C3 + !n¦¡ @;

WI2"¤§4 `OP'(¡£¦¡""@   OR¡  `OP ¡¦£  §4 +!¥%7¥%C ? /'#2(!"¤"

'

¼x¥kL¡ @ag%ec~(¡"£ /¡"& +*¡   O L¨¡ "¥¨¥¨AFr¡  C(3 + !n +¥¨3;

]^ ¡ VLM¡¦ "!¥%"Y  ¡&£ ¥%"¡ ¥Y2¡dY¥<('  .fe LM¡¦ "!¥%3;

pO©(!£<   O¢(¥D§ ¥¨ ¡*¥%U ¤© ¥%/ ¡§·2 P2(¡*¡  `OM¡¢¡ +  !¥<£< .

Ä,+W ¥¢"§ ©( !TOR§4 ¡¦ "@?xA¡8)¨(¥¨ ¡D"©¡£¦p + Dlm¡< NoP ¡T¡ ¡(£¡"

¥¨D¥% § ¡§Y¥¨ OX!(2¡ ¡¦,I9 [ @ £)Y)  / )%¡U£¦¥¨  ¡£¥¨ @;

2 X + ¡*!)%¥% ¡55§4 +N,()82"#¡¦¡ § 3 +!¥%3;K©k'£2€ U` . £¦! pOK"J¥%$¡6£¥%§¤/(!(¡4I2- JC  n ¥%P +£ !O,?x 42(¡

£¦¥¨§U/3 +!¥%K£ u/¡&Ã'¡J'"¡¦$' ; 3.2.2 Files in ropes

ò££ +"¥¨3 +  !OP£¥¨§ ©( ¡\¢ @ Y" '(£' ¡"#£¥%@ 5¡§U/¡(¡

ÄÄ 3 %Ý "8'"¡¢¥¨U2¡6¡ § lšC  n ¥¨(o£¥%  ¡"©¥¨("D¥E¥¨'(

}

¥%.¾§ ¡§Y¥¨ O: ¡¦"¥¨' £¦¡"@; )%¥<¥<U¡¦\r +§ © ¡>¥¨<2 1!"S2¡ lm ¥%©¡o

lš¡" '(£¥¨(o;

}

3 +@ " '£¦' ¡J(¡"£ /¡D9aec;$Ä

ù

ÄpÊ

P¡ `LM¥¨#2¡>¡ §t¿3•–¨°±˜šÁ+–M®¡°± S"£¡>r2 " /¡¡¦U'("¡&¥[§ ¡ 

¡¦!2(¡ V¥¨32(¡"¡;I©@¡¦¡&$¥¨ V¡\S +§ © ¡Xa65c^ 5abc;

×

Ä A:   O L¨¡ "¥¨">'"¡¦7lm© £N~ +)¨¡V ¡$"o~;MAA¡£¦!L¨¡ O¤2(¡I)  / )%¡

ÄÍ

Ë:¥¨(¡2¡¦ !¡¦"" *!"*¥%$¡EL¡¡G " ©( ¥¨/( !¡¦§4 £;RWI2¡D¥% O

£¥% ! ¡£¦¥¨ *)¨(¥¨ ¡Z *© ¡(¡¡ § ¡¦R,'(§¤/¡¦ ¤¥% ¡T¡ ¡(£¡" ¥

¡< "¥¨RA¡*£ ¢¡$O4"#23 u +& !¡< "U!¢2¡ ¥% )¨3 + &_M `L

C  n ¥%.¾¡3 +/ ¡K¥%/S0T¡£"@;ag¨ec

"©¡¦£C£ +!¥%3?x2¡ ¡u& "Y¥6& `O5¥6 ¡¡3 +/ ¡8C(3 + !n +¥¨Â¥

Ú

Ä ©k¡¡Q$¥% 7¡\S +§ © ¡?2¡€"£'(""¥¨¹¥¨Glš¡ +2º¥%!£¦¡"o|¥¨

/¡ '¢ )~ 8I2(¡X2¡:#/¡£¥%§ ¡"I3 +££¡""/( !¡*» ) +3½; WI2"

~ÆMÇmˆmŽ¡¥¦ÈDˆmÆMÆMÉmÆM„~‡R;

¡¦" !£¦!¥%Q ©(©¡  "&¥u/¡Y`   O + / @  O7 +Â_M `L~ +.v"©¡¦£C£;

Ä

ù "§    @?/(' ¡\© £ !Oß ¡¦$¡ ¡(£¡ £¦¥¨'¡ ?ï @ wV!"V(¥¨I"23 + ¡D/O,?M$¥% [¡¦\r +§ © ¡?1dY¥<'(  .fe:¥¨ ;&:¡¦ ¥@\¢Fr¡  @; }

Concat 3.2.3 External object data

""'(§ ¡:2 IA¡J23 `LM¡ V£  +""=SJ?<"'£2X23 &   {!("@ (£¡"V¥¨

}

S7§4 +!@ +!5 I ¡ +"["¥%§ ¡&¥¨r2¡ I"@ ¡*» =S TVU S"@ +£¡<½

€ #©¡ §4 (¡ OK ¡ £23 +/ ¡6   @ `O,;UWI2("8 +  !¥kI"U'"J¥8¡ " O

"23 + ¡5 Y"()¨ ¡8S TVUW ^/¡¡¡¦R§¤'( !©( !¡XSA"U£¥¨@ +!()42¡

Concat Substring "@ §Y¡*3 @ %;¤WI2¡Y)¨ ¥¨/  & +  @ `O +  !¥kI"U'"&¥u¡ " O¢"¡<  £25$¥%

u¡\"!()/S T,U r¥¤ ¡'"¡; ¢¡Ý ! 1"¡¡ +¥%2¡ I ¡ +"¥¨D¥Y¥

N flen

2"V82(¡&¡\I¡\S §Y© ¡; WI2"V ¥<¥¨N"["¥¨§ ¡2() NM¡q

Substring

û

ZY![H<ÕÜ

"z" ÿ¨ÜMÑMÏMÏ

\ \Z]

þ¡H~Ó-ÏkÖ ÓMÓ%ÔÓ%Ô3`abYc[ ÏkÖ,Ñ ÿ¨Ó<Ï

ý

0 N−1 ©^¨ ¨_

ÔÑ@Ö,Ñ%¦

d

û 

Õ `Ü![MÿZY!![¥H<ÕÜB¢ Ôe¤ Ô<Ñ@Ö,Ñ_f-ÔM¦ d Finalizer to ©

close file  file

len: flen

ÿ¨ÜMÑMÏMÏZY

û

\ \

ÐÓ þMÜMÜMþhgi[ Ög(þÂÑ@ÒMÒ,Ña,Ï-Ñ@Ò,ÓRÕÒþ@Ö,Ó<ÿkÖÓ%Ô

d ¨ ?

à

NVˆm ~Œ ƒkKø~á ¦ Çmˆm ¥Çm¨9æ ˆm¥æEç ÇmK†ŽY†Pƒk„~¤x

\ \

`a-Ö%Ð(Ó-ÜMþ<ÿ tþ Ö%ÐÓj[¥H<ÕÜ<Ï7Ñ@ÒMÒ,Ña

ý

ÏkÖÑ@Öi[MÿZY!![¥H<ÕÜc[H<ÕÜ<Ïlknmbf ÓhgbY![¥H<Õ(Ü£kno!ml¦

\ \

ÐÓ H!`Ó@ÒZþ Y,Ï-ϦÐÑ@Òi[ Ö%ÐÓ

d © ¨ !?

$ ¡ ¡# x" !():"x ¡© ¡¦"¡¡K +"[ >/  O# ¡¡^¥% [= ;¡AJ +£f2

}0O

\ \

ÿ¨þ@ÒMÒÓ<ÏÕþ Ô^[ Y![H<ÕÜ

? ý

¡ +I"8 U" !()D£¥%"@ @;Yw,¡¦ !¥% &¥<(¡"# ¡© ¡"¡¦,&2(¡ £¥%.

ÏkÖÑ@Öi[Mÿj[ Öp[¥H<Õ(Ü  ϨÓ<ÿ¨þ ÖqkVmrf Óhgp[ Öqkno ml¦

© ©

£< ¡ ¥¨9¥¨V2(¡X" ()¨"Y ¡¦© ¡"¡¡P/,O62¡ ¡TK (R )¨2

"'(/ ¡¡¦"@;3WI2("I ¡© ¡"¡¦,@ +¥¨R +  !¥kI"[£¥¨("@ I§ ¡J£¥%£ +¡.

\ \

[ Ö3H^a^ [ ÔÓsl¦ [¥H<Õ(Ü<Ïj[ Ô<Ós þ@Ò3H^a-Ò,Ó¡Õ

¨ ý

 ¥¨R¥%U  /(! @ +  !O¢ ¥¨)K" ()¨"@;*wpI"¥¨§Y¡X£<  ¡*"¤@ +NM¡5¥

N¨¡¡©D ¡ `LM¡"V"§4 +  V (8 ¡¡"[/3 +  £¦¡3?!¤ + !"¥¢ + ! ¥kI":¡¦Ø £¡

û

Õ `Ü![MÿZY%¢ ÖR¤

© d

"'(/" )P¥¨©¡ @ +!¥%"¥¨7 ¥¨)P" !()¨"@;ÂWI2(¡"¡D§4 +NM¡K*©¥¨".

û

Ïha ÿÐ<Ò,þ [t<Ó%ÔM¢u[¥HMÕÜ<Ϥ

"/( !¡

û

þ@Òv¢u[ Öw[8fjxM¦y[_z3o£¦W{{^[¤

¨

¡¦© ¡"¡"V2¡:¡! ¡&C( ¡&/¡) ¡(¡R +" "()¨ ¡& ¥¨©¡;

[ ¢u[¥H<ÕÜ Ï¨Ó Mÿ¨þ Ö|k}[mw~_x_ 

¨ © ©

£¥%§ § ¥%u¡\¡("¥¨"^¥u   ¥@€C( ¡ (¡"£ ©¥% "^"¡ +u¥%

}

û

z![¥H<Õ(Ü<Ïlk}[m-ÒÓ Ï¨Ñ `(ÜMÓ ~^¤

©

¡¦\,©( !£¦! O&"¥% ¡Y" )%"[ " ¡ `LM¡¦"@?( +U¥ + ! ¥k9,¡¦ !¥% 3¥<(¡"

H^a^![ ÔÓscfr[¦

¡¦© ¡"¡)['(¡L  '3 +¡#"'/" () ¡\©( ¡""¥¨"@;rWI2(¡"¡& +  !¥k

Ò,Ó@Ö Ò ¦

©

+9¡¥¨ ¤¥4¥¨©¡ @ +¡u¥%“   )%¡8C( !¡X ¡©( ¡"¡¡t "D ¥¨©¡?



I2(¥¨': ¡ (!()u2(¡Y¡ ¡UC ¡Y¥u§Y¡§ ¥¨ O,; $¡¦  #"()¨ ¡

}



£23 + @ £¡¦ &!("¡ ¥¨¢¥¨2(¡Y ¡¡ 6lmno5 $¡¦ &2¡=Pu2¢©¥%"!¥%

H^a^ [ ÔÓsrf [kÒ(ÏkÖMÑ>,Ñ![%ÜMÑ `ÜMÓB¢¥¤§¦

¨

¢ ^   )¨¡ C ¡?¨2(¡[(.v§Y¡§ ¥¨ OY ¡© ¡"¡¦,@ +¥¨¥¨12¡V ¡"'( !()

[¥H<Õ(Ü<Ïlk€H^a![ ÔÓhs!mpf ÓhgbY!![¥H<ÕÜB¢pÖR¤§¦

C( ¡&§ )¨2V/¡ "[8C)%' ¡Xg%;

[¥H<Õ(Ü  ϨÓ<ÿ¨þ Öqk€H^a^ [ ÔÓs mf‚¦

© ©

w4)¨¡(¡ @  3J"J(!ØY£' :¥X© ¡¦£:I2(¡62¡UC ¡¤(¥<¡":!



"'(£f2E : @ :" '(£' ¡&I  3/¡& ¥%©©¡ ;A~¥¨ [¡\S §Y© ¡?,K2(¡



Fr¡¦3  &©( ¥¨)% @ § § ()8¡L ¥¨§Y¡@a!g%ecx ¥¨©¡¦"  ¡ '("¡ "J2(¡

"@ +  *" )# ¡©( ¡"¡@ ¥¨ ?~ (6  ¡[2'"x2¡§Y"¡ LM¡">¡§ .

û

ÕÒþ@Ö,Ó<ÿkÖÓ%Ôj>,þ![@Ô [ ÑMÜ [tÓ¢¥¤

¨

/¡¦¡¦PP§4 +OK¥¨2¡¦ U @ #" '£'( ¡"@;2AAL¨¡¢52(¡Y¡(¥¨

û

Ïha ÿÐ<Ò,þ [t<Ó%ÔM¢u[¥HMÕÜ<Ϥ

£< "¡? +*¡§¤/¡¦¡¦YC ¡V¡¦"£ ©¥¨ >I  ~/¡I ¥%©©¡ A   (£f2  .

[H<ÕÜ  Ï¨Ó <ÿ¨þ Öqk€Ha^![ Ô<Ós!ml¦

© ©

+£¡ "^X2¡V¥¨ )%!  {C ¡  ¡: ¡¦©  £¡¦3;rWI2'"A!1¡[& +¡u¥

ƒ ƒ

û

[ ¢*[¥H<ÕÜ  Ï¨Ó <ÿ%þ Öqk#H^a^![ ÔÓs!mffbxi¤

¨ © ©

¡¦\,©( !£¦! O £¦ !¥%"¡* C( !¡

[¥HMÕÜ<Ïlk€Ha^![ Ô<Ós!mrf ܨÜ%¦

©

I2(¡E :C ¡#¥<(¡&":¥Y !¥%)%¡ * +££¡""/ ¡U$ ¥%§ì +,OP £¦£¡""/ ¡



¥%©¡"@zA¡¡¦£LM¡ O5¡u¥%' 923 `LM¡X¥6 ¡¦¥6¡\S £ O52(¡uA¥¨ N



+  ¡ (Ou©¡ T¥¨ § ¡¦K/,O*2(¡&£¥¨  ¡£¥% @;



3  n¡ "4 + ¡8¡¦ ! .¾"'¡9¥423 +( !()62("¤©( ¥¨/ ¡§K;4 ¢¡

"§ ©( Ot @ £2“ XC  n¡ ¥6¡ +£f2E ¡ J£¦¥¨@ ()- *C ¡8(¡.

û

ÏkÖÑ@Öi[Mÿj[ Ö [kÒ,ÏkÖ^MÑ>Ñ![¨ÜMÑ `(ÜMÓ¢¥¤

¨

"£¦ !©(¥¨ @;I©k¥¨§ ¡§ ¡Y T¡ >23 > ¡ {/¡£¦¥¨§ ¡"A'( ¡ £23 +/ ¡?%2(¡

\\

YÑMܨÜMÓ@Ò_H Ï¡Ö7ÐþMÜ%Ôc[¥H<ÕÜ<Ï-ܨþ<ÿ

© ý

C(3 + !n¡¦ r£ ¥¨"¡¦" 2¡xC ¡;{WI2"1§4 `O: ¡ #¥VC ¡"1/¡)VNM¡¦©{¥¨©¡

û

þ@҄¢u[ Öp[3fbx%¦ [†z8o£¦W{ {^[!¤

¨

¥%)¨¡¦ ¤2 P(¡£¡""@ + OSzr/'&T¥¨ #pO©(!£<  : ©©( !£< ¥¨("¤"'(£f2- "

[ ¢u[H<ÕÜ  Ï¨Ó <ÿ¨þ Öqk}[hmpf fjxi¤5Ò,Ó@Ö Ò [¦

¨ © © ©

2(¡:¡\A¡¥¨ I¡¦\r +§ © ¡?MLM¡¦ O $¡€C( ¡"^¡(u¥U/¡:¡§U/¡(¡



 ¥%©¡">!Y2"x§4 (¡ @?%"¥:2"A"x'( !N¨¡ O¤¥J/¡U + ""'¡; "

}

Ö@ÐÒ,þhg

ý¨ýMý

A¡:I  "¡¡[/¡ ¥@U?MA¡ £ +©¥¨¡   O ¡£  +!§ C ¡[¡"£ ©(¥¨ "



§Y¥¨ ¡J©( ¥¨§ ©( !O*I2X"¥¨§ ¡:2¡ ©X$ ¥¨§¹2(¡ £¦ !¡I£¥<(¡ (uC( ¡

¥%©¡D ¥%'¡"@;



" '(£' ¡ " £ '(¡  2(¡Þ© w  Ë s L¨¡ .

O O

"¥%"𥨺2(¡ïFIH&HÞ"@    ©  +¡ñ !/( @  O,; ©@¡¦¡

à à à

WI2¡¤3 +@ U" '£¦' ¡Y"&©(!£¦' ¡6PC)%' ¡Dh¨;IAA¡£¦!L¨¡ O_S ¥¥¤rámâ~â~ã ã ãYÉmŽ¡ ~ˆmÉmÆM„~‡5â¥Æ âŽ¡¥ÇmâRQ„~¤xÉ ¥‡PÇv; impl_use_count impl C_impl s C s T: References from client

Object representing temporary file. (Finalizer removes table entry.) (Synchronized for reachability.)

1

"tmp000013" Object containing fd: 17 temporary file data. 2 (No finalizer.)

Table of temporary files needing cleanup.

(Needs mutual exclusion.)

N[ˆm Œ ƒkK÷~á=˜DŒ †(ƒk†‰1¥,æÂÆMÇm†‰1Œ ¤Â„R‰[¥‡5¤x„~ƒk†ƒk¨Eç ÇmŽ

Sq h‘‹§’X ¡§ ¥kLM¡"u +,O6¡ ¡"U !¡¦$U!–• +U©( ¥<£¡""¤¡ § 3 +.

NVˆm ~Œ ƒk ‡~á=ˆu†¥†¢Ž¡¥ƒkŒ ÆM¥Œ ƒk/‰„ƒXô1†‡5¤rÇmD÷~Én‡~Ém÷

¥¨ ;

WUWŠ TV‹B!hŒK¥6 :)¨ ¥¨/  @ +/ ¡

¥%/S0T¡£" £¥¨@ 4¥¨( O5 +K!(¡\ 3.3 Locking of finalizers

dK O¤C3 + !n¦¡ "^"2¥%' *)¨'  ¢ )~ "A£¥¨(£'  ¡¦,J ££¦¡""¥

TVU *¡;QWI2(¡K ¡  "@ (£¡43 +@ u"u ¡T¡ ¡(£¡€/O92¡D@ +/ ¡

2¡X'(¡  O)K¥%/S0T¡£ /O€ +£Ã' )7 * !¥<£NS;4WI2(¡ ¡R + ¡u¥

TVU *¡;S -2(¡¢ 0SR"^¥# ¥¨()¨¡ ^¥%2¡ I"¡ ¡ £23 +/ ¡?M"C  .

¡ +"¥¨"[$¥% V2"@q

n¡¦ U"&LM¥¨N¨¡3;JWI2"#'© ¡":T,U £Ž ¥R‹§ +6©¥¨""/ O

¡¦\,©( !£¦! O ¡¦§ ¥kLM¡"# JS TVU $ ¥¨§ 2¡V@ /( ¡:"¥#23 +£ +/¡

g¨;>WI2¡ ¡V"'("'3   OY(¥¨>§¤'(£f2*¥%A ©¥¨A*I )u ^C3 + .

¡¦£  § ¡ ;

!n¦¡ I23 +^¥¨'(£f2(¡"I¥¨( !O*2(¡:¥%/S0T¡£V/¡)¤C3 + !n¦¡3?M"£¡

w:A¡D23 +7©(' 2(¡3S TVU "@ +¡D ¡£ OR¥cS ¥%/S0T¡£"

"'£28¥¨/10$¡¦£V'©3 +¡"I¥%'  Ý I¥¨ §K   Ou/¡J¥%/"¡ L /( ¡;

("¡  ?IA¡K¥%' -23 `LM¡K(¡¡(¡B +| '(\,   OE@ /( !¡4¥5C(

WI2,'("#'"¡T' >C3 + !n¦¡ "¤§U'"&¥%'£25)¨ ¥%/3  A"23 + ¡5"@ ¡

£< (3 ¡¦"UT¥¨ & ¡'("¡;UWI2("U@ +/ ¡ A¥¨' ¢23 `LM¡Y©( ¡LM¡¡42(¡

»$¡; );1"@ +£AC(¡ "1¥¨S_M `L~ £  +""¡"@½; ¡(¡ @   OJ2"1"23 + ¡

O

)~  / )¨¡£¥%  !¡¦£¥¨R¥¨SZ¥¨/10$¡£"UI2¥%'X ¤§ ¡¦£f2 "§Û"'(£f2

"@ ¡&£ +D/¡J£¥%£'(  ¡ !OX'© ¡X/O£ !¡¦,V£¥<(¡&¥¨'(.

+" A¡ NX©¥¨¡ "@;

"!(¡8C(3  n¡ "@;PwZ   ()¨' )¨¡8"'£2“ +"4_M `L ¨?3§¤'( !©( !¡

Ë ¥¨¡u23 ¤2¡uC3 + !n¦¡ 2¡¦ ¡8§U'"K +£Ã' ¡82(¡u£¦ p +""* ¥<£fN

C3 + !n¦¡ "^$¥% I2¡["@ § ¡ £  ""I§4 `O4 + "¥Y '£¥%£'(  ¡ O

"(£¡&['(©3 +¡"V"23  ¡¦D3 +@ [" '£¦' ¡"@;

!8"¡©3 + @ ¡#2 ¡ +"Y»$¡LM¡u32¡&¥¨ )%!  [ +©© £ +!¥%K"

l™½?1"¥D2 &A¡ §¤'("&¡"'( ¡ §U''3 + x¡\.

3.2.4 Removal of temporary files "!()¨ ¡.¾2 ¡< ¡¦

£ '"¥¨D/¡¦p¡¦¡DC  n¡ "@;

ò£¦£ "¥¨   O*A">¡£¡¦""@  OY¥#©( ¥@L¡IT¥¨ A ¡ p +/ ¡[£ ¡ '©

¥%3£¡ @ +!8 ¡"¥¨'( £¡":/¡¦$¥¨ ¡&©( ¥<£¡""[¡\@; ¼3¡§ ¥kL  {¥¨3¡§Y©¥¨.

©@¥¨§Y¡§ ¡"@?[ "Y9¥¨'( Y ¥%©¡"Y¡\S +§ © ¡P /¥kLM¡? 2¡X¥¨( O

@ + OuC( ¡"V!"V¥%$¡9 +D¡\S §Y© ¡&¥¨ 2("@;

"23  ¡¦t"@ +¡¢2 X"D¥¨'(£f2(¡€"8"¡62¡6¥¨©¡¦ @ )

"*"u(!"£¦'""¡-G ©©¡¦\ ? C(3  n¡ "X/O92¡§ "¡¦ !L¨¡"

"O,"¡¦§ "3NM¡ (¡ <¥¨ x ¥kR !¡¦LM¡ "O"¡§G / @  ¡"@?@"¥:23 +32¡

} }

£< (¥¨A© ¥kL!(¡V2"A` £ pO*"£¦¡ 2(¡[C(3 + !n +¥¨§ ¡£23 +"§

¡£¡¦""@  OE"O,(£f2( ¥¨(!n< ¥¨7!"2(!(¡ ;Ew7§4 +OE¥%2¡

(¥<¡"3Ý V23 `LM¡&2(¡J¡¦£¡""@  OX¥¨ (¡ ) ($¥¨ §K ¥¨ ;

£ "¡"@?1 ¡ÎšŸ¡Îx!u¥¨'( ^¡\¡ 3 + {¥¨/10$¡£V @ [¡¦\r +§ © ¡"@?<'"¡¦ .

$ ¡ ¡^A¡I¥¨' ¡I2(¥kE¥:'"¡^C(3  n¡ ">¥: ¡¦§ ¥kLM¡I¡§ ©¥% @  O

L,"/ ¡& ¥<£N,"¤ + ¡U(¡¡(¡3;

C( ¡"K +"¤2(¡O- + ¡u( ¥¨©(©¡5'( )D©( ¥¨)¨ @ +§ ¡¦\,¡¦£'¥¨ ?rI2 ¡

h¨;:ò/S0T¡£:ŒK§4 `Ou/¡UC(3 + !n¡¦6/¡¦$¥¨ ¡2Œ£š6›(»½323 " C(!"2(¡

§K N)4Y©¥¨""/( !¡u$¥% 4 9¡\© £Y ¥%'¡X¥4 ¡§ ¥kLM¡2¥%"¡

¡\¡£'();1WI2("3!"3©¥%""/ ¡I"£¡œŒlš#›(»½§4 `O&¥: ¥%)¨¡¦

2 ¤  ¡& ¡¦§4 ()4 V© ¥<£¦¡"" ¡¦\,@;

¡¡- ££¦¡""Y¥ Œ¢©3 "u ¤£¦¡ @ 5©¥%!#52¡Y§ ¡2¥< ?

©k£¡&C(3  n¡ " £ (¥%[)%'3 + @ ¡¡#¥* ¡§ ¥kLM¡u   S"'£2DC ¡"@?

U2'"S2¡ ¡A!"r¥[ ¡ "¥%Y$¥% £Œ¤¥[/¡ ¡ +¡8 "3 ¡ +£f2(.

A¡¤I  (¡¡E K¡¦\,©( !£¦![ ¥¨'(¡J¥ h‘‹§h’Y¥*/¡#£   ¡4/¡$¥% ¡

/ ¡^/OJ2(¡)~  /3 +)¨¡^£¦¥¨  ¡£¥¨ x© " 2  ©¥%!@;^Fr¥%"¡¦

©( ¥<£¡""[¡\@;3wVI!  S/¡&2¡J£ ¡"[ ¡"©¥¨("!/( !OR» "VV§¤'("

"©¡£C£ +  !OSq

/¡<½>¥¡"'( ¡#23  2":" ¥¨ OD£<   ¡7 $¡¦ J2¡#  "J'("¡¤¥%

¡¦§ ©¥¨ @ + O8C ¡?,/'V/¡T¥¨ ¡U2¡& ¡§Y¥@L  r¥¨[ Ou¥¨2¡¦ ¥%/S0T¡£"

(¡¡(¡8/O“¥ h‘‹§h’;

û

ÿ¨ÜMÑ<ÏMÏ8

WI2("”¥ h‘‹§’K ¥%'¡uI!  [¡¡¦G +££¡""*¥¢2¡8"O"¡§ ¡.

H[ Ó%¦

ž

"¥%' £¡¦"XI2(£f2G  ¡K"  + ! ¥<£ +¡3;|ò(¡8& `O9¥Q +££¥¨§Y© "2

2("J"*   ¥¨)%¥¨'("&¥u¥%' :©( ¡L¥¨'" ¡\S § ©( ¡;[ ¢¡¤NM¡¦¡©E 6¡\.

û

Õ `Ü![Mÿ3M¢¥¤

©

©( !£¦!@?S  & `O"[ ¡ £23 +/ ¡?<@ / ¡•€¥¨3¡¦§ ©¥¨ @ + OuC( !¡¦"@;

H[ ÓZf Óhg ¢¥¤§¦

ž

Fr ¡"¤  ¡&(¥¨I)¨LM¡¦8 ¡£¦U ££¡¦"" ¥2•¤;rWI2(¡"¡&£ ¡"I.

ýMýMý

"¡< ¢ ££¦¡""IC  n ¥¨(.¾¡3 +/ ¡¡§ ©¥% @  O C( !¡[¥¨/10$¡¦£"^£¥%.



@ +)K©( !§K   O- +5¡¦\6¥%?S¥% D U ¡$¡ ¡¦£¡*¥~?S2¡ £¦¥¨  ¡.

û

Õ `Ü![Mÿ þMþ¢¥¤

© ¨

"©¥%(!()DC ¡ ($¥¨ §K ¥¨R–•U;#WI2¡  @ ¤" '(£' ¡ "&¥%'.

¦

ýMýMý

¡¦uC)%' ¡Ye¨;$ÄpúU33 + !n()K ^¡§ ©¥% @  O*C ¡[¥¨/10$¡£¦^£ '("¡"

H[ Ó `Ñ@Òl¢¤§¦

ý

¡¦§ ¥kL~ + J¥¨#2¡4C( !¡



Äpú

Ë:¥¨¡x2 r ¡¦$¡ ¡(£¡" ¥I2(¡A£¦ !¡.¾L"!/( ¡A¥%/S0T¡£I + ¡"O£2 ¥%. $¥% u ¡< "¥¨("u("£'""¡€/¡¦ !¥kU; ££¡¦""¡"u¥–•­§U'"¢ + !"¥9/¡

}

(n¡3?; ¡<;J £Ã'(! ¡&2(¡& ¥<£fNu¥¨D2(¡&¥¨/10$¡£@;>WI2" "[¡£¦¡""@  O "O£2 ¥%n¡ ?"£¦¡&!V§U'"I"'(©©¥¨ I£¦¥¨£¦'  ¡U £¦£¡""@;

û

Õ `Ü![¨ÿZ>,þ![@Ô [ ÑMÜ![htÓ¢¥¤ £¥¨§Y© ¡ J§ )¨2 !( !(¡y›?~¥%/"¡ LM¡U23 +:Bš UWŠ TV‹B!hŒ4"

© ¨

}

H[ Ó `ÑtM¢¥¤§¦ ¥<¥¨©u!L   @? +X2,'(""§ ©( !O*N¨¡¡©X!!P I ¡)¨"¡ @; wp§4 `O

ý



2¡¦8¥¨/("¡ LM¡&2 ;*"[(¥kt(¡  ?S +D(¥Y ¥¨()¨¡ [¡¦¡"V¥ /¡



NM¡©(& +,OI2(¡ ¡;rwpS2¡ £¥¨§ ©( !¡¦ I¡ !§Y! ¡"CYX2"^§4 +(¡ @?

(#2¡x£¥¨  ¡£¥% 32¡# '("1I2 ¡2¡> ¥<¥¨©U"r¡\¡£'()?rI 

"£¥kLM¡¦ ^23 +¦¤"^'( ¡ +£f2 /( !¡

I2¡¦ ¡UTV‹B"D Y"'(/¥¨/10$¡£¦¤(¥¨#L!"/( !¡¥D2(¡*¥¨'("!(¡

WI2¡AC  n¡ 3I  ,"¡¦lBš UWŠ TV‹§!hŒU¥ ÜMÜ%?( +#£ '("¡^2¡>¡¦\,

©

¥%  3?3 (4I2¥¨"¡U§ ¡2(¥<" £ 42'"[¥% /¡U£   ¡6¡\.

£ ¡¦§ ¡V¥Y + p;

£¡©(D2 ¥%')%2Z2(¡¢£¥%  ¡"©¥¨()†Ÿî¥%/S0T¡£@; ""'§Y¡

}

WI2¡8 ©(©3 + ¡:£¥%£ '"¥%¢T ¥¨§Û2(!" "J23 +:¡U¡¦¡4¥u/¡

23 +u¥% OE¥¨¡42( ¡ €'("¡"u¥%/S0T¡£WŒ-¥¨#£  ""WŸR?# 

:/V§ ¥% ¡&© ¡£"¡u /¥%'VI23 + ¡¦$¡ ¡(£¡"[£ K/¡&¡¦ !§  ¡

23 +V2¡J  "¤ +£¥¨K¥¨WŒ8" ¥Y£   Œ£š6›(»½; -2¡8›

/O¢2(¡*£¥¨§Y© ¡ @?I (52¥k"¥<¥¨RC  n¡ "¤£ 5/¡ '(3;*s:.

£ + ! "“UWTV‹§iš ¥‘’?¡ŒE§K O9(¥¢ ¥¨()¨¡ */¡8 ¡ £23 +/ ¡;Rwp "

$¥% ' ¡ O,?M¡ + ¡J¥%# `& + ¡J¥¨V +O  )%'3 +)¨¡&"©¡£C(£ ¥¨("

Ã'¡#©¥¨""/ ¡¤23 @?r :2(" ©¥%!@?(2(¡¤ ¡¦)¨"¡ :2(¥¨ ()

23 +U  ¡#"'ØY£¡ !O©( ¡£"¡X /¥%'V2"@;

Œ¢I  >23 `LM¡Y/¡¦¡P ¡'("¡3?> (¢2(¡Y"@ +£fN4$ @ +§ ¡*$¥% ›

" 6¡\S § ©( ¡?2¡8_M `L~ &]I +)%'3 )%¡4©@©¡¦£C£ +!¥%3abcx"©¡£¦.

¥¢ ¥¨)%¡ ¡\""*'¡8¥P@  [£   [¥¨©(!§Y!n< ¥¨ ;ÂWI2,'("

}

C¡"[23 +4l ¡ £23 +/ ¡U¥¨/10$¡£["* +,OX¥¨/10$¡¦£:2 [£ K/¡u £¦.

2¡:C3 + !n¦¡J§ ¡2(¥<8§4 `O/¡JLM¥¨NM¡¦5 +I2"I©¥¨@?{ 

}

£¡""¡¦t| +O7©¥%¡p + J£¥%,'()5£¥¨§Y©'@ +¥¨Q$ ¥%§ +O

H[ Ó `Ñ@ÒM¢¥¤u§K O9 '(7£¥%£'(  ¡ OEI2bH[ Ó `ÑtM¢¥¤¡;

ý ý

LM¡42 ¡ +3;¹ò©§ n()E @ +"T¥¨ §4 +!¥%"D£< €/¡4¡")%¡

wpr/¥¨2D'(©3 ¡&2(¡&"@ § ¡# @ " '(£' ¡?2"V" (¡   O

23 + ¡¦'£¦¡U2(¡&'§U/¡ V¥¨x¥¨/10$¡£¦":23 + + ¡¤ ¡< £23 /( ¡U¥/¡

£¡ @ +D¥ /¡&' ££¦¡©@ +/ ¡;

¡""X23 72¥%"¡KI2£f2Â¥¨'( -3 +!L¨¡ O7/¡K£¥%"¡¦ ¡- ¡ +£f2(.

P¡¤£ ¢¡"'( ¡Y2 JH[ Ó `ÑkÒl¢¥¤u (8H[ Ó `ÑtM¢¥¤& '

ý ý

/( ¡; oP P¡[/¡ ¡LM¡J2 A!X )¨2^¥¨S2¡Y /¥kLM¡ ¡\S § ©( !¡

"¡Ã'¡¦, + ! O5/O ()4 ¥<£fN)~?V ¡ÎšŸ¡Î¢/O¢§K  N)†›

¥%V"'Ø £¡ O© ¡£¦!"¡<;

Ä("

(3›TV‹§‘ TV¢ D +"["O(£f2( ¥¨n¡¦3;

§ (!§K  "¥% !'(¥¨4¥*2"[© ¥¨/( ¡§­$¥¨ _M `L~ :A¥¨'( !4/¡&¥

}

""&23 + ¢¥¨/10$¡£¦&!"& ¡< £23 /( ¡4 & ¡ +"&' 32¡Y ¥<£N4¥¨

WI2("U"u &¥<("&I252(¡Y¥<££ +"¥¨3 + # (L!£¦¡ ¥9 `LM¥¨¢"O,(.

2¡¤¥¨/10$¡£¦&23 "&/¡¦¡¢ ¡¦ !¡< "¡5T¥¨ &2(¡Y  "&§ ¡;&WI2"&A¥¨' 

£2 ¥%n +!¥%K8C  n¡ "@;

¡ § 3 +¡ 2¡U© ¥%/ ¡§«!62¡8 /¥kLM¡U¡\S §Y© ¡Y¥%£¡¤¡Y§K NM¡ "O,(£f2( ¥¨(!n¦¡3;w £¥%' 7  "¥X/¡U'("¡K¥¡ § 3 ¡U£¥%  ¡.

3.4 Reachability and Optimization ›

"©¥¨()Y© ¥¨/( ¡§ "VD¡\S § ©( ¡"¤e¨;h¨;e* (9e¨;h%; ¢~;

dY¥%"¤"©¡¦£C£ +!¥%"¤$¥¨ ¤  )%'3 +)¨¡"¤"'©©¥% )KC  n ¥%

©@¥%§ ¡[¥¨12¡[£¥¨(" '£¥¨("¢ ©(©¡(!\ ¥¨12"© ©¡ @? +"

}

+ ¡Y¡¥¨3 +  !OK"¥%§ ¡I2 JL )%'¡K +/¥¨'(:C  n¡ J¡¦\,¡¦£'¥¨

¡¦ ! J "@?ST¥¨ U¡\S § ©( ¡?#lm3  n¡ '  (p +oD£¦¥¨" '(£¥¨R

O

§ ()u4/¥¨24 ¡£¦!¥%"@; WI2(¡OD(¥¨:¥% O9 + ! ¥kBC  n ¥%

agc?¨ ¡Ã' ¡I2 x£¡ @ +!*¥%2¡ x©¥%¡p +  !O¤' ££¡¦""¡ ¥¨/10$¡¦£"

¥&/¡I(¡  `OM¡3?k/'(: + "¥8 +  !¥k7C3 + !n¦¡ "A¥:/¡[¡¦\,¡¦£'¡¤¡   ¡

¡¦¡K¥*/¡&£¥¨("¡ ¡4 ¡ +£f2 /( !¡<;wpD©  £'  + @?(>2(¡ ¡#"

2 u§ )¨2^/¡J¡\©¡£¦¡3?{ "I2(¡J ¡"'( !I¥%r£¥%§ © ¡ V¥¨©(§ n .

¡T¡ ¡£¦¡:$ ¥%§v¥€¥J©8? +“¥€" ¡ +£f2 / ¡?MA¡:¡¦¡*¥¤N(¥@

¥%"@; P¡&C( "I£¥¨(£¡ @ ¡&¥%D2¡J  +¡ @;

23 +F©I ! 3(¥¨[/¡&C  n¡3; ¢¡#I!  £¦¥¨,'(¡#¥*§4 NM¡&2("

¢¡Y"@ `|P2¡¤© ¡£¦¡)u"¡£¥¨PI2,OK2("&§ )¨2&23 +©©¡

""'(§ ©¥%R¡ ¡X¡£¦¡""@  O,?S"(£¡u¡¦\,")K£¦¥<¡ ¡ ¡"Y¥%5

I26© L ¡U"'/¥¨/10$¡¦£"@;£$:¥kA¡LM¡ @?~2()¨":£< 4)¨¡:¡LM¡4 ¡""

(3?(¥¥%' :N(¥@I ¡()¨¡?3 +  3¡\!"()X§ ©( ¡§ ¡@ ¥%":"@ +"$O

©( ¡ "@ +,@;

@;-»$wp¤¥%' 7/¡P £¦£¡©@ +/ ¡8¥6 ¡" £ 2("K ""'(§ ©¥%7¥

Fr¥%"¡¦ Y +8¡\S +§ © ¡& ¡"¡§U/ )Y2¡:¡¦\,¡¦ 3  1¥¨/10$¡¦£V3 @

[ ÑMÜ* ª>,þMÜMÑkÖi[¨ÜMÓJ ¡$¡¦ ¡£¡¦"@;!½

¨

¡¦\r +§ © ¡u$ ¥¨§ "¡£¥¨“e¨;h¨;e%;9wE2(" £ "¡

WI2¡"'3 +¥¨9tFIi +©©¡ + "Y¥K/¡LM¡ O6"§  p + @? +R

2 `LM¡I¥¨/10$¡£¦"A¥%£  ""|¤£¥%@ )*  (¡\0UWŠ T,‹§!hŒ ¥J2(¡

¡¦¡-¥¨#"§    u"¥¨ '¥¨("@;“~¥¨ X"¥¨§Y¡¢¥%2¡   ()¨'3 +)¨¡"@?V2¡

¡¦\,¡¦ 3  > +  @ `O1¥ ;A: £2X¡ OY“¥Q"^'("¡/OK A§ ¥¨"¥¨¡£¤

¡¦C¥¨u¥¨Ylš ¡ £23 +/ !Oo*!"V¡L¨¡8 ¡""[© ¡£¦!"¡<;

¥%/S0T¡£@;rw>£¦¥¨@ "x¡2(¡ ÜMÜ©¥%!¡ @?k!@Ý ">¥%>£¦'  ¡ O

©

'("¡E/,O- O5¥%/S0T¡£@?>¥% ¥¨2(¡ I"¡9 * ¡$¡ ¡¦£¡u¥- +7¥%/S0T¡£

e‹B(h’4C(¡ 3;5WI2¡8C3 + !n¦¡ $¥% “¤ ¡"¡"*2(¡

£¦¥¨@ ()€ 3.5 Finalization must be asynchronous.

+  @ `O*¡ OY¥ ÜMܨ; ""'§ ¡ 23 +¦¤ 2 "& I§ ¡2(¥<X›&23 +

©

_M `L & ¡¦Ã,'( ¡":C(3  n¡ " ¥ 'K"¡8 J2 ¡ +42¥¨ (!()¥

}

"§ ©( O¤£¥%'"32¡,'(§¤/¡¦ ¥¨~"xLM¥<£ ¥%"x/OU(£ ¡§ ¡)

'"¡¦ .vL"/ ¡ ¥<£fN"@;uWI2(¥¨"¡L! '  >§4 £2(¡"¤2 U§ © ¡§ ¡¦,

2(¡&£¥¨  ¡¦"©¥¨()1R‹§(’(q

2"J£¦¥¨  ¡£ OE +©©¡ + J¥'LM¡¦ "@   OK¥"¥8/O8 '((!()C3 + .

n¡ "[9 "¡©  @ ¡&2( ¡ 8¥¨ V2 ¡ +"@?<¥¨(£¡&2¡&£¥%  !¡¦£¥¨ [23 +"

û

>þ![@Ô þ¨þ¢¥¤

¨

¡¦¡ § ¡ ? A!" !¡¦!"'( ¡?M23 +& ¥%/S0T¡£^"^¡ )¨/( !¡:$¥¨ C3 + .

{ {§|k€H^a^![ ÔÓs!m ÿ¨þ Ö,Ó@Ò£¦

ý ©

n ¥%3;



W ¥X'(¡ "@ +62¡U ¡ "¥%)D/¡¦242"& ¡Ã'(! ¡¦§ ¡@?

"'("¡$'( ¥#£¥¨("¡ @?%("¡ ¥¨A_M `L ¨?%2(¡V£ "¡[*I2£f2* ¥<£N"

Ë ¥k£¦¥¨"(¡ #I23 #2 ©©¡¦"&I2¡¦€ P!("@ (£¡”D¥¨œ¤·"

£ +¥%¤/¡X ¡ +£Ã' ¡R/O- 2( ¡  ;R»$~¥¨ ¤¡\S § ©( !¡

+££¡""/( !¡¤¥¨( !OX/O5 :"()¨ ¡¤2( ¡  ?r +D[!"[  " ££¡¦""¡4!

¥<£fN"@ag¨g+c ¥% N82(!"VJ OX/Ou(¡ +' @;½Jwp3C  n¡ "[£ 8/¡& '

2(¡& ¥<¥¨©

U +OX©¥%,I5 O*2 ¡ +3?1 [C(3  n¡ V ¡Ã'(! ()Y ¥<£fN«9§4 `O

£¥%!(£¡@ + ! OX/¡: '(uR V2 ¡ +82 U   ¡ +O2¥% "I ¥<£fN“« ;

û

þ@Òv¢u[ Öp[3fjxM¦y[Zzp‚ x xx x x xM¦.{{^[¤

¨

WI2¡X +¡§ ©(I¥ ¡ £¦Ã,'( ¡&2¡& ¥<£fNX ¡"'( !"V8(¡ ( ¥<£fNS;

Ô þMþB¢¥¤§¦

ý,¨

wp AC  n¡ x¡¦¡"x¥* +£Ã' ¡U A ¥<£Nr?k2¡ ¡!"xLM¡¦ OU  ¡I2¡



© ¥%)¨ @ +§ § ¡ [£ K(¥ ¥4 `LM¥%!82"V"£¡3 + ¥;|A>LM¡u!32(¡&© ¥%.

wp¡ ¡")% O,? +" ¡D("£'""*E2¡8(¡\Y"¡£¦!¥%3?x!Y¥¨'( 

Ä("

)¨ @ +§ § )¤  )%'3 +)¨¡?< !N¨¡ _M `L ¨?{   ¥kI"V !¥<£N"^¥U/¡: ¡ +£Ã' ¡

©( ¥¨/ / OD"'(Ø £¡U¥¡£  + ¡Y¥¨( OZ›6 +":"O£2 ¥%n¡ ;VWI2 

/O¤2(¡I"@ § ¡V2( ¡  ?@2¡I"' ¥¨¥<¡¦"A(¥¨x§ © ¥kLM¡;1wp"¡< 

A¥¨'( !€¡¦"' ¡42 “Œ€ ¡§4 ("u LM¡4' 2(¡4 ¡ ¡ "¡6¥¨&2(¡

¥¨ 7¥¨/L!¥%'"*`  ' ¡?AA¡DI  + ! ¥k­pA¥P ¥¨)%!£<   OÂ"¡©  @ ¡

+""¥<£ ¡t ¥<£fNS?& +-2'""'(Ø £¡ O7(¡  OEC  n ¥%t¥

¥¨©¡¦ @ ¥¨("@?< § ¡¦ !OY2¡V£ ¡2 ¡< 2¥% !()J«Q (X2(¡VC3 + .

¡¦"' ¡#2 V2¡&§ ¡¦2¥<"Y  ¡# '(D"¡Ã'¡   O,; "V"£'""¡¦

}

n¡ @?¥ 2¥% !.«B V2¡:"@ § ¡#§ ¡;3WI2¡&¡\S +§ © ¡&9 ©(©¡(\

/( ¡¡¨O Pa65c?M¥¨2¡¦ ^§ ¡2(¥<"^T¥¨ I)¨'  @ +,¡¦¡)U2¡: LM¡(¡""^¥%

Œu§4 `Ou/¡J2J  ¡D/O*£¥%§ © ¡ [¥¨©(!§Y!n< ¥¨("@; ÅZ  '" @ ¡¦"X2  2("*£ 7 ¡"'  ¡ § ¡ (£¥¨  ¡£¦

©(© ¥%©  ¡&©( ¥<£¡'( ¡"@; ¡¦\,¡¦£'¥¨ ;

WI2¡¦"¡   ¥ktC(3 + !n¡¦ "[¥U/¡J'("¡u"@ +$¡ OXu")% ¡.¾2 ¡ +¡ WI2("X""'(¡6J "¢ ©(©3 + ¡ !O9N¥kI7¥52¡9 +'2(¥¨ "¥¨ab+cp;

¡L ¥¨§Y¡"@?

'

Ä

3 + !n¦¡ "#I2¡¢!&"#"@ T¡*¥8(¥8"¥?{; ¡<;¤¥¨'("!(¡ £¥<(¡ "¡£¥¨(" 2 `LM¡ § ©( ¡§ ¡¡2"A!(£¥¨  ¡¦£ O*!2(¡   LM¡¦ "!¥%"@;

23 +I"2¥%' D/¡J¡\¡£¦'¡5 ¥¨§Y!£<   O,;xWI2(!"¤ +©©¡ + "[¥Y/¡J2¡ ¢¡9  )%'¡K2 2"*¥¨/("¡ L ¥¨-"X¡Ã'3 + ! OZ ©(© £ /( ¡6¥

"@ T¡"I& `O ¥#2 ( ¡ C(3  n +!¥%u")% !¡¦.v2( ¡ (¡£¥<¡

2¥%')%2K![23 +" "¥%§ ¡U£ ¡  "@ (L~ +,@ +)¨¡"[K£¡ @ +!4£¥%¡\"@q )~  / )¨¡u£¥¨  ¡£¥%3?V (R¡LM¡5VC  n ¥%E"¤!§Y© ¡§ ¡¡

²¥¨¡¦, + ! OR   )%¡R +§ ¥¨'(,"¤¥¨V£¥<(¡?x¡¦"©¡£   OR ¥¨)%.¾ '() / "¡8¥¨D(¡" '£¥% "@;

¥¨'(¡"@?§U'"[/¡#¡\© £ !O8"© N ¡KI24C3 + !n¦¡ :LM¥<£ +. ¥¨ U¡\S § ©( !¡

¥¨("@;^ÅS'x"'(£f2¤£¥<¡I§U'"3(¥¨3/¡^£ +  !¡¦*!¤£¥¨¡\"3 I2(!£2 +'¥%§4 £U§ ¡§ ¥% Ou§4 +3 +)¨¡§ ¡¦,[$¥% FIH&H&?23 +[(¡" '£¦¥¨ "

C  n¡ VLM¥<£ ¥%"Y  ¡&'("@ T¡; T¥¨ x2¡< ©Y¥%/S0T¡£"x"2¥%' Y/¡¦23 `LM¡^0T'"3 NM¡^¡¦" '£¥% ">T¥¨ x"@ £N

(¥¨2(¡ ^©¥¨¡¦, + S'("¡J$¥% Y +8¡\©( !£I£ +  S¥¤ '8C(3 + !n¡¦ " ¥%/S0T¡£"@?~ +U23 +32¡O&§U'"3/¡^ '(¤2(¡"@ +32¡^  "3 ¡¦$¡ .

}

"D¥9 ¡£  § £¡ @ t"O"¡§ ¡¦"¥¨' £¦¡"DI2£2  ¡P©  £'(. ¡¦£¡ ¥D +u¥%/S0T¡£I"I ¥%©©¡ ? ¡ÎšŸ¡ÎxX ¡"©¥¨("¡:¥D V ¡T¡ ¡(£¡

   OK"£ + £¡;:~¥% :¡\S §Y© ¡?~:"J£¥%§ § ¥¨6¥X$¥¨ £¦¡K &)  / )%¡ £¦¥¨'¡ &(¡£ ¡§Y¡@; (¢2(!"&"#¡\S £¦ !O4I2 #"&£¥¨§ §Y¥¨ O

}

£¥% ! ¡£¦!¥%Q (¢LM¥%NM¡¤C(3 + !n¡¦ "&I2¡ UC( !¡¤¥¨©¡6£ + ! xA¥¨'  (¥¨(¡P/OBFIH&H­ ¡$¡ ¡¦£¡¢£¥¨'(,u§ © ¡§ ¡¦,@ +¥¨"E»$£¦;Ûa ¢¨c½;

¥¨2(¡ I"¡ `  ~('¡^¥&  £NY¥%C ¡I¡¦"£ ©¥¨ "@;%$ ¥k¡LM¡¦ @?%2"x" ²O2¥%3ag¨j+c3'"¡" &"§    X +©©( ¥ £23;IwpK/¥%2K£ "¡¦"J¡" '(£.

£¥%§ © £ ¡¦K/,OX"¡LM¡¦ @  r""'(¡"@?,I2(!£2K¥¨T¡K"¡¡§¹¥*/¡&¥kLM¡¦ . ¥% "%Ê}+Y + ¡&'"¡u¥ § © ¡§Y¡[C(3 + !n¡¦ "@;

¥<¥¨NM¡¦3q Å1'I2"I¡(£¥¨'(¡ "V¡\S £ O2¡ "@ § ¡&©( ¥¨/ ¡§Y"[2 IA¡ ¡

¡¦£¥%'¡ ¡Z/,OQ¡ +  Oº_M `L ¢§ © ¡§Y¡@ ¥¨("@q =A'(¡5¥-2(¡

g¨;:¼x'(()D¥¨(¡uC(3  n¡ ¤§4 `OP£ +'"¡X¥¨2(¡ ¤¥%/S0T¡£" ¥4/¡

©( ¡"¡(£¡:¥%r ¡T¡ ¡£¦¡:£¥%')?MI2(!£2X!"¡")¨(¡X¥¤T ¡¡:2(¡

¡ !)%/ ¡K$¥% XC(3 + !n +¥¨3;9~¥¨ *¡¦\r +§ © ¡? X/('¡ ¡9C( !¡

©( ¥¨)% @ § § ¡¦ $ ¥%§|¥¨  OD /¥%'x¡ +  !¥<£< ¥¨X§ )?@2¡I§ .

§4 `O8¡¦¡K¥*/¡¤C(3 + !n¡¦E»  ¨('"2(¡3½ /¡T¥¨ ¡Y2(¡#'.

()J¥¨C(3  n¡ x¡\¡£¦'¥¨¤!"x(¥J ¥¨)%¡ x @ ("©3  ¡¦,@;13!  n¡ "

¡  O)D @ `C ¡*£ R/¡*C(3 + !n¡¦Q» (52¡*(¡"£ ©¥%

§K OY '** ¡"©¥¨("¡ ¥u ^ ¡T¡ ¡£¦¡:¡¦£ ¡§ ¡: J OK +""!)%.

¡£  § ¡ ½;Swp#2(¡A£ +"¡^¥¨rdY¥<'(  .fe>"O, ¡>¥¨ (¡ ¡UC3 + .

§Y¡ ¥¨ /( ¥<£fNR¡\@?[ 92(¡£¡5 ©(©¡  ¥62¡u© ¥%)¨ @ §Y§ ¡

!n< ¥¨ ?12¡YC3 + !n¦¡ "#¥¨'( 5§ © £ O6/¡Y 'P¢£¥¨(.

¥E/¡Â "O£2 ¥%¥¨'("@; =A¡<  ¥<£N"D,L¨¥¨ L!()Z K ¥<£N€2¡ Q/O

"¡£'LM¡¤£¥¨  ¡£¥%5£O£ ¡"@; "J¡Y¡\©  6! ©(©¡(\

2(¡V2 ¡ +*© ¥<£¡""()¤2(¡[ ¡¦$¡ ¡(£¡[£¥¨'(,x(¡£ ¡§ ¡¦,: (* ¡.

}

?(2(!" /¡23 `L¥¨ £  ?3 K¥%$¡6§U'"[/¡?¡§U'  ¡4

Ã'(! ¡¦ /O¤2(¡[C(3 + !n¡¦ J + ¡[(¡2¡ >© ¡¦£@ /( ¡[(¥¨ : `LM¥¨3 +/ ¡;

}

_M `L~ %;

w " !§Y© @ £¦!£<  x$¥% * J @ £()X)~  / )¨¡¦.v£¦¥¨  ¡£¥¨ #¥ 'KC(.

  n¡ "6 +Y¡\S £¦ !O¢2¡X©¥¨Y92 ¡ +R¡\¡£'(!¥%9I2¡Z 

h¨;>WI2¡K ¡"¥%' £¡7   ¥<£ +!¥%Q£   ?# ¡ÎšŸ¡Ît2(¡DC ¡K¥¨©¡¦-£   ?

¥%/S0T¡£¤/¡£¥¨§Y¡"YC(3  n +!¥%.¾ ¡ +O,;5ÅS'(¤¡¦LM¡5V¤£¥%' R¥

§4 `O /¡ §K ¡ $ ¥%§ £ ¡£¥<(¡:2 2(¥¨ " !¥<£N"@;rWI2¡"¡

"¥~?M2"^¥%' X!` £^§K NM¡ !A§¤'(£f22  ¡¦ @?¨ @ 2¡¦ 23 +¡ ".

!¥<£N"V§4 `Ou/¡J(¡¡(¡8/OC  n¡ "@;

¡ @?¥ I ¡&£¥¨  ¡¦£V£¥<¡;

©©¡(\uÅD¡\©3 ("3¥%*2¡8lm¡¦\,¡¦ 3  (¥¨/10$¡£¦A @ o&¡¦\r +§ .

}

WI2¡uC " ""'(¡8"*¡ " OZ ( ¡""¡EI27£<  ¡T' [!¡ ` £¡

©( ¡UT ¥¨§«"¡£¥¨7e%;!h%;e#¥*)%!L¨¡8 J£¥%£ ¡¦¡U  '" @ +!¥%¢¥%32¥k

¡¦"!)%3;V¼[ 2¡¦ I23 R ¡§ ©()Y¥Y 'R +  rC  n¡ "VI2

"O(£f2( ¥¨¥%'"DC(3 + !n +¥¨“t ¡"©¥¨("¡5¥“ 4 ¡T¡ ¡(£¡5£¥%'

(¡£ ¡§Y¡*£ -`  ['¡¦\,©¡¦£¡ O,;9WI2¡D¡\S +§ © ¡E  "¥5  '".

 @ +¡":2  § ¥<'( !¡u +/" @ £¦!¥%¢/¥%'(3  ¡" ¡¡£LM¡¦ !Ou§4 N¨¡

]

a(Ï¡Ö,Ó¡H ÿB¢¥¤§¦

ýV?

J§ ©¥%""/ ¡ ¥P L¨¥¨¢"'(£f24(!"@ +"¡ "@?¡LM¡4I2|lš¡¡¦ § .

]

a(Ï¡Ö,Ó¡H Ò [ ÑMÜ![tÑkÖi[¨þ ¢¤§¦

ý © ¬

"£o* ¡T¡ ¡(£¡.¾£¥¨'(!() ) + /3 +)¨¡#£¥¨  ¡£¥%3;

WI2(¡J¥¨T¡8 ¡¦©¡ ¡u£¥¨§Y©  "V23 8lšC  n¡ "¤  ¡J'(©( ¡.

(£@ /( !¡¦o6»$£;Vagc½ " (¡£¡""@ + OuT¡ '( ¡?<¥¨¤ (¡C£¦!¡¦£O,;

¡&"2(¥¨'( !8'"¡ û

3.5.1 Explicit Finalizer Invocation Ôþ

]

_¨ L r© ¥kL¡" § ¡2(¥< a(ÏkÖ,Ó¥H Ò [ ÑMÜ [tÑ@Öi[%þ ¢¥¤xI2£2

ý © !¬

]

a,ÏkÖ,Ó¡H ÿB¢¥¤§¦

ýn?

¡¦\,©( !£¦! O9$¥% £¡"C  n¡ LM¥<£ ¥%3;Z­:  ¥%'"*C  n¡ § .

]

a,ÏkÖ,Ó¡H Ò [ ÑMÜ![t<Ñ@Öi[¨þ ¢¥¤§¦

ý © ¬

©( ¡§ ¡@ ¥%"X (4© ¥¨©¥%"@  "X»$£`;*Fr¡3 + Xa!g%ec? '3  ( "@a6G+cp?

O



g¨Ðe[¨ÜMÓ¶¢*zkÒ,Ó<Ϩþ Ò(ÿ¨Ó Ñh>,Ñ![¨ÜMÑ¡`ÜMÓ ~

© ©

2(¡:A> ! ".f=A¡ ¡T"["@ +$¡XFIH&H©( ¥¨©¥¨"@ + a!Ù+cr¥% J<<Ñ>,Ñ ÜMÑ Ò,Ó !

ý ?Aý ¨

]

 rz a(ÏkÖ,Ó¥H Ò [ ÑMÜ [tÑ@Öi[%þ ¢¥¤€Ô[@ÔtϨþ¡HÓ@Ö%ÐR[ ~^¤

ý © !¬ !?

_¨ L ¨h%½x(¥ ¥%¤  & `O" '(8C(3  n +!¥%K© ¥<£¡¦' ¡¦"[§ ©( !£¦! O,?

/('[§4 `O8"¡< 4"§ © OD¡(Ã'¡'(¡&C3 + !n< ¥¨(.v ¡< O8¥¨/10$¡£"@?

WI2¡&"¡¦£¥¨(D""'¡&"V§ ¥¨ ¡&(!ØY£' V¥ ¡"¥% !L¨¡;

¡ `L)R¥52¡K£¦ !¡¥5 ¡ +-2¡8Ã,'(¡'¡E +7!LM¥%NM¡D2(¡

]

""'(§ ¡[23  a(ÏkÖÓ¡H Ò [ ѨÜ![tÑ@Ö^[¨þ ¢¥¤["^£ + ! ¡X$ ¥%§·

ý © ¬

}

2 ¡< K2¥% ) ¥<£fN.«B (K¥¥¨2(¡ ¥<£N"@;Vw[" ©¥¨""/ ¡Y¥~?

à

'

Ä ©@¡¡ $¥¨ ß¡¦\r +§ © ¡ pO©(!£<  £¥%§ ©   + ¥¥¦¤ á

 ¡ " !¥%)¨£ + ! O,?~ '8¡ £2KC  n¡ :4" ¥kI42 ¡< 3;WI2("

à

ââ~ã ã ã Ém ,„{ÆMƒk†ã ÇmƒkÉmÆM„~‡5ↃkÆ ˆn®,Ž¡â÷~â~øR¯R°â~øR¯R¯R±â

I  1£< '"¡:¡\S £ O*2¥%"¡:C(3  n¡ "I2 A¥U¥¨¡¡“«R¥U '

¯âR²~â~øR²e³R¯R´~øR³â ¥% 2(¡ § ¥¨ ¡ (¡@  ¡Þ("£'""¥¨ +

¥K£¥%§ © ¡¥¨ ;uWI23 +@Ý "Y©¡ 2 ©"#2(¡X/¡¦"UA¡£ R(¥?r/'(&

à à à

¥¥¤rámâ~â~ã ã ãYÉmÆMŽ¡Ém†ƒkˆmèM„~‰r†Émæ Œ â~Ž¡Œr‡5†¥ƒk†(⠆ÇmÇm„e‰Ž †(‡5â

£¡ @ + OR ¡ `LM¡"*¥¨©¡¦72(¡u©¥%""!/( !OE2  "¥%§ ¡D/( !¥<£NM¡9C(.

à

‡P„~‰ ˆm¥„~ƒŽµkçr‰ †ÇmˆmèMƒkÉ ¥‡5ÇxWI2¡*  ¡¦ ¤¥kLM¡  ¥<¥%N,"U2¡Y ¡Ã' ¡.

3 + !n¦¡ "^¥%' X23 `LM¡V£ '("¡X¥¨2¡¦ @?%©¥¨""/ O*§ ¥% ¡:¡ ¡")~?

§Y¡-¥¨ 0 `L~ %; !¥%)~;!ò/10$¡¦£@; C3 + !n¦¡2  lš2¡G2( ¡ «23 +

LM¥%NM¡" [ ÑMÜ![tÓ I  Â(¥¨B/¡º2(¥¨ )ñ O·'"¡ .¾L"/ ¡

¨

¥¨/10$¡¦£" ¥Y/¡J ¥%©©¡ ;

"O(£f2( ¥¨n +¥¨P ¥<£N"X;!;; o?> (¢2'("J£¥¨($'("¡"X 6§ © ¡§ ¡¦.

"¡¦£¥¨( ©¥¨""/ pO ¥¨'(  /¡ ¥ "" 23 

}

@ +¥¨D/(')YT¥¨ ¤ "©¡£¦!C(£ ¥%K/')~;rWI2¡ Ë s¹_M `L £¥%§ © ¡

O

Ò [ ÑMÜ [tÑ@Öi[%þ ¢¥¤·(¥¨­/¡í£   ¡ª$ ¥%§ £¦¥¨¡\"­23 

© !¬

£¦¥¨  ¡£¡¦­ 6"§    4§ © ¡§Y¡@ ¥¨G/(')“ T¡ 4¡5©¥%!¡

§ )¨2U2¥% !R ¥<£N"¤"2  ¡R/O6C3 + !n¦¡ "@;8WI23 +Y¥%' R ¡Ã' ¡

¥%'I2(¡J© ¥%/ ¡§4;r ¢¡J/¡ ¡LM¡J2(!"VJ "U £¥%§ § ¥%8§ "@ N¨¡&!

"§    : ¡¦" !£¦!¥%" ¥¨DC( !¡#¥%©¡D¥¨ [¥¨2(¡ V ¡"¥¨'( £¡u   ¥<£ ¥%

2("Y£¥%,¡¦\,@?1I2£f292 "U£¥¨ /'(¡R¥K2¡/3 +R ¡©'(@ ¥¨

¥¨'(¡"@? I2(£f2Q§ )¨2D£<   Ò [ ÑMÜ![t<Ñ@Öi[¨þ ¢¥¤¢¡    O,;

¥%3C  n¡ "@;

© ¬

Ê}+

WI2"¤ ©(©¡  "[¥ '("I¥ /¡X L / ¡X + !¡¦ 3 LM¡<; ¡ § ¡2(¥<"VR²O,2(¥¨

£¥%'¡3½3§ ¡§Y¥¨ O8§K 3 +)¨¡§Y¡:"£2¡§ ¡¦"@?("£¡U62(¡"¡#"O". WI2(¡K£'  ¡¦,¢_M `L ²w "©¡£¦!C(£ ¥%3agG+cJ"u'($¥% ' ¡ O

}

¡§ "[2¡#©( ¥¨)¨ @ +§ § ¡ 23 +" + !"¥X£2¥¨"¡¦K¥6 /" @ +£* `J Ou2¡ '(£ ¡ + 7¥%¹2¡€¡(¡º'("@ )¨¡t§ ¥<(¡ ?u¥¨ E¡LM¡ I2¡2(¡

¡¦@  "D +/¥¨'#I2(¡5¥¨/10$¡¦£"¤/¡¦£¥¨§ ¡3 +££¡""/( !¡<;Xwp#"#¥¨2(. 5"Q +££¡©(@ /( !¡7¥Z '(|C3 + !n¦¡ "5 2(¡72( ¡ |LM¥¨N)

¡ I"¡K§ © @ +££  V¥¢¡"'( ¡823 + C  n¡ "*£ +(¥¨ /¡u ' Ò [ ÑMÜ![tÑkÖi[¨þ ¢¤k;

© ¬

"¡X [£ !¡¦,V2(¥¨ )Y !¥<£N"@; ¢¡V£¥¨(£ '¡V2 >!>"©( ¥¨/3 +/ OY'("¡$'( ~¥&¡\© £ O LM¥¨NM¡

dY¥¨ ¡K"©¡¦£C£ + ! O,?A  +)¨' )%¡K¡")¨(""'©©¥% )PC(3 + !n¡¦ " C(3 + !n¡¦ "3¥ ¡£¦ p +§G¡¡¦¡# ¡"¥%' £¡"3#2" §K (¡ @;1 ¢¡J + ¡

"2¥%' D¡("' ¡J2(¡&$¥% ! ¥kI)~q `J  ¡:¥%S"¡¦LM¡ @  3_M `L~ ^§ © ¡§Y¡@ ¥¨("^23 +A§ ©( !£ O* OY¥

¥Y¥Y"¥~;VÅS'II"V¥¨I£¦ !¡<  V¥ '"I2 U +,O*¥% 2¡¦"¡J"O"¡§ "

wp ¤§¤'( !.¾2( ¡ (¡¢¡¦,L ¥¨(§ ¡@?!&§U'"&/¡¤)¨'  @ (.

(¥ "¥ £¥%§ © ¡¡¦ !OX"@ T¡ O,?,¥% [2( ¥¨'()¨282(¡& )¨2V!¡ ` £¡¦"@;

y

¡¡923 + C  n¡ " I  V '9“ *2 ¡< 97I2(!£2E¥ !¥<£N"[  ¡I2(¡ 3;1WAO©£   O#2"3§ ¡ +"32 3¡2¡¦ 3C3 + !n¦.

4. CONCLUSIONS ¡ "& + ¡ '( X2(¡ A¥kI2 ¡< 3»$"@½?@¥¨ 2 >C  n ¥¨(.

¡ (O-¥¨/10$¡£¦"E  ¡5¡(Ã'¡'(¡ (t2(¡Q 'Q¡\© £ O

¢¡A2 `LM¡A©¥%,¡¦U¥%'S23 ^FIH&H6(¡" '£¥% "V (u_M `L~ C  .

$ ¥¨§ª©( ¥¨)% @ § § ¡¦ .v(! +¡B2 ¡ +"@; WI2'("6C(3 + !n¡¦ "

n¡¦ "J + ¡I£¥¨§ ©( ¡¡ O¤(¡ ¡3 +£ !¡"@;VFIH&HP¡¦" '£¥% ": + ¡

§¤'("I/¡X   ¥@A¡K¥?1 (8¡(£¥¨'( @ )%¡K¥?1 £Ã'(! ¡& ¥<£N"@;

'("¡6¥8© ¥kL¡¤)¨'3 + @ ¡¡¢£ ¡ '(©- +£¥¨"X +&¡  .¾¡C(¡

©( ¥¨)% @ §¹©¥¨"@?<¡"©¡£   OX!u2¡J©( ¡"¡(£¡J¥¨r¡\£¡©¥%"@;rwp

wpP©(' ¡ O6")¨ ¡.¾2( ¡ (¡5¡L ¥¨§Y¡"&2¡*© ¥%)¨ @ +§ .

y

¥%' L¡¤ÊÄ:2¡O-  ¡8§Y¥¨ ¡8£¦ !¥%"¡ OR ¡  ¡E¥7_M `L~ 6›+”%•(™¡´Mžp¨À

§ ¡ U§¤'("U/¡*)%LM¡R¡\© £U£¥¨ ¥¨ A¥kLM¡ #I2¡R¥8 '

•(˜šÁ+ +µY (KÖMÒ ar· [ ÑMÜMÜar· /( !¥<£N"¥% @?¨!2(¡

ýMýMý¹¸Z¨ ýMýMý}¸

C3 + !n¦¡ "@;YWO©£ +  !O42(!"#I  A/¡K ££¥%§ © "2¡¦5/OK¡\.

£< "¡6¥¨& ¥<£fN"@?U›+”%•(™¡´MžpM•(˜šÁ+ +µ6/ ¥<£N"@?I2 -2(¡OZ  ¡6¥Q_M `L

© £ !OU¡(Ã,'(¡'¡¦!():C(3  n +!¥%.¾ ¡ +OU¥¨/10$¡£"@? "xKa6Gc;

[ ÑMÜ![htÓ&§Y¡2¥<("@;

¨

wY£¥% @ "@?@C(3 + !n +¥¨ Y  +)¨' )%¡"A NM¡U_M `L >"x¡£¦¡""@  O

WI2¡:  +)¨' )%¡:"©¡£C(£ ¥¨u§¤'("©( ¥@L¡[2¡[© ¥%)¨ @ +§ .

y

R¥% ¡ #¥K§4 +3 )%¡u ¡¦"¥¨' £¦¡"¤¥%2¡ U23 +5) + /3 +)¨¡.¾£¥% ! ¡£¦¡

§ ¡ 1I!2u rJ O:¥I¡"'( ¡A2 1¥¨/10$¡£"S ¡§4 +!# ¡ +£f2 /( !¡

§Y¡§ ¥¨ O8/3 "¡¦K¥¨4) + /3 )%¡.¾£¥¨  ¡£¥% .¾"£¥kLM¡ ¡6 ¡ +£f2 / pO,;

!¥%)5¡¦¥¨'()¨27¥P© ¡¦LM¡ © ¡¦§4 '( ¡DC  n ¥¨ ;7WI2¡

Â!2(¥¨'( 2" ` £ pO,?@ A¥¨'( !¤¥¨T¡¤/¡A¡£¦¡""@  O#¥[/3 "£ +  !O

p +"J '(.¾!§Y¡U ¡¦© ¡"¡@ +!¥%4¥¨: &©¥%,¡¦ J¥¢ 4¥¨/10$¡£¦

¡¦¥D2(¡ ) + /3 )%¡*£¥¨  ¡£¥% "¤A¥¨ N6P¥¨ (¡ &¥D§4 +3 +)¨¡*2¡¦"¡

§4 `O&"@ ©(©¡  3 ¥¨() /¡¦$¥¨ ¡I2(¡A  +"3 !¥%)¨£ + 3 £¦£¡""3¥[¥¨¡

¡¦"¥¨' £¦¡"@; !2(¥¨'()¨2P#23 +"#£ ¡   OP ¥<'(£¡- ¤")¨C(£ 

¥¨^"&C¡¦ !("@;¤WI2¡¦ ¡ "¡¡§·¥u/¡ £ ¡ ¢& `O"#¥8© ¥kL¡

}

+§ ¥¨'(r¥¨,£¥%$'("¥¨3?, © ¥%©¡  OJ¡")%¡# +£ !O&£ #/¡>'"¡

2¡[¡£¡¦""@  O*)¨'  @ +,¡¦¡"@?M/'A^¥<¡"¥¨J ©(©¡  ^¥U'"

"@ +$¡ O,?1 (8¥<¡¦"I¥¨& u")¨C(£ I£¥%§ © ¡\pO*/¡O¨¥¨X23 +

23 U +OX  +)¨' )%¡U"©¡¦£C£ +!¥%K£'  ¡¦, O¥<¡¦"["¥~;

(2¡ ¡ID§U' .¾2 ¡ +¡u© ¥¨)% @ § §Y!();

]r/ @ + OX£<   "[¥¤¡\© £ OXLM¥%NM¡:2(¡J) + /3 )%¡&£¥¨  ¡£¥%

y

2¥¨'()¨2X¡&/¡ ¡LM¡:23 IC(3 + !n +¥¨D"U u¡""¡  S £¦! .

}

ÂC3 + !n¦¡ "¢  ¡7 ©(©3  ¡¦, O9Ã'¡K'"¡¦$' [-§4 +3 )%.

O8D§4 +,Ou   )¨¡U"O"¡§ "@?(A¡#¥*¥%V/¡ !¡¦LM¡#23 [ "2(¥¨'( !

!()8 ¡  +!L¨¡ O6"£<  £¡ (¥¨(.v§Y¡§ ¥¨ OK ¡¦"¥¨' £¦¡"@;J$ ¥@A¡LM¡

/¡#'("¡K$ ¡Ã'(¡ !O,;:Å^ "¡4¥%K2¡& § ¡4"@ "£"J¡#2 L¨¡

© § LM¡"t"'£2Ì " _M `L~ %Ý "»ºRŠ(hU8š ’e‹B-ITV‹§‘ TV¢ ‘}TV‹

"¡¦¡3?%¥%¡V'"¡I©¡¦ Jg*)? )))U ¡¦"¥¨ >§ ¥% ¡[¥%¡  .¾I ¡*£¥<¡V"

§¤'("[/¡&£¦ !¡<   O8"©¡£¦!C(¡KI2K ¡"©¡£V¥*"O£2 ¥%n +.

©( ¥¨/ / ODO©£  ;UÅS' ¡ § 3 ()u'("¡¤¥%>C(3 + !n +¥¨6¥¨'( 

!¥%7/¡¦23 `L!¥% @? +92¡¦O5§¤'("K +££¥¨§Y§ ¥<3 +¡D2¡u £¦

¥%'£28(¡   O¡LM¡ O§ ¥<(' ¡J8"'(£f2u"O"¡§ "@;MAAL¨¡82(¡:"§4 + !

23 S2¡ ¡A§4 `O&/¡A(¡©¡(¡(£¡"V §Y¥¨) C  n¡ "@;^Fr'( .

+§ ¥¨'( ¥%>£¦¥¨§ ©( !¡¦\,O82(¡ ¡ KC(3  n +!¥%4£ K(¥¨ §4 + ! O

¡>  +)¨' )%¡ "©¡£¦!C(£ ¥%")%¡¡¦ @   O4 ©(©¡  >¥J + ¥¨

/¡V"¥¨  +¡¥ $¡E§ ¥<(' ¡"¥%>    )¨¡V"O"¡§4;1WI2"": ) +

/¥¨28£¦¥¨'"@;

(¡ ¡¤T ¥¨§ð¥% §4  UFIH&HB¡" '(£¥¨ U'"@ +)¨¡?3I2£2R¡("

¥¤/¡J + I§ ¥¨ ¡:©¡ L~ +"LM¡?MI2 ¡&¡ £2X!(L'3 + {'"¡:¡¦"I¥

"V`  ¤ "[C  n ¥¨K"V£¥%£¡ (¡3?<2¡¦ ¡&!"V(¥ Ã'3  @ LM¡

}

/¡&`  V ¡""[¡""¡  ;

¡ +"¥¨¥&© ¡T¡ :  ¡$¡ ¡¦£¡.¾£¥%')&£¥%  !¡¦£¥¨ A¥@L¨¡ J  @ +£)

WI2(¡V!""'(¡"T¥¨ J ©©( !£< ¥¨X© ¥%)¨ @ §Y§ ¡ "£¦¡¡ A¥%*2¡V +£

£¥% ! ¡£¦¥¨ @; ¡¦$¡ ¡(£¡ £¥%')£¥% ! ¡£¦¥¨ #§4 `OD23 `LM¡D #Ã' .

}

2  C3 + !n< ¥¨4¡¡£¦!L¨¡ OD, ¥<('£¡¦"* E +(!¥%3  32( ¡ 

@ LM¡¢ (L~ +@ )¨¡*R2 #¤§4 `O6¡T¡ U2¡ #¡\¡£'(!¥%R$¥%

¥% £¥%, ¥% ?r (82'"£¥¨(£'  ¡(£O""'¡"V§U'"I/¡J£¥%"¡¦ ¡3?

&"2¥¨ ¡¦ J©¡ ¥<P¥%A§ ¡;*Å1'J2(¡ J¡\¡£'(!¥%4§¤'("J" ! x/¡

¡¦LM¡9$¥% *¥¨2¡¦ I!"¡8"!()¨ ¡.¾2 ¡< ¡¦“ +©©( !£ +¥¨"@; )¨'3 +/ O

}

¡¦$¡  ¡ ?S +V !¡< "[!u"¥¨§ ¡#£ +"¡"@;

(¥R$'(3 +§ ¡@   OE¡«""'¡"5  ¡4, ¥<('£¡¦3?/'(2¡K§ . ©¥% @ (£¡¢¥%#'(¡ "@ ()R£¦¥¨£¦'  ¡(£O7""'(¡"D"8¡ ¡L ¡¦3;

©kO£2 ¥¨(n ¥¨8!"V¡""¡¦, + r$¥% VC3 + !n¦¡ "@; 5. ACKNOWLEDGEMENTS

]^ ()¨'3 +)¨¡[§ © ¡§ ¡¦,¥% "A§U'":  "¥# ¡"©¡£¦A2(¡I £¦23 +AC(.

WI2¡#¥%/"¡ L ¥¨(" +/¥¨'( 2(¡&¡£¡¦""!O8T¥¨ ["O,(£f2( ¥¨(!n< ¥¨

  n¡ "x3 +' @ + ! O#£¥%"'¡# >"¡©3 + @ ¡# +"O,(£f2( ¥¨(¥¨'"32( ¡ 

“C(3  n¡ "K)% ¡í¥¨'(K¥¨Y("£'""¥¨("@?J¥¨@ +/ O€I2¹Å^ +  O

¥%x£¥¨ ¥¨ ;!ÊÊWI2("* ©(© ¡"[¥6 OuC(3 + !n¡¦ ":¥¨K2(¡ ©8¥¨/10$¡£"@?

$* `OM¡¦"@?§4 +OuOM¡<  "Y )¨¥~;>WI2(¡U©( ¥¨/( !¡¦§4?2(¥¨'()¨2D(¥¨V2¡&"¥% !'(.

I2(¡¡¦LM¡ U2¡"¡X/¡£¥%§ ¡u ££¡¦""!/( ¡R 8 ©¥¨¤2 U"Y¥%

¥¨ ?"[©3   + ! OX¥¨'( !(¡DRa65c;

£¦¥¨§ ©( !¡¦¡ O€ ©(©3 + ¡U¥K2(¡*© ¥%)¨ @ §Y§ ¡ @;Xw5©3 + £'   @?rC(.

©@¥%§ ¡*¥¨2¡*£¥%£ '"¥%"U2¡ ¡ )% ¡¥¨'#¥%^"£'(""!¥%"¤¥¨

  n¡ ""2¥%' E¡LM¡¦ Y/¡8 '(9!§Y© £ !OZ +" ©3 +  ¥¨ £ ¡

2¡&)%£0V» Ë s¹_M `L :£¥¨§ ©( !¡¦ @½3§K  !() !"@; Ë:¥%@ /( !O ( ¡

O }

2( ¡ uI2£28§4 `O*/¡J2(¥¨ )¤¥¨2(¡ I ¥<£fN"@; "^J "VN¥kI8¥

$* + ¡OrÊ`ÍY©¥¨¡7¥%'*2(¡83 +)%¡ *£ + ! )P '3  n ¥¨

}

»$"¥%§ ¡V¥¨k½~2(¡#_M `L~ >£¥¨§ §U'(pO,?¡2"[ ©(© ¡"A~2(¡^¥¨/10$¡¦£"J + ¡

$ ¥%§ì J2( ¡ K2(¥¨ ) ¥<£N,"@?3 ¡Î$Ÿ¡Î[I2 ¡Y O)*¥¢ + ! ¥<£ +¡K

§K 3 +)¨¡Â/,O€ B +'¥%§4 £K @ £¦!()P)~  /3 +)¨¡K£¥%  !¡¦£¥¨ @;BÅS'(

C ¡A¡"£ ©(¥¨ @;^»©k¡LM¡ @ +

D  "¥- +©©( !¡"¤¥4"¡§ .f '¥%§4 £5» ¡ÎšŸ¡Î6§4 +'3   O5 ¡T¡ ¡(£¡

¡ OR§4 (¡D"§    ¥¨/("¡ L~ +¥¨"*"¥%§ ¡I2 ¡   ¡ @?A2(¥¨'()¨2

¥%VN,(¥kI8¥ 2(¡ '(2¥¨ ¤ +I2¡&§ ¡;½

"§    [©¥¨["V§4 +¡&R ¡ÎšŸ¡Î agc

ÊÄ

'OP©@¡¦¡ ¡U£¦¥¨ /'¡¦D¥*"¡LM¡ @ + r(!"£¦'""¥¨(":¥¨KC(3 + !n¡¦

}

O

ÊÊ

wp3§U'"x/¡U "O£2 ¥%¥%'"3 2¡I"¡¦"¡I23 +x2¡^C(3  n¡ >£ +.

¥¨ (¡ )R|_M `L ¨?^I2£2|  ¡4©     O ¡¡¨(¡£¡Â2¡ ¡;€WI2¡

(¥¨ + & `O"& '7 J2(¡¤"©¡¦£C£ ©¥%! JI2(!£2 #2( ¡ 6".

(¥¨O§ ¥¨'("V ¡L!¡¦¡ "V© ¥kL¡u§4 O'"¡¦$' 1"')%)¨¡"¥%"@;

£¦¥@L¨¡ " 2(¡&¥¨/10$¡£¦ ¥*/¡&3 +££¡""/( !¡<;AWI2"[¥<¡"[¥%[/O"¡ 

à

Ê`Í

©k¡¡ ¥¦¥¤ ámâ~â~ ÆMÆMÉm ~‰1Œ Ém„~ƒk ~â~‡PÇm⼆®,†âR‡e²R²~øµkøe‡~â ©( ¡£ '(¡8£¥<¥%©¡ @ LM¡8§¤'( !.¾2 ¡< ()? I27©¥%¡p +  !OR(¡.

à

‡5Ž¡ R²e²~÷R¯R²~É ¥‡5Çv; ¡¦ § "£U¡¦\,¡¦£'¥¨ ;

6. REFERENCES D: A: B:

a!g+c_M;S_M;SÅ1 !¥<£23;½§@ +™¡œm˜ ¾¡ =¿<– ¾¡–“À>žp¡Ÿ¡žp–¨—Y—Y˜$•Ÿ2Á–M•Ÿ 4–MŸ¡

¬|4˜šµM ¡; ("¥¨(.v ¢¡" ¡O,?hu))g%;

}

a!h+c:$*; .f_M;1ÅS¥<¡2(§4; )  / )%¡U£¦¥¨  ¡£¥¨ [$¥% FQ +RFIH&H&;

}

2© ; 2© ; £¥¨§4¸+©¡ "¥¨  ¸u$ (" ÅS¥<¡¦2§4¸+)¨£¸%; 2©3q¸¨¸+IIU; Permanently

reachable

a!e+c:$*; .f_M;1ÅS¥<¡2(§4?r¼[; N"¥%3?{ (9dK;1²{  ""@;S¼x¥%©¡"@q  }

} table Added link for ordering.

%Â(Ã+œn7x–Mž =ÀAž–M™¡œm˜š™+ –M•(µ  ¡  LM¡&¥ " ()¨"@; Added By As constructor.

Deleted by As finalizer.

½¡Ä}Å, ¡žf˜š ¡•(™+ ¡? hG%»g¨h¨½qg%e¨gG*Æg%e¨eu)~?A=>¡£¡§U/¡ ¤g55G¨;

a ¢%c ;1Fr¥¨ L! ?rÅ^;1=J `¡¦"@?r²{;S=>!§Y¥@LS?{ (9=J; ( ¡ @;SÅ1¥<¥¨"

O }

"§4 + [©¥%,¡¦ [ / @ + O,;

NVˆm ~Œrƒ@ Ýá=Þ:‰M‰v„~ƒkÆMˆm‰ Pç ‰ †Çmˆm訍,ƒ*ær,¤x‰ æ ‰ ƨ6„e‰|¥­„~‰8©

2©3q¸¨¸+IIU; /¥<¥¨"@; ¥¨ )~¸ /"@¸"§K   ©( @¸¨;

a#G+c¼[;ÇX;{=AO/L!)~?{FI;rÅS '()¨)¨¡¦§4  ?r (R=J; A>/O,; '  (p +"

O

2¡¦"¡q ò OK¥%'£2)u2¡ ¥%/S0T¡£&"¡ I"&'"¡ ¡""@?S"(£¡ &"

9 )%¡¡ @ +¥¨.¾/ "¡D)~  / )¨¡#£¥%  !¡¦£¥¨ @;(w8ÂiÈ@¬|À|ÁÉ£Ê

¥8 !¥%)%¡ ¤ ¡< £23 /( ¡?I (52'"&£ +3Ý ¤/¡*"¡¦¡5/O42¡* ¡"U¥¨

¯

Ë Ì Í

M•hÃ+ ¡žp ¡•(™ ¤M•yÀAž¡Ÿ¡žp–M—¤—Y˜š•(Ÿ=Á~–M•(Ÿ 4–MŸ¡ ’: ¡›+˜šŸ¡•4–M•(µ

2¡:© ¥¨)% @ §4;

È—CÅ°± ¡—Y ¡•œm–¨œm˜šM•?©3 +)¨¡"¤hu)~ÙuÆ~h¨g¨j%?3_f'(¡g55¨e%;

WI2¡ /¥kLM¡ £f2 )%¡"I¥%3Ý # +¡£I2¡ "§ © ¡:(¡   ¥<£ +!¥%K¥¨

¯%Î ¯%Ñ

Í Í Ï Ð

a!j+c:A:FId ;%Â(œm–M•µ¨–Mžpµ½ É[À Á~–¨•Ÿ 4–MŸ¡

}

"O"¡§B ¡"¥%' £¡"@;r¥¨ >¥¨2¡¦ >N("3¥¨C(3  n¡ "@?@/¥¨2 £23 +)¨¡¦"

ÂÅ, +™¡˜ ¿ ™+–Mœm˜šM•(;iAJFId ?S=>¡£¡§U/¡ ¤hu))g¨;

}

(K£¥¨§Y© £ ¥¨("@?K23 ¤ JC  n¡ [£ K(¥* ¥¨)%¡ * +""'§ ¡

a!Ù+c_M;S¼ ; A> ! "Y 5=J;<]I;1=A¡ ¡$"@;S© +$¡?<¡Ø £¡V) + /3 +)¨¡

23 +I2¡&¥%/S0T¡£"[!I(¡¡("[2 `LM¡J¥%VOM¡I/¡¡uC  n¡3;

£¥% ! ¡£¦!¥%K$¥% YFIH&H&;MW ¡¦£f2(£  ¼3¡©¥¨ #FI©k]r.5¨e+.¾¢?!&:¡ ¥k\

P¡ /¡ ¡LM¡¹23 +G£23 ()¨¡ð»h%½B /¥kLM¡º"« (¡$¡¦£|23 

²3  ¥ !¥K¼x¡"¡<  £29Fr¡¡ @?1©@¡©(¡§¤/¡¦ Ug55%e¨;

}

23 +" /¡¡¦ ¡¦§ ¡¡ª _M `L ·I2ï2¡ð¡¦© ¡£ +¥¨泌

a!b+c_M; ¥¨" )?SÅ^;1_f¥kO,?S + ;1©@¡¡¦ !¡<;^³r´M 0¿<– ¾¡–“Á~–M•Ÿ 4–MŸ¡

O O

ºRŠ(hU8š ’e‹B-ITV‹§‘ TV¢ h’RŽßI‹§àŒRTV?V (9"2¥¨'( 7/¡u ¡©3 +! ¡¦7

ÂÅ, +™¡˜ ¿ ™+–Mœm˜šM•iÒq +™+M•(µW½>µM˜šœm˜šM•(; (!"¥%.¾ P¡¦" !¡¦O,?hu)));

}

FIi ;r~¥% J ^A¡  !.¾(¡")¨¡¦X¥%©¡ @ ()U"O"¡§|"ApO©£ + ! O¤¥¨

a#5+cÅ^;!$* `OM¡"@;<33 + !n +¥¨482¡&£¦¥¨  ¡£¥¨ [¡  +£¡;,w

:")¨(!C(£ V§ © ¥kLM¡¦§ ¡V$¥¨ [C  n¡ "[23 +[¥% OX ¡' D ¡¦.

Î Î

È•œm ¡ž•–¨œm˜šM•–¨°;Ó4¨ž9¡›+´MÅ5M• ¡—Y¨žf” –¨•–MŸ¡ ¡—¤ ¡•œ

"¥¨'( £¡"I¥U2¡ ¥¨©¡ @ +!()Y"O"¡§4? ¡Î$Ÿ¡Îx/O £ ¥%"!() C ¡ ¡"£ ©(.

Ô

ÎWÎ ¯

ÌÕ Í§×VØ

ÈÓ Ò£Á%Ê Â/Ö ?,© )¨¡¦"Yh%Ù¨Ù*Æh5%b¨?3g55¨h%;

¥¨ "@;#ò©¡ @ +)*"O"¡§ "[)¨¡(¡ @   OK ¡£  +!§«2¥%"¡#¥¨4© ¥<£¡¦""

ag*)¨cX_M;$:¥¨ ()?1Å^;!ÇX  "¥kU?r²{;1dY£_f¥¨(¡"@?r + ;<Ë:¡¦ !"¥%3;

O

¡\u O& `O¢¥R L¨¥¨5 ¡"¥%' £¡ ¡ N"UI2¡P© ¥¨)% @ § "¤£ @ "2 ;

©@¥%§ ¡&'"¡¦$' 1§ ¥<('  .fe ¡  +£¡"@;(Wr¡£f2(£ + ^¼3¡©¥¨ 

ÅS'( 42"[¡L, ¥%§ ¡[¡U¥*(¥¨[N,(¥k“2¥kt¥I !¡U ¡ .

g¨g%e¨?1=A)¨@  ©@O"¡§Y"#¼x¡¦"¡  £2RFr¡¡ @?{=A¡¦£¡§U/¡ Ug55¨e¨;

/( ¡ C  n¡ "&23 +:(¥u§U'£2¢§Y¥¨ ¡Y2 62"@qIWI2¡ ¡¤£ ¢¥

ag%gc&w}A¡A¡AB (DWI2¡*ò©¡ ¥%'©3;BȽ¡½|½jÂ(œm–M•µ¨–Mžpµ

O

¥¨()¨¡ U/¡4 Y)¨'  @ +,¡¦¡*23 X +O6¥%2¡ #¥%/S0T¡£"@?r¡LM¡¦P^2¡¦O

Í Õ

;(w}A¡A|A:?1hu))~g¨; Î À

Ù Ú Ú Ú Ú Ù Ù

 ¡&£¦ !¡<   O ¡ £23 +/ ¡&2 ¥%')¨2X¥¨ (3  O ¥<¥%"@?,23 `LM¡ ¥%I/¡¡

ag%hc ;<Ë:¡ "¥¨ ?,¡(¥¨ @;B”@›œm ¡—¤›IÀAž¡Ÿ¡žp–M—¤—Y˜š•(Ÿ=7x˜šœm´

O

×

C  n¡D/¡¦$¥¨ ¡u )%LM¡8C(3 + !n¡¦ '("@;!Ê

Î

Í

¡µ 4°±–MÀ ;S²{ ¡£¡.V$   ?rg55¨g%;

A>LM¡I IC3 + !n¦¡ I"§ © O*& +"^¥¤)%¡¡¦ @ ¡J¥%'©'(¥U2¡

ag%ecX²{;S¼3¥kL¡ @;{òR +(!() ) + /3 +)¨¡#£¥¨  ¡£¥%E u '§ ¡

"@ (3 + X¡¦  ¥¨ I" ¡ +§ "^2  ¥¤"¡¦¡:2¥k-A£ X)¨'  @ ¡¡

pO©¡"I¥K " ¥¨()¨ O.vO©¡3?M"@ £ +  !O.¾£2¡£NM¡ ?

23 +V!II  r(¥¨V23 `LM¡:/¡¡D©( ¡L!¥%'" O£ ¥¨"¡ ; ©k£¡J2(¡&¡\".

£¥%£'(  ¡I p +)%'3 )%¡;(W ¡¦£f2(£  ¼3¡©¥¨ UFI©k]r.fb¢%.¦Ù%?

¡(£¡&¥¨[ C(3 + !n¡¦ T¥¨ Y ©3 + !£¦'   [£  "" !"V)%¡¡ @ +  !OuL!¡¦¡

&:¡¦ ¥@\¢²3 + !¥ ¥4¼x¡¦"¡  £29Fr¡¡ @?1_f' O¢g5%bG%;

" A©( L~ +¡I!§Y© ¡§ ¡@ +!¥% ¡¦@  (T¥¨ x23 +x£  ""@?%¡L¨¡ O#C3 + .

}

¯œÜ:Ü

ag+¢¨cXÅ^;1©@ ¥%'" '© ;^³r´¨ ¤’ ¡›˜$Ÿ¡•6–¨•µ“½|¾¡M°Û4œm˜š¨•6uà ;

n¡ >¥%' *23 `LM¡I¥J/¡V©( ¡©3 + ¡ $¥% A¡¦LM¡ OU¥¨/10$¡£>A¥%'£2¡"x¥

("¥¨(.¾ P¡" ¡O,?{g55¢~;

23 `LM¡&   ¡ (O¤/¡¦¡YL~ + ! ¡ ;Swp3"x23 +  ¥:"¡¦¡[2(¥kE3A¥¨' 

}

/¡>© @ £¦!£<  <¥[I !¡>C  n¡ " '((¡ r2(!"SN!(&¥¨r ""'(§ ©¥¨ ;

agGcX©@'(RdY£ ¥%"O,"¡¦§ "@;r_M `L h ©( p +$¥% §4?,"@ +3 + D¡(!¥%3?

WI2¡"'3 +¥¨R"D +)¨)% @ L ¡¦E52 u O6¡  ¥¨ "D  ¥¨()K2¡"¡

L¢g¨; ¢; )¢ ©(S"©¡¦£C£ +!¥%3;

¡"¤  ¡# NM¡ O¥ ¡"'( !VD¡ § ¡I"O§ ©¥%§ "@;

2©3q¸¨¸+0 `L ¨; "' ; £¦¥¨§4¸+0h"¡<¸¨g¨; ¢~¸¥<£¦"@¸¨ ©(¸M?h*))h%;

P¡#/¡ ¡LM¡U23 +:£23 +)¨¡8»h¨½x& +"J§ ¥¨L ¡4/OR J(¡" ¡¤¥

ag%jc ;

O

)¨'  @ +,¡¦¡^23 + C  n¡ "3 'U¡LM¡¦,'   O&¥ ¡¦3 /( ¡^2¡§Z¥:/¡

2©3q¸¨¸+IIU; ©,O2(¥¨3; ¥% )¸(¥<£¸£¦'  ¡@¸ ¡¦¸ ¡¦; 2§ ;

'"¡¦*$¥¨ A@ "N""'(£f26 +" ¡§Y¥@L)#¡§Y©¥¨ @  O¤C ¡"@;r ¢¡["2(¥k¡

R¥¨'( ¤  "¤¡\S § ©( ¡uR"¡£¥%“e%;h¨; ¢423 U2"U£ 9/¡¥%¡

A. APPENDIX: FINALIZER ORDERING £¥%  ¡£ OuI2(¥¨'V2(!"V£23 +)¨¡<;

_¨ L rC  n¡ "V +FIi lm(¡" '£¦¥¨ "oV¡ 1$ ¥%§Z2(¡:dY¥<('.

Fr23 +)%¡Y»g%½{">§ ¥¨ ¡V¡ ¡")~?¨¡"©¡£ + ! O "(£¡V!>23 +"A©¡¦ .

 +.¦e%¸¨Fr¡  ©©( ¥ +£f2Dup¥Y!§Y©¥¨ @ V& `O"@q

""¡PÂ_M `L~ %;Jwp: ¡¦Ã,'( ¡"J23 +J2(¡YC  n¡ JT¥¨ &¥%/S0T¡£¥

¡¦©¡("[¥%E (¥¨2¡¦ :¥¨/10$¡¦£:©u?,I2(!£2K§4 `OR + "¥X2 `LM¡u :C3 + .

g¨;Jò/10$¡¦£"r§4 `O /¡AC(3  n¡#¡L¨¡&,2(¡O* + ¡A ¡< £23 /( ¡$ ¥%§

n¡ @?r¥%/S0T¡£0¥ I ! A)¨¡(¡ @   O5(¡¡5¥D¡¦\,©( !£¦! O¢¡"'( ¡*23 

¨œm´M ¡žJC3 + !n< ¥¨(.v¡¦3 /( ¡7¥%/S0T¡£"@;¢WI2'("K_M `L ¥%/S0T¡£"

¥¨/10$¡¦£q©t ¡§4 +!("J +££¡""/( !¡

I2-(¥¨(¡§ ©OR¿3•(–M°±˜šÁ+ § ¡2¥<("§¤'("*¡\© £ !OE@ N¨¡

£¥% ! ¡£¦¥¨ [!§Y© £ !Ou23 + ¡u2¡J¥% ¡ ();

£<  ¡[¥¤NM¡¦¡©*¥¨/10$¡£¦"^2¡O¤¡¡¦P +££¡""/( !¡ 2 ¥%')¨2"¥%§ ¡

WI2" "3©¥%""!/( ¡/OJ"§ © O&2 L)C¥YÝ "r£¥¨(" '£¥% V (2©-¥

¥%2¡ I© 2 ;

¡ +£f2 /( !¡# @ " '(£' ¡I¤4?S (82¡¦823 `L)1¥YÝ "[C(3 + !n¡¦

h¨;AwEFIi ? J ¡ +£f2 / ¡¤¥¨/10$¡£@?3 ¡Î$Ÿ¡Î K¥%/S0T¡£J(! ¡¦£ ¡¦$¡ .

Ú

Ê

¡§ ¥kLM¡&2(¡J ¡T¡ ¡£¦¡ +"V!"V"2(¥@I8!8C)¨'( ¡J¢;

¡¦£¡X$ ¥%§í I"@ £J§ ¡§U/¡ ^¥%I V£  ""I§4 `O*/¡JC(3  n¡

+:©( ¥¨)¨ @ +§ ¡ §Y! ¥¨ ; _M `L #2 7 J £¦! pO4¥¥2(¡

×

Ê

"r"r"S©¥¨¡#¥¨'1#2¡ _M `L~ ²{w(¥<£'§ ¡¦,@ +¥¨uagGc?¡2¡

} }

"@ +§ ¡?<2¥%')¨2823 I2 "V"£¡&/¡¦¡D¡¦© ¡£ +¡3;

¡ + ¡ "¥%K$¥% :¡¦© ¡£ +)*2"[£   9_¨ L :& +"* +©©3 + ¡ O

¥¨( OY§   O ¡  +¡*¥#2"@;Swp{¥%2¡ >2 ¡ +":  ¡[" !  '()

Å1¡$¥% ¡^¡>"£'("" 2¡"¡

» "X"u NM¡ O7!€2(¡K© ¡"¡¦£¡4¥¨& ¡§Y¥¨€2 ¡< "@½?^2(¡ ¡K"

¡¦ @   Ou`   S¥Up¥¤£ ¡¦)¨¥¨ ¡"@q3WI2¥%"¡&23 +^"§ © O¡ +  !¥<£< ¡

 "¥u¥X& `OD¥X)¨'3 + @ ¡¡¤23  C  n¡ "&¥%3Ý J/¡U£   ¡¢¥¨

¥%©¡ @ ()¤"O"¡§ ¡"¥¨'( £¡"@?{ (*2¥%"¡ 2 ¥%'£2*¥¨2(¡ '("¡

¥¨/10$¡¦£" 2 U + ¡U"  1/¡)4 +£LM¡ Ou'("¡3;

Ú

Ê

 @ :" '(£' ¡"@; '"¡¦$' SC  n¡ [§¤'("[)%¡¡¦ @   O8¥Y¥¨¡#¥% WI2("u ¡ ¡"X¥¨-¥%' ¡ +  !¡ 5 ""'(§ ©¥¨B /¥¨'( ¡ £23 +/ !O,; }

îWîDôS†(‡5¤ Çm(;

A: A: A’: â~Æ

á^á^á^á^á^á

â^â^â^â^â^â

á^á^á^á^á^á

â^â^â^â^â^â á^á^á^á^á^á

* â^â^â^â^â^â *

Fr¥¨("¡ ^ ()I2¡xT¥¨  ¥@I():¥I2¡ lš¡\¡ 3 + ¨¥¨/10$¡¦£r @ o

á^á^á^á^á^á

â^â^â^â^â^â

á^á^á^á^á^á

â^â^â^â^â^â

å^å^å^å^å^å^å^å^å^å^å

æ^æ^æ^æ^æ^æ^æ^æ^æ^æ^æ

á^á^á^á^á^á

â^â^â^â^â^â

å^å^å^å^å^å^å^å^å^å^å

æ^æ^æ^æ^æ^æ^æ^æ^æ^æ^æ

á^á^á^á^á^á

â^â^â^â^â^â

å^å^å^å^å^å^å^å^å^å^å

æ^æ^æ^æ^æ^æ^æ^æ^æ^æ^æ

¡\S §Y© ¡8T ¥¨§ "¡¦£¥¨“e¨;h¨;e¨;PWI2(¡8£ +  ;!š R !‘},» Œ3½I'© ¡"

å^å^å^å^å^å^å^å^å^å^å

æ^æ^æ^æ^æ^æ^æ^æ^æ^æ^æ

å^å^å^å^å^å^å^å^å^å^å

æ^æ^æ^æ^æ^æ^æ^æ^æ^æ^æ

å^å^å^å^å^å^å^å^å^å^å

ç^ç^ç^ç^ç^ç^ç

æ^æ^æ^æ^æ^æ^æ^æ^æ^æ^æ

è^è^è^è^è^è^è

å^å^å^å^å^å^å^å^å^å^å

ç^ç^ç^ç^ç^ç^ç

æ^æ^æ^æ^æ^æ^æ^æ^æ^æ^æ

è^è^è^è^è^è^è

2¡XT¥¨ §4 +!¥%Â"¥% ¡792¡TVUW 8   @ `OR$¥% 1M?3/3 +"¡E¥¨

å^å^å^å^å^å^å^å^å^å^å

ç^ç^ç^ç^ç^ç^ç

æ^æ^æ^æ^æ^æ^æ^æ^æ^æ^æ

è^è^è^è^è^è^è

å^å^å^å^å^å^å^å^å^å^å

ç^ç^ç^ç^ç^ç^ç

æ^æ^æ^æ^æ^æ^æ^æ^æ^æ^æ

è^è^è^è^è^è^è

å^å^å^å^å^å^å^å^å^å^å

ç^ç^ç^ç^ç^ç^ç

æ^æ^æ^æ^æ^æ^æ^æ^æ^æ^æ

è^è^è^è^è^è^è

å^å^å^å^å^å^å^å^å^å^å

ç^ç^ç^ç^ç^ç^ç

æ^æ^æ^æ^æ^æ^æ^æ^æ^æ^æ

è^è^è^è^è^è^è

"¥¨§Y¡U($¥¨ §K ¥¨E +""¥<£ ¡4I2yŒ3; wpl¨Ý " ¡©( ¡"¡@ ¥%D"

å^å^å^å^å^å^å^å^å^å^å

ç^ç^ç^ç^ç^ç^ç

æ^æ^æ^æ^æ^æ^æ^æ^æ^æ^æ

è^è^è^è^è^è^è

å^å^å^å^å^å^å^å^å^å^å

æ^æ^æ^æ^æ^æ^æ^æ^æ^æ^æ

å^å^å^å^å^å^å^å^å^å^å

æ^æ^æ^æ^æ^æ^æ^æ^æ^æ^æ

å^å^å^å^å^å^å^å^å^å^å

æ^æ^æ^æ^æ^æ^æ^æ^æ^æ^æ

å^å^å^å^å^å^å^å^å^å^å

æ^æ^æ^æ^æ^æ^æ^æ^æ^æ^æ

¥%V"23  ¡¦3?,2(¡J'© ¡&"V©¡ $¥% § ¡KD©( p +£¡;[ò2¡ I"¡?

å^å^å^å^å^å^å^å^å^å^å

æ^æ^æ^æ^æ^æ^æ^æ^æ^æ^æ

å^å^å^å^å^å^å^å^å^å^å

æ^æ^æ^æ^æ^æ^æ^æ^æ^æ^æ

å^å^å^å^å^å^å^å^å^å^å

æ^æ^æ^æ^æ^æ^æ^æ^æ^æ^æ

å^å^å^å^å^å^å^å^å^å^å

æ^æ^æ^æ^æ^æ^æ^æ^æ^æ^æ

"VC "V£¥¨©(¡3q

å^å^å^å^å^å^å^å^å^å^å

æ^æ^æ^æ^æ^æ^æ^æ^æ^æ^æ

å^å^å^å^å^å^å^å^å^å^å

æ^æ^æ^æ^æ^æ^æ^æ^æ^æ^æ

å^å^å^å^å^å^å^å^å^å^å

æ^æ^æ^æ^æ^æ^æ^æ^æ^æ^æ

å^å^å^å^å^å^å^å^å^å^å

æ^æ^æ^æ^æ^æ^æ^æ^æ^æ^æ

å^å^å^å^å^å^å^å^å^å^å

æ^æ^æ^æ^æ^æ^æ^æ^æ^æ^æ

å^å^å^å^å^å^å^å^å^å^å

æ^æ^æ^æ^æ^æ^æ^æ^æ^æ^æ å^å^å^å^å^å^å^å^å^å^å

B: B: æ^æ^æ^æ^æ^æ^æ^æ^æ^æ^æB’:

ã^ã^ã^ã^ã^ã

ä^ä^ä^ä^ä^ä

û

Õ `Ü![Mÿ-Ï a ÿÐÒþ [tÓ@Ôc>þ![@Ô ÕÔÑ@Ö,Ó¢}Ytþ@Ö%ÐÓ@Òe¤

© ©

ã^ã^ã^ã^ã^ã

ä^ä^ä^ä^ä^ä ã^ã^ã^ã^ã^ã

* ä^ä^ä^ä^ä^ä *

ã^ã^ã^ã^ã^ã

ä^ä^ä^ä^ä^ä

û

Ïha ÿÐ<Ò,þ [t<Ó%ÔM¢u[¥HMÕÜ<Ϥ

[ Ötÿ¨þ Öcfb[¥H<ÕÜ Ï¨Ó Mÿ¨þ Ö|k€H^a^![ ÔÓs!mM¦

© © ©

é^é^é^é^é^é^é

ê^ê^ê^ê^ê^ê^ê

Ó gi>,ÑM܆f

d_

é^é^é^é^é^é^é

ê^ê^ê^ê^ê^ê^ê

é^é^é^é^é^é^é

ê^ê^ê^ê^ê^ê^ê

é^é^é^é^é^é^é

ê^ê^ê^ê^ê^ê^ê

ÿ¨þ¡H!`R[ Ó¢u[¥HMÕÜ<Ïlk€Ha^![ Ô<Ós!m Ô<Ñ@Ö(Ñ%ï

ý

 H~ÓMÏMÏha^ ¢+þ@Ö%Ð(Ó@ÒR¤ ¤§¦

ý ¨h

NVˆm ~Œrƒ@ ´á=Þ:Çmˆm‡5ˆm‰r†¥ˆm„~‰E„R‰[ç ‰ †(ÇmˆmèM†¥ˆm„‰-ÆM¨1ÆMÇm

û

[ ¢+ÿ¨þ Öp~c‚¤

¨ ©

\ \

YÜMþ ÓXH^abY![H<ÕÜ

ý

[ Ö Ó gi![ Ô<Ósrf [kÒ,ÏkÖ^MÑ>Ñ![¨ÜMÑ `(ÜMÓ¢¥¤§¦

¨

Fr2 ()¨¡€»g%½U(¥<¡"D23 `LM¡42(¡- +L @ )%¡¢2 8 ¥%)9 !""8¥¨

[¥H<ÕÜ  Ï¨Ó <ÿ%þ Öqk Óhgi![ ÔÓs!mwf‚¦

© ©

£¦O,£¦ !¡¦"J¥¨>C  n ¥¨(.¾ ¡ (OD¥¨/10$¡£¦"J£ 7 +'¥¨§K £   O4/¡¤C(.

[¥H<ÕÜ<ÏMk Óhgi [ ÔÓs mpf ÓhgcY![H<ÕÜ¢ Óhgi>,ѨÜ^¤§¦

  n¡u!P I"!()¨ ¡J£O£ ¡;IÅ1'^2(¡:"@ §Y¡J¡¡££ X'"'   O*/¡

[¥H<ÕÜ  Ï¨Ó <ÿ%þ Öqk#H^a^![ ÔÓs!mfQÿ¨þ Ö ‚¦

© © ©

+£f2(¡LM¡DI2EdY¥<('  .fe:"pO ¡#C  n¡ "[/,O/( ¡ N)*¥%/S0T¡£"

ƒ

H^a^![ ÔÓscf Ó gi![ Ô<Ós£¦

¥ ©(!¡¦£¡"@?,¥%¡J¥%3I2£28£¥%,@ +"[¥¨ O2¥%"¡&C¡ ("Y +££¡""¡¦

 û

ÓMÜMϨÓ

/O52(¡8C(3  n¡ @;QFr¥%"¡ 6 +) +!Â2¡X£ "¡DEI2£2†¥YÝ "*C(.

[¥HMÕÜ<Ïlk€Ha^![ Ô<Ós!m Ô<Ñ@Ö,Ñrf Óhgih>,ÑMÜ%¦

ý

  n¡ ¡¡("¤ ££¡¦"":¥1©u;>Ë ¥@ ""'(§ ¡u  "¥*23 +F©2¥% !("¤



¡¦$¡ ¡(£¡X¥ ¥ ?SI2(£f25"8•Mœ3¡¦¡¡P/,O/©uÝ "¤C(3  n¡ @;WI2"



£< P/¡¤ @ ("$¥¨ §Y¡Q "&6C)%' ¡yG%; $ ¡ ¡YC(¡ "&¡¦¡¡6/O

Ê

ù



C(3 + !n¡¦ "I23 `LM¡[/¡¡X!(£ +¡u/O "2 (!()?{ (-luëo¤£ +¡"

2 ¤ 8¥¨/10$¡£[" C(3 + !n +¥¨.¾¡ /( !¡¦3;!Êú*w82(¡& @ "T¥¨ § ¡¦

""'(§ ¡J2 

}

L¨¡ "¥¨3?¥:DS!":¥¨ ¡ £23 +/ ¡YT ¥¨§ì &C(3 + !n +¥¨.¾¡ /( !¡¦¢¥%/.

0T¡£@?& +£< -2'"*/¡8C3 + !n¦¡-C "@;BòE2¡K¥%2¡ *2 (3?

g¨;qŸ/š UWihŽŠ ›‹D£¥%§ ©'(¡""¥%§ ¡:©( ¥¨©¡ OY¥%S"£¦ p +""0SZ + .

©2DV"* ¡ +£f2 /( !¡KT ¥¨§ì¥:DU +§U'"*2(¡ ¡T¥¨ ¡K& +XT¥¨ “©2DvÝ "

)%'§ ¡@?MI2£2u"^¡¦\,©¡¦"LM¡:¥U£¥%§ ©'(¡;rWI2"^©( ¥¨©¡ O

C(3 + !n +¥¨3;

(¡LM¡ I£23 +)¨¡¦" T¥¨ ¤ )¨LM¡¦ZS7"@ (£¡;

wP)%¡¡ @ + ?S$¥% 8dY¥<('  .fe¤"O !¡YC3 + !n< ¥¨ ?S2¡ ©( ¥¨)% @ § .

h¨;qŸ¹& +"AI ¡Y/,O#"¥%§ ¡¥¨(¡V¡ "¡[I2(¥¨§|¡I2 `LM¡3Ý x2¡<  

§Y¡ r"2(¥¨' &NM¡¦¡©JC  n ¥%.¾¡3 +/ ¡#¥¨/10$¡¦£"r"§4 +  p?, (X `LM¥¨

T ¥¨§­DCLM¡ OM¡ + "@;

¡¦$¡ ¡(£¡"XÂC  n ¥%.¾¡3 +/ ¡€¥%/S0T¡£"23 +P + ¡K¥%*$¥¨ .

¥k¡¦P/ODC  n¡ "@;Jwp>2"J '( ¡¤"&$¥%  !¥kA¡3?{¡Y/¡¦ !¡L¨¡Y23 +

e¨;As N¥kI*¥U'"@? Ÿ­§4 @ "& I"§K   {£ £2¡[¥¨¦SEL  '¡"

(¡2¡ V£O£ ¡"V(¥¨ V ¥¨)Y£f2 "V¥¨3¥%/S0T¡£"Y  ¡X "¡¦ !¥%'"[""'¡;

>& "> ¡£¡¦, OU©3 +""¡3?%¥%)¨¡2(¡ xI2*2¡I£¥%  ¡"©¥¨()

» O ¡§K )V£O£ ¡"S/¡pA¡¡&C(3  n +!¥%.¾ ¡ +OJ¥%/S0T¡£"I + ¡

¡'( PL  '¡¦"@;# -2(¡62¡Y£< £2¡ /¡£¦¥¨§ ¡"#¥<¥u p + )¨¡? 

}

¡< " O8¡¦¡£@ /( ¡&/,O2(¡J '§ ¡;½

¥% !8L~ + !'(¡&§4 `O/¡& ¥¨©(©¡8/O*/¡() ¥kLM¡ I ¡3; ¼3¡£   A23 #"¥D`  U¡¢ ""'(§ ¡23 +& !¥<£N"¤£< (¥¨#/¡* ¡ +£.

B. APPENDIX: SYNCHRONOUS FINAL- Ã' ¡u/,O¢ 2( ¡  ;rË:¥kQ£¥¨("¡ V2¡:"£¡3 + ¥*!8I2£f2

Me !‘},;

IZATION FAILS g¨;A ¢¡&£  

¢¡8  '" @ ¡K2(¥k¹"O,(£f2( ¥¨(¥¨'"¤C  n ¥¨ ?"'£2G +"*¥¨(¡

h¨;Aw +£Ã' ¡"[2¡& ¥<£fNS?( ¡< "Y :¥R‹§I¥¨[h%? (D2¡8£   "

§Y!)%2 ¥%/@ KI27 *FIH&HQ ¡¦$¡ ¡(£¡U£¥¨'(,() £¥¨  ¡£¥% J23 +

Ÿ/š UWihŽŠ ›‹>;

 LM¡ O#'"¡¦"[FIH&HP¡" '(£¥¨U¥:§ © ¡§Y¡3C3 + !n< ¥¨ ?%£ 

e¨;qŸ/š UWihŽŠ ›‹>Ý "3£ £2¡A¥<¡"3(¥¨ O¨¡r£¥%@ 2 ð’(;1wr2'"

'(¡\©¡£¦¡ OE¡ + ¥<£fNS; lm '(3 +/ ¡oRLM¡¦ "!¥%€¥¨#2"X¡\.

}

£¥%§ ©'(¡"32¡A ¡"' V +U ¡©  +£¡"[ >©( ¡L¥¨'"r£ £2¡^¡¦, O

ÕÖMÒ- "u2¡Blm) + /3 +)¨¡ +§ © ¡¢! FIH&H&?I'")“ÅS¥<¥%"7ÏÐÑ@ÒÓ%Ô

¨;

à

£¦¥¨  ¡£¥¨ oK ¢ÅS¥<¥%"I"O£2 ¥¨(n ¥¨X£ +u/¡ $¥¨'(¢  ¥¥¦¤ á

à à à

ââ~ã ã ã É ¤ ÇmÉ ¤ ÉmÆM„‡5â~¤xƒ@Ž¡„‰ †Çmâ~ä8†‰ Ž åY„{ ‡5â~¤x„~¤rÇn²~÷

TVUW &I2€2¡4¡ OE/¡) ¢;qK23 +©©¡(¡-¥R"2  ¡Â 3S

'(©3 ¡¦3;

WI2(¡ £'(  ¡_M `L~ U]I ()¨' )¨¡K©@©¡£C(£ ¥¨ abc(¥<¡"&¥%&)¨'  .

G¨;q:/¡¦£¥¨§ ¡¦" ¡ )¨/( !¡#T¥¨ [C3 + !n< ¥¨ ;

+¡¡2"#¥D/¡*£¥¨  ¡¦£@;P©k!(£¡*2¡* ¡¦$¡ ¡(£¡$ ¥%§í¤í¥ ©

"[¡L¨¡ U £'   OuT¥¨  ¥k¡4$ ¥%§ð ¥%.¾C  n¡ V2 ¡< 3?<2¡¦ ¡

-2“ X"§ © ¡D ¡¦$¡ ¡(£¡K£¥%')6)  / )%¡K£¥¨  ¡£¥% 5» ¡ÎšŸ

"I(¥U)%'3 + @ ¡¡J2 2(¡:£¥%  !¡¦£¥¨ I§U'"A£¥¨("!(¡ I^I2¡¦X(¡.

§ © ¡§Y¡¡9 !NM¡5ÅS¥<¥¨"PϦÐÑ@Ò,Ó%Ô ÕÖMÒ5a ¢%c½:2¡P©@£¡  ¥6£¥¨(.

¡¦ § ) ¡< £23 /( !O,;

'¡"@q

Ê

ù "VD2¡J©( ¡L¥¨'"V£¥%" '(£¥¨3?¡u  ¡X +""'§ ()*23 V¥%/.

}

0T¡£J ¡< £23 /( !O6"J(¡C(¡K"¥82 F¥IDS"&¥%:C  n¡6I2 ¡

g¨;A33 + !n¦¡ "D + ¡ LM¥¨NM¡¦¢§ § ¡¦ ¡ O6I2¡ ¤n¡¦ ¥8 ¡T¡ .

¥Z!"¤ +££¡""/ ¡;

¡(£¡V£¥¨'(>">¡¡¦£¡3?k$ ¥%§2(¡I2 ¡ + 23 +x£ '("¡*2¡

P¡[23 `LM¡Y  "¥K +""'§ ¡X23 +@?{ "^PdY¥<'  +.¦e%?{ VC(3  n +!¥%.

Êú

¡T¡ ¡(£¡#£¥¨'(,I¥Y/¡&¡£ ¡¦§ ¡¡3;

¡¦3 /( ¡7¥%/S0T¡£ §K OP/¡uC(3  n¡9¡L¨¡9![Y©¥%!" ¥4"¡ ;

WI2("&!":¥¨ 2¡U¡` '( !:$¥¨ &¥%' J£¦¥¨  ¡£¥¨ @?2¥%')%26©¡¦ 23 ©("J

h¨;q¨Ý "IC(3 + !n¡¦ ^I ! 1/¡[!LM¥%NM¡$ ¥%§ 2(¡:2 ¡< 23 +^£   ¡

"2(¥¨'( !6/¡;ò2¡¦ I!"¡

R!‘^(,;

D D

§Y!)%2J/¡Y(¡£¡""@ + OK¥u¡\©¥%"¡=© +4¥X§4 NM¡0¥ ¡T¡ ¡(£¡

e¨;AWI2(!"U2 ¡< 5"  2(¥¨ "#2¡Y !¥<£N6$¥¨ U£  ""0TVUW `;6=>¡ (.

D

©  ¡£¦ !Ou¥§4 NM¡#* +©©  ¡[¥*2¡ FE2 :2(¡ ¡#":¥

O

¥<£N%™ ¡<  r ¡¦$¡ ¡(£¡&£O£ ¡;

wS("¡ X¡ ""'§Y¡_M `L~ I ¥<£fN*"¡¦§4 £"@?<¡:§K OY¡X'©

I2u3 @ V" '£'( ¡:£¥%  '©(!¥%u("¡ u¥¨r(¡ ( ¥<£fNS;rwp("¡ 

¥%32¡ +/¥kLM¡?<2¡J"£¡¦3  ¥*£¥%!'(¡"@q

g¨;q¨Ý "^C  n¡ II  1/¡[LM¥¨NM¡¦XT ¥¨§º2(¡ 2( ¡ 2 ^£ +  !¡¦

e !‘},;

h¨;AWI2(¡ C(3 + !n¡¦ ^ ¡ £¦Ã,'( ¡"^2¡[ ¥<£fNS?M)¨(¥¨ )U2¡[ +£^23 +

A¡YA¡ ¡4   ¡ +OK62¡U§  ¡¤¥¨'(©3 +!()u2(¡¤'((¡ .

O)  @ V" '£'( ¡;

e¨;AWI2(¡uC(3 + !n¡¦ ¡£¦ ¡§ ¡"Y2(¡£¥¨'(,D»$/'(¤(¥¨=e !‘},Ý "

¥<£ + r£¥%©Or½;

¢;Iñq!‘^(:"@ + ! "¤ [£¦¥¨'^¥%VgI!¥¤2¡:¥% 8¡ O,?¨I2¡¦8

"2(¥¨'( !u23 `LM¡J/¡¦¡Dn¡ ¥~;

Fr ¡ +  O,?,I2K$'( ! S")¨2V,¥Y2¡&¡ ¡&"O"¡§4?,A¡#£¥¨'( !

¡< " OJ© ¥%)¨ @ §  ¥%'(&2"r©( ¥¨/ ¡§ »$2(¥¨')%2Jr§4 `O /¡>2  (¡

T¥¨ ¢§ ¥¨ ¡9 ¡ + !"£E¡\S § ©( !¡¦"@½;§ÅS'42(¡E£¦¥<¡?X "6I ¡3?

›+´M4,°±µKžu4•P™+Mžžp +™¡œm°±”@;&WI2(¡Y©( ¥¨)¨ @ +§ § ¡ :£¥¨  ¡£¦ !OK'("¡4 ¥<£fN"

¥¢¡"'( ¡D§U''3 + V¡\£ '"¥¨ ?: (£¥%  ¡£ O9£¥¨'(¡7¥%Â2(¡

)~  / )¨¡£¥%  !¡¦£¥¨ ¤¥D@ NM¡Y£  ¡*¥%I§ ¡§ ¥% O6(¡   ¥<£ +!¥%Z 

C(3 + !n +¥¨6/¡2K2(¡#"£¡¡¦"@;VwK¥¨ ¡¦ :¥C\u2¡#© ¥%/ ¡§4?

A¡:(¡¡¥#'(¡ "@ (*23 +2¡[£¥% ! ¡£¦¥¨ II  1©¥%¡   O .

L¨¥¨NM¡¢ YC  n¡ U$¥% K /SB¥%/S0T¡£8 "¤©3  U¥¨¤ +R!LM¥<£< ¥¨R¥%

UiŽŠ ›‹>;RÅS'U2¡*I2(¥¨ ¡u©(' ©¥%"¡X¥%V2¡*£¥% ! ¡£¦¥¨ J "Y¥

§K NM¡&V'(¡£¡¦""@  O¥ ¡ +"¥¨E /¥%'V¡<   ¥<£ ¥¨4§ )Y!

2("[J `O,;

WI2(¡u¥% OPJ `OP¥4© ¡"¡¦ LM¡2¡© ¥%)¨ @ §Y§ ¡ @Ý "4 /(" @ £¥%

" ¥*¡£¥%'©( !¡U2¡#C(3  n¡ ,L¨¥<£ ¥¨KT ¥¨§«2¡#2 ¡< K23 +

2 ©(©¡¡6¥X ¥¨©62¡¤  "&¥¨/10$¡¦£& ¡$¡¦ ¡£¡

C(3 + !n¡¦ Y +"O£2 ¥¨(¥¨'(" !O,?¨¡¦¡£LM¡ Ou"I¥kI82( ¡  ;rWI2,'("

¡¦LM¡PA¡ '("¡4 ¤"§ © ¡ ¡¦$¡ ¡(£¡*£¥%')8£¦¥¨  ¡£¥¨ @?1I2£f2

(¡¡£" 3 £¦£¡""/ pO4§ § ¡(p +¡ O,?¡¤"2¥¨'( 6"  3¡(Ã,'(¡'¡

2(¡RC  n ¥¨B£<   D +G£<   Ot!K¥%'4  ¡ 6¹ ¢(¡ ¡ 2( ¡  ;