ėžNMS 2.0PpŠų ŠķSYĄ2ŠĄ6V#6Ą1õ«ĄĶ}ó<ŹcĄĶ}ó!"¹Ą!?«Ą'Ķ}óĆXĄĶyęžžĀjĄ:ŠĄ§Ź"@…ĄĶwĄĶ}ó“·ČÕ_Ķ}óŃņBoot error Press any key for retry MSXDOS SYSų’’@`š’   Ą š’ @`€ Ą’ļ! #š’%`’) ’Ļ-š’ų’’@`š’   Ą š’ @`€ Ą’ļ! #š’%`’) ’Ļ-š’AUTOEXECBASŖ®D.ÄJOYSOR Ų®D.SPRITE ś®D.ž9KEUKEN ÆD.LSTRKLS 5ÆD.$äSCLPTR OÆD.',ICP4 lÆD.+zå4 BAT„B,.ß’€ ’ō:Å: (:Ÿ:Ģė:†A$()(€ ō2€ īA€(‹ N1ļ Ś Š‹€2Ģ•:Ÿ:Ų((ņ’’(A$(N1)))ō,:‘A$(N1):Ų,:‘"wordt opgezocht en gestart."¢€<‚ Nļ Ł ’’(A$(N1))р=‹ ’ƒ(A$(N1),N,)ļ"'" Ś Nļ’’(A$(N1)): ‰ ?>‹ ’ƒ(A$(N1),N,)šī" " Ś F$ļF$ń’ƒ(A$(N1),N,) ?ƒ NFŠ’(F$,)óFō:ę PRINTROUTINE ******************PžŒ čX‡A$o‹A$ļ"*P"ŚŠ:‰ƒ‹A$ļ"*L"Ś‘:‰’&‹A$ļ"*S"ŚŽØ0‹A$ļ"*C"ŚCļ:‰¾:‹A$ļ"*N"ŚCļ:‰ށD‹’’(A$)š)ŚB$ļA$:A$ļ"":‰vņN‚ Nļ( Ł  Ü ņ0‚X ‹ ’ƒ(A$,N,)ļ" " Ś B$(A$,Nņ):A$ļ’‚(A$,’’(A$)ņN):Nļ8‚bƒ NG‚l‹čīŚŠs‚v‹CŚŲ((ņ’’(B$))ō,č:‘B$:‹A$ļ""Ś:”D‹‚€‘B$:‹A$ļ""Ś:”D¶‚ŠŲ,:‘"DRUK SPATIEBALK VOOR VERVOLG";Ė‚”‹ģšī" "Ś”:”Ÿ:Žó‚ī:ę MENU **************************ƒųŒ  :Nļ ƒłŸ: *Xƒ ‡ A$(N):‹A$(N)šī"OP=OP"Ś‘ä"## &";N,A$(N):NļNń:‹NļŚŠ:*:”:”bƒ‰  ‰ƒ‘:‘"Nummer programma (0=opnieuw)";̃… N1:‹ N1š ÷ N1īļN Ś ‘"Onmogelijke keuze!":‚Nļ Ł Ü:ƒN:‰ī҃ Žģƒ*Ÿ:‘"MENU MCM-D10":‘:Ž„č:ę TEKSTEN **********************Z„ņ„ *C,MSX COMPUTER MAGAZINE PROGAMMA'S,*L,DISKETTE MCM-D10,*L,*L,*N…ó„ "Het jaarlijks hoogtepunt in Computerland - de HCC-dagen - is weer geweest. Twee ontzettend drukke dagen in Utrecht, de redaktie was werkelijk afgepeigerd na afloop.·…ō„ "Want op die twee dagen hebben we niet alleen vele lezers te woord gestaan, maar ook zelf tussen de vele kramen en stands rondgedwaald, op zoek naar nieuwtjes en koopjes.P†õ„*L,"Die koopjes waren er dan ook wel, in overvloed zelfs. Vooral zo tegen het einde van de tweede dag. Allerlei zaken hielden werkelijk uitverkoop!(‡ö„*P,"Overigens bleek er iets mis gegaan te zijn met de katalogus van de HCC-dagen, waardoor wij niet als MSX Computer Magazine maar als MBI vermeld stonden. Maar gelukkig konden de meesten ons toch wel vinden...ļ‡÷„ *P,*C,"Gevarieerd",*N,*L,"Een gevarieerd aanbod op deze disk - een snel spel, een fraaie sprite-editor, een MSX2 teken-programma, een handige ML-routine en een Sinterklaas-gedichten generator.zˆųóL,"Weliswaar zijn het niet zoveel programma's, maar sommige zijn wel erg lang. Sprite bijvoorbeeld alleen al is zeer de moeite waard.”ˆś„*P,*C,"JOYSOR",*L,*NB‰ū„ "Sommige programma's werken alleen met de cursor-toetsen. Met de handige machinetaal routine, Joysor, zullen deze programma's voortaan ook aan de joystick gehoorzamen.ą‰ü„*L,"Let alleen wel even op, het blijkt dat Joysor op sommige MSX1 machines wat probleempjes heeft. Wijzig in dat geval de waarde 03 in regel 1100 in 01.ś‰ż„*P,*C,"KEUKEN",*L,*NÊž„ "Keuken is een snel spel dat zich afspeelt in een wel heel vrolijke keuken. Allerlei voorwerpen die uit het keukenkastje aan gruzels dreigen te vallen moeten met de koekenpan worden onderschept.‹’„ *P,*C,"SCLPTOR",*L,*N,"Sclptr is een teken-programma voor MSX2, waarin het hele video-geheugen tot zijn recht komt. Een misplaatste paint-opdracht heeft met deze tekenaar geen fatale afloop meer.Œ„ *P,*C,"STRKLS",*L,*N,"Ziet u op tegen de jaarlijks weerkerende rijmelarij voor het heerlijk avondje, dan is Strkls een uitkomst.˜Œ„ *L,"Het programma vraagt aan wie u welk kado wil geven en levert desgewenst 18 varianten van een heus Sinterklaas-gedicht af.4„ *L,"Het programma biedt echter ook ruimte voor eigen kreativiteit. U kunt ook uw eigen rijmregels invoeren of het aantal mogelijke regels uitbreiden.M„*P,*C,"Sorry",*L,*N°„ "Het aangekondigde programma Begadr is wegens ruimtegebrek uitgesteld tot een volgende keer.8Ž„*L,"Ook de machinetaal-cursus hebben we een nummertje moeten doorschuiven. Vandaar dat ook die listinkjes niet op deze disk staan.]Ž$„ *P,*C,"Programma-fouten",*N,*LB„ "Onze eigen programma's en de lezers-inzendingen hebben we natuurlijk zo goed mogelijk gekontroleerd op fouten, maar helemaal garanderen kunnen we ze niet." <„ *P,*C,PROBLEEMPJES?,*N,*L,"Mocht u problemen ondervinden met het laden van een of meer van de programma's op deze diskette, geef het dan niet meteen op."įF„ "Laadproblemen bij diskette komen echter zeer zelden voor.(P„ "Even het hele systeem uit en weer aanzetten kan wonderen doen."ŗZ„ *L,"Als de moeilijkheden daardoor echter niet op te lossen zijn, stuurt u dan de diskette, met een beschrijving van de problemen, naar:",*Lِd„ *P,MCM Programma Serviceģn„ POSTBUS 1392‘x„ 1000 BJ AMSTERDAMQ‘‚„ *L,"waarna wij uw diskette zullen omruilen voor een ander exemplaar."'’Œ„ *L,"Telefonische vragen over de Programma Service - maar geen technische vragen - kunt u kwijt op 020-681081. Leg zo kort en bondig mogelijk uit wat er aan de hand is en wij zullen proberen het te verhelpen.Ī’„ *P,*C,"Vragenuurtje",*N,*L,"Die technische vragen kunt u namelijk alleen stellen tijdens het telefonisch vragenuurtje van de redaktie van MSX Computer Magazine.““Ž„ *L,"Elke dinsdag tussen vier uur in de middag en zeven uur s'avonds kunt u terecht op telefoon: 020-931263. Op andere dagen kunnen we u echter niet te woord staan. Per slot van rekening moeten we ook nog een blad schrijven!Ą“–„ *P,*Sē“ :ę PROGRAMMA'S ****************** ”Ŗ„ JOYSOR ' Handige ML-utility,”«„ SPRITE ' Prima sprite-editorE”¬„ KEUKEN ' Snel speli”­„ STRKLS ' Sinterklaas-surprise”“„ SCLPTR ' MSX2 scherm-tekenaar¶”Ü„ ICP4 ' Invoer Controle ProgrammaĀ”ę„ OP=OP* d: del d:c4.bat c:c4 ƒ,Ų ,,:‘ K$;" ... EEN OGENBLIKJE";:‚ Iļ Ł K:‡ P$:ƒ I;ƒ6• ¦ ‰ @:° P$ ‚ … AS 1:“:Š P$ˆƒ@Ų ,:‘ "DIT PROGRAMMA STAAT NIET OP FLOPPIE!";:Į "M3000S1T255L64CDEFG"žƒJ‚ Iļ Ł č:ƒ I:ЦƒTŸ:”EN GEEF RETURN WANNEER GEREED"š‚Į "t255l64s8m5000cfacfacfacfacfacfa"‚Œ‹ģļ’–( )ڊ:åååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååå’€ :ę JOYSOR€:ę=€:ę MSX Computer MagazineE€(:ęS€2Å :   'Ž€<Ų ,:‘"JOYSOR":Ų ,:‘"Cursorbesturing per joystick"ó€F‘:‘"Machinecode installeren":‘:‘"[1] onder CLEAR-grens":‘"[2] in de PLAY-wachtrij":‘:‘"Keuze: ";PAļ’”(…$()):‹ Aš ÷ Aī Ś P8Z‘ A:‹ Aļ Ś STļ õłńEeS`:‰ x[d’ Č,’—( Jü)ńó’—( Kü)ņ qņvnSTļ’—( Jü)ńó’—( Kü)…xLļ q:CSﺁ‚‚ Iļ Ł L: ‡ A$: CSļCSń’•(’(A$,))ń’•(’‚(A$,))‚Œ‹ A$ļ"*0" Ś ‡ A$:AļSTń’”("&H0"ńA$):˜STńI,Aņ’…(Aō)ó:IļIń:˜STńI,’…(Aō):‰  *‚–˜ STńI,’”("&h"ńA$)2‚ ƒ Iv‚Ŗ‹ CSšīÆ+ Ś ‘:‘"Fout in de DATA-regels!":‘"Eerst verbeteren!":£‚“Ÿ:‘"Machinecode geinstalleerd op "’›(ST)Ƃ¾‚ Iļ Ł :‡ A: ˜ STńLńI,A:ƒŚ‚ČADļSTńLń:HOOKļ Ÿżž‚Ņ‚ Iļ Ł :˜ ADńńI,’—(HOOKńI):ƒ ƒÜ˜ AD, Ķ(ƒę˜ ADń,STņ’…(STō)ó>ƒš˜ ADń,’…(STō)Mƒś˜ HOOK, Élƒ˜ HOOKń,ADņ’…(ADō)󄃘 HOOKń,’…(ADō)„ƒ˜ HOOKń,: :ęstartsnelheid“ƒ"˜ HOOK, Ć„,‘:‘"De cursor is nu bestuurbaar met een joystick in een van de ingangen."}„6‘"Daardoor zullen alle programma's die via de cursortoetsen werken, nu ook met een joystick bestuurbaar zijn."Ā„@‹ ’—( -)ļ Ś ˜ STń,: ‰ r: :ękennelijk MSX 2: geen snelheid…J‘:‘"De cursor en het toetsenbord kunnen sneller gezet worden."m…T‘:‘"Geef de snelheid van de cursor:":‘:‘"[1] zeer snel":‘"[2] snel":‘"[3] normaal":‘:‘"Keuze: ";…^Aļ’”(…$()):‹ Aš ÷ Aī Ś ^¢…h‘ A:˜ HOOKń,A؅rĖ…č:ę het programma in assemblerӅņ:ę†ü ::ę HOOK EQU #FD9F.† ::ę WACHT EQU HOOK+4Y† ::ę GTSTCK EQU #D5„† ::ę STRIG EQU #D8Œ†$:ęʆ.„ F5 ::ę START PUSH AF beveilig Accu҆8:ę ‡B„ 3A,F6,F3::ę LD A,(#F3F6) tellerF‡L„ FE,03 ::ę CP 3 3 (MSX2: 1)?y‡V„ 28,02 ::ę JR Z,JOYST ja‡`:ę¼‡j„ F1 ::ę END POP AF nee, terugއt„ C9 ::ę RETę‡~:ę'ˆˆ„ 3A,A3,FD::ę JOYST LD A,(WACHT) stel snelheid inUˆ’„ 32,F6,F3::ę LD (#F3F6),A˜ˆœ„ 06,02 ::ę LD B,2 2 joysticks testen戦„ C5 ::ę JOY1 PUSH BC爰„ 78 ::ę LD A,B ‰ŗ„ CD,D8,00::ę CALL STRIG trigger?G‰Ä„ C1 ::ę POP BC‚‰Ī„ B7 ::ę OR A ingedrukt?¶‰Ų„ 20,2E ::ę JR NZ,TRIG ja!ņ‰ā„ 10,F5 ::ę DJNZ JOY1 nee,opnieuwś‰ģ:ę9Šö„ 06,02 ::ę LD B,2 twee joysticks`Š„ C5 ::ę JOY2 PUSH BCˆŠ „ 78 ::ę LD A,B³Š„ CD,D5,00::ę CALL GTSTCKڊ„ C1 ::ę POP BC‹(„ B7 ::ę OR A richting?P‹2„ 20,04 ::ę JR NZ,BEWEEG ja: doe hety‹<„ 10,F5 ::ę DJNZ JOY2‹F:ęĄ‹P„ 18,DC ::ę JR END niets gevondenȋZ:ę Œd„ 21,*0,69::ę BEWEEG LD HL,TABEL-1 vertaal richtingIŒn„ 16,00 ::ę LD D,0 naar bitpatroonƒŒx„ 5F ::ę LD E,A uit tabel­Œ‚„ 19 ::ę ADD HL,DE،Œ„ 7E ::ę LD A,(HL)ąŒ–:ę „ 06,04 ::ę LD B,4 4 bits testenaŖ„ 21,*0,72::ę LD HL,TABEL+8 schuif rechter bitœ“„ CB,3F ::ę BIT SRL A naar carryŽ¾„ 30,07 ::ę JR NC,BIT2 nul: volgende bitęČ:ę ŽŅ„ F5 ::ę PUSH AFSŽÜ„ 7E ::ę LD A,(HL) haal letter uit tabel‡Žę„ B7 ::ę OR A =0?ĢŽš„ C4,*0,51::ę CALL NZ,INRIJ nee: zet in wachtrijś„ F1 ::ę POP AF herstel A:ęR„ 23 ::ę BIT2 INC HL verhoog tabelwijzer•„ 10,F2 ::ę DJNZ BIT herhaal totdat b=0":ęŌ,„ 18,BF ::ę JR END klaar.܏6:ę$@„ 3A,*0,76::ę TRIG LD A,(TABEL+12) neem laatste getal uithJ„ CD,*0,51::ę CALL INRIJ tabel en zet in rij„T„ 18,B7 ::ę JR END spring terug­^:ęԐh„ E5 ::ę INRIJ PUSH HL‘r„ 2A,F8,F3::ę LD HL,(#F3F8) wijzer naar plaats in rij^‘|„ 77 ::ę LD (HL),A sla A op in rij ‘†„ 23 ::ę INC HL verhoog rijwijzerȑ„ 7D ::ę LD A,L ’š„ FE,18 ::ę CP #18 L-register = &h18?I’¤„ 20,03 ::ę JR NZ,IN1 nee, alles OK•’®„ 21,F0,FB::ę LD HL,#FBF0 anders terug naar begin rijŻ’ø„ 3A,FA,F3::ę IN1 LD A,(#F3FA) L-byte van einde-wijzer “Ā„ BD ::ę CP L gelijk aan wijzer?^“Ģ„ 28,03 ::ę JR Z,INEND ja, doe nietsؓÖ„ 22,F8,F3::ę LD (#F3F8),HL nee, sla nieuwe wijzer op擱„ E1 ::ę INEND POP HL herstel HL!”ź„ C9 ::ę RET einde routine)”ō:ę^”ž„ 01,03,02::ę TABEL DEFB 1,3,2,6,4,12,8,9s”„ 06,04,0C,08,09{”:ęš”Š:ę data voor verplaatsen:®”Ś„ 30 ::ęomhoogĀ”ä„ 28 ::ęrechts֔ī„ 31 ::ęomlaagé”ų„ 29 ::ęlinks’”„ 32 ::ęvuurknopE";:‚ Iļ Ł K:‡ P$:ƒ I;ƒ6• ¦ ‰ @:° P$ ‚ … AS 1:“:Š P$ˆƒ@Ų ,:‘ "DIT PROGRAMMA STAAT NIET OP FLOPPIE!";:Į "M3000S1T255L64CDEFG"žƒJ‚ Iļ Ł č:ƒ I:ЦƒTŸ:”EN GEEF RETURN WANNEER GEREED"š‚Į "t255l64s8m5000cfacfacfacfacfacfa"‚Œ‹ģļ’–( )ڊ:åååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååå’€  SPRITE€0€ MSX Computer Magazine6€(_€2 Inzender: R. Ridderman, Ruinerwolde€<Œ€F:ę ******************************³€P:ę * *Ś€Z:ę * SPRITE EDITOR DE LUXE *d:ę* ------ ------ -- ---- *&n:ę* Rori-soft sept. 1986 *Lx:ę* *r‚:ę******************************zŒ:ę¢–:ęInitialisatie ******************Ŗ :ęƁŖ’ ō:¬ AņZ:EO$ļ"A:"΁“—ŻļV܁¾• ¦ ‰ LīČ•   f: •‚ŅÅ :  (:½ ,,:Ÿ‚ܰ "GRP:" AS #9‚ę† SP(,,),SB(),HS(,)Z‚š‚ Iļ Ł  :M(I)ļõ(Iņ): ƒ Ix‚ś† SN$():CPļņ:VCļ:ACļ ‚:ęHoofdmenu **********************؂:ę²‚ ^ɂ"I$ļģ:‹ I$ļ"" Ś "å‚,‹ I$ī"5" ÷ I$š"1" Ś " ƒ6‘ I$:• ’”(I$)  Ø,Ø,ˆ,ą,Tƒ@Ÿ:‰ AƒJ:ęScherm hoofdmenu ***************IƒT:ę^ƒ^THļ:Å : Ģ ė: ŸvƒhŲ ,:‘"HOOFDMENU"–ƒrŲ  ,:‘"1 EDIT 8x8 SPRITE"øƒ|Ų  ,:‘"2 EDIT 16x16 SPRITE"ڃ†Ų  ,:‘"3 OVERZICHT SPRITES"„Ų  , :‘"4 WIJZIG CASSETTE/DISKETTE""„šŲ ,:‘"OPSLAG OP: ";EO$;„¤Ų  , :‘"5 STOPPEN"U„®Ų ,:‘"UW KEUZE:_"a„øŲ ,g„ĀŽ„Ģ:ęSprite edit scherm *************—„Ö:ę¦„ą½ ,,:ŸĄ„źÆ (,)ņ(’, ), ,BF…ōXļ:Yļ:Cļ :KK$ļ"EDIT Sprite Nr:"ń’“(SN)ń" Naam: "ńSH$…žÆ (,)ņ(’, ), ,BF$… r;…G$ļ"":‚ Gļ Ł GRņK…G$ļG$ń’›(G)S…&ƒ Gj…0Ć ( , ),:‘#,G$~…:Yļ:‚ Iļ Ł GR›…DĆ (,Y),:‘#,’ƒ(G$,I,)©…NYļYń:ƒ Iŗ…X‹ HH Ś  €Ż…bÆ (,)ņ(ńóGR,ńóGR),,Bē…l †vCļ:Xļ:Yļœ:KK$ļ"< Werk. grootte": r/†€Æ (,¬)ņ(Œ,Ą),,BF5†ŠŽ]†”:ęEdit sprite 8*8 en 16*16 *******e†ž:ę‚†Ø‹ I$ļ"1" Ś GRļ :” GRļŒ†² Žš†¼Å : ĢƆĘ‹ SB(SN)ļ Ś  ē†ŠĄ:Cļ:Xļ:Yļ®:KK$ļ"Sprite is gemaakt. naam:": r‡ŚYļ¶:KK$ļSN$(SN)ń" Editten (J/N)? _": r9‡äI$ļģ:‹ I$šī"J" ö I$šī"N" Ś äR‡īÆ(,¬)ņ(Œ,Ą),,BFp‡ų‹ I$ļ"J" Ś  ° :” Ž @€‡SN$(SN)ļSH$“‡ Ą:Cļ:Xļ:Yļ®:KK$ļ"U kunt beginnen!": r:Bļ݇‚ Iļ Ł d:ƒ: Æ(,¬)ņ(Œ,Ą),,BF:Ąö‡ SB(SN)ļ:SN$(SN)ļSH$%ˆ*‹ CP Ś Xļ:Yļ:Cļķ(Xń,Yń):KK$ļ"+": r.ˆ4CPļKˆ>AAļ:Xļ:Yļ:XPļ:YPļšbˆHI$ļģ:‹ I$ļ"" Ś HwˆR‹ I$ļ" " Ś  2’ˆ\Sļ’¢():‹ Sšī Ś  ‚·ˆfTļå("SAWQDMFRHGIPOLKZVCTBNE",I$)Ɉp‹ Tļ Ś ‰ H+‰z• T  ®,ź,&,N,v,²,Ś,R,Ź,8 ,¦ ,ā ,Ŗ ,† ,Ø ,p ,Ž ,ņ ,`,Z,Z,ÜG‰„‹ THļ Ś SNļ(SNń)ū:ŽW‰Ž ˜:‰ *‰˜:ęBoodschap verder kunnen ********‡‰¢:ę”‰¬Æ (,¬)ņ(Œ,Ą),,BFω¶Ą:Cļ:Xļ:YļÆ:KK$ļ"U kunt verder!": rå‰Ą‚ Iļ Ł ,:ƒ I:Ą’‰ŹÆ (,¬)ņ(Œ,Ą),,BFŠŌŽ-ŠŽ:ęNaam/nummer sprite inv. ********5Šč:ęjŠņŲ ,:‘"Geef nummer sprite (0-19):?";SN:Ų ,”Šü… S$:‹ ’”(S$)š ÷ ’”(S$)ī Ś Ą:‰ ņ¢ŠSNļ’”(S$)ԊŲ ,:‘"Geef naam sprite:? ________":Ų ,ފ… SH$šŠ$SH$(SH$,)‹.‚ Iļ Ł  Ü ņ ‹8‹ ’ƒ(SH$,I,)šī"_" Ś V(‹Bƒ I4‹LĄ:‰ F‹VSH$(SH$,I)Z‹`‚ Iļ Ł ’’(SH$)p‹jAļ’•(’ƒ(SH$,I,))‹t‹ Aš0 ÷ (Aī9 ö AšA) ÷ AīZ Ś Ą: ‰ „‹~ƒ IĶ‹ˆŲ ,:‘"Edit Menu (A)an/(U)it? _";š‹’I$ļģ:‹ I$šī"A" ö I$šī"U" Ś ’ Œœ‹ I$ļ"A" Ś HHļņ :” HHļŒ¦Ž:Œ°:ęGemaakte sprite invullen ******BŒŗ:ęƒŒÄCPļņ:½ VC:‚ Iļ Ł (GRņ)ō:• I  ¾,Č,Ņ,Ü:XMļX:XNļXP¦ŒĪ‚ Jļ Ł :‚ Kļ Ł  Ü ņ:HļõK݌Ų‹ (SP(SN,I,J) ö H) Ś Ć(X,Y):‘#,’–(Ū):Ć(XP,YP),VCóŒāXļXń:XPļXPń:ƒ KģXļXM:XPļXN:YļYń:YPļYPń:ƒ J,I5ö½ :Xļ:Yļ:XPļ:YPļš:Ž\:ęSprite vlakken schoon *********d :ęˆÆ (,)ņ(ńGRó,ńGRó),AC,BF؍Æ (,š)ņ(ńGR,™ńGR),AC,BF®(ŽÕ2:ęPunt veranderen ***************Ż<:ęīFPļķ(Xń,Yń)ŽP‹ PļVC Ś ½ AC:CļAC :” ½ VC:CļVC(ŽZĆ(X,Y):‘#,’–(Ū)7ŽdĆ(XP,YP),CWŽn :Ć(Xń,Y):½ :‘#,"+"fŽx½ :Ž HŽ‚:ęCursor verplaatsen ************•ŽŒ:ęĄŽ–½ :‹ Sšī ö Sšī ö Sšī ö Sšī Ś ¾ēŽ Pļķ(Xń,Yń):Æ(X,Y)ņ(Xń,Yń),P,BFŖ• S  Č,,Ü,,š,,“Ć(Xń,Y),P:‘#,"+"%¾Ž HWČ‹ Yšļ Ś YļńóGR:YPļ™ńGR :” YļYņ:YPļYPņ]ŅއÜ‹ XīļóGR Ś Xļ:XPļ :” XļXń:XPļXPńę޼š‹ YīļńóGR Ś Yļ:YPļš :” YļYń:YPļYPńĀśŽļ‹ Xšļ Ś XļóGR:XPļńGR :” XļXņ:XPļXPņõŽ Jļ((Yņ)ü)ūń%"AAļõ(ņ(((Xņ)ü)ū))=,Iļ:‹ YļīV Ś IļIńQ6‹ XļīH Ś IļIńš@HļSP(SN,I,J):‹ (H ö AA) Ś SP(SN,I,J)ļ(H ų AA) :” SP(SN,I,J)ļ(H ÷ AA) JŽĒT:ęEinde *************************ϐ^:ęސhÅ :Ģ •: ‘r:ęTekst afdrukken op scherm ***** ‘|:ę&‘†XMļX:‚ Iļ Ł ’’(KK$)D‘Ć (X,Y),C:‘#,’ƒ(KK$,I,)k‘š‹ ’ƒ(KK$,I,)ļ" " Ś XļXń :” XļXńz‘¤ƒ I:XļXM:Ž”‘®:ęOmslaan om hor. as ************©‘ø:ę³‘Ā ϑ̋ GRļ Ś  Ö :”  Ł‘Ö °ߑąŽ’ź:ęOmslaan om vert. as ***********’ō:ę’ž 4’‹ GRļ Ś  " :”  h>’ °D’Žk’&:ęSpiegelen om hor. as **********s’0:ę•’: :‹ GRļ Ś  „ :”  ¶”’D °:ŽČ’N:ęSpiegelen om vert. as *********Š’X:ęņ’b :‹ GRļ Ś  č :”  $ž’l °:Ž%“v:ę180 graden draaien ************-“€:ę7“Š _“”‹ GRļ Ś  ": Ö :”  h: i“ž °o“ØŽ–“²:ęMenu Edit aan/uit *************ž“¼:ęŌ“Ę‹ HH Ś HHļ:Æ (,)ņ(’,Ą),,BF :” HHļņ: €Ś“ŠŽ”Ś:ęRegel omlaag ****************** ”ä:ę"”ī :„ HS:† HS(,)7”ų‚ Iļ Ł (GRņ)üb”‹ Iļ ÷ Iļ Ś HS((Iń)ō,)ļSP(SN,I,)u” ‚ Jļ Ł  Ü ņ‘”SP(SN,I,J)ļSP(SN,I,Jņ)›” ƒ J,I»”*‹ GRļ Ś SP(SN,,)ļ:‰ Hž”4‚ Iļ Ł :‹ (Iļ ÷ Iļ) Ś SP(SN,I,)ļHS(Iō,) :” SP(SN,I,)ļ•>ƒ I•H °:Ž9•R:ęRegel omhoog ******************A•\:ęZ•f :„ HS:† HS(,)o•p‚ Iļ Ł (GRņ)üš•z‹ Iļ ÷ Iļ Ś HS((Iń)ō,)ļSP(SN,I,)ؕ„‚ Jļ Ł ĕŽSP(SN,I,J)ļSP(SN,I,Jń)Ī•˜ƒ J,Iī•¢‹ GRļ Ś SP(SN,,)ļ:‰ Ą5–¬‚ Iļ Ł :‹ (Iļ ÷ Iļ) Ś SP(SN,I,)ļHS((Iń)ō,) :” SP(SN,I,)ļ=–¶ƒ II–Ą °:Žp–Ź:ęRegel rechts ******************x–Ō:ę‘–Ž :„ HS:† HS(,)¦–č‚ Iļ Ł (GRņ)ōߖņ‚ Jļ Ł :‹ SP(SN,I,J) ö  Ś HS(I,J)ļ€ :” HS(I,J)ļž–üSP(SN,I,J)ļSP(SN,I,J) ö ž— SP(SN,I,J)ļSP(SN,I,J)ō$— ƒ J,I^— ‚ Iļ Ł :‚ Jļ Ł :SP(SN,I,J)ļSP(SN,I,J) ÷ HS(Iņ,J)h—$ ƒ J,It—.  °:Ž›—8 :ęRegel links *******************£—B :ę­—L  їV „ HS:† HS(,):‚ Iļ Ł (GRņ)ō ˜` ‚ Jļ Ł :‹ SP(SN,I,J) ö € Ś HS(I,J)ļ :” HS(I,J)ļ)˜j SP(SN,I,J)ļSP(SN,I,J) ö E˜t SP(SN,I,J)ļSP(SN,I,J)óO˜~ ƒ J,I‰˜ˆ ‚ Iļ Ł :‚ Jļ Ł :SP(SN,I,J)ļSP(SN,I,J) ÷ HS(Iń,J)“˜’ ƒ J,IŸ˜œ  °:ŽĘ˜¦ :ęInverteren ********************Θ° :ę阺  :‚ Iļ Ł (GRņ)ō÷˜Ä ‚ Jļ Ł ™Ī SP(SN,I,J)ļSP(SN,I,J) ų ’(™Ų ƒ J,I: °:ŽO™ā :ęData op scherm ****************W™ģ :ęa™ö Ÿ:Å ™ ‘ "DATA Sprite Nr:";SN;" Naam: ";SN$(SN)Ŗ™ RNļ: Z :Ų ,:‘ SD$æ™ ‚ Iļ Ł (GRņ)ōŅ™ RNļRNń : Z ä™( Ų ,Iń:‘ SD$ģ™2 ƒ I7š< Ų ,:‘"Toets voor terug edit","Toets voor terug hoofdmenu:";IšF B$ļ…$():‘ B$–šP ‹ B$ļ"E" Ś THļ:Å: Ģ: °:Ž :” ‹ B$ļ"H" Ś THļ:Ž :” Ą:Ų ,:‰ F ½šZ :ęData string maken *************Śd :ę›n ‹ RNļ Ś SD$ļ’‚(’“(0uńSNó2),)ń" 'Data Sprite "ńSN$(SN): Ž.›x SD$ļ’‚(’“(0uńSNó2ńRN),)ń" DATA "<›‚ ‚ Jļ Ł i›Œ SD$ļSD$ń’‚("0"ń’›(SP(SN,I,J)),)ń",":ƒ Jƒ›– SD$(SD$,’’(SD$)ņ)‰›  ް›Ŗ :ęSprite opslaan ****************ø›“ :ęě¾ Ÿ:Å :“ł›Č ‘ "OPSLAAN Sprite Nr: ";SN,ß);"Naam ";SN$(SN);0œŅ ‹ EO$ļ"CAS:" Ś FS$(FS$,) :” FS$ļSN$(SN)ń".SPR"cœÜ Ų ,:‘ ßN):Ų ,:‘"Naam ASCII bestand: ";FS$yœę Ą:‘"O.K. (J/N)?";Ŗœš I$ļģ:‹ I$ļ"J" Ś 6 :” ‹ I$ļ"N" Ś ś :” š ǜś Ų ,:… "Geef naam:";FS$śœ ‹ EO$ļ"CAS:" Ś SN$(SN)ļFS$:FS$(FS$,):‰ "  Iļå(FS$,".")m ‹ Iļ Ś SN$(SN)ļFS$:FS$(FS$,)ń".SPR" :” SN$(SN)(FS$,Iņ):‹ ’‚(FS$,)šī".SPR" Ś Ą ‰ ś }" SH$ļSN$(SN), Ų ,:‰ Č ®6 ° EO$ńFS$ ‚ œ³ AS#:SB(SN)ļć@ RNļ: Z :Ų , :‘ SD$:‘#,SD$:‚ Iļ Ł (GRņ)ōöJ RNļRNń : Z žT Ų ,Iń :‘ SD$ž^ ‘#,SD$žh ƒ I.žr SB(SN)ļ:“#Kž| °"GRP:" ‚ œ³ AS #:‰ < rž† :ęSprite lezen ******************zž :ę‰žš Å :  &:“Āž¤ ‘"DATA VAN DISK Sprite Nr: ";SN,ß);"Naam:";SN$(SN)Łž® ‹ EO$ļ"CAS:" Ś Ö Ÿø Ų ,:‘"Op deze schijf aanwezige DATA:"ŸĀ · "*.SPR"&ŸĢ Ų ,:‘ ßL);OŸÖ Ų ,:… "Welke wil je inlezen:";FS$vŸą ‹ EO$ļ"CAS:" Ś FS$(FS$,):‰ ž ‡Ÿź Iļå(FS$,".")џō ‹ Iļ Ś SN$(SN)(FS$,):FS$(FS$,)ń".SPR" :” SN$(SN)(FS$,Iņ)įŸž SH$ļSN$(SN)ųŸ ° EO$ńFS$ ‚ … AS#  ‚ Iļ Ł :Ų ,I:‘ ß&);:ƒ I'  Æ …#,SD$7 & Ų ,:‘ SD$L 0 ‚ Iļ Ł (GRņ)ō^ : ‹ ’«() Ś l l D Æ …#,SD$~ N Ų ,Iń:‘ SD$ˆ X  €  b ƒ I˜ l “#Æ v °"GRP:" AS#:‰ < Ö € :ęData uit string halen *********Ž Š :ę”” ‚ Jļ Ł :SP(SN,I,J)ļ’”("&H"ń’ƒ(SD$,ńóJ,)):ƒ J”ž ŽA”Ø :ęSprite mengen *****************I”² :ęS”¼ Å:Ÿ:f”Ę ‘"SAMENVOEGEN" ”Š Ų ,:‘"Huidige Sprite Nr: ";SN,ß);"Naam:";SN$(SN)Ē”Ś Ų ,:‘"Verder aanwezige Sprites:"Ž”ä Xļ:Yļ:‚ Iļ Ł ł”ī ‹ SB(I)ļ ÷ IļSN Ś  ¢ų Ų X,Y:‘ I;" ";SN$(I)1¢ ‹ Xļ Ś Xļ:YļYń :” Xļ9¢ ƒ IZ¢ Ų ,:‘"R: Return edit modeŒ¢ Ų ,:…"Welk nummer wilt u samenvoegen:";SS$ ¢* ‹ SS$ļ"R" Ś f Č¢4 SSļ’”(SS$):‹ SSš ÷ SSī Ś Ą:‰  Ż¢> ‹ SB(SS)ļ Ś f ü¢H ‚ Iļ Ł (GRņ)ō:‚ Jļ Ł #£R SP(SN,I,J)ļSP(SN,I,J) ÷ SP(SS,I,J)-£\ ƒ J,IC£f Å: Ģ: °: Žj£p :ęTerug hoofdmenu ***************r£z :ę}£„ THļ:ޤ£Ž :ęSprite vullen *****************¬£˜ :ę×£¢ Cļ:Xļ:YļÆ:KK$ļ"Vullen (J/N)?": rś£¬ I$ļģ:‹ I$šī"J" ö I$šī"N" Ś ¬ ¤¶ ‹ I$ļ"N" Ś č 1¤Ą Æ (,)ņ(ńóGR,ńóGR),VC,BFQ¤Ź Æ (,š)ņ(ńGR,™ńGR),VC,BFi¤Ō ‚ Iļ Ł :‚ Jļ Ł ¤Ž SP(SN,I,J)ļ’:ƒ J,I‡¤č Ž®¤ņ :ęSprite wissen *****************¶¤ü :ęį¤Cļ:Xļ:YļÆ:KK$ļ"Wissen (J/N)?": r„I$ļģ:‹ I$šī"J" ö I$šī"N" Ś „‹ I$ļ"N" Ś B!„$ 9„.‚ Iļ Ł :‚ Jļ Ł P„8SP(SN,I,J)ļ:ƒ J,IV„BŽ}„L:ęError routine *****************…„V:ę¢„`‹ įļ6 ö āļ8 Ś Ą:§ ś ø„j‹ įļ Ś Ą:§ Ģ Ļ„tÅ :½ ,,:• ¦ ‰ö„~:ęOverzicht gemaakte sprites ****ž„ˆ:ę ¦’Å ,:"¦œÆ (,)ņ(’,), ,BF;¦¦Æ (,)ņ(,·),,BFU¦°Æ (,)ņ(v,·),,BFo¦ŗÆ (w,)ņ(Ī,·),,BF‰¦ÄÆ (Ļ,)ņ(’,·),,BF£¦ĪÆ (,ø)ņ(’,Ą),,BFė¦ŲCļ :Xļ:Yļ:KK$ļ"Nr. Naam"ń’™()ń"Vorm"ń’™( )ń"Gesaved": r§āÆ (,)ņ(,·),§ģÆ (w,)ņ(w,·),3§öÆ (Ļ,)ņ(Ļ,·),I§Æ (,)ņ(’,),d§ YHļ :Tļņ:‚ STļ Ł y§‹ SB(ST)ļ Ś x”§TļTń:Cļ:Xļ:YļYHńóT®§(‹ (Tń)ūļ Ś YHļYHńø§2  ×§<KK$ļ’‚("0"ń’“(ST),): ró§FCļ:DXļ(Tū):XļńóDX ØPKK$ļSN$(ST): r(ØZ³ Ē ST,(XńdńóDX,Y),,STOØd‹ SB(ST)ļ Ś KK$ļ"Ja" :” KK$ļ"Nee"bØnCļ:XļÖ: rkØxƒ STžØ‚Cļ:½ :Xļ(:Yļø:Ą:KK$ļ"Druk een toets": r«ØŒB$ļ…$()¹Ø–½ :Å:ŽŻØ Œ ś:S$ļ"":‚ Iļ Ł :‚ Jļ Ł öØŖS$ļS$ń’–(SP(ST,I,J)) ©“ƒ J,I:Ē$(ST)ļS$:Ž&©¾Xļ:Yļ:XPļ:YPļš:Ž@©ČXļ:YļV:XPļ:YPļ¢:Ž\©ŅXļH:Yļ:XPļ:YPļš:Žx©ÜXļH:YļV:XPļ:YPļ¢:ŽŸ©ę:ęData hulpsprite ***************§©š:ęÅ©ś„ FF,80,80,80,80,80,80,80ć©„ 80,80,80,80,80,80,80,FFŖ„ FF,01,01,01,01,01,01,01Ŗ„ 01,01,01,01,01,01,01,FFFŖ":ęOmslaan vert.as gr=8 **********NŖ,:ę|Ŗ6‚ Jļ Ł :HS(,J)ļSP(SN,,J):SP(SN,,J)@ƒ JŖJ‚ Jļ Ł : ‚ Kļ Ł ÓŖT‹ HS(,J) ö õK Ś SP(SN,,J)ļSP(SN,,J) ÷ õ(ņK)ßŖ^ƒ K,J:Ž«h:ęOmslaan vert. as gr=16 ********«r:ę&«|‚ Iļ Ł :‚ Jļ Ł J«†HS(I,J)ļSP(SN,I,J):SP(SN,I,J)ļT«ƒ J,Ib«š‚ Iļ Ł «¤‹ Iš Ś I1ļIń :” I1ļIņ—«®‚ Jļ Ł :‚ Kļ Ł Ļ«ø‹ HS(I,J) ö õK Ś SP(SN,I1,J)ļSP(SN,I1,J) ÷ õ(ņK)Ū«Āƒ K,J,Iį«ĢެÖ:ęOmslaan hor. as gr=8 **********¬ą:ę1¬ź‚ Jļ Ł :HS(,J)ļSP(SN,,J)F¬ōSP(SN,,J)ļ:ƒ JT¬ž‚ Jļ Ł m¬SP(SN,,ņJ)ļHS(,J)w¬ƒ J:Žž¬:ęOmslaan hor. as gr=16 *********¦¬&:ę“¬0‚ Iļ Ł Õ¬:‚ Jļ Ł :HS(I,J)ļSP(SN,I,J)ģ¬DSP(SN,I,J)ļ:ƒ J,Iś¬N‚ Iļ Ł ­X‹ ’…(Iō)ļIō Ś I1ļIņ :” I1ļIń-­b‚ Jļ Ł G­lSP(SN,I1,ņJ)ļHS(I,J)S­vƒ J,I:Žz­€:ęEdit menu opbouwen ************‚­Š:ęœ­”Æ(,)ņ(’,Ą),,BFĪ­žCļ:Xļ’:Yļ:KK$ļ"A,S: Omslaan v/h as": r÷­ØYļ":KK$ļ"Q,W: Spiegel v/h as": r ®²Yļ*:KK$ļ"R,F: Regel naar b/o": rJ®¼Yļ2:KK$ļ"G,H: Regel naar l/r":  rs®ĘYļ::KK$ļ"D: Draai 180 graden": rœ®ŠYļB:KK$ļ"E: Draai 90 graden": ræ®ŚYļJ:KK$ļ"I: Inverteren": rę®äYļR:KK$ļ"P: Data op scherm": r ÆīYļZ:KK$ļ"O: Data opslaan": r1ÆųYļb:KK$ļ"T: Data invoeren": rVÆYļj:KK$ļ"L: Data inlezen": r|Æ Yļr:KK$ļ"K: Sprite mengen": r¢ÆYļz:KK$ļ"V: Sprite vullen": rČÆ Yļ‚:KK$ļ"C: Sprite wissen": ršÆ*YļŠ:KK$ļ"Z: Terug hoofdmenu": r°4Yļ’:KK$ļ"M: Menu Aan/Uit": r;°>Yļš:KK$ļ"B,N: Kleur vg/ag": re°HYļŖ:KK$ļ"SPATIE: Punt omslaan": rŒ°RYļ²:KK$ļ"CURSOR: Cursor <>": r’°\޹°f:ęON STOP Routine ***************Į°p:ęā°z“:°"GRP:"AS#:½ ,,:Ž @ ±„:ęSpiegelen hor. as gr=8 ********±Ž:ę±˜‚ Jļ Ł ;±¢SP(SN,,ņJ)ļSP(SN,,J)E±¬ƒ J:Žl±¶:ęSpiegelen hor. as gr=16 *******t±Ą:ę±Ź‚ Iļ Ł  Ü :‚ Jļ Ł ®±ŌSP(SN,Iń,ņJ)ļSP(SN,I,J)ŗ±Žƒ J,I:Žį±č:ęSpiegelen vert. as gr=8 *******é±ņ:ę"²ü‚ Jļ Ł : SP(SN,,J)ļSP(SN,,J) ö š:‚ Kļ Ł  Ü ņ[²‹ SP(SN,,J) ö õK Ś SP(SN,,J)ļSP(SN,,J) ÷ õ(ņK)e²ƒ K,Jk²Ž’²$:ęSpiegelen vert. as gr=16 ******š².:ęĮ²8‚ Iļ Ł :‚ Jļ Ł :SP(SN,Iń,J)ļŌ²B‚ Kļ Ł  Ü ņ³L‹ SP(SN,I,J) ö õK Ś SP(SN,Iń,J)ļSP(SN,Iń,J) ÷ õ(ņK)³Vƒ K,J,I:ŽF³`:ęData invoeren toetsenbord *****N³j:ęX³tÅ :Ÿ~³~‘ "INVOEREN DATA Sprite Nr: ";SN˜³ˆ‘ Ū)"Naam:";SN$(SN)˳’Ų ,:‘"In welk talstelsel wilt u invoeren?":‘ā³œ‘ Ū )"1 Decimaal"ž³¦‘ Ū )"2 Hexa-decimaal"“°‘:‘ Ū)"Uw keuze:_"-“ŗŲ ,:G$ļ"DUMMY"D“ÄI$ļģ:‹ I$ļ"" Ś ÄM“Ī‘ I$b“Ų‹ I$ļ"1" Ś G$ļ""y“ā‹ I$ļ"2" Ś G$ļ"&H"“ģ‹ G$ļ"DUMMY" Ś ŗ®“öXļ:Yļ:‚ Iļ Ł (GRņ)ōĒ“Ų X,Y:‘"DATA ":XļXńÕ“ ‚ Jļ Ł ū“Ų ,:‘ ß ):Ų ,:…"DATA ";SD$ µSDļ’”(G$ńSD$)>µ(Ų X,Y:‹ I$ļ"2" Ś ‘ ’‚("00"ńSD$,); :” ‘ SD$;Xµ2‹ Jš Ś ‘",";:Xļ’‘()jµ<SP(SN,I,J)ļSD€µFƒ J:YļYń:Xļ:ƒ IеP‰ < ±µZ:ęVoor/achter kleur instellen****¹µd:ęƵn ݵxÆ (,¬)ņ(Œ,Ą),,BF ¶‚Cļ:Xļ:Yļ“:KK$ļ"Geef kleur nummer:": r$¶ŒI$ļģ:‹ I$ļ"" Ś Œ.¶–G$ļI$E¶ I$ļģ:‹ I$ļ"" Ś  g¶Ŗ‹ I$ļ’–( ) Ś “ :” G$ļG$ńI$‡¶“Kļ’”(G$):‹ Kļ ÷ Kī Ś ‚”¶¾‹ Tļ Ś VCļK :” ACļK»¶ČÆ (,¬)ņ(Œ,Ą),,BFͶŅ : °:Žō¶Ü:ę90 graden draaien *************ü¶ę:ę·š "·ś‹ GRļ Ś   :”  ^,· °2·ŽY·:ę90 graden draaien gr=8 ********a·":ę£·,„ HS:† HS(,):‚ Iļ Ł : HS(,I)ļSP(SN,,I):SP(SN,,I)ļ:ƒ I»·6‚ Iļ Ł :‚ Kļ Ł õ·@‹ HS(,I) ö õK Ś SP(SN,,Kń)ļSP(SN,,Kń) ÷ õ(ņI)’·Jƒ K,IøTŽ,ø^:ę90 graden draaien gr=16 *******4øh:ęGør„ HS:† HS(,)_ø|‚ Iļ Ł :‚ Jļ Ł ƒø†HS(I,J)ļSP(SN,I,J):SP(SN,I,J)ļøƒ J,I„øš‚ Jļ Ł :‚ Kļ Ł ßø¤‹ HS(,J) ö õK Ś SP(SN,,Kń)ļSP(SN,,Kń) ÷ õ(ņJ)¹®‹ HS(,J) ö õK Ś SP(SN,,Kń)ļSP(SN,,Kń) ÷ õ(ņJ)S¹ø‹ HS(,J) ö õK Ś SP(SN,,Kń)ļSP(SN,,Kń) ÷ õ(ņJ)¹Ā‹ HS(,J) ö õK Ś SP(SN,,Kń)ļSP(SN,,Kń) ÷ õ(ņJ)—¹Ģƒ K,J¹ÖŽÄ¹ą:ęExterne opslag kiezen *********̹ź:ęö¹ō‹ EO$ļ"CAS:" Ś EO$ļ"A:" :” EO$ļ"CAS:"ü¹žŽŠ:åååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååå’€  KEUKEN€0€ MSX Computer Magazine6€(e€2 ingezonden door R. Ridderman, Ruinerwoldk€<“€F :ę*******************************»€P :ę* kitchen chaos *ć€Z :ę* ------------- * d:ę*******************************n:ę+x’ Š: Ģ ė: Ÿ:  X>‚•   ˆ :  •UŒ— Żļ Ą: — Żļ Vd–• ’£  Ęn ¬ AņZyŖHIļˆ–“† V(,`),Z(),I(),S()„¾‚ Fļ Ł `ĆČ ‡ V(,F): V(,F)ļV(,F)ŲŅ V(,F)ļV(,F):ąÜƒ FģęÅ ,,’š° "GRP:" AS # ‚ś Ę‚ X‚ H)‚UļŻ()8‚"SCļ: LIļB‚, xP‚6‚ Fļ Ł ]‚@ Z(F)ļe‚Jƒ Fw‚TCļ:Yļ@:XļŠ‚^S()ļ: I()ļ˜‚h‚ Fļ Ł “‚r S(F)ļ’…(’ˆ(ņĖ)ó<)ń(Į‚| I(F)ļɂ†ƒ FŲ‚Hļ:  Ž’‚š:ę*******************************&ƒ¤:ę* hoofd loop *Mƒ®:ę*******************************Uƒø:ęaƒĀUļŻ()kƒĢCļCńyƒÖ‚ Nļ Ł ‘ƒą ‹ CļS(N) Ś I(N)ļ¦ƒź ‹ I(N)ļ Ś ԃō XļV(N,Z(N)): YļV(N,Z(N)ń): Z(N)ļZ(N)ńģƒž • N  š,,, „ ‹ Yļ– ö XšīHń Ś ‰ J+„ ‹ Z(N)ļa Ś Z(N)ļ:  A„ Bļ’¢() ÷ ’¢()]„& ‹ (Bšī ö Bšī) Ś D‚„0 ‹ (Bļ ö HšŒ) Ś HļHńP:  Ž„„: ‹ Bļ ö Hī Ś HļHņP:  Ž­„Dƒ N·„N‰ ĢŽ„X:ę*******************************…b:ę* tune *,…l:ę*******************************4…v:ę=…€Į ""g…ŠĮ "O4T60S0M10000","O4T60S0","O4T60S0"ˆ…”Į "L8BBBB","L8GGGG","L8DDDD"·…žĮ "L16O5DCCO4BA4","L16BAAGE4","L16F+EEDC4"Ż…ØĮ "L8AABO5C","L8F+F+GA","L8DDEF+"†²Į "O5D4GR8","A4O5DR8","F+4BR8"†¼Ž-†Ę:ę*******************************T†Š:ę* sprites definieren *{†Ś:ę*******************************ƒ†ä:ę’†ī‚ Iļ Ł ž†ų A$ļ""°† ‚ Jļ Ł ¾†  ‡ AŌ† A$ļA$ń’–(A)ą†  ƒ Jļ†* Ē$(I)ļA$÷†4ƒ Iż†>Ž$‡H:ę*******************************K‡R:ę* scherm opzetten *r‡\:ę*******************************z‡f:ęЇp½ ,,: Ÿ™‡zĀ (’,),µ‡„¾ "A0S4C5L255D48R60U48"ƇŽĀ (,),ą‡˜¾ "C5D32R44U32L44R22D32"ś‡¢¼ (,#),,,,,A ˆ¬æ (,#),$ˆ¶¼ (",#),,,,,A4ˆĄæ (",#),KˆŹ³ Ē ,(,),,cˆŌ³ Ē ,(,), ,sˆŽĀ (“,), µˆč¾ "C13R70D8R1D12L1D5L1D2L1D1R1D1R1L68U1L1U1L1U1L1U5R1U15L1U6"ňņæ (µ,), ՈüĀ (Č, ),䈑#,"HIGH"žˆB$ļ’‚(’“(HIńG),)‰Ā (Ą,),‰$‘#,B$4‰.¼ (›,#), ,,,,AO‰8¼ (›,#), ,,,,Aj‰B¼ (›,#), ,,,,Az‰LĀ (›,#),‰‰V¾ "U8D8L5"™‰`Ā (A,0),¬‰j¾ "R70U3L70D3"ʼnt³ Ē ,(F,),, މ~³ Ē ,(F,%),,ö‰ˆ³ Ē ,(P,),, Š’³ Ē ,(P,%),,&Šœ³ Ē ,(Z,/),,>Ц³ Ē ,(Z,7),,Vа³ Ē ,(R,/),,nŠŗ³ Ē ,(b,7),,†ŠÄ³ Ē ,(R,7),,žŠĪ³ Ē ,(b,/),,·ŠŲ³ Ē ,(x,%), ,NJāĀ (’,Æ),ōŠģ¾ "C7U120L40D4R18D6L18D4R32D56L32D50R40"‹öæ (ž,®),‹Ā (×,t),=‹ ¾ "C6R2D1R1D6R1D1R22U1R1U6R1U1R2L30"M‹æ (Ü,v),g‹Æ (,°)ņ(’,æ),,BF‚‹(Æ (×,‚)ņ(Ņ,‡),,BF’‹2Ā (2,“),£‹<‹ Į() Ś <©‹FŽĻ‹P:ę******************************õ‹Z:ę* telling printen *Œd:ę******************************#Œn:ę=ŒxÆ (,°)ņ(’,æ),,BF[Œ‚B$ļ’‚(’“(SCńG),)kŒŒĀ (,“),Œ–‘#,"SCORE:";B$Œ Ā (‚,“),¦ŒŖB$ļ’‚(’“(LIń ),)»Œ“‘#,"LEVENS:";B$ĮŒ¾ŽēŒČ:ę****************************** Ņ:ę* sprites bewegen *3Ü:ę******************************;ę:ęOš³ Ē ,(X,Y),,eś³ Ē ,(X,Yń),,kŽ€³ Ē ,(X,Y), ,—³ Ē ,(X,Yń), ,"޲,³ Ē ,(X,Y),,Ź6³ Ē ,(X,Yń),, Š@ŽöJ:ę******************************ŽT:ę* mispikkel bijtellen *BŽ^:ę******************************JŽh:ęVŽrLIļLIņlŽ|• N  Ą,Ž,ü|ކFRļ:  ŗ ‹Ž‚ Iļ Ł d“Žšƒ IŽ¤  ®Ž®‹ LIļ Ś ĀøŽø‰ ,ŽŽĀ:ę******************************Ģ:ę* the end **Ö:ę******************************2ą:ęJź“ #: Å : ½ ,,^ō‹ SCīHI Ś HIļSC{žŲ ,: ‘ "K I T C H E N"–Ų  , : ‘ "C H A O S"ĀŲ ,: ‘ "UW SCORE:";:‘ ä "######";SCčŲ ,: ‘ ä "HIGHSCORE:######";HI&MS$ļ"PRESS SPACE TO PLAY"0’£() •B:MS$ļ’™()ń"* "ńMS$ń" *"ń’™( ):MLļ’’(MS$):UDDM$(MS$,)eN‚ Iļ Ł ML†X DM$ļ’‚(DM$,)ń’ƒ(MS$,I,)—b ‚ Nļ Ł 2”l ƒ N®v Ų ,ŗ€ ‘ DM$Šƒ Iߐ”DM$ļ’‚(MS$,MLņ): ‰ N‘ž:ę******************************+‘Ø:ę* nieuw spel starten *Q‘²:ę******************************Y‘¼:ęy‘ĘŽ Š::ę ombuigen on strigˆ‘Š’£() ė: Ą‘ŚÅ ›‘äÄ ,9®‘ī° "GRP:" AS #ø‘ų‰ Ž‘:ę******************************’ :ę* score bijtellen **’:ę******************************2’ :ęH’*• N  Ą,Ž,üY’4FRļ:  ŗ j’>SCļSCń(dóN)t’H x¢’R‹ Nī Ś Cļ: I(N)ļ: S(N)ļ’…(’ˆ(ņĖ)ó ń)ؒ\ŽĪ’f:ę******************************ō’p:ę* sprites bewegen *“z:ę******************************"“„:ę8“޳ Ē ,(H,¦),,P“˜³ Ē ,(Hń,¦),,i“¢³ Ē ,(Hń,¦),,‚“¬³ Ē ,(Hń,¦),,ˆ“¶Ž”“Ą³ Ē ,(Xņ,Yń),, ŗ“ʳ Ē ,(Xń,Yń),, Ą“ŌŽŚ“Ž³ Ē ,(Xņ,Yń), , ō“č³ Ē ,(Xń,Yń), , ś“ņŽ”ü³ Ē ,(Xņ,Yń),, .” ³ Ē ,(Xń,Yń),, 4” ŽJ” ³ Ē ,(ņ,ņ),,a”$ ³ Ē ,(ņ,ņ),, y”. ³ Ē ,(ņ,ņ), , ‘”8 ³ Ē ,(ņ,ņ), , ©”B ³ Ē ,(ņ,ņ),, Į”L ³ Ē ,(ņ,ņ),, Ē”V Žķ”` :ę******************************•j :ę* ctrl-stop routine *9•t :ę******************************A•~ :ęN•ˆ Å: Ÿ: t•’ :ę******************************š•œ :ę* plons-geluid *Ą•¦ :ę******************************ȕ° :ę蕺 Ä ,: Ä ,: Ä ,FR: Ä ,ū•Ä Ä ,: Ä ,–Ī Ä  ,–Ų Ä  ,: Ä  ,(&–ā Ä  ,,–ģ ŽR–ö :ę******************************x– :ę* sprite data *ž– :ę******************************¦– :ęZ— „ 24,74,24,78,24,82,24,86,24,94,24,102,24,110,24,118,24,126,24,134,24,142,24,150,28,142,32,134,36,126,40,118,44,110,48,102,56,98,64,94,72,98,80,102,84,110,88,118,92,126,96,134˜( „ 100,142,104,150,108,142,112,134,120,126,128,118,136,114,144,110,152,114,160,118,168,126,176,134,180,142,184,150,188,142,192,134,196,126,200,118,206,110,214,100,220,92,226,100€˜2 „ 0,128,255,254,255,128,0,0,0,63,255,45,255,7,3,1,0,255,255,255,255,255,128,255,0,255,250,244,232,232,24,240æ˜< „ 24,60,124,124,108,111,111,124,112,124,122,58,58,28,34,99ż˜F „ 0,54,127,255,231,215,74,195,231,255,254,116,36,66,195,0<™P „ 252,244,244,122,74,202,234,122,29,125,61,61,61,61,61,127n™Z „ 8,0,26,25,8,35,51,1,0,134,106,96,74,24,32,0“™d „ 254,130,146,186,146,162,170,178,162,186,146,186,162,186,130,124ņ™n „ 24,24,60,36,60,36,60,126,251,253,253,253,253,253,122,60,šx „ 24,36,24,24,24,24,24,24,24,52,122,122,122,122,52,24Jš‚ „ 60,36,36,24,36,60,60,60 Iļ Ł :‚ Jļ Ł ƒø†HS(I,J)ļSP(SN,I,J):SP(SN,I,J)ļøƒ J,I„øš‚ Jļ Ł :‚ Kļ Ł ßø¤‹ HS(,J) ö õK Ś SP(SN,,Kń)ļSP(SN,,Kń) ÷ õ(ņJ)¹®‹ HS(,J) ö õK Ś SP(SN,,Kń)ļSP(SN,,Kń) ÷ õ(ņJ)S¹ø‹ HS(,J) ö õK Ś SP(SN,,Kń)ļSP(SN,,Kń) ÷ õ(ņJ)¹Ā‹ HS(,J) ö õK Ś SP(SN,,Kń)ļSP(SN,,Kń) ÷ õ(ņJ)—¹Ģƒ K,J¹ÖŽÄ¹ą:ęExterne opslag kiezen *********̹ź:ęö¹ō‹ EO$ļ"CAS:" Ś EO$ļ"A:" :” EO$ļ"CAS:"ü¹žŽŠ:’€  STRKLS€0€ MSX Computer Magazine6€(U€2 Een Sinterklaas-surprise[€<e€F’ ˆr€PX(ņĖ)›€Z:ęInstelbare waarden **************ƀdMRļ: :ęaantal regels v.h. gedichtė€nMVļ : :ęmaximaal aantal variantenx† R$(MR,MV): :ębeschikbare regels/‚† G$(MR): :ęhet gedicht[Œ† LN(MR): :ęaantal varianten per regelƒ–:ęHandige funktie ****************² — ŽVOEG$(A$,X,B$)(A$,Xņ)ńB$ń’ƒ(A$,Xń)ځŖ:ęScherm intialiseren ************聓Š:   (5‚¾:ęLees alle varianten in en bepaal hoeveel het er zijn ****************L‚Č‚ REGELļ Ł MR Ü W‚Ņ Vļc‚Ü ‡ A$¤‚ę ‹ A$šī"*" Ś R$(REGEL,V)ļA$: ‡ R$(REGELń,V): VļVń: ‰ ܹ‚š LN(REGEL)ļVņłśƒ REGELķ‚:ęMaak scherm ********************ƒŸ: ‘ " MSX Computer Magazine presenteert:": ‘iƒ‘ "STRKLS - een programma om": ‘ "Sinterklaasgedichten te maken.": ‘”ƒ":ęVraag om gegevens *****************³ƒ,‘: … "De gelukkige is"; N$Ӄ6… "Wat is het geschenk"; K$„@‘: ‘ "Ik stel het volgende gedicht voor:": ‘,„J:ęMaak het gedicht ***************?„T‚ REGELļ Ł MR„„^ ‹ (REGEL ö ) Ś Vļ’…(’ˆ()óLN(REGEL))ń: :ęKies een variant¹„h Pļå(R$(REGEL,V),"%N"): :ęStaat er %N in?š„r ‹ P Ś G$(REGEL)ļŽVOEG$(R$(REGEL,V),P,N$): ‰ š%…| Pļå(R$(REGEL,V),"%K"): :ęStaat er %K in?[…† ‹ P Ś G$(REGEL)ļŽVOEG$(R$(REGEL,V),P,K$):‰ šx… G$(REGEL)ļR$(REGEL,V)„…šƒ REGELŸ…¤:ę Druk de regels af:²…®‚ REGELļ Ł MRå…ø ‘ G$(REGEL)::ęverander eventueel in LPRINTń…Āƒ REGEL†Ģ:ęNog een gedicht? ***************T†Ö‘: ‘ "Druk op de spatiebalk voor het volgende gedicht"t†ąW$ļģ: ‹ W$ļ" " Ś  :” ąœ†ź:ęDe dichtregels: ****************į†ō„ Urenlang liep Sint te denken,wat hij toch aan %N zou schenken.%‡ž„ De Sint heeft me toch wat afgelopen,om iets voor %N te kopen.-‡„ *u‡„ Toen heeft hij de krant gelezen,en dacht 'Het moet een %K wezen!'·‡„ Nadat hij zolang had gezocht,heeft hij maar een %K gekocht.ņ‡&„ En toen midden in de nacht,heeft hij een %K bedacht.ś‡0„ *@ˆ:„ Helaas voor %N is er niet meer,want Sint's voeten doen zo zeer!ŽˆD„ Sint hoopt dat je er blij mee bent,en het niet terug naar Spanje zendt!ڈN„ "Beste %N, veel plezier ermee",Sint had het in ieder geval voor twee!āˆX„ * HS(,J) ö õK Ś SP(SN,,Kń)ļSP(SN,,Kń) ÷ õ(ņJ)S¹ø‹ HS(,J) ö õK Ś SP(SN,,Kń)ļSP(SN,,Kń) ÷ õ(ņJ)¹Ā‹ HS(,J) ö õK Ś SP(SN,,Kń)ļSP(SN,,Kń) ÷ õ(ņJ)—¹Ģƒ K,J¹ÖŽÄ¹ą:ęExterne opslag kiezen *********̹ź:ęö¹ō‹ EO$ļ"CAS:" Ś EO$ļ"A:" :” EO$ļ"CAS:"ü¹žŽŠ:åååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååå’€  SCULPTOR€2€ MSX Computer Magazine8€(V€2 Een MSX2 tekenprogramma\€<°€F:ę INITIALISATIES ************************************************************ē€P‹ ’—( -)ļ Ś ‘ "programma werkt niet op MSX1!": ZÅ :   P: Ģ ė: Å : ‚ Iļ Ł : Ņ PAGE 1,I: Ÿ: ƒ I8dV1ļ: V2ļ: Cļ: BCļDn—Żļ itx‹ ’—( §’)ļÉ Ś DV$ļ"cas:": V1ļ :” DV$ļ"a:"’‚• Ģ  , ,t,p,2 Œ‚ Iļ Ł ­– Ģ(I) •µ ƒ I΁Ŗ Ī: :ę tekenpijl⁓ : :ę menu5‚¾:ę DE HOOFDLUS **************************************************************T‚Č‹ ’£() Ś Ā (X,Y),C: ‰ "”‚ŅC$ļģ: ‹ C$šī"" Ś C$ļ’–(’•(C$) ÷  ): :ęMAAK KLEINE LETTERS˂܋ C$ļ"t" Ś  R: :ęHAAL VOORLAATSTE SCHERM TERUGż‚ę‹ C$ļ"v" Ś  \: :ęHAAL VEILIGHEIDSKOPIE OP.ƒš‹ C$ļ"d" Ś  H: :ęDUMP (VEILIGHEIDSKOPIE)_ƒś‹ C$ļ"p" Ś  >: æ (Xņ,Y),C,C: :ęVUL VLAK„ƒ‹ C$ļ"s" Ś  ü: :ęSAVE SCHERM˜ƒGRļ’—( ėū) ÷ ū°ƒ‹ GRļū Ś Ć(X,Y),BCʃ"³ Ē ,(X,Yņ),,õƒ,• ’¢ ()  J,^,|,,®,Ā,ą,ō’ƒ6‰ ČR„@:ę BESTURING EN WRAP AROUND *************************************************j„JYļYņ: ‹ Yš Ś YļÓp„TŽ„^XļXń: YļYņ: ‹ Xī’ Ś Xļ „h‹ Yš Ś YļÓ¦„r޾„|XļXń: ‹ Xī’ Ś XļĄ†Žć„XļXń: YļYń: ‹ Xī’ Ś Xļō„š‹ YīÓ Ś Yļś„¤Ž…®YļYń: ‹ YīÓ Ś Yļ…øŽ7…ĀXļXņ: YļYń: ‹ Xš Ś Xļ’H…Ģ‹ YīÓ Ś YļN…ÖŽf…ąXļXņ: ‹ Xš Ś Xļ’l…źŽ‹…ōXļXņ: YļYņ: ‹ Xš Ś Xļ’œ…ž‹ Yš Ś YļÓ¢…Žõ…:ę MENU *********************************************************************ż…Å †&Ģ() ė: V2ļ2†0‘Ū)"****** SCULPTOR ********"8†:‘_†D‘ Ū) " tekenen met spatiebalk": ‘††N‘ Ū) " wissen met graph-toets": ‘¦†X‘ Ū) "FUNKTIE-TOETSEN": ‘Ó†b‘ Ū) "F1: menu" Ū() "F2: nieuwe kleur"ž†l‘ Ū) "F3: files" Ū() "F4: laad file"#‡v‘ Ū) "F5: alle schermen wissen")‡€‘V‡Š‘ Ū) "MOGELIJKHEDEN OP TEKENSCHERM": ‘‘‡”‘ Ū) "p: vul vlak" Ū() "t: voorlaatste scherm terug"ׇž‘ Ū) "d: maak veiligheidskopie " Ū() "v: haal veiligheidskopie"ō‡Ø‘ Ū) "s: save tekening"ś‡²‘%ˆ¼‘ "spatiebalk voor grafisch scherm": ‘6ˆĘ‹ V3ļ Ś ŚJˆŠ‹ ą ’£() Ś Ę_ˆŚV2ļ: V3ļ: V4ļjˆäĢ() •~ˆīÅ : Ņ PAGE 1,„ˆųŽ×ˆ:ę TEKENKLEUR ***************************************************************ķˆ ‹ ’—( Æü)ļ Ś Å ‰… "kleurkode (1-15)";CR‰ ‹ V2ļ Ś Å : Ņ PAGE 1, :” ‘: ‘ "spatiebalk voor grafisch scherm": ‘X‰*Ž«‰4:ę KOPIEER-ROUTINES *********************************************************Ή>Ö (,)ņ(’,Ó), Ł (,),: Žń‰HÖ (,)ņ(’,Ó), Ł (,),: ŽŠRÖ (,)ņ(’,Ó), Ł (,),: Ž7Š\Ö (,)ņ(’,Ó), Ł (,),: ŽŠŠf:ę LAAD SCHERM ************************************************************** Šp‹ ’—( Æü)ļ Ś Å ƊzV3ļ: V4ļµŠ„‘ÓŠŽ… "naam te laden file";F$䊘‹ V1ļ Ś Źꊢ‘ ‹¬‘ "recorder op afspelen?": ‘/‹¶‘ "spatiebalk om te starten": ‘C‹Ą‹ ą ’£() Ś ĄK‹ŹÅ Z‹ŌŅ PAGE 1,i‹ŽĻ DV$ńF$,So‹čŽĮ‹ņ:ę SAVE SCHERM *************************************************************ɋüÅ Ļ‹‘ģ‹…"naam te saven file";F$ż‹‹ V1ļ Ś LŒ$‘#Œ.‘ "recorder op opnemen?" :‘GŒ8‘ "spatiebalk om te starten": ‘[ŒB‹ ą ’£() Ś BnŒLÅ : ŅPAGE 1,ƒŒVŠ DV$ńF$,,  v,S‰Œ`ŽŪŒj:ę FILE-DIRECTORY **********************************************************ńŒt‹ ’—( Æü)ļ Ś Å żŒ~V3ļ: ‘.ˆ‹ V1ļ Ś · :” ‘ "geen diskdrive aangesloten"4’‘nœ‘: ‘ "spatiebalk voor grafisch scherm, F4 voor laden"¦‹ V4ļ Ś Ä“°‹ ą ’£() Ś ¦°ŗ‹ V2ļ Ś Å : Ņ PAGE 1,¶ÄŽŽĪ:ę TEKENPIJLTJE ************************************************************ŽŲŒ  Žā‚ Kļ Ł *Žģ ‡ S<Žö S$ļS$ń’–(S)DŽƒ KQŽ Ē$()ļS$nŽ„ 224,192,160,16,8,4,2,1tŽŽĘŽ(:ę MAAK SCHERMEN SCHOON ****************************************************ĪŽ2Å ܎<‚ Iļ Ł łŽF Ņ PAGE 1,I: Ÿ: XļŻ()Pƒ IZŅ PAGE 1,d Ų$n *xŽ Ś SP(SN,,Kń)ļSP(SN,,Kń) ÷ õ(ņJ)¹Ā‹ HS(,J) ö õK Ś SP(SN,,Kń)ļSP(SN,,Kń) ÷ õ(ņJ)—¹Ģƒ K,J¹ÖŽÄ¹ą:ęExterne opslag kiezen *********̹ź:ęö¹ō‹ EO$ļ"CAS:" Ś EO$ļ"A:" :” EO$ļ"CAS:"ü¹žŽŠ:’)€ :ę MSX Computer Magazine checker/41€:ę^€:ę copyright MBI Publications B.V. 1985‡€(:ę*********************************°€2:ę PAS TOP OF BASIC MEMORY AAN ****Ņ€<’ Č,(’—( Jü)ńó’—( Kü))ņĻö€FBļ’—( Jü)ńó’—( Kü): —ŻļBńMP:ę STEL SCHERM IN *****************7ZÅ :   %: ½ ,,_d:ę GEEF INSTRUCTIE OP SCHERM *****„nŲ ,: ‘ "MSX COMPUTER MAGAZINE"ƁxŲ ,: ‘ "INVOER CONTROLE PROGRAMMA/3"‚‚Ų ,: ‘ "Dit programma maakt het mogelijk om de listings uit dit blad foutloos in te voeren." ‚Œ‘ "Bij het intikken van programma-regelsveschijnt nadat u op 'RETURN' of 'ENTER' gedrukt heeft een getal linksop de onderste regel."6ƒ–‘ "Dit getal moet gelijk zijn aan de bijde listing afgedrukte checksumwaarde.Als dit niet zo is, dan is er een fout gemaakt bij het intikken."ƒƒ ‘ "Let op, BASIC woorden moeten met hoofdletters geschreven worden!"«ƒŖ:ę INSTALLEER MACHINECODE ********ŗƒ“‚ Rļ Ł Īƃ¾‡ A$ēƒČCSļCSń’•(’(A$,))ń’•(’‚(A$,))„Ņ‹ ’(A$,)šī"*" Ś ˜ BńR,’”("&H"ńA$): ‰ śx„Ü‹ A$ļ"**" Ś ‡ A$: ABļBń’”("&H"ńA$): ˜ BńR,ABņ(’…(ABō)ó): RļRń: ˜ BńR,’…(ABō): ‰ śĮ„ę‹ A$ļ"*1" Ś ‡ A$: ABļBń’”("&H"ńA$): ˜ BńR,ABņ(’…(ABō)ó): ‰ śé„š‹ A$ļ"*2" Ś ˜ BńR,’…(ABō): ‰ śń„śƒ R…:ę KONTROLEER DATA-WAARDES *******z…‹ CSšīŻV Ś Ÿ: ‘ "U heeft een fout gemaakt in de data- regels!": ‘: ‘ "Eerst verbeteren!": ¢…:ę ZET CHECKSUMROUTINE AAN *******®…"AļŻ()Ō…,‘: ‘ "Begint u maar met intikken"Ś…6”†@:ę MACHINECODE *******************~†J„ 21,5E,F5,7E,23,FE,20,20,FA,7E,23,FE,20,28,FA,FE,27,28,D,FE,52,20,D,7E,FE,45,C0,23,7E,FE,4D,C0,E1,C3,**,9F,FE,72,C0,7Eö†T„ FE,65,C0,23,7E,FE,6D,28,EF,C9,36,27,1,6,0,21,**,47,11,7F,F8,ED,B0,3E,C9,32,DB,FD,C3,**,CB,63,6F,6C,6F,72,20,1,6,0u‡^„ 21,7F,F8,11,**,47,ED,B0,21,7F,F8,36,27,21,83,F8,36,27,23,36,D,21,DB,FD,36,C3,23,36,*1,71,23,36,*2,C9,1E,0,CD,**,00,21,5Eė‡h„ F5,6,1,7E,4F,FE,27,28,B1,18,1,4E,3E,0,B9,28,16,C5,16,7,CB,39,30,1,80,15,28,4,CB,20,18,F4,83,5F,C1,4,23,18,E4,6B_ˆr„ 11,80,F8,26,0,1,64,0,CD,**,B9,1,A,0,CD,**,B9,1,1,0,CD,**,B9,18,12,37,3F,3E,0,ED,42,FA,**,C5,3C,18,F8,C6,30,12xˆ|„ 13,9,C9,CD,C9,0,C9ę MAAK SCHERMEN SCHOON ****************************************************ĪŽ2Å ܎<‚ Iļ Ł łŽF Ņ PAGE 1,I: Ÿ: XļŻ()Pƒ IZŅ PAGE 1,d Ų$n *xŽ Ś SP(SN,,Kń)ļSP(SN,,Kń) ÷ õ(ņJ)¹Ā‹ HS(,J) ö õK Ś SP(SN,,Kń)ļSP(SN,,Kń) ÷ õ(ņJ)—¹Ģƒ K,J¹ÖŽÄ¹ą:ęExterne opslag kiezen *********̹ź:ęö¹ō‹ EO$ļ"CAS:" Ś EO$ļ"A:" :” EO$ļ"CAS:"ü¹žŽŠ:åååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååå  pause PLAATS UW FLOPPIES copy c:*.* a: del a:c4.bat copy c:*.* b: del b:c4.bat copy c:*.* d: del d:c4.bat c:c4  Ņ PAGE 1,I: Ÿ: XļŻ()Pƒ IZŅ PAGE 1,d Ų$n *xŽ Ś SP(SN,,Kń)ļSP(SN,,Kń) ÷ õ(ņJ)¹Ā‹ HS(,J) ö õK Ś SP(SN,,Kń)ļSP(SN,,Kń) ÷ õ(ņJ)—¹Ģƒ K,J¹ÖŽÄ¹ą:ęExterne opslag kiezen *********̹ź:ęö¹ō‹ EO$ļ"CAS:" Ś EO$ļ"A:" :” EO$ļ"CAS:"ü¹žŽŠ:ååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååöööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööööö