Nachlauf nach schnellen Mausklicks

Anfängerfragen zum Programmieren mit PureBasic.
Re42
Beiträge: 91
Registriert: 08.11.2020 23:41

Nachlauf nach schnellen Mausklicks

Beitrag von Re42 »

Hallo, mein Programm funktioniert zwar so weit einwandfrei, aber es gibt da trotzdem etwas, was mich stört und wofür ich bisher noch keine Lösung gefunden habe. In dem Programm gibt es Sprites, die situationsbedingt geladen werden, wobei per Linksklick ein Sprite nach dem anderen angezeigt werden kann. Dabei arbeite ich mit OpenWindowedScreen. Die Geschwindigkeit, mit der ich klicken kann, um ein Sprite nach dem anderen anzeigen zu können, ist relativ mäßig, nur ca. dreimal pro Sekunde, aber das störendste dabei ist, daß es dann auch sekundenlang zu einem Nachlauf kommt, nachdem ich schnell hintereinander über mehrere Sekunden hinweg die Maus geklickt habe. Ich habe versucht, über die Suche in diesem Forum oder über das PureBasics-Handbuch schlauer zu werden, aber leider ohne Erfolg. Mein Code ist etliche 1000 Zeilen lang, sodaß es jetzt ein ziemlicher Aufwand für mich wäre, einen Teil davon hier extra zusammenstellen zu müssen. Vielleicht kennt ja aber hier jemand das oben genannte Phänomen und kann mir spontan einen Tipp geben, woran sowas typischerweise liegt. Vielleicht hilft mir das ja dann bereits. Danke schonmal.
Benutzeravatar
STARGÅTE
Kommando SG1
Beiträge: 7031
Registriert: 01.11.2005 13:34
Wohnort: Glienicke
Kontaktdaten:

Re: Nachlauf nach schnellen Mausklicks

Beitrag von STARGÅTE »

Das hört sich so an, als ob du die Events nicht rechtzeitig abarbeiten kannst.
Wenn du bei jedem Klick immer erst das Sprite einladen musst (LoadSprite),
du währenddessen weiter klickts aber du im Programm die Events nicht abarbeitest (weil LoadSprite die Schleife blockiert),
dann stauen sich alle gemachten Klicks (Events) an, und werden dann "richtigerweise" nach und nach bearbeitet.

Wie kannst du das nun umgehen:
Das ist gar nicht mal so einfach. Das laden des Sprites in einen Thread auslagern geht nicht, weil da DirectX was gegen hat (zumindest laut Hilfe). Alternativ müsste das Fenster und das Event-Handling in ein Thread, ob/wie du dann OpenWindowedScreen benutzen kannst weiß ich gerade nicht.
PB 6.01 ― Win 10, 21H2 ― Ryzen 9 3900X, 32 GB ― NVIDIA GeForce RTX 3080 ― Vivaldi 6.0 ― www.unionbytes.de
Aktuelles Projekt: Lizard - Skriptsprache für symbolische Berechnungen und mehr
Re42
Beiträge: 91
Registriert: 08.11.2020 23:41

Re: Nachlauf nach schnellen Mausklicks

Beitrag von Re42 »

Danke. Genau, das ist ein Verarbeitungsstau. Ich verwende in dem Programm allerdings DisplayTransparentSprite(). Wenn aber die relative Langsamkeit nicht zu vermeiden geht, muß ich dann eben damit leben. Das liegt wahrscheinlich aber auch an meinem Code, wo bestimmte Routinen unvermeidbar sind.

Mich würde jetzt aber auch noch interessieren, unter welchen Windows-Versionen man überhaupt Programme laufen lassen kann, die mit V. 5.7.2 erstellt worden sind. Gibt es dazu exakte Informationen? In diesem Fall erstelle ich 32 Bit Executables. Danke.
ccode_new
Beiträge: 1214
Registriert: 27.11.2016 18:13
Wohnort: Erzgebirge

Re: Nachlauf nach schnellen Mausklicks

Beitrag von ccode_new »

Hallöchen Re42,
wie reagierst du auf die Maus-Abfragen?
Wie ist deine Eventschleife aufgebaut?

Was hat "DisplayTransparentSprite()" mit Eventabfragen und evtl. Eventstau zu tun?
Die Geschwindigkeit, mit der ich klicken kann, um ein Sprite nach dem anderen anzeigen zu können, ist relativ mäßig, nur ca. dreimal pro Sekunde, aber das störendste dabei ist, daß es dann auch sekundenlang zu einem Nachlauf kommt, nachdem ich schnell hintereinander über mehrere Sekunden hinweg die Maus geklickt habe.
Lädst du die die Sprites statisch (am Anfang, oder so), oder dynamisch beim Anzeigen?
Wie hoch ist deine Prozessorlast?
Was machst du in der Windows-Eventschleife? (WaitWindowEvent() vs. WindowEvent() )
Muss die Maus wirklich ständig (alle paar ms) abgefragt werden?
Sind Delays in der Eventschleife störend? (Delay(10), oder so ähnlich)
Betriebssysteme: div. Windows, Linux, Unix - Systeme

no Keyboard, press any key
no mouse, you need a cat
Re42
Beiträge: 91
Registriert: 08.11.2020 23:41

Re: Nachlauf nach schnellen Mausklicks

Beitrag von Re42 »

Hi ccode_new, ich habe deine Antwort gerade erst gesehen, Entschuldigung.

Die Sprites lade ich gleich zu Anfang des Programms, also noch vor der Repeat-Schleife, und genauso auch die Sounds.

Ich arbeite mit WaitWindowEvent.

Code: Alles auswählen

Repeat
    ExamineKeyboard()
    event = WaitWindowEvent(75)

      Select event    
        Case #PB_Event_LeftClick

       wmx = WindowMouseX(1)
       wmy = WindowMouseY(1)   

       .........
 
      EndSelect

      …........

Until event = #PB_Event_CloseWindow
WaitWindowEvent(75) habe ich gewählt, um die CPU-Auslastung auf geringerem Niveau zu halten. Im Leerlauf sind das dann ca. 2%. Ganz ohne TimeOut-Wert kommen die Sprites erst dann auf den Screen, wenn ich die Maus kurz bewege.

Zitat: „Was hat "DisplayTransparentSprite()" mit Eventabfragen und evtl. Eventstau zu tun?“

Gute Frage, aber jedenfalls werden Sprites in meinem Programm nach Mausklicks auf den Screen gebracht und das läuft nicht gerade schnell. Und dann noch mit Nachlauf-Effekt.

Delay(10) testweise z.B. in der Event-Schliefe oder Repeat-Schleife stört nicht.

Danke.
ccode_new
Beiträge: 1214
Registriert: 27.11.2016 18:13
Wohnort: Erzgebirge

Re: Nachlauf nach schnellen Mausklicks

Beitrag von ccode_new »

Hi!
Re42 hat geschrieben: Select event
Case #PB_Event_LeftClick

wmx = WindowMouseX(1)
wmy = WindowMouseY(1)
Das ist bei Screen-Anwendungen keine gute Lösung.

Du solltest die Screen-Anwendung ohne die normale WindowEvent-Bedienung nutzen.

Zum Beispiel so:

Code: Alles auswählen

DisableDebugger

Structure TPunkt
  x.i
  y.i
EndStructure

UsePNGImageDecoder()

If InitSprite() = 0 Or InitKeyboard() = 0 Or InitMouse() = 0
  MessageRequester("Fehler", "Ihr Rechenkästchen ist bockig oder/und kann ihre Anweisungen nicht ausführen.", 0)
  End
EndIf

Define Quit.b = #False
Define.i wmx = -99, wmy = -99
Define NewList PictureList.TPunkt()

