Oops... I Inadvertently lost their cvs files...
This commit is contained in:
parent
0f7af3f795
commit
bb653772f5
|
@ -0,0 +1,219 @@
|
|||
"""AEservertest - Test AppleEvent server interface
|
||||
|
||||
(adapted from Guido's 'echo' program).
|
||||
|
||||
Build an applet from this source, and include the aete resource that you
|
||||
want to test. Use the AEservertest script to try things.
|
||||
"""
|
||||
|
||||
import addpack
|
||||
addpack.addpack('Tools')
|
||||
addpack.addpack('bgen')
|
||||
addpack.addpack('ae')
|
||||
addpack.addpack('evt')
|
||||
#addpack.addpack('menu')
|
||||
addpack.addpack('win')
|
||||
|
||||
import sys
|
||||
sys.stdout = sys.stderr
|
||||
import traceback
|
||||
import MacOS
|
||||
import AE
|
||||
from AppleEvents import *
|
||||
import Evt
|
||||
from Events import *
|
||||
import Menu
|
||||
import Dlg
|
||||
import Win
|
||||
from Windows import *
|
||||
import Qd
|
||||
import macfs
|
||||
|
||||
import aetools
|
||||
import EasyDialogs
|
||||
|
||||
kHighLevelEvent = 23 # Not defined anywhere for Python yet?
|
||||
|
||||
Quit='Quit'
|
||||
|
||||
def mymessage(str):
|
||||
err = AE.AEInteractWithUser(kAEDefaultTimeout)
|
||||
if err:
|
||||
print str
|
||||
EasyDialogs.Message(str)
|
||||
|
||||
def myaskstring(str, default=''):
|
||||
err = AE.AEInteractWithUser(kAEDefaultTimeout)
|
||||
if err:
|
||||
return default
|
||||
return EasyDialogs.AskString(str, default)
|
||||
|
||||
def main():
|
||||
echo = EchoServer()
|
||||
yield = MacOS.EnableAppswitch(-1) # Disable Python's own "event handling"
|
||||
try:
|
||||
try:
|
||||
echo.mainloop(everyEvent, 0)
|
||||
except Quit:
|
||||
pass
|
||||
finally:
|
||||
MacOS.EnableAppswitch(yield) # Let Python have a go at events
|
||||
echo.close()
|
||||
|
||||
|
||||
class EchoServer:
|
||||
|
||||
suites = ['aevt', 'core', 'reqd']
|
||||
|
||||
def __init__(self):
|
||||
self.active = 0
|
||||
#
|
||||
# Install the handlers
|
||||
#
|
||||
for suite in self.suites:
|
||||
AE.AEInstallEventHandler(suite, typeWildCard, self.aehandler)
|
||||
print (suite, typeWildCard, self.aehandler)
|
||||
self.active = 1
|
||||
#
|
||||
# Setup the apple menu and file/quit
|
||||
#
|
||||
self.appleid = 1
|
||||
self.fileid = 2
|
||||
|
||||
Menu.ClearMenuBar()
|
||||
self.applemenu = applemenu = Menu.NewMenu(self.appleid, "\024")
|
||||
applemenu.AppendMenu("All about echo...;(-")
|
||||
applemenu.AppendResMenu('DRVR')
|
||||
applemenu.InsertMenu(0)
|
||||
|
||||
self.filemenu = Menu.NewMenu(self.fileid, 'File')
|
||||
self.filemenu.AppendMenu("Quit/Q")
|
||||
self.filemenu.InsertMenu(0)
|
||||
|
||||
Menu.DrawMenuBar()
|
||||
#
|
||||
# Set interaction allowed (for the return values)
|
||||
#
|
||||
AE.AESetInteractionAllowed(kAEInteractWithAll)
|
||||
|
||||
def __del__(self):
|
||||
self.close()
|
||||
|
||||
def close(self):
|
||||
if self.active:
|
||||
self.active = 0
|
||||
for suite in self.suites:
|
||||
AE.AERemoveEventHandler(suite, typeWildCard)
|
||||
|
||||
def mainloop(self, mask = everyEvent, timeout = 60*60):
|
||||
while 1:
|
||||
self.dooneevent(mask, timeout)
|
||||
|
||||
def dooneevent(self, mask = everyEvent, timeout = 60*60):
|
||||
got, event = Evt.WaitNextEvent(mask, timeout)
|
||||
if got:
|
||||
self.lowlevelhandler(event)
|
||||
|
||||
def lowlevelhandler(self, event):
|
||||
what, message, when, where, modifiers = event
|
||||
h, v = where
|
||||
if what == kHighLevelEvent:
|
||||
msg = "High Level Event: %s %s" % \
|
||||
(`code(message)`, `code(h | (v<<16))`)
|
||||
self.handled_by_us = 0
|
||||
try:
|
||||
AE.AEProcessAppleEvent(event)
|
||||
except AE.Error, err:
|
||||
mymessage(msg + "\015AEProcessAppleEvent error: %s" % str(err))
|
||||
traceback.print_exc()
|
||||
else:
|
||||
if self.handled_by_us == 0:
|
||||
print msg, "Handled by AE, somehow"
|
||||
else:
|
||||
print msg, 'Handled by us.'
|
||||
elif what == keyDown:
|
||||
c = chr(message & charCodeMask)
|
||||
if modifiers & cmdKey:
|
||||
if c == '.':
|
||||
raise KeyboardInterrupt, "Command-period"
|
||||
else:
|
||||
self.menuhit(Menu.MenuKey(message&charCodeMask))
|
||||
##MacOS.HandleEvent(event)
|
||||
elif what == mouseDown:
|
||||
partcode, window = Win.FindWindow(where)
|
||||
if partcode == inMenuBar:
|
||||
result = Menu.MenuSelect(where)
|
||||
self.menuhit(result)
|
||||
elif what <> autoKey:
|
||||
print "Event:", (eventname(what), message, when, (h, v), modifiers)
|
||||
## MacOS.HandleEvent(event)
|
||||
|
||||
def menuhit(self, result):
|
||||
id = (result>>16) & 0xffff # Hi word
|
||||
item = result & 0xffff # Lo word
|
||||
if id == self.appleid:
|
||||
if item == 1:
|
||||
mymessage("Echo -- echo AppleEvents")
|
||||
elif item > 1:
|
||||
name = self.applemenu.GetItem(item)
|
||||
Qd.OpenDeskAcc(name)
|
||||
elif id == self.fileid:
|
||||
if item == 1:
|
||||
raise Quit
|
||||
|
||||
def aehandler(self, request, reply):
|
||||
print "Apple Event!"
|
||||
self.handled_by_us = 1
|
||||
parameters, attributes = aetools.unpackevent(request)
|
||||
print "class =", `attributes['evcl'].type`,
|
||||
print "id =", `attributes['evid'].type`
|
||||
print "Parameters:"
|
||||
keys = parameters.keys()
|
||||
keys.sort()
|
||||
for key in keys:
|
||||
print "%s: %.150s" % (`key`, `parameters[key]`)
|
||||
print " :", str(parameters[key])
|
||||
print "Attributes:"
|
||||
keys = attributes.keys()
|
||||
keys.sort()
|
||||
for key in keys:
|
||||
print "%s: %.150s" % (`key`, `attributes[key]`)
|
||||
parameters['----'] = self.askreplyvalue()
|
||||
aetools.packevent(reply, parameters)
|
||||
|
||||
def askreplyvalue(self):
|
||||
while 1:
|
||||
str = myaskstring('Reply value to send (python-style)', 'None')
|
||||
try:
|
||||
rv = eval(str)
|
||||
break
|
||||
except:
|
||||
pass
|
||||
return rv
|
||||
|
||||
_eventnames = {
|
||||
keyDown: 'keyDown',
|
||||
autoKey: 'autoKey',
|
||||
mouseDown: 'mouseDown',
|
||||
mouseUp: 'mouseUp',
|
||||
updateEvt: 'updateEvt',
|
||||
diskEvt: 'diskEvt',
|
||||
activateEvt: 'activateEvt',
|
||||
osEvt: 'osEvt',
|
||||
}
|
||||
|
||||
def eventname(what):
|
||||
if _eventnames.has_key(what): return _eventnames[what]
|
||||
else: return `what`
|
||||
|
||||
def code(x):
|
||||
"Convert a long int to the 4-character code it really is"
|
||||
s = ''
|
||||
for i in range(4):
|
||||
x, c = divmod(x, 256)
|
||||
s = chr(c) + s
|
||||
return s
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
main()
|
|
@ -0,0 +1,514 @@
|
|||
(This file must be converted with BinHex 4.0)
|
||||
|
||||
:%8&&Ff9bGQ9bG'9cG#jbFh*M!(*cFQ058d9%!3#3"f2$GSF!N!3"!!!!BVS!!''
|
||||
k!!!"#6B8)&3JD!!8)&"p%E"S%3!k!@FQ%Lm-6VS#$!`k!&Tj%8&&Ff9bGQ9bG'9
|
||||
cG#jbFh*M!J!!!$q3#!#3"$q3#!#3'+a8lVX!N!CM`rm4`+KT!4e!%Irc%h!!%#l
|
||||
rmlh5%@B386Dq9@X"!8*%[D'q9@X"!6"4-J&R(N39$!!!('85F!!3,N-9$!!!(f)
|
||||
'F!&J!!%"!LaD9#dZ4,d"!"Xm!@B`*e8q'NU!)&-#+!#r!#iL!1d*!J%!3)-Sfc3
|
||||
6UGF[$%kk!3P+CfX"!+CA3cS!!!%!N")#!!!!!`!!!Irq!!($!J!#)J)!""!#!!J
|
||||
J!L!33#FJ)-!R)((J!L"l-%q!4KK2N!"!$%q3!#!%(p!3""r!#!`I`!`B0@!H-$9
|
||||
J1@!ri$(!!J!6J!)!$`!#!!3!!J!%!3)!"!-#!!IrrJ!!!`!!!!%!N"-#!!!!!`!
|
||||
!!Irq!!($!J!$iJ)!"r!#!!rJ!L!I`#FJ2m!R)(rJ!L"rm%q!IrK2N!"rr%q3!$r
|
||||
m(p!Ir"r!$r`I`!ri2q!Im$rJ2q!ri$r!!J!IJ!)!$`!#!!3!!J!%!3)!"!-#!!I
|
||||
rrJ!!!`!!!!%!N!8+81!!2S!!!"p!!*!%"d&38%`!N!BF8&P8C`!!!!&'8N9'!*!
|
||||
&J%P$6L-!N!3",!!!!%!)J#P!!L!%%#i)0!3Z!Qi"2`)I"#U)2j!!!L!"3!#!!!!
|
||||
)J#R!!q!(m#ri2r`rrRrr2riIr$ri2r!$i!(!!)!!N!3%!*#2r`#3(rrr!*!Arj!
|
||||
3!*!3rrrr!*!%rrm!N!Er!*!2r`!!prm!!!$r!*!(r`#3$[m!!#SUprm!N!Vr!*!
|
||||
0r`!!+LVhr`#3#rm!!!#`!*!)r`!!+LVhr`#3#,!!!,#`X!!!X!#3"rm!!#SUprr
|
||||
r!*!)X!!!X,#`!!#`!*!'rrrr!#VhrrVkr`#3#l!!!!#`!*!'rrVkrbVrqLSUq[m
|
||||
!N!@`!!#`N!8!N!MrprFUrrSUN!6kr`#3",!!!,#3"3!!X!#3"Irf!#U3"J!Uq[m
|
||||
!!!#`!!#`N!8!!,!!N!Er!!!UN!3!+J!Ur`#3"E#3"`#`!*!(r`!!+LS!+J!U+[m
|
||||
!N!@`N!F!N!Vr!!!!+J!U+[Vr!*!&X*!(!*!+rrm!!!!U+[Vr!*!&X,!&X!@`"E#
|
||||
`!*!)rrVkr`!U+[Vr!*!'X,!&X!@`"E#`!*!(rrVk+LVr+[Vr!*!(X*!*!*!(rrS
|
||||
U+J$rq[m!N!cr!*!-r`!!q[rr!*!0r`#3$Iq3"!#3$[m!N!lr!*!3r`#3$[m!N!R
|
||||
r!*!'r`#3$[m!N!Mrr`#3"[m!N!lrN")!N"Irr`#3(rm!N")#!*")m!#3$rm!N!X
|
||||
2rj!(m!#3"`rr!!$r!!!!m!#3"r!-m!$`!!!!m!#3"Jm!c-m!N!A`!*!'m!c-m!#
|
||||
3"I!!8!!!!!m!c-m!N!43"98!8!!!!2!-c2m!N!43"98!8!!!$rm-cph`!*!&8!"
|
||||
3!!!2hIcpc0m!!!8!9993!!!!$mc2h-c0m!!&!&998!8!!!r!c-c-$0m!"3"999!
|
||||
&!!!!m!c-`-$2!!!&9999"3!!!!m!c!`-c`!!"99993#3"I!!`-cI!!!&9999!*!
|
||||
&r`!-cI!!!&89&493!!!!$ph`c0m!!!"9&4898!!!!2hFcmh`!!!!9C!%8!!!!2h
|
||||
-$pm!N!E`!*!&$`$Im!#3"[!!N!Err`#3"r!!N!B2!*!)m!#3"Jm!N!32!!!!m!#
|
||||
3"Jm!N!6r!!!!m!#3"JrrN!M`!*!,r`#3$`m!N!S"!*!&r`!!!2m!N!Rr!2m!!2m
|
||||
!r`#3$2m!+`$r!*!+r`!V+bX!r`#3"[m!X,#`+j!%!2m!N!Arr`#`qINVN!3!r`#
|
||||
3"2m!X,#`+j!'!2m!!2rr+l#`X2NVN!Ir!!$rX*!&q5Z3"2Rr!*!%X*!&q5XV+rR
|
||||
r!*!%X!@`"E!&X2NVqIm!N!@`N!IjqIm!N!VrqIRjr`#3$2rjr`#3$[m!N"U!!!$
|
||||
`!2!!N!6`m!m2!*!'m-$`!*!%$`c-$`!!!2"9A-c!m!!!r`AGc-`2!!$`99c-c-$
|
||||
`$ra9AFc-c-m!p999h-c0m!!&99AFc0m!!&&489h0m!!!9999AGm!N!AphI!!N!8
|
||||
2h`#3"r!!N!eBS!#3!!#3"3-18Q9aG@PbC@3J8h9TG'8V9'9bEA-JG'KKG#"PGQ9
|
||||
bH5"KF("XD@0KG'P[EL"cD'peE'3JFh9`F'pbG!"bCA&N!!%!!3!%"'p`C@iF6h"
|
||||
PEL"dD'8JFh"PBfPQD@9N)'pLDQ9MG#Kc+@&PGR4[C'pMER9XE!!!J!"KE'Pc&fa
|
||||
TFh3JEfBJEf*UC@0dFb"dEb"[F'9Z8!!!!!9`FQPZG"e3FQPZG#"dD'8JFh"PBfP
|
||||
QD@9N)'pLDQ9MG#Kc+@&PGR4`C'pMER9XE!!!J!"KE'Pc''aTFh3JEfBJEf*UC@0
|
||||
dFb"dEb"`FQPZG!"!!!!""@PdC@ecCR0PE'aTFh4T4%mJ6Np8)&9646SJF(*[GQP
|
||||
NC@3JCQpb)'*KBfYhBA*NFb"MEfe`BA4TBQPXDA4j)(GTG'JJEfaN)'9fC@jd)(0
|
||||
eDA4P,L!J9fPXE#"LC5"bC@e[GQ9N)'PZ)'CeG(9bC5"'D@jNCA*cJ!!%FA9TG#T
|
||||
4G@Pd)(4SC5"'D@jNCA)J+'4TFQ9MG#"`BA*KE@9dCA)JD@GZEh*PC#PKCACdFA9
|
||||
TG'jeE'`!!)!!ER9XE"aZEb"NDA*PBh3JF'&bB@ePG'9b)(*PFA9TFQ9N!*!!!!!
|
||||
!!h*eEM"6C@jd)(4[)'&Z)'&`F'aTBf&dD@pZ)(GSC@iJDA3JDA-JC'peBQaP,@0
|
||||
XD@0VC@3!B@9fG'pKF("ZG@aX!!#!!'jeE'`FEQmJC'PbC@0d)("KFQ&YCA4PFL"
|
||||
bCA&eDA*PC!#3!!#3#3j6G'&ZC'&bC#"6G@PdC5*$EfeYEfiJG'9bEA-JCQpb)'e
|
||||
[Fh3JBA"`E'PMBA4TEfjcBfpbC3!"!!%!%3TME'&cFb"TEQC[*8GPG#"TEQC[FQe
|
||||
KG'P[EL"KBQpeG#"KEL"[BQTPBh3JBfaKFh-!BfpbCA&[BQTRBfaT1'%JFQ9MEh*
|
||||
N)'0[ER4KD@jTEQFJG'KP)'pLDQ9MG09c)("bEh"PFR4TCA-JB@jN)'9XC@ePER4
|
||||
c!!!!G(P`C69dD'8JEf*UC@0d)'0XBA0c)'&LEh9d)(GSD@0S)'PZCQpbE@&dD@p
|
||||
Z)'Pc)(*PFA9PFh4PC)!!!!%#D@i!Gh*MC'PZG'a$G'KP)'KeE@&Z)'aKEQGeB@G
|
||||
P)'&ZC#"cBh*TF(3JFhPcG'9Y)'PZ)(GSD@0S)(4[)(*PG(9bEL"TEQC[FQeKG'P
|
||||
[ES!!"@0XEh0P$d0XEh0P)'&Z)'pLDQ9MG'0[FQ9ME'pcER9XE!!!J!"[BQSJ%h4
|
||||
SC5"[BQTPBh3JG'mJBfa[Ff83!!!#"R0KGQPZC`"cBAC[Ff&fEcKcF'9MD@CTCA-
|
||||
JGfKPG'KPFL"MD'&ZCf9c)(0SEh9XC#"LC5"cBACPC#"LC@C[FQ8JBfa[FfPZC`#
|
||||
J!!PcBACTEQFJD@jVCQPXB@aTFb4dD'8JCQPXC5"TEL"hD'PMD#"dEb"cBACP)(4
|
||||
SC5"[BQTPBh3!J!!&BfpeER4%8Q9dGA*Z)(4SC5"ZG@eLCA)JEfBJC@aPE@9ZG(-
|
||||
JEfBJB5"`BA*dD@0eE'&b)'0XBA0c)(GTG'KTEL"KEL"[BQTPBh3!BfpbC@0ZG'9
|
||||
XEfjR&R4SC5"ZG@eLCA)JEfBJC@aPE@9ZG(-!!!"[BQSJ+h4SC5"[BQTPBh3JGfK
|
||||
[Ff8JC@aPE@9ZG(-JBA*P)(4[)'*P)'0[G@jdC@3!!!!""'9KBfJ!DfpME(4jF'8
|
||||
RG'KP)'0XBA0c)'pQ)(4SC5"PE'9YC@jdFb"dEb"LC5"MEh9ZG'9N!!!*C'&dB5"
|
||||
cDATP*9*PG(9bEL"dD'8JFfPkC5"TEL"LHA4PFb"[CL"KEL"[BQTPBh4MEh*PC(0
|
||||
THQa[EQFIG'KP)(0THQ8JEfBJG'KP)'pLDQ9MG#"TEL"LHA4PF`!!Ef*U)#adD'8
|
||||
JEf*UC@0d)(GSEh0P)'4KG'%JFfPkC5"TFb"dEb"LC5"bCA4eFQjPC!#3"!%#BA-
|
||||
!FR4jF(4jF'8ZG'KP)'4KG'%JG(P`C5"QEh)JGfKTBfJJG'KP)(0THQ8JDA-JBf&
|
||||
XBh9XBA4PC!#!!!CNC@aPG'8J4'9XCA4P)'&Z)'9XC@ePER3JCR*[E5"KEL"[BQT
|
||||
PBh4MEh*PC'9XEfjeE'`!!)!!Ef*U)"9dD'8JC@aPE@9ZG#"dEb"NC@aPG'83!!!
|
||||
!#@4eF'aTBf&dC40%GA"XD@0KG'8JEf*UC@0d+(-TBfpbC@0XEfj[BQSJ'h4[)(4
|
||||
SC5"NGA"XD@0KG'9N)'pLDQ9MG#Kc+3!!Ef*U)"TdD'8JEf*UC@0d+(-T)(4[)'4
|
||||
eF'aTBf&dC3!3!!!%!R4[!'PZFfKTER0X)R4SC5"ZCAFJE'pMBA4TEfiJCQpb)(4
|
||||
SC5"[BQTPBh3SFbN!J!!*FQ9`E'&MD@jRB@abF'*[EfaZ8h"PBfPQD@9c)(GSCA4
|
||||
SCA)JEh)JEQpd)(4[)(*PF'aKBf8JDA4PEA-JD@iJG'KP)'4PFh4TEQ&dD@pZ)(4
|
||||
SBA3JD'&fC5"dD'8JFf&YC5"ZB@eP)'&c)'PdC@ec)'*PD@jR)'4eF'aTBf&dC@3
|
||||
!S!!0F'pcDA4TEfjPC#"KG'efF'aXDA0d88GTGQ9c)'%JE'PcG#!SD@iJE'pMB@`
|
||||
JGfPZC'ph)'0[Eh*ND@jKG'9c+5"[CL"`Eh0TG'P[ER-JCQpb)(4SC5"NCA0dD@j
|
||||
KG'P[EL"TG'9YFk!!"@PdC@ecCR0PE'aTFh4T4%mJ6Np8)&9646SJF(*[GQPNC@3
|
||||
JCQpb)'*KBfYhBA*NFb"MEfe`BA4TBQPXDA4j)(GTG'JJEfaN)'9fC@jd)(0eDA4
|
||||
P,L!J9fPXE#"LC5"bC@e[GQ9N)'PZ)'CeG(9bC5"'D@jNCA*cJ!!+CACPER3JD@j
|
||||
QEc&(CA3JD@jQEh*YBA4TEfiJB@*[GA3JG'KP)%&`F'aP)'9fC@jdFb"TEL"K)(0
|
||||
eDA4P!'0[FQ9RG'9TCACTEM0K)(*PBfpbC#"MEfjdB@PZD@jR)(4SC5"PGQ9ZG(-
|
||||
JB@jN)(4SC@Pb)("KFQ&YCA4PFR0!!(4jF'9$G'KP)'9fC@jd)'0XBA0c)'pQ)(4
|
||||
SC5""F("XC5"PGQ9ZG(-JCQpb)(GSD@0S)(4[)(*PG(9bEL"TEQC[FQeKG'P[EJ!
|
||||
!!!%#D@i!Gh*MC'PZG'a$G'KP)'KeE@&Z)'aKEQGeB@GP)'&ZC#"cBh*TF(3JFhP
|
||||
cG'9Y)'PZ)(GSD@0S)(4[)(*PG(9bEL"TEQC[FQeKG'P[ES!!"Q9iDA0dFaT@CA*
|
||||
TCRNJD@BJB@iJEf*UC@0d)'9iDA0dFf0[FQ9NEf9iBQp[E"pdFR9P)'PQ)'Pd)'9
|
||||
iDA0dFb`JCQ&XFf8JD@BJEQpd!!"[BQSJ&R4SC5"[BQTPBh3JD@iJFA9PFh4TEfi
|
||||
!N!8$Cf9d'NGPG#"dD'8JC'&dB5"QEh)JB@iJEf*UC@0d!'0[FQ9RCA4N+T!%'(4
|
||||
SC5"NBA4K)'CbEfdJG'KP)'pLDQ9MG!!!!'pLDL!RG'KP)'pLDQ9MG#"hD'pcC5"
|
||||
NBA4K)'Pc)(4[)'*P)(*PG(9bEQ9N!!!!!3*KF`"bG(P`G(P`C6CdD'8JC'9cDA*
|
||||
PC#"dHA"PFb"QEh)JG'KP)'4KG'%X)'PZ)'pbC'9b)'pQ)("bC@CPFQ9ZBf8!`!!
|
||||
%E@&VC4*0B@YP)'%JEQ9h)'9XC@ePER4MEh*PBh*PE'pLDL!8G'mJG'KP)'jPGb"
|
||||
[BQTPBh3SFbN!!!"ZG@aX!!#3!!!!"30ZCAGVEf0XG(P`C4adD'8JBfaKFh-JEfB
|
||||
JG'KP)'jPGb"PE'9YC@jd!!!!!Q&d!'PZFfKTER0X+h4SC5"XEf0KG'P[EL"KG#"
|
||||
hD'PMD#"dEb"TER0PFR3JG'KP)'9XC@ePER3!!!*dE`"dEb!JEf*U)%4hD'9Z)'0
|
||||
bC@&dD@jR)'&Z)'&XD@&c)'CTE'8X)(4SC5"[FQPRD@jKE#"TG'9Y)(4[)'0bC@&
|
||||
dC5"KEL"KE'PKFb"dE`#!!!PhDA4S)'4KG'&NBA4K+T!%)(4SC5"TEQPdD@&X)'4
|
||||
KG'%JCQpb)(4SC5"PE'9YC@jd!)!!$hGTG'JJF(*[F'9bG'PPFh"bC(4bC@0[0(4
|
||||
SC5"TEQPdD@&X)(CKE(9PFb"QEh)JG'KP)("bEh"PFR4TCA-JEfBJG'KP)'9XC@e
|
||||
PER3!J!!%E@pfC5"0EhCP)'pLDQ9MG#Kc+5"dEb"K)'jPGb"XEf0KG'P[EQ0[FQ9
|
||||
YEhCPEf*U)#YdEb"dD'8JEf*UC@0d+(-T)'&QG'9b)(4SCANJD'&fC5"LC@9Z)'e
|
||||
[GQ9N!!"[BQSJ&A4SC5"[BQTPBh3SFbNJG'mJE@pfC4!!!!-#G'm!D@jcD'PZFf`
|
||||
LG'KP)'jPGb"XEf0KG'P[EL"QEh)JG'KP)'pLDQ9MG#Kc+3!!!!PbCA"XB@0TEQG
|
||||
KE(*`BQp[E'P6F'9MD@CTCA-JGfKPG'KPFL"[FL"ZEh3JG'mJFQ9`E'&MC5"TG'9
|
||||
YFb"TEL"dD'8JC'9cG'PZBA4TEfiJG'KKG#"SBACP)(4SC5"cB@eP)'jKE@8JBA-
|
||||
JDA4PEA-JBQ9TEQFJE@pfC@5J!!e`Eh0TG'P[EQ9N)'&dEAC`E'aTFh444fPfCA-
|
||||
JB5"XDA0d)#KTEL"XEf0KE#"hD@jNEhFJBfp[FQ4TEQ&dCA-T)'pQ)("[FfPdD@p
|
||||
ZFb"QEh)JG'KP)'4PFh4TEQ&dD@pZ)'PdC@ecS!!%Eh"PEKa2F'9Z)(4SC5"cF'9
|
||||
MD@CTC@3JEf*UC@0d+(-TB@9fG'pNEf0ZG@aX!!#!!'pLDL!AE'PcG#"[CL"[BQT
|
||||
PBh4c)(4[)'p`C@i3!!!#"A9cD@jRGA0TEQpLDL!XG'KP)'&`F'aTBf&dD@pZ)'C
|
||||
TE'8JG'mJEh"PEL"dD'8JEf*UC@0d)(GTG'J!J!!&DA4PEA0QFf9XE'PcG'P%6b"
|
||||
16e3J990&1L"`FQpfD@4PC#"QEh)JBQ&MDhGKFQ4c)'0[EA"KG'PLD@aTG(NJGfP
|
||||
dD#"[E'3JCACPER3JFh9TG'8Z)#"AD@aX)'*P)(*PE@pfC@3JD@iJCR9dGA*P)%C
|
||||
TEQ4PFR1!!!9`FQPZG"e3FQPZG#"dD'8JFh"PBfPQD@9N)'pLDQ9MG#Kc+@&PGR4
|
||||
`C'pMER9XE!!!J!"[BQSJ''aTFh3JEfBJEf*UC@0dFb"dEb"`FQPZG!#3"!%&DA4
|
||||
PEA0QFf9XE'PcG'P%6b"16e3J990&1L"`FQpfD@4PC#"QEh)JBQ&MDhGKFQ4c)'0
|
||||
[EA"KG'PLD@aTG(NJGfPdD#"[E'3JCACPER3JFh9TG'8Z)#"AD@aX)'*P)(*PE@p
|
||||
fC@3JD@iJCR9dGA*P)%CTEQ4PFR1!!!4aG@Pd+P&eDA3JG'KP)%CTEQ4PFL!SC'P
|
||||
bC@0d)("KFQ&YCA4PFL"TCfj[FQ9N+@&PGR4aG@PdER9XE!!!J!"ZG@aX!!#3!!!
|
||||
!!3CcBACTEQF!Ff&fEh0KGQp-Fh"PBfPQD@9c)(GSCA4SCA)JG'mJFf&fC5"MGA*
|
||||
bC@jdE(NJEh"PEL"NEf0eE@9ZG(-J+'j[G#"cGA"`Eh*dC@3JBRNJ4QPZC'9b+3#
|
||||
J!!4cBACP+&0KGQ8JB@iJEf*UC@0d)#K1Eh3JFh9`F'pbG'9N)'*j)%CTEQ4PFLP
|
||||
MEh*PFf&fC@jeE'`!!)!!Ef*U)"*dD'8JEf*UC@0d)(4[)(0KGQ8!%!!!!J*TEJ"
|
||||
VCQPXB@aTFcjdD'8JCQPXC5"TEL"hD'PMD#"dEb"cBACP)(4SC5"[BQTPBh3J+'j
|
||||
[G#"cGA"`Eh*dC@3JBRNJ4QPZC'9b+3#!!!*KF`"QE(4`G(P`C9&dD'8JCQPXC5"
|
||||
dHA"P)'pQ)(4SC5"NEf0eE@9ZG#"TEL"hD'PMD#"dEb"cBACP)(4SC5"NBA4K)#K
|
||||
ZEh3JFh9`F'pbG'9N)'*j)%CTEQ4PFLQ!!!0cCA388f9d)'&Z)'pLDQ9MG#Gc)'4
|
||||
KG'%!BfpbCA0PG'4ZG@aX!!#!!'pLDL!8G'KP)'pLDQ9MG#"dEb"MD'&ZCf8!%!!
|
||||
!!3*dE`"NBA4K+T!%$A4SC5"ZCAFJGQ&XG@8!!!TcG@PdC5"TEQC[*%GPG#"TEQC
|
||||
[FQeKG'P[EL"KBQpeG#"PGQ9ZG#"cG@PdC5Kc+@0[FQ9RG(0TFh9TEM&K)(*PBfp
|
||||
bC#"MEfjdB@PZD@jR)(4SC5"cG@PdCA-JB@jN)(4SC@Pb)(CPFR0TEfjc3!"dHA"
|
||||
P+A4SC5"cG@PdC5"QEh)JGfKTBfJJG'mJFQ9dGA*Z)'PZCQpbE@&dD@pZ!!!!!3*
|
||||
TEJ"hFQ0ND@jdE%0dD'8JD(9YB@iJE'&ZCh9KCf8JB@jN)(0MFQP`G#"cHA0dC@d
|
||||
JD@iJGfKTBfJJG'mJFQ9dGA*Z)'PZCQpbE@&dD@pZJ!#3"`a'D@jNCA)J8h9TG'8
|
||||
K6f*UC@0dFb"KEQ3J4ACPER4c)'C[FL"dD'8J4QPZC'9b!'CZC()!!3!"!!d)Bfa
|
||||
PB@iJGA!H3A*bB@jRC5"TG'9YFb"TEL"hD@jNEhFJEQPMC@ajCQjNFQCME(9ZG@a
|
||||
X!!#!!'pLDL!@G'KP)(GTEQ4[Gb"dEb"ME'9KEL"eF!#3"!%#BRN!BRNJ)(4jF'8
|
||||
UG'KP)'pbC'9b)'PZ)(GSD@0S)(4[)'0XC@&Z)(9`)(4SC5"[BQTPBh4c!)!!#'0
|
||||
[EA"eG'9b)&4PFh3JBA4dFQPLGA4PFb"[CL"dD'Pc)'0[EA"eG'9bCQjNFQGcG'a
|
||||
XEfjR&h4SC5"bCA0eE(3JEfBJG'KP)(&eCA*jJ!"dHA"P&A4SC5"KG(4bD@*eG'8
|
||||
JG'mJG'9cG!!!!!%$D'&cD'&c)'a[EQFHG'9cG#"cF'9MD@CTBb"LDA4c)'pQ)(*
|
||||
PFh"[ER0P!)!!"@9UC@0d889UC@0d)(4SC5"cF'9MD@CTC@3JC'PcDbKc+5`JEh)
|
||||
JCACPFRNJC@TPBh4KBQaP)'4TFfXJD@BJEQmJF'&bB@ePG'9b)'Pc)(0`C@0TCQP
|
||||
PC'CZC(*PDQ0dER9XE!!!J!"[BQSJ%R4SC5"TG'9YFb"dEb"PDQ9MG!#!!!!!"@9
|
||||
YF(4j$d9YF(4j)(4SC5"dFQ&cD'CZC(*PEA"dER9XE!!!J!"[BQSJ-0*PEA"dHG-
|
||||
JB@jN)0*PEA"dH5"dFQ&cD0-JBQpdD#"NEb"dD'8JFf&YC5"dD'PZC`#3!!!!!!9
|
||||
PFQ&cC4Y&FQ&cC5"dD'8JFh"PBfPQD@9N)'4TFfXSFbPQEQ4bCQ9bB@jeE'`!!)!
|
||||
!Ef*U)"*dD'8JDA4PEA-JG'mJCA*KFf8!N!8)F(9d)'&hBANJ8(9d)'&hBANJG'K
|
||||
P)(0`C@0TCQPPC#"[BQTPBh3SFbPQEQ4bF(4hH@pLDL!XG'KP)'pLDQ9MG#"`GA3
|
||||
JBAGKH5"TEL"TG(-JF(9d,@&hBANJE'pMBA4TEfi!!!"[BQSJ&A4SC5"TG'9YFb"
|
||||
dEb"`GA3JBAGKH3!!!!%&DA4PEA0QFf9XE'PcG'P%6b"16e3J990&1L"`FQpfD@4
|
||||
PC#"QEh)JBQ&MDhGKFQ4c)'0[EA"KG'PLD@aTG(NJGfPdD#"[E'3JCACPER3JFh9
|
||||
TG'8Z)#"AD@aX)'*P)(*PE@pfC@3JD@iJCR9dGA*P)%CTEQ4PFR1!!!GbCA0dBA*
|
||||
d&9*PFh4KFR3JG'KP)%eKBfPZG'pcD'CZC(*bCA0dER9XE!!!J!"ZG@aX!!#3!!!
|
||||
!!!CbCACPB@`R3R*TEQFJG'KP)(0`C@0TCQPPC#"[BQTPBh3SFbNJD@jdEb"fD@9
|
||||
h!'eTFf0YGQPcER9XE!!!J!"[BQSJ(A4SC5"[BQTPBh3JG'mJBQ8JE@&NC5"fDA0
|
||||
TBQaP%!!!!!CcC@aPBh3H8f9XC@0d)(4SC5"cF'9MD@CTC@3JEf*UC@0d+(-TE@P
|
||||
cBh0XBh4ZG@aX!!#!!'pLDL!8G'KP)'pLDQ9MG#"dEb"cC@aPBh3!%!!!!!PcD(9
|
||||
d)'4[GfiA8fKeG#"%EhGZ)(4SC5"0B@0TER4[FfKQEQ4bFfKeG'jeE'`!!)!!ER9
|
||||
XE!!!N!!!!!!&FfaPCA!68faPCA!JG'KP)%eKBfPZG'pcD'CZC(*cEQpkER9XE!!
|
||||
!J!"ZG@aX!!#3!!!!!!4cEh*d,e*PG(9bEL"dD'8JFh"PBfPQD@9N)'pLDQ9MG#K
|
||||
c+5"TEL"K)(0[FR4PC#"XDA0d!%4"9%&66e*8Ef*U)#0dD'8JFfpbG'9N)'PdC@e
|
||||
c)'PZ)(4SC@Pb)'jPGb"[FQ4PFS!!Ef*U)#"K)'aTFh3JEfBJCQPZC'9b)'pLDQ9
|
||||
MG(-JG'mJFfpbG!#3"!%#BRN!BRNJ)(4jF'8KG'KP)("bEh"PFR4j)(4[)(0[FR3
|
||||
JG'KP)'PdC@ec)'*j!!!'GA"NBA4P8e9`C'&dC5"dD'8JC'PcF'aKH5"[CL"dD'8
|
||||
JFh"PBfPQD@9N)'pLDQ9MG#Kc+5"dEb"YBA4MD#"dD'9TFL"[ELeNDA0V)(*PF(*
|
||||
PFf9ZG'&dD@pZ!'CZC(*QGA"NER9XE!!!J!"[BQSJ%R4SC5"TG'9Y)(4[)(9`C'&
|
||||
dC3#3"MS4B@0MCA0cEh*j)("bEf0PFh0`Bf4K,8%JF(*[Bf9cFb"XBA9ZBfKPC#"
|
||||
QFQpY)'%JC'9cDb"KBf0PFh0[FRNJCQPXC3!"%f4PFfXJB@0MCA0cEh*j)'CTE'9
|
||||
NB@CTEf*U)$adD'8JC'9cDb"KBf0PFh0[FRNJCQPXC5"QFQpY)(GSD@0S)(4SDA-
|
||||
JF(*[Bf9cFb"hBA-JE'&eEQ0SC@3!N!86B@0MCA0cEh*j)("bEf0PFh0PFh"MC'%
|
||||
ACACPFRNJB@0MCA0cEh*j)("bEf0PFh-!!3!!Bd!M)A4jF'8!!!!"!!!5B@0MCA0
|
||||
cEh*j)(0eDA4MBA0P!'4cGA3C35"NCA0V)'&MBf9cFfpbH5"cG@PdBf&cC3!!!!&
|
||||
MEf*U!!*TEQ4iEQ&YC40KBf0PFh0[FRNJFh9TG'0KFf9cC(0eG"KPGQ9bH5"KBf0
|
||||
PFh0[FRNJFh9TG'0KFf8!!!%!!'0!)b&dHA"P!!!!!3!!#Q&XD@&c)'CTE'8!B@a
|
||||
TB5P"EL"KE'PKFb"QD@aP)#KMFQ9KG'9N)(GTG'JJdNeKDf8J3@aTBA26+3!"$@p
|
||||
bD@GTEQ&X)'PdC@e[FQPREf*U)#PdD'8JEh*TCfPZB@`JDA4PE5"`EfPZG'9N)(4
|
||||
[)'*j)(4SC5"KE'PKF`#3"!YKE'PKFb"QD@aPFf&XD@%3CACPFRNJB@aTBA-JCQP
|
||||
XC3!!!3!!Bd!M)A4jF'8!!!!"!!!,BA"`E'PMBA4TEfjMBA"`&N&Z)'&`F'aTBf&
|
||||
dD@pZ)("bEfGbB@d!!"F8B@*[GA3JG'KTFb"YB@0TER4[FfJ!B@*LH'pLDL"8G'K
|
||||
P)0*"BQpeG#"dD'Pc)%eKBfPZG'pcD0-JC'PKE'pR,#"KEQ3JG'KP)'aTFh3JEfB
|
||||
JFR9ZEQPZCb"`FQpMCA0cCA-JC'PcF'aKH@9N)'PZ)'Pd!!!!&f&`F'aP)'ePER8
|
||||
JDA4PEA-JCQpXC'9bB@eZG@pLDL"9G'KP)(0`C@0TB@`JCQpXC'9b)0*"F("XC5"
|
||||
0C@je)%PdC@ec,0-JG'KP)'0[ER4PER4c)'pQ)(GSD@0S)'&`F'9KFL"TEL"dD'8
|
||||
J3A"`E'8JE@9ZG3!!#@0XDA"LEf&bC("ME'P[BQSJ(A4SC5"'D@jNCA)RFb"ME'P
|
||||
`BQpKFQ3JGfPZC'ph!!!9BfpZG(*[E#"`B@jPE(-JCQpXC'9bBh4bE'pLDL!MG'K
|
||||
P)(0`C@0TB@`JCQpXC'9b)0*$EfjdFQpX)&"KEQ9XFp-!!!GNCA0VG'p`C'9cDfp
|
||||
LDL!,G'KP)'4PFfYdEh!!!"&PH(4PER0TEfjc)'C[E'4PFQ9iG'j[BQSJ(h4SC5"
|
||||
cF'9MD@&X)'C[E'4PFL$54AKdC@jcD@pZFp-!!!aQD@aP)(0SBA*TEQF!CR0SFQ*
|
||||
[Ef`65A-JCQPXC5"cD'&bD@jR)'pZ2a!!$'C[ER4c)'C[E'4PFJ"QCQjdEf*U)"T
|
||||
dD'8JFh"PBfPKE#"QEfaNCA)JdNC[ER4cd`!!!!PQFQpZG'e[Fh4`DA0QBQp[E#*
|
||||
*Fb"dD'Pc)(4SC5"QFQpZG'e[Fh3JBA"`E'PMBA4TEfir!"!!%QPZFf9bG'P[EL"
|
||||
XEf0KG'P[EJ"`D@jcEf*U)%adD'8JBfpZG'&TEQ9b)(4SBA3JB5"ZCAFJCQpXC'9
|
||||
b)(G[G@aN)'&`F'9KFL"TEL"TCL$56Q9h)%C[E'4PFY-JGf&c)(0PE'9MG'9N!!!
|
||||
!%QaKFQGPFh3JCR*PC5"LE'pMD`"YCR*PE'pZCdYdD'8JE'&bCf9cG#"QFQ9P)'*
|
||||
XEf0V)'pQ)("bEf0PFh-JE@9YEh*j)'&fB@PXB@*XC5"dEb"XBA9ZBfJJB@iJBA"
|
||||
`E'PMBA4TEfi!!"*`FQ9QCA*PEQ0PFb"QEfaNCA)!F(*PCQpLDL!JG'KP)(0`C@0
|
||||
TB@`JCQpXC'9b)0*3FQ9QCA*PEQ0PFp-!!!!2F(*[C(9MG#"fCA*cD@pZGQ9b-QP
|
||||
dH(3mG'KP)(CPFR0TEfiJEfBJG'KP)&0jFh4PE5"cEfCdGf&bC5"bG@jZD@jR)'p
|
||||
Z)(4SDA-J6@&MD@jdEh0S!!!!#A0PE'9MG'P[ER0PE'9[BQSJ)A4SC5"cC@aPBh4
|
||||
TEfiJGQPcD@*XC5"dEb"dD'8JGA0PFK!!%h0SBA*TEQFJFh4KFR4TEQFJGA"QFh9
|
||||
`BQp[E%e*Fb"'D@aP)(0SBA*TEQFJD@iJG'KP)("bEf0PFh-JEfBJFh4KFR4TEQF
|
||||
JGA!J+(0dD@aX)'pQCL`JBR9d)(0[EfiJG'mJBQ8JEfiT2`!!#A0SEh*dBh9dFh0
|
||||
MGA4[BQSJ0A4SC5$54QPZC'9b)&0SEh*dBh9dFp-JDA4PE5"TEL"dD'8J4QPZC'9
|
||||
b*h-JD'9XF#"YC@je!!!9FfKeG'4[GfiJDA4PEA-JCQpXC'9bFfKNCQpLDL!MG'K
|
||||
P)(0`C@0TB@`JCQpXC'9b)0*6D(9dC'phEL"*G'9YFp-!!"4cG'&bG(9`)'PdC@e
|
||||
c)'C[E'4PFJ"cG(*dEf*U)#*dD'8JFh"PBfPKE#"QEfaNCA)JdP0dBA*dGA!J5A4
|
||||
PEA26!!!!$A0jFh4PE5"QEfaNCA*YB@0cEf*U)"&dD'8J8hPcG'9Y)'C[E'4PFJ!
|
||||
!&R4PEA"[FQ&bH5"TG'9YFb"QEfaNCA)!G'9YF'pLDL!`G'KP)(0`C@0TB@`JCQp
|
||||
XC'9b)0*8C@e`Eh*KFRNJ5A4PEA26)#KTERCTFfPLE'8T!!!!"hCPFR0TEfjfCA*
|
||||
cDA4iG#edD'8JGQ9bFfP[EL"[CL"dD'8J4QPZC'9b)&0MFQP`G'PZCb"&H(4PER0
|
||||
TEfi!!""fD@9h)("bC@CPFQ9ZBf9c!("fGh"[BQSJ)R4SC5"fD@9h)("bC@CPFQ9
|
||||
ZBf9c)'0[ER4bEf`JF'&ZC@`!!!!(GQPcD@*XCA"fDA0LEfpX(NPc)(4SC5"'D@j
|
||||
NCA)RFb"XBAPPFL"fDA0TBQaP2`!3!!!AC(0eG!!#D@jNH'jKE@9KE'PK!!*TEQ4
|
||||
iEQ&YC@&`F'B!!fPZC(KZB@eP583J)'0dER)!!QPZC(KZB@ePBhGZC!!#D@jNH'j
|
||||
KE@9NGfjN!!*TEQ4iEQ&YC@0MC(B!!QPZC(KZB@ePC'&QD3!#D@jNH'jKE@9MC(0
|
||||
V!!*TEQ4iEQ&YC@0NDA-!!fPZC(KZB@eP583J)'4[BfB!!QPZC(KZB@ePCQPXC3!
|
||||
#D@jNH'jKE@9MCQpX!!0TEQ4iEQ&YC8P%)#"QER4Q!!*TEQ4iEQ&YC@CcGA3!!QP
|
||||
ZC(KZB@ePDAGZC!!#D@jNH'jKE@9MEf*U!!*TEQ4iEQ&YCA0MG()!!QPZC(KZB@e
|
||||
PFhGZC!!#D@jNH'jKE@9cEQ4Q!!*TEQ4iEQ&YCA0dBh-!!QPZC(KZB@ePBh4bF`!
|
||||
#D@jNH'jKE@9MGfPZ!!*TEQ4iEQ&YC4"KF("XD@0KG'P[EL"QD@aP!'&`F'BG3@i
|
||||
JBA"`E'PMBA4TEfiRFb"QD@aP)'pZ)'4TFfX!""CYD@jTEA9Y)("KFR4TG'P[EL"
|
||||
cDATP!'e`FR4XEfjR5h4SC5"cE@&XE'9cG#"YC@e[FRNJFfPkC5"dD'&d)(4SC5"
|
||||
KF("XD@0KG'P[EL"MB@iJF'pcFfPLE(NJBQ8JE'&eEQ0SC@3JGfPdD"!!$R"KFR4
|
||||
TG'P[EL"cDATP!'&`F(4XEfjR1R4SC5"YC@e[FRNJFfPkC5"dD'&d)(4SC5"KF("
|
||||
XD@0KG'P[EL"hD@aX)'*P)'aKG@jMD'9N)(GTG'J!%!!+Ff0bDA"dB@*XC3"TFf&
|
||||
LBQp[E'p*Fb"dD'Pc)'&`F'aTBf&dD@pZ)'KTCfJYE'9fC@`JCACPER3JBAGKFQ8
|
||||
J+'&MBf9`G(-JEh"PEL"KF("XD@0KG'P[EL`JEh"PEL"NEf0eE@9ZG#`JF(*TER3
|
||||
JC'pMG@ePER3X)'&ZC#"aG@Pd+6m!!"KcG@GRCA0dC@3JF'&bG'PdD@pZ)(0THQ8
|
||||
!Fh"bG'a[EQGDG'KP)'ePE@pbH5"cDATP)(4SBA3JG'KP)'4PGQ9XEh"PFL"bC@0
|
||||
[E@ePEQ4c)(4SBA3JG'KP)'&`F'aTBf&dD@pZ)(0SEh9XC#"LC5"XBA9ZBfKPC#"
|
||||
hDA4S!*!&%@&`F'aTBf&dD@pZ)'CTE'9cBA"`CKCPGQ9bH5"KF("XD@0KG'P[EL"
|
||||
QD@aP!!!"!!"M3#-KG(P`C3!!!!%!!"0KF("XD@0KG'P[EL"`FQpMCA0cF'0KF#Y
|
||||
")("bEf0PFh-JE'&eEQ0SC@3JCR*[E5"KEL"KF("XD@0KG'P[EL"QD@aP!!%3BA"
|
||||
`E'PMBA4TEfiJCQPXC3"KF("QBA"`CMPdD'8JBA"`E'PMBA4TEfiJCQPXC5"QFQp
|
||||
Y)(GSD@0S)(4SDA-JF(*[Bf9cFb"hBA-JE'&eEQ0SC@3!N!39BA"`E'PMBA4TEfi
|
||||
JF(*[Bf9cFf9cF'0KF"PPGQ9bH5"KF("XD@0KG'P[EL"`FQpMCA0c!!%!!'0!)b&
|
||||
dHA"P!!!!!3!!#@0[ER4KD@jPFQ0dER)K3@iJDA4PE5"dD'&d)'0[ER4KD@jc)'p
|
||||
dD'9b)'PdC@ec!!J6BfpYF'aPG'9XH5"PH("KEQ4PC("PH'0LEfpX2NPc)(4SC5"
|
||||
MEfjdB@PZCA)JB@jN)'&XE#"[CL"TG(-JBfKTE'4bC@iJEh"PEL"TEL"[GA4XD@j
|
||||
P)(CTCAFr!"!!%'0[ER4KD@jPFL"hD@jNEhF!BhGZC'pLDL!KG'KP)'eKD@iJGfP
|
||||
ZC'ph)'C[FL"dD'8JBfpZG'&TEQ9b!!!2C@jdDA*P)'0[ER4PER4cC@0dFfpLDL"
|
||||
-G'KP)'9ZG'PbC5"MEfjdC@jdFb"[CL"dD'8JBfpZG'&TEQ9b,#"TEQ0XG@4TEQF
|
||||
JG'KP)'0[ER4PER4c)'pQ)'PdFb"MD'PXC(*PEJ!!!!TPH("KEQ4KBQaP!("PH'&
|
||||
LEfpX28Pc)(4SC5"MEfjdB@PZCA)JBf&`B@*XC5"[CL"LC@PZCb"PH("KEQ4PC#"
|
||||
TER4[)'peG'aTEQ8JGQPPGcm!!!KPH("KEQ4PC!"`CAK`BQp[E#C*Fb"dD'8JBfp
|
||||
ZG'&TEQ9b)'p`C@iJD@iJEh9dE'PZC5"fD@9h2`!3!"*`FQ9fD@peFb"XDA0d)(C
|
||||
TCAF!FhCPGfa[EQGfG'KP)'aKFh3JEQpZ,@PMEfiJGQPPGb!SBRNJEQ&YC5`JBRN
|
||||
JC'&dC5`JCA4M,LNJFf9XC@0dC@3JCQpb)(4SC5"MEfjdB@PZCA)J+'C[FQG[G(4
|
||||
PEL"KFb"cEfpZ)'&c)(4SC5"hD@jNEhFJDA-JBfa[Ff9N+3!!!!PcC@aPBh4TEfj
|
||||
cC@aPEf*U)#&dD'8JFf9XC@0dD@pZ)(CTFfPLE'8JG'mJG'KP)(9cCA)3!!4fD@9
|
||||
h!("fCAGXEfjR4A4SC5"fD@9h)(0PE'9MG'9N)'C[FL"dD'8JBfpZG'&TEQ9b)#K
|
||||
LH5"TBfpZ,#"LH5"ZB@eP,#"LH5"NBA4P,#"PG'-Z+4!!!!pNFh9d!!*TEQ4iEQ&
|
||||
YC@&XD@%!!QPZC(KZB@ePBA"`CJ!#D@jNH'jKE@9MG'jb!!*TEQ4iEQ&YC@0MC(B
|
||||
!!QPZC(KZB@ePC'&QD3!#D@jNH'jKE@9NEf0Q!!*TEQ4iEQ&YC@CTE'8!!QPZC(K
|
||||
ZB@ePBfC[E!!#D@jNH'jKE@9QER4Q!!*TEQ4iEQ&YC@CcGA3!!QPZC(KZB@ePBfp
|
||||
LDJ!#D@jNH'jKE@9cBh4b!!*TEQ4iEQ&YCA0ZC'B!!QPZC(KZB@ePFh4MF`!#D@j
|
||||
NH'jKE@8+BfpZG'&TEQ9bF`"MG'jb$f9fCA*j)'0[ER4KD@jPFJ!"!!"M3#-KG(P
|
||||
`C3!!!!%!!""MEfjdB@PZCA)JGfPZC'ph!'0hEQ3F35"hD@jNEhFJG'KKG#"MEfj
|
||||
dB@PZFb"TG'9YF`!!"`PMEfjdB@PZCA*MG'jbEf*U)#KdD'8JBfpZG'&TEQ9b)(4
|
||||
SDA-JGfPZC'ph)'Pc)'p`C@jPC#"QFQpY!!!!"'4TFfX!Bf4TFfpLDL"!G'KP)'4
|
||||
TFfXJEfiJGfKTBfJJG'KP)'PdC@dJG'KTFb"hD@jNEhFJGf&c)'p`C@jPC#"QFQp
|
||||
Y)'Pc)(0dEh*PC!!!!!CQEfaNCA)!BfC[E'pLDL!PG'KP)'C[E'4PFL"dD'Pc)(G
|
||||
TEQ4[Gb"TFb"[F'9ZC@3JCR*[E3!!"'PdC@d!BfpLDQpLDL!MG'KP)'PdC@dJG'K
|
||||
TFb"hD@jNEhFJDA-JEh"PEQ9N)'CbEfd!!"*`FQ9fD@peFb"XDA0d)(CTCAF!FhC
|
||||
PGfa[EQGcG'KP)'aKFh3JEQpZ,@PMEfiJGQPPGb!SBRNJEQ&YC5`JBRNJC'&dC5`
|
||||
JCA4M,LNJFf9XC@0dC@3JCQpb)(4SC5"hD@jNEhFJ+'C[FQG[G(4PEL"KFb"cEfp
|
||||
Z)'&c)(4SC5"hD@jNEhFJDA-JBfa[Ff9N+3!!#A0PE'9MG'P[ER0PE'9[BQSJ)A4
|
||||
SC5"cC@aPBh4TEfiJGQPcD@*XC5"dEb"dD'8JGA0PFK!!"(CTCAF!F(CPGfa[EQG
|
||||
#G'KP)(CTCAFJFf9XC@0dC@3JCQpb)(4SC5"hD@jNEhFJ+'*j)'PMEfiX)'*j)'j
|
||||
KE@8X)'*j)'4KG'8X)'9dBbiT!"!!!!pNFh9d!!*TEQ4iEQ&YC@&XD@%!!QPZC(K
|
||||
ZB@ePBA"`CJ!#D@jNH'jKE@9MG'jb!!*TEQ4iEQ&YC@0MC(B!!QPZC(KZB@ePC'&
|
||||
QD3!#D@jNH'jKE@9NEf0Q!!*TEQ4iEQ&YC@CTE'8!!QPZC(KZB@ePBfC[E!!#D@j
|
||||
NH'jKE@9QER4Q!!*TEQ4iEQ&YC@CcGA3!!QPZC(KZB@ePBfpLDJ!#D@jNH'jKE@9
|
||||
cBh4b!!*TEQ4iEQ&YCA0ZC'B!!QPZC(KZB@ePFh4MF`!#D@jNH'jKE@84BfpZG'&
|
||||
TEQ9b)(GTEQ4[Gh0MGfjN&Q9fCA*j)'0[ER4KD@jPFL"hD@jNEhF!!!%!!'0!)b&
|
||||
dHA"P!!!!!3!!$@0[ER4PER3JFh"KBf9NGfjN@%&XE#"hD@jNEhGc,#"TEQ0XG@4
|
||||
TEQFJG'KP)'4PFfYdEh!JGfPZC'ph)#M59fPZC'phdb"NEf9c)'j[G#"TEQ0XG@4
|
||||
P)(4SC5"NCA0VG'p`)(GTEQ4[GbN!N!81BfpZG'9ZG#"cF'&MCA-!C(GZC"0&GQ9
|
||||
bH5"MEfjdC@jd)(0`B@0P!!%!!'0!)b&dHA"P!!!!!3!!$@0[ER4bEf`JF'&ZC@a
|
||||
MBf4f$d%JBfpZG(*[E#"`B@jPE!!0&Q0KE'0eE'&dC5"QEfaNCA)JFfPkCA-!FfC
|
||||
cHQ*[Efa*+&CTCAGc+5""FQ8JCQpXC'9b)(0THQ9c)'0KE'0eE'&dC@3JB@jN)'4
|
||||
TFh"XBAPPC#"TEL"'D@jNCA)JE'PcG#"hD@jNEhGc2a!!$f0[E@ePER3JD'9KC'P
|
||||
ZCh0MEfeLEfpX0LK@D@9hFbNJ3A*P)'0[E@ePER4c)'4TFh"XBAPPC#"TEL"'D@j
|
||||
NCA)JE'PcG#"hD@jNEhGc2`!3!!aNBA4P)'KPB@4TEQF!Ff4KG'*[Efa!+&CTCAG
|
||||
c+5""FQ8JE@pND@CTBf&dD@pZ)'4KG'9c)'4TFh"XBAPPC#"TEL"'D@jNCA)JE'P
|
||||
cG#"hD@jNEhGc2`!3!"KNDA0V)'PZCQpbE@&dD@pZ)'KPB@4TEQF!Ff4TEQ*[Efa
|
||||
*+&CTCAGc+5"*Fb"TEQC[FQeKG'P[EL"KBQpeG#"dD'8JGQpXG@eP)'4TFh"XBAP
|
||||
PC#"TEL"'D@jNCA)JE'PcG#"hD@jNEhGc2a!!#@PMEfiJFfPkC@afDA0XEfjR1LK
|
||||
@D@9hFbNJG'KP)(0THQ8JEfBJD@0[ER-JC'PcF'aKH@9N)'PZ)%CTEQ4PFL"XDA0
|
||||
d)(GTEQ4[Gh-!%!!-DfPZC#"SC@&ND@jR!(0VEQ4LEfpX2#K@D@9hFbNJ3A*P)'4
|
||||
[Bh9YC@jd)'YTEQ4c)'4TFh"XBAPPC#"TEL"'D@jNCA)JE'PcG#"hD@jNEhGc2`!
|
||||
3!!eXB@*PE#"SC@&ND@jRFfaLE'*[Ef`d+&CTCAGc+5""FQ8JE'&LC@ac)'4TFh"
|
||||
XBAPPC#"TEL"'D@jNCA)JE'PcG#"hD@jNEhGc2`!3!!acDATP)'KPB@4TEQF!Fh0
|
||||
THQ*[Ef`h+&CTCAGc+5""FQ8JCQPXC5"cDATPFb"NDA0`E'&jC@3JD@iJ4QPZC'9
|
||||
b)'aTFh3JGfPZC'phFa!!$(0ZBA!JG'mJCh*TC!"QCh*NBQp[E%mS9QPPGh-T)%&
|
||||
bC5"TG'9YFb"KE(GKHA-JFfjKF("PC#"dEb"dD'8JEQ9KFQ9cG#"RFQPN)("[D@j
|
||||
d)(GSC@iJG'KPH5"KFQ8JE@pfC@3r%!!1Fh4KCfGPFQ9N)'GbD@3!CR0dCf*[Ef`
|
||||
K+&CTCAGc+5""FQ8JCh*TC#"XD@jPFb"cG'&RCf9bC@3r%!!2GQ9bFfP[EL"SC@&
|
||||
ND@jRFhCbFf*[Ef`l+&CTCAGc+5""FQ8JCQPXC5"fCA*cD@pZFb"NDA0`E'&jC@3
|
||||
JD@iJ4QPZC'9b)'aTFh3JGfPZC'phFcm3!!PfD@9h)'C[ER4fCQjdE'pZCbmS9QP
|
||||
PGh-T)(4SC5"TC#"[CL"dD'8JCQpZG#"eFf9N)'PZ)%CTEQ4PFL"fD@9hFa!!$RC
|
||||
TCAFJCQpZG#"cDATP!(CQFhTXEfjR-5K@D@9hFbNJG'KP)(0THQ8JEfBJG'KP)'C
|
||||
[ER3JGA0PC#"TEL"'D@jNCA)JGQPPGh-3!!!!$Q0[ER4bEf`JF'&ZC@ac!'0MC(B
|
||||
6CACPFRNJBfpZG(*[E#"`B@jPE!!"!!"M3#-KG(P`C3!!!!%!!"0NCA0V)'&MBf9
|
||||
cFfpbH5"QD@aPC'&QD49")'4PFfXJB@0MCA0cEh*j)'CTE'8!N!38C'9cDb"KBf0
|
||||
PFh0[FRNJCQPXCA-!C'&QD4PPGQ9bH5"NCA0V)'&MBf9cFfpbH5"QD@aP!!%!!'0
|
||||
!)b&dHA"P!!!!!3!!$Q4PFfYdEh!YEf*UC@0d!'0NFfXc4'9cDh4[F#e[BQTPBh3
|
||||
JDA-JG'KP)'0XBA0c)'pQ)(4SC5$5C'9cDh4[F0-JEf*UC@0d!!)-Fh4KFR4eF#"
|
||||
NDA0V!(0NFfY[BQSJ%(4SC5"cG'&bG(9`)'4TFfX!!!!&G(*KFfKdFR0SEf*U)!P
|
||||
dD'8JG(*KFfJ!!!!2C(0eG!!#D@jNH'jKE@9KE'PK!!*TEQ4iEQ&YC@&`F'B!!QP
|
||||
ZC(KZB@ePBh4ZFJ!#D@jNH'jKE@9MBf4f!!*TEQ4iEQ&YC@4KCQN!!QPZC(KZB@e
|
||||
PC'pMCJ!#D@jNH'jKE@9QD@aP!!*TEQ4iEQ&YC@0QEf`!!QPZC(KZB@ePCQjdCJ!
|
||||
#D@jNH'jKE@9QFh9d!!*TEQ4iEQ&YC@0[BQS!!QPZC(KZB@ePFf0dFJ!#D@jNH'j
|
||||
KE@9cEQ4Q!!*TEQ4iEQ&YCA0dBh-!!QPZC(KZB@eP"'4TFfX!Bf4TF`C")'4TFfX
|
||||
!!!8)Bf&`B@0TG(N!Bf&`B@a[EQFdG'KP)(4[G'&X)'jeE@*PFL"[CL"LHA4PFb!
|
||||
SCR*PC5"[FL"eFf9N+5"[EL"dD'8JC'PcD`!!!!PPDQ9MG'&LE'9TFf9UBQp[E$G
|
||||
$B@iJG'KP)'ePC'PK)'0KEL"LC5"PDQ9MG'9N)#KQE'p`F'PPFb`J3d3RFb`JFhP
|
||||
aG@9cG#Nr!!!+CR*PC5"cF'&MC3"QFR0`E'pZCbPdD'8JER9YBQ9b)'pQ)'CbC@8
|
||||
JBRPdCA-JE'9QG#"[EL"dD'8JC'PcD`!!$'a[Bf&X)(C[E(9YC3"TFh*fBQp[E$Y
|
||||
*Fb"dD'8JE@9ND@%JDA-JB5"XEf0KE#"fEfaeE@8J+(*KG'KPFL"dD'&Z)'%JCQP
|
||||
XC5"cCA*fCA)T2`!!"h0dBA*dGA"TFh4NBQp[E"Y*Fb"dD'Pc)'4TFfXJG'KP)'*
|
||||
[Eh3JC'PcDcm!!!!2C(0eG!!#D@jNH'jKE@9KE'PK!!*TEQ4iEQ&YC@&`F'B!!QP
|
||||
ZC(KZB@ePBh4ZFJ!#D@jNH'jKE@9MBf4f!!*TEQ4iEQ&YC@4KCQN!!QPZC(KZB@e
|
||||
PC'pMCJ!#D@jNH'jKE@9QD@aP!!*TEQ4iEQ&YC@0QEf`!!fPZC(K*4#!JEQ&YC@C
|
||||
ZG'B!!QPZC(KZB@ePCR0eG!!#D@jNH'jKE@9MEf*U!!*TEQ4iEQ&YCA0MG()!!QP
|
||||
ZC(KZB@ePFfjNCJ!#D@jNH'jKE@9cG'0c!!*TEQ4iEQ&YC39NDA0VFf0NDA-+CAC
|
||||
PFRNJC'PcD`!!!3!!Bd!M)A4jF'8!!!!"!!!0C'pMG@ePER3JCQPXC@4[BfB235"
|
||||
NEf0eE@9ZG#"QD@aP!*!%$Q4[Bh9YC@jd)'CTE'9c!'4[BfB6CACPFRNJC'pMG@e
|
||||
PER3JCQPXC3!"!!"M3#-KG(P`C3!!!!%!!!4QD@aP!'CTE'8'35"QD@aP!!!'$'0
|
||||
bC@&dEh)JG(P`C3"QBh*dG(P`C6adD'8J6e08HA"P)'PNC@jdD@CjD@jR)(4SC5"
|
||||
KF("XD@0KG'P[EL"dD'&d)'0bC@&dC@3JG'KP)'PdC@d!%!!*CQPXC5"dHA"PCQP
|
||||
dF(4jF'8pG'KP)%p69(P`C5"TC'9ZG'PQH@PZCb"dD'8JG(P`C5"[CL"NBA4K)'0
|
||||
[ER4KD@jPC#"TEL"dD'8JDA4PE4!!"Qa[BfYPC!"TFfaVBQp[E"0*Fb"dD'8JCQP
|
||||
XC5"XEf0VC@3r%!!2F(*[C(9MG#"fCA*cD@pZGQ9b-QPdH(4)G'KP)(CPFR0TEfi
|
||||
JEfBJG'KP)("bEf4eBh3J+(CTFfPLE'8JBA3JG'KP)(4[F#"[CL"dD'8JdNGPG#"
|
||||
*EQC[db"ND@&XEfFT!!!!#R0dBA4TEfjPFRN!F(0`C'*[Ef`G5A-JG'KP)'PdC@d
|
||||
JB5"cG'&dD@pZCA*j)("KC$m3!!GfCA*cD@pZGQ9bFfPdH(4)G'KP)(CPFR0TEfi
|
||||
JEfBJG'KP)'CTE'8J+(CTFfPLE'8JBA3JG'KP)'*[G(4[E5"[CL"dD'8JdNGPG#"
|
||||
*EQC[db"ND@&XEfFT!*!&"@CTE'9cCQPXC3TPGQ9bH5"QD@aP!!!"!!"M3#-KG(P
|
||||
`C3!!!!%!!!CQEfaNCA)!BfC[E!K")'C[E'4PFJ#3"!pNFh9d!!*TEQ4iEQ&YC@&
|
||||
XD@%!!QPZC(KZB@ePBA"`CJ!#D@jNH'jKE@9MG'jb!!*TEQ4iEQ&YC@0MC(B!!QP
|
||||
ZC(KZB@ePC'&QD3!#D@jNH'jKE@9NEf0Q!!*TEQ4iEQ&YC@CTE'8!!QPZC(KZB@e
|
||||
PBfC[E!!#D@jNH'jKE@9QER4Q!!*TEQ4iEQ&YC@CcGA3!!QPZC(KZB@ePBfpLDJ!
|
||||
#D@jNH'jKE@9cBh4b!!*TEQ4iEQ&YCA0ZC'B!!QPZC(KZB@ePFh4MF`!#D@jNH'j
|
||||
KE@8(CQpXC'9bFf0QEf`-CACPFRNJCQpXC'9b!!!"!!"M3#-KG(P`C3!!!!%!!!P
|
||||
QEfjd)'CTE'9QER4Q#d%JCQpZG#"QD@aP!*!%#QC[ER3JCQPXCA-!CQjdCJpPGQ9
|
||||
bH5"QEfjd)'CTE'8!!3!!Bd!M)A4jF'8!!!!"!!!0CQpZG#"cG@PdBf&cC@CcGA3
|
||||
235"QEfjd)(0eDA4MBA0P!!!!!@0[BQS!!QPZC(KZB@eP$QC[ER3JFh9TG'0KFf9
|
||||
c!'CcGA36CACPFRNJCQpZG#"cG@PdBf&cC3!"!!"M3#-KG(P`C3!!!!%!!!9RFQp
|
||||
eF(0RFR!Y35"(FQpeF#"TEL"dD'8J9A0PFR-JB@jN)%GbEh9`Fb"MEfjdFQpX)("
|
||||
KEQ9X!!8'BQpeEQ4c!("LEQ4aC(*d)h4SC5"LEh9ZC'PZCb"bC@0dB@jRE'8JEfB
|
||||
JG'KP)'GbEh9`%!!%D@0[EJ"TD@eRD@CKE4adD'8JD@0[EL"LDA4YBA!JEfBJG'K
|
||||
P)'GbEh9`!"!!#faKBQ9X)'PZC'9iE'&LD@a[EQF@G'KP)'aKBQ9X)'pQ)(4SC5"
|
||||
RFQpeF!!3!!4ZB@eP!("ZB@eTG(Kd&A4SC5"ZB@eP)'pQ)(4SC5"RFQpeF"!!#("
|
||||
[FfPdD@pZ!("[Ffj44("d-R4SC5"`Eh0TG'P[EL"[CL"dD'8JCh*[GA!JGfPdD'P
|
||||
Z)'PdFb"`BA*PER3JGfPZC'ph!"!!!!!'Ch*[GA"c!(0RFR!,CACPFRNJCh*[GA!
|
||||
!!3!!Bd!M)A4jF'8!!!!"!!!5D@jQEh*YBA4TEfiJGfPZC'ph!'PhEQ3Y3@iJD@j
|
||||
QEh*YBA4TEfiJGfPZC'ph)#K[F'9ZC@3JBRNJdNGPG#"*EQC[bG-T!!m(BfpYE@9
|
||||
ZG'0[EA4TG(Kd#h4SC5"MEfeYC@jd%!!0Bh*PBA4TEfiJC'&dC@0bG'4XC(3J*R4
|
||||
SC5"NBA4P)'pZ)(GSD@0S)(4SC5"TG'9Y)(GKFb"MFQ9KG'9N!!!!"'PMEfi!D@P
|
||||
YCfPQB@dEG'KP)'PMEfiJBQPdE@&`)'pQ)(4SC5"TG'9Y%!!%DA4PE3"MEf*UEf*
|
||||
U)#4dD'8JDA4PE5"dD'Pc)(GTEQ4[Gb"hBA-JEh"PEQ9N)'CbEfd!!!!'E'pMDf9
|
||||
N!'PcE'YLEfpX%dPc)(4SC5"TG'9Y)'a[BfYPC$m3!"CYD@jTEA9Y)("KFR4TG'P
|
||||
[EL"cDATP!'e`FR4XEfjR5h4SC5"cE@&XE'9cG#"YC@e[FRNJFfPkC5"dD'&d)(4
|
||||
SC5"KF("XD@0KG'P[EL"MB@iJF'pcFfPLE(NJBQ8JE'&eEQ0SC@3JGfPdD"!!%@e
|
||||
[C'PQD@0KG'P[EL"NBA4PE@pNC'aNG#!XG'KP)'4KG'8JEfiJGfKTBfJJG'KP)'P
|
||||
dC@dJGf&c)'aKFh3JE@pND@CTC@3!!!!1F'&bG'PdD@pZ)(0THQ8!BA"`G'a[EQF
|
||||
kG'KP)'ePE@pbH5"cDATP)(4SBA3JG'KP)'&`F'aTBf&dD@pZ)(GTE'`JBQ8JE'&
|
||||
eEQ0SC@3JGfPdD!!3!!e`D(PcD@0KE#"cDATPF'KjFfa[EQFTG'KP)'&MG(9KE#"
|
||||
cF'&MC5"eFf9N)'*j)(4SC5"TG'9Y)'pZ)'4TFfX!!!p`FQpNG@0d)(CPFR0TEfj
|
||||
fCA)bDA4iG%KdD'8JGQ9bFfP[EL"[CL"dD'8JF(*[C(9MG#!SGQPcD@*XC5"KG#"
|
||||
dD'8JG'p`)'pQ)(4SC5$54f9d)%PZCQr6)'4TB@a[CbN!!!!%FfPkC3"`G(0kE'p
|
||||
ZCaadD'8JE'pRD@0KE#"cDATP)'pQ)(4SC5"TG'9Y!!!!#R0dBA4TEfjPFRN!F(0
|
||||
`C'*[Ef`G5A-JG'KP)'PdC@dJB5"cG'&dD@pZCA*j)("KC$m3!"KcG@GRCA0dC@3
|
||||
JF'&bG'PdD@pZ)(0THQ8!Fh"bG'a[EQGDG'KP)'ePE@pbH5"cDATP)(4SBA3JG'K
|
||||
P)'4PGQ9XEh"PFL"bC@0[E@ePEQ4c)(4SBA3JG'KP)'&`F'aTBf&dD@pZ)(0SEh9
|
||||
XC#"LC5"XBA9ZBfKPC#"hDA4S!!!!"hCPFR0TEfjfCA*cDA4iG%KdD'8JGQ9bFfP
|
||||
[EL"[CL"dD'8JCQPXC5!SGQPcD@*XC5"KG#"dD'8JBQpdG'pY)'pQ)(4SC5$54f9
|
||||
d)%PZCQr6)'4TB@a[CbN!!!!8Gf&bEL"LC@C[FQ8JC@e`G(PTEQF!Gf&bEQ*[Ef`
|
||||
f5A-JB5"ND@&XEfFJC'PcF'aKH@9N)(GSC@iJdN9YF(4j)(4bBA0SbG-JDA-JFf9
|
||||
XC@0dC@3r!"!!!!!6D@jQEh*YBA4TEfiJGfPZC'phFfPhEQ3BCACPFRNJD@jQEh*
|
||||
YBA4TEfiJGfPZC'ph!!!"!!"M3#-KG(P`C3!!!!%!!!4TG'9Y!'0[BQS(3@iJDA4
|
||||
PE3!6"Q*[G@jNF`"`BQjNF@4bG#*dD'8JBQpeEQ4TEQFJFQ9MG'&ZCfaP)'pQ)(4
|
||||
SC5"TG'9Y!"!!"f0[E@ePER4MEfedDA4iG$TdD'8JBfpYE@9ZG#"NDA0`E'&jC@3
|
||||
JD@iJG'KP)0*(CA3J5@jQEp-JGfPZC'ph)'pQ)(4SC5"TG'9Y!"!!#@0[ER4KD@j
|
||||
PFQ0dER*[BQSJ'R4SC5"MEfjdB@PZCA)JEfBJG'KTFb"TG'9Y!!!!$@0[ER4PER3
|
||||
JFh"KBf9NGfjNC(GZC$&dD'8JGfPZC'ph)(4SBA3JGfpeE'3JEh"PEL"TCL"dD'8
|
||||
JDA4PE5"hBA-JEh"PEQ9N!!!0Bh*PBA4TEfiJC'&dC@0bG'4XC(3J*R4SC5"NBA4
|
||||
P)'pZ)(GSD@0S)(4SC5"TG'9Y)(GKFb"MFQ9KG'9N!!!!"'4TFfX!Bf4TFfpLDL!
|
||||
NG'KP)'4TFfXJEfiJGfKTBfJJG'KP)'PdC@dJDA-JFh4[FQ9N!!!!"QC[E'4PFJ"
|
||||
MCQpXEf*U)#CdD'8JCQpXC'9b)'PZ)(GSD@0S)(4SC5"TG'9Y)'Pc)(0dEh*PC!!
|
||||
!!!4TBfpZ!'PTE@GTCQ&Y'h4SC5"TBfpZ)'*TG'eKF#"[CL"dD'8JDA4PE4!!!QP
|
||||
N!%P%)#"XEfjR(Q&Z)'PN)(4SBA3JD@4PER4TCQPPFb"dD'8JDA4PE3!!!"*TEQC
|
||||
[FQeKG'P[EL"hD@jNEhF!DAGZC'pLDL!MG'KP)'PZCQpbE@&dD@pZ)(GTEQ4[Gb"
|
||||
QEh)JG'KP)'PdC@d!!!4VD@jN!'YTEQ4TG(Kd&(4SC5"VD@jN)'pQ)(4SC5"TG'9
|
||||
Y!!!!#faKBQ9X)'PZC'9iE'&LD@a[EQF9G'KP)'aKBQ9X)'pQ)(4SC5"TG'9Y%!!
|
||||
4E@pND@CTBf&dD@pZ)'4KG'9YEf4NE'4d)#adD'8JC'&dC5"[EL"hD'PMD#"dD'8
|
||||
JDA4PE5"hBA-JE'&cG#"YEf4TCQPPC!!!!!4ZB@eP!("ZB@eTG(Kd&(4SC5"ZB@e
|
||||
P)'pQ)(4SC5"TG'9Y!"!!$A"SHA0TBf&X)(0THQ9`D(PcE'pZCbPdD'8JB@0dG@&
|
||||
X)(0`B@0P)(9cC@3JBRNJG'KP)'PdC@dJEfiJC'PcD`!!#("[FfPdD@pZ!("[Ffj
|
||||
44("d-A4SC5"`Eh0TG'P[EL"[CL"dD'8JDA4PE5"hDA4SD@iJDA4c)("KFQ9ZG#"
|
||||
hD@jNEhF3!!KcC@aPBh4PC!"TFh0XBQp[E"9*Fb"dD'8JDA4PE5"cC@aPBh4PC$m
|
||||
3!!4cDATP!("dFhTXEfjR((4SC5"XEfGTBf&X)(0THQ8JEfBJG'KP)'PdC@d!!!!
|
||||
'GfPZC'ph!'0hD@jMGfPZ-A4SC5"hD@jNEhFJG'KKG#"hEh9XC#"[F'9Z)'PQ)(4
|
||||
SC5"TG'9Y)(GKFb"[F'9ZC@3!N!3&DA4PEA0MEf*U#Q9fCA*j)'PdC@d!!!%!!'0
|
||||
!)b&dHA"P!!!!!3!!"h"bEf0PFh0`FQ0c)d%JF(*[Bf9cFb"bG@jZD@jR)'pZ)(4
|
||||
SDA-J6@&MD@jdEh0S!!S-Bh*PBA4[FL"dHA"P!'CMFR4dHA"P)(4SC5"MFQ9KG'p
|
||||
b)(4jF'8JEfBJG'KTFb"`FQpMCA0c!!!!"'CTE'8!CQPXC@pLDL!MG'KP)'CTE'8
|
||||
JG'KKG#"XBA9ZBfKPC#"dD'Pc)("bEf0PFh-!!!PQD@aP)(4jF'9QDA4`G(P`C64
|
||||
dD'8JCQPXC5"dHA"P)'pQ)(4SC5"QD@aP)(4SBA3JE'&eEQ0SC@3JG'KTFb"`FQp
|
||||
MCA0c!!!!#@CbEfjdE@pcG("TFfCLEfpX)NPc)(4SDA-JG'KP)'CbEfjdE@pcG#"
|
||||
KF("XD@0KG'P[EMm!%!!%EQ&YC3"`EQ&YDA4iG"GdD'8JEQ&YC5"[CL"dD'8JF(*
|
||||
[Bf9cF`!!$R"KFR4TG'P[EL"cDATP!'&`F(4XEfjR3A4SC5"cDATP)'pQ)(4SC5"
|
||||
`BA*dDA4TEfiJG'KKG#"dD'Pc)'&`F'aTBf&dD@pZ)(GKFb"XBA9ZBfKPC#"hDA4
|
||||
S!!!8F'&bG'PdD@pZ)(0`B@0P)(9cC@3!F(9cC'a[EQFdG'KP)'jeE@*PFL"[CL"
|
||||
LHA4PFb"MGA*bC@jdE(NJGA0PC#"TEL"dD'Pc)("KFR4TG'P[EJ!!!!ebC@e[G'8
|
||||
JCACPER4cFQ9fG'*[Ef`S9fPXE#"dD'Pc)("bEf0PFh-JB@0MCA"dFb"bC@e[G'8
|
||||
JCACPER4c2`!!!!TcBh*TF(4KBQaP!'PcB@*LEfpXDdPc)(4SDA-JF(*[Bf9cFb"
|
||||
SD@GS,@aPGQ9X)'9fC@jd)'&hBA*P)#KKBf0PF(4c)'p`C@iJBA"`E'PMBA4TEfi
|
||||
X)'p`C@iJC'pMG@ePER3X)("bD@jd)'4[Bh9YC@jd,#"KEQ3JFA9TG#Nr!!!(GQP
|
||||
cD@*XCA"fDA0LEfpX(dPc)(4SDA-JF(*[Bf9cFbFJE'&jCA)JGQPcD@*XC6m3!!!
|
||||
!#A"bEf0PFh0PFh"bBh-0CACPFRNJF(*[Bf9cF`!"!!"M3#-KG(P`C3!!!!%!!"*
|
||||
cD'&bB@*XC5"MEfjdB@PZCA)!Ff0dFM*")'0[ER4KD@jPFL"dD'&d)'eKH5"LC5"
|
||||
cD'&bC@3J+'4TFfYc)'&ZC#"QEfaNCA*c+3!!#`KPH("[FR4PC!"cCAK`BQp[E$9
|
||||
*Fb"dD'Pc)'C[E'4PFL"K)(0SBA*P)("[D@jd)'pb)'PZFfPNC5"K)(0SBA*P)("
|
||||
[D@jd2`!!"@GbEh9`FfGbF'PdH(3hG'KP)(9cCA)JEh)JCh*[GA!JG'KKG#"SBA-
|
||||
JFh"PBfPKE#"KBf0PFh-JG'mJG'KP)'C[E'4PFK!!%'GbEh9`)("bDACTE'9RCA-
|
||||
!Ch"`FR"bDABrG'KP)(0PC5"QEfaNCA*c,h0PC5"QD@aPFbpYB@YP)'0SB@jRCA-
|
||||
JF(*TGQPXC@GPFb"QEh)JG'KP)'GbEh9`%!!3Ch9PFh3JF(*TGQPXC@GPF`"RFh4
|
||||
`F(*TGMjdD'8JFf9P)'C[E'4PFR-[Ff9P)'CTE'9c,feKDf8JBfKKEQGPFb"`FQP
|
||||
fD@aPCf9c)'C[FL"PGQ9bH@pZC3!3!"4TEQKPFQPdC@3JF(*TGQPXC@GPF`"TF(*
|
||||
fBQp[E&&"FQ8JG'KP)("bDACTE'9RCA-JEfBJG'KTFb"TG'9Y)'&XGf&jFb"dD'8
|
||||
JFf&YC5"KFb"dD'8JBfpZG'&TEQ9b)'Pd)'Pc)(0dEh*PC#"TEMm3!!GYEh9ZG'9
|
||||
NFfe[G@*[Ef`d5A-JG'KTFb"QEfaNCA)JE@peER4PC#"[EL"KEQpdD'9b)'eKBfK
|
||||
TEQ8RFb"NCA0VG'p`2`!!!!9[GfjPFR0[GfjTG(Kd(R4SC5"eFf9b)(4SBA3JEhG
|
||||
ZFb"dD'Pc)'C[E'4PFJ!3!""[GfjPFL"`FQPfD@aPCf9c!'phER*`FQPf2h4SC5"
|
||||
cC@8JCQpXC'9bFbpcC@8JCQPXCA-[E@&VC5"MD'&ZCf9c)("bDACTE'9RCA-JCQp
|
||||
b)(4SC5"[GfjPFK!!#A"bEh4PBh4PC(0`FQpLEfpX2%Pc)'0[ER4KD@jPFL"`FQp
|
||||
dC@0dC@3JCR*[E5"LC@PZCb"YEhCPC#`JFQ9ZB@ePC#"[FL"NC@aPG'9N2`!3!!C
|
||||
cD'&bC@3!FfKKFQ*[Ef`E5A-JBfpZG'&TEQ9b)'%JFfKKFQ8JF'pTER3r%!!1FfK
|
||||
KFQPZCb"hD@jNEhF!FhGZC'pLDL!NG'KP)(0SBA*TEQFJGfPZC'ph)'C[FL"dD'8
|
||||
JBfpZG'&TEQ9b!*!%$f4cGA3!!QPZC(KZB@ePB@aTB3!#D@jNH'jKE@9KF("Q!!*
|
||||
TEQ4iEQ&YC@0dER)!!QPZC(KZB@ePBf0NGJ!#D@jNH'jKE@9NB@CT!!*TEQ4iEQ&
|
||||
YC@4[BfB!!QPZC(KZB@ePCQPXC3!#D@jNH'jKE@9MCQpX!!*TEQ4iEQ&YC@CZG'B
|
||||
!!QPZC(KZB@ePCR0eG!!#D@jNH'jKE@9MEf*U!!*TEQ4iEQ&YCA0MG()!!QPZC(K
|
||||
ZB@ePFfjNCJ!#D@jNH'jKE@9cG'0c!!*TEQ4iEQ&YC40cD'&bB@*XC5"MEfjdB@P
|
||||
ZCA*cFf0dFKKPGQ9bH5"cD'&bB@*XC5"MEfjdB@PZCA)!!!%!!'0!)b&dHA"P!!!
|
||||
!!3!!%R0SBA*TEQFJF(*TGQPXC@GPF`"`FQPf'd%JFf9d)'pQ)(0SBA*TEQFJF(*
|
||||
[F'9bG'PPF`!$$'eKDf8JBfKKEQGPF`"`FRChBQp[E"T`FQPfD@aPCf9c)(4[)'e
|
||||
KDf8JBfKKEQGPF`!3!!PcC@8JCQPXCA0`FRCbBQp[E"G`FQPfD@aPCf9c)(4[)(0
|
||||
PC5"QD@aPFa!!#h0PC5"QEfaNCA*cF(*fFf*[Ef`CF(*TGQPXC@GPFb"dEb"cC@8
|
||||
JCQpXC'9bFa!!!!!1FfKKFQPZCb"hD@jNEhF!FhGZC#G")(0SBA*TEQFJGfPZC'p
|
||||
h)#K[F'9ZC@3JBRNJdP0SBA*TEQI*dbN!$JPMEfjdB@PZCA*MG'jbEf*U)#jdD'8
|
||||
JBfpZG'&TEQ9b)(4SBA3JG'KTFb"hD@jNEhFJGf&c)'p`C@jPC#"QFQpY!!!!#'9
|
||||
iF'pbG'9N!(0PH("LEfpX1%Pc)(4SDA-JBfpZG'&TEQ9b)'%JFfKKFQ8JF'pTER3
|
||||
JEh)JD@jcD@4P)'%JFfKKFQ8JF'pTER3r!!!!"QC[E'4PFJ"MCQpXEf*U)#YdD'8
|
||||
JCQpXC'9b)(4SBA3JG'KTFb"hD@jNEhFJGf&c)'p`C@jPC#"QFQpY!!!&Ch*[GA"
|
||||
cCh*`DA4iG$TdD'8JGA0PFL"[FL"RFQpeF#"dD'&d)'KKFb"cF'9MD@&X)'&MBf9
|
||||
cFb"dEb"dD'8JBfpZG'&TEQ9b!"!!%'GbEh9`)("bDACTE'9RCA-!Ch"`FR"bDAB
|
||||
rG'KP)(0PC5"QEfaNCA*c,h0PC5"QD@aPFbpYB@YP)'0SB@jRCA-JF(*TGQPXC@G
|
||||
PFb"QEh)JG'KP)'GbEh9`%!!3Ch9PFh3JF(*TGQPXC@GPF`"RFh4`F(*TGMjdD'8
|
||||
JFf9P)'C[E'4PFR-[Ff9P)'CTE'9c,feKDf8JBfKKEQGPFb"`FQPfD@aPCf9c)'C
|
||||
[FL"PGQ9bH@pZC3!3!"4TEQKPFQPdC@3JF(*TGQPXC@GPF`"TF(*fBQp[E&&"FQ8
|
||||
JG'KP)("bDACTE'9RCA-JEfBJG'KTFb"TG'9Y)'&XGf&jFb"dD'8JFf&YC5"KFb"
|
||||
dD'8JBfpZG'&TEQ9b)'Pd)'Pc)(0dEh*PC#"TEMm3!!4TG'9Y!'0[BQT[BQSJ+A4
|
||||
SC5"TG'9Y)(4SBA3JG'KTFb"hD@jNEhFJGf&c)'p`C@jPC#"QFQpY!!!(E@peER4
|
||||
PC(0YEh9LEfpX0dPc)(4SDA-JBfpZG'&TEQ9b)'e[G@jdC@3JEfiJB@j[G'KPFL"
|
||||
YB@0SD@jP*h-JC'9cDh4[F$m!!!9[GfjPFR0[GfjTG(Kd)(4SC5"eFf9b)(4SBA3
|
||||
JEhGZFb"dD'8JBfpZG'&TEQ9b!"!!%'phEQ9b)("bDACTE'9RCA-!EhGZFR"bDAB
|
||||
rG'KP)(0PC5"QEfaNCA*c,h0PC5"QD@aPFbpYB@YP)'0SB@jRCA-JF(*TGQPXC@G
|
||||
PFb"QEh)JG'KP)'phEQ9b%!!*F(*[G'9MG'9NFh"bEf*[Ef`m5A-JBfpZG'&TEQ9
|
||||
b)("bEh4PBh4PC#"QFQpY)'*PD@jR)'e[GQ9N,#"bC@jKE@9N)'pb)'4PE'9dC@3
|
||||
r!"!!%R0SBA*KBQaP)'0[ER4KD@jPFJ"cBh4bEf*U)$GdD'8JFfKKFQ&LE'8JBfp
|
||||
ZG'&TEQ9b)(4SBA3JG'KTFb"hD@jNEhFJGf&c)'p`C@jPC#"QFQpY!!!'FfKKFQ9
|
||||
N!(0SBA*LEfpX'dPc)'0[ER4KD@jPFL"K)(0SBA*P)("[D@jd2a!!!!!2FfKKFQP
|
||||
ZCb"hD@jNEhGcFhGZC"4PGQ9bH5"cD'&bD@jR)(GTEQ4[G`!!!3!!Bd!M)A4jF'8
|
||||
!!!!"!!!+FfpeEQ3JCQPXC3"cEQ4Q)94SDA-JBfaKFh-JFQ9`FQ9cC@jdFb"cEh9
|
||||
ZC#"QD@aPF`#3"!YcEh9ZC#"QD@aPFh0ZC'B3CACPFRNJFfpeEQ3JCQPXC3!!!3!
|
||||
!Bd!M)A4jF'8!!!!"!!!0Fh4KG(9c)(GTEQ4[Gh&hEQ4A9'KPFf8JGfPZC'phFb"
|
||||
KFQ8JF(*[Ch*PFh-JC'PKE'pRFb!SBfp`H5"hD@jNEhFX)(*PBR9TE'3JC'9cDh4
|
||||
[F#"NBA4KBQ&cC5`JC@e`G(NJG(*KFfJT!*!%$R0dBA4eFb"hD@jNEhGc!(&hEQ3
|
||||
6CACPFRNJFh4KG(9c)(GTEQ4[G`!"!!"M3#-KG(P`C3!!!!%!!!KcG@PdBf&cC3"
|
||||
cG'0c)8%JCQpZG#"[FL"NCA0V)'&MBf9cFfpbH5"cG@PdBf&cC3!!!!&MEf*U!!*
|
||||
TEQ4iEQ&YC3PcG@PdBf&cCA0cG'0c$Q9fCA*j)(0eDA4MBA0P!!!"!!"M3#-KG(P
|
||||
`C3!!!!%!!!adFQ&cD#e[BQTPBh3!Bh4bFbp8FQ&cD#e[BQTPBh3JDA-JG'KP)'0
|
||||
XBA0c)'pQ)(4SC5$5G(*KFfM6)'pLDQ9MG!!"&(GKFQiJBQ9QEh*P)'9YF(4jD@j
|
||||
R!(GKFQjLEfpX0NPc)'%JC'PKE'pR)'4TFh"XBAPPC#"hD'9Z)0*&EA"dH5"dFQ&
|
||||
cD-R6)'Pc)(0PE'9MG'9N2`!3!!!2C(0eG!!#D@jNH'jKE@9KE'PK!!*TEQ4iEQ&
|
||||
YC@&`F'B!!QPZC(KZB@ePBh4ZFJ!#D@jNH'jKE@9MBf4f!!*TEQ4iEQ&YC@4KCQN
|
||||
!!QPZC(KZB@ePC'pMCJ!#D@jNH'jKE@9QD@aP!!*TEQ4iEQ&YC@0QEf`!!QPZC(K
|
||||
ZB@ePCQjdCJ!#D@jNH'jKE@9QFh9d!!*TEQ4iEQ&YC@0[BQS!!QPZC(KZB@ePFf0
|
||||
dFJ!#D@jNH'jKE@9cEQ4Q!!*TEQ4iEQ&YCA0dBh-!!QPZC(KZB@eP"(9cCA)!Bh9
|
||||
cC5a")&9cCA)JD@iJG'KP)&9cCA*c)'&ZC#"(FQpeF(-JBfpZG(*[E#"`B@jPE!!
|
||||
!"3CLEh9ZC(-!F'*ZC(&NFR3LG'KP)'*[G@jND@jR)(*PBh4KEQGXC5"[CL"dD'8
|
||||
JGA0PFJ!3!!4TBfpZ!'PTE@GTCQ&Y'h4SC5"TBfpZ)'*TG'eKF#"[CL"dD'8JGA0
|
||||
PFK!!#faKBQ9X)'PZC'9iE'&LD@a[EQF9G'KP)'aKBQ9X)'pQ)(4SC5"eFf9b%!!
|
||||
%EQ&YC3"`EQ&YDA4iG"4dD'8JEQ&YC5"[CL"dD'8JGA0PFJ!3!!K`Eh0TG'P[EJ"
|
||||
`Eh0Z884`G$&dD'8JF'pcDA4TEfiJEfBJG'KP)(9cCA)JGfPdD'PZ)'PdFb"`BA*
|
||||
PER3JGfPZC'ph%!!!!!9eFf9bFf0eFf8+CACPFRNJGA0PFJ!!!3!!Bd!M)A4jF'8
|
||||
!!!!"!!!'GfPZC'ph!'0hD@i)35"hD@jNEhF!N!8(GfPZC'phFf0hD@i-CACPFRN
|
||||
JGfPZC'ph!!!"!!"M3#-KG(P`C3!!!!%!N!8#GRGLH3!%#@0[EQCXD@0dFf0QE'-
|
||||
!!!jPH'PcG'PZCb"TG'9YF`"PH(0T!!!+FfeKE'`JD@0[EJ"cE@PM!!!$B@aXDhP
|
||||
KE!!!Ch0PEJ!)!d039A"bEf-!!!0'8&9QF(8J!!!$68e9E@ee)!!!#'KKFQ4hBA*
|
||||
P!'KNGh)!!""[F'9bBA4TEQFJFhPcG'9Y!'pc)#!!!!acEh9ZC#"cHA0dC@d!Ffj
|
||||
N)!!!%'ePE@pbH5"KGQ&TE'&LE'8!E(*KE3!!%'ePE@pbH5"TER0dB@aXC@3!FQ&
|
||||
Y)!#3"3%!!!!"!!!!BVS!!''k!!!"#3$%HY344!!!!"`!qJ!+3Nj%6!!!!&T*3di
|
||||
M!!!!CP0*@N8!!!"b4P*&4J!!!(jTBh-M!!!!LQPME$J!!!#@D@0X0!!!!+*TBh-
|
||||
i!!!!VQPMFc3!!!#kB@9dC3!!!-C3@94R!!!!dJ#!rrm!!!%G!-4jV!%Xrrm!N!A
|
||||
%H'$rN!3!!!%%!-4hV!#!rrm!!!%5!-4iC!%Xrrm!!!%p!-4i&!%Xrrm!!!'"!-4
|
||||
i'!%Xrrm!!!@&!-4i)!%Xrrm!!!H*!-4i%!%Xrrm!!!L0!-4i(!!!rrm!!!N4!*!
|
||||
+BE8!a'5-$NphEQ9b)(*PFfpeFQ0P6M`:
|
|
@ -0,0 +1,112 @@
|
|||
# The oldest AppleEvent test program.
|
||||
# Its function has been overtaken by echo.py and tell.py.
|
||||
|
||||
import AE
|
||||
from AppleEvents import *
|
||||
import Evt
|
||||
from Events import *
|
||||
import struct
|
||||
import aetools
|
||||
import macfs
|
||||
import sys
|
||||
import MacOS
|
||||
|
||||
MacOS.EnableAppswitch(0)
|
||||
|
||||
def aehandler(request, reply):
|
||||
tosend = []
|
||||
print 'request:', aetools.unpackevent(request)
|
||||
param = request.AEGetParamDesc(keyDirectObject, typeWildCard)
|
||||
if param.type == typeAEList:
|
||||
n = param.AECountItems()
|
||||
print 'List has', n, 'items'
|
||||
for i in range(1, 1+n):
|
||||
type, item = param.AEGetNthDesc(i, typeFSS)
|
||||
data = item.data
|
||||
print 'item', i, ':', type, item.type, len(data), 'bytes'
|
||||
vol, dir, fnlen = struct.unpack('hlb', data[:7])
|
||||
filename = data[7:7+fnlen]
|
||||
print 'vol:', vol, '; dir:', dir, '; filename:', `filename`
|
||||
print 'full path:', macfs.FSSpec((vol,dir,filename)).as_pathname()
|
||||
tosend.append(item)
|
||||
else:
|
||||
pass
|
||||
print 'param:', (param.type, param.data[:20]), param.data[20:] and '...'
|
||||
if tosend:
|
||||
passtothink(tosend)
|
||||
|
||||
|
||||
def passtothink(list):
|
||||
target = AE.AECreateDesc(typeApplSignature, 'KAHL')
|
||||
event = AE.AECreateAppleEvent(kCoreEventClass,
|
||||
kAEOpenDocuments,
|
||||
target,
|
||||
kAutoGenerateReturnID,
|
||||
kAnyTransactionID)
|
||||
aetools.packevent(event, {keyDirectObject: list})
|
||||
reply = event.AESend(kAENoReply | kAEAlwaysInteract | kAECanSwitchLayer,
|
||||
kAENormalPriority,
|
||||
kAEDefaultTimeout)
|
||||
#print "Reply:", aetools.unpackevent(reply)
|
||||
return
|
||||
event = AE.AECreateAppleEvent(kCoreEventClass,
|
||||
kAEOpenApplication,
|
||||
target,
|
||||
kAutoGenerateReturnID,
|
||||
kAnyTransactionID)
|
||||
reply = event.AESend(kAENoReply | kAEAlwaysInteract | kAECanSwitchLayer,
|
||||
kAENormalPriority,
|
||||
kAEDefaultTimeout)
|
||||
|
||||
def unihandler(req, rep):
|
||||
print 'unihandler'
|
||||
aehandler(req, rep)
|
||||
|
||||
quit = 0
|
||||
def quithandler(req, rep):
|
||||
global quit
|
||||
quit = 1
|
||||
|
||||
def corehandler(req, rep):
|
||||
print 'core event!'
|
||||
parameters, attributes = aetools.unpackevent(req)
|
||||
print "event class =", attributes['evcl']
|
||||
print "event id =", attributes['evid']
|
||||
print 'parameters:', parameters
|
||||
# echo the arguments, to see how Script Editor formats them
|
||||
aetools.packevent(rep, parameters)
|
||||
|
||||
def wildhandler(req, rep):
|
||||
print 'wildcard event!'
|
||||
parameters, attributes = aetools.unpackevent(req)
|
||||
print "event class =", attributes['evcl']
|
||||
print "event id =", attributes['evid']
|
||||
print 'parameters:', parameters
|
||||
|
||||
AE.AEInstallEventHandler(typeAppleEvent, kAEOpenApplication, aehandler)
|
||||
AE.AEInstallEventHandler(typeAppleEvent, kAEOpenDocuments, aehandler)
|
||||
AE.AEInstallEventHandler(typeAppleEvent, kAEPrintDocuments, aehandler)
|
||||
AE.AEInstallEventHandler(typeAppleEvent, kAEQuitApplication, quithandler)
|
||||
AE.AEInstallEventHandler(typeAppleEvent, typeWildCard, unihandler)
|
||||
AE.AEInstallEventHandler('core', typeWildCard, corehandler)
|
||||
#AE.AEInstallEventHandler(typeWildCard, typeWildCard, wildhandler)
|
||||
|
||||
|
||||
def main():
|
||||
global quit
|
||||
quit = 0
|
||||
while not quit:
|
||||
ok, e = Evt.WaitNextEvent(-1, 60)
|
||||
if ok:
|
||||
print 'Event:', e
|
||||
if e[0] == 23: # kHighLevelEvent
|
||||
AE.AEProcessAppleEvent(e)
|
||||
elif e[0] == keyDown and chr(e[1]&0xff) == '.' and e[4]&cmdKey:
|
||||
raise KeyboardInterrupt, "Command-Period"
|
||||
else:
|
||||
MacOS.HandleEvent(e)
|
||||
|
||||
if __name__ == '__main__':
|
||||
main()
|
||||
|
||||
print "This module is obsolete -- use echo.py or tell.py ..."
|
|
@ -0,0 +1,63 @@
|
|||
# (Slightly less) primitive operations for sending Apple Events to applications.
|
||||
# This could be the basis of a Script Editor like application.
|
||||
|
||||
from AE import *
|
||||
from AppleEvents import *
|
||||
import aetools
|
||||
import types
|
||||
|
||||
class TalkTo:
|
||||
def __init__(self, signature):
|
||||
"""Create a communication channel with a particular application.
|
||||
|
||||
For now, the application must be given by its 4-character signature
|
||||
(because I don't know yet how to do other target types).
|
||||
"""
|
||||
if type(signature) != types.StringType or len(signature) != 4:
|
||||
raise TypeError, "signature should be 4-char string"
|
||||
self.target = AECreateDesc(typeApplSignature, signature)
|
||||
self.send_flags = kAEWaitReply
|
||||
self.send_priority = kAENormalPriority
|
||||
self.send_timeout = kAEDefaultTimeout
|
||||
def newevent(self, code, subcode, parameters = {}, attributes = {}):
|
||||
event = AECreateAppleEvent(code, subcode, self.target,
|
||||
kAutoGenerateReturnID, kAnyTransactionID)
|
||||
aetools.packevent(event, parameters, attributes)
|
||||
return event
|
||||
def sendevent(self, event):
|
||||
reply = event.AESend(self.send_flags, self.send_priority,
|
||||
self.send_timeout)
|
||||
parameters, attributes = aetools.unpackevent(reply)
|
||||
return reply, parameters, attributes
|
||||
|
||||
def send(self, code, subcode, parameters = {}, attributes = {}):
|
||||
return self.sendevent(self.newevent(code, subcode, parameters, attributes))
|
||||
|
||||
def activate(self):
|
||||
# Send undocumented but easily reverse engineered 'activate' command
|
||||
self.send('misc', 'actv')
|
||||
|
||||
|
||||
# This object is equivalent to "selection" in AppleScript
|
||||
# (in the core suite, if that makes a difference):
|
||||
get_selection = aetools.Property('sele', None)
|
||||
|
||||
# Test program. You can make it do what you want by passing parameters.
|
||||
# The default gets the selection from Quill (Scriptable Text Editor).
|
||||
|
||||
def test(app = 'quil', suite = 'core', id = 'getd', arg = get_selection):
|
||||
t = TalkTo(app)
|
||||
t.activate()
|
||||
if arg:
|
||||
dict = {'----': arg}
|
||||
else:
|
||||
dict = {}
|
||||
reply, parameters, attributes = t.send(suite, id, dict)
|
||||
print reply, parameters
|
||||
if parameters.has_key('----'): print "returns:", str(parameters['----'])
|
||||
|
||||
|
||||
test()
|
||||
# So we can see it:
|
||||
import sys
|
||||
sys.exit(1)
|
Loading…
Reference in New Issue