Voici un prg de démonstration pour permettre d’utiliser la souris aussi bien :
dans une zone définie par openwindow(…)
que dans une zone définie par openwindowedscreen(…)
Tout d’abord merci à Falsam LSI Demivec etc..
Les contraintes que je me suis imposé sont :
- Avoir une zone window plus grande que la zone de jeu.
- Pouvoir utiliser la souris aussi facilement dans l’une ou l’autre des deux zones.
- Pouvoir déplacer l’ensemble sans altérer le fonctionnement défini ci-dessus.
- Cliquer dans une zone de jeu et pouvoir repérer la touche ou zone restreinte.
- Cliquer sur un bouton gadget de la zone window et intercepter ce clic.
Pour simplifier la programmation j’ai laissé deux cotés de la zone de jeu communs aux cotés de la zone window (Coté haut et coté gauche)
Comme je suis un bridgeur j’ai pris comme exemple l’utilisation d’une boite d’enchères.
Ce prg n’est pas terminé il ne peut servir que comme un exemple ou pour continuer les
Essais (J’ai laissé des infos inutiles au bon fonctionnement du PRG mais qui ne m’ont pas satisfait,
Ou qui ne fonctionnent pas suivant la doc :
Exemples :
examinemouse() qui ne change d’état que lorsqu’on sort d’une zone pour rentrer dans l’autre
Resultat = ExamineMouse() Description Met à jour l'état de la souris.
Valeur de retour Renvoie une valeur non nulle si l'état de la souris a changé, zéro sinon ?????
MouseDeltaX et MouseDeltaY que je n'ai pas pu les utiliser (ne fonctionne pas dans mon cas)
Dans le Thread j'ai laissé une possibilité de désactiver le thread (phase d'essai en prg autonome)
placer le curseur de la souris en haut en gauche moins de 1 pixel de 0,0
ou en bas à droite (curseur proche de MAXx+MAXy)
Donc pour compiler ce PRG n’oublier pas l’option ‘activer la gestion des threads ‘.
Et éviter avant de placer le curseur sur l’une des zones d’aller mettre le curseur en haut en gauche
Ou en bas à droite (vous désactivez le thread) ont peut retirer cette option dans le thread.
Code : Tout sélectionner
Structure x
s.i ; type de sprite
x.i ; position x
y.i ; position y
a.i ; varie de 128 à 255
EndStructure
Structure inforect
StructureUnion
info.rect
infoi.l[4]
EndStructureUnion
EndStructure
; Global fg,f1,f2,Dim m(60),ct,tf,ti,ns,li,i,ev,mr,ac=-1,bs,bo,Dim t_sp.x(7,8)
Global Dim m(60),ev,Dim t_sp.x(7,8)
Global rcwin.rect,RCpaint.RECT,rcClip.RECT
Enumeration
#image
#cursor
#mainform
#scr_x=0
#scr_Y=0
#scr_la=322
#scr_Ha=276
#scr_laP=20
#scr_HaP=46
#bout
#grs=210
EndEnumeration
; carte$="1T 2T 3T 4T 5
Procedure posrect(*POSRC.rect) ; Shared ou Global (voir aussi: Protected et Static).
Protected hwnd.l,DX.l,DY.l
Shared MAXx.l,MAXy.l
nb_d=ExamineDesktops()
MAXx=DesktopWidth(0)
MAXy=DesktopHeight(0)
Repeat
Delay(10)
DX=DesktopMouseX()
DY=DesktopMouseY()
hwnd=WindowFromPoint_(DX | DY<<32)
GetWindowRect_(hWnd,Size.RECT)
CopyMemory(size,*posrc,SizeOf(rect))
Until dx+dy<2 Or (DX+DY+2)=>(MAXx+maxy) ; j'ai laissé cette possibilité pour déactiver le thread (phase d'essai en prg autonome)
; placer le curseur de la souris en haut en gauche mois de 1 pixel de 0,0
; ou en bas à droite (curseur proche de MAXx+MAXy)
EndProcedure
Macro INFO_RECT
; ********************** cette Macro m'a servi pour les essais de toutes ces commandes ****************************
; ExamineMouse ; ne change d'état que lorsque l'on sort d'une zone (à voir ou à revoir)
; InitMouse
; MouseButton
; MouseDeltaX ; Je n'ai pas pu les utiliser ne fonctionne pas
; MouseDeltaY ; " " "
; MouseLocate
; MouseWheel ; pas tester je n'ai pas ici d'utilisation
; MouseX
; MouseY
; ReleaseMouse
WWIN=WindowWidth(#mainform,#PB_Window_InnerCoordinate)
WHIN=WindowHeight(#mainform,#PB_Window_InnerCoordinate)
WWOUT=WindowWidth(#mainform,#PB_Window_FrameCoordinate)
WHOUT=WindowHeight(#mainform,#PB_Window_FrameCoordinate)
WMx=WindowMouseX(#mainform)
WMy=WindowMouseY(#mainform)
x=MouseX()
y=MouseY()
MBl=MouseButton(#PB_MouseButton_Left)
MBR=MouseButton(#PB_MouseButton_Right)
MBM=MouseButton(#PB_MouseButton_Middle)
MDX=MouseDeltaX()
MDY=MouseDeltaY()
GetCursorPos_(cursorpos.POINT) ; même résultat que desktopmousex ou y
DX=DesktopMouseX()
DY=DesktopMouseY()
; ***************** Position des fenêtres *******************************
GetWindowRect_(hwnd,@rcwin) ; rectangle de la fenêtre ouverte par openwindow() valable même après déplacement
GetClipCursor_(@rcClip) ; Rectangle de toute la surface de l"écran disponible pour le curseur à ce moment. Valable même après déplacement
Define RCwinold.rect
If (POSRC1\right+#scr_laP)=<rcwin\right
CopyMemory(POSRC1,RCpaint,SizeOf(rect))
EndIf
POS_x=WMx/H_sp
pos_y=WMy/H_sp
EndMacro
;***************************************************************************************************************************************
Macro MOUSE_IN_OUT(w)
INFO_RECT
MouseLocate(WMx,WMy)
If Wmx>0 And DY-1>rcpaint\top And DY+1<rcpaint\bottom And DX-1>rcpaint\left And DX+1<rcpaint\right
ReleaseMouse(0)
IN_OUT=1
; Debug "**************************************************************"+_n(IN_OUT)
Else
IN_OUT=0
ReleaseMouse(1)
; Debug "**************************************************************"+_n(IN_OUT)
EndIf
CopyMemory(rcwin,RCwinold.rect,SizeOf(rect))
EndMacro
;***************************************************************************************************************************************
InitSprite()
InitKeyboard()
InitMouse()
UsePNGImageDecoder()
;******************************** ouverture de window et de sreen *********************************************************
hWnd=OpenWindow(#mainform,#scr_x,#scr_Y,#scr_la+#scr_laP,#scr_Ha+#scr_Hap,"Boite_ENCH",13107201)
OpenWindowedScreen(WindowID(#mainform),#scr_x,#scr_Y,#scr_la,#scr_Ha,0,0,0,#PB_Screen_NoSynchronization); #PB_Screen_NoSynchronization
; OpenWindowedScreen(WindowID(#mainform),0,0,322+8,276,0,0,0,#PB_Screen_WaitSynchronization); #PB_Screen_NoSynchronization
; OpenWindowedScreen(WindowID(#mainform),0,0,322+8,276,0,0,0,#PB_Screen_NoSynchronization); #PB_Screen_NoSynchronization
; OpenWindowedScreen(WindowID(#mainform),0,0,322+8,276,0,0,0,#PB_Screen_SmartSynchronization); #PB_Screen_SmartSynchronization
GetClipCursor_(@rcOldClip) ; Rectangle de toute la surface de l"écran
GetWindowRect_(hwnd,@rcwin) ; rectangle de la fenêtre ouverte par openwindow()
;****************************** Positionne le bouton gadget **********************************************************
Resultat=ButtonGadget(#bout,#scr_la-30,#scr_Ha+10,40,25,"OK")
;*****************************************************************************************************************
ClearScreen(RGB(100,100,100))
;*************************************** Chargement des sprites cartes et curseur **************************************************************************************
;*************************************** Chargement des sprites cartes et curseur **************************************************************************************
If CatchSprite(#image,?BOITIER)=0
MessageRequester("Erreur","A la création du Boitier")
EndIf
H_sp=SpriteHeight(#image)
L_sp=SpriteWidth(#image)
; DisplayTransparentSprite(#image,0,0)
FlipBuffers()
nb_sp=l_sp/h_sp
FlipBuffers()
ExamineKeyboard()
ExamineMouse()
;)************* Chargement des sprites*************************************************************************
For i=0 To nb_sp-1
; m(i)=LoadSprite(-1,"bidsA_fr.bmp",8)
m(i)=CatchSprite(-1,?BOITIER)
b_max=38
; If i<b_max
ClipSprite(m(i),i*h_sp,0,h_sp,h_sp)
PY=i/7
PX=I%7
t_sp(PY,PX)\s=m(i)
t_sp(PY,PX)\x=h_sp*PX
t_sp(PY,PX)\y=PY*46
t_sp(PY,PX)\a=255
Next
;*************************************** Chargement du curseur pour la zone Sreen **************************
If CatchSprite(#cursor,?Cursor)=0
MessageRequester("Erreur","A la création du curseur")
EndIf
FlipBuffers()
ExamineKeyboard()
ExamineMouse()
FlipBuffers()
;***************** Appel de la procédure permettant de connaitre les dimensions du rectangle réservé au sprites *****************************************************
;***************** Appel de la procédure permettant de connaitre les dimensions du rectangle réservé au sprites *****************************************************
thread1=CreateThread(@POSRECT(),POSRC1.rect) ; Crée le thread
; Delay(10)
;***************************************** boucle des événements *****************************************
Repeat
;************************* deuxième boucle pour les événement dans la zone openwindow ****************************************
Repeat
ev=WindowEvent()
If ev=#PB_Event_Gadget
If EventGadget()=#bout
StartDrawing(WindowOutput(#mainform))
Resultat=DrawText(200,300,"Bout_Click"); [, CouleurTexte [, CouleurFond]])
Resultat=DrawText(10,300,Space(40),RGB(#grs,#grs,#grs),RGB(#grs,#grs,#grs))
StopDrawing()
EndIf
EndIf:
If ev=#PB_Event_CloseWindow
End
EndIf
Until ev=0
;************************** suite pour la boucle des événements de la zone définie dans openwindowedscreen ********************
ShowCursor_(1)
FlipBuffers()
ExamineKeyboard()
ExamineMouse()
ClearScreen(RGB(100,100,100))
For PX=0 To 6
For PY=0 To 5
If Not (px=6 And py=5)
DisplayTransparentSprite(t_sp(Py,Px)\s,t_sp(Py,Px)\x,t_sp(Py,Py)\Y,190);, RGBA(128,128,128,0))
EndIf
Next
Next
MOUSE_IN_OUT(#mainform)
If IN_OUT
DisplayTransparentSprite(#cursor,MouseX(),MouseY(),255)
EndIf
; INFO_RECT
If pos_x<7 And pos_y<6 And x>0 And (pos_x*pos_y)<>30
DisplayTransparentSprite(t_sp(POS_y,POS_x)\s,t_sp(Pos_y,Pos_x)\x+3,t_sp(Pos_y,Pos_y)\Y+3,255);,RGB(10,10,10))
EndIf
If MBL=1
StartDrawing(WindowOutput(#mainform))
; Resultat=DrawText(10,300,_n(pos_x)+_n(pos_y)); [, CouleurTexte [, CouleurFond]])
Resultat=DrawText(10,300,"pos_x="+Str(pos_x)+", pos_y="+Str(pos_y)); [, CouleurTexte [, CouleurFond]])
DrawText(200,300,Space(20),RGB(#grs,#grs,#grs),RGB(#grs,#grs,#grs))
StopDrawing()
EndIf
FlipBuffers()
Until KeyboardPushed(1);
;********************************************************************************************************************************
;********************************************************************************************************************************
DataSection
Cursor:
Data.q $0A1A0A0D474E5089,$524448490D000000,$170000000F000000,$1553D40000000608,$41444969000000BC
Data.q $000A4193C5CB3854,$FFF3CF897D040820,$05BA9616043C283F,$36E890D099AA782D,$502C30C1A444DCCC
Data.q $5C2C090C06090350,$C169C1E04970AC16,$E08828704E094E0E,$6BCF51056F0320A3,$7B0D81A19FEF024D
Data.q $1297AF02D317B619,$0AEBBF985B3E1DEC,$8FFC01D32F45AEBF,$00002F8AE621C09C,$42AE444E45490000
Data.q $0000000000008260
BOITIER:
Data.q $0A1A0A0D474E5089,$524448490D000000,$2E0000005E070000,$BBCB880000000608,$4D4167040000002C,$61FC0B8FB1000041
Data.q $5845741A00000005,$72617774666F5374,$2E746E6961500065,$352E33762054454E,$00A172F43030312E,$78544144499A6700
Data.q $755724B407DDED5E,$6C11C609B1A27DF6,$1360C603649B62FC,$CE4423636C06C18C,$59C9922888049318,$204842488A042128
Data.q $CE73940501405024,$6C24810146946B39,$DF7D6FDEBD7DF96C,$A867355FEDF55AF2,$AABBB7BEAEEEA9A9,$EEDCF56AB5E9CCEE
Data.q $A9F4D576BB5DAEEA,$0F01E2DF7D9E79FF,$033903391F93EE28,$0339033903390339,$0339033903390339,$0339033903390339
Data.q $0339033903390339,$0339033903390339,$0339033903390339,$7F97E7FE7FE0676B,$312B3B232B01E03F,$AF0251E9D99195E6
Data.q $206B9035C839C979,$06B9035C81AE40D7,$6B9035C81AE40D72,$B9035C81AE40D720,$9035C81AE40D7206,$035C81AE40D7206B
Data.q $35C81AE40D7206B9,$F508A7DCFB81A950,$31EAD4C295972FE2,$8A6D62FC5257BFA7,$0B8CFB8FDE036BDB,$B2F7D172FE5FCBEE
Data.q $B8E7EDB31DF5C494,$36EF9CEF9C9DADBB,$5C72F8A4EA52FDE7,$DF481FF2965EFBC0,$C9DADBBB8E7EDB31,$A52FDE736EF9CEF9
Data.q $71CEFE3E8B83EA4E,$F9C831F45BC03DAF,$9D501B63536EF9CE,$4B2EBD510E6654C4,$E39FB6CC77D55DF9,$DBBE73BE726EB6EE
Data.q $7E6D1793A94BF79C,$18F6EEE392F7D174,$37E739B77CE77CE4,$E8B2FF2BFFB93AA4,$FBBF753FBE4A597B,$8FFEFB894B2F7D15
Data.q $4DDC56B2F7D16579,$F6FC556878FAA3E3,$90AC574C6D32D21D,$1D78B8C263F7D0C7,$53DCF73DC6009AF0,$39A09CDA58A4BDF4
Data.q $E7E5EF9CAF1FE5EE,$F9B87BE726739670,$F4516D767F5B035E,$5A6706E6D29824BD,$6DDDC73F6D98EFB7,$EF39B77CE77CE4ED
Data.q $38DAF6E3F493A967,$E3999199665EFB9F,$0E7E5EF9CAF1FE5E,$EF9B07BE72673967,$EFA292E4B92E3004,$5EE39C5C66D2C525
Data.q $670E7E5EF9CAF1FE,$04EF9B87BE726739,$5EFA29FFD9FB6E5E,$E5EE3983AE6D2C52,$9670E7E5EF9CAF1F,$B04EF9B87BE72673
Data.q $497BE8A87E8781F5,$66DAD8260EB9B4B1,$B6092C4B33AF45DD,$292F7D153775EFDE,$121D76A719F93596,$215CB81C658A6D6C
Data.q $865F7571952D75DC,$2BC0B5FB7DC37F16,$69DD6AEA380B3410,$CE56017CF71CD22A,$F9C93CED39F37CF7,$6006D8604BBE561E
Data.q $7B8E691534CEBD74,$9CF9BE7BE72DC7BE,$7EDF2B0F7CE4BE76,$9A775ABA8E02CECC,$F396E3DF3DC72A7A,$BE724F3B4E7CDF3D
Data.q $D4701668206F9507,$F9EE39A454D3BAD5,$DA73E6F9EF9CAC02,$41037CAC3DF39279,$24D715D6AEA380B3,$F9CAC02F9EE39048
Data.q $DF39279DA73E6F9E,$6D6C37D9D037CAC3,$CE81075D26B8BEDA,$B8B4FF7CA5D4C345,$C5F6D36B61BECE80,$7C535D0E877F7635
Data.q $3C5C72E06875F04D,$78125D7C1AF6292B,$F8FF1F8ABBAEEBBD,$7DDC59DE779DC5C7,$F4FFEB5AC133DDF7,$DF6FF16B3F2D3FA7
Data.q $6DA54C072D4E0937,$3FDC45851DC771DD,$9E62DC5C564FC9F9,$6AEF9D761CA6A796,$069EB1EAEE2DB60C,$A3B69DC55DFBD321
Data.q $B8ABBD6A6D2DA64E,$7AEFAE43D75279EB,$DEA6DCF4989AA42D,$ABEEF5E0D6EF9117,$1727E28B0BCEE28A,$EE4D06CCD73DC517
Data.q $173E22BAEE28BAB9,$60397F7A5480D3CF,$E28BF3E3F9C4B6CA,$A7E28A8BEE22F38E,$4BD3FEC5B8ACAD97,$E52CE7DB2BEEE28B
Data.q $8B6DA98F577CEBAE,$DE63DB458E2DFE5B,$36966D5C57EADC55,$AEABE3F5DC55DB35,$B54BBCECF2DF5C87,$DF222FBD4DB9E6D0
Data.q $30BC1D7155E6016D,$FB135F6D471783AE,$80E5FDF72D2C0D37,$5C7E79C5C6A22BA9,$2F5145E0EB8BCE4B,$FD8B714958F1C597
Data.q $E5C1D7195C9EB8D2,$EAEF9397E7CDB2E6,$BFCB7141D71D5FF7,$B3AEA5FDB368B1C5,$F62CDAB881D5B894,$E252DCFA4DB1A967
Data.q $21EBABB12627DF4E,$B42D52EF3B3CB7D7,$5B77C94FBD545E79,$E338CF035C617980,$BADD8ACEB3ACE28C,$282E0B82F6B04978
Data.q $1B65301CBF3E6D2C,$4ED38BD3F4FD3CE2,$738B33CCF338AD3B,$59809B76D5B73DCF,$29CE739CFD8B711F,$ABBF7B8DE20D35F3
Data.q $714DCE28BFDBABB8,$1ACF9EB8FCE5BFCB,$B621B67F56E3A2FF,$17F8DB4FEC758B49,$D756E24C438A771D,$5AA5DE76796FAE43
Data.q $54CF67D9F67CF698,$FAB9805B77CCF3EF,$167FE77F5C5DFFEE,$FF9EF5B8B7BCEEAB,$7CDDAF1D5DAC0EBD,$7FC77B5FEF957FD7
Data.q $A6E2CFFE3F75CB94,$0EB67C4B7157FE9F,$D72DEE4FC376BCA2,$C52A6039675F5CF7,$638B711558E2FB61,$6EBA7F1BF62DC525
Data.q $B1EAEF94871E525E,$51638B571DB89715,$686207513AEFBF7F,$BFDF290FF11FD8B3,$BBCECF2DF5D8658C,$AE81D7AB9ED30B54
Data.q $66DC7B7CEBC19DF3,$97824AF115A3DAF0,$5E071F6292BB0075,$31EDFB7EDE8D5167,$B5560DB1FCAF3FA6,$F1BC6E8703D66985
Data.q $B983DC657467B8C6,$6F5B8AEBBAEEB8B4,$A75F071D082A75BD,$C9839737CDF37DC5,$49B8DAF443F4C834,$B8CFABF754EA06D1
Data.q $A7936950DC757EC5,$C1F6EAEE3AE8B1FA,$6E5BFCACA6E2ABC0,$DC55D2B5D6A6E9BA,$B1169393511AB0C0,$53B8ABBD6AD38483
Data.q $3111B8FA6E7B691C,$2D52EF39BE76FAD4,$76DDCA6E2CBE7B4C,$057435BBE79D6DDB,$14EFE06E3738EE7C,$ECF9A60D9AF79337
Data.q $3D1F8E9B8A282F8F,$72C9B7BEC97085B7,$E28A5396F5DA9A78,$E28B6DECE28B3D92,$E28A37C17D43E8F4,$7DC67D988766C3BA
Data.q $DB8A2A0E480136D6,$EAEF91F7580D9CCE,$FF28C1FEAF030531,$CABBCC7F684E9B96,$E5A4E4D446A81837,$76CD5A70D04693E6
Data.q $DDC2EF6D238A7715,$D52EF3AA20DF5D86,$DB8A29F7CBE7B4C2,$E02BA16DDF3EEECF,$B83AE29D8B0E3713,$6012D30D17075C57
Data.q $D44A7DC5A64B071A,$C1D71B6E0E719EF8,$C3C1D711BE297870,$DB01D4EA0A2C78E2,$C50783AE26DEE23C,$C5C30FC72A6E3075
Data.q $301EFD5DC579BFC0,$09CB7F941D7107F0,$E77EACB8045C1D71,$71F1C8D50306F9AC,$B041D7149CB49C1D,$238A771ACFF15170
Data.q $7075C5BBDC6537C6,$5AA5DE737CEDF5C8,$3A03075C4FBCF698,$F858D5D0B6EF9D74,$522EDBB6ED9BA894,$F938EF9A6092DBBF
Data.q $84A6398E638B93E4,$2D3AF838D6606D31,$D8B6FB5C46F8DB6E,$B15CFB9F73E28B62,$E0781E0717DBF6FD,$1B711F5F1AA7504C
Data.q $3C4E2BDF7BEF7FFB,$57711F5FE099C4F1,$65BEEFBBEE0609B7,$63AB64791E472DFE,$711C8D4FEADC65DD,$2A3A8EA3971311C4
Data.q $9D55DFC75BB3CB4E,$61D8761DF6210098,$B54BBCEEBC6DF5D0,$61CA4EB8CF79ED30,$A16D27AF3CC36B9B,$CFC3CC004D74F02B
Data.q $C0EBEDC97B1C5D5F,$6FFCDC972683EF34,$0E5CAAB29CFBFBE5,$5A7F6BACE2E6FB3E,$57AF01D7CFFB7D5C,$51DE97F1C5EFFADC
Data.q $FF9789C5EDF1731C,$DC5A75F0719D71B8,$741EF7E56FF2DE97,$38A1BF4FF7C54DF6,$ABBBAFB38B5B82E2,$BACF03EE350F0011
Data.q $DD57149FEAE338A9,$90F5C1D5FA12F3F6,$71169F7206C6AEE2,$56B67E9BE2E5BFCB,$1723540C1B8843EC,$EF167A8B89B3F8DD
Data.q $2E8FFB17941BEAD0,$F385326DF5D075BC,$A075EAE7B4C2D52E,$D80A4D742A193ACB,$4A29737069D7AA71,$55437C5C667E79D5
Data.q $A575EAA36C0526BB,$34E5E092B9C55DA8,$FDBEE56EA5743AF0,$CF40998034EBC51A,$1E877D1FCBABD5EA,$8C15A13937DC687A
Data.q $FCBF2F67D68059F2,$187EEC1FA387F2F2,$7104996408D00EFB,$96EC80380A5782DB,$339597D509896E5B,$D98BE418B0EB6D90
Data.q $AFEBFAF36DF6C720,$E210EC2093B0152F,$9580053371F1FB16,$F71576000D36FB3F,$A1B86E1BCD0038B8,$8F2A3F47E8FF141C
Data.q $889D53B8943B0833,$598CC5B8C4D55E51,$AB7CEBBDE5260D13,$B8AF566035426BDB,$0D26372DF5A878E5,$2D5B0FE1FC3FC300
Data.q $54E32F59747D1F47,$EB7AF06B77CA8BF5,$BE87145DBF5C01E9,$05183B58FC4E28B1,$CA771015C02F0112,$D6E28B7DF2E28A67
Data.q $CCAE1D3E5EDC0233,$08C9727EEB295E02,$4714556E673781A6,$FC516B7F0E28B7BF,$C51577A3F1454DF0,$5DA0DC5AA50E9FC9
Data.q $6EB292760291A3F5,$FCA9B8E6F61F7108,$4EA7D5B7963C11D1,$9491038F715759CF,$5189F2351B1E37AE,$069FB1D1D7F84FCE
Data.q $CF1889D53B8ABB2E,$6FA72DC726A8CAFE,$ABBDE7271DAA2A1E,$61FDAFCE28FE53B8,$0F1CB71465D8244C,$B19C0D26E39DBEB5
Data.q $FD1CB7697F874045,$BEAAA56C8097A8BE,$98034F7CA8BF1D41,$5C76F8BD35C4F409,$75C58FC1D718DF07,$B28D40296A309170
Data.q $D9BC0D3096AF7E2E,$5BE0EB8DEF83AE2A,$2BBE0EB8A6F83AE3,$E2AA041D71D3E5EA,$DB0848B82952D0FF,$1D71CDFB8A4DA816
Data.q $81B8E3C1075C68FC,$C00145C1D71A9C5F,$63D74A79F4EE82E5,$F9CA0EB889F31AE3,$DC4A1D841075C6BF,$3F075C4AFC62DF29
Data.q $1D71E6CB7192D713,$DB7BCC8B83AE31DC,$56DF8F38A3F9493A,$0F1CB7141D712EC5,$081A4E530C63BEB5,$2CDB075C4BFC57E8
Data.q $2FAE06C9A0EB8BEF,$00D3DF26306C988B,$BEEFBB67C6200266,$D0F8B6BED7DAF17B,$C61DF28C13343E87,$9B8C8B00EF974020
Data.q $4744D5E0B695C0DA,$C5F8BE6F00DB4B2A,$44A33BE77CEF162F,$DE2FAFF5FEBC54DE,$E563FBE5C5B7B6F6,$D82952E0F83E0FB6
Data.q $FF8C6FDC67DA4946,$DB1E12B36CDB3673,$2EB3936DDCE363A7,$FE78C0C70E2E3DF2,$BFB7F6F148F91F23,$A77128761015ACBD
Data.q $1FE3FC7EBCA3113A,$BE2D9FB3F67CBB1F,$EBA2FBCAB6AFD5FA,$DFF7FD9EFDCFE524,$2DC65EBFD7FAF8BF,$E79C14F76FAD43C7
Data.q $E1BC378A17C2F85F,$BD5D75C57796AD0D,$F7CEF3C69493DD80,$DC7A481A80998034,$B169721CDB17B7A5,$E0555181AED709E7
Data.q $DE787E2F7FEAF976,$EBFC515E470EC52D,$B0BFF617CB96E7DE,$160B184A6BB8FDD8,$62D3F35C678FD555,$F628AE23FB7758FB
Data.q $59EE1B82E2BAF13A,$407594AF05B62E07,$CE039BC0D30165CD,$ED8AABA8F9D8B1BC,$9697A1CAF8BCBB0E,$75504BEBE4E77D31
Data.q $D8526C054BBBAADE,$62B2F0FEAFEE350E,$B149F1E129AFE38F,$E8D9C7BE4A1CE24F,$F1E53DE3785EBA52,$5A8ADF165747F1DC
Data.q $3113AA7712876101,$E31351DEF6C020FE,$29CF5943769FEF96,$B9C51FCA49D67DEF,$5B8CBAB05C470C89,$D8A28537DF5A878E
Data.q $36D8B1B8CEFD81A4,$1557D1CBB2CDB96A,$AEF1819738BD47A7,$9AED57CEBC1927AE,$0EBD5203AF066DE0,$E878D0EAF8A6601D
Data.q $98198C1ABC072F71,$68006103141DF019,$2287EAB03EF34C1A,$199CAD7DAFB5F2F0,$A0380E03E7BB47EC,$2BC16D6E14932C84
Data.q $663069B199900A88,$BF6FD8C4A15EE106,$F7BD8A0FCF3EE2FD,$B559DC16E0CD7BDE,$06DC42187DC4D56A,$FDF88B150DC4BB12
Data.q $171EE2AEF3969F60,$F00CDEE456AEC807,$250E5C1CA4390E43,$B1EC7BC2062754EE,$1AA7F116E3935947,$C06936F9D77F171D
Data.q $5B8CB37E6FCDF4B9,$EDF9C6E5BEB50C5D,$D459B7166E36DC1C,$632134DC694B503A,$B5DC2F5E0D6EF951,$28FEBD285D790E28
Data.q $0D3C396466BE086E,$00B8F1B9401F79A6,$08CEFDAF8A291F88,$2CDB553B47BC5D12,$F6EE7AE8320D95E0,$109EBB28667B44A1
Data.q $371C5FFD8A2ACFCF,$28B6FF77C137A3BC,$8A0FE1D8A2B3FF76,$C9F44379A9B898E2,$DEE210C3EDC75F01,$45A371F9637125FF
Data.q $F715779CB4E020FC,$BBF722B57A0038B8,$7EC0461BFD40393F,$C515AF93A9AF7128,$DD96E3935462FEB7,$38326CBE0714589E
Data.q $439D1A8EABDF3AEE,$CDFF7BDC51F3FCDF,$4703AAF5729BEB70,$F2ECB76F0FB6E0E7,$6E34A4CCA1B500D8,$D782DBBE545EA8B2
Data.q $3FC1D7175FB6A35D,$00083AE26BE0EB8A,$8A60B6FEF9A61A2D,$99E2AE8A1AE8320D,$159F075C427C1D71,$AE32BC18E38BE2E7
Data.q $EB8B3F91D71B7F83,$DF89DC1075C41FE0,$23CC3ED45D7C2584,$0D7171F075C497EE,$F3BC545C041F88B4,$27FB915ABD00AF02
Data.q $7EC097346E3075C7,$C552DF893AA77128,$325AE277F075C45F,$D7165F075C62796E,$F29275B6E38245C1,$71E7FAD04B4B9317
Data.q $A87075C4DFF7141D,$1CF2AF2A1AB94DF5,$8D8F2CDB075C787C,$5422F1A52F0520EB,$5FABE580AF04CBF5,$8B0FF0FF0FE2EAFD
Data.q $B6DF84E515E2BC57,$B1787E1F877ACD30,$C63795FCC75BD6F5,$E7CDBAD8E535F465,$AFD7418D135782DB,$71E9FD3FA782A4C4
Data.q $A33C678CF15C78E9,$97E528A7FA7FA7F8,$3D278B73EE7DCF15,$62A8F51EA3C549E9,$EBE016C72D374DD3,$7A2F45FB8CFA18B4
Data.q $DDF88B0BA8D8F151,$71D17F7A6F16984F,$FF722B57A0038B8F,$50FB60D6388EB8C4,$3C2AB84DB2754EE2,$7FB7FB7E2D4FA9F5
Data.q $C5A7FA7FA7F2EC7B,$95771C0ADC6F1BC6,$FF8B3FCC4019F76F,$83D7FD7FD7FEC5D3,$60C989F7A6136FAD,$F2CDB035C787C1CE
Data.q $3FE7FCF8A63CC798,$77988C4D26098A5F,$BA314323D782DBBE,$94F1D96F1497C1D5,$EB872D2E2E838B62,$151701E2FB600DF0
Data.q $1F5BE5E2D4F9DF6F,$B5E2F8E6DCAF2E57,$DFD739ECFCA13D5F,$6F3B0EE7D366AA55,$FFD72E4FEDA6F175,$36B55DA714177EDC
Data.q $1906CAF05B5EB3A0,$F6CD8A5BDCF43D74,$1F15A72EC778AB3C,$C1FF377BF2ECF3DC,$94676EF77E0425C5,$BE0BC80FCE7703DB
Data.q $6B407CFEE350C6DA,$BCE6AA841F88B1B9,$AD5E805781C7B8CF,$1D6C5E9DBBA6FDC8,$4EA9DC4A1FB01EA0,$9C7B7DE2E6E7390E
Data.q $EF2EC713BB7EBC59,$1E38139EB2F4F5DA,$CC404AF81A4DBE42,$BF47F719467EEEF7,$39DDCA9BEB60CE73,$B56F8E57F57C1CED
Data.q $7C694EA142FDF5A8,$C1927AECEE3F15F2,$5E2BAF7ED5AF066B,$DCC03A1D7AA4DAF1,$40662069402BC090,$4E9D58A30167B068
Data.q $71DC7AE367DE6983,$E02EAD44143095C7,$ABBEE3A456269B11,$7D8FDB34B4A5782D,$A3F672ADF5BEB7CB,$2873058C104336EF
Data.q $6C4F7914D87E0D03,$1F92E0DC55DBB6E3,$EDB8D59583307ED2,$BA3F6E26B830750F,$DF6DC7B8EFB75A93,$D853BBC566B359CC
Data.q $5D2B569B5E828210,$54E33518A5781BE5,$D492D368D52AE08C,$79DB8CBB92AC93C6,$1CB77EEFDDFB8542,$936FAD43DFD98AF4
Data.q $BD8E5C63F5CEE433,$FC9012450AB65F6E,$9AD81F3CA77CEF9D,$E0A9EF9517D22937,$47ABD07B7964A015,$2F01C514879B7330
Data.q $FB2902860C196F6D,$604E598C48DC7DFE,$ABFEA37EE5747016,$B75AF3EB8EC57AD3,$ADFAC82714B4A61A,$9FA9FD66E3188CBF
Data.q $30EE580357E3550F,$4551E1DDD6A563B2,$91B9F1380C7FBDF1,$54DC55D82038ECC5,$5608DB7F0F906C81,$047DBC473FB6E356
Data.q $1BAD427BD47DC55D,$1EE2AEEF41279C37,$DDE2BA94B2563797,$99B2355E6EA30FE9,$92629B8ABB5E069D,$6EFC208F8FC4F462
Data.q $1B50BCDA6EBC8A4F,$2C9275DF6020063B,$F0D47E79F770A97B,$AD03B9552E628C3F,$5ED4313E6E1B136F,$D86D707DB1CF8F5B
Data.q $7C516EFF240257EA,$4839AD81F3A3B9E7,$781A64EAA2FBCF5E,$61286C06DE592805,$0EB8D2F83AE243E6,$18163034C3AD3AB2
Data.q $7C10B01633EA2762,$5ED52D159306AAA9,$D467E3F12B942F5A,$5A5204159B1C12AF,$083AE32FEA102EFA,$F51F4BB8CB8DC65A
Data.q $7006EB50E602751E,$59BB6183AE31FE28,$0553719F4EDAB55A,$AB2B095A250E41B2,$55D094F2509FDB71,$E826FCA0EB89EFDC
Data.q $4F63AA40E3DC67DD,$E2ABC55380DE2BA9,$4DC67DFAEAB5E83A,$C212A92A1A314CE5,$1B50BCD5020A8407,$2C9275DF6020063B
Data.q $7FC1D71F9F70A97B,$FAD43DFDB8A0EB88,$E38D20EEEFC79E76,$BF83AE3EFE1F6C73,$8060EB8DDFC1D712,$D05AEE6B607CF2B5
Data.q $DCA015E29A64F5D1,$890F9982B60D723C,$AF05B728038BE0EB,$63EFEDEA83BEA5C6,$4E713DEE402CC17F,$592738A815131AEF
Data.q $431A9826AF05B6B9,$D3DA7B4FD1AE34BF,$27E4F8A8DA368D8A,$44E596E5B96C593F,$FBFFBFBAD4C37648,$71CE633DE1C65FBF
Data.q $8366324DB8ABB040,$71AB2B068AA12FFC,$15740535C7379FDB,$5DF72936F02F0537,$EB8382266F2E3DC5,$FCBC5D1FA3F47DE2
Data.q $AF034F87272F2FE5,$87C3DEE5CC6DC55D,$4DC7ABC212E1FC3F,$0C7636A171A4D936,$2F65924EBBE88FDC,$BC1793A4C4DFEE15
Data.q $7D6A1EFECC6505E0,$B1A5F4BE97F0F1A7,$AFFAEB8FCF0FB639,$B3CD426277F075C4,$0ADF707CF2ECFD9F,$0D3275517DE7AF24
Data.q $F153799E079402BC,$A6022BE6609780E5,$9AEAF54B0B80E17E,$520551F53D01A35E,$FBDF5E292AC04DC1,$E7BBFC7CCFCB33CD
Data.q $A362A95B745D4716,$300AAEA7BEFEB534,$C3B62482571ECE0B,$B25A52BC16D7A075,$7C0F8A8BC0FCDDE6,$A0F8EACB6952ACEB
Data.q $EB530DD92C063AB0,$77C5F9DEFE9FAF02,$BD3DD560B8BEB94F,$C3BB7906C8154DC7,$F3FB6E3565612F2F,$9DEE29732F2E23F5
Data.q $B9FEA6EB54B2BA8E,$4B2565781C7BE67D,$AD78DD5E905E2BA9,$147B513A803A91EC,$A6E3196D789E7BA3,$B1B50B4DA354AB51
Data.q $964EFAEFB7D2C063,$7BED4FA5CEB854BD,$BEB10EE55273197E,$EA959FE6E4B86C4D,$3DF727FAF63971F3,$C901AEC796C978AF
Data.q $FD4F6145F99D8587,$8324F5D5D14498C3,$99081D78335E0CD7,$410158ECAF155F5D,$D741333333FC04E0,$C83D07E4582BC159
Data.q $24ED151CC0AF0755,$01A8178ABC06D730,$B0EAA30678CD5984,$9980FEC760558FCF,$B6E22EC101C77BEC,$150EDFB814AA966D
Data.q $00BDB64EE3545C80,$37A1E3B180CB19A0,$89920FB7D771DF69,$E02CEF14A0376417,$DD863D6BAB7CABB5,$141A63F37190305C
Data.q $C82DCB71577EF49E,$FAA6E381E8025CEA,$94FD15A81E26D756,$F6B79C78D5275687,$B30CE4D920D440CB,$F046EE3AE82E4DF3
Data.q $7361380CDA93E2CA,$423F196C8A0A294B,$F55015E076DF7CBE,$6050A7FFDF6F141D,$747C765ABC08DEFD,$331E9D5085F69C51
Data.q $775B6AF01B6AE7BD,$8601DB44EA49CDC4,$D8169BD1B43AA8C1,$F7C579982329FDD9,$982293B8CBA75DD7,$BF07145D7F3BF702
Data.q $6616A521F5B8ED76,$E3B1808D8795FBD7,$2DCF5DC7FDC9CB71,$27FAEF36537E0830,$B5E0E9E3FE7778A3,$1453BF4BC9AB7CEB
Data.q $A6009315AA326E47,$6E5B8EBBF7A6E141,$57FF400E37FDD641,$75143BEA75E72B23,$2630BDEF83C4DAEA,$ECC6A93ABC3FEC37
Data.q $3D7F6DD980BF633A,$D1B3759EC3D3D4C0,$4DDF3A2DBEFA82E4,$C27019B527C595E0,$72A16114145296E6,$56FB2BC1D60EB8DF
Data.q $22FE1DC40B7E2860,$450B46154117ECEE,$9ED479E7103E07DE,$17AC35E6CC0764EF,$7157F7ADBBE4784B,$49D6AF84B316C36C
Data.q $D20FB681146DA336,$C0F8B6D45EFE2750,$79D8169BD41C3AA8,$B33FF8CCC1075C4A,$37029552C7C5B8D7,$43EB71AADE653B14
Data.q $15D7161F7AECA72A,$77CCFB0200F1D8C0,$9AD61DF80F157413,$1C7FBC5075C49FC5,$C44EBBED782AC1D7,$6B2EE8DC62D506AD
Data.q $7108771A9A747A85,$5CF2B3CA1AC82DCB,$5D58B29B8F5CE561,$F3860EB8C2F0789B,$DC73B31AA4EAE0C8,$50C1D71EBFB3017E
Data.q $E3BC0AC8ECA78668,$F8B49B9CAF026EFA,$2828A52B1D957BF0,$83AE37DE0EB880F2,$E130EFAEB1ABC06D,$6C69C39C63FC77D0
Data.q $BECE54A83D07A0FD,$82171943188B2632,$ABC06D2D07533E2C,$1F13A85C131A9DCF,$5D9DF9F19647C8F9,$87279D814F932EFF
Data.q $D3AFAD1634CC1D22,$AFF7029812C9DC65,$B231B71AA3E5B6A2,$878B07E0FC1FCA89,$F94B963025A1F43E,$F04181F6FAEE3BEA
Data.q $FF1FE3DE7FF103FB,$6988970A3FDE32F8,$45F749AB7CEBB5E0,$3D42B594B796F2DE,$DC75DFBD370A0D3A,$ACF4034152B20B72
Data.q $E26D752FD971EB9C,$7EF795DFDDFDDFC1,$EC675C78D5275686,$8BFC1D71EBFB3017,$5587B92321306270,$7EABC09BBE745DD7
Data.q $E0B7361381812CA2,$6C531C5BC6DD7507,$B2EB5780EBD1F9B4,$7DEB95D749CEFD6E,$1602D6B095E7BBFC,$D7B43E2A4FD7F3FE
Data.q $21C12AADA7BEC5D9,$EDD8BBBFAF73D11B,$0EB4EFAC454BABD8,$BD81360EC4C024A5,$E27518C0FAD5E036,$D43ABAE1807BE31B
Data.q $40777C10A63BB1F7,$35EF6ECB84F3305E,$8152DEF3BAAD316E,$D0796C539F6FE1FB,$EEBCA90FADC56B25,$C763009E65B5FC71
Data.q $3ABA09BBE67D6BC3,$E3BE560337F7E06E,$B5A775BEF195A71B,$00316E2275DF6BC1,$3D47356B7B0F5FFC,$B71087D7A7220E3A
Data.q $F2C2EFDB9FAC82DC,$58B29B8F5CE5625C,$49ECC0BC943FBF5D,$ECC6A93AB831DF97,$228557D980BF633A,$38BAB98F5D8984D6
Data.q $6BC19DF5D778C03B,$A4BAF066BC19AF06,$79D843061AB1B40C,$87E75D43706A93EA,$A5782B3AA142282B,$D5E0EAEE0CB90598
Data.q $BC06D44024CB406B,$B82575DD775EDF52,$8758D542E5646834,$49E2ACD3904B5E37,$78ABC09DC45DB816,$998371AB72A971A9
Data.q $8194E206E11FB7E0,$2AEA981C6D8AA67A,$C7638CD76DF6FAEE,$4A52F959788E8D9A,$67D0371576BC51B7,$0E587A9FD456AEE0
Data.q $747CE0756E2AED78,$D6E3D72819801A0E,$AC432DBF0031D6B7,$1289ABFFA9CC6A93,$3524F640D419BD20,$4305780EBDF2A2FD
Data.q $8FA8447A93EA8458,$29BD84505780EBA8,$0EF9700AF146D240,$BF6BFD6EE5591B3D,$05C02181476CAF04,$CA5780DABE049978
Data.q $A01619700C8FEBD9,$735E5F7AB19B8EDF,$5A7208E94BDFBAC8,$20019D9B8D3FD767,$06BC12EE32EEDBEA,$356E552E352F115C
Data.q $0EC273D6EA3F8A6E,$90A9610472A4CC12,$96021BFDBEBB8EFB,$179F774289B0199D,$927A96CBE565E28C,$A8ECD9837CEBB5E2
Data.q $780A5CFAB5F50AD5,$7B8F9C20936E3AED,$3D6BC7ACDF64753C,$8E2DBF0031DE906E,$FFD94F1AA4EAD0C9,$A29E900984DE6A35
Data.q $E3AEF84A46C3BAFB,$3EA84584305783AE,$2828E075D49854A9,$805783A92014DEC2,$AD0235CE422F5C30,$311E23E8AD9388EC
Data.q $8E5C7E378371AB02,$E43453718F5EAAE0,$975A31BF1BF14540,$76B08EF1DED7AA6D,$386AD6DA90186B8F,$2B20EB8C8E2C6FFE
Data.q $0751DF4BEF4A5064,$E14275A7208E9453,$207C5B8DFB743F13,$71AB72A971A978B3,$3305C5B28752FE53,$77CCFBAE56106A81
Data.q $7429DD044CA4A813,$2D97CACBC6548543,$16E2275DF6BC5275,$C3D52EA2B56A3B03,$70824DB8843AF034,$2D4CDF69682D863E
Data.q $2DBF007C4D3B8F5E,$FF598D5275687DEA,$D14F4804C26F3557,$75DC75DB4DF8DE2D,$530719A718860AF0,$7B08A0AF01D75261
Data.q $D5E03682C4C587D3,$BFBFF7FEF1DF76EF,$FFDEBC0985D44184,$102BE0B3952FF7FE,$052DFF1B1F19280A,$262ABD7F1A4F1ABC
Data.q $D4BEF5D6EC333C3B,$9C8273265DFEA3F6,$D5171818B84279D6,$E2CFB6DB6E32E9D7,$460DC6ADCAA5C6A5,$1CA9330668B0E71B
Data.q $EBB8EFB689354CF5,$F7429757D7AE37DB,$52F959788412636F,$636F9D76BC524F4A,$9EABB50AD5A59362,$126DC75DAF014BA2
Data.q $7D8A793129F1F384,$1D9B8DB8F5F789B3,$4EAD0C98E2DBF003,$84D856CD5498F1AA,$F9D918DBA29E9009,$B0860AF075DC75DC
Data.q $A4C2A16BF527D508,$8054AA11415E03AE,$F2B94F520578AEA4,$DB66BDAF50A762CE,$350B412A597B4A13,$A93C09767DBF87E7
Data.q $EAC383FEFA8F58DB,$FCB53A76DBF0FD95,$DDD7D9DDA0C4764E,$5BEA5780B38E0055,$EF4A503EF8CB7720,$514C1D6C7FA333CB
Data.q $41C06779D69C823A,$E27727C5B8CFB7A0,$214DC6AC5AA5C6A5,$4D304CC0AE59D2CA,$BB8EFA3F6333D4CF,$BD1FEFA803F3DB9E
Data.q $F2B2F1778174293C,$89D77DAF149D4B65,$9942B56A3B16D598,$6DC421D781A61EAD,$A5F9DC8291F38412,$7031D2B06E3D6BC7
Data.q $AB8327E6BCCE591E,$79A8D7FF65CC6A93,$BECE34937A402613,$9DF5D7755D82AEF6,$092EBC19AF066BC1,$15E2A3EB43FFCE3B
Data.q $1A6203E06A0F63EC,$FBFF7FEF96548224,$9F527052CFABC113,$1C7EABBE97202A82,$D928E2C21FE9381B,$5CFB27F07E89011C
Data.q $6D8EFEA53202D7C0,$1AB07EAF01EDABC0,$09BF6DD8B3115EA8,$0D1DA8BF6C019A0E,$3F6DB6DC57D3ADA6,$8D59C9B8EAF240D3
Data.q $F2DF812ED902293B,$2B729DC67D6A0555,$0E419F1471CCC77E,$A293717529566680,$4B3B41A4D5B8CFB9,$B311539CA7CA316A
Data.q $7DA60D6AD9A8B5B1,$39D73BD6396E2BED,$64DDF0973BCEF3B4,$BE0DC41F66B9EA85,$C57D4B54B4037FAA,$4D707DAFCB68093D
Data.q $4CFD5E1D9B3DE801,$F63EC15E03AF7197,$97EA3D9FB7DF60A0,$1A2F7EEBBFA9894A,$F461F55E069C95F5,$F2BF6C04787FC71D
Data.q $E8AD952057425FD0,$003CAA39401B01F6,$5DA95E036AFC1C66,$B00C9F50143C3BAF,$0277D3718D91FEFA,$F45FED97ED87EC96
Data.q $99F6DC75DBB7B5CD,$6BB3003E0145F0D5,$7F3C08A4EE3B5A0E,$850B8F5E06FC11A7,$5E3A7711F5A81D5C,$CB26608CE7EDE400
Data.q $8F7A8EF7E8F07058,$8FB5E0719DAB1752,$57C0FAE465854BB8,$988A856AA354628C,$77B52369F565B4F5,$BEB2EE52A4D18F53
Data.q $3BA95EA3E9EB71C5,$C7F2379DDF04663F,$0A129C3EE5FC5792,$EB757D7FAA5150E9,$9B5E771EF91F40E7,$D008F6535C1F6050
Data.q $88BBF5A6E06F59E8,$60A0F63EC15E0EBB,$26252A5FB280C05F,$C1D69012932A1550,$8E942803EB61DB2B,$86E2B906FECA1FF5
Data.q $AFEAFEBC59660962,$A18A7D52BE07AF36,$F84877E36905782D,$503F4A4638411666,$B61FB326D8A60EA7,$F8B719F4EDAFA05F
Data.q $934065A0C0030D58,$54A498C08A4EE2B5,$D1CF585295E06FC2,$B18D20A5B94EE3BE,$EF8382C659330943,$76AC5D4CE3A0EB8D
Data.q $614CC44EBBED7812,$6AC318CA4201D729,$DA7AD2B64079CCB3,$18F53BDAA5234E12,$B2F84DC4716E3BED,$C07BE12BFEF46A57
Data.q $16FC5792CD2D52B3,$ABF53FD5C9A98E3D,$EDC96C9A4EA50F7F,$C0DEB3DE738A6B83,$8C6AF075DF21EBD6,$C02C2B3DF60AA546
Data.q $85F5DFD4C4A54BF5,$E5781A7257D626A1,$20B601AF52840358,$887FEFFEAA49D56B,$ABE316EB5998DBF3,$5758D5E28DB5F2AA
Data.q $DFBBF645868F97AB,$875C8C663C72EEFD,$72A9F53EA7E58037,$D518C6DF542F7EBF,$4D798DB6DB8EBA75,$4EE354F7B8CC04C6
Data.q $DF84AEDBB6EDC08A,$C47D6A075D902BC0,$330585B24006F29D,$9E73DA008382C659,$13735527AA129CF3,$FAE47BF76E23ECDC