If OpenWindow(1, 0, 0, 800, 600, "Ein Testfenster", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
  If OpenWindowedScreen(WindowID(1), 0, 0, WindowWidth(1)-1, WindowHeight(1)-1)
    CatchSprite(0, ?Cursor, #PB_Sprite_AlphaBlending)
    CatchSprite(1, ?PBLogo_png_start, #PB_Sprite_AlphaBlending)
    ReleaseMouse(0)
    Repeat
      Event = WindowEvent()
      Select Event
        Case #PB_Event_CloseWindow
          Quit = #True
          ;         Case #PB_Event_LeftClick ;Das ist Murks
          ;           wmx = WindowMouseX(1)
          ;           wmy = WindowMouseY(1)
        Case #PB_Event_LeftClick
          ReleaseMouse(0)
      EndSelect
     
      ExamineKeyboard()
      ExamineMouse()
     
      ClearScreen(0)
     
      ForEach PictureList()
        DisplayTransparentSprite(1, PictureList()\x, PictureList()\y)
      Next
     
      wmx = MouseX()
      wmy = MouseY()
      DisplayTransparentSprite(0, wmx, wmy)
     
      If MouseButton(#PB_MouseButton_Left) ;Besser so!
        AddElement(PictureList())
        PictureList()\x = wmx : PictureList()\y = wmy
      EndIf
      
      If MouseButton(#PB_MouseButton_Right)
        ReleaseMouse(1)
      EndIf
     
      FlipBuffers()
    Until Quit Or KeyboardPushed(#PB_Key_Escape)
  Else
    MessageRequester("Fehler", "Das Fenster kann nicht dargestellt werden.", 0)
  EndIf
EndIf

DataSection
  Cursor:
  Data.q $0A1A0A0D474E5089,$524448490D000000,$170000000F000000,$82315B0000000208,$4E527406000000EB
  Data.q $6E00000000000053,$70090000009107A6,$00C40E0000735948,$1B0E2B9501C40E00,$544144497D000000
  Data.q $20C00DCB919D8D38,$498758F20CD2C50C,$44A87A1160ED8A18,$086D921B94F90A51,$0E804A5280174510
  Data.q $BDA1E15E18C60008,$A082DB4AC25DA4C2,$0A3E96C26B4BE10D,$87AE10B4282F7A27,$36EB4A530389AD6E
  Data.q $58A7FD6D956B5CE7,$679E4A63382F69E9,$9E538D16D999BDF5,$88C39AAAEEF7A889,$7FBFE00F2C4EEB3C
  Data.q $8A09FED3D844A903,$4E454900000000F8,$000000826042AE44
  PBLogo_png_start:
  Data.q $0A1A0A0D474E5089,$524448490D000000,$3000000030000000,$F902570000000608,$58547A0529000087
  Data.q $6F72702077615274,$70797420656C6966,$0000666978652065,$B95C92699CADDA78,$09025E1573FF856E
  Data.q $F9781DE118E1CBCE,$F3DEF5BAAB330EFE,$BCCACAAA4B56E114,$FF3B95C4019C0103,$E4F5FF1BFDD7EFF1
  Data.q $FCF14BD2B6B94B93,$CFF9A2F836EA7A97,$BE7F7A7C19FDFD7F,$EBC7FF7C47F7E2FF,$77AFF14BC607F7EE
  Data.q $D7FCF5E0FF7DF1D6,$BBAF9FE611CE7E07,$3FBE81EFB589FDF6,$F62F8D99D46039F8,$487AF3EDD7922FDF
  Data.q $56F4A2F9F3F503DF,$EFAF7F3ED3A97EFF,$CBDFA77F7CA5DF1B,$542F1FDDEFA5FCFA,$0C4ECD144E676956
  Data.q $E7E20AE7D33FBFD1,$2FBC4CFEF095E0F7,$395FC7263ED7C6C4,$F7B71FC82C60F7DA,$163FA05F7FF7B7F3
  Data.q $FBFFAB8FF72BE7F9,$F1EBEF8DBE2C3FD5,$FE2F88D77CB2D61F,$96FF8BD7FE420FE5,$F9FD915EF874CFF8
  Data.q $7F7CEDD3FE2C5683,$237773E7BDDBBBDF,$762DEA337CB45615,$7C792C9C6F0C39F8,$5D7CCEFCAAFC2B1F
  Data.q $845F87E6AFCEAFDF,$C1E856BF27E5FB7C,$B8461D852175CA88,$B2625C5857BFBCE1,$5AF7C596CDBF9563
  Data.q $FD2538A8ADBAD58B,$8B351371EC6AD70A,$5AF7ED97918B8ECB,$71A15BE77F6F3BC2,$F8160E05AB781DE6
  Data.q $FC3F77FDCBF97FC8,$F0512D2EF772FCBF,$7166532EB8AD77ED,$24045DE4FE9C8A19,$5F9FE05BF2DC6FDC
  Data.q $4AA90FE5BFFBF0DF,$3F0E0DC6E65BF304,$F15B95FC3998873F,$129FDFCCBEF239C5,$CE225801EFEEAE0A
  Data.q $425F05204A18B99D,$AC086ACD5F04A1CC,$636A372B83402363,$52D22E6DB3908112,$9F373A66B55CC58C
  Data.q $CBD315B2D7BDE1A9,$6C4AC4B1C8811360,$D4FE4CA52B041C7A,$E7394E6391A1C8D4,$2C4A3CF72E6E6B92
  Data.q $51B9022D4A52E4A9,$B56D6B52D7354D63,$6AD2B72D4B62D1D7,$303047ADD1B7AD6B,$CC31F7BD6F6BD2F7
  Data.q $83FDE0D638344E0D,$CCB3CCD338CDA657,$A567D22C73ECDB3A,$D8D7D5B575595795,$B775D9762606E3B6
  Data.q $A4E2901DC138F7DD,$B8CFD3B4F5394F93,$ADCB7CDD378DDAE4,$51BED46FC77EDDB7,$6F85A887FF5FA7FD
  Data.q $51BFABEF4A45ECD4,$E08221CFEB5755E3,$E22052CC44662B24,$2DF3314DA1201155,$51BBE6629C8A64A4
  Data.q $1DB8D8ACC8B8D914,$C37CB04E98423114,$6E2AFFDC8AFEEC6F,$8A7FECDC55FFB72E,$08E7223FFEE8539C
  Data.q $8B6D445FEDC73FDD,$A6B50AA7D88BD6E7,$B38A90CFA77D523E,$61A593975C9F1A5E,$90E53D5E41A2F2BD
  Data.q $D33EC61065AA1420,$92369FA9B6CE3BF0,$908DC9BE74BBDF59,$6DB486FE5DEF6B50,$74B4E12CC33AD9F1
  Data.q $C5E661ECC2DDBAE6,$621CB9DAEBCD6A1A,$F1F21AC47D8CF39F,$E2C79BA3A15EE95A,$723296349CC9D70A
  Data.q $DAC2D3FA88705CBD,$F1E3918E53B0867E,$A3E942753CD21EC1,$C746F6C43F76B4CC,$25D32C1AEA13C60A
  Data.q $09235621D27B6002,$C500ED9E9EABDFA3,$D43BDEEADEE32737,$B22C7D4D7B6F7391,$27EFB8F876ADD3F2
  Data.q $3318BA6887593253,$60EC6E8160EEC460,$AAFD9D00F5894ECD,$F912D9AE23325475,$BB87D77CE5FEF5B8
  Data.q $72E4EE5D39F3F13F,$7E2C4191408702D1,$FAFDA9D7D88FD798,$056939FADBE57DB6,$68FBA463725AED61
  Data.q $D25C63088A818CE1,$A82100D227816480,$09DAD1B18C8DD880,$016F659EB92C4263,$6B6F9D5EB5CF14FA
  Data.q $B57A1FE22C63D703,$5C49E908BB690BB8,$F7179CBB12E9DB74,$45ACBE5B161DA4A4,$5AD6E4EA2CFB77E1
  Data.q $E34E6A07D4D0E4DF,$DA43790B6AF84B9E,$7B52C8B4BA3B76DD,$72F0203B4AE29D32,$1B21EF43206B6EA3
  Data.q $4C9F8BAC0597716A,$A4BE7AD1F149334E,$5465C64B0D64DD51,$CF7432E077F22E96,$4CA0B6C4089237D4
  Data.q $0259549239AD8D23,$DF3A003E05A2A48C,$F17C4BC6D9B8291E,$B5F5E14BBD2F3A42,$8EE967645C69B7AA
  Data.q $752A5CF643BAA2A8,$B187429E1955E082,$F7584D324BB92F89,$C363B67E0D5A935A,$56AE5B58EEEB39D2
  Data.q $EB2BB766A836B6DA,$181EDF4B34DF6D7E,$001C511506D47DA8,$8CB7EA72C702C10F,$40B6E0F0B42941DD
  Data.q $B56E1150B4F6B5B9,$290054EEC470470C,$20A1805DC9A56263,$2A330E6F0D449914,$EF61DC82B2D140D8
  Data.q $C6A769392881F8B3,$FE2DA34411FAA9BD,$E929C6D4A27B91CF,$79702D4AC0B935AC,$B728A292939BEA87
  Data.q $F5CCB61E4DEEFC20,$F551D91DC2CD2E4E,$5871411DECBB9F75,$4B451217851F565C,$D7811D813213DC25
  Data.q $11D45CDE4C249DF3,$23A1D2E80F647BF8,$B9C0BDEE97946D72,$117CB991BD2E2548,$59077696F27B99DA
  Data.q $60DC39C7EC102698,$1D26538AF0CD64CB,$021D2B6B76D32396,$0656CE7FC22AD88D,$6A481BDCDFFE8A78
  Data.q $FB352152BF191A25,$D4FC10EB2C7FB03D,$768857E10F3CB35B,$B958D740BA8F6D3A,$A15227C0E6E15D24
  Data.q $79811E874B1B9733,$E06772AF7768CBAC,$E9BB8ACE85113DE4,$4B5352657A7066C9,$FF73A08053BD781B
  Data.q $A092F2066F82A664,$F90FBFAC20419651,$0A6FD20F9723E08A,$0047CABA5B22E6C1,$74328C89D6B523D1
  Data.q $519EA5B063584D09,$00345C131EA74B38,$BADAD4BB0CBD303D,$2D920AE7A13B4363,$D98CAA7C3E1497D6
  Data.q $9459D008FDCCE748,$0DEB81AD286B0978,$4AD3B3773EA53674,$7427AB75652799D5,$3A36972CB0DFAAB4
  Data.q $464C137C2DCA48B1,$AC8EA870A34093CE,$060757C0C03221D2,$000D656A141D8526,$48D6B30010A38606
  Data.q $F44C9444F774963B,$8003C7BE04278BD0,$40B6B0685856CF12,$56210B100A37482A,$55A6BF12574912A7
  Data.q $FD60E6FA01C2F258,$4B771F04682913CE,$D4B45DF46B7BADF1,$9C9B093657FD06F9,$A0A3E53A4B603544
  Data.q $A2BC0E5A08240D03,$58B5005BDBBEC91C,$8190992AB032ADE1,$BCB75A1E2015EC11,$975D657A1A1865CD
  Data.q $04A4B73BCD4087D7,$5BF5672A35E46A09,$9D93D9CF92D4CDD7,$310D4009C3B3EB9B,$BCEA2871B5D3BF90
  Data.q $D4AC8952BCA8C223,$0731EE2D5192FE99,$0C63B44AA40309E0,$11EE82B70EC431A0,$8C11A84E21428175
  Data.q $1CC24E508104B58A,$54BDA049C00D1A96,$47730A0120503703,$E145D46D477C904A,$833706E13881CAAA
  Data.q $52B8478C16301888,$193C57318798DF45,$959524B3F02E4294,$C8DBC47F801E816E,$833201A524B46B8B
  Data.q $0586FCC9FA3589C5,$79C7771835603DE3,$1675218AC81F1CEA,$AE26987F91AA4B39,$980A8ECE60A04D0F
  Data.q $763B185700E70109,$B461AA230829ECB1,$C6C4124A5610BD92,$62026F5243AF41C8,$48ABE21A129EFFBC
  Data.q $0D6B02A3A27693FE,$00902ED68CE45394,$59B6EB06839954A9,$0B119E41250E122F,$9941D108D3ED1698
  Data.q $43A7D44C02A4E826,$B6157061A8ED2160,$27AA28039377449D,$503B73EA4B0EBA6B,$A7480201A25D49B6
  Data.q $FE1398838C763E9F,$B737AB3A26D151D5,$8BD447D84DD89906,$ADA19D917A20C157,$EBAEF9A3030CF40A
  Data.q $600FEA036C8507FC,$EA96546205F5D39E,$86A8D0A6F086FA6C,$30DD1D09BD853844,$054B16D5679C9457
  Data.q $38D52BD1AAF0B4D7,$0E38120530D07258,$8880BC9D3FAE07CA,$214603E7A8B0802A,$3A89A7706A118116
  Data.q $47D3116D255612E1,$0A556045E00A0F99,$D28AA9DC00C2BEA3,$237B6C8420791389,$119039423BC1B170
  Data.q $B2B6C84F2A024691,$055C74468F73E2B0,$DC849160735C0252,$737748752442BE5C,$7DF85107240BB5BA
  Data.q $F47FBE80B24DC638,$A3D462B08C735936,$FDABF6206AD90933,$438903F007E74281,$AA86E20EE41AC28D
  Data.q $A483954FAC3FD25F,$51614A0578AEE7A4,$65E04380D8D5EE88,$AEBA0E4C1B048F34,$E998E0202D6089DC
  Data.q $A1A1C3E0A8DCE22E,$A48D0D6F4813F063,$8435399C51D358DA,$A1980EAF6BB98720,$64028432DDA7A844
  Data.q $600B70F442EAA5EC,$15B941EB9997C190,$4AFD8B2ED9A238E9,$93D8BB6E6BB20C76,$FB66440AD0AC6578
  Data.q $1F2269BE8CA75E02,$F56A28A9E7F8A234,$7B9E10B5FB6A877D,$17987882A745DB85,$3D6095600148064E
  Data.q $04C44592B5BC5B00,$6630DD93F71C9F32,$7025C1A4938FDA01,$7622549B74695DA1,$11109562DC8C8109
  Data.q $0790BF40159A1581,$915A80B094477165,$EBEFEAECBD1388C7,$0C57A2B0820F747C,$4C85C235951C77D1
  Data.q $093BD06378A84090,$C7B9064B08752A6D,$A164CA9F7C71C2FB,$A01D643BE37998B9,$4289C914042D9F6F
  Data.q $00495629B2F9F424,$2FB9D030A1E60002,$20353AD8046757EE,$6DCB54070F46A60D,$C87A10C081908DCC
  Data.q $3AD4D448B3A7C84A,$AE0ABCD351194707,$C6B52EB0BA809CCF,$00EB1663D84526E7,$22E8895BA89C7819
  Data.q $AB9C48765945D8AC,$82A03664ABF0A052,$53A05D40BA222A9C,$0C814CA304AB371D,$E4800033E8372F56
  Data.q $A72354C70EB5E597,$5EA16E75611DC28E,$DF870F970353228E,$C406BB8EA777567D,$CBB581517E496905
  Data.q $914EF924F8EB600D,$2DC22AC83CD0D4A2,$E391D5CFF7502415,$944E9235CD325828,$DD171D78EC5637EB
  Data.q $A183B52D5C3881BD,$5A5B688A5122338C,$8C9573D5C20C48F3,$F13E8AE0700D5BBA,$6E626DA5753C4E34
  Data.q $5015B858F407F370,$90029E3256E91474,$20F0FAD8F3481B94,$52999C012BFE0CF7,$2A37F284F43D8099
  Data.q $C41612FE37BD870B,$A7C7BCD2235A22BC,$246D424F597E4983,$A4868AEEF39E4A51,$132AF84BF2C4B728
  Data.q $4F5EA2F7D80C2013,$9E3730A15E763EC6,$44F710A784AF5709,$7D94F7122733225C,$762C746040CD065D
  Data.q $8FC0DF63AE02800D,$B11360BEEEEA85F5,$004B23EE4269ACDC,$9E6B0BD60311565E,$47497C3866921D28
  Data.q $F5F1B84E108920AD,$62180BEACCF21FFE,$C7FB0B1E55593FB5,$8C51C155DC7BDDC6,$E642618736676CF6
  Data.q $A9D648FBD4D70321,$50265415A079646B,$0AB8A36075C13A25,$6D79E6A409F90A40,$C83B6D126D285A40
  Data.q $013E86842E660E58,$4DE0148C871720FE,$B100332611EE0471,$2C1CAB37519046E3,$895543C049C06648
  Data.q $6208042DD61C2E24,$088B1677A33A9C08,$6401D251E061FDD2,$4C6E35892949EF81,$7FECAE4581E8854C
  Data.q $77D15FCC054CF608,$3454A19CD128BC92,$F824BDC2BF08E631,$4D67E195F5498CF0,$BA2E802F338E4371
  Data.q $14E824A464445805,$430D031A27B16231,$F6090CAC70DD5161,$692C6A0ABA807502,$14151446352CA861
  Data.q $01355D1FC96C43AD,$02C8E630AF5A9772,$753D0A6FD20C9860,$B92D02600720310E,$22B4069B02EE5117
  Data.q $01CCA05242E1DE2A,$DF25AC501A9DAC30,$1BB4B2CC16F7EC8B,$B6B6A6D3C29A8148,$7132E3A81E1629B4
  Data.q $DB89CD2B9B9F103B,$938876D155E90BC9,$8E41AACA0E30B3D9,$380D174D05DA23E8,$991CCC6D8D45D970
  Data.q $0F7603892449EA87,$D15E4B266A318C90,$E463A2AD4255F052,$252C81AF724BD050,$1194639746E11442
  Data.q $C1AAAC8D504F11A7,$802DA07430DD7291,$D818ACEE1DA23E7C,$15AC51882BCFC275,$7C0355D0AB26B435
  Data.q $3A79C391353131E1,$DB7912A61AA9A414,$0940091F562F6161,$46206C228C0AFA18,$3C4BCF8ED5DA8E36
  Data.q $D20273509A95EB8E,$089614264E89C875,$1320697C8E959F35,$4DE0914EC53C1926,$4C2AD9A412E10EE6
  Data.q $9A0EF44FCA74A059,$0049338429DD76A1,$6840DF973A93B874,$6ADB40EF55855203,$1AEC64D1191E0E9F
  Data.q $91E2857E3EF41D15,$092E02CAC3A1F09D,$B01BA19944E896D6,$9813268E701089AB,$8C44CAA86BFDF691
  Data.q $9E146290B01F6520,$1CDCF51F14621724,$6E03A7506660C712,$A815F46E753BBDA8,$7030D2A7CA14D0B1
  Data.q $5058D51295C663EA,$81BD3852C6741490,$6C20175453926C1C,$C07C08D95214132A,$931D04746BA27096
  Data.q $460167BA4EACABAF,$78B4E5FBA95E0913,$9080461F3F547A42,$08B20D3E5664DCBA,$A35A98102FF69118
  Data.q $EEDF6B3D29AED954,$5268D6B4617606C4,$255E8DA873EA7C4D,$7104F41CA24F105D,$1B15B4FF3C8EEA7A
  Data.q $07949CD98007CCF5,$1C27438326D6C624,$F00E035E3DA3EB40,$68DFC4482BF685E6,$3A5E16BAB21C4698
  Data.q $8524822E45902A7E,$28E68AB15219CC05,$3222A9F521A10A0E,$3C978EAF020D481D,$904405D7B20E3751
  Data.q $414B3958A0641D25,$327BA220E8B9AB63,$2D2327540203F03F,$D31ED1AE89876016,$658CD8BC3045B2D8
  Data.q $946D176D951C5C18,$E303A73A090C57A4,$080E8A78D0DC8C76,$6B32D1E5AF507122,$2B93DE78DBDA9335
  Data.q $E606DA3CBD204405,$8CF902D048A8A370,$C6DC88180B6431A9,$2367EF512D439D8E,$A58883AAF041CFFD
  Data.q $DC5B90A527B44BC6,$F86080361C94EEEE,$4C44A1EEBEED5721,$946A59B60B8600E6,$A6EA8AF611604A15
  Data.q $3EAB890B10D95192,$342074CC58F8A15E,$0A13426DC399D441,$45B69A013540B59C,$A2017E0C0249DCF0
  Data.q $520DDA75C77315A4,$EE08788B323F40E8,$83F5169E5D4E3BD4,$89983ABB940E4572,$112889661754CEE2
  Data.q $AC08D1BB2045F442,$B655182EA31686C6,$D56DD26BD13E21BC,$19854D8AC3792E45,$D12098DB20C52BF7
  Data.q $8C8A95A1AB94511E,$D0C37D7EA282CC3B,$8EAF55596287FCB1,$BC1E020B24C050E0,$CF20EE8C95BB8F87
  Data.q $B5FC9634BA5D9F16,$64034E18191CC296,$7604CF41FDD7FB14,$EA5ADB3438C8EAC5,$2A41A125ACF20096
  Data.q $0E4A29945D6B180D,$448149DA6EB0D615,$593D282E5D2CC9B1,$3FDBEED89AA0347C,$FBAB1C2E40AF3B57
  Data.q $6B186B6FC44F066C,$9AB58BD5AC83DCF1,$707A6DE3B97163C6,$0EB3A7F6746DBBF7,$A6283F37E2026C07
  Data.q $AE3290A919EE278E,$DE89E76C6A3F5599,$5E07C04FC0C7FD81,$1AE072F2D761AA72,$7A10B9781E9E5DCA
  Data.q $808D43DCB27BE9FE,$6F19943C0286BD25,$D7B5CD8E306FBF58,$0F90FA644203ADF7,$966939C5751272E9
  Data.q $4BE44E15421996F4,$6DFF46A97CF75345,$B879C9BD1E5AB022,$868D3CA8FA46AA13,$9B9CF53AB7132754
  Data.q $D90DEA56316DE990,$B844659D0E7EA8D4,$84183CDD83686415,$7D20ACD75738BA99,$E027E9BDE7517AD5
  Data.q $80DB4AE5B0551C2E,$02059AF8C1EACA82,$C487C4BDB01B8489,$51B9376A01AE76AA,$105A80E00896A6F4
  Data.q $284914F05AF83834,$4B87EC8283C5FB36,$9256EBF167425D03,$8B2B9F267BD4E921,$E2ABAF12BF11FD8D
  Data.q $6BF720901A93DCA1,$BA04DD4639FF2662,$514DDEDC9C16E165,$5A872CE4F051E25E,$47E80DED996958FA
  Data.q $C939CFA0096CF3ED,$FAB3F3ACF501EA0C,$BACC4070CCE4ECA0,$1095DCD2D91BA851,$488F040049581884
  Data.q $144FB2F870C2A17E,$87497990D1DA99D0,$AC9F016517B9EDF7,$757A34A8E028B489,$E1490EB82BDC8CAC
  Data.q $02664B80FD434E54,$86C111C886D42190,$1126808FB247BF15,$45CF9F1FAA126C94,$B258E42006A645E2
  Data.q $2DAAE0635046B721,$D9739B56EDBBA78A,$8368550FDC14401A,$F17FC3F05D773880,$44CE007420E971FD
  Data.q $EA0A151758721281,$BC5CA9ED0AC70426,$80DA120AA7A089BD,$6122259A8B6FC673,$25E16081B4584392
  Data.q $23523DBE035C0E68,$302672B800F861C8,$00B14A12782DA8BA,$4040D20B792E27A2,$DBFE43124ECFF38C
  Data.q $FF530C21EF61E4CB,$3836D5847AF263F6,$1931F48BD80F08B5,$CF2E008B845DA59A,$0CA0D7D61C9AE77D
  Data.q $935ED43862D7C659,$B86CF524C052A4D1,$BD45F9C9883D145F,$F8676B2609793094,$00797525DB2E4859
  Data.q $6016594FA1107856,$356EF895368A250A,$314E8959DD416503,$BF651DC25980B031,$051D02841A446BB8
  Data.q $1656C3D2C3AA1D49,$32881563C87B6AF9,$87FD619B94714EAE,$5B274614D81050B6,$DB4E8B5D80FB46ED
  Data.q $486FD4D3451ADC4A,$1A7C545081C2CA86,$A23E7DAD95185CB0,$707CA17327B2B97A,$B9EC752855B1CEE2
  Data.q $5D789D498BAEA91C,$EE018AF878BC8A58,$8DE1848B59022A2C,$100C2C88A3105715,$CA506AE4CA886903
  Data.q $417FF1C74D6A7C18,$A51716E07C1D9E34,$7E458A8AD907DEA0,$112DB21AC8940452,$C20A63873B0D9826
  Data.q $E5D8EA522811871B,$CAF27CD3BF6235C4,$2E0D3E90841BDBD2,$9D95418B1E9B5B3F,$0159C1E3C00770DE
  Data.q $6925F9954C7313C2,$6B1D343C20C3AD81,$ED622CBC1CE5FB73,$2A2725EFB56080E0,$89E69BE728064B8B
  Data.q $B3BE119539A918D2,$4DC35803F062B5F7,$817F3F6841EA7F02,$B7CB8CE72FA5050E,$9DADAEBDE25E7133
  Data.q $93338E10F2CE9261,$DC4CF5C060B3B774,$1EF77D408C222B03,$059A36FBD7096745,$C715A8E693D71F35
  Data.q $73A9D15B109425E0,$1B6A447F32248EA4,$1208BAE838503874,$A5A896AE47630A79,$308C2F1944B9D041
  Data.q $3861C3E1946C2000,$47F5A880B83553E2,$F047485D29A5DD9B,$90B8741799C9F101,$F4248178B58654AC
  Data.q $72426F905F344927,$4913B64DB8E16AA0,$362D5B6F8B522DD8,$3650C2028C6DAD6D,$EDA952C6CFEC70A5
  Data.q $23B86B25DF040389,$D0A634D603BA89F5,$629DE405F8A79C8E,$CFB18B694461D7E7,$0DBED61A8E0B6FAC
  Data.q $98A5496E05CA8BF9,$B6C213871C66321A,$0B7A914C0BD24B87,$58FE4ECC4641135F,$6A81CEB4F40390BE
  Data.q $F38CB8D40280D2D4,$89321C8AA7CF126D,$1E0010A3C36AEE5B,$08098230446497A0,$920E0F3710B3D633
  Data.q $F2FF57DE564813BA,$B1669212725EF9FE,$AA866214FEEE2729,$FFF86A5852702483,$6948B9C7A3F1E192
  Data.q $9DDACA668BFDE954,$2303B3A2351BEB42,$0A688DB7AAA5D659,$C4A124D4F8347AC8,$4C634DF1DE945D82
  Data.q $A14FC1F4B6D4D1D0,$17BA88428150AC7A,$581B63567515CD08,$933E492C5D4C2082,$DA55C14A0AE6384B
  Data.q $F707D5705B1DBDF2,$A14910CFDA3957DA,$397A8AC0441BD664,$17B4D8A06FB53239,$549282DA6DF1806C
  Data.q $1CC0F1F483A9DC41,$14C86384FA9C1C69,$B6F76078EB714BED,$B9820994AA7ABBC2,$95B75EF1F5304DBD
  Data.q $D5A93E22FC64BA0A,$8303B4EC36FDC736,$3DD76F55677EE048,$B376888071505F57,$D469FA3719880FA8
  Data.q $036A74A315A8D7E6,$B7567C4D639FC66A,$D8C1F09EE37F6EED,$6A7B67672F6B3CCE,$980A90BF8D3F802D
  Data.q $E01B421B69854D8A,$58A4F414CA351D53,$96ADC9BD5E4C13E2,$C75F085EF678716D,$B017FA1530288238
  Data.q $10C9064D003A5B7A,$7E5C025BDAB1AC85,$F6E78A94492815C3,$A120A7AEC5EB27A5,$C076F68B25678093
  Data.q $2C0A49288D59A28E,$F394BE6069C302BE,$12DF85DBA7CE45F8,$A3FC047D24E4A9EA,$E9131A0B51B53528
  Data.q $9849DD22EBF347C8,$DB6A7EB23C5246BB,$46BA88B556476DE4,$91DDDBB2E8455401,$388B979DB5396330
  Data.q $AD716CDF6AA7CA77,$6B1B56450B33035D,$1DA6E248EA416A40,$AC88052492D8F441,$041DAFEC9167F53B
  Data.q $2EE5089E7667000B,$27A80E2E4F504521,$C034925F8F0E418D,$091C01F48A8E20D9,$9927BCE86A33A988
  Data.q $E39A63C149ECC5A6,$122732B51B4C9AE0,$8EB2681A1449A21D,$36F8AD722292625A,$9C907A540703A50C
  Data.q $AABF06474DDC9A6F,$72C10961ADED7130,$4217F03654836904,$E9348EC78E397C81,$5EC180FC63ABED2A
  Data.q $7217D5AA540BC023,$3A89632097B2AED2,$C1344F752759A375,$08AE8847AFF88598,$757D734E93AA3D07
  Data.q $5DE24831B2BD5AD6,$727416AEB8A15309,$FE8D5AF1E039561A,$540A137A5A8D5D93,$8E3C2E8239120E04
  Data.q $369010DEBCBFAAF7,$C7DEAF1567512EDF,$F079CC1E24448059,$431FAAE40FCD178D,$2ABC0D0A76DBDB7C
  Data.q $5073B8125002351D,$E4E0C688F43778A0,$4F9B4D2D0480D511,$0FB77E9E80EA9DDA,$EBE582A5B68DCADA
  Data.q $0B4BBA5E439490EC,$603ECC51C8944FE5,$C735D124CC06428A,$D6503C4E63ADA427,$94B7D29DAA0C10E4
  Data.q $A8C130C25ADA2B05,$25ABB86BA3923420,$8E9AC7856AAC06D9,$601975EF2878B648,$817920230E55ADBB
  Data.q $DC3BE00D81DE582F,$F8742D8340D46180,$C4895CEF1AC7A000,$D1D8DC328200ABDA,$95D681AC5FC989C4
  Data.q $BEAF235951FBE05B,$D556F4E2A5CB352C,$A834936BABE21F84,$09D9AB3018E20A45,$DDCC6C22C6FAB811
  Data.q $C874C72101ED1CD0,$74A34D3E04FCAAB2,$7C034697E52993AC,$383F927DB09966D7,$0BFFB436AE34728D
  Data.q $850544A10D34E372,$53E4820EB4682DA6,$A3818A8374569C62,$068A15C5ED4C94A1,$AC61971CA4F449CE
  Data.q $02C45ED796CF1D32,$2F3F196BE8F53A8E,$BB2E217019708D79,$E407E110D5272488,$A8697C301EE74CC5
  Data.q $80ED0403DABDEB89,$624A64B7C5CC321F,$5AD90FDA1CE72921,$6D639D09152F4230,$79090718E6D7849F
  Data.q $835B0CD10C842069,$B91CC1AB7535E105,$A6E5116A6508B061,$1C9351F484CA082D,$BFAA92A3CFBCAC1C
  Data.q $F5A35D4CF27AB11C,$A82E51C5F072E026,$DD591A4C92B11643,$7B96D34ADD2DE700,$35840AED9CE70A81
  Data.q $14381A98D9A382BA,$D53E4C011373671B,$2B96BA9AAD201B8F,$40984290444F3070,$787E800448029371
  Data.q $55C553351226A085,$ACCDF848A35DCCB3,$5ECB3A83E2475521,$D6050D051F3B54D7,$892C27BB710A7E6A
  Data.q $C1F594B3D256BB22,$6354587CFAF4BA0F,$D639B624E183B8F9,$759948D5802E0603,$89AACC882691B2C6
  Data.q $95CED0410F15A09A,$139B6B958DF91191,$6C06717254DA4A3E,$E48DDAA9358522C3,$E2CCD5D14F3E6FDD
  Data.q $EB5AB8869D4C8DDD,$2D966E07874227A3,$31CED6E207B8F299,$B6693527523882E8,$96933C8EE0E4DB4C
  Data.q $A392BF689BF87412,$8A516C356FCAFC72,$3C6D329B0E8C5C0B,$830A3580E20F0417,$6586145751C14295
  Data.q $A4606A7BF25DA64D,$E2EA15128D679694,$1F96A730CA352785,$412230A9914F8299,$FDE03AB0E34D051E
  Data.q $2DB33B7DDA68951B,$CD55F462620160E4,$089D5B5D521D5614,$A705A359007547ED,$B401F72A5020267E
  Data.q $FDFEBE47D8DE2836,$41A725341903B43D,$7307C14D30130134,$13ACCB460FFBA30F,$50DDF5A4DEED6C44
  Data.q $49F0B8B63D01E03C,$20D6AB9C13333651,$AE185B315CA88F45,$CF4A6211E5BACF44,$0DEC9A8F5F61BD4D
  Data.q $17D8B099816BDEF3,$1B5046A44189A499,$3E4D0B0A16EDABAA,$CF0A544A6BCE3883,$DEE0FDC12A87AA0A
  Data.q $02401DB48C07B69E,$063542CAF1CD8F5E,$A26642D92484500E,$D55AF69A8ACD4F8E,$DE1A9472B0858A55
  Data.q $263713EF0DC55D26,$2514C06E5215372F,$46D25E0D607C51D8,$3252B4510F02647C,$4E15041015347298
  Data.q $49B69A116658A643,$46A736B5347A4B27,$4F3AA190681B90E1,$BA3B9C7695FEE377,$004E16F61A6D032D
  Data.q $4C47C46551B1B2C2,$11367FF0CA62CC94,$CF5BC3262DA3E3B9,$AABB188AA51EA6A6,$DA741FD8C0512C7E
  Data.q $34007E821A8327F5,$25E31B0A1BB4A1A9,$D01E35FAB35504B2,$4F7A567A2CB79C84,$673FA86889411FC0
  Data.q $03C277DACF431914,$6AF812F35B51B26E,$10926F520365A95F,$4BF720A4BAE88F3F,$E6751BF06E07E089
  Data.q $88E2EF2ED280A613,$2686A8CCEAC4C035,$E35FABC5CDF417B6,$237C4A8D591F13B1,$04718F125EC3596E
  Data.q $73061A93DC5A9E4A,$F36E7AEDED3348E1,$8E4A468C396047C0,$F74876BA98D03A83,$036091CE2FB9CC2F
  Data.q $22ABA10D4C6AC4EB,$B2AC394BDB914834,$BC2318D67B890446,$EBE39139CCDF8DAC,$BFE108EAA8ED622E
  Data.q $D3635C1389AE89D1,$3052B8FC22AA3D60,$4D2400A4855A9B4B,$12E2EBF99F758122,$3649272E94842A37
  Data.q $509D13B6D16401A1,$83A0212D5AF6F2A5,$95FD48A468FEF73A,$AA59664905A84D8C,$85386F23B888E480
  Data.q $259018A542C59420,$516D562257868CF8,$DC500036403451B5,$72D2B0735C9B575C,$F5235902A368EFBC
  Data.q $ED6F671EA61A7D85,$3ED5A00C636932CD,$1F27DBCCAD6AD368,$804D445E417794D0,$0ABC98045B4BCC2E
  Data.q $3E140CD4E2C464EE,$8FFC192985809A9B,$C5C4E0288C8FCDE6,$2C4B92DE4B8F8E66,$0E5099022B07A949
  Data.q $8D161305C77AFCFC,$1AEFD513BB292C68,$BAE42840B6D104FC,$5FA0C042E1B4AF46,$F52666DAA2F0D2B5
  Data.q $3F291D4C86FEC320,$1389587A5C649F71,$9A920091A4940858,$BCB493F3E87A18D0,$7B7D0182B7B4CF66
  Data.q $AF715A157854E7E5,$3FD2B27750F1908F,$8962FD81533D046D,$AFBC00E4F5D59601,$323D497A0FDABDD9
  Data.q $BA7A942363D0672C,$23AE22EB0A170894,$5C2A92340981A670,$E1C87A4B4DD55795,$1E9BDAF34D1541CD
  Data.q $56C17824576142C7,$6B654689A5B9B0EE,$B6A6B7A9B9C8BC43,$927FDCEB7C2F469B,$25B55C14596C2504
  Data.q $7164BE9B2EEBB575,$DC181B0D3B6966D1,$120BE204B9913882,$032BB8E0467BC8FE,$D87A969B7FB9CCDE
  Data.q $9AA06F0D1009EBA0,$360EE19329DCB6B7,$C83B47561A5A7A0C,$099D4189AE354C1F,$C02F7378D2CD5179
  Data.q $674958ABB42CB69E,$F70BC21D04F8958D,$18680177223FEBB8,$4D58C87D43BA5029,$F82F46389D867C0D
  Data.q $60740F25C7600D58,$BD931FB8BCF46C3F,$7F024E44BDABAEC4,$B6E9E9028CFE5754,$A69F930D3DC5A12C
  Data.q $A2FDEE5C726BD334,$0233D763A43F200B,$5AC629F576D994A0,$E9F2DB217546B938,$28C1ADD76F086933
  Data.q $CF2536ABD3731AAE,$3517AF954BA7A647,$87CF55A33B7D6B40,$73C102F76976E769,$7359FA021CA95BB5
  Data.q $A0C7093591EBA1B8,$83017B0F5C7A5AEB,$4A47DC626AA33192,$938DDAEEBC922B8C,$EA5DFB81AF8525DE
  Data.q $5821ED7580190B6F,$31D49E3B7EC68AED,$7E02E194D96521F6,$87EDBF4AED3C8D41,$1DB6F636A146A6D6
  Data.q $CAAFAD51A8A77704,$A932D454702A1CB2,$D77093485B568589,$9F50604A428D3F69,$18A26D83C714346F
  Data.q $DD5FB480E69608F4,$5834A3F3484461F8,$E04BD2C895B49DDD,$8140725C730DEAC2,$ADA3A12067DDC5F6
  Data.q $4DA9B03284521321,$7A10DA6192A1A9F5,$71A6D5A14BA0C48F,$ED1182CE4C54F5E5,$D40A089EF6B09142
  Data.q $BF2532C8C9691EBD,$4D140E6984EA997A,$A7A9C1003F691DC3,$E888D0FFA45FC879,$8A0281AA325E4175
  Data.q $63D14F2EAF1991BF,$B1EA6AC0E93CAB20,$5A3F3C47A961093E,$DFE3653DFBC08348,$024CCB16056B1DDB
  Data.q $1E3487876A586A07,$9E1BED650C844863,$D18715B550C338F5,$D11F11B08D7EA019,$098F68A56B998078
  Data.q $3006A404F87C20A8,$C73C9F3023D2A383,$675136A3203D0CDF,$A243A31A075A923D,$040147EA8D451C73
  Data.q $D73888B17C2CEED3,$C583C40AA0450201,$1C0330C18505F724,$36D48983C883A03F,$EF92F68105589CC8
  Data.q $41A34668E65E7ABF,$53DF76A4E4CF5158,$7C1D1F71BF779C0E,$8560DA595A176E26,$05767B27AEE433F7
  Data.q $82925232224784E5,$D22DD3D535D3FD4F,$B499A7A9DC038A16,$7C236A3218C7A6E9,$446458BBC3D3249E
  Data.q $ED0C34C6398F3789,$AAD5700D6E190797,$F6F3C308FB67DF3E,$BF1E9A61F5EBD28F,$03319A6F7160ED1C
  Data.q $6D59ACA65DDA248D,$71AC8234C9268C14,$B6345CBFAAD00591,$2B0E3C29F9E81B01,$4E3BE2AE04C1D089
  Data.q $52DCCF07FB9120FA,$8B85588F5B924BEB,$1A8C8EC21AFE8786,$67AEC3B893A177C4,$C8C601D01463D42E
  Data.q $46D4CF9C4AC8B1B0,$977C5319A9085FF4,$E8F7D11A1E1A87A0,$BAB2E1CC8711A2DB,$A9EEF49C582290F4
  Data.q $368429E91E0DDBF1,$06DE90A8BDAE9180,$BEB0551778638572,$D8EC741BDA9057FB,$45F33AF892A7AE99
  Data.q $E496F28C0F61C1FB,$AE7EE3C4E980FCAE,$4BCD08F9AAAA5D4E,$1C96875454D8A283,$9E969A8A514AC2FD
  Data.q $E1E107B7515A4EEF,$79F2284D1352CC66,$66A68B2300746744,$00CCFA0A895B6F1D,$92F2F3DA9C8224EC
  Data.q $34CEFF93FD7EF2BC,$BBB6B749A5584319,$EB5D2EF49E926600,$1620079BD968F4B6,$43D7475E7623F5DA
  Data.q $723282AF691CE16D,$2393CEFD4570E512,$45429CCE56BA2EF9,$58DF903069FC9EFF,$FC8CEF586267A28C
  Data.q $0468B00D54E1FF52,$5C5B9EBA96D9A9CD,$9E9C1CC7A61292A2,$FAA460E74139C6B6,$5C04ED54E1E9AF42
  Data.q $020C7ADA548B28D1,$3E68B9934EAB0E83,$110320C9E76964CD,$107740D595869514,$96A4AEDAD497F78F
  Data.q $DBF5D353D1BD9E92,$F439FB272D994244,$3765588F29595F04,$10C3125C7A9EE4BC,$4A2944D7C41A494C
  Data.q $C5E4F0D64000FF58,$5C326F3DE95277BE,$2AC5A3C52C1C43D2,$C94F6EE86E58838B,$AB2D2B2F635D29C1
  Data.q $55CDD58F6552BABA,$939295F751883FBB,$413875CD461B563C,$97BCE1D9696E06B0,$B37D62558A027A55
  Data.q $941EF3974FC73848,$A5547A3ACA3436F4,$AF462ACBB9BF33B9,$5F5B34214241BB89,$663EE5280D5433F3
  Data.q $E84BF39A0540EAC1,$89D268B68AB270F0,$B4713D68687A70AB,$392588D2A587587F,$CC0998D4B78281E4
  Data.q $C459117A96294680,$D526F910349C47A4,$7C3DEB5AF97303AA,$DEDE081A14BF0096,$0367387AD89ABAB3
  Data.q $869F9425307DF251,$E528E6BEF80C1EA6,$225F57A03C8E0DF7,$2E6D6DA61C8403A0,$B2E5C6628FB46966
  Data.q $125B001A3A4A9062,$1A6C7ABD000AB176,$9C4EAA9C75ECFF99,$BD5FC680C6D3BC1E,$46AE89BBE95DE284
  Data.q $9FD8E4EE0F4DC893,$D6E7058B1CC3D046,$793422FD2BD0F2BE,$31BF372BFE9AEC47,$C79990A90B9F6077
  Data.q $F0AA93DE1B4699C1,$397500B9AA7D0E7C,$13C46093708D13AE,$4378E33389C78D1D,$8AEAD4A3C36DFDCD
  Data.q $98037E46DC8AA91A,$10339CBC4A9090B5,$EDC2491BFC1847A7,$F3DA5027A971867F,$38B21AF827865966
  Data.q $F6D1FED4A68956C8,$3971D87C1B2555C9,$9CEFF8F4B03C05D9,$DF8BF1358519AE3D,$949D97AFB7C23889
  Data.q $AD011D3E1145B88E,$A4E4393E662A15D9,$392A4D1A4C9EC887,$74066A67F92CF7F7,$F5ED59B162811ABB
  Data.q $070055C640016479,$C601A4625AF4CCDA,$5FF3D551D419850F,$EAE549164C02B675,$7CA840C37AFA04F5
  Data.q $A94DA1DA355DBDCD,$C73A9E0842123D0F,$0CE7A68790E59CF4,$7FD7F55C330D6A40,$889D553866B82246
  Data.q $9A6E4702D2476D68,$94B1546B77E9265B,$B220D28759E81948,$120549F7E675555D,$EF1F51200D3F8D46
  Data.q $271A720364F7CBC1,$7DB7E6F55553B5E8,$356F21CBB2425F04,$7EACE453ECF43747,$516431074A1F9535
  Data.q $ED4741AE2B06D2FF,$3E5FEAE4F40D6F58,$66475B3551203CFD,$779CFADB1BE3A2AB,$C9EB594CEC03C144
  Data.q $32A9A58548666780,$D87A8AF39D0D0552,$986A71EBDD107C66,$F689DAD24D246DA1,$0F6F0866D5779035
  Data.q $97B4C3C68294FF50,$B67BC6C7F2049F05,$B0B886C81A6F2B99,$6021FA0ADCAF0E29,$224A85B4BDA5B477
  Data.q $B26FE81AF4F0B1CF,$A3A6D2CE7A0F1D23,$4132DC10BEE3EB9E,$059E0E6D56EC0D38,$1221E9B19B4CD4CF
  Data.q $9A7DDC6D83A9D26D,$4DA578587A7BCC70,$FC8ED6D24F47AF44,$E3B1401AE3503C6B,$BA36A77813FAA68E
  Data.q $E38185E47C8F7611,$66FF263C9EB356B0,$5B7C4246D37276E0,$0D0E8B33541FB8CF,$12CFD4D3A1D21814
  Data.q $A627A9696D6671A6,$67CA3B4998912727,$8714F4D81E0B5C15,$5D2E47EE47EFA9E9,$4AC5158F5D1EB8B3
  Data.q $0D4DB9E001008017,$BB1A0185D19563FA,$0F7C7DD420819AEA,$88BF2807F13FC00C,$8898A01DF0049428
  Data.q $F5CC956069A29481,$458DB0827B08DC7A,$87EDA9BF72D2048D,$3BF535670BD784B8,$69390B8AB6CE4714
  Data.q $41EA1FEA46535B1B,$E2C951418099AE9D,$DD0086F7172C77D8,$6DFD56AA4077DC7A,$5DB29F35F35323D8
  Data.q $7C926D58A140E8B8,$CF1FC2B4DEC10831,$8EA909367A469118,$26B4CFA6007E8231,$049EBA8F20C296BE
  Data.q $A26C00368CBC3CF8,$61083FD1E21A6DFA,$A096710BBCFAB83F,$DA41885B5A1ED435,$DBE29A74E2244CB1
  Data.q $D01C05F5800E567A,$E273910CADEAB223,$3DF63801592F584E,$63545D7EF8469974,$7A94CC393D10CB64
  Data.q $9B1BF0AF85F6AC6E,$52EDEF562C109BEB,$4ADC456D4A6E1C6B,$28FB8712F226EED1,$6B28751623CA59FF
  Data.q $1C8F70DE32037374,$E35851C3508A306B,$6B3E9EA2DAF5F133,$9C4CD2873AFF4B57,$3E59278BB5378805
  Data.q $ED2588CE0FDAC790,$BA289EB92C3E51BD,$C924DFF94698226A,$426D76A81B438B6B,$34A6A2FB630AC3A9
  Data.q $AF8BDA423BB2DBB8,$515A5C72CCE9D43B,$C5297540F5E060ED,$D9A7190710D16825,$801E67FA4C46359A
  Data.q $807A702B9EB3D2A5,$C3E85E2CC355B01C,$0B9054D2900D27FD,$4369840100002B16,$7270204343495043
  Data.q $780000656C69666F,$1C40C3483D917D9C,$3B1155A2A5535FC5,$4544164EA8643A88,$856A10A8450AB51C
  Data.q $0D2682FD2E4C1D56,$F0705AE0A38B8A49,$83ABACE2E0EAB163,$3A3938807E0820AB,$2D0A4BFF8948BA29
  Data.q $8F7BBBC7EE383D62,$6ACD322D508077BB,$A8B11336DD34071B,$A17457818AAF4A98,$7319666486007D07
  Data.q $1F0F75F1CB471492,$3FB9F5AB3C22EF5F,$8913E018B19AB747,$D3C41BC4DA619967,$F2C4389F79C1B69B
  Data.q $05D2663C4E7C4AB2,$39C6FC78AEB91F89,$3132664333C0B2E7,$34AC4D7316221C4F,$587114F11A9BCB31
  Data.q $9CAB1E5217CA74D5,$93DFAB32C56B38B7,$4EB99657D19830BF,$441209622C311873,$68446C2280A32828
  Data.q $0B68FDA090B149D5,$AB90A5C897EBA0FF,$7641A094058E4600,$3B2B5BBBF07FE0FD,$8BFB40A30525E139
  Data.q $56A05D81008C7CE3,$009DA9C763EF9C71,$554BF86F4AE067FE,$1F0B434AF493E660,$534375C5C0DBBD01
  Data.q $90C9E0601DCB80F6,$166C8534FC95D94D,$B7FD034A6FA33F78,$A71F7D5BD79AE740,$0700DF8ABA92400F
  Data.q $BC5BD7B28E68C087,$FBD4CF7FB7B9A3BB,$CA868272C01601FB,$4B62060000003CEF,$FF00FF00FF004447
  Data.q $0900000093A7BDA0,$201C000073594870,$9B0FCD01201C0000,$4D4974070000009E,$3404110E0BE40745
  Data.q $EA160000E04D328E,$9A75DE6854414449,$673FDF7D57659079,$D33DDEF7B7DDF7B9,$0812ED1B68FB3DD3
  Data.q $71DB2C488311082D,$4C70729671092195,$CEC614BC62A49B1C,$80B8E0921949B624,$222B65084848A438
  Data.q $022C4602D8A141AC,$774CCD19A310636B,$DBBD6FD7BCBEF4CF,$9D92D33D7BC7F259,$ABD6EB7DD3DCEB7B
  Data.q $888E5BF396FCF7EF,$C0F0801782CEEFFC,$842042F0083C6FF0,$0AC584A14290A144,$4893BE1C870E158B
  Data.q $B236B4B5C6F2F021,$2C8397CE3E4BCAEB,$895D116AC2E143CB,$07854840941E15BC,$888143061387021C
  Data.q $140A327223061102,$16369B451AF65128,$16F6263E912005E7,$04205AF4890A15EB,$C38223DE6FB12FD7
  Data.q $47B0408D1A923D8A,$F47D8FCBC0842044,$0AB77FDEBD383FEA,$AD8D22972E568903,$93A8A511D3BAE5E9
  Data.q $3AA049DB61EDD14A,$8569D905DB7550FD,$3B8D55A76DA9B3B2,$AB3A4E82FB52B1AD,$CE2AC8D968C58991
  Data.q $81056D0276239CA3,$4811205EB16F3873,$E210031C7B5E912F,$AEE2C2F111F624D5,$560C217021E853BD
  Data.q $F8766647C41FBDFC,$72E1D6F488F295D5,$9B1B45558D14052B,$14A288958A7AD089,$C738F8133A66AD94
  Data.q $E8C92847D24C7DC6,$A33CF2624F1638D8,$ECEED55EE93A4715,$6D89E6E49F5BEB3B,$25E02CE293B26C79
  Data.q $101BB5E0F7844BD2,$246A7B90122AA060,$784E1C2CC1F818F6,$022900884903F0BC,$C6CCF3657ECFF46F
  Data.q $9C4A5E340CA28DD5,$9393320A4E017810,$B32087116282596F,$E22A5110E8252F16,$B932F98C509C150B
  Data.q $8518382179795CB1,$7CBE1FD173F32DC1,$E78288A77A428851,$7801B2E2D4D1B1E4,$5E1DAF721BCA24E9
  Data.q $0811210781023C08,$9CAF3AA8623C5406,$FA3E2D1A1780460D,$F1AF71BD666DFF44,$2F02900A522CE10E
  Data.q $C8CB3C9085D04824,$478F184258A14E6C,$24D3BC8B5ED830E0,$0464D7493C4432CE,$B0B33FACF4E4E32E
  Data.q $082945C7F6ECDDD4,$A57258522DE0AD44,$738779C785214ED1,$3C38F1E3C22FA87A,$0644A1C810BC4842
  Data.q $8AC5BDF079B5FCD4,$2BF3C4D0EF42F9BF,$18D480808AD63CFF,$210448612548B3AC,$41BC22967E9085D0
  Data.q $04E0528459CE0185,$C9BC0B448A040BC2,$C5AEAD0F8A607D39,$B882D11375DF8597,$819DAA75BCB2FC75
  Data.q $4A5CA15250A54890,$7BEFA95FA14242EA,$844407217AC0F634,$63A03158303F0BC0,$1B34EFEAC2FEDFE5
  Data.q $B4E02A3A340C8A8D,$06AD2835AC73CD22,$A4F0B40329029092,$29783971172A50D6,$713A550A039C48F0
  Data.q $46DAC2F9A666BB8B,$BCCF8ED66E349DFA,$55A1D0F943F00F6C,$7BF035F69C9BAC55,$17B2FE49D94CA3CE
  Data.q $DBC3B0E3C3841E12,$89F47F1B5E4BD50C,$901D079DD5B8CFC6,$2826B5229A4939E6,$7804E19352787016
  Data.q $2D388A94104AF025,$E25AB10A3219E7E9,$0E5D6569D7AA8D03,$6C6B3F98945CCAD6,$81C77042DAC1F4B5
  Data.q $246472CB83FEFEB3,$50AD685021ED78B3,$95494AB2995460DA,$4607BFEC10BCEA1C,$3160DFBE86E3203B
  Data.q $0BDCF4F1F3D1E200,$2920B03F7B9EBF1B,$B08290134E218CC9,$E015864C4849C454,$20C9BEFBC1E9C494
  Data.q $934D1AF5512D7854,$C8FB8144912B5530,$3D3E8AF2C9875AFA,$D1C9C92C0EFB8E7D,$40A8D03494EA1154
  Data.q $912D2223AE4E75A3,$92BEC981C94F47BA,$486E3240E93D2BC4,$DF17C7FDFE44F8C4,$07AC79C6EA776DD3
  Data.q $138BD2D63121780B,$C4129C15CB14778C,$C202144482943679,$A11D1850966E894A,$FB8F4D4C1058A58D
  Data.q $86D28999E85C5C3F,$82F0F07C3E7E353C,$94C3A14A0A2B1EA5,$AF1E06448104D42C,$4A91256D36E88CEB
  Data.q $D0C3C29C039581EF,$223DD3B9F7E10A09,$ADDADC6CC6FAFE6F,$2A5091A959468A12,$DC9E190426414899
  Data.q $56AE50168C49FA3B,$96AA252CBD31A4E9,$A32CD20316115AF1,$CECF3736B3C9085F,$76A2A3718B0B47F0
  Data.q $8B868EACB89A9D0E,$928503E297A67161,$424C090DB402E316,$2024760D33194762,$BF7B96ABC5A14242
  Data.q $86A16BF8E7D0C404,$C9634BE341F34BE7,$6EC9D961EB7E7987,$34A8C52391C30F1A,$0B468EA113462E57
  Data.q $B9E4EC5AAD437041,$79FA35234A3DFACC,$5A114655284B2F4A,$DC0B95E2E69A9951,$2E99B5B53E49C377
  Data.q $D7C257130382B444,$04A816EF9ACA2DCE,$09B69B5DA34A9A5D,$B10932512F205829,$E82A550290F3C9CC
  Data.q $E4BFEF41D71483A1,$32513040347B2C40,$37DA7F8C4D89A6FE,$5773B755CCED8593,$43B955781AA48E7D
  Data.q $20A425DC4293F9EA,$51D68CA9B4ECD1C7,$AB920B073C5D88C5,$49DBE41FCE4E6DFD,$B1B1E13B8DAEFF37
  Data.q $1D6AD4C572BC7B55,$85D361B494441E4D,$D2EF28994CE1D684,$88CBACEBE44C1351,$C3716D162C351A88
  Data.q $CFDE62BC06841F35,$AFFEB55A30090A47,$88DF6D83DEE6DF1F,$F5C8F3740ACDDF23,$45C3FECFCB6CE2F2
  Data.q $8385190B9E7EC6FF,$C6C7094B3B4246ED,$65BFEEB2BA4D9D71,$3B49AB93F691BA5C,$BE5C3D33787D3A9E
  Data.q $61010A189DCA66EA,$5318E6C0809942A1,$EAA3947A4C1994A4,$C7508C5144551722,$ADAE22C3B4787162
  Data.q $8902DC6EBE2375FE,$2C51794084EFDBDC,$CAB032398E2AE61B,$747D6FE2E274AA83,$0251BACDED3AB7E5
  Data.q $7A02A5048B95438F,$7C3F1CCBD5E5926C,$DCDFA6793C9BCF88,$B66E7A6B7E79BF1D,$4EC9C9A5BB755BB1
  Data.q $AA318F2AD26A2144,$F59D660A05F11846,$2CCB93E3C4C98274,$B93918CE392522E8,$69AE2D39939F38B7
  Data.q $187D96D7F04950FA,$A3C1121493BD0D25,$5F6F2AB13F33FAE7,$7CBD5C9AB27E2615,$4CFDBFC86A88EC20
  Data.q $162C2DBDD1A25DEB,$D2C253CD20A64010,$C43E1C8E358DDB24,$3DD9DE4CF246CD13,$2BB3475657EDF0FA
  Data.q $31AAB431FDF3F333,$4545697715E97516,$5692A15F699A7A8A,$5BB090DDDA1DC6A9,$39F5252298A728A2
  Data.q $75F56E4E5C494BB9,$83BAEE1F97CBFDC3,$E57EE6B54F73F2CB,$5B5F96CCE84F5BEB,$B7057BE4A56B788A
  Data.q $B25BE2B60DD82BD3,$7149EF12028A5189,$9504CB5B8B955298,$75972FA46FAECF88,$B668EAF2C0EC7AAB
  Data.q $E1768B7B4B7F3330,$314E8CAC2B2A4708,$10AD46B544C13A3D,$AD038077A484BB13,$F33CF51722E36288
  Data.q $562426D898FBE9F4,$CD750AD58A856DA3,$202B9CF629EABCD7,$FFB657C2FF54FD0A,$523096AD396D6A55
  Data.q $6D289DB9B0B96792,$91AD051AB1C84EED,$DBF3888214A3B072,$7F28E53B29A7ACEB,$B3D55D5232EAD7BA
  Data.q $592ECD13F9998585,$34F265615B5EA758,$0D18768784860FA7,$1CFA6D0E95659926,$E06E8F9C4BCED0E1
  Data.q $891B69B5C760D906,$A2DE790DC899C6CC,$0EBF03AE204074AD,$36C7E8F8AC7495FE,$B1085B5EFEF35EDF
  Data.q $2091896A282011D6,$0C664071A5782A46,$36E6AD8B715B247D,$7B5E085CABB92545,$A6B43E513C7A86F4
  Data.q $958FACEEAC6A5895,$95707B0ECA273AF2,$70284631E1AFA3F5,$83F22C44DA06D808,$9E52E65D47B87BF1
  Data.q $C9DA1DC4CCD32591,$695080A8C5A92B0A,$BF750CF784CFB04D,$DBB1E6D4F1DE211A,$E042B0D48C5DF23A
  Data.q $24AF12538529C094,$B5B93DE0528C294E,$4F278DC96AA86328,$D334BD1CA24F2B12,$113C9A5111E4EC34
  Data.q $6D574B171144E995,$76052C21E398828B,$8E64D032FC0D7F81,$21C8E2F9679C7137,$B62DDD99E59EC6E6
  Data.q $101D698660E532A2,$2D7115D30F521028,$24B88D080F36B96D,$0E547EFD6BDFBBF8,$A0D6BC495A252B23
  Data.q $C03088D020083E15,$DEC414B914AB00EB,$C8A06905AC477B13,$9D82876920B88A0B,$8572BCB1EF357048
  Data.q $6252774B95456CE6,$69F01CE049E02596,$A550478CB90957E0,$B61DA27B9BBB5448,$A460D2B16D1D0E83
  Data.q $75C5D07DE9C20DC3,$EAE4FE4FE2F01E0A,$43F1BED76DC32A3F,$C7BDE0F78DF07EAE,$456B4EDC83F7870D
  Data.q $311ABE02A5840614,$A950E65235312F52,$0E4D9266EE0D38C8,$87A7E066E25390FA,$008D00D73869BF12
  Data.q $4E5548483E73CE02,$8CE841617F660D26,$FF5F17D9EC2A7F6C,$FBB57334DE2D4F8B,$242B02E5C052B4CE
  Data.q $0A558EA81CBC4956,$0118908C2B4614AF,$A07905224F148089,$916AB8472B805130,$574E10EE9CB116AC
  Data.q $2B4C6C1B6E27CEE8,$F03CF34E12451CF8,$6F1208328C07A03E,$BB359D7C919624E6,$F7EB16F2D16B9AC6
  Data.q $0E1C470799C57C12,$C59D90DC2B0E1387,$4AECF36EBBEBCB89,$E5A71E68CECAEAEB,$906AD0294BDA14BA
  Data.q $8111A5086D752AD7,$88A2090C2A018546,$AB1952AD54A65CB0,$2E0DB3BB651B1A53,$A94B95E9F73A5765
  Data.q $5A4D141C13252998,$E3E062061CC3877A,$E2DF21F99030D8C0,$A852DAD168D85E45,$52A92542B76A9556
  Data.q $7EBCCFA57254CB4D,$906B4DC390942F64,$62ECEAC56FD108B4,$37BFFFAB46CEFB33,$4D4E0F04C4ED5B77
  Data.q $20A804190162A98C,$510C32340E8D6A40,$A9016E30307421C3,$D9178B0B8CF3F477,$5CFFEEAC6942BB5E
  Data.q $490A376D9F1C8C92,$4DF59310F4ED9573,$028E2512E4215936,$927639F366C3A03F,$3B64A4AD2C587685
  Data.q $5E8F5E9D0EAD1A4D,$DC896B9316A4931C,$A788315D33EC3A2B,$B31459937848986F,$167F9D92577DEEF5
  Data.q $40A5784A541A3E4C,$CEE83A775701D069,$8F2654BC855AA536,$93A81F8588AD7222,$8FE653E44E7CB492
  Data.q $895FD3B9B9FFF49F,$AA6D74D6CD19A6F3,$CBED6621F2E9987D,$445E25C1910D985C,$3EDFFFA79E258271
  Data.q $BFDCCFB758DDFB9F,$3F4C71F1E3A46753,$1EAC20B08173898D,$28BDB83F82AF3C44,$C8F66B58F078AC56
  Data.q $B940FD5B1F37F984,$33AC38CE0F582E5A,$6C665D2D2CFB346C,$B1DD8BCCF5DEEEBC,$18BE728AD737E440
  Data.q $530395858D8F0E95,$3D3F336F686587C2,$14AF8A5E8FFDFFEE,$5A32605B1A9C435C,$69E550E59DA0E199
  Data.q $6AFD3AEDA4A697BE,$46CDC5DB67216693,$A89D6D8F17B9FE36,$6BB66C5B3BCA25E7,$909E644A9E4363D4
  Data.q $7EC08FB96ACC8C98,$FFC7F3C780DB7B12,$CB31BA5545DDE975,$71CCAD052B021C72,$5FFE2B46C625D2FE
  Data.q $E5F59BC96762F8FE,$63257A245CE9794A,$C6D27A3B5E3F2AA6,$EFFC3290D75081F9,$E9CAEEC0D5F95B9B
  Data.q $7974E2E950FECBB1,$46F97FF044CA3DBE,$8E5996740A78CE3A,$27F9FF557DC79D00,$084DD5B1AF1A9FEE
  Data.q $E9D836EA3A476E8C,$2B9D1A6742A98487,$F7BC3F5C1F72D194,$727E8FE0FE1FCBEF,$41FAC381B36F952A
  Data.q $5405E5D1F85B1AEC,$F82BBB571707FDA4,$998EEAB3D8DCE2F5,$C7DB17A5BD5CE4E7,$4A9DCF03EAE5FF4B
  Data.q $2A3B53E9326DFD3F,$313F8EF2998A5A0A,$118576E8E47638B2,$DA6D3353AA2E71CE,$F5E8131CDD2308E9
  Data.q $1BA6F53DAFC8C8D6,$B47081296795352A,$79197A27AEB776EC,$920E2B22054FD31C,$B5C461D5EE1DA31B
  Data.q $563BF1C2D7FF3BE7,$6B06B5848C5719CD,$85E75E5A5E084605,$CE2BB22626766DED,$A9E9E58FCAC9C235
  Data.q $D6CDD97B1CB78BEF,$6233B81F0C5A9E13,$D45BEAF99FAD99F1,$44AF0BFE9A9C2A7F,$BD73E3D5248DCC10
  Data.q $4DA44A19A0D71188,$CCEAE2F1A5C78D48,$174FF874DFCF37C8,$A2D8D3B12B1A9DEF,$DBDF58F3AD20AE54
  Data.q $9A4C199EA357B364,$DDA291795A6DE492,$B52E8FE0FDFBC047,$9511DFE376FF6F8B,$D8252892843ADECA
  Data.q $732E553114BC82B5,$3E6E7BA5F854B567,$F6B702178DCDEEB0,$A95C6115CDADCBB9,$9DCF7B5E681D6A9B
  Data.q $B6969797ECA5A6EA,$F3478FE5ADF77C2F,$6A3BE9A7F73FABF3,$EF178B2266F72BEB,$8DCDCFB3DAFA5F90
  Data.q $716A85E3AEE3757C,$B37680F55A2EB276,$F3BDE70085250831,$5111E769B7190636,$19E8F7964659316E
  Data.q $3E9CBFBC3DEFF051,$F0FC6FF2FCAD60D8,$906B5E6DE954A60F,$D72485E340849412,$BB9A5389D02A348A
  Data.q $D6A8152B529E544D,$CBD7BFE7123B66AB,$791F1BE3781D4E37,$970B0B2A952A11F8,$3CFCFCC13F27C4F8
  Data.q $823F9F98C78DFD8F,$F33E79F0FC2F3931,$524D22DDD649FFE9,$C3AC639E790E9DDA,$DB8982E15CA94B1A
  Data.q $D8B1657BD8F67F1B,$4F320460404DC9CF,$03041BB46E464D88,$DCE0FE3FFF527F62,$788411B7C5121ECF
  Data.q $8F79C084E052F125,$14A44E59D00A1090,$DC5897B5F03E027D,$76BFE98F3713F36E,$E5BB6FC7072DECEB
  Data.q $DDD90850A76FDBCE,$6DDB738FE3F8F16D,$952A52378DD371B7,$98C6DF53D4F3DEF0,$FA7E4F20F75EFB8C
  Data.q $EE38418210EB58E3,$346B7866D4987604,$8898909B00CD853D,$8BDCACE1C60406C8,$C4F9EFF28512047C
  Data.q $28504CEA5BBBA9C2,$C1D215862340A5A0,$D9CD3C9CB261D670,$F93E0DB3D0F87569,$D922FC9E7FF22F99
  Data.q $6A58972BE47CEDF4,$38B7E6FCDF1C2026,$5E2E0D1B6B28F47A,$4A2ED6AD15A044BC,$37FBBCC3FD7A1E69
  Data.q $FAE58A65E5D5CBDF,$CE77233D705838B5,$F2738C8177DD2361,$25CFD3EF2032204C,$DF81D1BA19B468D2
  Data.q $F77CFEDE8BD6B43F,$9C0A4BDA58A1558F,$02158103D0C778F0,$F72EE6F2C74AC08B,$4D279E1F0E1AFBDE
  Data.q $FEF30FA714739C53,$73887E1F87907FF7,$C2B082DFC422CEE7,$68B76ED0AFC6FF6F,$1B92CFFBFF7C1A34
  Data.q $3C83636365DDA34B,$38C65E1CE0595F8B,$9C2066C3A2CA89FC,$8BB131B00E105AC5,$244BCA244894AC88
  Data.q $5F7DFF42DEF758AB,$9093BB56DEF8D8DC,$60F9706358B1BC1B,$78438DE2D6F16378,$D3B3EFDFA0DF5B58
  Data.q $2ACACAC9BEB6B068,$0BF67CCF99BA6EA7,$0F91FC3E49C370DC,$736BB46EFBBF7BF2,$FD3F4F04A5016169
  Data.q $F703C1DF17F8FF14,$16BB3C980514A69E,$EE490FF07E3C7AD5,$1EE7C38EFC1EF7B0,$B163006011AC1B9F
  Data.q $EDCCCFE4A2B52126,$2FE3E03B76C541D5,$F8ED88D795BDF1CE,$1F1B1EA78A9437EE,$428A88E8D8CD7B9D
  Data.q $54BC0840481CA4E9,$14F3E5F6BF39A6EC,$5EB073ADAD2E35CA,$8AF18A5683B1B765,$CB8D2A411F47D1E4
  Data.q $E6665586463CD8FB,$65D3A743333D324E,$6792CE972B83637B,$258C62C6B16E5909,$E2E39ECD15210637
  Data.q $BC1E7A5D93FADFD7,$39CE1CE01C67761B,$5EC5D43799C153BC,$417A9505F020B72D,$97F2D9252E5649C3
  Data.q $366CDD589ED777B6,$43A044C29EEA5DBA,$B6935A0A085E142F,$EFD3124C18EA5C1B,$384A2D6B0CB3C976
  Data.q $9E4C3D25928ECF0E,$579B1A634F279D61,$D02E965625E972B8,$6F2CAE5349255EDC,$C3AD63CE70162C50
  Data.q $9EA73CB12A314B58,$3AC00CAFC9D4FEED,$3BC79C224E0F380B,$EBDF50DE67855E0F,$9FDCB5B3F1297A4E
  Data.q $974CDB23E3F9EB1E,$D9EAE2A9ABE92856,$37C6C6CDD9F2B27E,$12B4D44D2EBA76B7,$2F34ECC375294951
  Data.q $E2D630C9DCB12C2F,$1F18C6E7471D6B01,$6EB38F5AC39D61A9,$0DCE1CEB1EB153D0,$8B739DF3EBDBAB6C
  Data.q $5803B9D1C8BF3F9C,$6F8B2D8ED1525167,$D2526D2B1D3C7D18,$C05BDFF40CDED1A9,$FAF33E94EF1EF081
  Data.q $50D66DEBFBFFC0DA,$B98F1E9C315D3F7B,$1A31759189C5BC69,$DFABF81B57D450AD,$BADCDB5F1F56F4ED
  Data.q $9EB7836725E56ADC,$1EBDFA2F4A28563E,$B77DE0F0DC9D1C05,$CEB3F583B58E6D63,$8BDBA324FD396591
  Data.q $9E2585F1F8B669D9,$C0F0D87BEF2CE679,$C200F37633488721,$81E8F6BAB2651722,$AAB8CA509C2748CF
  Data.q $189DE596C1B8104A,$FE439DFF9117B318,$B5CAB2F5C461BD15,$05EB592679108156,$5CA8C6B9CCA342FE
  Data.q $CC755E78ADC8CF6C,$D1FAF563F0E5BA91,$A56B550E07236AFB,$C6E2D2BC5F31DBB3,$8369DBA53C983363
  Data.q $0EC3481BACD09418,$7E29CBAC853DE149,$FCF9E568468FEBCC,$9FDAFD9F1C2F014B,$1D6BD42A9FADF4FF
  Data.q $175DA5F3B2DEA07D,$E683978321062B0A,$0157A1EF7FA11794,$B8858CF5F78DCBDE,$95C946C64274B9DE
  Data.q $E685E4556C5E415E,$11C9DB541EEE58B8,$4EBC4E5B0E2731D9,$E9B97D1A3A23D9A9,$85A12F5EA25846D5
  Data.q $B5831AD3B07C98C3,$3C6AC4986E3CEF16,$75DCDBD3FDCCB1B2,$7CFF4C2F3C4ED250,$FDD0FC7FE4E07B27
  Data.q $7BE4E49068ED279D,$CEA57844BC203919,$894FED2B6BDD543C,$0AD5EBD7DE1AABC5,$627173558E5E8419
  Data.q $B189E5B44EB7962C,$697095915959350D,$F9B34EFEF8DBDBAD,$1ADFC6861BAB668D,$B4AF6782CFD2A0D9
  Data.q $28544842C23B9C45,$FA48410E94221612,$F564F97199B96389,$CFB6A7C0EDB83F5B,$17E47B591DC70E76
  Data.q $81F9BF7753F0AF7E,$EB7D46FB1DCEE7F2,$4787274DAD1FB5BB,$FE040903F01B039A,$D9997B1285F767B7
  Data.q $F668315AAF62E07E,$2B2DEBD884C9F5ED,$FA411A3495385094,$97169ADC3F32F5A3,$4DDFA8EF7AC5475A
  Data.q $3A3160FB3753948E,$677C418EE8F4ED38,$D8EE5098A8523137,$93ED8BCA27365ABA,$912574D468DD97B5
  Data.q $E67495A1EB4AC9C8,$EA7EADBBAFCDFEBE,$F89E27A9E9D1E9D1,$4BF4FF377DDF7714,$FAFCEFE27EAAF81F
  Data.q $B2BECCF7F811341E,$750C1C8EABC42F43,$624077C161F01AE8,$A4A44C9C89428E70,$FD6B928DCE85E1C2
  Data.q $3EDC5EE239BB3F82,$88F8EDFB0F372FE0,$AB52A3F1848764E8,$DE72B87B45C3D5CC,$A2BBC767AABA32DE
  Data.q $12AEB6A5455CC858,$78F3397A824E5639,$FB78587FC8FF0202,$A5874E9DDDF673C8,$E8B78EF87ECE25A5
  Data.q $EFF022F781ADCED7,$FE0EB8919D57F839,$122C47AE04A1D81A,$3099292C58521425,$6319AC3214383118
  Data.q $B9166E5FDAC4EFA5,$9BB949AD4B89ACD0,$F91B23139CA9128D,$975092D5CCDB533D,$F1A5CFACA308522C
  Data.q $E8315EF1E3468912,$F6FEFBBE4FF9DF41,$B595757579BDAC5F,$6FFB789F164FCBFB,$391E0D5E0455FC02
  Data.q $C290A248415E2124,$A7862E4E4A4645E1,$EDBAAF6218E18657,$EE5AA568A46F0841,$2632553F7A5A0166
  Data.q $2C3841487CA04E14,$2478008F618E4306,$2F97E104080407D2,$BFEC5FE9EC7CE91C,$98F4BFDBF15776B8
  Data.q $F80FFF811ED947A8,$ECBD7383AD7EAB6B,$07272264647A6832,$FB0FC2DCBEC893D8,$D761ADFBDABB036B
  Data.q $84384044A1418313,$11200250C44A783F,$DE31CF532F7E0404,$D8144B6828817AB6,$01DDFE110C7E07FF
  Data.q $454900000000566F
  Data.b $4E,$44,$AE,$42,$60,$82
  PBLogo_png_end:
 
EndDataSection
(Auch wenn ich ExamineMouse()/ReleaseMouse()/und Co. nicht mag.)
Betriebssysteme: div. Windows, Linux, Unix - Systeme

no Keyboard, press any key
no mouse, you need a cat
Benutzeravatar
Mijikai
Beiträge: 754
Registriert: 25.09.2016 01:42

Re: Nachlauf nach schnellen Mausklicks

Beitrag von Mijikai »

Bei WindowEvent() sollten immer alle Events abgearbeitet werden.

Code: Alles auswählen

Repeat
  Event = WindowEvent()
  ;...
Until Event = 0
PureBasics WindowedScreen Maus ist ziemlich nutzlos eine andere Option wäre z.B. GetCursorPos_().
ccode_new
Beiträge: 1214
Registriert: 27.11.2016 18:13
Wohnort: Erzgebirge

Re: Nachlauf nach schnellen Mausklicks

Beitrag von ccode_new »

@Mijikai:

Hä?
PureBasics WindowedScreen Maus ist ziemlich nutzlos eine andere Option wäre z.B. GetCursorPos_().
Dieser Meinung bin ich nicht.

Dabei wäre der Bezugspunkt und der zu erfassende Mausbereich interessant.
Nur Screen-Koordinaten, nur Desktop-Koordinaten, nur Fenster-Koordinaten, etc. ...
Betriebssysteme: div. Windows, Linux, Unix - Systeme

no Keyboard, press any key
no mouse, you need a cat
Benutzeravatar
Mijikai
Beiträge: 754
Registriert: 25.09.2016 01:42

Re: Nachlauf nach schnellen Mausklicks

Beitrag von Mijikai »

WindowedScreen Maus Pos:

Code: Alles auswählen

Procedure.i MousePos(Hwnd.i,*Pos.POINT)
  If GetCursorPos_(*Pos);<- dektop coord
    ProcedureReturn Bool(ScreenToClient_(Hwnd,*Pos) <> #Null);<- client coord
  EndIf
  ProcedureReturn #False
EndProcedure
ccode_new
Beiträge: 1214
Registriert: 27.11.2016 18:13
Wohnort: Erzgebirge

Re: Nachlauf nach schnellen Mausklicks

Beitrag von ccode_new »

@Mijikai:

Und warum hast du jetzt eine WindowMouseXY Funktion nachgebaut?

WindowMouseX und WindowMouseY gibt es doch schon.
(Und die funktionieren auch noch plattformübergreifend)
Betriebssysteme: div. Windows, Linux, Unix - Systeme

no Keyboard, press any key
no mouse, you need a cat
Antworten