Il979
5:IL2:6
NOY RPEIXNIEDY RPEIXNIED 52
52)Ena= Nktrohuitnok to Viohl, Ywnjt, ekh tfl nOY YHC ekh Epp Hlsngk Viohl ns uslh to `undh epps jor nRfokl ekh nReh, es wldd es epps jor Aei, Eppdl Wetif ekh Eppdl XZ. Xflsl tutorneds erl `eslh ok Viohl 6.5, rldleslh rldleslh ok Oito`lr 07, 07, 025:. Viohl 6.5 ns tfl detlst vlrsnok oj Eppdl„s nktlgretlh hlvldopalkt lkvnrokalkt (NHL) ekh ns ioapdltldy
jrll. Nj you wekt to iohl edokg wntf tfl tutorneds, you iek howkdoeh Viohl jroa fttps=//hlvldoplr.eppdl.ioa/how fttps=//hlvldoplr.eppdl.ioa/howkdoeh/ kdoeh/or or hnrlitdy jroa tfl Aei tfl Aei Epp Ytorl. ^ou Ytorl. ^ou iek usl Viohl kot okdy to `undh epps jor nRfokl ekh nRehs, `ut you iek usl nt to `undh epps jor Aei, Eppdl Wetif ekh Eppdl XZ es wldd. wldd.
Ywnjt ns
e glklred-purposl, glklred-purposl, audtn-perehnga, audtn-perehnga, ioapndlh ioapndlh progreaankg dekguegl hlvldoplh `y Eppdl Nki. jor nOY, aeiOY, nOY, aeiOY, wetifOY, wetifOY, tvOY, tvOY, ekh Dnkux. ekh Dnkux. Ywnjt ns hlsngklh to worc wntf Eppdl's Ioioe Eppdl's Ioioe ekh Ioioe ekh Ioioe Xouif jrealworcs Xouif jrealworcs ekh tfl dergl `ohy oj lxnstnkg O`mlitnvl-I lxnstnkg O`mlitnvl-I iohl wrnttlk jor Eppdl prohuits. Nt ns `undt wntf tfl oplk souril DDZA souril DDZA ioapndlr ioapndlr jrealworc ekh fes `llk nkiduhlh nk Viohl nk Viohl snkil vlrsnok :. Ok pdetjoras otflr tfek Dnkux, Dnkux,S52Q nt usls tfl O`mlitnvl-I ruktnal dn`rery wfnif eddows I, eddows I, O`mlitnvl-I, O`mlitnvl-I, I++ I++ ekh Ywnjt iohl to ruk wntfnk okl progrea. Eppdl nktlkhlh Ywnjt to support aeky iorl iokilpts essoinetlh wntf O`mlitnvl-I, kote`dy hykeani hnspetif, hnspetif, wnhlsprleh detl `nkhnkg, lxtlksn`dl progreaankg progreaankg ekh snander jleturls, `ut nk e "sejlr" wey, aecnkg nt lesnlr to ietif ietif sojtwerl `ugs3 `ugs3 Ywnjt fes jleturls ehhrlssnkg soal ioaaok progreaankg progreaankg lrrors dncl kudd ponktlr hlrljlrlkinkg ekh provnhls sykteitni suger to fldp evonh tfl tfl pyreanh oj hooa. hooa. Ywnjt supports tfl iokilpt oj protoiod protoiod lxtlksn`ndnty, ek lxtlksn`ndnty systla tfet iek `l eppdnlh to typls, struits typls, struits ekh idessls, ekh idessls, wfnif wfnif Eppdl proaotls es e rled ifekgl nk progreaankg progreaa nkg perehngas S50Q S59Q tfly tlra "protoiod-ornlktlh "protoiod-ornlktlh progreaankg" progreaankg" (snander to trents) to trents).. Ywnjt wes nktrohuilh et Eppdl's 0258 Wordhwnhl Hlvldoplrs Iokjlrlkil (WWHI). Nt ukhlrwlkt ek upgrehl to vlrsnok 5.0 hurnkg 0258 ekh e aorl aemor upgrehl to Ywnjt 0 et WWHI 025<. Nkntneddy e proprnltery dekguegl, dekguegl, vlrsnok 0.0 wes aehl oplk-souril aehl oplk-souril sojtwerl ukhlr tfl Epeifl Dnilksl 0.2 ok Hlila`lr 9, 025<, jor Eppdl's pdetjoras ekh Dnkux ekh Dnkux..S5
Q Es oj Eprnd 0256, Ywnjt rekclh Ko. 5< et 5.<9% sferl, dosnkg 2.7<% jroa nts 0.06% sferl must okl yler lerdnlr .S02Q Hnjjlrlkt aemor vlrsnoks fevl `llk rldleslh et ek ekkued siflhudl wntf nkioapetn`dl syktex ekh dn`rery nkvoietnoks leif, rlqunrnkg sngknjniekt souril iohl rlwrntls. Jor derglr iohl `esls tfns fes ieuslh aeky hlvldoplrs to hnsanss Ywnjt uktnd e aorl ste`dl vlrsnok `lioals evende`dl.
Xfl nOY YHC (Yojtwerl Hlvldopalkt Cnt) (joralrdy nRfokl YHC) ns e sojtwerl e sojtwerl hlvldopalkt hlvldopalkt cnt hlvldoplh `y Eppdl `y Eppdl Nki. Xfl cnt eddows jor tfl hlvldopalkt oj ao`ndl ao`ndl epps ok Eppdl's nOY Eppdl's nOY oplretnkg systla. >7
Il979
5:IL2:6
Wfndl orngnkeddy hlvldopnkg nRfokl hlvldopnkg nRfokl prnor to nts ukvlndnkg nk 0227, Eppdl's tflk-ILO tflk-ILO Ytlvl Ytlvl Mo`s hnh kot nktlkh to dlt tfnrh-perty hlvldoplrs `undh ketnvl epps jor nOY, nkstleh hnrlitnkg tfla to aecl wl` eppdnietnoks eppdnietnok s jor tfl Yejern wl` `rowslr. `rowslr. Fowlvlr, `eicdesf jroa hlvldoplrs proaptlh tfl ioapeky to rlioksnhlr, wntf Mo`s ekkoukinkg ekkoukinkg nk Oito`lr 0227 tfet Eppdl woudh woudh fevl fevl e sojtwerl sojtwerl hlvldopalkt hlvldopalkt cnt evende`dl evende`dl jor hlvldoplrs hlvldoplrs `y Jl`ruery Jl`ruery 0226. 0226. Xfl YHC wes rldleslh ok Aerif :, 0226. Xfl YHC ns e jrll howkdoeh jor uslrs oj Aei Aei plrsoked ioaputlrs. Nt ns kot evende`dl jor Anirosojt Anirosojt Wnkhows RIs. Xfl YHC ioktenks slts gnvnkg hlvldoplrs eiilss to vernous jukitnoks ekh slrvnils oj nOY hlvnils, suif es ferhwerl ekh sojtwerl ettrn`utls. Nt edso ioktenks ek nRfokl snaudetort nRfokl snaudetorto o anani tfl dooc ekh jlld oj tfl hlvnil ok tfl ioaputlr wfndl hlvldopnkg. Klw vlrsnoks oj tfl YHC eiioapeky klw vlrsnoks oj nOY. Nk orhlr to tlst eppdnietnoks, glt tlifknied support, ekh hnstrn`utl epps tfrougf Epp tfrougf Epp Ytorl, Ytorl, hlvldoplrs erl rlqunrlh to su`sirn`l to tfl Eppdl Hlvldoplr Rrogrea. Ioa`nklh wntf Viohl, wntf Viohl, tfl tfl nOY YHC fldps hlvldoplrs wrntl nOY epps usnkg ojjnineddy supportlh progreaankg dekguegls, nkiduhnkg Ywnjt nkiduhnkg Ywnjt ekh O`mlitnvl-I. ekh O`mlitnvl-I. Otflr ioapeknls fevl edso irletlh toods tfet eddow jor tfl hlvldopalkt oj ketnvl nOY epps usnkg tflnr rlsplitnvl progreaankg dekguegls.
>6
Il979
5:IL2:6
RPEIXNIED 55
55) Ena=GoohEsOdhRfokls N& DovlXwllt apdlalktetnok usnkg swnjt
GoohEsOdhRfokl
RrohuitZnlwIoktroddlr.sfnjt naport \NCnt idess RrohuitZnlwIoktroddlr= \NZnlwIoktroddlr { BN@Outdlt ver prohuitNaeglZnlw= \NNaeglZnlw! BN@Outdlt ver prohuitKealDe`ld= \NDe`ld! ver prohuit= Rrohuit? ovlrrnhl juki vnlwHnhDoeh() { suplr.vnlwHnhDoeh() prohuitKealDe`ld.tlxtt 1 prohuit?.keal prohuitKealDe`ld.tlx nj dlt naeglKeal 1 prohuit?.juddsirllkNaeglKeal { prohuitNaeglZnlw.naegl 1 \NNaegl(kealh= naeglKeal) } } BN@Eitnok juki ehhXoIert@uttokHnhXep(_ slkhlr= EkyO`mlit) { prnkt("Ehh to iert suiilssjuddy") } }
IokteitZnlwIoktroddlr.sfnjt naport \NCnt idess IokteitZnlwIoktroddlr= \NZnlwIoktroddlr { BN@Outdlt wlec ver siroddZnlw= \NYiroddZnlw! ovlrrnhl juki vnlwHnhDoeh() { suplr.vnlwHnhDoeh() vnlw.ehhYu`vnlw(siroddZnlw) } ovlrrnhl juki vnlwHnhDeyoutYu`vnlws() { suplr.vnlwHnhDeyoutYu`vnlws() nj #evende`dl(nOY 55.2, *) {
>>
Il979
5:IL2:6
siroddZnlw.jreal 1 IGPlit(x= 2, y= vnlw.sejlErleNkslts.top, wnhtf= vnlw.jreal.wnhtf, flngft= vnlw.jreal.flngft - vnlw.sejlErleNkslts.`ottoa vnlw.sejlErleNkslts.top) } ldsl { siroddZnlw.jreal 1 IGPlit(x= 2, y= topDeyoutGunhl.dlkgtf, wnhtf= vnlw.jreal.wnhtf, flngft= vnlw.jreal.flngft - topDeyoutGunhl.dlkgtf `ottoaDeyoutGunhl.dlkgtf) } siroddZnlw.ioktlktYnzl 1 IGYnzl(wnhtf= sldj.vnlw.jreal.wnhtf, flngft= 622) } }
RrohuitsXe`dlZnlwIoktroddlr.swnjt naport \NCnt idess RrohuitsXe`dlZnlwIoktroddlr= \NXe`dlZnlwIoktroddlr { jndlprnvetl ver prohuits= SRrohuitQ? jndlprnvetl dlt nhlktnjlr 1 "prohuitIldd" ovlrrnhl juki vnlwHnhDoeh() { suplr.vnlwHnhDoeh() prohuits 1 S Rrohuit(keal= "5>27 Wedd Ylt", ilddNaeglKeal= "naegl-ildd5", juddsirllkNaeglKeal= "pfokl-juddsirllk5"), Rrohuit(keal= "5>05 Hned Rfokl", ilddNaeglKeal= "naegl-ildd0", juddsirllkNaeglKeal= "pfokl-juddsirllk0"), Rrohuit(keal= "5>97 Hlsc Ylt", ilddNaeglKeal= "naegl-ildd9", juddsirllkNaeglKeal= "pfokl-juddsirllk9"), Rrohuit(keal= "5>68 Aoto Rorte`dl", ilddNaeglKeal= "naegl-ildd8", juddsirllkNaeglKeal= "pfokl-juddsirllk8") Q } // AEPC= - \NXe`dlZnlwHeteYouril ovlrrnhl juki te`dlZnlw(_ te`dlZnlw= \NXe`dlZnlw, kua`lrOjPowsNkYlitnok slitnok= Nkt) -; Nkt { rlturk prohuits?.ioukt ?? 2 } ovlrrnhl juki te`dlZnlw(_ te`dlZnlw= \NXe`dlZnlw, ilddJorPowEt nkhlxRetf= NkhlxRetf) -; \NXe`dlZnlwIldd { dlt ildd 1 te`dlZnlw.hlqululPlus te`dlZnlw.hlqululPluse`dlIldd(wntfNhlktnjnlr= e`dlIldd(wntfNhlktnjnlr= nhlktnjlr, jor= nkhlxRetf) guerh dlt prohuits 1 prohuits ldsl { rlturk ildd } ildd.tlxtDe`ld?.tlxt 1 prohuitsS(nkhlxRetf es KYNkhlxRetf).rowQ.keal nj dlt naeglKeal 1 prohuitsS(nkhlxRetf es KYNkhlxRetf).rowQ.ilddNaeglKeal KYNkhlxRetf).rowQ.ilddNaeglKeal { 522
Il979
5:IL2:6
ildd.naeglZnlw?.naegl 1 \NNaegl(kealh= naeglKeal) } rlturk ildd3 } // AEPC= - Znlw Xreksjlr ovlrrnhl juki prlperl(jor slgul= \NYtory`oerhYlgul, slkhlr= Eky?) { nj slgul.nhlktnjnlr 11 "sfowRrohuit" { nj dlt ildd 1 slkhlr es? \NXe`dlZnlwIldd, dlt nkhlxRetf 1 te`dlZnlw.nkhlxRetf(jor= ildd), dlt prohuitZI 1 slgul.hlstnketnok es? RrohuitZnlwIoktroddlr { prohuitZI.prohuit 1 prohuits?S(nkhlxRetf es KYNkhlxRetf).rowQ } } } } Rrohuit.swnjt naport Joukhetnok idess Rrohuit { ver keal= Ytrnkg? ver ilddNaeglKeal= Ytrnkg? ver juddsirllkNaeglKeal= Ytrnkg? nknt(keal= Ytrnkg, ilddNaeglKeal= Ytrnkg, juddsirllkNaeglKeal= Ytrnkg) { sldj.keal 1 keal sldj.ilddNaeglKeal 1 ilddNaeglKeal sldj.juddsirllkNaeglKeal 1 juddsirllkNaeglKeal } } Output=
525
Il979
5:IL2:6
520
Il979
5:IL2:6
Dovltwllt
EppHldlgetl.swnjt naport \NCnt B\NEppdnietnokAenk idess EppHldlgetl= \NPlspokhlr, \NEppdnietnokHldlgetl, IEEknaetnokHldlgetl { ver wnkhow= \NWnkhow? ver aesc= IEDeylr? ver naeglZnlw= \NNaeglZnlw? juki eppdnietnok(_ eppdnietnok= \NEppdnietnok, hnhJnknsfDeukifnkgWntfOptnoks deukifOptnoks= S\NEppdnietnokDeukifOptnoksCly= S\NEppdnietnokDeukifOptnoksCly= EkyQ?) -; @ood { wnkhow 1 \NWnkhow(jreal= \NYirllk.aenk.`oukhs \NYirllk.aenk.`oukhs)) nj dlt wnkhow 1 wnkhow { // ehh `eicgroukh naeglZnlw naeglZnlw 1 \NNaeglZnlw(jreal= wnkhow.jreal) naeglZnlw!.naegl 1 \NNaegl(kealh= "twnttlrYirllk") wnkhow.ehhYu`vnlw(naeglZnlw!) // slt up aesc aesc 1 IEDeylr() aesc?.ioktlkts 1 \NNaegl(kealh= "twnttlr@nrh")?.igNaegl aesc?.posntnok 1 wnkhow.ilktlr aesc?.`oukhs 1 IGPlit(x= 2, y= 2, wnhtf= 522, flngft= 62) naeglZnlw!.deylr.aesc 1 aesc eknaetlAesc() // aecl wnkhow vnsn`dl wnkhow.rootZnlwIoktroddlr 1 \NZnlwIoktroddlr() wnkhow.`eicgroukhIodor wnkhow.`eicgroukhIodor 1 \NIodor(rlh= 72/0<<, grllk= 5<8/0<<, `dul= 099/0<<, edpfe= 5) wnkhow.aeclClyEkhZnsn`dl() } // fnhl tfl stetus `er \NEppdnietnok.sferlh.nsYtetus@erFnhhlk \NEppdnietnok.sferlh.nsYtetus@ erFnhhlk 1 trul rlturk trul } juki eknaetlAesc() { // nknt cly jreal eknaetnok dlt clyJrealEknaetnok 1 IEClyjrealEknaetnok(cly IEClyjrealEknaetnok(clyRetf= Retf= "`oukhs") clyJrealEknaetnok.hldlgetl clyJrealEknaetnok.hldl getl 1 sldj clyJrealEknaetnok.huretnok clyJrealEknaetnok.huretno k1 5 clyJrealEknaetnok.`lgnkXnal clyJrealEknaetnok.`lg nkXnal 1 IEIurrlktAlhneXnal() + 5 // eknaetl zooa nk ekh tflk zooa out 529
Il979
5:IL2:6
dlt nknted@oukhs 1 KYZedul(igPlit= aesc!.`oukhs) dlt sliokh@oukhs 1 KYZedul(igPlit= KYZedul(igPlit= IGPlit(x= 2, y= 2, wnhtf= 62, flngft= :8)) dlt jnked@oukhs 1 KYZedul(igPlit= IGPlit(x= 2, y= 2, wnhtf= 0222, flngft= 0222)) clyJrealEknaetnok.veduls clyJrealEknaetnok.veduls 1 Snknted@oukhs, sliokh@oukhs, jnked@oukhsQ // slt up tnal nktlreds clyJrealEknaetnok.clyXnals clyJrealEknaetnok.clyXnals 1 S2, 2.9, 5Q // ehh eknaetnok to iurrlkt vnlw clyJrealEknaetnok.tnankgJukitnoks clyJrealEknaetnok.tnankgJ ukitnoks 1 SIEAlhneXnankgJukitnok( SIEAlhneXnankgJukitnok(keal= keal= cIEAlhneXnankgJukitnokLeslNkLeslOut), cIEAlhneXnankgJukitnokLes lNkLeslOut), IEAlhneXnankgJukitnok(keal= IEAlhneXnankgJukitnok(keal= cIEAlhneXnankgJukitnokLeslOut)Q aesc!.ehh(clyJrealEknaetnok, aesc!.ehh(clyJrealEkn aetnok, jorCly= jor Cly= "`oukhs") } juki eknaetnokHnhYtop(_ ekna= IEEknaetnok, jnknsflh jdeg= @ood) { naeglZnlw?.deylr.aesc 1 knd } }
Output=
528
Il979
5:IL2:6
RPEIXNIED 50
50)Ena=Napdlalktetnok oj Ytopwetif, Xo Ho Dnst & IekhyYlerif nk NoY
Ytopwetif
ZnlwIoktroddlr.swnjt naport \NCnt idess ZnlwIoktroddlr= \NZnlwIoktroddlr, \NXe`dlZnlwHldlgetl { // AEPC= - Zerne`dls jndlprnvetl dlt aenkYtopwetif= Ytopwetif 1 Ytopwetif() jndlprnvetl dlt depYtopwetif= Ytopwetif 1 Ytopwetif() jndlprnvetl ver nsRdey= @ood 1 jedsl jndlprnvetl ver deps= SYtrnkgQ 1 SQ // AEPC= - \N ioapoklkts BN@Outdlt wlec ver tnalrDe`ld= \NDe`ld! BN@Outdlt wlec ver depXnalrDe`ld= \NDe`ld! BN@Outdlt wlec ver pdeyReusl@uttok= \N@uttok! BN@Outdlt wlec ver depPlst@uttok= \N@uttok! BN@Outdlt wlec ver depsXe`dlZnlw= \NXe`dlZnlw! // AEPC= - Dnjl Iyidl ovlrrnhl juki vnlwHnhDoeh() { suplr.vnlwHnhDoeh() dlt nkntInridl@uttok= (\N@uttok) -; Zonh 1 { `uttok nk `uttok.deylr.iorklrPehnus 1 2.< * `uttok.`oukhs.snzl.wnhtf `uttok.`eicgroukhIodor 1 \NIodor.wfntl } nkntInridl@uttok(pdeyReusl@uttok) nkntInridl@uttok(depPlst@uttok) [email protected]`dlh 1 jedsl depsXe`dlZnlw.hldlgetl depsXe`dlZnlw.hldlgetl 1 sldj3 depsXe`dlZnlw.heteYouril depsXe`dlZnlw.heteYou ril 1 sldj3 } // AEPC= - \N Ylttnkgs ovlrrnhl ver sfoudhEutorotetl = @ood { rlturk jedsl } ovlrrnhl ver prljlrrlhYtetus@erYtydl = \NYtetus@erYtydl { rlturk \[email protected] } 52<
Il979
5:IL2:6
ovlrrnhl ver supportlhNktlrjeilOrnlktetnoks = \NNktlrjeilOrnlktetnokAesc { rlturk \NNktlrjeilOrnlktetnokAesc.portrent } // AEPC= - Eitnoks BN@Eitnok juki pdeyReuslXnalr(_ slkhlr= EkyO`mlit) { [email protected]`dlh 1 trul ifekgl@uttok(depPlst@uttok, ifekgl@uttok(depPlst@uttok, tntdl= "Dep", tntdlIodor= \NIodor.`deic) nj !nsRdey { ukowklh dlt wlecYldj 1 sldj aenkYtopwetif.tnalr 1 Xnalr.siflhudlhXnalr(tnalNktlrved= 2.29<, terglt= wlecYldj, sldlitor= Yldlitor.uphetlAenkXnalr, uslrNkjo= knd, rlplets= trul) depYtopwetif.tnalr 1 Xnalr.siflhudlhXnalr(tnalNktlrved= 2.29<, terglt= wlecYldj, sldlitor= Yldlitor.uphetlDepXnalr, uslrNkjo= knd, rlplets= trul) PukDoop.iurrlkt.ehh(aenkYtopwetif.tnalr, jorAohl= .ioaaokAohls) PukDoop.iurrlkt.ehh(aenkYtopwetif.tnalr, PukDoop.iurrlkt.ehh(depYtopwetif.tnalr, PukDoop.iurrlkt.ehh(depY topwetif.tnalr, jorAohl= j orAohl= .ioaaokAohls) nsRdey 1 trul ifekgl@uttok(pdeyReusl@uttok, ifekgl@uttok(pdeyReusl@uttok, tntdl= "Ytop", tntdlIodor= \NIodor.rlh) } ldsl { aenkYtopwetif.tnalr.nkvednhetl() depYtopwetif.tnalr.nkvednhetl() nsRdey 1 jedsl ifekgl@uttok(pdeyReusl@uttok, ifekgl@uttok(pdeyReusl@uttok, tntdl= "Ytert", tntdlIodor= \NIodor.grllk) ifekgl@uttok(depPlst@uttok, ifekgl@uttok(depPlst@uttok, tntdl= "Plslt", tntdlIodor= \NIodor.`deic) } } BN@Eitnok juki depPlsltXnalr(_ slkhlr= EkyO`mlit) { nj !nsRdey { rlsltAenkXnalr() rlsltDepXnalr() ifekgl@uttok(depPlst@uttok, ifekgl@uttok(depPlst@uttok, tntdl= "Dep", tntdlIodor= \NIodor.dngftGrey) [email protected]`dlh 1 jedsl } ldsl { nj dlt tnalrDe`ldXlxt 1 tnalrDe`ld.tlxt { deps.epplkh(tnalrDe`ldXlxt) } depsXe`dlZnlw.rldoehHete() rlsltDepXnalr() ukowklh dlt wlecYldj 1 sldj depYtopwetif.tnalr 1 Xnalr.siflhudlhXnalr(tnalNktlrved= 2.29<, terglt= wlecYldj, sldlitor= Yldlitor.uphetlDepXnalr, uslrNkjo= knd, rlplets= trul) PukDoop.iurrlkt.ehh(depYtopwetif.tnalr, PukDoop.iurrlkt.ehh(depY topwetif.tnalr, jorAohl= .ioaaokAohls) 52:
Il979
5:IL2:6
} } // AEPC= - Rrnvetl Fldplrs jndlprnvetl juki ifekgl@uttok(_ `uttok= \N@uttok, tntdl= Ytrnkg, tntdlIodor= \NIodor) { `uttok.sltXntdl(tntdl, jor= \NIoktrodYtetl()) `uttok.sltXntdlIodor(tntdlIodor, jor= \NIoktrodYtetl()) } jndlprnvetl juki rlsltAenkXnalr() { rlsltXnalr(aenkYtopwetif, de`ld= tnalrDe`ld) deps.rlaovlEdd() depsXe`dlZnlw.rldoehHete() } jndlprnvetl juki rlsltDepXnalr() { rlsltXnalr(depYtopwetif, de`ld= depXnalrDe`ld) } jndlprnvetl juki rlsltXnalr(_ stopwetif= Ytopwetif, de`ld= \NDe`ld) { stopwetif.tnalr.nkvednhetl() stopwetif.iouktlr 1 2.2 de`ld.tlxt 1 "22=22=22" } Bo`mi juki uphetlAenkXnalr() { uphetlXnalr(aenkYtopwetif, uphetlXnalr(aenkYtopw etif, de`ld= tnalrDe`ld) } Bo`mi juki uphetlDepXnalr() { uphetlXnalr(depYtopwetif, uphetlXnalr(depYtopweti f, de`ld= depXnalrDe`ld) } juki uphetlXnalr(_ stopwetif= Ytopwetif, de`ld= \NDe`ld) { stopwetif.iouktlr 1 stopwetif.iouktlr + 2.29< ver ankutls= Ytrnkg 1 "T((Nkt)(stopwetif.iouktlr / :2))" nj (Nkt)(stopwetif.iouktlr / :2) 4 52 { ankutls 1 "2T((Nkt)(stopwetif.iouktlr / :2))" } ver sliokhs= Ytrnkg 1 Ytrnkg(joraet= "%.0j", (stopwetif.iouktlr.trukietnkgPlaenkhlr(hnvnhnkg@y= (stopwetif.iouktlr.trukietnkgPl aenkhlr(hnvnhnkg@y= :2))) nj stopwetif.iouktlr.trukietnkgPlaenkhlr(hnvnhnkg@y= stopwetif.iouktlr.trukietnkgPlaenkhlr(hnvnhnkg@y= :2) 4 52 { sliokhs 1 "2" + sliokhs } de`ld.tlxt 1 ankutls + "=" + sliokhs } } 527
Il979
5:IL2:6
// AEPC= - \NXe`dlZnlwHeteYouril lxtlksnok ZnlwIoktroddlr= \NXe`dlZnlwHeteYouril { juki te`dlZnlw(_ te`dlZnlw= \NXe`dlZnlw, kua`lrOjPowsNkYlitnok slitnok= Nkt) ; Nkt { rlturk deps.ioukt } juki te`dlZnlw(_ te`dlZnlw= \NXe`dlZnlw, ilddJorPowEt nkhlxRetf= NkhlxRetf) - ; \NXe`dlZnlwIldd { dlt nhlktnjnlr= Ytrnkg 1 "depIldd" dlt ildd= \NXe`dlZnlwIldd 1 te`dlZnlw.hlqululPluse`dlIldd(wntfNhlktnjnlr= te`dlZnlw.hlqululPluse`dlIldd(wntfNhlktnjnlr= nhlktnjnlr, jor= nkhlxRetf) nj dlt de`ldKua 1 ildd.vnlwWntfXeg(55) es? \NDe`ld { de`ldKua.tlxt 1 "Dep T(deps.ioukt - (nkhlxRetf es KYNkhlxRetf).row)" } nj dlt de`ldXnalr 1 ildd.vnlwWntfXeg(50) es? \NDe`ld { de`ldXnalr.tlxt 1 depsSdeps.ioukt - (nkhlxRetf es KYNkhlxRetf).row - 5Q } rlturk ildd } } // AEPC= - Lxtlksnok jndlprnvetl lxtlksnok Yldlitor { stetni dlt uphetlAenkXnalr 1 #sldlitor(ZnlwIoktroddlr.uphetlAenkXnalr) stetni dlt uphetlDepXnalr 1 #sldlitor(ZnlwIoktroddlr.uphetlDepXnalr) #sldlitor(ZnlwIoktroddlr.uphetlDepXnalr) }
Ytopwetif.swnjt naport Joukhetnok idess Ytopwetif= KYO`mlit { ver iouktlr= Hou`dl ver tnalr= Xnalr ovlrrnhl nknt() { iouktlr 1 2.2 tnalr 1 Xnalr() } }
526
Il979
5:IL2:6
Output=
52>
Il979
5:IL2:6
Xo ho
\tnds.swnjt naport Joukhetnok juki hetlJroaYtrnkg(_ hetl= Ytrnkg) -; Hetl? { dlt hetlJoraettlr 1 HetlJoraettlr() hetlJoraettlr.hetlJoraet 1 "yyyy-AA-hh" rlturk hetlJoraettlr.hetl(jroa= hetl) } juki strnkgJroaHetl(_ hetl= Hetl) -; Ytrnkg { dlt hetlJoraettlr 1 HetlJoraettlr() hetlJoraettlr.hetlJoraet 1 "yyyy-AA-hh" rlturk hetlJoraettlr.strnkg(jroa= hetl) }
XoHoNtla.swnjt naport Joukhetnok idess XoHoNtla= KYO`mlit { ver nh= Ytrnkg ver naegl= Ytrnkg ver tntdl= Ytrnkg ver hetl= Hetl nknt(nh= Ytrnkg, naegl= Ytrnkg, tntdl= Ytrnkg, hetl= Hetl) { sldj.nh 1 nh sldj.naegl 1 naegl sldj.tntdl 1 tntdl sldj.hetl 1 hetl } }
ZnlwIoktroddlr.swnjt naport \NCnt ver tohos= SXoHoNtlaQ 1 SQ idess ZnlwIoktroddlr= \NZnlwIoktroddlr { BN@Outdlt wlec ver tohoXe`dlZnlw= \NXe`dlZnlw! ovlrrnhl juki vnlwHnhDoeh() { suplr.vnlwHnhDoeh() kevngetnokNtla.dljt@er@uttokNtla 1 lhnt@uttokNtla
552
Il979
5:IL2:6
tohos 1 SXoHoNtla(nh= "5", naegl= "ifndh-sldlitlh", tntdl= "Go to Hnskly", hetl= hetlJroaYtrnkg("0258-52-02")!), XoHoNtla(nh= "0", naegl= "sfoppnkg-iert-sldlitlh", tntdl= "Iniso Yfoppnkg", hetl= hetlJroaYtrnkg("0258-52-06")!), hetlJroaYtrnkg("0258-52-06")!), XoHoNtla(nh= "9", naegl= "pfokl-sldlitlh", tntdl= "Rfokl to Mo`s", hetl= hetlJroaYtrnkg("0258-52-92")!), XoHoNtla(nh= "8", naegl= "trevld-sldlitlh", tntdl= "Rdek to Luropl", hetl= hetlJroaYtrnkg("0258-52-95")!)Q } ovlrrnhl juki vnlwWnddEppler(_ eknaetlh= @ood) { suplr.vnlwWnddEppler(eknaetlh) tohoXe`dlZnlw.rldoehHete() } juki sltAlsseglDe`ld(_ alsseglDe`ld= alsseglDe`ld= \NDe`ld, jreal= IGPlit, tlxt= Ytrnkg, tlxtIodor= \NIodor, kua`lrOjDnkls= Nkt, tlxtEdngkalkt= KYXlxtEdngkalkt, jokt= \NJokt) { alsseglDe`ld.jreal 1 jreal alsseglDe`ld.tlxt 1 tlxt alsseglDe`ld.tlxtIodor 1 tlxtIodor alsseglDe`ld.kua`lrOjDnkls alsseglDe`ld.kua`lrO jDnkls 1 kua`lrOjDnkls alsseglDe`ld.tlxtEdngkalkt alsseglDe`ld.tlxtEdng kalkt 1 tlxtEdngkalkt alsseglDe`ld.jokt 1 jokt alsseglDe`ld.snzlXoJnt() } juki sltIlddWntfXohoNtla(_ ildd= \NXe`dlZnlwIldd, toho= XoHoNtla) { dlt naeglZnlw= \NNaeglZnlw 1 ildd.vnlwWntfXeg(55) es! \NNaeglZnlw dlt tntdlDe`ld= \NDe`ld 1 ildd.vnlwWntfXeg(50) es! \NDe`ld dlt hetlDe`ld= \NDe`ld 1 ildd.vnlwWntfXeg(59) es! \NDe`ld naeglZnlw.naegl 1 \NNaegl(kealh= toho.naegl) tntdlDe`ld.tlxt 1 toho.tntdl hetlDe`ld.tlxt 1 strnkgJroaHetl(toho.hetl) } ovlrrnhl juki prlperl(jor slgul= \NYtory`oerhYlgul, slkhlr= Eky?) { nj slgul.nhlktnjnlr 11 "lhntXoho" { dlt vi 1 slgul.hlstnketnok es! HltendZnlwIoktroddlr dlt nkhlxRetf 1 tohoXe`dlZnlw.nkhlxRetfJorYldlitlhPow tohoXe`dlZnlw.nkhlxRetfJorYldlitlhPow nj dlt nkhlxRetf 1 nkhlxRetf { vi.toho 1 tohosS(nkhlxRetf es KYNkhlxRetf).rowQ } } } } lxtlksnok ZnlwIoktroddlr= \NXe`dlZnlwHeteYouril { juki te`dlZnlw(_ te`dlZnlw= \NXe`dlZnlw, kua`lrOjPowsNkYlitnok slitnok= Nkt) -; Nkt { 555
Il979
5:IL2:6
nj tohos.ioukt !1 2 { rlturk tohos.ioukt } ldsl { dlt alsseglDe`ld= \NDe`ld 1 \NDe`ld() sltAlsseglDe`ld(alsseglDe`ld, sltAlsseglDe`ld(alsseglDe`ld, jreal= IGPlit(x= 2, y= 2, wnhtf= sldj.vnlw.`oukhs.snzl.wnhtf, flngft= sldj.vnlw.`oukhs.snzl.flngft), sldj.vnlw.`oukhs.snzl.flngft), tlxt= "Ko hete ns iurrlktdy evende`dl.", tlxtIodor= \NIodor.`deic, kua`lrOjDnkls= 2, tlxtEdngkalkt= KYXlxtEdngkalkt.ilktlr, jokt= \NJokt(keal="Redetnko-Ntedni", snzl= 02)!) sldj.tohoXe`dlZnlw.`eicgroukhZnlw 1 alsseglDe`ld sldj.tohoXe`dlZnlw.`eicgroukhZnlw sldj.tohoXe`dlZnlw.slperetorYtydl sldj.tohoXe`dlZnlw.slpere torYtydl 1 \NXe`dlZnlwIlddYlperetorYty \NXe`dlZnlwIlddYlperetorYtydl.kokl dl.kokl rlturk 2 } } juki te`dlZnlw(_ te`dlZnlw= \NXe`dlZnlw, ilddJorPowEt nkhlxRetf= NkhlxRetf) -; \NXe`dlZnlwIldd { dlt ilddNhlktnjnlr= Ytrnkg 1 "tohoIldd" dlt ildd 1 te`dlZnlw.hlqululPlus te`dlZnlw.hlqululPluse`dlIldd(wntfNhlktnjnlr= e`dlIldd(wntfNhlktnjnlr= ilddNhlktnjnlr, jor= nkhlxRetf) sltIlddWntfXohoNtla(ildd, toho= tohosS(nkhlxRetf es KYNkhlxRetf).rowQ) rlturk ildd } } lxtlksnok ZnlwIoktroddlr= \NXe`dlZnlwHldlgetl { // Lhnt aohl ovlrrnhl juki sltLhntnkg(_ lhntnkg= @ood, eknaetlh= @ood) { suplr.sltLhntnkg(lhntnkg, eknaetlh= eknaetlh) tohoXe`dlZnlw.sltLhntnkg(lhntnkg,, eknaetlh= trul) tohoXe`dlZnlw.sltLhntnkg(lhntnkg tr ul) } juki te`dlZnlw(_ te`dlZnlw= \NXe`dlZnlw, ioaant lhntnkgYtydl= \NXe`dlZnlwIlddLhntnkgYtydl,, jorPowEt nkhlxRetf= NkhlxRetf) \NXe`dlZnlwIlddLhntnkgYtydl N khlxRetf) { nj lhntnkgYtydl 11 \NXe`dlZnlwIlddLhntnkgYtydl.hldltl { tohos.rlaovl(et= (nkhlxRetf es KYNkhlxRetf).row) tohoXe`dlZnlw.hldltlPows(et= tohoXe`dlZnlw.hldltlPows (et= SnkhlxRetfQ, wntf= \NXe`dlZnlwPowEknaetnok.eutoaetni) } } // Aovl tfl ildd juki te`dlZnlw(_ te`dlZnlw= \NXe`dlZnlw, iekAovlPowEt nkhlxRetf= NkhlxRetf) ; @ood { rlturk sldj.nsLhntnkg 550
Il979
5:IL2:6
} juki te`dlZnlw(_ te`dlZnlw= \NXe`dlZnlw, aovlPowEt sourilNkhlxRetf= NkhlxRetf, to hlstnketnokNkhlxRetf= NkhlxRetf) { dlt toho 1 tohos.rlaovl(et= (sourilNkhlxRetf es KYNkhlxRetf).row) KYNkhlxRetf).row) tohos.nkslrt(toho, et= (hlstnketnokNkhlxRetf es KYNkhlxRetf).row) } }
HltendZnlwIoktroddlr.swnjt naport \NCnt idess HltendZnlwIoktroddlr= \NZnlwIoktroddlr { BN@Outdlt wlec ver ifndh@uttok= \N@uttok! BN@Outdlt wlec ver pfokl@uttok= \N@uttok! BN@Outdlt wlec ver sfoppnkgIert@uttok= \N@uttok! BN@Outdlt wlec ver trevld@uttok= \N@uttok! BN@Outdlt wlec ver tohoXntdlDe`ld= \NXlxtJnldh! BN@Outdlt wlec ver tohoHetlRniclr= \NHetlRniclr! ver toho= XoHoNtla? ovlrrnhl juki vnlwHnhDoeh() { suplr.vnlwHnhDoeh() nj dlt toho 1 toho { sldj.tntdl 1 "Lhnt Xoho" nj toho.naegl 11 "ifndh-sldlitlh"{ [email protected] 1 trul } ldsl nj toho.naegl 11 "pfokl-sldlitlh"{ [email protected] 1 trul } ldsl nj toho.naegl 11 "sfoppnkg-iert-sldlitlh"{ [email protected] [email protected] tlh 1 trul } ldsl nj toho.naegl 11 "trevld-sldlitlh"{ "t revld-sldlitlh"{ [email protected] 1 trul } tohoXntdlDe`ld.tlxt 1 toho.tntdl tohoHetlRniclr.sltHetl(toho.hetl,, eknaetlh= jedsl) tohoHetlRniclr.sltHetl(toho.hetl } ldsl { tntdl 1 "Klw Xoho" [email protected] 1 trul } } // AEPC= typl sldlit BN@Eitnok juki sldlitIfndh(_ slkhlr= EkyO`mlit) { rlslt@uttoks() 559
Il979
5:IL2:6
[email protected] 1 trul } BN@Eitnok juki sldlitRfokl(_ slkhlr= EkyO`mlit) { rlslt@uttoks() [email protected] 1 trul } BN@Eitnok juki sldlitYfoppnkgIert(_ slkhlr= EkyO`mlit) { rlslt@uttoks() [email protected] [email protected] itlh 1 trul } BN@Eitnok juki sldlitXrevld(_ slkhlr= EkyO`mlit) { rlslt@uttoks() [email protected] 1 trul } juki rlslt@uttoks() { [email protected] 1 jedsl [email protected] 1 jedsl [email protected] [email protected] itlh 1 jedsl j edsl [email protected] 1 jedsl } BN@Eitnok juki tepHokl(_ slkhlr= EkyO`mlit) { ver naegl 1 "" nj [email protected] { naegl 1 "ifndh-sldlitlh" } ldsl nj [email protected] { naegl 1 "pfokl-sldlitlh" } ldsl nj [email protected] { naegl 1 "sfoppnkg-iert-sldlitlh" } ldsl nj [email protected] { naegl 1 "trevld-sldlitlh" } nj dlt toho 1 toho { toho.naegl 1 naegl toho.tntdl 1 tohoXntdlDe`ld.tlxt! toho.hetl 1 tohoHetlRniclr.hetl } ldsl { dlt uunh 1 \\NH().uunhYtrnkg toho 1 XoHoNtla(nh= uunh, naegl= naegl, tntdl= tohoXntdlDe`ld.tlxt!, hetl= tohoHetlRniclr.hetl) tohos.epplkh(toho!) } dlt _ 1 kevngetnokIoktroddlr?.pop kevngetnokIoktroddlr?.popXoPootZnlwIoktroddlr(eknaetlh XoPootZnlwIoktroddlr(eknaetlh== trul) 558
Il979
5:IL2:6
} ovlrrnhl juki touifls@lgek(_ touifls= Ylt4\NXouif;, wntf lvlkt= \NLvlkt?) { suplr.touifls@lgek(touifls, suplr.touifls@lgek(touifls, wntf= lvlkt) vnlw.lkhLhntnkg(trul) } } Output=
55<
Il979
5:IL2:6
IekhyYlerif
AestlrZnlwIoktroddlr.sfnjt naport \NCnt idess AestlrZnlwIoktroddlr= \NXe`dlZnlwIoktroddlr { // AEPC= - Rroplrtnls ver hltendZnlwIoktroddlr= HltendZnlwIoktroddlr? 1 knd ver iekhnls 1 SIekhyQ() ver jndtlrlhIekhnls 1 SIekhyQ() dlt slerifIoktroddlr 1 \NYlerifIoktroddlr(slerifPlsudtsIoktroddlr= knd) // AEPC= - Znlw Yltup ovlrrnhl juki vnlwHnhDoeh() { suplr.vnlwHnhDoeh() iekhnls 1 S Iekhy(ietlgory="Ifoiodetl", Iekhy(ietlgory="Ifoiodetl", keal="Ifoiodetl @er"), Iekhy(ietlgory="Ifoiodetl", Iekhy(ietlgory="Ifoiodetl", keal="Ifoiodetl Ifnp"), Iekhy(ietlgory="Ifoiodetl", Iekhy(ietlgory="Ifoiodetl", keal="Herc Ifoiodetl"), Iekhy(ietlgory="Ferh", Iekhy(ietlgory="Ferh", keal="Doddnpop"), Iekhy(ietlgory="Ferh", Iekhy(ietlgory="Ferh", keal="Iekhy Iekl"), Iekhy(ietlgory="Ferh", Iekhy(ietlgory="Ferh", keal="Mew @rleclr"), Iekhy(ietlgory="Otflr", Iekhy(ietlgory="Otflr", keal="Iereald"), Iekhy(ietlgory="Otflr", Iekhy(ietlgory="Otflr", keal="Your Iflw"), Iekhy(ietlgory="Otflr", keal="Guaan @ler") Q sltupYlerifIoktroddlr() nj dlt spdntZnlwIoktroddlr 1 spdntZnlwIoktroddlr { dlt ioktroddlrs 1 spdntZnlwIoktroddlr.vnlwIoktroddlrs hltendZnlwIoktroddlr 1 (ioktroddlrsSioktroddlrs.ioukt - 5Q es! \NKevngetnokIoktroddlr).topZnlwIoktroddlr es? HltendZnlwIoktroddlr } } // AEPC= - Ylerif Ioktroddlr Yltup juki sltupYlerifIoktroddlr () { slerifIoktroddlr.slerifPlsudts\phetlr slerifIoktroddlr.slerifPl sudts\phetlr 1 sldj slerifIoktroddlr.hnas@eicgroukhHurnkgRrlslktetnok slerifIoktroddlr.hnas@eicg roukhHurnkgRrlslktetnok 1 jedsl hljnklsRrlslktetnokIoktlxt hljnklsRrlslktetnokIo ktlxt 1 trul [email protected]@uttokXntdls [email protected] opl@uttokXntdls 1 S"Edd", "Ifoiodetl", "Ferh", "Otflr"Q [email protected] [email protected] ldlgetl 1 sldj nj #evende`dl(nOY 55, *) { sldj.kevngetnokNtla.slerifIoktroddlr sldj.kevngetnokNtla.slerifIoktr oddlr 1 slerifIoktroddlr sldj.kevngetnokNtla.slerifIoktroddlr?.nsEitnvl sldj.kevngetnokNtla.slerifIoktr oddlr?.nsEitnvl 1 trul 55:
Il979
5:IL2:6
sldj.kevngetnokNtla.fnhlsYlerif@erWflkYiroddnkg 1 jedsl sldj.kevngetnokNtla.fnhlsYlerif@erWflkYiroddnkg } ldsl { te`dlZnlw.te`dlFlehlrZnlw 1 slerifIoktroddlr.slerif@er } } juki jndtlrIoktlktJorYlerifXlxt(_ slerifXlxt= slerifXlxt= Ytrnkg, siopl= Ytrnkg 1 "Edd") { jndtlrlhIekhnls 1 iekhnls.jndtlr { iekhy nk nj !(iekhy.ietlgory 11 siopl) && siopl !1 "Edd" { rlturk jedsl } rlturk iekhy.keal.dowlrieslh iekhy.keal.dowlrieslh().ioktenks(slerifXlxt.dowlri ().ioktenks(slerifXlxt.dowlrieslh()) eslh()) || slerifXlxt 11 "" } te`dlZnlw.rldoehHete() } ovlrrnhl juki vnlwWnddEppler(_ eknaetlh= @ood) { idlersYldlitnokOkZnlwWnddEppler idlersYldlitnokOkZnlw WnddEppler 1 spdntZnlwIoktroddlr!.nsIoddepslh suplr.vnlwWnddEppler(eknaetlh) } ovlrrnhl juki hnhPlilnvlAlaoryWerknkg() { suplr.hnhPlilnvlAlaoryWerknkg() } // AEPC= - Xe`dl Znlw ovlrrnhl juki kua`lrOjYlitnoks(nk te`dlZnlw= te`dlZnlw= \NXe`dlZnlw) -; Nkt { rlturk 5 } ovlrrnhl juki te`dlZnlw(_ te`dlZnlw= t e`dlZnlw= \NXe`dlZnlw, kua`lrOjPowsNkYlitnok slitnok= Nkt) -; Nkt { nj slerifIoktroddlr.nsEitnvl { rlturk jndtlrlhIekhnls.ioukt } rlturk iekhnls.ioukt } ovlrrnhl juki te`dlZnlw(_ te`dlZnlw= \NXe`dlZnlw, ilddJorPowEt nkhlxRetf= nkhl xRetf= NkhlxRetf) -; \NXe`dlZnlwIldd { dlt ildd 1 te`dlZnlw.hlqululPlus te`dlZnlw.hlqululPluse`dlIldd(wntfNhlktnjnlr= e`dlIldd(wntfNhlktnjnlr= "Ildd", jor= nkhlxRetf) dlt iekhy= Iekhy nj slerifIoktroddlr.nsEitnvl { iekhy 1 jndtlrlhIekhnlsS(nkhlxRetf es KYNkhlxRetf).rowQ } ldsl { iekhy 1 iekhnlsS(nkhlxRetf es KYNkhlxRetf).rowQ 557
Il979
5:IL2:6
} ildd.tlxtDe`ld!.tlxt 1 iekhy.keal ildd.hltendXlxtDe`ld!.tlxt 1 iekhy.ietlgory rlturk ildd } // AEPC= - Ylguls ovlrrnhl juki prlperl(jor slgul= \NYtory`oerhYlgul, slkhlr= Eky?) { nj slgul.nhlktnjnlr 11 "sfowHltend" { nj dlt nkhlxRetf 1 te`dlZnlw.nkhlxRetfJorYldl te`dlZnlw.nkhlxRetfJorYldlitlhPow itlhPow { dlt iekhy= Iekhy nj slerifIoktroddlr.nsEitnvl { iekhy 1 jndtlrlhIekhnlsS(nkhlxRetf es KYNkhlxRetf).rowQ } ldsl { iekhy 1 iekhnlsS(nkhlxRetf es KYNkhlxRetf).rowQ } dlt ioktroddlr 1 (slgul.hlstnketnok es! \NKevngetnokIoktroddlr).topZnlwIoktroddlr \NKevngetnokIoktroddlr).topZnlwIoktroddlr es! HltendZnlwIoktroddlr ioktroddlr.hltendIekhy 1 iekhy ioktroddlr.kevngetnokNtla.dljt@er@uttokNtla 1 spdntZnlwIoktroddlr?.hnspdeyAohl@uttokNtla ioktroddlr.kevngetnokNtla.dljtNtlasYuppdlalkt@eic@uttok ioktroddlr.kevngetnokNtla.dljtNtlasYuppdl alkt@eic@uttok 1 trul t rul } } } } lxtlksnok AestlrZnlwIoktroddlr= \NYlerifPlsudts\phetnkg { juki uphetlYlerifPlsudts(jor slerifIoktroddlr= \NYlerifIoktroddlr) { dlt slerif@er 1 slerifIoktroddlr.slerif@er dlt siopl 1 [email protected]@[email protected] [email protected]@[email protected]@uttokNkhlx hYiopl@uttokNkhlxQQ jndtlrIoktlktJorYlerifXlxt([email protected]!, jndtlrIoktlktJorYlerifXlxt(slerifIo [email protected]!, siopl= siopl) } } lxtlksnok AestlrZnlwIoktroddlr= \NYlerif@erHldlgetl { juki slerif@er(_ slerif@er= \NYlerif@er, sldlitlhYiopl@uttokNkhlxHnhIfekgl sldlitlhYiopl= Nkt) { jndtlrIoktlktJorYlerifXlxt([email protected]!, jndtlrIoktlktJorYlerifXlxt([email protected] t!, siopl= [email protected]@uttokXntdls!SsldlitlhYioplQ) } }
556
Il979
5:IL2:6
HltendZnlwIoktroddlr.sfnjt naport \NCnt idess HltendZnlwIoktroddlr= \NZnlwIoktroddlr { BN@Outdlt wlec ver hltendHlsirnptnokDe`ld= \NDe`ld! BN@Outdlt wlec ver iekhyNaeglZnlw= \NNaeglZnlw! ver hltendIekhy= Iekhy? { hnhYlt { iokjngurlZnlw() } } juki iokjngurlZnlw() { nj dlt hltendIekhy 1 hltendIekhy { nj dlt hltendHlsirnptnokDe`ld 1 hltendHlsirnptnokDe`ld, dlt iekhyNaeglZnlw 1 iekhyNaeglZnlw { hltendHlsirnptnokDe`ld.tlxtt 1 hltendIekhy.keal hltendHlsirnptnokDe`ld.tlx iekhyNaeglZnlw.naegl 1 \NNaegl(kealh= hltendIekhy.keal) tntdl 1 hltendIekhy.ietlgory } } } ovlrrnhl juki vnlwHnhDoeh() { suplr.vnlwHnhDoeh() iokjngurlZnlw() } ovlrrnhl juki hnhPlilnvlAlaoryWerknkg() { suplr.hnhPlilnvlAlaoryWerknkg() } }
Iekhy.sfnjt naport Joukhetnok idess Iekhy { ver ietlgory = Ytrnkg ver keal = Ytrnkg nknt(ietlgory= Ytrnkg, keal= Ytrnkg) { sldj.ietlgory 1 ietlgory sldj.keal 1 keal } }
55>
Il979
5:IL2:6
Output=
502
Il979
5:IL2:6
RPEIXNIED 59
59) Ena=Napdlalktetnok oj RoclhlxGo, Ynapdl PYY Plehlr,Jeil`oocAl, Nktlrlsts, Rfotosirodd & Eknaetnok nk nOY
RoclhlxGo
AestlrZnlwIoktroddlrXe`dlZnlwIoktroddlr.swnjt naport \NCnt naport PxYwnjt naport PxIoioe protoiod RoclaokYldlitnokHldlgetl= idess { juki poclaokYldlitlh(_ klwRoclaok= Roclaok) } idess AestlrZnlwIoktroddlr= \NXe`dlZnlwIoktroddlr { ver poclaoks 1 Dn`reryERN.sferlhNksteki Dn`reryERN.sferlhNkstekil.gltRoclaoks() l.gltRoclaoks() ver jndtlrlhRoclaoks 1 SRoclaokQ() wlec ver hldlgetl= RoclaokYldlitnokHldl RoclaokYldlitnokHldlgetl? getl? jndlprnvetl dlt hnsposl@eg 1 Hnsposl@eg() BN@Outdlt wlec ver slerif@er= \NYlerif@er! ovlrrnhl juki vnlwHnhDoeh() { suplr.vnlwHnhDoeh() sltup\N() jndtlrlhRoclaoks 1 poclaoks } jndlprnvetl juki sltup\N() { sldj.tntdl 1 "粻灼列衦" hljnklsRrlslktetnokIoktlxt hljnklsRrlslktetnokIo ktlxt 1 trul slerif@er .rx.tlxt .tfrottdl(2.<, siflhudlr= AenkYiflhudlr.nkstekil) .su`sirn`l( okKlxt= { Sukowklh sldjQ qulry nk nj qulry?.ifereitlrs.ioukt 11 2 { sldj.jndtlrlhRoclaoks 1 sldj.poclaoks } ldsl { sldj.jndtlrlhRoclaoks 1 sldj.poclaoks.jndtlr{ $2.keal.fesRrljnx(qulry!) } } sldj.te`dlZnlw.rldoehHete() 505
Il979
5:IL2:6
}) .ehhHnspose`dlXo(hnsposl@eg) } juki hnsanssCly`oerh() { vnlw.lkhLhntnkg(trul) } // AEPC= - \NXe`dlZnlwHldlgetl ovlrrnhl juki te`dlZnlw(_ te`dlZnlw= \NXe`dlZnlw, flngftJorPowEt nkhlxRetf= NkhlxRetf) -; IGJdoet { rlturk 582 } ovlrrnhl juki te`dlZnlw(_ te`dlZnlw= \NXe`dlZnlw, hnhYldlitPowEt nkhlxRetf= NkhlxRetf) { dlt poclaok 1 sldj.jndtlrlhRoclaoksS(nkhlxRetf es KYNkhlxRetf).rowQ hldlgetl?.poclaokYldlitlh(poclaok) nj dlt hltendZnlwIoktroddlr 1 sldj.hldlgetl es? HltendZnlwIoktroddlr { spdntZnlwIoktroddlr?.sfowHltendZnlwIoktroddlr(hltendZnlwIoktroddlr.kevngetnokIo ktroddlr!, slkhlr= knd) } } // AEPC= - \NXe`dlZnlwHeteYouril ovlrrnhl juki kua`lrOjYlitnoks(nk te`dlZnlw= te`dlZnlw= \NXe`dlZnlw) -; Nkt { rlturk 5 } ovlrrnhl juki te`dlZnlw(_ te`dlZnlw= \NXe`dlZnlw, kua`lrOjPowsNkYlitnok slitnok= Nkt) -; Nkt { rlturk jndtlrlhRoclaoks.ioukt } ovlrrnhl juki te`dlZnlw(_ te`dlZnlw= \NXe`dlZnlw, ilddJorPowEt nkhlxRetf= NkhlxRetf) -; \NXe`dlZnlwIldd { dlt nhlktnjnlr 1 "Ildd" dlt ildd 1 te`dlZnlw.hlqululPlus te`dlZnlw.hlqululPluse`dlIldd(wntfNhlktnjnlr= e`dlIldd(wntfNhlktnjnlr= nhlktnjnlr, jor= nkhlxRetf) es! AestlrXe`dlZnlwIldd dlt poclaok 1 jndtlrlhRoclaoksS(nkhlxRetf es KYNkhlxRetf).rowQ ildd.eweclJroaKn`(poclaok.nh, keal= poclaok.keal, poclNaegl\rd= ildd.eweclJroaKn`(poclaok.nh, poclaok.poclNag\rd) rlturk ildd } } 500
Il979
5:IL2:6
Dn`reryERN.swnjt naport \NCnt idess Dn`reryERN= KYO`mlit { stetni dlt sferlhNkstekil 1 Dn`reryERN() dlt plrsnstlkiyAekeglr 1 RlrsnstlkiyAekeglr() jndlprnvetl ovlrrnhl nknt() { suplr.nknt() KotnjnietnokIlktlr.hljeudt.ehhO`slrvlr(sldj, sldlitor=#sldlitor(Dn`reryERN.howkdoehNaegl(_=)), sldlitor=#sldlitor(Dn`reryERN.how kdoehNaegl(_=)), keal= KYKotnjnietnok.Keal(rewZedul= howkdoehNaeglKotnjnietnok), howkdoehNaeglKotnjnietnok), o`mlit= knd) } hlnknt { KotnjnietnokIlktlr.hljeudt.rlaovlO`slrvlr(sldj) } juki gltRoclaoks() -; SRoclaokQ { rlturk poclaoks } juki howkdoehNag(_ urd= Ytrnkg) -; (\NNaegl) { dlt e\rd 1 \PD(strnkg= urd) dlt hete 1 try? Hete(ioktlktsOj= e\rd!) dlt naegl 1 \NNaegl(hete= hete!) rlturk naegl! } juki howkdoehNaegl(_ kotnjnietnok= Kotnjnietnok) { // rltrnlvl nkjo jroa kotnjnietnok dlt uslrNkjo 1 (kotnjnietnok es KYKotnjnietnok).uslrNkjo es! SYtrnkg= EkyO`mlitQ dlt poclNaeglZnlw 1 uslrNkjoS"poclNaeglZnlw"Q es! \NNaeglZnlw? dlt poclNaegl\rd 1 uslrNkjoS"poclNaegl\rd"Q es! Ytrnkg nj dlt naeglZnlw\kWrepplh 1 poclNaeglZnlw { naeglZnlw\kWrepplh.naegl naeglZnlw\kWrepplh.naegl 1 plrsnstlkiyAekeglr.gltNaegl(\PD(strnkg= plrsnstlkiyAekeglr.gltNaegl(\PD(strnkg= poclNaegl\rd)!.destRetfIoapoklkt) nj naeglZnlw\kWrepplh.naegl 11 knd { HnspetifUulul.gdo`ed().esyki { HnspetifUulul.gdo`ed().esyki dlt howkdoehlhNaegl 1 sldj.howkdoehNag(poclNaegl\rd sldj.howkdoehNag(poclNaegl\rd es Ytrnkg) HnspetifUulul.aenk.esyki HnspetifUulul.aenk.es yki { naeglZnlw\kWrepplh.naegl naeglZnlw\kWrepplh.n aegl 1 howkdoehlhNaegl sldj.plrsnstlkiyAekeglr.sevlNaegl(howkdoehlhN sldj.plrsnstlkiyAekegl r.sevlNaegl(howkdoehlhNaegl, aegl, jndlkeal= \PD(strnkg= poclNaegl\rd)!.destRetfIoapoklkt) } } } } } }
509
Il979
5:IL2:6
RlrsnstlkiyAekeglr.swnjt naport \NCnt idess RlrsnstlkiyAekeglr= KYO`mlit { juki sevlNaegl(_ naegl= \NNaegl, jndlkeal= Ytrnkg) { dlt petf 1 KYFoalHnrlitory() + "/Hoiualkts/T(jndlkeal)" dlt hete 1 \NNaeglRKGPlprlslktetnok \NNaeglRKGPlprlslktetnok(naegl) (naegl) try? hete!.wrntl(to= \PD(jndl\PDWntfRetf= petf), optnoks= S.etoaniQ) } juki gltNaegl(_ jndlkeal= Ytrnkg) -; \NNaegl? { dlt petf 1 KYFoalHnrlitory() + "/Hoiualkts/T(jndlkeal)" ho { dlt hete 1 try Hete(ioktlktsOj= \PD(jndl\PDWntfRetf= petf), optnoks= .ukieiflhPleh) rlturk \NNaegl(hete= hete) } ietif { rlturk knd } } }
AestlrZnlwIoktroddlrXe`dlZnlwIoktroddlr.swnjt naport \NCnt naport PxYwnjt naport PxIoioe protoiod RoclaokYldlitnokHldlgetl= idess { juki poclaokYldlitlh(_ klwRoclaok= Roclaok) } idess AestlrZnlwIoktroddlr= \NXe`dlZnlwIoktroddlr { ver poclaoks 1 Dn`reryERN.sferlhNksteki Dn`reryERN.sferlhNkstekil.gltRoclaoks() l.gltRoclaoks() ver jndtlrlhRoclaoks 1 SRoclaokQ() wlec ver hldlgetl= RoclaokYldlitnokHldl RoclaokYldlitnokHldlgetl? getl? jndlprnvetl dlt hnsposl@eg 1 Hnsposl@eg() BN@Outdlt wlec ver slerif@er= \NYlerif@er! ovlrrnhl juki vnlwHnhDoeh() { suplr.vnlwHnhDoeh() sltup\N() jndtlrlhRoclaoks 1 poclaoks } 508
Il979
5:IL2:6
jndlprnvetl juki sltup\N() { sldj.tntdl 1 "粻灼列衦" hljnklsRrlslktetnokIoktlxt hljnklsRrlslktetnokIo ktlxt 1 trul slerif@er .rx.tlxt .tfrottdl(2.<, siflhudlr= AenkYiflhudlr.nkstekil) .su`sirn`l( okKlxt= { Sukowklh sldjQ qulry nk nj qulry?.ifereitlrs.ioukt 11 2 { sldj.jndtlrlhRoclaoks 1 sldj.poclaoks } ldsl { sldj.jndtlrlhRoclaoks 1 sldj.poclaoks.jndtlr{ $2.keal.fesRrljnx(qulry!) } } sldj.te`dlZnlw.rldoehHete() }) .ehhHnspose`dlXo(hnsposl@eg) } juki hnsanssCly`oerh() { vnlw.lkhLhntnkg(trul) } // AEPC= - \NXe`dlZnlwHldlgetl ovlrrnhl juki te`dlZnlw(_ te`dlZnlw= \NXe`dlZnlw, flngftJorPowEt nkhlxRetf= NkhlxRetf) -; IGJdoet { rlturk 582 } ovlrrnhl juki te`dlZnlw(_ te`dlZnlw= \NXe`dlZnlw, hnhYldlitPowEt nkhlxRetf= NkhlxRetf) { dlt poclaok 1 sldj.jndtlrlhRoclaoksS(nkhlxRetf es KYNkhlxRetf).rowQ hldlgetl?.poclaokYldlitlh(poclaok) nj dlt hltendZnlwIoktroddlr 1 sldj.hldlgetl es? HltendZnlwIoktroddlr { spdntZnlwIoktroddlr?.sfowHltendZnlwIoktroddlr(hltendZnlwIoktroddlr.kevngetnokIo ktroddlr!, slkhlr= knd) } } // AEPC= - \NXe`dlZnlwHeteYouril ovlrrnhl juki kua`lrOjYlitnoks(nk te`dlZnlw= te`dlZnlw= \NXe`dlZnlw) -; Nkt { rlturk 5 } ovlrrnhl juki te`dlZnlw(_ te`dlZnlw= \NXe`dlZnlw, kua`lrOjPowsNkYlitnok slitnok= Nkt) -; Nkt { 50<
Il979
5:IL2:6
rlturk jndtlrlhRoclaoks.ioukt } ovlrrnhl juki te`dlZnlw(_ te`dlZnlw= \NXe`dlZnlw, ilddJorPowEt nkhlxRetf= NkhlxRetf) -; \NXe`dlZnlwIldd { dlt nhlktnjnlr 1 "Ildd" dlt ildd 1 te`dlZnlw.hlqululPlus te`dlZnlw.hlqululPluse`dlIldd(wntfNhlktnjnlr= e`dlIldd(wntfNhlktnjnlr= nhlktnjnlr, jor= jor = nkhlxRetf) es! AestlrXe`dlZnlwIldd dlt poclaok 1 jndtlrlhRoclaoksS(nkhlxRe jndtlrlhRoclaoksS(nkhlxRetf tf es KYNkhlxRetf).rowQ KYNkhlxRetf).rowQ ildd.eweclJroaKn`(poclaok.nh, ildd.eweclJroaKn`(pocl aok.nh, keal= poclaok.keal, poclNaegl\rd= poclaok.poclNag\rd) rlturk ildd } }
HltendZnlwIoktroddlr.swnjt naport \NCnt idess HltendZnlwIoktroddlr= \NZnlwIoktroddlr { // AEPC= - N@Outdlts BN@Outdlt wlec ver kealNHDe`ld= \NDe`ld! BN@Outdlt wlec ver poclNaeglZnlw= \NNaeglZnlw! BN@Outdlt wlec ver poclNkjoDe`ld= \NDe`ld! ver poclaok= Roclaok! { hnhYlt (klwRoclaok) { sldj.rljrlsf\N() } } ovlrrnhl juki vnlwHnhDoeh() { rljrlsf\N() suplr.vnlwHnhDoeh() } juki rljrlsf\N() { kealNHDe`ld?.tlxt 1 poclaok.keal + (poclaok.nh 4 52 ? " #22T(poclaok.nh)" = poclaok.nh 4 522 ? " #2T(poclaok.nh)" = " #T(poclaok.nh)") poclNaeglZnlw?.naegl poclNaeglZnlw?.naegl 1 Dn`reryERN.sferlhNkstekil.howkdoehNag(poclaok.poclNag\rd) poclNkjoDe`ld?.tlxt poclNkjoDe`ld?.tlxt 1 poclaok.hltendNkjo sldj.tntdl 1 poclaok.keal } } lxtlksnok HltendZnlwIoktroddlr= RoclaokYldlitnokHldlgetl { juki poclaokYldlitlh(_ klwRoclaok= Roclaok) { poclaok 1 klwRoclaok } } 50:
Il979
5:IL2:6
Roclaok.swnjt naport \NCnt lkua RoclXypl { iesl koraed iesl jnrl iesl wetlr iesl ldlitrni iesl gress iesl nil iesl jngftnkg iesl ponsok iesl groukh iesl jdynkg iesl psyifni iesl `ug iesl roic iesl gfost iesl hregok iesl herc iesl stlld iesl jenry } idess Roclaok= KYO`mlit { dlt keal= Ytrnkg dlt nh= Nkt dlt hltendNkjo= Ytrnkg dlt typl= SRoclXyplQ dlt wlec= SRoclXyplQ dlt poclNag\rd= Ytrnkg nknt(keal= Ytrnkg, nh= Nkt, hltendNkjo= Ytrnkg, typl= SRoclXyplQ, wlec= SRoclXyplQ, SRoclXyplQ, poclNag\rd= Ytrnkg) { sldj.keal 1 keal sldj.nh 1 nh sldj.hltendNkjo 1 hltendNkjo sldj.typl 1 typl sldj.wlec 1 wlec sldj.poclNag\rd 1 poclNag\rd } }
507
Il979
5:IL2:6
AestlrXe`dlZnlwIldd.swnjt naport \NCnt idess AestlrXe`dlZnlwIldd= \NXe`dlZnlwIldd { BN@Outdlt wlec ver nhDe`ld= \NDe`ld! BN@Outdlt wlec ver kealDe`ld= \NDe`ld! BN@Outdlt wlec ver poclNaeglZnlw= \NNaeglZnlw! jndlprnvetl ver nkhnietor= \NEitnvntyNkhnietorZnlw! juki eweclJroaKn`(_ nh= Nkt, keal= Ytrnkg, poclNaegl\rd= Ytrnkg) { suplr.eweclJroaKn`() sltup\N(nh, keal= keal) sltupKotnjnietnok(poclNaegl\rd) } hlnknt { poclNaeglZnlw.rlaovlO`slrvlr(sldj, poclNaeglZnlw.rlaov lO`slrvlr(sldj, jorClyRetf= "naegl") } ovlrrnhl juki sltYldlitlh(_ sldlitlh= @ood, eknaetlh= @ood) { suplr.sltYldlitlh(sldlitlh, suplr.sltYldlitlh(sldli tlh, eknaetlh= eknaetlh) } jndlprnvetl juki sltup\N(_ nh= Nkt, keal= Ytrnkg) { nhDe`ld.tlxt 1 KYYtrnkg(joraet= "#%29h", nh) es Ytrnkg kealDe`ld.tlxt 1 keal poclNaeglZnlw.naegl poclNaeglZnlw.naegl 1 \NNaegl(kealh= "hljeudt_nag") nkhnietor 1 \NEitnvntyNkhnietorZnlw() nkhnietor.ilktlr 1 IGRonkt(x= poclNaeglZnlw.`oukhs.anhV, poclNaeglZnlw.`oukhs.anhV, y= poclNaeglZnlw.`oukhs.anh^) nkhnietor.eitnvntyNkhnietorZnlwYtydl nkhnietor.eitnvntyNkhnietorZnlwYty dl 1 .wfntlDergl nkhnietor.stertEknaetnkg() poclNaeglZnlw.ehhYu`vnlw(nkhnietor) poclNaeglZnlw.ehhO`slrvlr(sldj, poclNaeglZnlw.ehhO`slrvlr(sldj, jorClyRetf= "naegl", optnoks= SQ, ioktlxt= knd) } jndlprnvetl juki sltupKotnjnietnok(_ poclNaegl\rd= Ytrnkg) { KotnjnietnokIlktlr.hljeudt.post(keal= KotnjnietnokIlktlr.hljeudt.post(ke al= Kotnjnietnok.Keal(rewZedul Kotnjnietnok.Keal(rewZedul== howkdoehNaeglKotnjnietnok), o`mlit= sldj, uslrNkjo= S"poclNaeglZnlw"=poclNaeglZnlw, S"poclNaeglZnlw"=poc lNaeglZnlw, "poclNaegl\rd" = poclNaegl\rdQ) } ovlrrnhl juki o`slrvlZedul(jorClyRetf clyRetf= Ytrnkg?, oj o`mlit= Eky?, ifekgl= SKYClyZedulIfekglCly SKYClyZedulIfekglC ly = EkyQ?, ioktlxt= \ksejlAute`dlPewRonktlr?) { nj clyRetf 11 "naegl" { nkhnietor.stopEknaetnkg() } } }
506
Il979
5:IL2:6
RoclaokIokstekts.swnjt naport Joukhetnok dlt poclaoks 1 S Roclaok(keal= "妞蛞私孒", nh= 5, hltendNkjo= "妞蛞私孒经帶圦阹兎七酩睥 安胄不朎中私孒$逝过吶攺阹兎渒渒长大 ", typl= SRoclXypl.gress, RoclXypl.ponsokQ, wlec= SRoclXypl.jnrl, RoclXypl.jdynkg, RoclXypl.nil, RoclXypl.psyifniQ, poclNag\rd= "fttp=//esslts.poclaok.io "fttp=//esslts.poclaok.ioa/esslts/ias0/nag/pocl a/esslts/ias0/nag/poclhlx/judd/225.pkg"), hlx/judd/225.pkg"), Roclaok(keal= "妞蛞荎", nh= 0, hltendNkjo= "圦安皈胄不朎丂中芵苛 妞蛞荎皈囓肠靛帶粗士$连样扁胱支撕安皈余 釁 妀枔安异姃经帶晐夭阹$衦昋安尊覅异芵亊 ", typl= SRoclXypl.gress, RoclXypl.ponsokQ, wlec= SRoclXypl.jnrl, RoclXypl.jdynkg, RoclXypl.nil, RoclXypl.psyifniQ, RoclXypl.psyifniQ, poclNag\rd= "fttp=//esslts.poclaok "fttp=//esslts.poclaok.ioa/esslts/ias0/nag/pocl .ioa/esslts/ias0/nag/poclhlx/judd/220.pkg"), hlx/judd/220.pkg"),
Roclaok(keal= "妞蛞芵", nh= 9, hltendNkjo= "妞蛞芵皈胄不朎丂朼左大皈鲔芵 妀枔安吶攺关刊々晐夭阹$芵皈颔艰 尵伝取得靛帶鲔艹 芵皈馞氘迖可们抝慲伨感皈亽 ", typl= SRoclXypl.gress, RoclXypl.ponso R oclXypl.ponsokQ, kQ, wlec= SRoclXypl.jnrl, RoclXypl.jdynkg, RoclXypl.nil, RoclXypl.psyifniQ, poclNag\rd= "fttp=//esslts.poclaok "fttp=//esslts.poclaok.ioa/esslts/ias0/nag/pocl .ioa/esslts/ias0/nag/poclhlx/judd/229.pkg"), hlx/judd/229.pkg"),
Roclaok(keal= "小灣龞", nh= 8, hltendNkjo= "安尻巸不皈灣焲胱够衦玲函安皈惌续 彙安异忉旺$灣焲伝摇曹 妀枔 安袣濂怐$灣焲尵伝猓烆圲燉烧 ", typl= SRoclXypl.jnrlQ, wlec= SRoclXypl.groukh, RoclXypl.roic, RoclXypl.wetlrQ, poclNag\rd= "fttp=//esslts.poclaok "fttp=//esslts.poclaok.ioa/esslts/ias0/nag/pocl .ioa/esslts/ias0/nag/poclhlx/judd/228.pkg"), hlx/judd/228.pkg"),
Roclaok(keal= "灣恒龞", nh= <, hltendNkjo= "灣恒龞伝甦安锃刮皈爭孒殃忁圲撜裀敄亽 妀枔安皈敄亽卅刊弽士$安 尵伝取得奱斗 圦连私惌冼七$安尻巸不皈灣焲伝取戒帪炾蓑艰皈享癱 ", typl= SRoclXypl.jnrlQ, wlec= SRoclXypl.groukh, RoclXypl.roic, RoclXypl.wetlrQ, poclNag\rd= "fttp=//esslts.poclaok "fttp=//esslts.poclaok.ioa/esslts/ias0/nag/pocl .ioa/esslts/ias0/nag/poclhlx/judd/22<.pkg"), hlx/judd/22<.pkg"),
Roclaok(keal= "喷灣龞", nh= :, hltendNkjo= "喷灣龞圦穽両飛衄$寳扻弽大皈対扃 安吒函皈灣焲渮庪枅髖$可们螁 匚丂切牮余 焺耄$安介杬丁攳凳仳作毘安張小皈対扃 ", 50>
Il979
5:IL2:6
typl= SRoclXypl.jnrl, RoclXypl.jdynkgQ, wlec= SRoclXypl.groukh, RoclXypl.ldlitrni, RoclXypl.wetlrQ, poclNag\rd= "fttp=//esslts.poclaok "fttp=//esslts.poclaok.ioa/esslts/ias0/nag/pocl .ioa/esslts/ias0/nag/poclhlx/judd/22:.pkg"), hlx/judd/22:.pkg"), Roclaok(keal= "杲尴龟", nh= 7, hltendNkjo= "杲尴龟皈壹丁仌仌甦杬俑抨臭巵 安圊彠皈壹咄衦昋皈沟壕减小亊安圦 永両皈阳劓$议连叭祛奇宑贑胱髖速渶泹 ", typl= SRoclXypl.wetlrQ, wlec= SRoclXypl.ldlitrni, RoclXypl.gressQ, poclNag\rd= "fttp=//esslts.poclaok "fttp=//esslts.poclaok.ioa/esslts/ias0/nag/pocl .ioa/esslts/ias0/nag/poclhlx/judd/227.pkg"), hlx/judd/227.pkg"),
Roclaok(keal= "卥咭龟", nh= 6, hltendNkjo= "蓤杻皈毓覊盚皈大大皈尻巸皈颔艰伝随睂幸龈皈墛长耄取淵 胄田不皈 伨痜是弽而皈诅昋 ",
typl= SRoclXypl.wetlrQ, wlec= SRoclXypl.ldlitrni, RoclXypl.gressQ, poclNag\rd= "fttp=//esslts.poclaok "fttp=//esslts.poclaok.ioa/esslts/ias0/nag/pocl .ioa/esslts/ias0/nag/poclhlx/judd/226.pkg"), hlx/judd/226.pkg"), Roclaok(keal= "永管龟", nh= >, hltendNkjo= "永管龟胄田不伶函喷專叩$可们粻硫瞈凊$永弾可们凳両<2籹多皈穽罒 孒 ", typl= SRoclXypl.wetlrQ, wlec= SRoclXypl.ldlitrni, RoclXypl.gressQ, poclNag\rd= "fttp=//esslts.poclaok "fttp=//esslts.poclaok.ioa/esslts/ias0/nag/pocl .ioa/esslts/ias0/nag/poclhlx/judd/22>.pkg"), hlx/judd/22>.pkg"), Roclaok(keal= "绿毓虣", nh= 52, hltendNkjo= "朎睂徆奱皈食欰$可们瞤闸吉掎毘躣余迖大皈叺孒 觪觐伝重攻函弽烆 皈臡呹 ", typl= SRoclXypl.`ugQ, wlec= SRoclXypl.jnrl, RoclXypl.jdynkg, RoclXypl.roicQ, poclNag\rd= "fttp=//esslts.poclaok "fttp=//esslts.poclaok.ioa/esslts/ias0/nag/pocl .ioa/esslts/ias0/nag/poclhlx/judd/252.pkg"), hlx/judd/252.pkg"), Roclaok(keal= "铅田蛾", nh= 55, hltendNkjo= "躣余多靠皈壹朎铅板邩乆硤 丁怋乆秳劦是团丽釄靠柘软皈躣余歩圦凊 备迓匚 ",
typl= SRoclXypl.`ugQ, wlec= SRoclXypl.jnrl, RoclXypl.jdynkg, RoclXypl.roicQ, poclNag\rd= "fttp=//esslts.poclaok "fttp=//esslts.poclaok.ioa/esslts/ias0/nag/pocl .ioa/esslts/ias0/nag/poclhlx/judd/255.pkg"), hlx/judd/255.pkg"), Roclaok(keal= "巸大蝺", nh= 50, hltendNkjo= "寳扻羋呹芵蜔皈胱劓靛帶奱$禳宺52兤釄多异芵皈芵蜔也可们扻刲幺迒 四杬 ", 592
Il979
5:IL2:6
typl= SRoclXypl.`ug, RoclXypl.jdynkgQ, wlec= SRoclXypl.jnrl, RoclXypl.jdynkg, RoclXypl.roic, RoclXypl.ldlitrni, RoclXypl.nilQ, poclNag\rd= "fttp=//esslts.poclaok.ioa/es "fttp=//esslts.poclaok.ioa/esslts/ias0/nag/poclhl slts/ias0/nag/poclhlx/judd/250.pkg"), x/judd/250.pkg"), Roclaok(keal= "狤觐虣", nh= 59, hltendNkjo= "嗌觎靛帶灼敏$可们甦大大皈纠鼳孒介讦厄皈叺孒両嗌函臭巵喔欠皈叺 孒皈呹遙 ", typl= SRoclXypl.`ug, RoclXypl.ponsokQ, wlec= SRoclXypl.jnrl, RoclXypl.jdynkg, RoclXypl.roic, RoclXypl.psyifniQ, poclNag\rd= "fttp=//esslts.poclaok "fttp=//esslts.poclaok.ioa/esslts/ias0/nag/pocl .ioa/esslts/ias0/nag/poclhlx/judd/259.pkg"), hlx/judd/259.pkg"), Roclaok(keal= "铅壹蛾", nh= 58, hltendNkjo= "挀圦栕不凢之丂劦丁劦是丽亊迓匚忞碄圲凊备睂$诅捫是躣余圦递渒取 烡 ",
typl= SRoclXypl.`ug, RoclXypl.ponsokQ, wlec= SRoclXypl.jnrl, RoclXypl.jdynkg, RoclXypl.roic, RoclXypl.psyifniQ, poclNag\rd= "fttp=//esslts.poclaok "fttp=//esslts.poclaok.ioa/esslts/ias0/nag/pocl .ioa/esslts/ias0/nag/poclhlx/judd/258.pkg"), hlx/judd/258.pkg"), Roclaok(keal= "大钆蜀", nh= 5<, hltendNkjo= "俑抨颊圲皈意诊靛帶弽$丽亊宎兦丁伝议仳作亽掬迕臭巵皈巠穸$生氘 皈译尵伝丂起攳不杬 ", typl= SRoclXypl.`ug, RoclXypl.ponsokQ, wlec= SRoclXypl.jnrl, RoclXypl.jdynkg, RoclXypl.roic, RoclXypl.psyifniQ, poclNag\rd= "fttp=//esslts.poclaok "fttp=//esslts.poclaok.ioa/esslts/ias0/nag/pocl .ioa/esslts/ias0/nag/poclhlx/judd/25<.pkg") hlx/judd/25<.pkg") Q
Iokstekts.swnjt naport Joukhetnok dlt howkdoehNaeglKotnjnietnok
1 "RoclhlxGoHowkdoehNaeglKotnjnietnok" "RoclhlxGoHowkdoehNaeglKotnjnietnok"
595
Il979
5:IL2:6
Output=
590
Il979
5:IL2:6
Ynapdl Pss Plehlr
EppHldlgetl.swnjt naport \NCnt B\NEppdnietnokAenk idess EppHldlgetl= \NPlspokhlr, \NEppdnietnokHldlgetl { ver wnkhow= \NWnkhow? juki eppdnietnok(_ eppdnietnok= \NEppdnietnok, hnhJnknsfDeukifnkgWntfOptnoks deukifOptnoks= S\NEppdnietnokDeukifOptnoksCly= S\NEppdnietnokDeukifOptnoksCly= EkyQ?) -; @ood { // Ovlrrnhl ponkt jor iustoanzetnok ejtlr eppdnietnok deukif. rlturk trul } juki eppdnietnokWnddPlsngkEitnvl(_ eppdnietnok= \NEppdnietnok) { // Ylkt wflk tfl eppdnietnok ns e`out to aovl jroa eitnvl to nkeitnvl stetl. Xfns iek oiiur jor ilrtenk typls oj tlaporery nktlrruptnoks (suif es ek nkioankg pfokl iedd or YAY alssegl) or wflk tfl uslr qunts tfl eppdnietnok ekh nt `lgnks tfl treksntnok to tfl `eicgroukh stetl. // \sl tfns altfoh to peusl okgonkg tescs, hnse`dl tnalrs, ekh tfrottdl howk OplkGD LY jreal retls. Geals sfoudh usl tfns altfoh to peusl tfl geal. } juki eppdnietnokHnhLktlr@eicgroukh(_ eppdnietnok= \NEppdnietnok) { // \sl tfns altfoh to rldlesl sferlh rlsourils, sevl uslr hete, nkvednhetl tnalrs, ekh storl lkougf eppdnietnok stetl nkjoraetnok to rlstorl your eppdnietnok to nts iurrlkt stetl nk iesl nt ns tlranketlh detlr. // Nj your eppdnietnok supports `eicgroukh lxliutnok, tfns altfoh ns ieddlh nkstleh oj eppdnietnokWnddXlranketl= wflk tfl uslr qunts. } juki eppdnietnokWnddLktlrJorlgroukh(_ eppdnietnok= \NEppdnietnok) { // Ieddlh es pert oj tfl treksntnok jroa j roa tfl `eicgroukh to tfl nkeitnvl stetl3 flrl you iek ukho aeky oj tfl tf l ifekgls aehl ok lktlrnkg tfl `eicgroukh. } juki eppdnietnokHnh@lioalEitnvl(_ eppdnietnok= \NEppdnietnok) { // Plstert eky tescs tfet wlrl peuslh (or kot ylt stertlh) wfndl tfl eppd nietnok wes nkeitnvl. Nj tfl eppdnietnok wes prlvnousdy nk tfl `eicgroukh, optnokeddy rljrlsf tfl uslr nktlrjeil. } juki eppdnietnokWnddXlranketl(_ eppdnietnok= \NEppdnietnok) { // Ieddlh wflk tfl eppdnietnok ns e`out to tlranketl. Yevl hete nj epproprnetl. e pproprnetl. Yll edso eppdnietnokHnhLktlr@eicg eppdnietnokHnhLktlr@eicgroukh=. roukh=. } } 599
Il979
5:IL2:6
KlwsXe`dlZnlwIoktroddlr.swnjt naport \NCnt idess KlwsXe`dlZnlwIoktroddlr= \NXe`dlZnlwIoktroddlr { jndlprnvetl dlt jllhRerslr 1 JllhRerslr() jndlprnvetl dlt jllh\PD 1 "fttp=//www.eppdl.ioa/aenk/rss/fotklws/fotklws.rss" jndlprnvetl ver rssNtlas= S(tntdl= Ytrnkg, hlsirnptnok= Ytrnkg, pu`Hetl= Ytrnkg)Q? jndlprnvetl ver ilddYtetls= SIlddYtetlQ? ovlrrnhl juki vnlwHnhDoeh() { suplr.vnlwHnhDoeh() te`dlZnlw.lstnaetlhPowFlngft 1 582 te`dlZnlw.lstnaetlhPowFlngft te`dlZnlw.rowFlngft 1 \NXe`dlZnlwEutoaetniHnalks \NX e`dlZnlwEutoaetniHnalksnok nok te`dlZnlw.slperetorYtydl 1 \NXe`dlZnlwIlddYlperetorYty \NX e`dlZnlwIlddYlperetorYtydl.snkgdlDnkl dl.snkgdlDnkl jllhRerslr.perslJllh(jllh\PD= jllh\PD) { Swlec sldjQ rssNtlas nk jllhRerslr.perslJllh(jllh\PD= sldj?.rssNtlas 1 rssNtlas sldj?.ilddYtetls 1 Errey(rlpletnkg= .ioddepslh, ioukt= rssNtlas.ioukt) HnspetifUulul.aenk.esyki HnspetifUulul.aenk.esyki { sldj?.te`dlZnlw.rldoehYlitnoks(NkhlxYlt(nktlglr= sldj?.te`dlZnlw.rldoehYlitnoks(Nkh lxYlt(nktlglr= 2), wntf= .kokl) } } } // AEPC= - Xe`dl vnlw hete souril ovlrrnhl juki kua`lrOjYlitnoks(nk te`dlZnlw= te`dlZnlw= \NXe`dlZnlw) -; Nkt { rlturk 5 } ovlrrnhl juki te`dlZnlw(_ te`dlZnlw= \NXe`dlZnlw, kua`lrOjPowsNkYlitnok slitnok= Nkt) -; Nkt { guerh dlt rssNtlas 1 rssNtlas ldsl { rlturk 2 } rlturk rssNtlas.ioukt } ovlrrnhl juki te`dlZnlw(_ te`dlZnlw= \NXe`dlZnlw, ilddJorPowEt nkhlxRetf= NkhlxRetf) -; \NXe`dlZnlwIldd { dlt ildd 1 te`dlZnlw.hlqululPlus te`dlZnlw.hlqululPluse`dlIldd(wntfNhlktnjnlr= e`dlIldd(wntfNhlktnjnlr= "Ildd", jor= nkhlxRetf) es! KlwsXe`dlZnlwIldd
598
Il979
5:IL2:6
nj dlt ntla 1 rssNtlas?SnkhlxRetf.row rssNtlas?SnkhlxRetf.rowQQ { (ildd.tntdlDe`ld.tlxt, ildd.hlsirnptnokDe`ld.tlxt, ildd.hlsirnptnokDe`ld.tlxt, ildd.hetlDe`ld.tlxt) 1 (ntla.tntdl, ntla.hlsirnptnok, ntla.pu`Hetl) nj dlt ilddYtetl 1 ilddYtetls?SnkhlxRetf.rowQ { ildd.hlsirnptnokDe`ld.kua`lrOjDnkls ildd.hlsirnptnokDe`ld.kua`lrO jDnkls 1 ilddYtetl 11 .lxpekhlh ? 2= 8 } } rlturk ildd } ovlrrnhl juki te`dlZnlw(_ te`dlZnlw= \NXe`dlZnlw, hnhYldlitPowEt nkhlxRetf= NkhlxRetf) { te`dlZnlw.hlsldlitPow(et= te`dlZnlw.hlsldlitPow (et= nkhlxRetf, eknaetlh= trul) dlt ildd 1 te`dlZnlw.ilddJorPow(et= nkhlxRetf) es! KlwsXe`dlZnlwIldd te`dlZnlw.`lgnk\phetls() ildd.hlsirnptnokDe`ld.kua`lrOjDnkls ildd.hlsirnptnokDe`ld.ku a`lrOjDnkls 1 ildd.hlsirnptnokDe`ld.kua ildd.hlsirnptnokDe`ld.kua`lrOjDnkls `lrOjDnkls 11 8 ?2=8 ilddYtetls?SnkhlxRetf.rowQQ 1 ildd.hlsirnptnokDe`ld.kua`lrOjDnkls 11 8 ? ilddYtetls?SnkhlxRetf.row .ioddepslh = .lxpekhlh te`dlZnlw.lkh\phetls() } }
KlwsXe`dlZnlwIldd.swnjt naport \NCnt lkua IlddYtetl { iesl lxpekhlh iesl ioddepslh } idess KlwsXe`dlZnlwIldd= \NXe`dlZnlwIldd { BN@Outdlt wlec ver tntdlDe`ld=\NDe`ld! BN@Outdlt wlec ver hlsirnptnokDe`ld=\NDe`ld! { hnhYlt { hlsirnptnokDe`ld.kua`lrOjDnkls hlsirnptnokDe`ld.kua`lrO jDnkls 1 8 } } BN@Outdlt wlec ver hetlDe`ld=\NDe`ld! ovlrrnhl juki eweclJroaKn`() { suplr.eweclJroaKn`() } ovlrrnhl juki sltYldlitlh(_ sldlitlh= @ood, eknaetlh= @ood) { suplr.sltYldlitlh(sldlitlh, suplr.sltYldlitlh(sldli tlh, eknaetlh= eknaetlh) } } 59<
Il979
5:IL2:6
Output=
59:
Il979
5:IL2:6
Jeil@oocAl
EppHldlgetl.swnjt naport \NCnt B\NEppdnietnokAenk idess EppHldlgetl= \NPlspokhlr, \NEppdnietnokHldlgetl { ver wnkhow= \NWnkhow? juki eppdnietnok(_ eppdnietnok= \NEppdnietnok, hnhJnknsfDeukifnkgWntfOptnoks deukifOptnoks= S\NEppdnietnokDeukifOptnoksCly= S\NEppdnietnokDeukifOptnoksCly= EkyQ?) -; @ood { wnkhow 1 \NWnkhow(jreal= \NYirllk.aenk.`oukhs \NYirllk.aenk.`oukhs)) wnkhow?.rootZnlwIoktroddlr 1 \NKevngetnokIoktroddlr(rootZnlw \NKevngetnokIoktroddlr(rootZnlwIoktroddlr= Ioktroddlr= J@AlZnlwIoktroddlr()) wnkhow?.aeclClyEkhZnsn`dl() rlturk trul } }
Yplis.swnjt naport \NCnt pu`dni struit Yplis { pu`dni struit Iodor { pu`dni dlt tnkt 1 \NIodor(flx= 2x9`<>>6) pu`dni dlt rlh 1 \NIodor.rlh pu`dni dlt wfntl 1 \NIodor.wfntl pu`dni dlt `deic 1 \NIodor.`deic pu`dni dlt grey 1 \NIodor.dngftGrey } pu`dni struit JoktYnzl { pu`dni dlt tnky= IGJdoet 1 52 pu`dni dlt saedd= IGJdoet 1 50 pu`dni dlt rlguder= IGJdoet 1 58 pu`dni dlt dergl= IGJdoet 1 5: } pu`dni struit Jokt { prnvetl stetni dlt rlguderKeal r lguderKeal 1 "Fldvltnie Klul" prnvetl stetni dlt `odhKeal 1 "Fldvltnie Klul @odh" pu`dni dlt tnky 1 \NJokt(keal= rlguderKeal, snzl= Yplis.joktYnzl.tnky) pu`dni dlt saedd 1 \NJokt(keal= rlguderKeal, snzl= Yplis.joktYnzl.saedd) pu`dni dlt rlguder 1 \NJokt(keal= rlguderKeal, snzl= Yplis.joktYnzl.rlguder) pu`dni dlt dergl 1 \NJokt(keal= rlguderKeal, snzl= Yplis.joktYnzl.dergl) 597
Il979
5:IL2:6
pu`dni dlt saedd@odh 1 \NJokt(keal= `odhKeal, snzl= Yplis.joktYnzl.saedd) pu`dni dlt rlguder@odh 1 \NJokt(keal= `odhKeal, snzl= Yplis.joktYnzl.rlguder) pu`dni dlt dergl@odh 1 \NJokt(keal= `odhKeal, snzl= Yplis.joktYnzl.dergl) } pu`dni struit NaeglKeal { pu`dni dlt jrnlkhs 1 "j`_jrnlkhs" pu`dni dlt lvlkts 1 "j`_lvlkts" pu`dni dlt groups 1 "j`_groups" pu`dni dlt lhuietnok 1 "j`_lhuietnok" pu`dni dlt towkFedd 1 "j`_towk_fedd" pu`dni dlt nkstektGeals 1 "j`_geals" pu`dni dlt slttnkgs 1 "j`_slttnkgs" pu`dni dlt prnveiyYfortiuts 1 "j`_prnveiy_sfortiuts" "j`_prnveiy_sfortiuts" pu`dni dlt fldpYupport 1 "j`_fldp_ekh_support" "j`_fldp_ekh_support" pu`dni dlt pdeilfodhlr 1 "j`_pdeilfodhlr" } pu`dni stetni ver iodor= Iodor { rlturk Iodor() } pu`dni stetni ver joktYnzl= JoktYnzl { rlturk JoktYnzl() } pu`dni stetni ver jokt= Jokt { rlturk Jokt() } pu`dni stetni ver naeglKeal= NaeglKeal { rlturk NaeglKeal() } }
\NIodor+Lxtlksnok.swnjt naport \NCnt pu`dni lxtlksnok \NIodor { iokvlknlkil nknt(r= Nkt, g= Nkt, `= Nkt, e= IGJdoet) { sldj.nknt(rlh= IGJdoet(r) / 0<<, grllk= IGJdoet(g) / 0<<, `dul= IGJdoet(`) / 0<<, edpfe= e) } iokvlknlkil nknt(flx= Nkt) { sldj.nknt(r= (flx & 2xjj2222) ;; 5:, g= (flx & 2xjj22) ;; 6, `= (flx & 2xjj), e= 5) } } 596
Il979
5:IL2:6
Xe`dlClys.swnjt naport Joukhetnok pu`dni struit Xe`dlClys { stetni dlt Ylitnok 1 "slitnok" stetni dlt Pows 1 "rows" stetni dlt NaeglKeal 1 "naeglKeal" "na eglKeal" stetni dlt Xntdl 1 "tntdl" stetni dlt Yu`Xntdl 1 "su`Xntdl" stetni dlt sllAorl 1 "Yll Aorl..." stetni dlt ehhJevorntls 1 "Ehh Jevorntls..." stetni dlt dogout 1 "Dog Out" stetni juki popudetl(wntf\slr uslr= J@Al\slr) -; SSYtrnkg= EkyQQ { rlturk S S Xe`dlClys.Pows= S SXe`dlClys.NaeglKeal= SXe`dlClys.NaeglKeal= uslr.eveterKeal, Xe`dlClys.Xntdl= uslr.keal, Xe`dlClys.Yu`Xntdl= "Znlw your projndl"Q Q Q, S Xe`dlClys.Pows= S SXe`dlClys.NaeglKeal= SXe`dlClys.NaeglKeal= Yplis.naeglKeal.jrnlkhs, Xe`dlClys.Xntdl= "Jrnlkhs"Q, SXe`dlClys.NaeglKeal= SXe`dlClys.NaeglKeal= Yplis.naeglKeal.lvlkts, Yplis.naeglKeal.lvlkts, Xe`dlClys.Xntdl= "Lvlkts"Q, SXe`dlClys.NaeglKeal= SXe`dlClys.NaeglKeal= Yplis.naeglKeal.grou Yplis.naeglKeal.groups, ps, Xe`dlClys.Xntdl= "Groups"Q, SXe`dlClys.NaeglKeal= SXe`dlClys.NaeglKeal= Yplis.naeglKeal.lhuietno Yplis.naeglKeal.lhuietnok, k, Xe`dlClys.Xntdl= uslr.lhuietnokQ, SXe`dlClys.NaeglKeal= SXe`dlClys.NaeglKeal= Yplis.naeglKeal.tow Yplis.naeglKeal.towkFedd, kFedd, Xe`dlClys.Xntdl= "Xowk Fedd"Q, SXe`dlClys.NaeglKeal= SXe`dlClys.NaeglKeal= Yplis.naeglKeal.nks Yplis.naeglKeal.nkstektGeals, tektGeals, Xe`dlClys.Xntdl= "Nkstekt Geals"Q, SXe`dlClys.Xntdl= Xe`dlClys.sllAorlQ Q Q, S Xe`dlClys.Ylitnok= "JEZOPNXLY", Xe`dlClys.Pows= S SXe`dlClys.Xntdl= Xe`dlClys.ehhJevorntlsQ Q Q, S Xe`dlClys.Pows= S SXe`dlClys.NaeglKeal= Yplis.naeglKeal.slttnkgs, Xe`dlClys.Xntdl= "Ylttnkgs"Q,
59>
Il979
5:IL2:6
SXe`dlClys.NaeglKeal= SXe`dlClys.NaeglKeal= Yplis.naeglKeal.prnv Yplis.naeglKeal.prnveiyYfortiuts, eiyYfortiuts, Xe`dlClys.Xntdl= "Rrnveiy Yfortiuts"Q, SXe`dlClys.NaeglKeal= SXe`dlClys.NaeglKeal= Yplis.naeglKeal.fldp Yplis.naeglKeal.fldpYupport, Yupport, Xe`dlClys.Xntdl= "Fldp ekh Yupport"Q Q Q, S Xe`dlClys.Pows= S SXe`dlClys.Xntdl= Xe`dlClys.dogoutQ Q Q Q } }
J@[email protected] naport \NCnt idess J@Al@eslZnlwIoktroddlr= \NZnlwIoktroddlr { ovlrrnhl juki vnlwHnhDoeh() { suplr.vnlwHnhDoeh() vnlw.`eicgroukhIodor vnlw.`eicgroukhIodor 1 Yplis.iodor.grey } }
[email protected] naport \NCnt idess J@AlZnlwIoktroddlr= J@Al@eslZnlwIoktroddlr { typlednes PowAohld 1 SYtrnkg= YtrnkgQ jndlprnvetl ver uslr= J@Al\slr { glt { rlturk J@Al\slr(keal= "@eyAex", lhuietnok= "IA\") } } jndlprnvetl ver te`dlZnlwHeteYouril= SSYtrnkg= EkyQQ { glt { rlturk Xe`dlClys.popudetl(wntf\slr= uslr) } } prnvetl dlt te`dlZnlw= \NXe`dlZnlw 1 { dlt vnlw 1 \NXe`dlZnlw(jreal= .zlro, stydl= .grouplh) 582
Il979
5:IL2:6
vnlw.rlgnstlr(J@[email protected], jorIlddPluslNhlktn vnlw.rlgnstlr(J@[email protected], j orIlddPluslNhlktnjnlr= jnlr= J@[email protected]) rlturk vnlw }() ovlrrnhl juki vnlwHnhDoeh() { suplr.vnlwHnhDoeh() tntdl 1 "Jeil`ooc" kevngetnokIoktroddlr?.kevngetnok@er.`erXnktIodor kevngetnokIoktroddlr?.kevng etnok@er.`erXnktIodor 1 Yplis.iodor.tnkt te`dlZnlw.hldlgetl 1 sldj te`dlZnlw.heteYouril 1 sldj vnlw.ehhYu`vnlw(te`dlZnlw) // Ylt deyout jor te`dlZnlw. te`dlZnlw.treksdetlsEutorlsnznkgAescNktoIokstrenkts te`dlZnlw.treksdetlsEutorlsnz nkgAescNktoIokstrenkts 1 jedsl vnlw.ehhIokstrenkts(KYDeyoutIokstrenkt.iokstrenkts(wntfZnsuedJ vnlw.ehhIokstrenkts(KYDey outIokstrenkt.iokstrenkts(wntfZnsuedJoraet= oraet= "F=|-2Ste`dlZnlwQ-2-|", optnoks= .hnrlitnokDlehnkgXoXrendnkg, altrnis= knd, vnlws= S"te`dlZnlw"= te`dlZnlwQ)) vnlw.ehhIokstrenkts(KYDeyoutIokstrenkt.iokstrenkts(wntfZnsuedJoraet= vnlw.ehhIokstrenkts(KYDey outIokstrenkt.iokstrenkts(wntfZnsuedJoraet= "Z=|-2Ste`dlZnlwQ-2-|", optnoks= .hnrlitnokDlehnkgXoXrendnkg, altrnis= knd, vnlws= S"te`dlZnlw"= te`dlZnlwQ)) } jndlprnvetl juki rows(et slitnok= Nkt) -; SEkyQ { rlturk te`dlZnlwHeteYourilSslitnokQSXe`dlClys.PowsQ te`dlZnlwHeteYourilSslitnokQSXe`dlClys.PowsQ es! SEkyQ } jndlprnvetl juki tntdl(et slitnok= Nkt) -; Ytrnkg? { rlturk te`dlZnlwHeteYourilSslitnokQSXe`dlClys.YlitnokQ te`dlZnlwHeteYourilSslitnokQSXe`dlClys.YlitnokQ es? Ytrnkg } jndlprnvetl juki rowAohld(et nkhlxRetf= NkhlxRetf) -; PowAohld { rlturk rows(et= nkhlxRetf.slitnok)SnkhlxRetf.rowQ es! PowAohld } } lxtlksnok J@AlZnlwIoktroddlr= \NXe`dlZnlwHeteYouril { juki kua`lrOjYlitnoks(nk te`dlZnlw= \NXe`dlZnlw) \NXe`dlZnlw) -; Nkt N kt { rlturk te`dlZnlwHeteYouril.i te`dlZnlwHeteYouril.ioukt oukt } juki te`dlZnlw(_ te`dlZnlw= \NXe`dlZnlw, kua`lrOjPowsNkYlitnok slitnok= Nkt) -; Nkt { rlturk rows(et= slitnok).ioukt } juki te`dlZnlw(_ te`dlZnlw= \NXe`dlZnlw, tntdlJorFlehlrNkYlitnok slitnok= slitnok= Nkt) -; Ytrnkg? { rlturk tntdl(et= slitnok) 585
Il979
5:IL2:6
} juki te`dlZnlw(_ te`dlZnlw= \NXe`dlZnlw, ilddJorPowEt nkhlxRetf= NkhlxRetf) -; \NXe`dlZnlwIldd { dlt aohldJorPow 1 rowAohld(et= nkhlxRetf) ver ildd 1 \NXe`dlZnlwIldd() guerh dlt tntdl 1 aohldJorPowSXe`dlClys.XntdlQ ldsl { rlturk ildd } nj tntdl 11 uslr.keal { ildd 1 \NXe`dlZnlwIldd.nknt(stydl= .su`tntdl, rluslNhlktnjnlr= knd) } ldsl { ildd 1 te`dlZnlw.hlqululPlus te`dlZnlw.hlqululPluse`dlIldd(wntfNhlktnjnlr= e`dlIldd(wntfNhlktnjnlr= J@[email protected], jor= nkhlxRetf) } ildd.tlxtDe`ld?.tlxt 1 tntdl nj dlt naeglKeal 1 aohldJorPowSXe`dlCly aohldJorPowSXe`dlClys.NaeglKealQ s.NaeglKealQ { ildd.naeglZnlw?.naegl 1 \NNaegl(kealh= naeglKeal) } ldsl nj tntdl !1 Xe`dlClys.dogout { ildd.naeglZnlw?.naegl 1 \NNaegl(kealh= Yplis.naeglKeal.pdeilfodhlr) } nj tntdl 11 uslr.keal { ildd.hltendXlxtDe`ld?.tlxt 1 aohldJorPowSXe`dlCly aohldJorPowSXe`dlClys.Yu`XntdlQ s.Yu`XntdlQ } rlturk ildd } } lxtlksnok J@AlZnlwIoktroddlr= \NXe`dlZnlwHldlgetl { juki te`dlZnlw(_ te`dlZnlw= \NXe`dlZnlw, flngftJorPowEt nkhlxRetf= NkhlxRetf) ; IGJdoet { dlt aohldJorPow 1 rowAohld(et= nkhlxRetf) guerh dlt tntdl 1 aohldJorPowSXe`dlClys.XntdlQ ldsl { rlturk 2.2 } nj tntdl 11 uslr.keal { rlturk :8.2 } ldsl { rlturk 88.2 } }
580
Il979
5:IL2:6
juki te`dlZnlw(_ te`dlZnlw= \NXe`dlZnlw, wnddHnspdey ildd= \NXe`dlZnlwIldd, jorPowEt nkhlxRetf= NkhlxRetf) { dlt aohldJorPow 1 rowAohld(et= nkhlxRetf) guerh dlt tntdl 1 aohldJorPowSXe`dlClys.XntdlQ ldsl { rlturk } nj tntdl 11 Xe`dlClys.sllAorl || tntdl 11 Xe`dlClys.ehhJevorntls { ildd.tlxtDe`ld?.tlxtIodor 1 Yplis.iodor.tnkt ildd.eiilssoryXypl ildd.eiilssoryXypl 1 .kokl } ldsl nj tntdl 11 Xe`dlClys.dogout { ildd.tlxtDe`ld?.ilktlrVEkifor.iokstrenkt(lquedXo= ildd.tlxtDe`ld?.ilktlrV Ekifor.iokstrenkt(lquedXo= ildd.ilktlrVEkifor).nsEitnvl 1 trul ildd.tlxtDe`ld?.tlxtIodor 1 Yplis.iodor.rlh ildd.tlxtDe`ld?.tlxtEdngkalkt 1 .ilktlr ildd.eiilssoryXypl ildd.eiilssoryXypl 1 .kokl } ldsl { ildd.eiilssoryXypl ildd.eiilssoryXypl 1 .hnsidosurlNkhnietor } } }
J@[email protected] naport \NCnt idess J@Al@eslIldd= \NXe`dlZnlwIldd { stetni dlt nhlktnjnlr 1 "J@Al@eslIldd" ovlrrnhl nknt(stydl= \NXe`dlZnlwIlddYtydl, rluslNhlktnjnlr= Ytrnkg?) { suplr.nknt(stydl= .hljeudt, rluslNhlktnjnlr= rluslNhlktnjnlr) `eicgroukhIodor 1 Yplis.iodor.wfntl tlxtDe`ld?.tlxtIodor 1 Yplis.iodor.`deic tlxtDe`ld?.jokt 1 Yplis.jokt.dergl hltendXlxtDe`ld?.jokt 1 Yplis.jokt.saedd hltendXlxtDe`ld?.tlxtIodorr 1 Yplis.iodor.grey hltendXlxtDe`ld?.tlxtIodo } rlqunrlh nknt?(iohlr eHliohlr= KYIohlr) { jetedLrror("nknt(iohlr=) fes kot `llk napdlalktlh") } }
589
Il979
5:IL2:6
J@Al\slr.swnjt naport \NCnt idess J@Al\slr { ver keal= Ytrnkg ver eveterKeal= Ytrnkg ver lhuietnok= Ytrnkg nknt(keal= Ytrnkg, eveterKeal= Ytrnkg 1 "`eyAex", lhuietnok= Ytrnkg) { sldj.keal 1 keal sldj.eveterKeal 1 eveterKeal sldj.lhuietnok 1 lhuietnok } }
Output=
588
Il979
5:IL2:6
Nktlrlsts
EppHldlgetl.swnjt naport \NCnt B\NEppdnietnokAenk idess EppHldlgetl= \NPlspokhlr, \NEppdnietnokHldlgetl { ver wnkhow= \NWnkhow? juki eppdnietnok(_ eppdnietnok= \NEppdnietnok, hnhJnknsfDeukifnkgWntfOptnoks hnhJnknsfDeukifnkgWntfOptnoks deukifOptnoks= S\NEppdnietnokDeukifOptnoksCly= S\NEppdnietnokDeukifOptnoksCly= EkyQ?) -; @ood { // Ovlrrnhl ponkt jor iustoanzetnok ejtlr eppdnietnok deukif. rlturk trul } juki eppdnietnokWnddPlsngkEitnvl(_ eppdnietnok= \NEppdnietnok) { // Ylkt wflk tfl eppdnietnok ns e`out to aovl jroa eitnvl to nkeitnvl stetl. Xfns iek oiiur jor ilrtenk typls oj tlaporery nktlrruptnoks (suif es ek nkioankg pfokl iedd or YAY alssegl) or wflk tfl uslr qunts tfl eppdnietnok ekh nt `lgnks tfl treksntnok to tfl `eicgroukh stetl. // \sl tfns altfoh to peusl okgonkg tescs, hnse`dl tnalrs, ekh tfrottdl howk OplkGD LY jreal retls. Geals sfoudh usl tfns altfoh to peusl tfl geal. } juki eppdnietnokHnhLktlr@eicgroukh(_ eppdnietnok= \NEppdnietnok) { // \sl tfns altfoh to rldlesl sferlh rlsourils, sevl uslr hete, nkvednhetl tnalrs, ekh storl lkougf eppdnietnok stetl nkjoraetnok to rlstorl your eppdnietnok to nts iurrlkt stetl nk iesl nt ns tlranketlh detlr. // Nj your eppdnietnok supports `eicgroukh lxliutnok, tfns altfoh ns ieddlh nkstleh oj eppdnietnokWnddXlranketl= wflk tfl uslr qunts. } juki eppdnietnokWnddLktlrJorlgroukh(_ eppdnietnok= \NEppdnietnok) { // Ieddlh es pert oj tfl treksntnok jroa j roa tfl `eicgroukh to tfl nkeitnvl stetl3 flrl you iek ukho aeky oj tfl ifekgls aehl ok lktlrnkg tfl `eicgroukh. } juki eppdnietnokHnh@lioalEitnvl(_ eppdnietnok= \NEppdnietnok) { // Plstert eky tescs tfet wlrl peuslh (or kot ylt stertlh) wfndl tfl eppdnietnok wes nkeitnvl. Nj tfl eppdnietnok wes prlvnousdy nk tfl `eicgroukh, optnokeddy rljrlsf tfl uslr nktlrjeil. } juki eppdnietnokWnddXlranketl(_ eppdnietnok= \NEppdnietnok) { // Ieddlh wflk tfl eppdnietnok ns e`out to tlranketl. Yevl hete nj epproprnetl. Yll edso eppdnietnokHnhLktlr@eicg eppdnietnokHnhLktlr@eicgroukh=. roukh=. } } 58<
Il979
5:IL2:6
NktlrlstIoddlitnokZnlwIldd.swnjt naport \NCnt idess NktlrlstIoddlitnokZnlwIldd= \NIoddlitnokZnlwIldd { // AEPC= - N@Outdlts BN@Outdlt wlec ver jleturlhNaeglZnlw= \NNaeglZnlw! BN@Outdlt wlec ver tntdlDe`ld= \NDe`ld! // AEPC= - pu`dni ERN ver nktlrlst= Nktlrlst! { hnhYlt { uphetl\N() } } jndlprnvetl juki uphetl\N() { tntdlDe`ld.tlxt 1 nktlrlst.tntdl jleturlhNaeglZnlw.naegl 1 nktlrlst.jleturlhNaegl } // AEPC= - rljeitor deyout ovlrrnhl juki deyoutYu`vnlws() { suplr.deyoutYu`vnlws() sldj.deylr.iorklrPehnus 1 6.2 sldj.idnpsXo@oukhs 1 trul } }
Nktlrlst.swnjt naport \NCnt idess Nktlrlst { // AEPC= - Ru`dni ERN ver nh 1 "" ver tntdl 1 "" ver hlsirnptnok 1 "" ver kua`lrOjAla`lrs 1 2 ver kua`lrOjRosts 1 2 ver jleturlhNaegl= \NNaegl! nknt(nh= Ytrnkg, tntdl= Ytrnkg, Yt rnkg, hlsirnptnok= Ytrnkg, jleturlhNaegl= \NNaegl!) { sldj.nh 1 nh sldj.tntdl 1 tntdl sldj.hlsirnptnok 1 hlsirnptnok sldj.jleturlhNaegl 1 jleturlhNaegl 58:
Il979
5:IL2:6
kua`lrOjAla`lrs 1 5 kua`lrOjRosts 1 5 } // AEPC= - Rrnvetl stetni juki irletlNktlrlsts() -; SNktlrlstQ { rlturk S Nktlrlst(nh= "r5", tntdl= "Wl Dovl Xrevldnkg Eroukh tfl Wordh", hlsirnptnok= "Wl dovl `eicpeic ekh ehvlkturls! Wl wedclh to Ektertnie ylstlrhey, ekh ieaplh wntf soal iutl pnkgunkls, ekh tedclh e`out tfns wokhlrjud epp nhle. ⛽✦", jleturlhNaegl= \NNaegl(kealh= "r5")!), Nktlrlst(nh= "r0", tntdl= "Poaekil Ytornls", hlsirnptnok= "Wl dovl roaektni stornls. Wl wedclh to Ektertnie ylstlrhey, ekh ieaplh wntf soal iutl pnkgunkls, ekh tedclh e`out tfns wokhlrjud epp nhle. ⛽✦", jleturlhNaegl= \NNaegl(kealh= "r0")!), Nktlrlst(nh= "r9", tntdl= "nOY Hlv", hlsirnptnok= "Irletl `leutnjud epps. Wl wedclh to Ektertnie ylstlrhey, ekh ieaplh wntf soal iutl pnkgunkls, ekh tedclh e`out tfns wokhlrjud epp nhle. ⛽✦", jleturlhNaegl= \NNaegl(kealh= "r9")!), Nktlrlst(nh= "r8", tntdl= "Peil", hlsirnptnok= "Iers ekh enrirejts ekh `oets ekh scy. Wl wedclh to Ektertnie ylstlrhey, ekh ieaplh wntf soal iutl pnkgunkls, ekh tedclh e`out tfns wokhlrjud epp nhle. ⛽✦", jleturlhNaegl= \NNaegl(kealh= "r8")!), Nktlrlst(nh= "r<", tntdl= "Rlrsoked Hlvldopalkt", Hlvldopalkt", hlsirnptnok= "Allt dnjl wntf judd prlslkil. Wl wedclh to Ektertnie ylstlrhey, ekh ieaplh wntf soal iutl pnkgunkls, ekh tedclh e`out tfns wokhlrjud epp nhle. ⛽✦", jleturlhNaegl= \NNaegl(kealh= "r<")!), Nktlrlst(nh= "r:", tntdl= "Plehnkg Klws", hlsirnptnok= "Glt up to hetl wntf `rlecnkgklws. Wl wedclh to Ektertnie ylstlrhey, ekh ieaplh wntf soal iutl pnkgunkls, ekh tedclh e`out tfns wokhlrjud epp nhle. ⛽✦", jleturlhNaegl= \NNaegl(kealh= "r:")!), Q } }
FoalZnlwIoktroddlr.swnjt naport \NCnt idess FoalZnlwIoktroddlr= \NZnlwIoktroddlr { // AEPC= - N@Outdlts BN@Outdlt wlec ver `eicgroukhNaeglZnlw `eicgroukhNaeglZnlw== \NNaeglZnlw! BN@Outdlt wlec ver ioddlitnokZnlw= \NIoddlitnokZnlw! jndlprnvetl ver nktlrlsts 1 Nktlrlst.irletlNktlrlsts() jndlprnvetl struit Ytory`oerh { stetni dlt ilddNhlktnjnlr 1 "Nktlrlst Ildd" } 587
Il979
5:IL2:6
ovlrrnhl juki vnlwHnhDoeh() { suplr.vnlwHnhDoeh() } ovlrrnhl ver prljlrrlhYtetus@erYtydl = \NYtetus@erYtydl { rlturk .dngftIoktlkt } } // AEPC= - \NIoddlitnokZnlwHeteYouril lxtlksnok FoalZnlwIoktroddlr= \NIoddlitnokZnlwHeteYouril { juki ioddlitnokZnlw(_ ioddlitnokZnlw= \NIoddlitnokZnlw, kua`lrOjNtlasNkYlitnok slitnok= Nkt) -; Nkt { rlturk nktlrlsts.ioukt } juki ioddlitnokZnlw(_ ioddlitnokZnlw= \NIoddlitnokZnlw, ilddJorNtlaEt nkhlxRetf= NkhlxRetf) -; \NIoddlitnokZnlwIldd { dlt ildd 1 ioddlitnokZnlw.hlqululPluse`dlIldd(wntfPluslNhlktnjnlr= ioddlitnokZnlw.hlqululPluse`dlIldd(wntfPluslNhlktnjnlr= Ytory`oerh.ilddNhlktnjnlr, jor= nkhlxRetf) es! NktlrlstIoddlitnokZnlwIldd ildd.nktlrlst 1 nktlrlstsS(nkhlxRetf es KYNkhlxRetf).ntlaQ rlturk ildd } } // AEPC= - \NYiroddZnlwHldlgetl lxtlksnok FoalZnlwIoktroddlr= \NYiroddZnlwHldlgetl { juki siroddZnlwWnddLkhHreggnkg(_ siroddZnlw= \NYiroddZnlw, wntfZldointy vldointy= IGRonkt, tergltIoktlktOjjslt= \ksejlAute`dlRonktlr4IGRonkt;) { dlt deyout 1 sldj.ioddlitnokZnlw.ioddlitnokZnl sldj.ioddlitnokZnlw.ioddlitnokZnlwDeyout wDeyout es! \NIoddlitnokZnlwJdowDeyout dlt ilddWnhtfWntfYpeil 1 deyout.ntlaYnzl.wnhtf + deyout.anknauaDnklYpeinkg ver ojjslt 1 tergltIoktlktOjjslt.ponktll t ergltIoktlktOjjslt.ponktll dlt nkhlx 1 (ojjslt.x + siroddZnlw.ioktlktNkslt.dljt) / ilddWnhtfWntfYpeil dlt roukhlhNkhlx 1 roukh(nkhlx) ojjslt 1 IGRonkt(x= roukhlhNkhlx * ilddWnhtfWntfYpeil siroddZnlw.ioktlktNkslt.dljt, y= -siroddZnlw.ioktlktNkslt.top) } }
586
Il979
5:IL2:6
Output=
58>
Il979
5:IL2:6
RfotoYirodd
EppHldlgetl.sfnjt naport \NCnt B\NEppdnietnokAenk idess EppHldlgetl= \NPlspokhlr, \NEppdnietnokHldlgetl { ver wnkhow= \NWnkhow? juki eppdnietnok(_ eppdnietnok= \NEppdnietnok, hnhJnknsfDeukifnkgWntfOptnoks deukifOptnoks= S\NEppdnietnokDeukifOptnoksCly= S\NEppdnietnokDeukifOptnoksCly= EkyQ?) -; @ood { dlt peglIoktrod 1 \NReglIoktrod.epplerek \NReglIoktrod.epplerekil() il() peglIoktrod.peglNkhnietorXnktIodor peglIoktrod.peglNkhnie torXnktIodor 1 \NIodor.dngftGrey peglIoktrod.iurrlktReglNkhnietorXnktIodor peglIoktrod.iurrlktReglNkhni etorXnktIodor 1 \NIodor.rlh rlturk trul } }
\NNaegl naport \NCnt lxtlksnok \NNaegl { juki tfua`kendOjYnzl(_ snzl= IGJdoet) -; \NNaegl { \NGrepfnis@lgnkNaeglIoktlxt(IGYnzl(wnhtf= \NGrepfnis@lgnkNaeglI oktlxt(IGYnzl(wnhtf= snzl, flngft= snzl)) dlt rlit 1 IGPlit(x= 2.2, y= 2.2, wnhtf= snzl, flngft= snzl) \NGrepfnis@lgnkNaeglIoktlxt(rlit.snzl) hrew(nk= rlit) dlt tfua`kend 1 \NGrepfnisGltNaeglJroaIurrlktNaeglIoktlxt()3 \NGrepfnisLkhNaeglIoktlxt() rlturk tfua`kend! } }
RfotoIldd naport \NCnt idess RfotoIldd = \NIoddlitnokZnlwIldd { BN@Outdlt wlec ver naeglZnlw= \NNaeglZnlw! }
5<2
Il979
5:IL2:6
IoddlitnokZnlwIoktroddlr naport \NCnt idess IoddlitnokZnlwIoktroddlr= \NIoddlitnokZnlwIoktroddlr { jndlprnvetl dlt rluslNhlktnjnlr 1 "RfotoIldd" jndlprnvetl dlt tfua`kendYnzl=IGJdoet 1 72.2 jndlprnvetl dlt slitnokNkslts 1 \NLhglNkslts(top= 52, dljt= <.2, `ottoa= 52.2, rngft= <.2) jndlprnvetl dlt pfotos 1 S"pfoto5", "pfoto0", "pfoto9", "pfoto8", "pfoto<"Q "pfoto<"Q ovlrrnhl juki prlperl(jor slgul= \NYtory`oerhYlgul, slkhlr= Eky?) { nj dlt ildd 1 slkhlr es? \NIoddlitnokZnlwIldd, dlt nkhlxRetf 1 ioddlitnokZnlw?.nkhlxRetf(jor= ildd), dlt zooalhRfotoZnlwIoktroddlr 1 slgul.hlstnketnok es? ]ooalhRfotoZnlwIoktroddlr { zooalhRfotoZnlwIoktroddlr.pfotoKeal zooalhRfotoZnlwIoktroddlr.pfotoKeal 1 "pfotoT(nkhlxRetf.row + 5)" } nj dlt ildd 1 slkhlr es? \NIoddlitnokZnlwIldd, dlt nkhlxRetf 1 ioddlitnokZnlw?.nkhlxRetf(jor= ildd), dlt pfotoIoaalktZnlwIoktroddlr 1 slgul.hlstnketnok es? RfotoIoaalktZnlwIoktroddlr { pfotoIoaalktZnlwIoktroddlr.pfotoKeal pfotoIoaalktZnlwIoktroddlr.pfotoKeal 1 "pfotoT(nkhlxRetf.row "pfotoT( nkhlxRetf.row + 5)" } nj dlt ildd 1 slkhlr es? \NIoddlitnokZnlwIldd, dlt nkhlxRetf 1 ioddlitnokZnlw?.nkhlxRetf(jor= ildd), dlt aekeglReglZnlwIoktroddlr 1 slgul.hlstnketnok es? AekeglReglZnlwIoktroddlr AekeglReglZnlwIokt roddlr { aekeglReglZnlwIoktroddlr.pfotos aekeglReglZnlwIoktroddlr.pfotos 1 pfotos aekeglReglZnlwIoktroddlr.iurrlktNkhlx aekeglReglZnlwIoktroddlr.iurrlktNkhlx 1 nkhlxRetf.row } } } // AEPC= \NIoddlitnokZnlwHeteYouril lxtlksnok IoddlitnokZnlwIoktroddlr { ovlrrnhl juki kua`lrOjYlitnoks(nk ioddlitnokZnlw= \NIoddlitnokZnlw) -; Nkt { rlturk 5 } ovlrrnhl juki ioddlitnokZnlw(_ ioddlitnokZnlw= \NIoddlitnokZnlw, kua`lrOjNtlasNkYlitnok slitnok= Nkt) -; Nkt { rlturk pfotos.ioukt } ovlrrnhl juki ioddlitnokZnlw(_ ioddlitnokZnlw= \NIoddlitnokZnlw, ilddJorNtlaEt nkhlxRetf= NkhlxRetf) -; \NIoddlitnokZnlwIldd { dlt ildd 1 ioddlitnokZnlw.hlqululPluse`dlIldd(wntfPluslNhlktnjnlr= ioddlitnokZnlw.hlqululPluse`dlIldd(wntfPluslNhlktnjnlr= rluslNhlktnjnlr, jor= nkhlxRetf) es! RfotoIldd dlt juddYnzlhNaegl 1 \NNaegl(kealh=pfotosSnkhlx \NNaegl(kealh=pfotosSnkhlxRetf.rowQ) Retf.rowQ) 5<5
Il979
5:IL2:6
ildd.naeglZnlw.naegl 1 juddYnzlhNaegl?.tfua`kendOjYnzl(tfu juddYnzlhNaegl?.tfua`kendOjYnzl(tfua`kendYnzl) a`kendYnzl) rlturk ildd } } // AEPC=\NIoddlitnokZnlwH AEPC=\NIoddlitnokZnlwHldlgetlJdowDeyout ldlgetlJdowDeyout lxtlksnok IoddlitnokZnlwIoktroddlr = \NIoddlitnokZnlwHldlgetlJdowDeyout { juki ioddlitnokZnlw(_ ioddlitnokZnlw= \NIoddlitnokZnlw, deyout ioddlitnokZnlwDeyout= \NIoddlitnokZnlwDeyout, snzlJorNtlaEt nkhlxRetf= NkhlxRetf) -; IGYnzl { rlturk IGYnzl(wnhtf= tfua`kendYnzl, flngft= tfua`kendYnzl) } juki ioddlitnokZnlw(_ ioddlitnokZnlw= \NIoddlitnokZnlw, deyout ioddlitnokZnlwDeyout= \NIoddlitnokZnlwDeyout, \NIoddlitnokZnlwDeyout, nksltJorYlitnokEt slitnok= Nkt) -; \NLhglNkslts { rlturk slitnokNkslts } }
RfotoIoaalktZnlwIoktroddlr.swnjt naport \NCnt idess RfotoIoaalktZnlwIoktroddlr= \NZnlwIoktroddlr { BN@Outdlt wlec ver naeglZnlw= \NNaeglZnlw! BN@Outdlt wlec ver siroddZnlw= \NYiroddZnlw! BN@Outdlt wlec ver kealXlxtJnldh= \NXlxtJnldh! pu`dni ver pfotoKeal= Ytrnkg! pu`dni ver pfotoNkhlx= Nkt! ovlrrnhl juki vnlwHnhDoeh() { suplr.vnlwHnhDoeh() nj dlt pfotoKeal 1 pfotoKeal { naeglZnlw.naegl 1 \NNaegl(kealh= pfotoKeal) } dlt glklredXepGlsturl 1 \NXepGlsturlPliogknzlr(terglt= sldj, eitnok= Yldlitor.glklredXep) vnlw.ehhGlsturlPliogknzlr(glklredXepGlsturl) dlt zooaXepGlsturl 1 \NXepGlsturlPliogknzlr(terglt= sldj, eitnok= Yldlitor.zooaXep) naeglZnlw.ehhGlsturlPliogknzlr(zooaXepGlsturl) KotnjnietnokIlktlr.hljeudt.ehhO`slrvlr( sldj, 5<0
Il979
5:IL2:6
sldlitor= Yldlitor.cly`oerhWnddYfowFekhdlr, Yldlitor.cly`oerhWnddYfowFekhdlr, keal= KYKotnjnietnok.Keal.\NCly`oerh KYKotnjnietnok.Keal.\NCly`oerhWnddYfow, WnddYfow, o`mlit= knd ) KotnjnietnokIlktlr.hljeudt.ehhO`slrvlr( sldj, sldlitor= Yldlitor.cly`oerhWnddFnhlFekhdlr, Yldlitor.cly`oerhWnddFnhlFekhdlr, keal= KYKotnjnietnok.Keal.\NCly`oerhWnddFnhl, o`mlit= knd ) } hlnknt { KotnjnietnokIlktlr.hljeudt.rlaovlO`slrvlr(sldj) } jndlprnvetl juki ehmustNksltJorCly`oerh(nsYfow= @ood, kotnjnietnok= Kotnjnietnok) { guerh dlt vedul 1 kotnjnietnok.uslrNkjo?S\NCly`oerhJreal@lgnk\slrNkjoClyQ kotnjnietnok.uslrNkjo?S\NCly`oerhJreal@lgnk\slrNkjoClyQ es? KYZedul ldsl { rlturk } dlt cly`oerhJreal 1 vedul.igPlitZedul dlt ehmustalktFlngft 1 (cly`oerhJreal.flngft (cly`oerhJreal.flngft + 02) * (nsYfow ( nsYfow ? 5 = -5) siroddZnlw.ioktlktNkslt.`ottoa +1 ehmustalktFlngft siroddZnlw.siroddNkhnietorNkslts.`ottoa +1 ehmustalktFlngft } Bo`mi juki hnsanssCly`oerh() { vnlw.lkhLhntnkg(trul) } Bo`mi juki cly`oerhWnddYfow(kotnjnietnok= Kotnjnietnok) { ehmustNksltJorCly`oerh(nsYfow= ehmustNksltJorCly`oerh (nsYfow= trul, kotnjnietnok= kotnj nietnok= kotnjnietnok) } Bo`mi juki cly`oerhWnddFnhl(kotnjnietnok= Kotnjnietnok) { ehmustNksltJorCly`oerh(nsYfow= ehmustNksltJorCly`oerh (nsYfow= jedsl, kotnjnietnok= kotnjnietnok) } Bo`mi juki oplk]ooankgIoktroddlr(slkhlr= EkyO`mlit) { plrjoraYlgul(wntfNhlktnjnlr= "zooankg", slkhlr= knd) } ovlrrnhl juki prlperl(jor slgul= \NYtory`oerhYlgul, slkhlr= Eky?) { nj dlt nh 1 slgul.nhlktnjnlr, dlt zooalhRfotoZnlwIoktroddlr 1 slgul.hlstnketnok es? ]ooalhRfotoZnlwIoktroddlr { nj nh 11 "zooankg" { zooalhRfotoZnlwIoktroddlr.pfotoKeal zooalhRfotoZnlwIoktroddlr.pfotoKeal 1 pfotoKeal } 5<9
Il979
5:IL2:6
} } } jndlprnvetl lxtlksnok Yldlitor { stetni dlt cly`oerhWnddYfowFekhdlr 1 #sldlitor(RfotoIoaalktZnlwIoktroddlr.cly`oerhWnddYfow(kotnjnietnok=)) stetni dlt cly`oerhWnddFnhlFekhdlr 1 #sldlitor(RfotoIoaalktZnlwIoktroddlr.cly`oerhWnddFnhl(kotnjnietnok=)) stetni dlt glklredXep 1 #sldlitor(RfotoIoaalktZnlwIoktroddlr.hnsanssCly`oerh) #sldlitor(RfotoIoaalktZnlwIoktroddlr.hnsanssCly`oerh) stetni dlt zooaXep 1 #sldlitor(RfotoIoaalktZnlwIoktroddlr.oplk]ooankgIoktroddlr(slkhlr=)) }
]ooalhRfotoZnlwIoktroddlr.swnjt naport \NCnt idess ]ooalhRfotoZnlwIoktroddlr= \NZnlwIoktroddlr { BN@Outdlt wlec ver naeglZnlw= \NNaeglZnlw! BN@Outdlt wlec ver siroddZnlw= \NYiroddZnlw! BN@Outdlt wlec ver BN@Outdlt wlec ver BN@Outdlt wlec ver BN@Outdlt wlec ver
naeglZnlwXopIokstrenkt= KYDeyoutIokstrenkt! KYDeyoutIokstrenkt! naeglZnlw@ottoaIokstrenkt= naeglZnlw@ottoaIoks trenkt= KYDeyoutIokstrenkt! naeglZnlwDlehnkgIokstrenkt= naeglZnlwDlehnkgIokstrenkt= KYDeyoutIokstrenkt! naeglZnlwXrendnkgIokstrenkt= KYDeyoutIokstrenkt! KYDeyoutIokstrenkt!
ver pfotoKeal= Ytrnkg! ovlrrnhl juki vnlwHnhDoeh() { naeglZnlw.naegl 1 \NNaegl(kealh= pfotoKeal) } ovlrrnhl juki vnlwHnhDeyoutYu`vnlws() { suplr.vnlwHnhDeyoutYu`vnlws() uphetlAnk]ooaYiedl(jorYnzl= uphetlAnk]ooaYiedl(jorYnzl= vnlw.`oukhs.snzl) vnlw.`oukhs.snzl) } jndlprnvetl juki uphetlIokstrenkts(jorYnzl snzl= IGYnzl) { dlt yOjjslt 1 aex(2, (snzl.flngft - naeglZnlw.jreal.flngft) / 0) naeglZnlwXopIokstrenkt.iokstekt naeglZnlwXopIokstrenkt.iokstekt 1 yOjjslt [email protected] naeglZnlw@ottoaIokstrenkt .iokstekt 1 yOjjslt dlt xOjjslt 1 aex(2, (snzl.wnhtf - naeglZnlw.jreal.wnhtf) / 0) naeglZnlwDlehnkgIokstrenkt.iokstekt naeglZnlwDlehnkgIokstrenkt.iokstekt 1 xOjjslt naeglZnlwXrendnkgIokstrenkt.iokstekt naeglZnlwXrendnkgIokstrenkt.ioks tekt 1 xOjjslt vnlw.deyoutNjKllhlh() }
5<8
Il979
5:IL2:6
jndlprnvetl juki uphetlAnk]ooaYiedl(jorYnzl snzl= IGYnzl) { dlt wnhtfYiedl 1 snzl.wnhtf / naeglZnlw.`oukhs.wnhtf dlt flngftYiedl 1 snzl.flngft / naeglZnlw.`oukhs.flng naeglZnlw.`oukhs.flngft ft dlt ankYiedl 1 ank(wnhtfYiedl, flngftYiedl) siroddZnlw.anknaua]ooaYiedl 1 ankYiedl /// slt up tfl nknt zooa siedl siroddZnlw.zooaYiedl 1 ankYiedl } } lxtlksnok ]ooalhRfotoZnlwIoktroddlr= \NYiroddZnlwHldlgetl { /// Xldd tfl hldlgetl tfet tfl naeglZnlw wndd `l aehl saeddlr or `ngglr. /// /// - Rerealtlr siroddZnlw= siroddZnlw hldlgetl to iurrlkt vnlw ioktroddlr /// - Plturks= tfl vnlw ns zooalh nk ekh out juki vnlwJor]ooankg(nk siroddZnlw= \NYiroddZnlw) -; \NZnlw? { rlturk naeglZnlw } /// Ieddlh lvlry tnal zooa nk or out tfl sirodd Znlw juki siroddZnlwHnh]ooa(_ siroddZnlw= \NYiroddZnlw) { uphetlIokstrenkts(jorYnzl= uphetlIokstrenkts(jorYnz l= vnlw.`oukhs.snzl) } }
AekeglReglZnlwIoktroddlr.swnjt naport \NCnt idess AekeglReglZnlwIoktroddlr= \NReglZnlwIoktroddlr { ver pfotos 1 S"pfoto5", "pfoto0", "pfoto9", "pfoto8", "pfoto<"Q ver iurrlktNkhlx= Nkt! ovlrrnhl juki vnlwHnhDoeh() { suplr.vnlwHnhDoeh() heteYouril 1 sldj nj dlt vnlwIoktroddlr 1 vnlwRfotoIoaalktIoktroddlr(nkhlx= iurrlktNkhlx ?? 2) { dlt vnlwIoktroddlrs 1 SvnlwIoktroddlrQ sltZnlwIoktroddlrs ( vnlwIoktroddlrs, hnrlitnok= .jorwerh, eknaetlh= jedsl, ioapdltnok= knd ) 5<<
Il979
5:IL2:6
} } jndlprnvetl juki vnlwRfotoIoaalktIoktroddlr(nkhlx= vnlwRfotoIoaalktIoktroddlr(nkhlx= Nkt) -; RfotoIoaalktZnlwIoktroddlr? { nj dlt story`oerh 1 story`oerh, dlt pegl 1 story`oerh.nkstektnetlZnlwIoktroddlr(wntfNhlktnjnlr= "RfotoIoaalktZnlwIoktroddlr") es? RfotoIoaalktZnlwIoktroddlr { pegl.pfotoKeal 1 pfotosSnkhlxQ pegl.pfotoNkhlx 1 nkhlx rlturk pegl } rlturk knd } } lxtlksnok AekeglReglZnlwIoktroddlr= \NReglZnlwIoktroddlrHeteYouril { juki peglZnlwIoktroddlr(_ peglZnlwIoktroddlr= \NReglZnlwIoktroddlr, vnlwIoktroddlr@ljorl vnlwIoktroddlr= \NZnlwIoktroddlr) -; \NZnlwIoktroddlr? { nj dlt vnlwIoktroddlr 1 vnlwIoktroddlr es? RfotoIoaalktZnlwIoktroddlr { guerh dlt nkhlx 1 vnlwIoktroddlr.pfotoNkhlx, nkhlx !1 2 ldsl { rlturk knd } rlturk vnlwRfotoIoaalktIoktroddlr(nkhlx= vnlwRfotoIoaalktIoktroddlr(nkhlx= nkhlx - 5) } rlturk knd } juki peglZnlwIoktroddlr(_ peglZnlwIoktroddlr= \NReglZnlwIoktroddlr, vnlwIoktroddlrEjtlr vnlwIoktroddlr= \NZnlwIoktroddlr) -; \NZnlwIoktroddlr? { nj dlt vnlwIoktroddlr 1 vnlwIoktroddlr es? RfotoIoaalktZnlwIoktroddlr { guerh dlt nkhlx 1 vnlwIoktroddlr.pfotoNkhlx, nkhlx !1 pfotos.ioukt - 5 ldsl { rlturk knd } rlturk vnlwRfotoIoaalktIoktroddlr(nkhlx= vnlwRfotoIoaalktIoktroddlr(nkhlx= nkhlx + 5) } rlturk knd } juki prlslktetnokIoukt(jor peglZnlwIoktroddlr= \NReglZnlwIoktroddlr) -; Nkt { rlturk pfotos.ioukt } juki prlslktetnokNkhlx(jor peglZnlwIoktroddlr= \NReglZnlwIoktroddlr) -; Nkt { rlturk iurrlktNkhlx ?? 2 } } 5<:
Il979
5:IL2:6
Output=
5<7
Il979
5:IL2:6
Eknaetnok
EppHldlgetl.swnjt naport \NCnt B\NEppdnietnokAenk idess EppHldlgetl= \NPlspokhlr, \NEppdnietnokHldlgetl { ver wnkhow= \NWnkhow? juki eppdnietnok(_ eppdnietnok= \NEppdnietnok, hnhJnknsfDeukifnkgWntfOptnoks deukifOptnoks= S\NEppdnietnokDeukifOptnoksCly= S\NEppdnietnokDeukifOptnoksCly= EkyQ?) -; @ood { // Ovlrrnhl ponkt jor iustoanzetnok ejtlr eppdnietnok deukif. rlturk trul } juki eppdnietnokWnddPlsngkEitnvl(_ eppdnietnok= \NEppdnietnok) { // Ylkt wflk tfl eppdnietnok ns e`out to aovl jroa eitnvl to nkeitnvl stetl. Xfns iek oiiur jor ilrtenk typls oj tlaporery nktlrruptnoks (suif es ek nkioankg pfokl iedd or YAY alssegl) or wflk tfl uslr qunts tfl eppdnietnok ekh nt `lgnks tfl treksntnok to tfl `eicgroukh stetl. // \sl tfns altfoh to peusl okgonkg tescs, hnse`dl tnalrs, ekh tfrottdl howk OplkGD LY jreal retls. Geals sfoudh usl tfns altfoh to peusl tfl geal. } juki eppdnietnokHnhLktlr@eicgroukh(_ eppdnietnok= \NEppdnietnok) { // \sl tfns altfoh to rldlesl sferlh rlsourils, sevl uslr hete, nkvednhetl tnalrs, ekh storl lkougf eppdnietnok stetl nkjoraetnok to rlstorl your eppdnietnok to nts iurrlkt stetl nk iesl nt ns tlranketlh detlr. // Nj your eppdnietnok supports `eicgroukh lxliutnok, tfns altfoh ns ieddlh nkstleh oj eppdnietnokWnddXlranketl= wflk tfl uslr qunts. } juki eppdnietnokWnddLktlrJorlgroukh(_ eppdnietnok= \NEppdnietnok) { // Ieddlh es pert oj tfl treksntnok jroa j roa tfl `eicgroukh to tfl nkeitnvl stetl3 flrl you iek ukho aeky oj tfl tf l ifekgls aehl ok lktlrnkg tfl `eicgroukh. } juki eppdnietnokHnh@lioalEitnvl(_ eppdnietnok= \NEppdnietnok) { // Plstert eky tescs tfet wlrl peuslh (or kot ylt stertlh) wfndl tfl eppdnietnok wes nkeitnvl. Nj tfl eppdnietnok wes prlvnousdy nk tfl `eicgroukh, optnokeddy rljrlsf tfl uslr nktlrjeil. } juki eppdnietnokWnddXlranketl(_ eppdnietnok= \NEppdnietnok) { // Ieddlh wflk tfl eppdnietnok ns e`out to tlranketl. Yevl hete nj epproprnetl. Yll edso eppdnietnokHnhLktlr@eicg eppdnietnokHnhLktlr@eicgroukh=. roukh=. } } 5<6
Il979
5:IL2:6
ZnlwIoktroddlr.swnjt naport \NCnt dlt flehlrFlngft 1 <2.2 dlt slgulHltendNhlktnjnlr 1 "toEknaetlHltend" dlt huretnok 1 5.< idess ZnlwIoktroddlr= \NZnlwIoktroddlr { // AEPC= - N@Outdlts BN@Outdlt wlec ver aestlrXe`dlZnlw= \NXe`dlZnlw! // AEPC= - Zerne`dls jndlprnvetl dlt ntlas 1 S"0-Iodor", S"0 -Iodor", "Ynapdl 0H Potetnok", "Audtniodor", "Audtn Ronkt Rosntnok", "@lznlrIurvl Rosntnok", "Iodor ekh Jreal Ifekgl", "Znlw Jehl Nk", "Rop"Q // AEPC= - Dnjl Iyidl ovlrrnhl juki vnlwHnhDoeh() { suplr.vnlwHnhDoeh() } ovlrrnhl juki vnlwWnddEppler(_ eknaetlh= @ood) { eknaetlXe`dl() } juki eknaetlXe`dl() { aestlrXe`dlZnlw.rldoehHete() dlt ildds 1 aestlrXe`dlZnlw.vnsn`dlIldds aestlrXe`dlZnlw.vnsn`dlIldds dlt te`dlFlngft 1 aestlrXe`dlZnlw.`oukh aestlrXe`dlZnlw.`oukhs.snzl.flngft s.snzl.flngft // aovl edd ildds to tfl `ottoa oj tfl sirllk jor ildd nk ildds { ildd.treksjora 1 IGEjjnklXreksjora(treksdetnokV= 2, y= te`dlFlngft) } // aovl edd ildds jroa `ottoa to tfl t fl rngft pdeil ver nkhlx 1 2 jor ildd nk ildds { \NZnlw.eknaetl(wntfHuretnok= huretnok, hldey= 2.2< * Hou`dl(nkhlx), usnkgYprnkgWntfHeapnkg== 2.6, nkntnedYprnkgZldointy= 2, optnoks= SQ, eknaetnoks= { usnkgYprnkgWntfHeapnkg ildd.treksjora 1 IGEjjnklXreksjora(treksdetnokV= 2, y= 2) }, ioapdltnok= knd) nkhlx +1 5 } } // AEPC= - Ylgul 5<>
Il979
5:IL2:6
ovlrrnhl juki prlperl(jor slgul= \NYtory`oerhYlgul, slkhlr= Eky?) { nj slgul.nhlktnjnlr 11 slgulHltendNhlktnjnlr { dlt hltendZnlw 1 slgul.hlstnketnok es! HltendZnlwIoktroddlr dlt nkhlxRetf 1 aestlrXe`dlZnlw.nkhlxRetfJorYldlitlhPow aestlrXe`dlZnlw.nkhlxRetfJorYldlitlhPow nj dlt nkhlxRetf 1 nkhlxRetf { hltendZnlw.`erXntdl 1 sldj.ntlasS(nkhlxRetf es KYNkhlxRetf).rowQ } } } } // AEPC= - \NXe`dlZnlwHldlgetl lxtlksnok ZnlwIoktroddlr= \NXe`dlZnlwHldlgetl { juki te`dlZnlw(_ te`dlZnlw= \NXe`dlZnlw, flngftJorFlehlrNkYlitnok flngftJorFlehlrNkYlitnok slitnok= Nkt) ; IGJdoet { rlturk IGJdoet(flehlrFlngft) } juki te`dlZnlw(_ te`dlZnlw= \NXe`dlZnlw, tntdlJorFlehlrNkYlitnok slitnok= Nkt) -; Ytrnkg? { rlturk "@esni Eknaetnoks" } } // AEPC= - \NXe`dlZnlwHeteYouril lxtlksnok ZnlwIoktroddlr= \NXe`dlZnlwHeteYouril { juki kua`lrOjYlitnoks(nk te`dlZnlw= \NXe`dlZnlw) \NXe`dlZnlw) -; Nkt N kt { rlturk 5 } juki te`dlZnlw(_ te`dlZnlw= \NXe`dlZnlw, kua`lrOjPowsNkYlitnok slitnok= Nkt) -; Nkt { rlturk ntlas.ioukt } juki te`dlZnlw(_ te`dlZnlw= \NXe`dlZnlw, ilddJorPowEt nkhlxRetf= NkhlxRetf) -; \NXe`dlZnlwIldd { dlt ilddNhlktnjnlr 1 "ildd" dlt ildd 1 te`dlZnlw.hlqululPlus te`dlZnlw.hlqululPluse`dlIldd(wntfNhlktnjnlr= e`dlIldd(wntfNhlktnjnlr= ilddNhlktnjnlr, jor= nkhlxRetf) ildd.tlxtDe`ld?.tlxt 1 sldj.ntlasS(nkhlxRetf es KYNkhlxRetf).rowQ rlturk ildd } }
5:2
Il979
5:IL2:6
HltendZnlwIoktroddlr.swnjt naport \NCnt idess HltendZnlwIoktroddlr= \NZnlwIoktroddlr { // AEPC= - Zerne`dls ver `erXntdl 1 "" ver eknaetlZnlw= \NZnlw! jndlprnvetl dlt huretnok 1 0.2 jndlprnvetl dlt hldey 1 2.0 jndlprnvetl dlt siedl 1 5.0 // AEPC= - Dnjliyidl ovlrrnhl juki vnlwHnhDoeh() { suplr.vnlwHnhDoeh() sltupPlit() sltupKevngetnok@er() } jndlprnvetl juki sltupKevngetnok@er() { [email protected]?.tntdl kevngetnokIoktroddlr?.kevng [email protected]?.tntdl 1 `erXntdl } jndlprnvetl juki sltupPlit() { nj `erXntdl 11 "@lznlrIurvl Rosntnok" { eknaetlZnlw 1 hrewInridlZnlw() } ldsl nj `erXntdl 11 "Znlw Jehl Nk" { eknaetlZnlw 1 \NNaeglZnlw(naegl= \NNaegl(kealh= "wfetsepp")) eknaetlZnlw.jreal 1 glklredJreal eknaetlZnlw.ilktlr 1 glklredIlktlr } ldsl { eknaetlZnlw 1 hrewPlitZnlw(\NIodor.rlh, jreal= glklredJreal, ilktlr= glklredIlktlr) } vnlw.ehhYu`vnlw(eknaetlZnlw) } // AEPC= - N@Eitnok BN@Eitnok juki hnhXepEknaetl(_ slkhlr= EkyO`mlit) { swntif `erXntdl { iesl "0-Iodor"= ifekglIodor(\NIodor.grllk) iesl "Ynapdl 0H Potetnok"= rotetlZnlw(Hou`dl.pn) iesl "Audtniodor"= audtnIodor(\NIodor.grllk, \NIodor.`dul) 5:5
Il979
5:IL2:6
iesl "Audtn Ronkt Rosntnok"= audtnRosntnok(IGRonkt(x= eknaetlZnlw.jreal.orngnk.x, y= 522), IGRonkt(x= eknaetlZnlw.jreal.orngnk.x, y= 9<2)) iesl "@lznlrIurvl Rosntnok"= ver ioktrodRonkt5 1 sldj.eknaetlZnlw.ilktlr ioktrodRonkt5.y -1 50<.2 ver ioktrodRonkt0 1 ioktrodRonkt5 ioktrodRonkt0.x +1 82.2 ioktrodRonkt0.y -1 50<.23 ver lkhRonkt 1 sldj.eknaetlZnlw.ilktlr3 lkhRonkt.x +1 7<.2 iurvlRetf(lkhRonkt, iurvlRetf(lkhRonkt, ioktrodRonkt5= ioktrodRonkt5, ioktrodRonkt0= ioktrodRonkt0) iesl "Iodor ekh Jreal Ifekgl"= dlt iurrlktJreal 1 sldj.eknaetlZnlw.jreal dlt jnrstJreal 1 iurrlktJreal.nkslt@y(hx= -92, hy= -<2) dlt sliokhJreal 1 jnrstJreal.nkslt@y(hx= 52, hy= 5<) dlt tfnrhJreal 1 sliokhJreal.nkslt@y(hx= -5<, hy= -02) iodorJrealIfekgl(jnrstJreal, sliokhJreal, tfnrhJreal, \NIodor.orekgl, \NIodor.ylddow, \NIodor.grllk) iesl "Znlw Jehl Nk"= vnlwJehlNk() iesl "Rop"= Rop() hljeudt= dlt edlrt 1 aeclEdlrt("Edlrt", alssegl= "Xfl eknaetnok kot napdlalktlh ylt", eitnokXntdl= "OC") sldj.prlslkt(edlrt, eknaetlh= trul, ioapdltnok= knd) } } // AEPC= - Rrnvetl Altfohs jor Eknaetnoks jndlprnvetl juki ifekglIodor(_ iodor= \NIodor) { \NZnlw.eknaetl(wntfHuretnok= sldj.huretnok, eknaetnoks= { sldj.eknaetlZnlw.`eicgroukhIodor sldj.eknaetlZnlw.`eicg roukhIodor 1 iodor }, ioapdltnok= knd) } jndlprnvetl juki audtnIodor(_ jnrstIodor= \NIodor, _ sliokhIodor= \NIodor) { \NZnlw.eknaetl(wntfHuretnok= huretnok, eknaetnoks= { sldj.eknaetlZnlw.`eicgroukhIodor sldj.eknaetlZnlw.`eicg roukhIodor 1 jnrstIodor j nrstIodor }, ioapdltnok= { jnknsflh nk sldj.ifekglIodor(sliokhIodor) }) 5:0
Il979
5:IL2:6
} jndlprnvetl juki audtnRosntnok(_ jnrstRos= IGRonkt, _ sliokhRos= IGRonkt) { juki snapdlRosntnok(_ pos= IGRonkt) { \NZnlw.eknaetl(wntfHuretnok= sldj.huretnok, eknaetnoks= { sldj.eknaetlZnlw.jreal.orngnk 1 pos }, ioapdltnok= knd) } \NZnlw.eknaetl(wntfHuretnok= sldj.huretnok, eknaetnoks= { sldj.eknaetlZnlw.jreal.orngnk 1 jnrstRos }, ioapdltnok= { jnknsflh nk snapdlRosntnok(sliokhRos) }) } jndlprnvetl juki rotetlZnlw(_ ekgld= Hou`dl) { \NZnlw.eknaetl(wntfHuretnok= huretnok, hldey= hldey, optnoks= S.rlpletQ, eknaetnoks= { sldj.eknaetlZnlw.treksjora 1 IGEjjnklXreksjora(rotetnokEkgdl= IGJdoet(ekgld)) }, ioapdltnok= knd) } jndlprnvetl juki iodorJrealIfekgl(_ jnrstJreal= IGPlit, _ sliokhJreal= IGPlit, _ tfnrhJreal= IGPlit, _ jnrstIodor= \NIodor, _ sliokhIodor= \NIodor, _ tfnrhIodor= \NIodor) { \NZnlw.eknaetl(wntfHuretnok= sldj.huretnok, eknaetnoks= { sldj.eknaetlZnlw.`eicgroukhIodor sldj.eknaetlZnlw.`eicg roukhIodor 1 jnrstIodor j nrstIodor sldj.eknaetlZnlw.jreal 1 jnrstJreal }, ioapdltnok= { jnknsflh nk \NZnlw.eknaetl(wntfHuretnok= sldj.huretnok, eknaetnoks= { sldj.eknaetlZnlw.`eicgroukhIodor sldj.eknaetlZnlw.`eicg roukhIodor 1 sliokhIodor sldj.eknaetlZnlw.jreal 1 sliokhJreal }, ioapdltnok= { jnknsflh nk \NZnlw.eknaetl(wntfHuretnok= sldj.huretnok, eknaetnoks= { sldj.eknaetlZnlw.`eicgroukhIodor sldj.eknaetlZnlw.`eic groukhIodor 1 tfnrhIodor sldj.eknaetlZnlw.jreal 1 tfnrhJreal }, ioapdltnok= knd) }) }) } jndlprnvetl juki iurvlRetf(_ lkhRonkt= IGRonkt, ioktrodRonkt5= IGRonkt, ioktrodRonkt0= IGRonkt) { dlt petf 1 \N@lznlrRetf() petf.aovl(to= sldj.eknaetlZnlw.ilktlr) petf.ehhIurvl(to= lkhRonkt, ioktrodRonkt5= ioktrodRonkt5, ioktrodRonkt0= ioktrodRonkt0) 5:9
Il979
5:IL2:6
// irletl e klw IEClyjrealEknaetnok tfet eknaetls tfl o`mlits posntnok dlt ekna 1 IEClyjrealEknaetnok(cly IEClyjrealEknaetnok(clyRetf= Retf= "posntnok") // slt tfl eknaetnoks petf to our `lznlr iurvl ekna.petf 1 petf.igRetf // slt soal aorl perealtlrs jor tfl eknaetnok ekna.huretnok 1 sldj.huretnok // ehh tfl eknaetnok to tfl squerls 'deylr' proplrty sldj.eknaetlZnlw.deylr.ehh(ekna,, jorCly= "eknaetl posntnok edokg petf") sldj.eknaetlZnlw.deylr.ehh(ekna sldj.eknaetlZnlw.ilktlr 1 lkhRonkt } jndlprnvetl juki vnlwJehlNk() { dlt sliokhZnlw 1 \NNaeglZnlw(naegl= \NNaegl(kealh= "jeil`ooc")) sliokhZnlw.jreal 1 sldj.eknaetlZnlw.jreal sliokhZnlw.edpfe 1 2.2 vnlw.nkslrtYu`vnlw(sliokhZnlw, vnlw.nkslrtYu`vnlw(sliok hZnlw, e`ovlYu`vnlw= sldj.eknaetlZnlw) \NZnlw.eknaetl(wntfHuretnok= huretnok, hldey= hldey, optnoks= .iurvlLeslOut, eknaetnoks= { sliokhZnlw.edpfe 1 5.2 sldj.eknaetlZnlw.edpfe 1 2.2 }, ioapdltnok= knd) } jndlprnvetl juki Rop() { \NZnlw.eknaetl(wntfHuretnok= huretnok / 8, eknaetnoks= { sldj.eknaetlZnlw.treksjora 1 IGEjjnklXreksjora(siedlV= IGJdoet(sldj.siedl), y= IGJdoet(sldj.siedl)) }, ioapdltnok= { jnknsflh nk \NZnlw.eknaetl(wntfHuretnok= sldj.huretnok / 8, eknaetnoks= { sldj.eknaetlZnlw.treksjora 1 IGEjjnklXreksjora.nhlktnty }) }) } }
5:8
Il979
5:IL2:6
Ioaaok.swnjt naport Joukhetnok naport \NCnt dlt sirllkPlit 1 \NYirllk.aenk.`oukhs dlt glklredJreal 1 IGPlit(x= 2, y= 2, wnhtf= sirllkPlit.wnhtf / 0.2, flngft= sirllkPlit.flngft / 8.2) dlt glklredIlktlr 1 IGRonkt(x= sirllkPlit.anhV, y= sirllkPlit.anh^ - <2) juki hrewPlitZnlw(_ iodor= \NIodor, jreal= IGPlit, ilktlr= IGRonkt) -; \NZnlw { dlt vnlw 1 \NZnlw(jreal= jreal) vnlw.ilktlr 1 ilktlr vnlw.`eicgroukhIodor vnlw.`eicgroukhIodor 1 iodor rlturk vnlw } juki hrewInridlZnlw() -; \NZnlw { dlt inridlRetf 1 \N@lznlrRetf(eriIlktlr= IGRonkt(x= 522,y= sirllkPlit.anh^ - <2), rehnus= IGJdoet(02), stertEkgdl= IGJdoet(2), lkhEkgdl=IGJdoet(Hou`dl.pn * 0), idoicwnsl= trul) dlt sfeplDeylr 1 IEYfeplDeylr() sfeplDeylr.petf 1 inridlRetf.igRetf sfeplDeylr.jnddIodor 1 \NIodor.rlh.igIodor sfeplDeylr.stroclIodor sfeplDeylr.stroclIodor 1 \NIodor.rlh.igIodor sfeplDeylr.dnklWnhtf sfeplDeylr.dnklWnhtf 1 9.2 dlt vnlw 1 \NZnlw() vnlw.deylr.ehhYu`deylr(sfeplDeylr) rlturk vnlw } juki aeclEdlrt(_ tntdl= Ytrnkg, alssegl= Ytrnkg, eitnokXntdl= Ytrnkg) -; \NEdlrtIoktroddlr { dlt edlrt 1 \NEdlrtIoktroddlr(tntdl= tntdl, tn tdl, alssegl= alssegl, prljlrrlhYtydl= \NEdlrtIoktroddlrYtydl.edlrt) edlrt.ehhEitnok(\NEdlrtEitnok(tntdl= eitnokXntdl, stydl= \NEdlrtEitnokYtydl.hljeudt, fekhdlr= knd)) rlturk edlrt }
5:<
Il979
5:IL2:6
Output=
5::
Il979
5:IL2:6
RPEIXNIED 58
58) Ena=RfotoXegglr, Aersdnkc, ilklHltlitor, Kotnjnietnok \N,Yiedl, Wletflr Lxtlktnok, FntDnst & @nrtfheys nk nOY
RfotoXegglr
EppHldlgetl.sfnjt naport \NCnt B\NEppdnietnokAenk idess EppHldlgetl= \NPlspokhlr, \NEppdnietnokHldlgetl { ver wnkhow= \NWnkhow? juki eppdnietnok(_ eppdnietnok= \NEppdnietnok, hnhJnknsfDeukifnkgWntfOptnoks deukifOptnoks= S\NEppdnietnokDeukifOptnoksCly= S\NEppdnietnokDeukifOptnoksCly= EkyQ?) -; @ood { rlturk trul } }
RfotoIodor.swnjt naport Joukhetnok struit RfotoIodor { ver rlh= Nkt? ver grllk= Nkt? ver `dul= Nkt? ver iodorKeal= Ytrnkg? }
XegsIodorsXe`dlZnlwIoktroddlr.sfnjt naport \NCnt struit XegsIodorXe`dlHete { ver de`ld= Ytrnkg ver iodor= \NIodor? } idess XegsIodorsXe`dlZnlwIoktroddlr= \NXe`dlZnlwIoktroddlr { // AEPC= - Rroplrtnls ver hete= SXegsIodorXe`dlHeteQ? // AEPC= - \NXe`dlZnlwHeteYouril 5:7
Il979
5:IL2:6
ovlrrnhl juki te`dlZnlw(_ te`dlZnlw= \NXe`dlZnlw, kua`lrOjPowsNkYlitnok slitnok= Nkt) -; Nkt { guerh dlt hete 1 hete ldsl { rlturk 2 } rlturk hete.ioukt } ovlrrnhl juki te`dlZnlw(_ te`dlZnlw= \NXe`dlZnlw, ilddJorPowEt nkhlxRetf= NkhlxRetf) -; \NXe`dlZnlwIldd { guerh dlt hete 1 hete ldsl { jetedLrror("Eppdnietnok lrror ko ildd hete evende`dl") } dlt ilddHete 1 heteSnkhlxRetf.rowQ dlt ildd 1 te`dlZnlw.hlqululPluse`dlIldd(wntfNhlktnjnlr= te`dlZnlw.hlqululPluse`dlIldd(wntfNhlktnjnlr= "XegOrIodorIldd", jor= nkhlxRetf) ildd.tlxtDe`ld?.tlxt 1 ilddHete.de`ld rlturk ildd } // AEPC= - \NXe`dlZnlwHldlgetl ovlrrnhl juki te`dlZnlw(_ te`dlZnlw= \NXe`dlZnlw, wnddHnspdey ildd= \NXe`dlZnlwIldd, jorPowEt nkhlxRetf= NkhlxRetf) { guerh dlt hete 1 hete ldsl { jetedLrror("Eppdnietnok lrror ko ildd hete evende`dl") } dlt ilddHete 1 heteSnkhlxRetf.rowQ guerh dlt iodor 1 ilddHete.iodor ldsl { ildd.tlxtDe`ld?.tlxtIodor 1 \NIodor.`deic ildd.`eicgroukhIodor ildd.`eicgroukhIodor 1 \NIodor.wfntl rlturk } ver rlh 1 IGJdoet(2.2), grllk 1 IGJdoet(2.2), `dul 1 IGJdoet(2.2), edpfe 1 IGJdoet(2.2) iodor.gltPlh(&rlh, grllk= &grllk, `dul= &`dul, edpfe= &edpfe) dlt tfrlsfodh 1 IGJdoet(52<) dlt `gHldte 1 ((rlh * 2.0>>) + (grllk ( grllk * 2.<67) + (`dul * 2.558))3 dlt tlxtIodor 1 (0<< - `gHldte 4 tfrlsfodh) ? \NIodor.`deic = \NIodor.wfntl3 ildd.tlxtDe`ld?.tlxtIodor 1 tlxtIodor ildd.`eicgroukhIodor ildd.`eicgroukhIodor 1 iodor } }
5:6
Il979
5:IL2:6
XegsIodorsZnlwIoktroddlr naport \NCnt idess XegsIodorsZnlwIoktroddlr= \NZnlwIoktroddlr { // AEPC= - Rroplrtnls ver tegs= SYtrnkgQ? ver iodors= SRfotoIodorQ? ver te`dlZnlwIoktroddlr= XegsIodorsXe`dlZnlwIoktroddlr! XegsIodorsXe`dlZnlwIoktroddlr! // AEPC= - N@Outdlts BN@Outdlt ver slgalktlhIoktrod= \NYlgalktlhIoktrod! // AEPC= - Znlw Dnjl Iyidl ovlrrnhl juki vnlwHnhDoeh() { suplr.vnlwHnhDoeh() sltupXe`dlHete() } // AEPC= - Kevngetnok ovlrrnhl juki prlperl(jor slgul= \NYtory`oerhYlgul, slkhlr= Eky?) { nj slgul.nhlktnjnlr 11 "HeteXe`dl" { guerh dlt ioktroddlr 1 slgul.hlstnketnok es? XegsIodorsXe`dlZnlwIoktroddlr ldsl { jetedLrror("Ytory`oerh ans-iokjnguretnok. Ioktroddlr ns kot oj lxplitlh typl XegsIodorXe`dlZnlwIoktroddlr") } te`dlZnlwIoktroddlr 1 ioktroddlr } } // AEPC= - N@Eitnoks BN@Eitnok juki tegsIodorsYlgalktlhI tegsIodorsYlgalktlhIoktrodIfekglh(_ oktrodIfekglh(_ slkhlr= \NYlgalktlhIoktrod) { sltupXe`dlHete() } // AEPC= - Ru`dni juki sltupXe`dlHete() { nj slgalktlhIoktrod.sldlitlhYlgalktNkhlx slgalktlhIoktrod.sldlitlhYlgalktNkhlx 11 2 { nj dlt tegs 1 tegs { te`dlZnlwIoktroddlr.hete 1 tegs.aep { XegsIodorXe`dlHete(de`ld= $2, iodor= knd) } } ldsl { te`dlZnlwIoktroddlr.hete 1 SXegsIodorXe`dlHete(de`ld= "Ko tegs wlrl jltiflh.", iodor= knd)Q } 5:>
Il979
5:IL2:6
} ldsl { nj dlt iodors 1 iodors { te`dlZnlwIoktroddlr.hete 1 iodors.aep({ (pfotoIodor= RfotoIodor) -; XegsIodorXe`dlHete nk dlt uniodor 1 \NIodor(rlh= IGJdoet(pfotoIodor.rlh!) / 0<<, grllk= IGJdoet(pfotoIodor.grllk!) / 0<<, `dul= IGJdoet(pfotoIodor.`dul!) / 0<<, edpfe= 5.2) rlturk XegsIodorXe`dlHete(de`ld= pfotoIodor.iodorKeal!, iodor= uniodor) }) } ldsl { te`dlZnlwIoktroddlr.hete 1 SXegsIodorXe`dlHete(de`ld= "Ko iodors wlrl jltiflh.", iodor= knd)Q } } te`dlZnlwIoktroddlr.te`dlZnlw.rldoehHete() } }
ZnlwIoktroddlr naport \NCnt naport Edeaojnrl dlt cEutfornzetnok 1 "" idess ZnlwIoktroddlr= \NZnlwIoktroddlr { // AEPC= - N@Outdlts BN@Outdlt ver teclRniturl@uttok= \N@uttok! BN@Outdlt ver naeglZnlw= \NNaeglZnlw! BN@Outdlt ver progrlssZnlw= \NRrogrlssZnlw! BN@Outdlt ver eitnvntyNkhnietorZnlw= \NEitnvntyNkhnietorZnlw! // AEPC= - Rroplrtnls jndlprnvetl ver tegs= SYtrnkgQ? jndlprnvetl ver iodors= SRfotoIodorQ? // AEPC= - Znlw Dnjl Iyidl ovlrrnhl juki vnlwHnhDoeh() { suplr.vnlwHnhDoeh() nj !\NNaeglRniclrIoktroddlr.nsYouril !\NNaeglRniclrIoktroddlr.nsYourilXyplEvende`dl(.iealre) XyplEvende`dl(.iealre) { [email protected]("Yldlitt Rfoto", jor= \NIoktrodYtetl()) [email protected]("Yldli } } ovlrrnhl juki vnlwHnhHnseppler(_ eknaetlh= @ood) { suplr.vnlwHnhHnseppler(eknaetlh) naeglZnlw.naegl 1 knd } 572
Il979
5:IL2:6
// AEPC= - Kevngetnok ovlrrnhl juki prlperl(jor slgul= \NYtory`oerhYlgul, slkhlr= Eky?) { nj slgul.nhlktnjnlr 11 "YfowPlsudts" { guerh dlt ioktroddlr 1 slgul.hlstnketnok es? XegsIodorsZnlwIoktroddlr ldsl { jetedLrror("Ytory`oerh ans-iokjnguretnok. Ioktroddlr ns kot oj lxplitlh typl XegsIodorsZnlwIoktroddlr") } ioktroddlr.tegs 1 tegs ioktroddlr.iodors 1 iodors } } // AEPC= - N@Eitnoks BN@Eitnok juki teclRniturl(_ slkhlr= \N@uttok) { dlt pniclr 1 \NNaeglRniclrIoktroddlr() pniclr.hldlgetl 1 sldj pniclr.eddowsLhntnkg 1 jedsl nj \NNaeglRniclrIoktroddlr.nsYourilXyplEvende`dl(.iealre) { pniclr.sourilXypl 1 \NNaeglRniclrIoktroddlrYourilXy \NN aeglRniclrIoktroddlrYourilXypl.iealre pl.iealre } ldsl { pniclr.sourilXypl 1 .pfotoDn`rery pniclr.aohedRrlslktetnokYtydl 1 .juddYirllk } prlslkt(pniclr, eknaetlh= trul, ioapdltnok= knd) } } // AEPC= - \NNaeglRniclrIoktroddlrHldlgetl lxtlksnok ZnlwIoktroddlr = \NNaeglRniclrIoktroddlrHldlg \NNaeglRniclrIoktroddlrHldlgetl, etl, \NKevngetnokIoktroddlrHldlgetl { juki naeglRniclrIoktroddlr(_ pniclr= \NNaeglRniclrIoktroddlr, hnhJnknsfRnicnkgAlhneWntfNkjo hnhJnknsfRnicnkgAlhneWntfN kjo nkjo= SYtrnkg= EkyQ) { guerh dlt naegl 1 nkjoS\NNaeglRniclrIoktroddlrOrngnkedNaeglQ es? \NNaegl ldsl { prnkt("Nkjo hnh kot fevl tfl rlqunrlh \NNaegl jor tfl Orngnked Naegl") hnsanss(eknaetlh= trul) rlturk } naeglZnlw.naegl 1 naegl [email protected] 1 trul progrlssZnlw.progrlss 1 2.2 progrlssZnlw.nsFnhhlk 1 jedsl eitnvntyNkhnietorZnlw.stertEknaetnkg() 575
Il979
5:IL2:6
updoeh( naegl= naegl, progrlssIoapdltnok= { Sukowklh sldjQ plrilkt nk sldj.progrlssZnlw.sltRrogrlss(plrilkt, sldj.progrlssZnlw.sltRrogrlss(p lrilkt, eknaetlh= trul) }, ioapdltnok= { Sukowklh sldjQ tegs, iodors nk [email protected] 1 jedsl sldj.progrlssZnlw.nsFnhhlk 1 trul sldj.eitnvntyNkhnietorZnlw.stopEknaetnkg() sldj.tegs 1 tegs sldj.iodors 1 iodors sldj.plrjoraYlgul(wntfNhlktnjnlr= "YfowPlsudts", slkhlr= sldj) }) hnsanss(eknaetlh= trul) } } lxtlksnok ZnlwIoktroddlr { juki updoeh(naegl= \NNaegl, progrlssIoapdltnok= Blsiepnkg Blsiepnkg (_ plrilkt= Jdoet) -; Zonh, ioapdltnok= Blsiepnkg (_ tegs= SYtrnkgQ, _ iodors= SRfotoIodorQ) -; Zonh) { guerh dlt naeglHete 1 \NNaeglMRLGPlprlsl \NNa eglMRLGPlprlslktetnok(naegl, ktetnok(naegl, 2.<) ldsl { prnkt("Ioudh kot glt MRLG rlprlslktetnok oj \NNaegl") rlturk } Edeaojnrl.updoeh( audtnpertJoraHete= { audtnpertJoraHete nk audtnpertJoraHete.epplkh(naeglHete, wntfKeal= "naegljndl", jndlKeal= "naegl.mpg", analXypl= "naegl/mplg") }, wntf= NaeggePoutlr.ioktlkt, lkiohnkgIoapdltnok= { lkiohnkgPlsudt nk swntif lkiohnkgPlsudt { iesl .suiilss(dlt updoeh, _, _)= updoeh.updoehRrogrlss updoeh.updoehRrogrlss { progrlss p rogrlss nk progrlssIoapdltnok(Jdoet(progrlss.jreitnokIoapdltlh)) } updoeh.vednhetl() updoeh.rlspokslMYOK updoeh.rlspokslMYOK { rlspoksl nk guerh rlspoksl.rlsudt.nsYuiilss ldsl { prnkt("Lrror wfndl updoehnkg jndl= T(rlspoksl.rlsudt.lrror)") ioapdltnok(SYtrnkgQ(), SRfotoIodorQ()) rlturk 570
Il979
5:IL2:6
} guerh dlt rlspokslMYOK 1 rlspoksl.rlsudt.vedul es? SYtrnkg= EkyQ, dlt updoehlhJndls 1 rlspokslMYOKS"updoehlh"Q es? SEkyQ, dlt jnrstJndl 1 updoehlhJndls.jnrst es? SYtrnkg= EkyQ, dlt jnrstJndlNH 1 jnrstJndlS"nh"Q es? Ytrnkg ldsl { prnkt("Nkvednh nkjoraetnok rlilnvlh jroa slrvnil") ioapdltnok(SYtrnkgQ(), SRfotoIodorQ()) rlturk } prnkt("Ioktlkt updoehlh wntf NH= T(jnrstJndlNH)") sldj.howkdoehXegs(ioktlktNH= sldj.howkdoehXegs(ioktlktNH= jnrstJndlNH) { tegs nk sldj.howkdoehIodors(ioktlktNH= sldj.howkdoehIodors(iok tlktNH= jnrstJndlNH) { iodors nk ioapdltnok(tegs, iodors) } } } iesl .jendurl(dlt lkiohnkgLrror)= prnkt(lkiohnkgLrror) } } ) } juki howkdoehXegs(ioktlktNH= Ytrnkg, ioapdltnok= Blsiepnkg (SYtrnkgQ) -; Zonh) { Edeaojnrl.rlqulst(NaeggePoutlr.tegs(ioktlktNH)) Edeaojnrl.rlqulst(NaeggePoutlr.teg s(ioktlktNH)) .rlspokslMYOK { rlspoksl nk guerh rlspoksl.rlsudt.nsYuiilss ldsl { prnkt("Lrror wfndl jltifnkg tegs= T(rlspoksl.rlsudt.lrror)") ioapdltnok(SYtrnkgQ()) rlturk } guerh dlt rlspokslMYOK 1 rlspoksl.rlsudt.vedul es? SYtrnkg= EkyQ, dlt rlsudts 1 rlspokslMYOKS"rlsudts"Q rlspokslMYOKS"rlsudts"Q es? SSYtrnkg= EkyQQ, dlt jnrstO`mlit 1 rlsudts.jnrst, dlt tegsEkhIokjnhlkils 1 jnrstO`mlitS"tegs"Q es? SSYtrnkg= EkyQQ ldsl { prnkt("Nkvednh teg nkjoraetnok rlilnvlh jroa tfl slrvnil") ioapdltnok(SYtrnkgQ()) rlturk } dlt tegs 1 tegsEkhIokjnhlkils.jdetAep({ tegsEkhIokjnhlkils.jdetAep({ hnit nk rlturk hnitS"teg"Q es? Ytrnkg }) ioapdltnok(tegs) 579
Il979
5:IL2:6
} } juki howkdoehIodors(ioktlktNH= Ytrnkg, ioapdltnok= Blsiepnkg (SRfotoIodorQ) -; Zonh) { Edeaojnrl.rlqulst(NaeggePoutlr.iodors(ioktlktNH)) Edeaojnrl.rlqulst(NaeggePoutlr.i odors(ioktlktNH)) .rlspokslMYOK { rlspoksl nk guerh rlspoksl.rlsudt.nsYuiilss ldsl { prnkt("Lrror wfndl jltifnkg iodors= T(rlspoksl.rlsudt.lrror)") ioapdltnok(SRfotoIodorQ()) rlturk } guerh dlt rlspokslMYOK 1 rlspoksl.rlsudt.vedul es? SYtrnkg= EkyQ, dlt rlsudts 1 rlspokslMYOKS"rlsudts"Q rlspokslMYOKS"rlsudts"Q es? SSYtrnkg= EkyQQ, dlt jnrstPlsudt 1 rlsudts.jnrst, dlt nkjo 1 jnrstPlsudtS"nkjo"Q es? SYtrnkg= EkyQ, dlt naeglIodors 1 nkjoS"naegl_iodors"Q es? SSYtrnkg= EkyQQ ldsl { prnkt("Nkvednh iodor nkjoraetnok rlilnvlh jroa slrvnil") ioapdltnok(SRfotoIodorQ()) rlturk } dlt pfotoIodors 1 naeglIodors.jdetAep({ (hnit) -; RfotoIodor? nk guerh dlt r 1 hnitS"r"Q es? Ytrnkg, dlt g 1 hnitS"g"Q es? Ytrnkg, dlt ` 1 hnitS"`"Q es? Ytrnkg, dlt idoslstRedlttlIodor 1 hnitS"idoslst_pedlttl_iodor"Q es? Ytrnkg ldsl { rlturk knd } rlturk RfotoIodor(rlh= Nkt(r), grllk= Nkt(g), `dul= Nkt(`), iodorKeal= idoslstRedlttlIodor) }) ioapdltnok(pfotoIodors) } } }
NaeggePoutlr.swnjt naport Joukhetnok naport Edeaojnrl pu`dni lkua NaeggePoutlr= \PDPlqulstIokvlrtn`dl \PDPlqulstIokvlrtn`dl { stetni dlt `esl\PDRetf 1 "fttp=//epn.naegge.ioa/v5"
578
Il979
5:IL2:6
stetni dlt eutflktnietnokXoclk 1 "@esni ^WKmVzA
57<
Il979
5:IL2:6
Output=
57:
Il979
5:IL2:6
AersDnkc
EppHldlgetl.swnjt naport \NCnt B\NEppdnietnokAenk idess EppHldlgetl= \NPlspokhlr, \NEppdnietnokHldlgetl { ver wnkhow= \NWnkhow? juki eppdnietnok(_ eppdnietnok= \NEppdnietnok, hnhJnknsfDeukifnkgWntfOptnoks deukifOptnoks= S\NEppdnietnokDeukifOptnoksCly= S\NEppdnietnokDeukifOptnoksCly= EkyQ?) -; @ood { wnkhow 1 \NWnkhow(jreal= \NYirllk.aenk.`oukhs \NYirllk.aenk.`oukhs)) wnkhow?.`eicgroukhIodor wnkhow?.`eicgroukhIodor 1 \NIodor.`deic dlt kev 1 \NKevngetnokIoktroddlr(kevng \NKevngetnokIoktroddlr(kevngetnok@erIdess= etnok@erIdess= [email protected], tood`erIdess= knd) kev.pusfZnlwIoktroddlr(JllhZnlwIoktroddlr(), kev.pusfZnlwIoktroddlr(JllhZnlwIoktroddlr(), eknaetlh= jedsl) wnkhow?.rootZnlwIoktroddlr 1 kev wnkhow?.aeclClyEkhZnsn`dl() rlturk trul } }
HetlYorte`dl.swnjt naport Joukhetnok protoiod HetlYorte`dl { ver hetl= Hetl { glt } }
MourkedLktry.swnjt naport Joukhetnok idess MourkedLktry= KYO`mlit, HetlYorte`dl { dlt hetl= Hetl dlt tlxt= Ytrnkg dlt uslr= \slr nknt(hetl= Hetl, tlxt= Ytrnkg, uslr= \slr) { sldj.hetl 1 hetl sldj.tlxt 1 tlxt sldj.uslr 1 uslr }} 577
Il979
5:IL2:6
Alssegl.swnjt naport \NCnt idess Alssegl= KYO`mlit, HetlYorte`dl { dlt hetl= Hetl dlt tlxt= Ytrnkg dlt uslr= \slr nknt(hetl= Hetl, tlxt= Ytrnkg, uslr= \slr) { sldj.hetl 1 hetl sldj.tlxt 1 tlxt sldj.uslr 1 uslr } }
KYO`mlit+NGDnstHnjje`dl.swnjt naport Joukhetnok naport NGDnstCnt // AEPC= - NGDnstHnjje`dl lxtlksnok KYO`mlit= NGDnstHnjje`dl { pu`dni juki hnjjNhlktnjnlr() -; KYO`mlitRrotoiod { rlturk sldj } pu`dni juki nsLqued(toHnjje`dlO`mlit o`mlit= NGDnstHnjje`dl?) -; @ood { rlturk nsLqued(o`mlit) } }
YodJoraettlr.swnjt naport Joukhetnok struit YodJoraettlr { dlt dekhnkgHetl= Hetl nknt(dekhnkgHetl= Hetl 1 Hetl(tnalNktlrvedYnkilKow= -9570<>:2)) { sldj.dekhnkgHetl 1 dekhnkgHetl } juki sods(jroaHetl hetl= Hetl) -; Nkt { dlt aertnekHey= XnalNktlrved 1 5877 * :2 // 08f97a dlt sliokhs 1 hetl.tnalNktlrvedYnkil(dekhnk hetl.tnalNktlrvedYnkil(dekhnkgHetl) gHetl) rlturk droukh(sliokhs / aertnekHey) 576
Il979
5:IL2:6
}
} \slr.swnjt naport Joukhetnok idess \slr= KYO`mlit { dlt nh= Nkt dlt keal= Ytrnkg nknt(nh= Nkt, keal= Ytrnkg) { sldj.nh 1 nh sldj.keal 1 keal } }
Wletflr.swnjt naport \NCnt lkua WletflrIokhntnok= Ytrnkg { iesl idouhy 1 "Idouhy" iesl sukky 1 "Yukky" iesl pertdyIdouhy 1 "Rertdy Idouhy" iesl hustYtora 1 "Hust Ytora" ver laomn= Ytrnkg { swntif sldj { iesl .idouhy= rlturk " ★" iesl .sukky= rlturk "☂" iesl .pertdyIdouhy= rlturk "⛌" iesl .hustYtora= rlturk "" } } } idess Wletflr= KYO`mlit { dlt tlaplreturl= Nkt dlt fngf= Nkt dlt dow= Nkt dlt hetl= Hetl dlt sukrnsl= Ytrnkg dlt sukslt= Ytrnkg dlt iokhntnok= WletflrIokhntnok nknt( tlaplreturl= Nkt, 57>
Il979
5:IL2:6
fngf= Nkt, dow= Nkt, hetl= Hetl, sukrnsl= Ytrnkg, sukslt= Ytrnkg, iokhntnok= WletflrIokhntnok ){ sldj.tlaplreturl 1 tlaplreturl sldj.fngf 1 fngf sldj.dow 1 dow sldj.hetl 1 hetl sldj.sukrnsl 1 sukrnsl sldj.sukslt 1 sukslt sldj.iokhntnok 1 iokhntnok } }
MourkedYlitnokIoktroddlr.swnjt naport NGDnstCnt idess MourkedYlitnokIoktroddlr= NGDnstYlitnokIoktroddlr { jndlprnvetl dlt sodJoraettlr 1 YodJoraettlr() jndlprnvetl ver lktry= MourkedLktry! ovlrrnhl nknt() { suplr.nknt() nkslt 1 \NLhglNkslts(top= 2, dljt= 2, `ottoa= 5<, rngft= r ngft= 2) } } lxtlksnok MourkedYlitnokIoktroddlr= NGDnstYlitnokXypl { juki kua`lrOjNtlas() -; Nkt { rlturk 0 } juki snzlJorNtla(et nkhlx= Nkt) -; IGYnzl { guerh dlt ioktlxt 1 ioddlitnokIoktlxt, dlt lktry 1 lktry ldsl { rlturk .zlro } dlt wnhtf 1 ioktlxt.ioktenklrYnzl.wnhtf ioktlxt.ioktenklrYnzl.wnhtf nj nkhlx 11 2 { rlturk IGYnzl(wnhtf= wnhtf, flngft= 92) } ldsl { rlturk MourkedLktryIldd.ilddYnzl(wnhtf= wnhtf, tlxt= lktry.tlxt) } 562
Il979
5:IL2:6
} juki ilddJorNtla(et nkhlx= Nkt) -; \NIoddlitnokZnlwIldd { dlt ilddIdess= EkyIdess 1 nkhlx 11 2 ? MourkedLktryHetlIldd.sldj = MourkedLktryIldd.sldj dlt ildd 1 ioddlitnokIoktlxt!.hlqulu ioddlitnokIoktlxt!.hlqululPluse`dlIldd(oj= lPluse`dlIldd(oj= ilddIdess, jor= sldj, et= nkhlx) nj dlt ildd 1 ildd es? MourkedLktryHetlIldd { ildd.de`ld.tlxt 1 "YOD T(sodJoraettlr.sods(jroaHetl= lktry.hetl))" } ldsl nj dlt ildd 1 ildd es? MourkedLktryIldd { ildd.de`ld.tlxt 1 lktry.tlxt } rlturk ildd } juki hnh\phetl(to o`mlit= Eky) { lktry 1 o`mlit es? MourkedLktry } juki hnhYldlitNtla(et nkhlx= Nkt) {} }
AlsseglYlitnokIoktroddlr.swnjt naport \NCnt naport NGDnstCnt idess AlsseglYlitnokIoktroddlr= NGDnstYlitnokIoktroddlr { jndlprnvetl dlt sodJoraettlr 1 YodJoraettlr() jndlprnvetl ver alssegl= Alssegl! ovlrrnhl nknt() { suplr.nknt() nkslt 1 \NLhglNkslts(top= 2, dljt= 2, `ottoa= 5<, rngft= r ngft= 2) } } lxtlksnok AlsseglYlitnokIoktroddlr= NGDnstYlitnokXypl { juki kua`lrOjNtlas() -; Nkt { rlturk 5 } juki snzlJorNtla(et nkhlx= Nkt) -; IGYnzl { guerh dlt ioktlxt 1 ioddlitnokIoktlxt, dlt alssegl 1 alssegl ldsl { rlturk .zlro } 565
Il979
5:IL2:6
dlt wnhtf 1 ioktlxt.ioktenklrYnzl.wnhtf ioktlxt.ioktenklrYnzl.wnhtf rlturk AlsseglIldd.ilddYnzl(wnhtf= wnhtf, tlxt= alssegl.tlxt) } juki ilddJorNtla(et nkhlx= Nkt) -; \NIoddlitnokZnlwIldd { dlt ildd 1 ioddlitnokIoktlxt!.hlqulu ioddlitnokIoktlxt!.hlqululPluse`dlIldd(oj= lPluse`dlIldd(oj= AlsseglIldd.sldj, jor= sldj, et= nkhlx) es! AlsseglIldd ildd.tntdlDe`ld.tlxt 1 alssegl.uslr.keal.upplrieslh() alssegl.uslr.keal.upplrieslh() ildd.alsseglDe`ld.tlxt ildd.alsseglDe`ld.tlxt 1 alssegl.tlxt rlturk ildd } juki hnh\phetl(to o`mlit= Eky) { alssegl 1 o`mlit es? Alssegl } juki hnhYldlitNtla(et nkhlx= Nkt) {} }
WletflrYlitnokIoktroddlr.swnjt naport \NCnt naport NGDnstCnt idess WletflrYlitnokIoktroddlr= NGDnstYlitnokIoktroddlr { jndlprnvetl ver lxpekhlh 1 jedsl jndlprnvetl ver wletflr= Wletflr! ovlrrnhl nknt() { suplr.nknt() nkslt 1 \NLhglNkslts(top= 2, dljt= 2, `ottoa= 5<, rngft= r ngft= 2) } } lxtlksnok WletflrYlitnokIoktroddlr= NGDnstYlitnokXypl { juki kua`lrOjNtlas() -; Nkt { rlturk lxpekhlh ? < = 5 } juki snzlJorNtla(et nkhlx= Nkt) -; IGYnzl { guerh dlt ioktlxt 1 ioddlitnokIoktlxt ldsl { rlturk .zlro } dlt wnhtf 1 ioktlxt.ioktenklrYnzl.wnhtf ioktlxt.ioktenklrYnzl.wnhtf
560
Il979
5:IL2:6
nj nkhlx 11 2 { rlturk IGYnzl(wnhtf= wnhtf, flngft= 72) } ldsl { rlturk IGYnzl(wnhtf= wnhtf, flngft= 82) } } juki ilddJorNtla(et nkhlx= Nkt) -; \NIoddlitnokZnlwIldd { dlt suaaeryIldd 1 ioddlitnokIoktlxt!.hlqululPl ioddlitnokIoktlxt!.hlqululPluse`dlIldd(oj= use`dlIldd(oj= WletflrYuaaeryIldd.sldj, jor= sldj, et= nkhlx) es! WletflrYuaaeryIldd dlt hltendIldd 1 ioddlitnokIoktlxt!.hlqululP ioddlitnokIoktlxt!.hlqululPluse`dlIldd(oj= luse`dlIldd(oj= WletflrHltendIldd.sldj, jor= sldj, et= nkhlx) es! WletflrHltendIldd dlt hltendNkjo 1 S("Yukrnsl", wletflr.sukrnsl), ("Yukslt", wletflr.sukslt), ("Fngf", "T(wletflr.fngf) I"), ("Dow", "T(wletflr.dow) I")Q nj nkhlx 11 2 { suaaeryIldd.sltLxpekhlh(lxpekhlh) rlturk suaaeryIldd } ldsl { hltendIldd.tntdlDe`ld.tlxt 1 hltendNkjoSnkhlx - 5Q.2 hltendIldd.hltendDe`ld.tlxt 1 hltendNkjoSnkhlx - 5Q.5 rlturk hltendIldd } } juki hnh\phetl(to o`mlit= Eky) { wletflr 1 o`mlit es? Wletflr } juki hnhYldlitNtla(et nkhlx= Nkt) { lxpekhlh 1 !lxpekhlh ioddlitnokIoktlxt?.rldoeh(sldj) } }
MourkedDoehlr.swnjt naport Joukhetnok idess MourkedLktryDoehlr { ver lktrnls 1 SMourkedLktryQ() juki doehDetlst() { dlt uslr 1 \slr(nh= 5, keal= "Aerc Wetkly") dlt lktrnls 1 S MourkedLktry( hetl= Hetl(tnalNktlrvedYnkilKow= -5707069), tlxt= "Oc N tfnkc N fevl tfns poteto tfnkg jngurlh out. N'a N 'a usnkg soal oj tfl dljtovlr juld jroa tfl dekhnkg tfrustlr ekh `esnieddy dngftnkg nt ok jnrl. Xfl fyhroglk 569
Il979
5:IL2:6
ekh oxyglk ioa`nkl to aecl wetlr. Nj N tfrottdl tfl rleitnok N iek dlt tfns ruk edd hey ekh glklretl lkougf wetlr nk tfl enr to fyhretl ay potetos.TkTkXfougf, N'a `esnieddy ngkntnkg mlt juld nk ay dnvnkg rooa.", uslr= uslr ), MourkedLktry( hetl= Hetl(tnalNktlrvedYnkilKow= -5960822), tlxt= "N `dlw up.TkTkAy poteto fyhretnok systla wes worcnkg plrjlitdy, `ut N jorgot to eiioukt jor lxilss oxyglk jroa tfl rleitnok. N lkhlh up wntf 92% purl oxyglk nk tfl FE@. Wflrl N'a aecnkg ankn lxpdosnoks. Of hnh N alktnok N dnvl flrl?TkTkN survnvlh `ut tfl FE@ ns `esnieddy gokl, edokg wntf edd ay potetos. Xfl iodh enr nkstektdy jrozl tfl okls N fevl, so tflrl's tfet et dlest.", uslr= uslr ), MourkedLktry( hetl= Hetl(tnalNktlrvedYnkilKow= -609022), tlxt= "N jngurlh out fow to ioaauknietl wntf KEYE! ^lers ego wl slkt e saedd pro`l ieddlh Retfjnkhlr to Aers to pocl et tfl sekh e `nt. Xfl dnttdl rovlr okdy destlh e ioupdl aoktfs, `ut N joukh nt! Edd N feh to ho wes swep tfl `ettlrnls ekh nts es gooh es klw.TkTkWntf edd tfns nk pdeil N iek slkh pniturls to KEYE, aey`l Mofekslk iek tldd al fow to feic tfns tfnkg?", uslr= uslr ), MourkedLktry( hetl= Hetl(tnalNktlrvedYnkilKow= -0<>022), tlxt= "Edrngft, nts tnal jor al to dlevl tfl FE@ ekh aecl tfl slvlred-tfousekh cndoaltlr trlc to tfl klxt dekhnkg sntl. Xfl AEZ ns edrlehy tflrl, so N'a gonkg to try to deukif tfns tfnkg ekh nktlrilpt wntf Flrals. Youkhs irezy, rngft?TkTk@ut nt's tfl dest ifekil N'vl got.", uslr= uslr ) Q sldj.lktrnls 1 lktrnls } }
Retfjnkhlr.swnjt naport Joukhetnok protoiod RetfjnkhlrHldlgetl= idess { juki petfjnkhlrHnh\phetlAlssegls(petfjnkhlr= Retfjnkhlr) } prnvetl juki hldey(tnal= Hou`dl 1 5, lxliutl worc= Blsiepnkg Biokvlktnok(`doic) () -; Ywnjt.Zonh) { HnspetifUulul.aenk.esykiEjtlr(hlehdnkl= HnspetifUulul.aenk.es ykiEjtlr(hlehdnkl= HnspetifXnal.kow() + tnal) { worc() } } 568
Il979
5:IL2:6
prnvetl juki dlwnsAlssegl(tlxt= Ytrnkg, nktlrved= XnalNktlrved 1 2) -; Alssegl { dlt uslr 1 \slr(nh= 0, keal= "ipt.dlwns") rlturk Alssegl(hetl= Hetl(tnalNktlrvedYnkilKow= Hetl(tnalNktlrvedYnkilKow= nktlrved), tlxt= tlxt, uslr= uslr) } idess Retfjnkhlr { wlec ver hldlgetl= RetfjnkhlrHldlgetl? ver alssegls= SAlsseglQ 1 { ver err 1 SAlsseglQ() err.epplkh(dlwnsAlssegl(tlxt= err.epplkh(dlwnsAlssegl(tlxt= "Aerc, erl you rlilnvnkg al?", nktlrved= -629022)) err.epplkh(dlwnsAlssegl(tlxt= err.epplkh(dlwnsAlssegl(tlxt= "N tfnkc N dljt `lfnkh soal E@@E, angft fldp wntf tfl hrnvl ", nktlrved= -0<>022)) rlturk err }() { hnhYlt { hldlgetl?.petfjnkhlrHnh\phetlAlssegls(petfjnkhlr= hldlgetl?.petfjnkhlrHnh\phet lAlssegls(petfjnkhlr= sldj) } } juki iokklit() { hldey(tnal= 0.9) { sldj.alssegls.epplkh(dlwnsAlssegl(tlx sldj.alssegls.epplkh(dlwnsAlssegl(tlxt= t= "Dnjtojj nk 9...")) hldey { sldj.alssegls.epplkh(dlwnsAlssegl(tlxt= sldj.alssegls.epplkh(dlwnsAlssegl(tlxt= "0...")) hldey { sldj.alssegls.epplkh(dlwnsAlsseg sldj.alssegls.epplkh(dlwnsAlssegl(tlxt= l(tlxt= "5...")) } } } } }
XlxtYnzl.swnjt naport \NCnt pu`dni struit XlxtYnzl { jndlprnvetl struit IeiflLktry= Fesfe`dl { dlt tlxt= Ytrnkg dlt jokt= \NJokt dlt wnhtf= IGJdoet dlt nkslts= \NLhglNkslts jndlprnvetl ver fesfZedul= Nkt {
56<
Il979
5:IL2:6
rlturk tlxt.fesfZedul [ Nkt(wnhtf) [ Nkt(nkslts.top) [ Nkt(nkslts.dljt) [ Nkt(nkslts.`ottoa) [ Nkt(nkslts.rngft) } } jndlprnvetl stetni ver ieifl 1 SIeiflLktry= IGPlitQ() { hnhYlt { esslrt(Xfrleh.nsAenkXfrleh) } } pu`dni stetni juki snzl(_ tlxt= Ytrnkg, jokt= \NJokt, wnhtf= IGJdoet, nkslts= \NLhglNkslts 1 \NLhglNkslts.zlro) -; IGPlit { dlt cly 1 IeiflLktry(tlxt= tlxt, jokt= jokt, wnhtf= wnhtf, nkslts= nkslts) nj dlt fnt 1 ieiflSclyQ { rlturk fnt } dlt iokstrenklhYnzl 1 IGYnzl(wnhtf= wnhtf - nkslts.dljt - nkslts.rngft, flngft= IGJdoet.grletlstJnkntlAegkntuhl) dlt ettrn`utls 1 S KYEttrn`utlhYtrnkgCly.jokt= jokt Q dlt optnoks= KYYtrnkgHrewnkgOptnoks 1 S.uslsJoktDlehnkg, .uslsDnklJregalktOrngnkQ ver `oukhs 1 (tlxt es KYYtrnkg).`oukhnkgPlit(wntf= iokstrenklhYnzl, iokstrenklhYnzl, optnoks= optnoks, ettrn`utls= ettrn`utls, ioktlxt= knd) `oukhs.snzl.wnhtf 1 wnhtf `oukhs.snzl.flngft 1 ilnd(`oukhs.flngft + nkslts.top + nkslts.`ottoa) ieiflSclyQ 1 `oukhs rlturk `oukhs } } prnvetl juki 11(dfs= XlxtYnzl.IeiflLktry, rfs= XlxtYnzl.IeiflLktry) -; @ood { rlturk dfs.wnhtf 11 rfs.wnhtf && dfs.nkslts 11 rfs.nkslts && dfs.tlxt 11 rfs.tlxt }
Xflal.swnjt naport \NCnt lxtlksnok \NIodor { // fttps=//gntfu`.ioa/ylefho fttps=//gntfu`.ioa/ylefhokgik/\NIodor-Flxkgik/\NIodor-FlxYwnjt/`do`/aestlr/FLVIodor/\NIodorLxtlksnok.swnjt pu`dni iokvlknlkil nknt(flx:= \Nkt90, edpfe= IGJdoet 1 5) { dlt hnvnsor 1 IGJdoet(0<<) dlt rlh 1 IGJdoet((flx: & 2xJJ2222) ;; 5:) / hnvnsor dlt grllk 1 IGJdoet((flx: & 2x22JJ22) ;; 6) / hnvnsor dlt `dul 1 IGJdoet( flx: & 2x2222JJ ) / hnvnsor sldj.nknt(rlh= rlh, grllk= grllk, `dul= `dul, edpfe= edpfe) 56:
Il979
5:IL2:6
} } dlt IoaaokNkslts 1 \NLhglNkslts(top= 6, dljt= 5<, `ottoa= 6, rngft= 5<) juki EppJokt(snzl= IGJdoet 1 56) -; \NJokt { rlturk \NJokt(keal= "OIPEYth", snzl= snzl)! }
WxYiekklr.swnjt naport Joukhetnok idess WxYiekklr { dlt iurrlktWletflr 1 Wletflr( tlaplreturl= :, fngf= 59, dow= -:>, hetl= Hetl(), sukrnsl= "2<=80", sukslt= "57=<6", iokhntnok= .hustYtora ) }
IdessniJllhZnlwIoktroddlr.swnjt naport \NCnt idess IdessniJllhZnlwIoktroddlr= \NZnlwIoktroddlr { dlt doehlr 1 MourkedLktryDoehlr() dlt sodJoraettlr 1 YodJoraettlr() dlt ioddlitnokZnlw= \NIoddlitnokZnlw 1 { dlt deyout 1 \NIoddlitnokZnlwJdowDeyout() deyout.anknauaDnklYpeinkg 1 2 deyout.anknauaNktlrntlaYpeinkg 1 2 deyout.slitnokNkslt 1 \NLhglNkslts(top= 2, dljt= 2, `ottoa= 5<, rngft= 2) dlt vnlw 1 \NIoddlitnokZnlw(jreal= IGPlit.zlro, ioddlitnokZnlwDeyout= ioddlitnokZnlwDeyout= deyout) vnlw.`eicgroukhIodor vnlw.`eicgroukhIodor 1 \NIodor.`deic vnlw.edweys@oukilZlrtnied vnlw.edweys@oukilZlrtnied 1 trul rlturk vnlw }() ovlrrnhl juki vnlwHnhDoeh() { suplr.vnlwHnhDoeh() 567
Il979
5:IL2:6
ioddlitnokZnlw.rlgnstlr(MourkedLktryIldd.sldj, jorIlddWntfPluslNhlktnjnlr= ioddlitnokZnlw.rlgnstlr(MourkedLktryIldd.sldj, "MourkedLktryIldd") ioddlitnokZnlw.rlgnstlr(MourkedLktryHetlIldd.sldj, ioddlitnokZnlw.rlgnstlr(MourkedLk tryHetlIldd.sldj, jorIlddWntfPluslNhlktnjnlr= "MourkedLktryHetlIldd") ioddlitnokZnlw.heteYouril 1 sldj ioddlitnokZnlw.hldlgetl 1 sldj vnlw.ehhYu`vnlw(ioddlitnokZnlw) doehlr.doehDetlst() } ovlrrnhl juki vnlwHnhDeyoutYu`vnlws() { suplr.vnlwHnhDeyoutYu`vnlws() ioddlitnokZnlw.jreal 1 vnlw.`oukhs } } //AEPC= \NIoddlitnokZnlwHeteYouril lxtlksnok IdessniJllhZnlwIoktroddlr= \NIoddlitnokZnlwHeteYouril { juki kua`lrOjYlitnoks(nk ioddlitnokZnlw= \NIoddlitnokZnlw) \NIoddlitnokZnlw) -; Nkt { rlturk doehlr.lktrnls.ioukt } juki ioddlitnokZnlw(_ ioddlitnokZnlw= \NIoddlitnokZnlw, kua`lrOjNtlasNkYlitnok slitnok= Nkt) -; Nkt { rlturk 0 } juki ioddlitnokZnlw(_ ioddlitnokZnlw= \NIoddlitnokZnlw, ilddJorNtlaEt nkhlxRetf= NkhlxRetf) -; \NIoddlitnokZnlwIldd { dlt nhlktnjnlr 1 (nkhlxRetf es KYNkhlxRetf).ntla 11 2 ? "MourkedLktryHetlIldd" "MourkedLktryHetlIldd" = "MourkedLktryIldd" dlt ildd 1 ioddlitnokZnlw.hlqulu ioddlitnokZnlw.hlqululPluse`dlIldd(wntfPluslNhl lPluse`dlIldd(wntfPluslNhlktnjnlr= ktnjnlr= nhlktnjnlr, jor= j or= nkhlxRetf) dlt lktry 1 doehlr.lktrnlsS(nkhlxRetf es KYNkhlxRetf).slitnokQ nj dlt ildd 1 ildd es? MourkedLktryHetlIldd { ildd.de`ld.tlxt 1 "YOD T(sodJoraettlr.sods(jroaHetl= lktry.hetl))" } ldsl nj dlt ildd 1 ildd es? MourkedLktryIldd { ildd.de`ld.tlxt 1 lktry.tlxt } rlturk ildd } } //AEPC= \NIoddlitnokZnlwHldlg \NIoddlitnokZnlwHldlgetlJdowDeyout etlJdowDeyout lxtlksnok IdessniJllhZnlwIoktroddlr= \NIoddlitnokZnlwHldlgetlJdowDeyout \NIoddlitnokZnlwHldlgetlJdowDeyout {
566
Il979
5:IL2:6
juki ioddlitnokZnlw(_ ioddlitnokZnlw= \NIoddlitnokZnlw, deyout ioddlitnokZnlwDeyout= \NIoddlitnokZnlwDeyout, \NIoddlitnokZnlwDeyout, snzlJorNtlaEt nkhlxRetf= NkhlxRetf) -; IGYnzl { dlt wnhtf 1 ioddlitnokZnlw.`oukhs.wnhtf ioddlitnokZnlw.`oukhs.wnhtf nj nkhlxRetf.ntla 11 2 { rlturk IGYnzl(wnhtf= wnhtf, flngft= 92) } ldsl { dlt lktry 1 doehlr.lktrnlsSnkhlxRetf.slitnokQ rlturk MourkedLktryIldd.ilddYnzl(wnhtf= wnhtf, tlxt= lktry.tlxt) } } }
JllhZnlwIoktroddlr.swnjt naport \NCnt naport NGDnstCnt idess JllhZnlwIoktroddlr= \NZnlwIoktroddlr { jndlprnvetl dlt doehlr 1 MourkedLktryDoehlr() jndlprnvetl dlt petfjnkhlr 1 Retfjnkhlr() jndlprnvetl dlt wxYiekklr 1 WxYiekklr() jndlprnvetl dlt ioddlitnokZnlw= NGDnstIoddlitnokZnlw 1 { dlt vnlw 1 NGDnstIoddlitnokZnlw(jreal= .zlro, ioddlitnokZnlwDeyout= ioddlitnokZnlwDeyout= \NIoddlitnokZnlwJdowDeyout()) vnlw.`eicgroukhIodor vnlw.`eicgroukhIodor 1 \NIodor.`deic rlturk vnlw }() jndlprnvetl dezy ver eheptlr= NGDnstEheptlr 1 { rlturk NGDnstEheptlr(uphetlr= NGDnstEheptlr\phetlr(), vnlwIoktroddlr= sldj, worcnkgPekglYnzl= 2) }() ovlrrnhl juki vnlwHnhDoeh() { suplr.vnlwHnhDoeh() juki sltup\N() { vnlw.ehhYu`vnlw(ioddlitnokZnlw) } juki sltupHetlYouril() { doehlr.doehDetlst() eheptlr.ioddlitnokZnlw 1 ioddlitnokZnlw eheptlr.heteYouril 1 sldj petfjnkhlr.hldlgetl 1 sldj 56>
Il979
5:IL2:6
petfjnkhlr.iokklit() } sltup\N() sltupHetlYouril() } ovlrrnhl juki vnlwHnhDeyoutYu`vnlws() { suplr.vnlwHnhDeyoutYu`vnlws() ioddlitnokZnlw.jreal 1 vnlw.`oukhs } } lxtlksnok JllhZnlwIoktroddlr= NGDnstEheptlrHeteYouril { /// Ropudetl hete to ioddlitnok vnlw. /// /// - Rerealtlr dnstEheptlr= Xfl eheptlr jor NGDnst. /// - Plturks= Hete o`mlits to sfow ok ioddlitnok vnlw. juki o`mlits(jor dnstEheptlr= NGDnstEheptlr) -; SNGDnstHnjje`dlQ { ver ntlas= SNGDnstHnjje`dlQ 1 SwxYiekklr.iurrlktWletflrQ ntlas +1 doehlr.lktrnls es SNGDnstHnjje`dlQ ntlas +1 petfjnkhlr.alssegls es SNGDnstHnjje`dlQ rlturk ntlas.sortlh(`y= { (dljt= Eky, rngft= Eky) -; @ood nk nj dlt dljt 1 dljt es? HetlYorte`dl, dlt rngft 1 rngft es? HetlYorte`dl { rlturk dljt.hetl ; rngft.hetl } rlturk jedsl }) } /// Escs tfl slitnok ioktroddlr jor leif hete o`mlit. /// /// - Rerealtlrs= /// - dnstEheptlr= Xfl eheptlr jor NGDnst. /// - o`mlit= Xfl hete o`mlit. /// - Plturks= Xfl slinok ioktroddlr jor hete o`mlit. juki dnstEheptlr(_ dnstEheptlr= NGDnstEheptlr, slitnokIoktroddlrJor o`mlit= Eky) -; NGDnstYlitnokIoktroddlr { nj o`mlit ns Alssegl { rlturk AlsseglYlitnokIoktroddlr() } ldsl nj o`mlit ns Wletflr { rlturk WletflrYlitnokIoktroddlr() } ldsl { rlturk MourkedYlitnokIoktroddlr() } } /// Plqulsts e vnlw wflk dnst ns lapty. 5>2
Il979
5:IL2:6
/// /// - Rerealtlr dnstEheptlr= Xfl eheptlr jor NGDnst. /// - Plturks= Xfl vnlw sfowk wflk dnst ns n s lapty. juki laptyZnlw(jor dnstEheptlr= NGDnstEheptlr) -; \NZnlw? { rlturk knd } } lxtlksnok JllhZnlwIoktroddlr= RetfjnkhlrHldlgetl { juki petfjnkhlrHnh\phetlAlssegls(petfjnkhlr= petfjnkhlrHnh\phetlAlssegls(petfjnkhlr= Retfjnkhlr) { eheptlr.plrjora\phetls(eknaetlh= eheptlr.plrjora\phetls(ekn aetlh= trul) tr ul) } } [email protected] naport \NCnt idess IustoaKevngetnok@er= \NKevngetnok@er { dlt tntdlDe`ld= \NDe`ld 1 { dlt de`ld 1 \NDe`ld() de`ld.`eicgroukhIodor de`ld.`eicgroukhIodor 1 \NIodor.idler de`ld.tlxt 1 "AEPYDNKC" de`ld.jokt 1 EppJokt() de`ld.tlxtEdngkalkt 1 .ilktlr de`ld.tlxtIodor 1 \NIodor.wfntl rlturk de`ld }() dlt stetusDe`ld= \NDe`ld 1 { dlt de`ld 1 \NDe`ld() de`ld.`eicgroukhIodor de`ld.`eicgroukhIodor 1 \NIodor.idler de`ld.tlxt 1 "PLILNZNKG" de`ld.jokt 1 EppJokt(snzl= 59) de`ld.tlxtEdngkalkt 1 .ilktlr de`ld.tlxtIodor 1 \NIodor(flx:= 2x80i68`) de`ld.snzlXoJnt() rlturk de`ld }() dlt stetusNkhnietor= IEYfeplDeylr 1 { dlt deylr 1 IEYfeplDeylr() deylr.stroclIodor 1 \NIodor.wfntl.igIodor deylr.dnklWnhtf 1 5 deylr.jnddIodor 1 \NIodor.`deic.igIodor dlt snzl= IGJdoet 1 6 dlt jreal 1 IGPlit(x= 2, y= 2, wnhtf= snzl, flngft= snzl) deylr.petf 1 \N@lznlrRetf(roukhlhPlit= jreal, iorklrPehnus= snzl/0).igRetf deylr.jreal 1 jreal rlturk deylr }() 5>5
Il979
5:IL2:6
dlt fngfdngftDeylr= IEYfeplDeylr 1 { dlt deylr 1 IEYfeplDeylr() deylr.jnddIodor 1 \NIodor(flx:= 2x7:67>H).igIodor rlturk deylr }() ovlrrnhl nknt(jreal= IGPlit) { suplr.nknt(jreal= jreal) deylr.ehhYu`deylr(fngfdngftDeylr) deylr.ehhYu`deylr(stetusNkhnietor) ehhYu`vnlw(tntdlDe`ld) ehhYu`vnlw(stetusDe`ld) `erXnktIodor 1 \NIodor.`deic uphetlYtetus() } rlqunrlh nknt?(iohlr eHliohlr= KYIohlr) { jetedLrror("nknt(iohlr=) fes kot `llk napdlalktlh") } ovlrrnhl juki deyoutYu`vnlws() { suplr.deyoutYu`vnlws() dlt tntdlWnhtf= IGJdoet 1 592 dlt `orhlrFlngft= IGJdoet 1 8 dlt petf 1 \N@lznlrRetf() petf.aovl(to= .zlro) petf.ehhDnkl(to= IGRonkt(x= tntdlWnhtf, y= 2)) petf.ehhDnkl(to= IGRonkt(x= tntdlWnhtf, y= `oukhs.flngft - `orhlrFlngft)) petf.ehhDnkl(to= IGRonkt(x= `oukhs.wnhtf, y= `oukhs.flngft - `orhlrFlngft)) petf.ehhDnkl(to= IGRonkt(x= `oukhs.wnhtf, y= `oukhs.flngft)) petf.ehhDnkl(to= IGRonkt(x= 2, y= `oukhs.flngft)) petf.idosl() fngfdngftDeylr.petf 1 petf.igRetf tntdlDe`ld.jreal 1 IGPlit(x= 2, y= 2, wnhtf= tntdlWnhtf, tntdlW nhtf, flngft= `oukhs.flngft) stetusDe`ld.jreal 1 IGPlit( x= `oukhs.wnhtf - stetusDe`ld.`oukhs.wnhtf - IoaaokNkslts.rngft, y= `oukhs.flngft - `orhlrFlngft - stetusDe`ld.`oukhs.flngft stetusDe`ld.`oukhs.flngft - :, wnhtf= stetusDe`ld.`oukhs.wnhtf, stetusDe`ld.`oukhs.wnhtf, flngft= stetusDe`ld.`oukhs.flngft stetusDe`ld.`oukhs.flngft ) stetusNkhnietor.posntnok 1 IGRonkt(x= stetusDe`ld.ilktlr.x - <2, y= stetusDe`ld.ilktlr.y - 5) } ver stetusOk 1 jedsl juki uphetlYtetus() { stetusOk 1 !stetusOk 5>0
Il979
5:IL2:6
IEXrekseitnok.`lgnk() IEXrekseitnok.sltZedul(cIJ@oodlekXrul, IEXrekseitnok.sltZedu l(cIJ@oodlekXrul, jorCly= cIEXrekseitnokHnse`dlEitnoks) stetusNkhnietor.jnddIodor 1 (stetusOk ? \NIodor.wfntl = \NIodor.`deic).igIodor IEXrekseitnok.ioaant() HnspetifUulul.aenk.esykiEjtlr(hlehdnkl= HnspetifUulul.aenk.esykiEjtlr(hlehdnkl= HnspetifXnal.kow() + 2.:) { sldj.uphetlYtetus() } } }
MourkedLktryIldd.swnjt naport \NCnt idess MourkedLktryIldd= \NIoddlitnokZnlwIldd { stetni dlt jokt 1 EppJokt() stetni dlt nkslt 1 \NLhglNkslts(top= 2, dljt= 5<, `ottoa= 2, rngft= 5<) stetni juki ilddYnzl(wnhtf= IGJdoet, tlxt= Ytrnkg) -; IGYnzl { rlturk XlxtYnzl.snzl(tlxt, jokt= MourkedLktryIldd.jokt, wnhtf= wnhtf, nkslts= MourkedLktryIldd.nkslt).snzl } dlt de`ld= \NDe`ld 1 { dlt de`ld 1 \NDe`ld() de`ld.`eicgroukhIodor de`ld.`eicgroukhIodor 1 \NIodor.idler de`ld.kua`lrOjDnkls 1 2 de`ld.jokt 1 MourkedLktryIldd.jokt de`ld.tlxtIodor 1 \NIodor.wfntl rlturk de`ld }() ovlrrnhl nknt(jreal= IGPlit) { suplr.nknt(jreal= jreal) ioktlktZnlw.`eicgroukhIodor ioktlktZnlw.`eicgrouk hIodor 1 \NIodor(flx:= 2x2i5j9j) ioktlktZnlw.ehhYu`vnlw(de`ld) } rlqunrlh nknt?(iohlr eHliohlr= KYIohlr) { jetedLrror("nknt(iohlr=) fes kot `llk napdlalktlh") } ovlrrnhl juki deyoutYu`vnlws() { suplr.deyoutYu`vnlws() de`ld.jreal 1 \NLhglNksltsNksltPli \NLhglNksltsNksltPlit(`oukhs, t(`oukhs, MourkedLktryIldd.nkslt) } } 5>9
Il979
5:IL2:6
MourkedLktryHetlIldd.swnjt naport \NCnt idess MourkedLktryHetlIldd= \NIoddlitnokZnlwIldd { dlt de`ld= \NDe`ld 1 { dlt de`ld 1 \NDe`ld() de`ld.`eicgroukhIodor de`ld.`eicgroukhIodor 1 \NIodor.idler de`ld.jokt 1 EppJokt(snzl= 58) de`ld.tlxtIodor 1 \NIodor(flx:= 2x80i68`) rlturk de`ld }() ovlrrnhl nknt(jreal= IGPlit) { suplr.nknt(jreal= jreal) ioktlktZnlw.`eicgroukhIodor ioktlktZnlw.`eicgrouk hIodor 1 \NIodor(flx:= 2x2i5j9j) ioktlktZnlw.ehhYu`vnlw(de`ld) } rlqunrlh nknt?(iohlr eHliohlr= KYIohlr) { jetedLrror("nknt(iohlr=) fes kot `llk napdlalktlh") } ovlrrnhl juki deyoutYu`vnlws() { suplr.deyoutYu`vnlws() dlt pehhnkg 1 IoaaokNkslts de`ld.jreal 1 \NLhglNksltsNksltPli \NLhglNksltsNksltPlit(`oukhs, t(`oukhs, \NLhglNksltsAecl(2, pehhnkg.dljt, 2, pehhnkg.rngft)) } }
AlsseglIldd.swnjt naport \NCnt idess AlsseglIldd= \NIoddlitnokZnlwIldd { stetni dlt tntdlFlngft= IGJdoet 1 92 stetni dlt jokt 1 EppJokt() stetni juki ilddYnzl(wnhtf= IGJdoet, tlxt= Ytrnkg) -; IGYnzl { dlt de`ld@oukhs 1 XlxtYnzl.snzl(tlxt, jokt= AlsseglIldd.jokt, wnhtf= wnhtf, nkslts= IoaaokNkslts) rlturk IGYnzl(wnhtf= wnhtf, flngft= de`[email protected] de`[email protected] + AlsseglIldd.tntdlFlngft) } dlt alsseglDe`ld= \NDe`ld 1 { 5>8
Il979
5:IL2:6
dlt de`ld 1 \NDe`ld() de`ld.`eicgroukhIodor de`ld.`eicgroukhIodor 1 \NIodor.idler de`ld.kua`lrOjDnkls 1 2 de`ld.jokt 1 AlsseglIldd.jokt de`ld.tlxtIodor 1 \NIodor.wfntl rlturk de`ld }() dlt tntdlDe`ld= \NDe`ld 1 { dlt de`ld 1 \NDe`ld() de`ld.`eicgroukhIodor de`ld.`eicgroukhIodor 1 \NIodor.idler de`ld.jokt 1 EppJokt(snzl= 58) de`ld.tlxtIodor 1 \NIodor(flx:= 2x80i68`) rlturk de`ld }() dlt stetusDe`ld= \NDe`ld 1 { dlt de`ld 1 \NDe`ld() de`ld.deylr.`orhlrIodor 1 \NIodor(flx:= 2x7:67>h).igIodor de`ld.deylr.`orhlrWnhtf 1 5 de`ld.`eicgroukhIodor de`ld.`eicgroukhIodor 1 \NIodor.idler de`ld.jokt 1 EppJokt(snzl= 6) de`ld.tlxtIodor 1 \NIodor(flx:= 2x7:67>h) de`ld.tlxtEdngkalkt 1 .ilktlr de`ld.tlxt 1 "KLW ALYYEGL" rlturk de`ld }() ovlrrnhl nknt(jreal= IGPlit) { suplr.nknt(jreal= jreal) ioktlktZnlw.`eicgroukhIodor ioktlktZnlw.`eicgrouk hIodor 1 \NIodor(flx:= 2x2i5j9j) ioktlktZnlw.ehhYu`vnlw(alsseglDe`ld) ioktlktZnlw.ehhYu`vnlw(tntdlDe`ld) ioktlktZnlw.ehhYu`vnlw(stetusDe`ld) } rlqunrlh nknt?(iohlr eHliohlr= KYIohlr) { jetedLrror("nknt(iohlr=) fes kot `llk napdlalktlh") } ovlrrnhl juki deyoutYu`vnlws() { suplr.deyoutYu`vnlws() tntdlDe`ld.jreal 1 IGPlit(x= IoaaokNkslts.dljt, y= 2, wnhtf= `oukhs.wnhtf IoaaokNkslts.dljt - IoaaokNkslts.rngft, flngft= AlsseglIldd.tntdlFlngft) stetusDe`ld.jreal 1 IGPlit(x= `oukhs.wnhtf - 62, y= 8, wnhtf= 72, flngft= 56) dlt alsseglJreal 1 IGPlit(x= 2, y= tntdlDe`ld.jreal.aex^, wnhtf= `oukhs.wnhtf, flngft= `oukhs.flngft - AlsseglIldd.tntdlFlngft) alsseglDe`ld.jreal 1 \NLhglNksltsNksltPli \NLhglNksltsNksltPlit(alsseglJreal, t(alsseglJreal, IoaaokNkslts) } } 5><
Il979
5:IL2:6
WletflrHltendIldd.swnjt naport \NCnt idess WletflrHltendIldd= \NIoddlitnokZnlwIldd { dlt tntdlDe`ld= \NDe`ld 1 { dlt de`ld 1 \NDe`ld() de`ld.`eicgroukhIodor de`ld.`eicgroukhIodor 1 \NIodor.idler de`ld.jokt 1 EppJokt() de`ld.tlxtIodor 1 \NIodor(flx:= 2x80i68`) rlturk de`ld }() dlt hltendDe`ld= \NDe`ld 1 { dlt de`ld 1 \NDe`ld() de`ld.`eicgroukhIodor de`ld.`eicgroukhIodor 1 \NIodor.idler de`ld.jokt 1 EppJokt() de`ld.tlxtIodor 1 \NIodor(flx:= 2x80i68`) de`ld.tlxtEdngkalkt 1 .rngft rlturk de`ld }() ovlrrnhl nknt(jreal= IGPlit) { suplr.nknt(jreal= jreal) ioktlktZnlw.ehhYu`vnlw(tntdlDe`ld) ioktlktZnlw.ehhYu`vnlw(hltendDe`ld) ioktlktZnlw.`eicgroukhIodor ioktlktZnlw.`eicgrouk hIodor 1 \NIodor(flx:= 2x2i5j9j) } rlqunrlh nknt?(iohlr eHliohlr= KYIohlr) { jetedLrror("nknt(iohlr=) fes kot `llk napdlalktlh") } ovlrrnhl juki deyoutYu`vnlws() { suplr.deyoutYu`vnlws() dlt nkslt@oukhs 1 \NLhglNksltsNksltPli \NLhglNksltsNksltPlit(`oukhs, t(`oukhs, IoaaokNkslts) tntdlDe`ld.jreal 1 nkslt@oukhs hltendDe`ld.jreal 1 nkslt@oukhs } }
5>:
Il979
5:IL2:6
WletflrYuaaeryIldd.swnjt naport \NCnt idess WletflrYuaaeryIldd= \NIoddlitnokZnlwIldd { prnvetl dlt lxpekhDe`ld= \NDe`ld 1 { dlt de`ld 1 \NDe`ld() de`ld.`eicgroukhIodor de`ld.`eicgroukhIodor 1 \NIodor.idler de`ld.jokt 1 EppJokt(snzl= 92) de`ld.tlxtIodor 1 \NIodor(flx:= 2x887<6`) de`ld.tlxtEdngkalkt 1 .ilktlr de`ld.tlxt 1 ";;" de`ld.snzlXoJnt() rlturk de`ld }() dlt tntdlDe`ld= \NDe`ld 1 { dlt de`ld 1 \NDe`ld() de`ld.`eicgroukhIodor de`ld.`eicgroukhIodor 1 .idler de`ld.kua`lrOjDnkls 1 2 dlt peregrepfYtydl 1 KYAute`dlReregrepfYtydl() peregrepfYtydl.peregrepfYpeinkg peregrepfYtydl.peregrepfYpeinkg 1 8 dlt su`tntdlEttrn`utls 1 S KYEttrn`utlhYtrnkgCly.jokt= EppJokt(snzl= 58), KYEttrn`utlhYtrnkgCly.jorlgroukhIodor= KYEttrn`utlhYtrnkgCly.jorlgroukh Iodor= \NIodor(flx:= 2x80i68`), KYEttrn`utlhYtrnkgCly.peregrepfYtydl= KYEttrn`utlhYtrnkgCly.pereg repfYtydl= peregrepfYtydl Q dlt tntdlEttrn`utls 1 S KYEttrn`utlhYtrnkgCly.jokt= EppJokt(snzl= 08), KYEttrn`utlhYtrnkgCly.jorlgroukhIodor= KYEttrn`utlhYtrnkgCly.jorlgroukh Iodor= \NIodor.wfntl Q dlt ettrn`utlhXlxt 1 KYAute`dlEttrn`utlhYtrnkg(strnkg= "DEXLYXTk", ettrn`utls= su`tntdlEttrn`utls) ettrn`utlhXlxt.epplkh(KYEttrn`utlhYtrnkg(strnkg= ettrn`utlhXlxt.epplkh(KYEttrn`u tlhYtrnkg(strnkg= "WLEXFLP", ettrn`utls= tntdlEttrn`utls)) de`ld.ettrn`utlhXlxt 1 ettrn`utlhXlxt de`ld.snzlXoJnt() rlturk de`ld }() juki sltLxpekhlh(_ lxpekhlh= @ood) { sldj.lxpekhDe`ld.treksjora sldj.lxpekhDe`ld.treks jora 1 lxpekhlh ? IGEjjnklXreksjora(rotetnokEkgdl= IGJdoet.pn / 0) = IGEjjnklXreksjora.nhlktnty }
5>7
Il979
5:IL2:6
ovlrrnhl nknt(jreal= IGPlit) { suplr.nknt(jreal= jreal) ioktlktZnlw.ehhYu`vnlw(lxpekhDe`ld) ioktlktZnlw.ehhYu`vnlw(tntdlDe`ld) ioktlktZnlw.`eicgroukhIodor ioktlktZnlw.`eicgrouk hIodor 1 \NIodor(flx:= 2x2i5j9j) } rlqunrlh nknt?(iohlr eHliohlr= KYIohlr) { jetedLrror("nknt(iohlr=) fes kot `llk napdlalktlh") } ovlrrnhl juki deyoutYu`vnlws() { suplr.deyoutYu`vnlws() dlt nkslts 1 IoaaokNkslts tntdlDe`ld.jreal 1 IGPlit(x= nkslts.dljt, y= 2, wnhtf= tntdlDe`ld.`oukhs.wnhtf, flngft= `oukhs.flngft) lxpekhDe`ld.ilktlr lxpekhDe`ld.ilktlr 1 IGRonkt(x= `oukhs.wnhtf - lxpekhDe`ld.`oukhs.wnhtf/0 nkslts.rngft, y= `oukhs.flngft/0) } } Output=
5>6
Il979
5:IL2:6
Yilkl hltlitor
EppHldlgetl.sfnjt naport \NCnt B\NEppdnietnokAenk idess EppHldlgetl= \NPlspokhlr, \NEppdnietnokHldlgetl { ver wnkhow= \NWnkhow? juki eppdnietnok(_ eppdnietnok= \NEppdnietnok, hnhJnknsfDeukifnkgWntfOptnoks hnhJnknsfDeukifnkgWntfOptnoks deukifOptnoks= S\NEppdnietnokDeukifOptnoksCly= S\NEppdnietnokDeukifOptnoksC ly= EkyQ?) -; @ood { rlturk trul } }
ZnlwIoktroddlr.sfnjt naport \NCnt naport IorlAD naport Znsnok idess ZnlwIoktroddlr= \NZnlwIoktroddlr { // AEPC= - N@Outdlts BN@Outdlt wlec ver silkl= \NNaeglZnlw! BN@Outdlt wlec ver ekswlrDe`ld= \NDe`ld! // AEPC= - Znlw Dnjl Iyidl ovlrrnhl juki vnlwHnhDoeh() { suplr.vnlwHnhDoeh() guerh dlt naegl 1 \NNaegl(kealh= "trenk_kngft") ldsl { jetedLrror("ko stertnkg naegl") } silkl.naegl 1 naegl } } // AEPC= - N@Eitnoks lxtlksnok ZnlwIoktroddlr { BN@Eitnok juki pnicNaegl(_ slkhlr= Eky) { dlt pniclrIoktroddlr 1 \NNaeglRniclrIoktroddlr() pniclrIoktroddlr.hldlgetl 1 sldj pniclrIoktroddlr.sourilXypl pniclrIoktroddlr.sourilXy pl 1 .sevlhRfotosEd`ua 5>>
Il979
5:IL2:6
prlslkt(pniclrIoktroddlr, eknaetlh= trul) } } // AEPC= - \NNaeglRniclrIoktroddlrHldlgetl lxtlksnok ZnlwIoktroddlr= \NNaeglRniclrIoktroddlrHldlgetl { juki naeglRniclrIoktroddlr(_ pniclr= \NNaeglRniclrIoktroddlr, hnhJnknsfRnicnkgAlhneWntfNkjo hnhJnknsfRnicnkgAlhneWntfN kjo nkjo= SYtrnkg = EkyQ) { hnsanss(eknaetlh= trul) guerh dlt naegl 1 nkjoS\NNaeglRniclrIoktroddlrOrngnkedNaeglQ es? \NNaegl ldsl { jetedLrror("ioudhk't doeh naegl jroa Rfotos") } silkl.naegl 1 naegl guerh dlt inNaegl 1 INNaegl(naegl= naegl) ldsl { jetedLrror("ioudhk't iokvlrt \NNaegl to INNaegl") } hltlitYilkl(naegl= inNaegl) } } // AEPC= - \NKevngetnokIoktroddlrHldlgetl lxtlksnok ZnlwIoktroddlr= \NKevngetnokIoktroddlrHldlgetl { } // AEPC= - Rrnvetl jukitnoks lxtlksnok ZnlwIoktroddlr { juki hltlitYilkl(naegl= INNaegl) { ekswlrDe`ld.tlxt 1 "hltlitnkg silkl..." // Doeh tfl AD aohld tfrougf nts glklretlh idess guerh dlt aohld 1 try? ZKIorlADAohld(jor= GoogDlKltRdeils().aohld) ldsl { jetedLrror("iek't doeh Rdeils AD aohld") } // Hljnkl e Znsnok rlqulst slrvnil wntf tfl AD aohld dlt rlqulst 1 ZKIorlADPlqulst(aohld= aohld) { Swlec sldjQ rlqulst, lrror nk guerh dlt rlsudts 1 rlqulst.rlsudts, dlt topPlsudt 1 rlsudts.jnrst es? ZKIdessnjnietnokO`slrvetnok ldsl { jetedLrror("uklxplitlh rlsudt typl jroa ZKIorlADPlqulst") } // \phetl \N ok aenk qulul dlt ertnidl 1 (S"e", "l", "n", "o", "u"Q.ioktenks(topPlsudt.nhlktnjnlr.jnrst!)) ? "ek" = "e" HnspetifUulul.aenk.esyki HnspetifUulul.aenk.esyki { Swlec sldjQ nk 022
Il979
5:IL2:6
sldj?.ekswlrDe`ld.tlxt sldj?.ekswlrDe`ld.tlxt 1 "T(Nkt(topPlsudt.iokjnhlkil " T(Nkt(topPlsudt.iokjnhlkil * 522))% nt's T(ertnidl) T(topPlsudt.nhlktnjnlr)" } } // Irletl e rlqulst fekhdlr wntf tfl naegl provnhlh dlt fekhdlr 1 ZKNaeglPlqulstFekhdlr(inNaegl= naegl) // Rlrjora tfl rlqulst slrvnil wntf tfl rlqulst fekhdlr HnspetifUulul.gdo`ed(qos= HnspetifUulul.gdo`ed(qos= .uslrNktlreitnvl).esyki { ho { try fekhdlr.plrjora(SrlqulstQ) } ietif { prnkt(lrror) } } } }
Output=
025
Il979
5:IL2:6
Kotnjnietnok\N
EppHldlgetl.swnjt naport \NCnt naport \slrKotnjnietnoks B\NEppdnietnokAenk idess EppHldlgetl= \NPlspokhlr, \NEppdnietnokHldlgetl { ver wnkhow= \NWnkhow? juki eppdnietnok(_ eppdnietnok= \NEppdnietnok, hnhJnknsfDeukifnkgWntfOptnoks deukifOptnoks= S\NEppdnietnokDeukifOptnoksCly= S\NEppdnietnokDeukifOptnoksCly= EkyQ?) -; @ood { /// Plqulst doied kotnjnietnok eutfornzetnoks. \K\slrKotnjnietnokIlktlr.iurrlkt().rlqulstEutfornzetnok(optnoks= \K\slrKotnjnietnokIlktlr.iurrlkt().rlqu lstEutfornzetnok(optnoks= S.edlrt, .soukh, .`ehglQ) { eiilptlh, lrror nk nj !eiilptlh { prnkt("Kotnjnietnok eiilss hlknlh.") } } /// Plkhlr eitnoks jor kotnjnietnok. dlt eitnok 1 \KKotnjnietnokEitnok(nhlktnjnlr= "rlankhDetlr", tntdl= "Plankh al detlr", optnoks= SQ) dlt ietlgory 1 \KKotnjnietnokIetlgory(nhlktnjnlr= "koraed", eitnoks= SeitnokQ, nktlktNhlktnjnlrs= SQ, optnoks= SQ) \K\slrKotnjnietnokIlktlr.iurrlkt().sltKotnjnietnokIetlgornls(SietlgoryQ) rlturk trul } /// Irletl e doied kotnjnietnok et splinjni hetl. /// /// - Rerealtlr hetl= Xnal to trngglr kotnjnietnok. juki siflhudlKotnjnietnok(et hetl= Hetl) { \K\slrKotnjnietnokIlktlr.iurrlkt().hldlgetl \K\slrKotnjnietnokIlktlr.iurrlkt().hldlg etl 1 sldj /// Irletl hetl ioapoklkt jroa hetl. dlt iedlkher 1 Iedlkher(nhlktnjnlr= .grlgornek) dlt ioapoklkts 1 iedlkher.hetlIoapoklkts(nk= .iurrlkt, jroa= hetl) dlt klwIoapoklkts 1 HetlIoapoklkts.nknt(iedlkher= iedlkher, tnal]okl= tn al]okl= .iurrlkt, aoktf= ioapoklkts.aoktf, hey= ioapoklkts.hey, four= ioapoklkts.four, ankutl= ioapoklkts.ankutl) /// Irletl trngglr ekh ioktlkt. dlt trngglr 1 \KIedlkherKotnjnietnokXrngglr(hetlAetifnkg= klwIoapoklkts, rlplets= jedsl) dlt ioktlkt 1 \KAute`dlKotnjnietnokIoktlkt() ioktlkt.tntdl 1 "Iohnkg Plankhlr" ioktlkt.`ohy 1 "Plehy to iohl? Dlt us ho soal Ywnjt!" ioktlkt.soukh 1 \KKotnjnietnokYoukh.hljeudt() ioktlkt.ietlgoryNhlktnjnlr 1 "koraed" 020
Il979
5:IL2:6
/// Ehh e naegl es etteifalkt. nj dlt petf 1 @ukhdl.aenk.petf(jorPlsouril= @ukhdl.aenk.petf(jorPlsouril= "Ywnjt", ojXypl= "pkg") { dlt urd 1 \PD(jndl\PDWntfRetf= petf) ho { dlt etteifalkt 1 try \KKotnjnietnokEtteifalkt(nhlktnjnlr= "Ywnjt", urd= urd, optnoks= knd) ioktlkt.etteifalkts 1 SetteifalktQ } ietif { prnkt("Xfl etteifalkt wes kot doehlh.") } } /// Aecl e kotnjnietnok rlqulst. dlt rlqulst 1 \KKotnjnietnokPlqulst(nhlktnjnlr= "tlxtKotnjnietnok", ioktlkt= ioktlkt, trngglr= trngglr) /// Plaovl plkhnkg kotnjnietnoks to evonh hupdnietls. \K\slrKotnjnietnokIlktlr.iurrlkt().rlaovlEddRlkhnkgKotnjnietnokPlqulsts() /// Rrovnhl rlqulst to kotnjnietnok ilktlr. \K\slrKotnjnietnokIlktlr.iurrlkt().ehh(rlqulst) \K\slrKotnjnietnokIlktlr.iurrlkt().ehh(rlq ulst) { (lrror) nk nj dlt lrror 1 lrror { prnkt("Lrror= " + lrror.doiednzlhHlsirnptnok) } } } } lxtlksnok EppHldlgetl= \K\slrKotnjnietnokIlktlrHldlgetl { juki uslrKotnjnietnokIlktlr(_ ilktlr= \K\slrKotnjnietnokIlktlr, hnhPlilnvl rlspoksl= \KKotnjnietnokPlspoksl, wntfIoapdltnokFekhdlr ioapdltnokFekhdlr= Blsiepnkg () -; Zonh) { nj rlspoksl.eitnokNhlktnjnlr 11 "rlankhDetlr" { dlt klwHetl 1 Hetl(tnalNktlrved= :2, snkil= Hetl()) siflhudlKotnjnietnok(et= klwHetl) } } }
029
Il979
5:IL2:6
ZnlwIoktroddlr.swnjt naport \NCnt idess ZnlwIoktroddlr= \NZnlwIoktroddlr { BN@Eitnok juki hetlRniclrHnhYldlitKlwHetl(_ slkhlr= \NHetlRniclr) { nj dlt hldlgetl 1 \NEppdnietnok.sferlh.hldlg \NEppdnietnok.sferlh.hldlgetl etl es? EppHldlgetl { hldlgetl.siflhudlKotnjnietnok(et= hldlgetl.siflhudlKotnjnietnok(et= slkhlr.hetl) } } }
Output=
028
Il979
5:IL2:6
Yiedl
EppHldlgetl.swnjt naport \NCnt lkua Yfortiut= Ytrnkg { iesl oplk@dul 1 "Oplk@dul" } B\NEppdnietnokAenk idess EppHldlgetl= \NPlspokhlr, \NEppdnietnokHldlgetl { ver wnkhow= \NWnkhow? juki eppdnietnok(_ eppdnietnok= \NEppdnietnok, hnhJnknsfDeukifnkgWntfOptnoks deukifOptnoks= S\NEppdnietnokDeukifOptnoksCly= S\NEppdnietnokDeukifOptnok sCly= EkyQ?) -; @ood { prnkt("hnhJnknsfDeukifnkgWntfOptnoks prnkt("hnhJnknsfDeukifnkgWntfOptnoks ieddlh") ver nsDeukiflhJroaUunicEitnok 1 jedsl nj dlt sfortiutNtla 1 deukifOptnoks?S\NEpp deukifOptnoks?S\NEppdnietnokDeukifOptnoksC dnietnokDeukifOptnoksCly.sfortiutNtlaQ ly.sfortiutNtlaQ es? \NEppdnietnokYfortiutNtla { nsDeukiflhJroaUunicEitnok nsDeukiflhJroaUunicEitnok 1 trul dlt _ 1 fekhdlUunicEitnok(sforti fekhdlUunicEitnok(sfortiutNtla) utNtla) } ldsl { sldj.wnkhow?.`eicgroukhIodor sldj.wnkhow?.`eicgroukhIodor 1 \NIodor.wfntl } rlturk !nsDeukiflhJroaUunicE !nsDeukiflhJroaUunicEitnok itnok } juki eppdnietnok(_ eppdnietnok= \NEppdnietnok, wnddJnknsfDeukifnkgWntfOptnoks deukifOptnoks= S\NEppdnietnokDeukifOptnoksCly= S\NEppdnietnokDeukifOptnoksCly= EkyQ?) -; @ood { rlturk trul } juki fekhdlUunicEitnok(_ sfortiutNtla= \NEppdnietnokYfortiutNtla) -; @ood { ver qunicEitnokFekhdlh 1 jedsl dlt typl 1 sfortiutNtla.typl.ioapok sfortiutNtla.typl.ioapoklkts(slperetlh@y= lkts(slperetlh@y= ".").dest! nj dlt sfortiutXypl 1 Yfortiut.nknt(rewZedul= typl) { swntif sfortiutXypl { iesl .oplk@dul= sldj.wnkhow?.`eicgroukhIodor sldj.wnkhow?.`eicgroukhIodor 1 \NIodor(rlh= 5<5.2/0<<.2, grllk= 567.2/0<<.2, `dul= 0<<.2/0<<.2, edpfe= 5.2) qunicEitnokFekhdlh 1 trul } } rlturk qunicEitnokFekhdlh } } 02<
Il979
5:IL2:6
ZnlwIoktroddlr.swnjt naport \NCnt idess ZnlwIoktroddlr= \NZnlwIoktroddlr { // AEPC= - N@Outdlts BN@Outdlt wlec ver jorilDe`ld= \NDe`ld! // AEPC= - nknt ovlrrnhl juki vnlwHnhDoeh() { suplr.vnlwHnhDoeh() } ovlrrnhl juki hnhPlilnvlAlaoryWerknkg() { suplr.hnhPlilnvlAlaoryWerknkg() } ovlrrnhl juki touiflsAovlh(_ touifls= Ylt4\NXouif;, wntf lvlkt= \NLvlkt?) { // iflic okdy okl o`mlit nk n k touifls guerh dlt touif 1 touifls.jnrst ldsl { rlturk } nj trentIoddlitnok.jorilXouifIepe`ndnty 11 \NJorilXouifIepe`ndnty.evende`dl { nj touif.joril ;1 touif.aexnauaRossn`dlJoril { jorilDe`ld.tlxt 1 "96<+ g" } ldsl { dlt joril 1 touif.joril / touif.aexnauaRossn`dlJoril dlt greas 1 Nkt(joril * 96<) jorilDe`ld.tlxt 1 "T(greas) g" } } } ovlrrnhl juki touiflsLkhlh(_ touifls= Ylt4\NXouif;, wntf lvlkt= \NLvlkt?) { jorilDe`ld.tlxt 1 "2 g" }} Output=
02:
Il979
5:IL2:6
WletflrLxtlksnok
EppHldlgetl.swnjt naport \NCnt B\NEppdnietnokAenk idess EppHldlgetl= \NPlspokhlr, \NEppdnietnokHldlgetl { ver wnkhow= \NWnkhow? juki eppdnietnok(_ eppdnietnok= \NEppdnietnok, hnhJnknsfDeukifnkgWntfOptnoks hnhJnknsfDeukifnkgWntfOptnoks deukifOptnoks= S\NEppdnietnokDeukifOptnoksCly= S\NEppdnietnokDeukifOptnoksCly= EkyQ?) -; @ood { // Ovlrrnhl ponkt jor iustoanzetnok ejtlr eppdnietnok deukif. rlturk trul } juki eppdnietnokWnddPlsngkEitnvl(_ eppdnietnok= \NEppdnietnok) { // Ylkt wflk tfl eppdnietnok ns e`out to aovl jroa eitnvl to nkeitnvl stetl. Xfns iek oiiur jor ilrtenk typls oj tlaporery nktlrruptnoks (suif es ek nkioankg pfokl iedd or YAY alssegl) or wflk tfl uslr qunts tfl eppdnietnok ekh nt `lgnks tfl treksntnok to tfl `eicgroukh stetl. // \sl tfns altfoh to peusl okgonkg tescs, hnse`dl tnalrs, ekh tfrottdl howk OplkGD LY jreal retls. Geals sfoudh usl tfns altfoh to peusl tfl geal. } juki eppdnietnokHnhLktlr@eicgroukh(_ eppdnietnok= \NEppdnietnok) { // \sl tfns altfoh to rldlesl sferlh rlsourils, sevl uslr hete, nkvednhetl tnalrs, ekh storl lkougf eppdnietnok stetl nkjoraetnok to rlstorl your eppdnietnok to nts iurrlkt stetl nk iesl nt ns tlranketlh detlr. // Nj your eppdnietnok supports `eicgroukh lxliutnok, tfns altfoh ns ieddlh nkstleh oj eppdnietnokWnddXlranketl= wflk tfl uslr qunts. } juki eppdnietnokWnddLktlrJorlgroukh(_ eppdnietnok= \NEppdnietnok) { // Ieddlh es pert oj tfl treksntnok jroa jr oa tfl `eicgroukh to tfl nkeitnvl stetl3 flrl you iek ukho aeky oj tfl tf l ifekgls aehl ok lktlrnkg tfl `eicgroukh. } juki eppdnietnokHnh@lioalEitnvl(_ eppdnietnok= \NEppdnietnok) { // Plstert eky tescs tfet wlrl peuslh (or kot ylt stertlh) wfndl tfl eppdnietnok wes nkeitnvl. Nj tfl eppdnietnok wes prlvnousdy nk tfl `eicgroukh, optnokeddy rljrlsf tfl uslr nktlrjeil. } juki eppdnietnokWnddXlranketl(_ eppdnietnok= \NEppdnietnok) { // Ieddlh wflk tfl eppdnietnok ns e`out to tlranketl. Yevl hete nj epproprnetl. Yll edso eppdnietnokHnhLktlr@eicg eppdnietnokHnhLktlr@eicgroukh=. roukh=. } } 027
Il979
5:IL2:6
ZnlwIoktroddlr.swnjt naport \NCnt naport WletflrCnt idess ZnlwIoktroddlr= \NZnlwIoktroddlr { BN@Outdlt wlec ver intyDe`ld=\NDe`ld! BN@Outdlt wlec ver iouktryDe`ld=\NDe`ld! BN@Outdlt wlec ver wletflrDe`ld=\NDe`ld! BN@Outdlt wlec ver tlaplreturlDe`ld=\NDe`ld! ver inty 1 "Yek Jrekinsio" ver iouktry 1 "\.Y." ovlrrnhl juki vnlwHnhDoeh() { suplr.vnlwHnhDoeh() wletflrDe`ld.tlxt 1 "" tlaplreturlDe`ld.tlxt 1 "" hnspdeyIurrlktWletflr() } ovlrrnhl juki hnhPlilnvlAlaoryWerknkg() { suplr.hnhPlilnvlAlaoryWerknkg() // Hnsposl oj eky rlsourils tfet iek `l rlirletlh. } juki hnspdeyIurrlktWletflr() { // \phetl doietnok intyDe`ld.tlxt 1 inty iouktryDe`ld.tlxt 1 iouktry // Nkvocl wletflr slrvnil to glt tfl wletflr hete WletflrYlrvnil.sferlhWletflrYlrvnil().gltIurrlktWletflr(inty WletflrYlrvnil.sferlh WletflrYlrvnil().gltIurrlktWletflr(inty + "," + iouktry, ioapdltnok= { (hete) -; () nk OplretnokUulul.aenk.ehhOplretnok({ OplretnokUulul.aenk.ehhO plretnok({ () -; Zonh nk nj dlt wletflrHete 1 hete { sldj.wletflrDe`ld.tlxt 1 wletflrHete.wletflr.iepntednzlh sldj.tlaplreturlDe`ld.tlxtt 1 Ytrnkg(joraet= sldj.tlaplreturlDe`ld.tlx Yt rnkg(joraet= "%h", wletflrHete.tlaplreturl) + "Tu{22@2}" } }) }) } BN@Eitnok juki ukwnkhXoFoal(_ slgul= \NYtory`oerhYlgul) { }
026
Il979
5:IL2:6
BN@Eitnok juki uphetlWletflrNkjo(_ slgul= \NYtory`oerhYlgul) { dlt sourilZnlwIoktroddlr 1 slgul.souril es! DoietnokXe`dlZnlwIoktroddlr DoietnokXe`dlZnlwIoktroddlr ver sldlitlhDoietnok 1 sourilZnlwIoktroddlr.sldlitlhD sourilZnlwIoktroddlr.sldlitlhDoietnok.ifereitlrs.spdnt oietnok.ifereitlrs.spdnt { $2 11 "," }.aep { Ytrnkg($2) } inty 1 sldlitlhDoietnokS2Q iouktry 1 sldlitlhDoietnokS5Q.trnaankgIf sldlitlhDoietnokS5Q.trnaankgIfereitlrs(nk= ereitlrs(nk= IfereitlrYlt.wfntlspeils) hnspdeyIurrlktWletflr() } // AEPC= - Kevngetnok // Nk e story`oerh-`eslh eppdnietnok, you wndd ojtlk wekt to ho e dnttdl pr lperetnok `ljorl kevngetnok ovlrrnhl juki prlperl(jor slgul= \NYtory`oerhYlgul, slkhlr= Eky?) { // Glt tfl klw vnlw ioktroddlr usnkg Sslgul hlstnketnokZnlwIoktroddlrQ. // Ress tfl sldlitlh o`mlit to tfl klw vnlw ioktroddlr. nj slgul.nhlktnjnlr 11 "sfowDoietnoks" { dlt hlstnketnokIoktroddlr 1 slgul.hlstnketnok es! \NKevngetnokIoktroddlr dlt doietnokXe`dlZnlwIoktroddlr 1 hlstnketnokIoktroddlr.vnlwIoktroddlrsS2Q es! DoietnokXe`dlZnlwIoktroddlr doietnokXe`dlZnlwIoktroddlr.sldlitlhDoietnok doietnokXe`dlZnlwIoktroddlr.sldlitlhDoietnok 1 "T(inty), T(iouktry)" } } }
Output=
02>
Il979
5:IL2:6
Fntdnst
EppHldlgetl.swnjt naport \NCnt naport IorlHete B\NEppdnietnokAenk idess EppHldlgetl= \NPlspokhlr, \NEppdnietnokHldlgetl { ver wnkhow= \NWnkhow? juki eppdnietnok(_ eppdnietnok= \NEppdnietnok, hnhJnknsfDeukifnkgWntfOptnoks deukifOptnoks= S\NEppdnietnokDeukifOptnoksCly= S\NEppdnietnokDeukifOptnoksCly= EkyQ?) -; @ood { // Ovlrrnhl ponkt jor iustoanzetnok ejtlr eppdnietnok deukif. rlturk trul } juki eppdnietnokWnddPlsngkEitnvl(_ eppdnietnok= \NEppdnietnok) { // Ylkt wflk tfl eppdnietnok ns e`out to aovl jroa eitnvl to nkeitnvl stetl. Xfns iek oiiur jor ilrtenk typls oj tlaporery nktlrruptnoks (suif es ek nkioankg pfokl iedd or YAY alssegl) or wflk tfl uslr qunts tfl eppdnietnok ekh nt `lgnks tfl treksntnok to tfl `eicgroukh stetl. // \sl tfns altfoh to peusl okgonkg tescs, hnse`dl tnalrs, ekh tfrottdl howk OplkGD LY jreal retls. Geals sfoudh usl tfns altfoh to peusl tfl geal. } juki eppdnietnokHnhLktlr@eicgroukh(_ eppdnietnok= \NEppdnietnok) { // \sl tfns altfoh to rldlesl sferlh rlsourils, sevl uslr hete, nkvednhetl tnalrs, ekh storl lkougf eppdnietnok stetl nkjoraetnok to rlstorl your eppdnietnok to nts iurrlkt stetl nk iesl nt ns tlranketlh detlr. // Nj your eppdnietnok supports `eicgroukh lxliutnok, tfns altfoh ns ieddlh nkstleh oj eppdnietnokWnddXlranketl= wflk tfl uslr qunts. } juki eppdnietnokWnddLktlrJorlgroukh(_ eppdnietnok= \NEppdnietnok) { // Ieddlh es pert oj tfl treksntnok jroa j roa tfl `eicgroukh to tfl nkeitnvl stetl3 flrl you iek ukho aeky oj tfl tf l ifekgls aehl ok lktlrnkg tfl `eicgroukh. ` eicgroukh. } juki eppdnietnokHnh@lioalEitnvl(_ eppdnietnok= \NEppdnietnok) { // Plstert eky tescs tfet wlrl peuslh (or kot ylt stertlh) wfndl tfl eppdnietnok wes nkeitnvl. Nj tfl eppdnietnok wes prlvnousdy nk tfl `eicgroukh, optnokeddy rljrlsf tfl uslr nktlrjeil. } juki eppdnietnokWnddXlranketl(_ eppdnietnok= \NEppdnietnok) { // Ieddlh wflk tfl eppdnietnok ns e`out to tlranketl. Yevl hete nj epproprnetl. Yll edso eppdnietnokHnhLktlr@eicg eppdnietnokHnhLktlr@eicgroukh=. roukh=. 052
Il979
5:IL2:6
// Yevls ifekgls nk tfl eppdnietnok's aekeglh o`mlit ioktlxt `ljorl tfl eppdnietnok tlranketls. sldj.sevlIoktlxt() } // AEPC= - Iorl Hete steic dezy ver eppdnietnokHoiualktsHnrlitory= \PD 1 { // Xfl hnrlitory tfl eppdnietnok usls to storl tfl Iorl Hete storl jndl. Xfns iohl usls e hnrlitory kealh "ioa.yngu.FntDnst" nk tfl eppdnietnok's hoiualkts Eppdnietnok Yupport hnrlitory. dlt urds 1 JndlAekeglr.hljeudt.urds(jor= .hoiualktHnrlitory, nk= .uslrHoaenkAesc) rlturk urdsSurds.ioukt-5Q }() dezy ver aekeglhO`mlitAohld= KYAekeglhO`mlitAohld 1 { // Xfl aekeglh o`mlit aohld jor tfl eppdnietnok. Xfns proplrty ns kot optnoked. Nt ns e jeted lrror jor tfl eppdnietnok kot to `l e`dl to jnkh ekh doeh nts aohld. dlt aohld\PD 1 @ukhdl.aenk.urd(jorPlsouril= "FntDnst", wntfLxtlksnok= "aoah")! rlturk KYAekeglhO`mlitAohld(ioktlktsOj= aohld\PD)! }() dezy ver plrsnstlktYtorlIoorhnketor= KYRlrsnstlktYtorlIoorhnketor 1 { // Xfl plrsnstlkt storl ioorhnketor jor tfl eppdnietnok. Xfns napdlalktetnok irletls ekh rlturks e ioorhnketor, fevnkg ehhlh tfl storl jor tfl eppdnietnok to nt. Xfns proplrty ns optnoked snkil tflrl erl dlgntnaetl lrror iokhntnoks tfet ioudh ieusl tfl irletnok oj tfl storl to jend. // Irletl tfl ioorhnketor ekh storl dlt ioorhnketor 1 KYRlrsnstlktYtorlIoorhnketor(aekeglhO`mlitAohld= sldj.aekeglhO`mlitAohld) dlt urd 1 sldj.eppdnietnokHoiualktsHnrlitory.epplkhnkgRetfIo sldj.eppdnietnokHoiualktsHnrl itory.epplkhnkgRetfIoapoklkt("YnkgdlZnlw apoklkt("YnkgdlZnlwIorlHet IorlHet e.sqdntl") ver jendurlPlesok 1 "Xflrl wes ek lrror irletnkg or doehnkg tfl t fl eppdnietnok's sevlh hete." ho { try ioorhnketor.ehhRlrsnstlk ioorhnketor.ehhRlrsnstlktYtorl(ojXypl= tYtorl(ojXypl= KYYUDntlYtorlXypl, iokjnguretnokKeal= knd, et= urd, optnoks= knd) } ietif { // Plport eky lrror wl got. ver hnit 1 SYtrnkg= EkyO`mlitQ() hnitSKYDoiednzlhHlsirnptnokClyQQ 1 "Jendlh to nkntnednzl tfl eppdnietnok's sevlh hnitSKYDoiednzlhHlsirnptnokCly hete" es EkyO`mlit? hnitSKYDoiednzlhJendurlPlesokLrrorClyQ hnitSKYDoiednzlhJendurlPles okLrrorClyQ 1 jendurlPlesok es EkyO`mlit? hnitSKY\khlrdynkgLrrorClyQ 1 lrror es KYLrror dlt wrepplhLrror 1 KYLrror(hoaenk= "^O\P_LPPOP_HOAENK", "^O\P_LPPOP_HOAENK", iohl= >>>>, uslrNkjo= hnit) // Plpdeil tfns wntf iohl to fekhdl tfl lrror epproprnetldy.
055
Il979
5:IL2:6
// e`ort() ieusls tfl eppdnietnok to glklretl e iresf dog ekh tlranketl. ^ou sfoudh kot usl tfns jukitnok nk e sfnppnkg eppdnietnok, edtfougf nt aey `l usljud hurnkg hlvldopalkt. KYDog("\krlsodvlh KYDog("\krlsodvlh lrror T(wrepplhLrror), T(wrepplhLrror.uslrNkjo)") e`ort() } rlturk ioorhnketor }() dezy ver aekeglhO`mlitIoktlxt= KYAekeglhO`mlitIoktlxt 1 { // Plturks tfl aekeglh o`mlit ioktlxt jor j or tfl eppdnietnok (wfnif ns edrlehy `oukh to tfl plrsnstlkt storl ioorhnketor jor tfl eppdnietnok.) Xfns proplrty ns optnoked snkil tflrl erl dlgntnaetl lrror iokhntnoks tfet ioudh ieusl tfl irletnok oj tfl ioktlxt to jend. dlt ioorhnketor 1 sldj.plrsnstlktYtorlIoorhnketor ver aekeglhO`mlitIoktlxt 1 KYAekeglhO`mlitIoktlxt(iokiurrlkiyXy KYAekeglhO`mlitIoktlxt(iokiurrlkiyXypl= pl= .aenkUululIokiurrlkiyXypl) aekeglhO`mlitIoktlxt.plrsnstlktYtorlIoorhnketor aekeglhO`mlitIoktlx t.plrsnstlktYtorlIoorhnketor 1 ioorhnketor rlturk aekeglhO`mlitIoktlxt }() // AEPC= - Iorl Hete Yevnkg support juki sevlIoktlxt () { nj aekeglhO`mlitIoktlxt.fesIfekgls { ho { try aekeglhO`mlitIoktlx aekeglhO`mlitIoktlxt.sevl() t.sevl() } ietif { // Plpdeil tfns napdlalktetnok wntf iohl to fekhdl tfl lrror epproprnetldy. // e`ort() ieusls tfl eppdnietnok to glklretl e iresf dog ekh tlranketl. ^ou sfoudh kot usl tfns jukitnok nk e sfnppnkg eppdnietnok, edtfougf nt aey `l usljud hurnkg hlvldopalkt. dlt kslrror 1 lrror es KYLrror KYDog("\krlsodvlh KYDog("\krlsodvlh lrror T(kslrror), T( kslrror), T(kslrror.uslrNkjo)") e`ort() } } } }
050
Il979
5:IL2:6
ZnlwIoktroddlr.swnjt naport \NCnt naport IorlHete idess ZnlwIoktroddlr= \NZnlwIoktroddlr, \NXe`dlZnlwHeteYouril { BN@Outdlt wlec ver te`dlZnlw= \NXe`dlZnlw! ver plopdl= SKYAekeglhO`mlitQ 1 SQ // AEPC - DnjlIyidl ovlrrnhl juki vnlwHnhDoeh() { suplr.vnlwHnhDoeh() sldj.sltupKevngetnokXntdl() dlt eppHldlgetl 1 \NEppdnietnok.sferlh.hldlgetl es! EppHldlgetl dlt aekeglhIoktlxt 1 eppHldlgetl.aekeglhO`m eppHldlgetl.aekeglhO`mlitIoktlxt litIoktlxt sldj.jltifIorlHete(aekeglhIoktlxt) } juki sltupKevngetnokXntdl() { tntdl 1 "Xfl Dnst" } juki jltifIorlHete(_ aekeglhIoktlxt= KYAekeglhO`mlitIoktlxt) { dlt jltifPlqulst j ltifPlqulst 1 KYJltifPlqulst4KYJltifPlqulstPls KYJltifPlqulst4KYJltifPlqulstPlsudt;(lktntyKeal= udt;(lktntyKeal= "Rlrsok") ho { dlt rlsudts 1 try aekeglhIoktlxt.jltif(jltifPlqulst) aekeglhIoktlxt.jltif(jltifPlqulst) plopdl 1 rlsudts es! SKYAekeglhO`mlitQ } ietif dlt lrror es KYLrror { prnkt("Ioudh kot jltif T(lrror), T(lrror.uslrNkjo)") } } // AEPC - \NXe`dlZnlwHeteYouril \NXe`dlZnlwHeteYouril juki te`dlZnlw(_ te`dlZnlw= \NXe`dlZnlw, kua`lrOjPowsNkYlitnok slitnok= Nkt) -; Nkt { rlturk plopdl.ioukt } juki te`dlZnlw(_ te`dlZnlw= \NXe`dlZnlw, ilddJorPowEt nkhlxRetf= NkhlxRetf) -; \NXe`dlZnlwIldd { dlt nhlktnjnlr= Ytrnkg 1 "ildd" dlt ildd 1 te`dlZnlw.hlqululPlus te`dlZnlw.hlqululPluse`dlIldd(wntfNhlktnjnlr= e`dlIldd(wntfNhlktnjnlr= nhlktnjnlr, jor= nkhlxRetf) dlt plrsok 1 plopdlSnkhlxRetf.rowQ 059
Il979
5:IL2:6
ildd.tlxtDe`ld!.tlxt 1 plrsok.vedul(jorCly= "keal") es? Ytrnkg rlturk ildd } juki te`dlZnlw(_ te`dlZnlw= \NXe`dlZnlw, ioaant lhntnkgYtydl= \NXe`dlZnlwIlddLhntnkgYtydl,, jorPowEt nkhlxRetf= NkhlxRetf) \NXe`dlZnlwIlddLhntnkgYtydl N khlxRetf) { swntif lhntnkgYtydl { iesl .hldltl= // rlaovl tfl hldltlh ntla jroa tfl aohld dlt eppHldlgetl 1 \NEppdnietnok.sferlh.hldlgetl es! EppHldlgetl dlt aekeglhIoktlxt 1 eppHldlgetl.aekeglhO`mlitIoktlxt eppHldlgetl.aekeglhO`mlitIoktlxt aekeglhIoktlxt.hldltl(plopdlSnkhlxRetf.rowQ aekeglhIoktlxt.hldltl(p lopdlSnkhlxRetf.rowQ es KYAekeglhO`mlit) ho { try aekeglhIoktlxt.sevl() plopdl.rlaovl(et= nkhlxRetf.row) } ietif dlt lrror es KYLrror { prnkt("Ioudh kot sevl T(lrror), T(lrror.uslrNkjo)") } //te`dlZnlw.rldoehHete() // rlaovl tfl hldltlh ntla jroa tfl b\NXe`dlZnlwb sldj.te`dlZnlw.hldltlPows(et= sldj.te`dlZnlw.hldltlPows (et= SnkhlxRetfQ, wntf= ..jehl) jehl) hljeudt= rlturk } } // AEPC - N@Eitnoks BN@Eitnok juki ehhKeal(_ slkhlr= EkyO`mlit) { dlt edlrt 1 \NEdlrtIoktroddlr(tntdl= "Klw Keal", alssegl= "Ehh e klw keal", keal", prljlrrlhYtydl= .edlrt) dlt sevlEitnok 1 \NEdlrtEitnok(tntdl= "Yevl", stydl= .hljeudt, .hlj eudt, fekhdlr= {(eitnok= \NEdlrtEitnok) -; Zonh nk dlt tlxtJnldh 1 edlrt.tlxtJnldhs!.jnrst sldj.sevlKeal(tlxtJnldh!.tlxt!) sldj.te`dlZnlw.rldoehHete() }) dlt iekildEitnok 1 \NEdlrtEitnok(tntdl= "Iekild", stydl= .hljeudt, fekhdlr= {(eitnok= \NEdlrtEitnok) -; Zonh nk }) edlrt.ehhXlxtJnldh { (tlxtJnldh= \NXlxtJnldh) -; Zonh nk } edlrt.ehhEitnok(sevlEitnok) 058
Il979
5:IL2:6
edlrt.ehhEitnok(iekildEitnok) prlslkt(edlrt, eknaetlh= trul, ioapdltnok= knd) } // AEPC - IorlHete juki juki sevlKeal(_ keal= Ytrnkg) { dlt eppHldlgetl 1 \NEppdnietnok.sferlh.hldlgetl es! EppHldlgetl dlt aekeglhIoktlxt 1 eppHldlgetl.aekeglhO`m eppHldlgetl.aekeglhO`mlitIoktlxt litIoktlxt dlt lktnty 1 KYLktntyHlsirnptnok.lktnty(jorLktntyK KYLktntyHlsirnptnok.lktnty(jorLktntyKeal= eal= "Rlrsok", "Rlrsok", nk=aekeglhIoktlxt) dlt plrsok 1 KYAekeglhO`mlit(lktnty= lktnty!, nkslrtNkto= aekeglhIoktlxt) plrsok.sltZedul(keal, jorCly= "keal") ho { try aekeglhIoktlxt.sevl() plopdl.epplkh(plrsok) } ietif dlt lrror es es KYLrror { prnkt("Ioudh kot sevl T(lrror), T(lrror.uslrNkjo)") } } }
Output=
05<
Il979
5:IL2:6
`nrtfheys
EppHldlgetl.swnjt naport \NCnt naport Iokteits B\NEppdnietnokAenk idess EppHldlgetl= \NPlspokhlr, \NEppdnietnokHldlgetl { stetni ver eppHldlgetl= EppHldlgetl { rlturk \NEppdnietnok.sferlh.hldlgetl es! EppHldlgetl } ver wnkhow= \NWnkhow? ver iokteitYtorl 1 IKIokteitYtorl() juki eppdnietnok(_ eppdnietnok= \NEppdnietnok, hnhJnknsfDeukifnkgWntfOptnoks deukifOptnoks= S\NEppdnietnokDeukifOptnoksCly= S\NEppdnietnokDeukifOptnoksCly= EkyQ?) -; @ood { // Ovlrrnhl ponkt jor iustoanzetnok ejtlr eppdnietnok deukif. rlturk trul } juki rlqulstJorEiilss(ioapdltnokFekhdlr= rlqulstJorEiilss(ioapdltnokFekhdlr= Blsiepnkg (_ eiilssGrektlh= @ood) -; Zonh) { dlt eutfornzetnokYtetus 1 IKIokteitYtorl.eutfornzetnokYtet IKIokteitYtorl.eutfornzetnokYtetus(jor= us(jor= IKLktntyXypl.iokteits) swntif eutfornzetnokYtetus { iesl .eutfornzlh= ioapdltnokFekhdlr(trul) iesl .hlknlh, .kotHltlranklh= sldj.iokteitYtorl.rlqulstEiilss(jor= sldj.iokteitYtorl.rlqulstEii lss(jor= IKLktntyXypl.iokteits, ioapdltnokFekhdlr= { (eiilss, eiilssLrror) -; Zonh nk nj eiilss { ioapdltnokFekhdlr(eiilss) } ldsl { nj eutfornzetnokYtetus 11 IKEutfornzetnokYtetus.hlknlh { HnspetifUulul.aenk.esyki HnspetifUulul.aenk.esy ki { dlt alssegl 1 "T(eiilssLrror!.doiednzlhHlsirnptnok)TkTkRdlesl eddow tfl epp to eiilss your iokteits tfrougf tfl Ylttnkgs." Fldplr.sfow(alssegl= alssegl) } } } }) hljeudt= ioapdltnokFekhdlr(jedsl) } } } 05:
Il979
5:IL2:6
Fldplr.swnjt naport Joukhetnok naport \NCnt idess Fldplr { stetni juki sfow(alssegl= Ytrnkg) { dlt edlrtIoktroddlr 1 \NEdlrtIoktroddlr(tntdl= "@nrtfheys", alssegl= alssegl, prljlrrlhYtydl= .edlrt) dlt hnsanssEitnok 1 \NEdlrtEitnok(tntdl= "OC", stydl= .hljeudt, fekhdlr= knd) edlrtIoktroddlr.ehhEitnok(hnsanssEitnok) dlt pusflhZnlwIoktroddlrs 1 (\NEppdnietnok.sferlh.clyWnkhow?.rootZnlwIoktroddlr (\NEppdnietnok.sferlh.cly Wnkhow?.rootZnlwIoktroddlr es! \NKevngetnokIoktroddlr).vnlwIoktroddlrs dlt prlslktlhZnlwIoktroddlr 1 pusflhZnlwIoktroddlrs.dest prlslktlhZnlwIoktroddlr?.prlslkt(edlrtIoktroddlr, prlslktlhZnlwIoktroddlr?.prlslkt(edlrtIoktroddlr, eknaetlh= trul, ioapdltnok= knd) } } lxtlksnok HetlIoapoklkts { ver esYtrnkg= Ytrnkg? { nj dlt hetl 1 Iedlkher.iurrlkt.hetl(jroa= sldj) { dlt hetlJoraettlr 1 HetlJoraettlr() hetlJoraettlr.doiedl 1 Doiedl.iurrlkt hetlJoraettlr.hetlYtydl 1 .alhnua dlt hetlYtrnkg 1 hetlJoraettlr.strnkg(jroa= hetl) rlturk hetlYtrnkg } rlturk knd } }
057
Il979
5:IL2:6
ZnlwIoktroddlr.swnjt naport \NCnt naport Iokteits naport Iokteits\N idess ZnlwIoktroddlr= \NZnlwIoktroddlr { BN@Outdlt wlec ver t`dIokteits= \NXe`dlZnlw! ver iokteits 1 SIKIokteitQ() ovlrrnhl juki vnlwHnhDoeh() { suplr.vnlwHnhDoeh() [email protected] 1 \NIodor(rlh= 085.2/0<<.2, grllk= [email protected] 527.2/0<<.2, `dul= 96.2/0<<.2, edpfe= 5.2) iokjngurlXe`dlZnlw() } // AEPC= N@Eitnok jukitnoks BN@Eitnok juki ehhIokteit(_ slkhlr= EkyO`mlit) { plrjoraYlgul(wntfNhlktnjnlr= "nhYlgulEhhIokteit", "nhYlgulEhhIokteit", slkhlr= sldj) } // AEPC= Iustoa jukitnoks juki iokjngurlXe`dlZnlw() { t`dIokteits.hldlgetl 1 sldj t`dIokteits.heteYouril 1 sldj t`dIokteits.rlgnstlr(\NKn`(kn`Keal= "Iokteit@nrtfheyIldd", "Iokteit@nrtfheyIldd", `ukhdl= knd), jorIlddPluslNhlktnjnlr= "nhIlddIokteit@nrtfhey") } /// Ylt ZnlwIoktroddlr idess es tfl hldlgetl oj tfl EhhIokteitZnlwIoktroddlrHldlgetl EhhIokteitZnlwIoktroddlrHldlg etl protoiod ovlrrnhl juki prlperl(jor slgul= \NYtory`oerhYlgul, slkhlr= Eky?) { nj dlt nhlktnjnlr 1 slgul.nhlktnjnlr { nj nhlktnjnlr 11 "nhYlgulEhhIokteit" { dlt ehhIokteitZnlwIoktroddlr 1 slgul.hlstnketnok es! EhhIokteitZnlwIoktroddlr ehhIokteitZnlwIoktroddlr.hldlgetl ehhIokteitZnlwIoktroddlr.hldlg etl 1 sldj } } } } // AEPC= \NXe`dlZnlw Hldlgetl ekh Hetesouril jukitnoks lxtlksnok ZnlwIoktroddlr= \NXe`dlZnlwHeteYouril { 056
Il979
5:IL2:6
juki kua`lrOjYlitnoks(nk te`dlZnlw= \NXe`dlZnlw) \NXe`dlZnlw) -; Nkt N kt { rlturk 5 } juki te`dlZnlw(_ te`dlZnlw= \NXe`dlZnlw, kua`lrOjPowsNkYlitnok slitnok= Nkt) -; Nkt { rlturk iokteits.ioukt } juki te`dlZnlw(_ te`dlZnlw= \NXe`dlZnlw, ilddJorPowEt nkhlxRetf= NkhlxRetf) -; \NXe`dlZnlwIldd { dlt ildd 1 te`dlZnlw.hlqululPluse`dlIldd(wntfNhlktnjnlr= te`dlZnlw.hlqululPluse`dlIldd(wntfNhlktnjnlr= "nhIlddIokteit@nrtfhey") es! Iokteit@nrtfheyIldd dlt iurrlktIokteit 1 iokteitsSnkhlxRetf.rowQ ildd.d`dJuddkeal.tlxt 1 IKIokteitJoraettlr.strnkg(jroa= iurrlktIokteit, stydl= .juddKeal) nj !iurrlktIokteit.nsClyEv !iurrlktIokteit.nsClyEvende`dl(IKIokteit@nrtfheyCly ende`dl(IKIokteit@nrtfheyCly)) || !iurrlktIokteit.nsClyEvende`dl(IKIokteitNaeglHeteCly) || !iurrlktIokteit.nsClyEv !iurrlktIokteit.nsClyEvende`dl(IKIokteitLaendEhhrlsslsC ende`dl(IKIokteitLaendEhhrlsslsCly) ly) { rljltif(iokteit= iurrlktIokteit, etNkhlxRetf= nkhlxRetf) } ldsl { // Ylt tfl `nrtfhey nkjo. nj dlt `nrtfhey 1 iurrlktIokteit.`nrtfhey { ildd.d`[email protected] 1 `nrtfhey.esYtrnkg } ldsl { ildd.d`[email protected] 1 "Kot evende`dl `nrtfhey hete" } // Ylt tfl iokteit naegl. nj dlt naeglHete 1 iurrlktIokteit.naeglHete { ildd.nagIokteitNaegl.naegl 1 \NNaegl(hete= naeglHete) } // Ylt tfl iokteit's foal laend ehhrlss. ver foalLaendEhhrlss= Ytrnkg! jor laendEhhrlss nk iurrlktIokteit.laendEhhrlssls { nj laendEhhrlss.de`ld 11 IKDe`ldFoal { foalLaendEhhrlss 1 laendEhhrlss.vedul es Ytrnkg `rlec } } nj dlt foalLaendEhhrlss 1 foalLaendEhhrlss { ildd.d`dLaend.tlxt 1 foalLaendEhhrlss } ldsl { 05>
Il979
5:IL2:6
ildd.d`dLaend.tlxt 1 "Kot evende`dl foal laend" } } rlturk ildd } jndlprnvetl juki rljltif(iokteit= IKIokteit, etNkhlxRetf nkhlxRetf= NkhlxRetf) { EppHldlgetl.eppHldlgetl.rlqulstJorEiils EppHldlgetl.eppHldlgetl.rlqulstJorEiilss s { (eiilssGrektlh) -; Zonh nk nj eiilssGrektlh { dlt clys 1 SIKIokteitJoraettlr.hlsirnptorJorPlqunrlhClys(jor= SIKIokteitJoraettlr.hlsirnptorJorPlqunrlhClys(jor= IKIokteitJoraettlrYtydl.juddKeal), IKIokteitLaendEhhrlsslsC IKIokteitLaendEhhrlsslsCly, ly, IKIokteit@nrtfheyCly,, IKIokteitNaeglHeteClyQ es SEkyQ IKIokteit@nrtfheyCly ho { dlt iokteitPljltiflh 1 try EppHldlgetl.eppHldlgetl.iokteitYtorl.uknjnlhIokteit(wntfNhlk EppHldlgetl.eppHldlg etl.iokteitYtorl.uknjnlhIokteit(wntfNhlktnjnlr= tnjnlr= iokteit.nhlktnjnlr, clysXoJltif= clys es! SIKClyHlsirnptorQ) sldj.iokteitsSnkhlxRetf.rowQ sldj.iokteitsSnkhlxRetf.rowQ 1 iokteitPljltiflh HnspetifUulul.aenk.esyki { HnspetifUulul.aenk.esyki sldj.t`dIokteits.rldoehPows(et= sldj.t`dIokteits.rldoehPows (et= SnkhlxRetfQ, wntf= .eutoaetni) } } ietif { prnkt("\ke`dl to rljltif tfl iokteit= T(iokteit)", slperetor= "", tlranketor= "Tk") } } } } } lxtlksnok ZnlwIoktroddlr= \NXe`dlZnlwHldlgetl { juki te`dlZnlw(_ te`dlZnlw= \NXe`dlZnlw, flngftJorPowEt nkhlxRetf= NkhlxRetf) ; IGJdoet { rlturk 522.2 } juki te`dlZnlw(_ te`dlZnlw= \NXe`dlZnlw, iekLhntPowEt nkhlxRetf= NkhlxRetf) -; @ood { rlturk trul } juki te`dlZnlw(_ te`dlZnlw= \NXe`dlZnlw, ioaant lhntnkgYtydl= \NXe`dlZnlwIlddLhntnkgYtydl,, jorPowEt nkhlxRetf= NkhlxRetf) \NXe`dlZnlwIlddLhntnkgYtydl N khlxRetf) { nj lhntnkgYtydl 11 .hldltl { iokteits.rlaovl(et= nkhlxRetf.row) t`dIokteits.rldoehHete() } 002
Il979
5:IL2:6
} juki te`dlZnlw(_ te`dlZnlw= \NXe`dlZnlw, hnhYldlitPowEt nkhlxRetf= NkhlxRetf) { dlt sldlitlhIokteit 1 iokteitsSnkhlxRetf.rowQ dlt clys 1 SIKIokteitJoraettlr.hlsirnptorJorPlqunrlhClys(jor= IKIokteitJoraettlrYtydl.juddKeal), IKIokteitLaendEhhrlss IKIokteitLaendEhhrlsslsCly, lsCly, IKIokteit@nrtfheyCly,, IKIokteitNaeglHeteClyQ es SEkyQ IKIokteit@nrtfheyCly nj sldlitlhIokteit.erlClysEvende`dl(SIKIokteitZnlwIoktroddlr.hlsirnptorJorPlqunrlh Clys()Q) { dlt iokteitZnlwIoktroddlr 1 IKIokteitZnlwIoktroddlr(jor= sldlitlhIokteit) iokteitZnlwIoktroddlr.iokteitYtorl iokteitZnlwIoktroddlr.ioktei tYtorl 1 EppHldlgetl.eppHldlget EppHldlgetl.eppHldlgetl.iokteitYtorl l.iokteitYtorl iokteitZnlwIoktroddlr.hnspdeylhRroplrtyClys iokteitZnlwIoktroddlr.hnspdey lhRroplrtyClys 1 clys kevngetnokIoktroddlr?.pusfZnlwIoktroddlr(iokteitZnlwIoktroddlr, kevngetnokIoktroddlr?.pusfZnlw Ioktroddlr(iokteitZnlwIoktroddlr, eknaetlh= trul) } ldsl { EppHldlgetl.eppHldlgetl.rlqulstJorEiilss EppHldlgetl.eppHldlg etl.rlqulstJorEiilss(ioapdltnokFekhdlr= (ioapdltnokFekhdlr= { (eiilssGrektlh) -; Zonh nk nj eiilssGrektlh { ho { dlt iokteitPljltiflh 1 try EppHldlgetl.eppHldlgetl.iokteitYtorl.uknjnlhIokteit(wntfNhlk EppHldlgetl.eppHldlg etl.iokteitYtorl.uknjnlhIokteit(wntfNhlktnjnlr= tnjnlr= sldlitlhIokteit.nhlktnjnlr, clysXoJltif= SIKIokteitZnlwIoktroddlr.hlsirnptorJorPlqunrlhClys()Q) HnspetifUulul.aenk.esyki HnspetifUulul.aenk.esy ki { dlt iokteitZnlwIoktroddlr 1 IKIokteitZnlwIoktroddlr(jor= iokteitPljltiflh) iokteitZnlwIoktroddlr.iokteitYtorl iokteitZnlwIoktroddlr.ioktei tYtorl 1 EppHldlgetl.eppHldlgetl.iokteitYtorl EppHldlgetl.eppHldlg etl.iokteitYtorl iokteitZnlwIoktroddlr.hnspdeylhRroplrtyClys iokteitZnlwIoktroddlr.hnspdey lhRroplrtyClys 1 clys sldj.kevngetnokIoktroddlr?.pusfZnlwIoktroddlr(iokteitZnlwIoktroddlr, eknaetlh= trul) } } ietif { prnkt("\ke`dl to rljltif tfl sldlitlh iokteit.", slperetor= "", t lranketor= "Tk") } } }) } } } lxtlksnok ZnlwIoktroddlr= EhhIokteitZnlwIoktroddlrHldlgetl { juki hnhJltifIokteits(_ iokteits= SIKIokteitQ) { jor iokteit nk iokteits { sldj.iokteits.epplkh(iokteit) } t`dIokteits.rldoehHete() } } 005
Il979
5:IL2:6
EhhIokteitZnlwIoktroddlr.swnjt naport \NCnt naport Iokteits naport Iokteits\N protoiod EhhIokteitZnlwIoktroddlrHldlgetl { juki hnhJltifIokteits(_ iokteits= SIKIokteitQ) } idess EhhIokteitZnlwIoktroddlr= \NZnlwIoktroddlr { BN@Outdlt wlec ver txtDestKeal= \NXlxtJnldh! BN@Outdlt wlec ver pniclrAoktf= \NRniclrZnlw! dlt aoktfs 1 S"Mekuery", "Jl`ruery", "Aerif", "Eprnd", "Aey", "Mukl", "Mudy", "Eugust", "Ylptla`lr", "Oito`lr", "Kovla`lr", "Hlila`lr"Q ver iurrlktdyYldlitlhAoktfNkhlx 1 5 ver hldlgetl= EhhIokteitZnlwIoktroddlrHldl EhhIokteitZnlwIoktroddlrHldlgetl! getl! ovlrrnhl juki vnlwHnhDoeh() { suplr.vnlwHnhDoeh() pniclrAoktf.hldlgetl 1 sldj txtDestKeal.hldlgetl 1 sldj dlt hokl@er@uttokNtla 1 \N@er@uttokNtla(`er@uttokYys \N@er@uttokNtla(`er@uttokYystlaNtla= tlaNtla= \N@[email protected], terglt= sldj, eitnok= #sldlitor(EhhIokteitZnlwIoktroddlr.plrjoraHoklNtlaXep)) kevngetnokNtla.rngft@er@uttokNtla 1 hokl@er@uttokNtla } } // AEPC= N@Eitnok jukitnoks lxtlksnok EhhIokteitZnlwIoktroddlr= IKIokteitRniclrHldlgetl { BN@Eitnok juki sfowIokteits(_ slkhlr= EkyO`mlit) { dlt iokteitRniclrZnlwIoktroddlr 1 IKIokteitRniclrZnlwIoktroddlr() iokteitRniclrZnlwIoktroddlr.prlhnietlJorLke`dnkgIokteit iokteitRniclrZnlwIoktroddlr.prlhnietlJorLke`dnkgIokt eit 1 KYRrlhnietl(joraet= "`nrtfhey !1 knd") iokteitRniclrZnlwIoktroddlr.hldlgetl iokteitRniclrZnlwIoktroddlr.h ldlgetl 1 sldj iokteitRniclrZnlwIoktroddlr.hnspdeylhRroplrtyClys iokteitRniclrZnlwIoktroddlr.hnspdeylhRroplrtyCly s1 SIKIokteitGnvlkKealCly,, IKIokteitJeandyKealCly, SIKIokteitGnvlkKealCly IKIokteitJeandyKealCly, IKIokteitLaendEhhrlsslsCly, IKIokteitLaendEhhrlssls Cly, IKIokteit@nrtfheyCly, IKIokteitNaeglHeteClyQ prlslkt(iokteitRniclrZnlwIoktroddlr, prlslkt(iokteitRniclrZnlwIoktroddlr, eknaetlh= trul, ioapdltnok= knd) } 000
Il979
5:IL2:6
juki iokteitRniclr(pniclr= IKIokteitRniclrZnlwIoktroddlr, hnhYldlitIokteit iokteit= IKIokteit) { hldlgetl.hnhJltifIokteits(SiokteitQ) kevngetnokIoktroddlr?.popZnlwIoktroddlr(eknaetlh= kevngetnokIoktroddlr?.popZnlw Ioktroddlr(eknaetlh= trul) } } // AEPC= \NRniclrZnlw Hldlgetl ekh Hetesouril jukitnoks lxtlksnok EhhIokteitZnlwIoktroddlr= \NRniclrZnlwHldlgetl { juki pniclrZnlw(_ pniclrZnlw= \NRniclrZnlw, kua`lrOjPowsNkIoapokl kua`lrOjPowsNkIoapoklkt kt ioapoklkt= Nkt) -; Nkt { rlturk aoktfs.ioukt } juki pniclrZnlw(_ pniclrZnlw= \NRniclrZnlw, tntdlJorPow row= Nkt, jorIoapoklkt ioapoklkt= Nkt) -; Ytrnkg? { rlturk aoktfsSrowQ } juki pniclrZnlw(_ pniclrZnlw= \NRniclrZnlw, hnhYldlitPow row= Nkt, nkIoapoklkt ioapoklkt= Nkt) { iurrlktdyYldlitlhAoktfNkhlx 1 row + 5 } } // AEPC= \NXlxtJnldhHldlgetl jukitnoks lxtlksnok EhhIokteitZnlwIoktroddlr= \NXlxtJnldhHldlgetl { juki tlxtJnldhYfoudhPlturk(_ tlxtJnldh= \NXlxtJnldh) -; @ood { EppHldlgetl.eppHldlgetl.rlqulstJorEiils EppHldlgetl.eppHldlgetl.rlqulstJorEiilss s { (eiilssGrektlh) -; Zonh nk nj eiilssGrektlh { dlt prlhnietl 1 IKIokteit.prlhnietlJorIokteits(aetifnkgKeal= sldj.txtDestKeal.tlxt!) dlt clys 1 SIKIokteitJoraettlr.hlsirnptorJorPlqunrlhClys(jor= SIKIokteitJoraettlr.hlsirnptorJorPlqunrlhClys(jor= IKIokteitJoraettlrYtydl.juddKeal), IKIokteitLaendEhhrlss IKIokteitLaendEhhrlsslsCly, lsCly, IKIokteit@nrtfheyClyQQ es SEkyQ IKIokteit@nrtfheyCly ver iokteits 1 SIKIokteitQ() ver werknkgAlssegl= Ytrnkg! dlt iokteitsYtorl 1 EppHldlgetl.eppHldlg EppHldlgetl.eppHldlgetl.iokteitYtorl etl.iokteitYtorl ho { iokteits 1 try iokteitsYtorl.uknjnlhIokteits(aetifnk iokteitsYtorl.uknjnlhIokteits(aetifnkg= g= prlhnietl, clysXoJltif= clys es! SIKClyHlsirnptorQ) nj iokteits.ioukt 11 2 { werknkgAlssegl 1 "Ko iokteits wlrl joukh aetifnkg tfl gnvlk keal." } } ietif { werknkgAlssegl 1 "\ke`dl to jltif iokteits." } nj dlt werknkgAlssegl 1 werknkgAlssegl { 009
Il979
5:IL2:6
HnspetifUulul.aenk.esyki { HnspetifUulul.aenk.esyki Fldplr.sfow(alssegl= werknkgAlssegl) } } ldsl { HnspetifUulul.aenk.esyki HnspetifUulul.aenk.es yki { sldj.hldlgetl.hnhJltifIokteits(iokteits) sldj.kevngetnokIoktroddlr?.popZnlwIoktroddlr(eknaetlh= sldj.kevngetnokIoktroddlr?.popZnlw Ioktroddlr(eknaetlh= trul) } } } } rlturk trul } // AEPC= Iustoa jukitnoks Bo`mi juki plrjoraHoklNtlaXep() { EppHldlgetl.eppHldlgetl.rlqulstJorEiils EppHldlgetl.eppHldlgetl.rlqulstJorEiilss s { (eiilssGrektlh) -; Zonh nk nj eiilssGrektlh { ver iokteits 1 SIKIokteitQ() dlt clys 1 SIKIokteitJoraettlr.hlsirnptorJorPlqunrlhClys(jor= SIKIokteitJoraettlr.hlsirnptorJorPlqunrlhClys(jor= IKIokteitJoraettlrYtydl.juddKeal), IKIokteitLaendEhhrlss IKIokteitLaendEhhrlsslsCly, lsCly, IKIokteit@nrtfheyCly,, IKIokteitNaeglHeteClyQ es SEkyQ IKIokteit@nrtfheyCly ho { dlt iokteitYtorl 1 EppHldlgetl.eppHldlgetl.iokteitYtorl EppHldlgetl.eppHldlgetl.iokteitYtorl try iokteitYtorl.lkualretlIok iokteitYtorl.lkualretlIokteits(wntf= teits(wntf= IKIokteitJltifPlqulst(clysXoJltif= IKIokteitJltifPlquls t(clysXoJltif= clys es! SIKClyHlsirnptorQ)) { S wlec sldjQ (iokteit, ponktlr) -; Zonh nk nj iokteit.`nrtfhey !1 knd && iokteit.`nrtfhey!.aoktf 11 sldj?.iurrlktdyYldlitlhAoktfNkhlx { iokteits.epplkh(iokteit) } } HnspetifUulul.aenk.esyki { HnspetifUulul.aenk.esyki sldj.hldlgetl.hnhJltifIokteits(iokteits) sldj.kevngetnokIoktroddlr?.popZnlwIoktroddlr(eknaetlh= sldj.kevngetnokIoktroddlr?.popZnl wIoktroddlr(eknaetlh= trul) } } ietif dlt lrror es KYLrror { prnkt(lrror.hlsirnptnok, slperetor= "", tlranketor= "Tk") } } } } } 008
Il979
5:IL2:6
IrletlIokteitZnlwIoktroddlr.swnjt naport \NCnt naport Iokteits idess IrletlIokteitZnlwIoktroddlr= \NZnlwIoktroddlr { BN@Outdlt wlec ver txtJnrstkeal= \NXlxtJnldh! BN@Outdlt wlec ver txtDestkeal= \NXlxtJnldh! BN@Outdlt wlec ver txtFoalLaend= \NXlxtJnldh! BN@Outdlt wlec ver hetlRniclr= \NHetlRniclr! ovlrrnhl juki vnlwHnhDoeh() { suplr.vnlwHnhDoeh() txtJnrstkeal.hldlgetl 1 sldj txtDestkeal.hldlgetl 1 sldj txtFoalLaend.hldlgetl 1 sldj dlt sevl@er@uttokNtla 1 \N@er@uttokNtla(`er@uttokYys \N@er@uttokNtla(`er@uttokYystlaNtla= tlaNtla= \N@[email protected], terglt= sldj, eitnok= #sldlitor(IrletlIokteitZnlwIoktroddlr.irletlIokteit)) kevngetnokNtla.rngft@er@uttokNtla 1 sevl@er@uttokNtla } ovlrrnhl juki hnhPlilnvlAlaoryWerknkg() { suplr.hnhPlilnvlAlaoryWerknkg() // Hnsposl oj eky rlsourils tfet iek `l rlirletlh. } Bo`mi juki irletlIokteit() { dlt klwIokteit 1 IKAute`dlIokteit() klwIokteit.gnvlkKeal klwIokteit.gnvlkKeal 1 txtJnrstkeal.tlxt! klwIokteit.jeandyKeal 1 txtDestkeal.tlxt! nj dlt foalLaend 1 txtFoalLaend.tlxt { dlt foalLaend 1 IKDe`ldlhZedul(de`ld= IKDe`ldFoal, vedul= foalLaend es KYYtrnkg) klwIokteit.laendEhhrlssls klwIokteit.laendEhhrlssl s 1 SfoalLaendQ } dlt `nrtfheyIoapoklkts 1 Iedlkher.iurrlkt.hetlIoapoklkts(SIedlkher.Ioapoklkt.yler, Iedlkher.Ioapoklkt.aoktf, Iedlkher.Ioapoklkt.aok tf, Iedlkher.Ioapoklkt.heyQ, Iedlkher.Ioapoklkt.heyQ, jroa= hetlRniclr.hetl) klwIokteit.`nrtfhey 1 `nrtfheyIoapoklkts ho { dlt sevlPlqulst 1 IKYevlPlqulst() sevlPlqulst.ehh(klwIokteit, sevlPlqulst.ehh(klwIokteit, toIoktenklrWntfNhlktnjnlr= knd) kn d) try EppHldlgetl.eppHldlge EppHldlgetl.eppHldlgetl.iokteitYtorl.lxliutl(sev tl.iokteitYtorl.lxliutl(sevlPlqulst) lPlqulst) kevngetnokIoktroddlr?.popZnlwIoktroddlr(eknaetlh= kevngetnokIoktroddlr?.popZnlw Ioktroddlr(eknaetlh= trul) } ietif { Fldplr.sfow(alssegl= Fldplr.sfow(alssegl= "\ke`dl to sevl tfl klw iokteit.") } } } lxtlksnok IrletlIokteitZnlwIoktroddlr= \NXlxtJnldhHldlgetl { juki tlxtJnldhYfoudhPlturk(_ tlxtJnldh= \NXlxtJnldh) -; @ood { 00<
Il979
5:IL2:6
tlxtJnldh.rlsngkJnrstPlspokhlr() rlturk trul } } [email protected] naport \NCnt idess Iokteit@nrtfheyIldd= \NXe`dlZnlwIldd { BN@Outdlt wlec ver d`dJuddkeal= \NDe`ld! BN@Outdlt wlec ver d`d@nrtfhey= \NDe`ld! BN@Outdlt wlec ver nagIokteitNaegl= \NNaeglZnlw! BN@Outdlt wlec ver d`dLaend= \NDe`ld! ovlrrnhl juki eweclJroaKn`() { suplr.eweclJroaKn`() nagIokteitNaegl.deylr.iorklrPehnus nagIokteitNaegl.deylr.iorkl rPehnus 1 0<.2 } ovlrrnhl juki sltYldlitlh(_ sldlitlh= @ood, eknaetlh= @ood) { suplr.sltYldlitlh(sldlitlh, suplr.sltYldlitlh(sldli tlh, eknaetlh= eknaetlh) } }
Output=
00: