SetWindowCallback in einer DLL aufrufen

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
legion
Beiträge: 467
Registriert: 08.10.2006 18:04
Computerausstattung: Intel Core i5-6500 @ 4x 3.6GHz mit Windows 10 Pro, Intel Core-i7 mit Ubuntu 18.04 bionic, x86_64 Linux 4.18.0-16-generic, Microsoft Surface Pro - Windows 10 Pro
Wohnort: Wien
Kontaktdaten:

SetWindowCallback in einer DLL aufrufen

Beitrag von legion »

Hallo !
Hab wieder mal ein Blackout.
Kann man ein CallBack in einer DLL aufrufen ?
Siehe Code -> so funktioniert es jedenfalls nicht.

Danke !

Lg. Legion


Test.dll

Code: Alles auswählen

Procedure WndProc(hwnd,msg,wParam,lParam) 
Result = #PB_ProcessPureBasicEvents
If msg = #WM_ERASEBKGND
 MessageRequester("Information", "#WM_ERASEBKGND", #PB_MessageRequester_Ok) 
;-----------------------------------------------------------------------------------------------------------
ElseIf msg = #WM_PAINT
 MessageRequester("Information", "#WM_PAINT", #PB_MessageRequester_Ok)
;-----------------------------------------------------------------------------------------------------------    
ElseIf msg = #WM_ACTIVATE
 MessageRequester("Information", "#WM_ACTIVATE", #PB_MessageRequester_Ok)
;-----------------------------------------------------------------------------------------------------------
ElseIf msg = #WM_SIZE
MessageRequester("Information", "#WM_SIZE", #PB_MessageRequester_Ok)
;-----------------------------------------------------------------------------------------------------------
EndIf
ProcedureReturn Result    
EndProcedure

ProcedureDLL AttachProcess(Instanz)  
 MessageRequester("Information", "DLL geladen", #PB_MessageRequester_Ok)
EndProcedure

ProcedureDLL MyFunktion() 
 MessageRequester("Information", "Aufruf Funktion", #PB_MessageRequester_Ok)
 SetWindowCallback(@WndProc()) 
EndProcedure

ProcedureDLL DetachProcess(Instance)
 MessageRequester("Information", "DLL beendet", #PB_MessageRequester_Ok)
EndProcedure 
Aufruf:

Code: Alles auswählen

Enumeration
  #Window_0
EndEnumeration


Procedure Open_Window_0()
  If OpenWindow(#Window_0, 397, 203, 528, 380, "Stretch-Test",  #PB_Window_SystemMenu | #PB_Window_SizeGadget | #PB_Window_TitleBar )
    If CreateGadgetList(WindowID(#Window_0))
         
    EndIf
  EndIf
EndProcedure

Open_Window_0()
If OpenLibrary(0, "C:\Temp\test.dll")
CallFunction(0, "MyFunktion")
EndIf

Repeat
  Event = WaitWindowEvent()
  WindowID = EventWindow()
  GadgetID = EventGadget()
  EventType = EventType()
   
  If Event = #PB_Event_Gadget
    
  EndIf
  
Until Event = #PB_Event_CloseWindow 
If IsLibrary(0) <> 0 : CloseLibrary(0) : EndIf
End
Der DLL Aufruf funktioniert, aber keine Meldung vom CallBack !
PB 5.71 LTS Windows 10 Pro & Ubuntu 18.04.2 LTS & Linux Mint 19.3
-----------------------------------------------------
Alles ist, wie man glaubt, dass es ist!
Benutzeravatar
edel
Beiträge: 3667
Registriert: 28.07.2005 12:39
Computerausstattung: GameBoy
Kontaktdaten:

Beitrag von edel »

Die DLL hat kein Zugriff auf die Objektliste der Executable. Nimm lieber
Api dafuer.
Benutzeravatar
legion
Beiträge: 467
Registriert: 08.10.2006 18:04
Computerausstattung: Intel Core i5-6500 @ 4x 3.6GHz mit Windows 10 Pro, Intel Core-i7 mit Ubuntu 18.04 bionic, x86_64 Linux 4.18.0-16-generic, Microsoft Surface Pro - Windows 10 Pro
Wohnort: Wien
Kontaktdaten:

Beitrag von legion »

Sorry, was meinst du mit API ?
Meinst du mit "CallWindowProc_" ?
Kannst du mir das genauer erklären !

Danke !
PB 5.71 LTS Windows 10 Pro & Ubuntu 18.04.2 LTS & Linux Mint 19.3
-----------------------------------------------------
Alles ist, wie man glaubt, dass es ist!
Benutzeravatar
edel
Beiträge: 3667
Registriert: 28.07.2005 12:39
Computerausstattung: GameBoy
Kontaktdaten:

Beitrag von edel »

Ja , mit SetWindowLong eben selber den Callback veraendern.
Benutzeravatar
legion
Beiträge: 467
Registriert: 08.10.2006 18:04
Computerausstattung: Intel Core i5-6500 @ 4x 3.6GHz mit Windows 10 Pro, Intel Core-i7 mit Ubuntu 18.04 bionic, x86_64 Linux 4.18.0-16-generic, Microsoft Surface Pro - Windows 10 Pro
Wohnort: Wien
Kontaktdaten:

Beitrag von legion »

Danke für die Info !
Hab jetzt auch eine andere Lösung gefunden.
Einen API-Hook auf die Messagelist.
Funktioniert auf alle Fälle mal.

Die DLL:

Code: Alles auswählen

Enumeration
  #Image_0
EndEnumeration

Global WinHDC,TempDC

ProcedureDLL AttachProcess(Instanz)  
CatchImage(#Image_0,?STARTBILD)
EndProcedure

Procedure GetMsgProc(code, wParam, lParam)
    *mymsg.MSG = lParam
    myRect.RECT
    GetWindowRect_(*mymsg\hwnd,myRect.RECT)
    Weite = myRect\right - myRect\left
    
    Select *mymsg\message
      Case #WM_MOUSEMOVE
         SelectObject_(TempDC,ImageID(#Image_0))
         StretchBlt_(WinHDC,0,0,Weite,ImageHeight(#Image_0),TempDC,0,0,ImageWidth(#Image_0),ImageHeight(#Image_0),#SRCCOPY)
      Case #WM_ERASEBKGND
         SelectObject_(TempDC,ImageID(#Image_0))
         StretchBlt_(WinHDC,0,0,Weite,ImageHeight(#Image_0),TempDC,0,0,ImageWidth(#Image_0),ImageHeight(#Image_0),#SRCCOPY)
      Case #WM_PAINT
         SelectObject_(TempDC,ImageID(#Image_0))
         StretchBlt_(WinHDC,0,0,Weite,ImageHeight(#Image_0),TempDC,0,0,ImageWidth(#Image_0),ImageHeight(#Image_0),#SRCCOPY)
    EndSelect
  ProcedureReturn CallNextHookEx_(@GetMsgProc(), code, wParam, lParam)
EndProcedure

ProcedureDLL AddToolBarStretch(WindowHandle) 
 WinHDC  = GetDC_(WindowHandle)
 TempDC  = CreateCompatibleDC_(WinHDC) 
 SelectObject_(TempDC,ImageID(#Image_0))
 StretchBlt_(WinHDC,0,0,Weite,ImageHeight(#Image_0),TempDC,0,0,ImageHeight(#Image_0),ImageWidth(#Image_0),#SRCCOPY)
 SetWindowsHookEx_(#WH_GETMESSAGE	,@GetMsgProc(),0,GetWindowThreadProcessId_(WindowHandle,#False)) 
EndProcedure

ProcedureDLL DetachProcess(Instance)
  ReleaseDC_(WindowHandle,WinHDC)
  ReleaseDC_(WindowHandle,TempDC)
EndProcedure 

DataSection
STARTBILD:
  Data.l 1261980994, 0, 3538944, 2621440, 13107200, 2097152, 65536, 24, 1258422272, 185729024, 185729024, 0, 0, 759234560, 86851845, 1090858305, 759235885, 86851845, 1090858305, 759235885, 86851845, 1090858305, 759235885, 86851845, 1090858305, 759235885, 86851845, 1090858305, 759235885, 86851845, 1090858305, 776013102, 86917381, 1090858561, 776013102, 103694598, 1090924097, 776013358, 103694598, 1090924097, 792790575, 103760134, 1090924353, 792790575, 103760134, 1090924353, 792790575, 103760134, 1090924353, 809567792, 120602887, 1090990145, 809568048, 120602887, 1090990145, 809568048, 120602887, 1090990145, 826345265, 120668423, 1090990401, 826345265, 120668423, 1090990401
  Data.l 826345265, 137445640, 1091055937, 843122737, 137511176, 1091056193, 843122738, 137511176, 1107833410, 843188274, 137511432, 1107833410, 859965490, 137576968, 1107833666, 859965491, 154354185, 1107899202, 859965747, 154354185, 1107899202, 859965747, 154419721, 1107899458, 876742964, 154419721, 1107899458, 876742964, 154419721, 1107899458, 876742964, 154419721, 1107965250, 893520437, 171262474, 1107965250, 893520437, 171262474, 1107965250, 893520437, 171262474, 1107965506, 910297654, 171328010, 1107965506, 910297654, 171328010, 1107965506, 910297910, 188105227, 1108031042, 927075127, 188170763, 1108031298, 927075127, 188170763, 1108031298, 927075127, 188170763, 1108031298, 943852343, 188236299, 1108031554, 943852344
  Data.l 205013516, 1108097090, 943852600, 205013516, 1108097090, 943852600, 205079052, 1108097346, 960629817, 205079052, 1108097346, 960629817, 205079052, 1108097346, 960629817, 205144588, 1108163138, 977407290, 221921805, 1108163138, 977407290, 221921805, 1108163138, 977407290, 221921805, 1108163394, 994184507, 221987341, 1108163394, 994184507, 221987341, 1108163394, 994184763, 238764558, 1108228930, -1009906116, -1782329707, -829045810, -1009871421, -1782329707, -829045810, -1009871421, -1782329707, -829045810, -1009871421, -1782329707, -829045810, -1009871421, -1782329707, -829045810, -1009871421, -1782329707, -829045810, -993094204, -1782264171, -829045554, -993094204, -1782264171, -829045554, -993094204, -1782264171, -829045554, -993094204, -1782264171
  Data.l -828980018, -993093948, -1765421418, -828979762, -976316731, -1765421418, -828979762, -976316731, -1765421418, -828979762, -976316731, -1765421418, -828979762, -976316731, -1765421418, -828979762, -976316731, -1765421418, -828979762, -976316731, -1765421418, -828979506, -959539514, -1748578665, -828913970, -959539258, -1748578665, -828913970, -959539258, -1748578665, -828913970, -959539258, -1748578665, -828913970, -942762042, -1748513129, -828913714, -942762041, -1748513129, -828913714, -942762041, -1748513129, -828913714, -942762041, -1748513129, -828913714, -942761785, -1731735912, -828848178, -942761785, -1731735912, -828848178, -942761785, -1731735912, -828847922, -925984568, -1731670376, -828847922, -925984568, -1731670376, -828847922, -925984568, -1731670376, -828847922
  Data.l -925984568, -1731670376, -828847922, -925984568, -1731604840, -828847666, -909207351, -1731604840, -828847666, -909207351, -1731604840, -828847666, -909207351, -1731604840, -812004913, -909141559, -1714827367, -812004913, -892364343, -1714761831, -812004657, -892364342, -1714761831, -812004657, -892364342, -1714761831, -812004657, -892364342, -1714761831, -812004657, -892364342, -1714761831, -812004657, -892364342, -1714761831, -812004657, -892364342, -1714696295, -811938865, -875586869, -1697919078, -811938865, -875586869, -1697919078, -811938865, -875586869, -1697919078, -811938865, -875586869, -1697919078, -811938865, -875586869, -1697853542, -811938609, -858809652, -1697853542, -811938609, -1783981364, 1301654093, -1437755990, -1784001131, 1301654093, -1437755990, -1784001131
  Data.l 1301654093, -1437755990, -1784001131, 1301654093, -1437755990, -1784001131, 1301719629, -1437755734, -1767223658, 1318496846, -1437690198, -1767223658, 1318496846, -1437690198, -1767223658, 1318562382, -1437689942, -1750446441, 1318562382, -1437689942, -1733669224, 1318627918, -1437624150, -1733668968, 1335405135, -1437624150, -1733668968, 1335405135, -1437624150, -1716891751, 1352247888, -1437558358, -1716891495, 1352247888, -1437558358, -1716891495, 1352247888, -1437558358, -1700114278, 1352313424, -1437558102, -1700114278, 1352313424, -1437558102, -1700114278, 1369090641, -1437492566, -1683336806, 1369156177, -1437492310, -1683336805, 1369156177, -1420715093, -1683271269, 1369156433, -1420715093, -1666494053, 1369221969, -1420714837, -1666494052, 1385999186, -1420649301, -1666493796, 1385999186
  Data.l -1420649301, -1666493796, 1386064722, -1420649045, -1649716579, 1386064722, -1420649045, -1649716579, 1386064722, -1420649045, -1649716579, 1386064722, -1420583253, -1632939106, 1402907475, -1420583253, -1632939106, 1402907475, -1420583253, -1632939106, 1402907475, -1420582997, -1616161889, 1402973011, -1420582997, -1616161889, 1403038547, -1420582741, -1599384416, 1419815764, -1420517205, -1599384416, 1419815764, -1420517205, -1599384416, 1419881300, -1420516949, -1582607199, 1419881300, -1420516949, -1582607199, 1419881300, -1420516949, -1582607199, 1436658517, -1420451157, -1565829726, 1436724053, -1420451157, -1565829726, 1436724053, -1420451157, -1565829726, 1436724053, -1420451157, -1549052509, 1436789589, -1420450901, -1549052509, 1436789589, -1420385365, -1549052253, 1453566806, -1420385365
  Data.l -1532275037, 1453632342, -1420385109, -1532275036, 1470409559, -1420319573, -1532274780, 1470409559, -1420319573, -1532274780, 1470475095, -1420319317, -1515497563, 1470475095, -1420319317, -2019600475, 1116184386, -1623029857, -2019605881, 1116184386, -1623029857, -2019605881, 1116184386, -1623029857, -2019605881, 1116184386, -1606252640, -2019540345, 1116184642, -1606252640, -2019540089, 1132961859, -1606187104, -2002762872, 1133027395, -1606186848, -2002762872, 1149870148, -1606121056, -1985985399, 1149870148, -1606121056, -1985985399, 1149870148, -1606121056, -1985985399, 1149935684, -1606120800, -1969208182, 1149935684, -1606120800, -1952430965, 1166778437, -1606055008, -1952430709, 1166778437, -1606055008, -1952430709, 1166778437, -1606055008, -1935653492, 1166843973, -1606054752, -1935653492
  Data.l 1166843973, -1606054496, -1918876275, 1183686726, -1605988960, -1918876019, 1183686726, -1605988960, -1918876019, 1183686726, -1605923168, -1902098546, 1200529479, -1605923168, -1902098546, 1200529479, -1605923168, -1902098546, 1200529479, -1605922912, -1885321329, 1200595015, -1605922912, -1885321329, 1200660551, -1605922656, -1868543856, 1217437768, -1605857120, -1868543856, 1217437768, -1605857120, -1868543856, 1217437768, -1605791328, -1851766383, 1234280521, -1605791328, -1834989167, 1234346057, -1605791072, -1834989166, 1234346057, -1605791072, -1834989166, 1234346057, -1605791072, -1834989166, 1234411593, -1605790816, -1818211693, 1251188810, -1605725280, -1818211693, 1251188810, -1605725280, -1818211693, 1251254346, -1588882271, -1801368684, 1268031819, -1588882271, -1784591468, 1268097355
  Data.l -1588882015, -1784591467, 1268097355, -1588882015, -1784591467, 1268097355, -1588882015, -1784591467, 1268162891, -1588881759, -1767813994, 1284940108, -1588816223, -1751036777, 1285005644, -1588815967, -1751036777, 1285005644, -1588815967, -1751036777, 1285005644, -1588815967, -1734259561, 1285071180, -1588815711, -1734259560, 1301848397, -1588749919, -1717482087, 1301913933, -1588749919, -1717482087, 1301913933, -1588749919, -1717481831, 1318691150, -1588684383, 2056605338, 947557688, -1791460715, 2056599674, 947557688, -1791460715, 2056599674, 947557688, -1791460715, 2056599674, 947557688, -1791460715, 2056599674, 947557688, -1791460715, 2056599930, 964334905, -1791395179, 2073377147, 964400441, -1791394923, 2073377147, 964465977, -1791394667, 2090154364, 964465977, -1791394667
  Data.l 2090154364, 964465977, -1791329131, 2090154620, 981308730, -1791328875, 2106931837, 981308730, -1791328875, 2123709054, 998151483, -1791263083, 2123709310, 998151483, -1791263083, 2123709310, 998151483, -1791197547, 2140486783, 1014994236, -1791197291, 2140486783, 1014994236, -1791197035, -2137703296, 1015059772, -1791197035, -2120926080, 1015125308, -1791196779, -2120926079, 1015125308, -1774354026, -2120860287, 1031902781, -1774354026, -2104083071, 1031968317, -1774353770, -2104083070, 1048745534, -1774287978, -2087305597, 1048811070, -1774287978, -2087305597, 1048811070, -1774287978, -2087305597, 1048811070, -1774287978, -2070528380, 1048876606, -1774287722, -2070528380, 1048876606, -1774221930, -2053750907, 1065719359, -1774221930, -2036973691, 1065784895, -1774221674, -2036973690
  Data.l 1082562112, -1774156138, -2036973434, 1082562112, -1774156138, -2036973434, 1082627648, -1774155882, -2020195961, 1099404865, -1774090346, -2003418744, 1099470401, -1774090090, -2003418744, 1099470401, -1757312873, -2003353208, 1099470657, -1757312873, -1986575992, 1099536193, -1757312617, -1986575991, 1116313410, -1757246825, -1969798518, 1116378946, -1757246825, -1969798518, 1116378946, -1757246825, -1969798262, 1133156163, -1757181289, -1953021045, 1133221699, -1757181033, -1953021045, 1133287235, -1757180777, -1936243828, 1133287235, -1757180777, -1919466612, 1133352771, -1757180521, -1919466611, 1150129988, -1757114985, -1919466355, 1150129988, -1757114985, -1919466355, 1150195524, -1757114729, -1902688882, 1166972741, -1757049193, 1854686607, 778996782, -1943114100, 1854680686, 778996782
  Data.l -1943114100, 1854680686, 778996782, -1943114100, 1854680686, 778996782, -1926336883, 1854746222, 779062574, -1926336627, 1871523439, 779062574, -1926336627, 1871523439, 779062574, -1926336627, 1871523439, 795905327, -1926270835, 1888300912, 795905327, -1926270835, 1905078129, 795970863, -1926205043, 1905078385, 812813616, -1926204787, 1921855602, 812813616, -1926204787, 1921855602, 829590833, -1926139251, 1921855858, 829656369, -1926138995, 1938633075, 829656369, -1926138995, 1955410292, 829721905, -1926138739, 1955410292, 829721905, -1926138483, 1972187509, 846564658, -1926072947, 1972187765, 846564658, -1926072947, 1972187765, 846564658, -1909229938, 1989030774, 863407667, -1909229938, 2005807990, 863473203, -1909229682, 2005807991, 880250420, -1909163890
  Data.l 2022585464, 880315956, -1909163890, 2022585464, 880381492, -1909163634, 2039362937, 897158709, -1909098098, 2039362937, 897158709, -1909098098, 2039362937, 897158709, -1909097842, 2056140154, 897224245, -1909097842, 2072917370, 897289781, -1909097586, 2072917371, 914066998, -1909031794, 2089694844, 914132534, -1909031794, 2089694844, 914132534, -1909031794, 2089695100, 930909751, -1908966258, 2106472317, 930975287, -1908966002, 2106472317, 931040823, -1892122993, 2123315326, 947818296, -1892122993, 2140092542, 947883832, -1892122737, 2140092543, 947883832, -1892122737, 2140092543, 947883832, -1892122737, 2140092543, 947949368, -1892122481, -2138097280, 964726585, -1892056945, -2121320063, 964792121, -1892056689, -2121320063, 964857657, -1891990897, -2104542590
  Data.l 981634874, -1891990897, -2104542590, 981634874, -1891990897, -2104542590, 998412091, -1891925105, -2087765117, 998477627, -1891925105, -2087765117, 998543163, -1891924849, -2070987900, 998543163, -1891924849, 1703230341, 627410213, -2061146747, 1703224677, 627410213, -2061146747, 1703224677, 627410213, -2061146747, 1703224677, 627410213, -2044369530, 1703290213, 627476005, -2044369274, 1720067686, 644253222, -2044303738, 1736844903, 644318758, -2044303482, 1736844903, 661095975, -2044237946, 1736845159, 661095975, -2044237946, 1753622376, 661161511, -2044237690, 1753622376, 661227047, -2044237434, 1770399593, 661227047, -2044237434, 1787176810, 678069800, -2044171642, 1787177066, 678135336, -2044171386, 1803954283, 678135336, -2044105850, 1803954539, 694912553
  Data.l -2044105850, 1803954539, 694912553, -2044105594, 1820731756, 711755306, -2044040058, 1837509228, 711820842, -2044039802, 1837509229, 711820842, -2027196793, 1854352238, 728663851, -2027196793, 1871129454, 728729387, -2027196537, 1871129455, 728729387, -2027196537, 1871129455, 728729387, -2027196537, 1871129455, 728794923, -2027196281, 1887906928, 745572140, -2027130745, 1904684145, 745637676, -2027130489, 1904684145, 745637676, -2027064697, 1921461618, 762480429, -2027064697, 1938238834, 762545965, -2027064441, 1938238835, 779323182, -2026998905, 1938239091, 779323182, -2026998905, 1938239091, 779388718, -2026998649, 1955016564, 796165935, -2026933113, 1971793781, 796231471, -2026932857, 1971793781, 796297007, -2026932601, 1988570998, 796297007, -2026932601
  Data.l 2005348214, 796362543, -2026932345, 2005348215, 813139760, -2026866809, 2005348471, 813139760, -2026866809, 2005348471, 813205296, -2026866553, 2022125944, 829982513, -2026801017, 2038903161, 830048049, -2026800761, 2038903161, 830113585, -2026734969, 2055680634, 846890802, -2026734969, 2072457850, 846956338, -2026734713, 2072457851, 863733555, -2026669177, 2072458107, 863733555, -2026669177, 2072458107, 863799091, -2026668921, 2089235324, 863799091, -2026668921, 1619080061, 526418207, -2128650111, 1619074912, 526418207, -2128650111, 1619074912, 526418207, -2128650111, 1619074912, 526418207, -2111872894, 1619140448, 526483999, -2111872638, 1635917921, 543261216, -2111807102, 1652695138, 543326752, -2111806846, 1652695138, 560169505, -2111741054, 1669472611
  Data.l 560169505, -2111741054, 1686249828, 560235041, -2111675262, 1686250084, 577012258, -2111675262, 1686250084, 577012258, -2111675262, 1703027301, 577077794, -2111675006, 1703027301, 577143330, -2111674750, 1719804518, 577143330, -2111609214, 1736581991, 593986083, -2111608958, 1736581991, 593986083, -2111608702, 1753359208, 610828836, -2111543166, 1770136680, 610894372, -2111542910, 1770136681, 610894372, -2094700157, 1770202473, 627671845, -2094700157, 1786979689, 627737381, -2094699901, 1786979690, 644514598, -2094634109, 1803757163, 644580134, -2094634109, 1803757163, 644645670, -2094633853, 1820534380, 644645670, -2094633853, 1837311597, 644711206, -2094633597, 1837311597, 644711206, -2094568061, 1837311853, 661488423, -2094568061, 1854089069, 661553959
  Data.l -2094567805, 1854089070, 678331176, -2094502013, 1870866543, 678396712, -2094502013, 1870866543, 678462248, -2094501757, 1887644016, 695239465, -2094436221, 1904421233, 695305001, -2094435965, 1904421233, 695370537, -2094370173, 1921198706, 712147754, -2094370173, 1921198706, 712147754, -2094370173, 1921198706, 728924971, -2094304381, 1937976179, 728990507, -2094304381, 1937976179, 729056043, -2094304125, 1954753396, 729056043, -2094304125, 1971530613, 729121579, -2094303869, 1971530613, 729187115, -2094238077, 1988308086, 745964332, -2094238077, 1988308086, 745964332, -2094238077, 1988308086, 762741549, -2094172285, 2005085559, 762807085, -2094172285, 2005085559, 762872621, -2094172029, 2021863032, 779649838, -2094106493, 1534930553, 425426201, 2098813821
  Data.l 1534925147, 425426201, 2098813821, 1534925147, 425426201, 2098813821, 1534925147, 425426201, 2098813821, 1534925147, 425491737, 2098814077, 1551702620, 442268954, 2098879613, 1568479837, 442334490, 2098879869, 1568479837, 459177243, 2098945661, 1585257310, 459177243, 2098945661, 1602034527, 459242779, 2099011453, 1602034783, 476085532, 2099011709, 1618812000, 476085532, 2099011709, 1618812000, 492862749, 2099077245, 1618812256, 492928285, 2099077501, 1635589473, 492928285, 2099077501, 1652366690, 492993821, 2099077757, 1652366690, 492993821, 2099078013, 1669143907, 509836574, 2099143549, 1685921379, 509902110, 2099143805, 1685921380, 509902110, 2115986814, 1702764389, 526745119, 2115986814, 1702764389, 526745119, 2115986814, 1702764389
  Data.l 543522336, 2116052606, 1719541862, 543587872, 2116052606, 1719541862, 543653408, 2116052862, 1736319335, 560430625, 2116118398, 1753096552, 560496161, 2116118654, 1753096552, 560496161, 2116184446, 1769874025, 577338914, 2116184446, 1786651241, 577404450, 2116184702, 1786651242, 577404450, 2116184702, 1786651242, 577404450, 2116184702, 1786651242, 577469986, 2116184958, 1803428715, 594247203, 2116250494, 1820205932, 594312739, 2116250750, 1820205932, 594378275, 2133093759, 1837048941, 611155748, 2133093759, 1853826157, 611221284, 2133094015, 1853826158, 627998501, 2133159807, 1870603631, 628064037, 2133159807, 1870603631, 628064037, 2133159807, 1870603887, 644841254, 2133225343, 1887381104, 644906790, 2133225599, 1887381104, 644972326
  Data.l 2133291391, 1904158577, 661749543, 2133291391, 1920935793, 661815079, 2133291647, 1920935794, 661815079, 2133291903, 1937713011, 661880615, 2133291903, 1937713011, 661880615, 2133291903, 1937713267, 678657832, 2133357439, 1484400756, 341342740, 2048153722, 1484395608, 341342740, 2048153722, 1484395608, 341342740, 2048153722, 1484395608, 341342740, 2048153722, 1484395608, 341408276, 2048153978, 1501173081, 358185493, 2048219514, 1517950298, 358251029, 2048219770, 1517950298, 375028246, 2048285306, 1517950554, 375028246, 2048285306, 1534727771, 375093782, 2048351098, 1534728027, 391936535, 2048351354, 1551505244, 391936535, 2048351354, 1568282461, 408779288, 2048417146, 1568282717, 408844824, 2048417402, 1585059934, 408844824, 2048482938
  Data.l 1601837407, 425687577, 2048483194, 1601837407, 425687577, 2048483194, 1601837407, 425687577, 2048483194, 1618614623, 425753113, 2048483450, 1618614624, 425753113, 2065326459, 1635457633, 442596122, 2065326459, 1652234849, 442661658, 2065326715, 1652234850, 459438875, 2065392507, 1669012323, 459504411, 2065392507, 1669012323, 459569947, 2065392763, 1685789796, 476347164, 2065458299, 1702567013, 476412700, 2065458555, 1702567013, 476412700, 2065524091, 1702567269, 493189917, 2065524091, 1719344485, 493255453, 2065524347, 1719344486, 510032670, 2065590139, 1736121959, 510098206, 2065590139, 1736121959, 510163742, 2065590395, 1752899432, 526940959, 2065655931, 1769676649, 527006495, 2065656187, 1769676649, 527072031, 2082433660, 1786519402
  Data.l 527072287, 2082433660, 1786519402, 527072287, 2082433660, 1786519402, 543849504, 2082499452, 1803296875, 543915040, 2082499452, 1803296875, 543980576, 2082499708, 1820074348, 560757793, 2082565244, 1836851565, 560823329, 2082565500, 1836851565, 560888865, 2082631292, 1853629038, 577666082, 2082631292, 1870406254, 577731618, 2082631548, 1870406255, 594508835, 2082697084, 1870406511, 594508835, 2082697084, 1870406511, 594574371, 2082697340, 1887183984, 611351588, 2082762876, 1433871473, 290813713, 1997624695, 1433866581, 290813713, 1997624695, 1433866581, 290813713, 1997624695, 1433866581, 290813713, 2014401912, 1433932117, 290879505, 2014402168, 1450709334, 290879505, 2014402168, 1467486551, 290945041, 2014402424, 1467486551, 307787794
  Data.l 2014468216, 1484264024, 307787794, 2014468216, 1484264024, 307787794, 2014533752, 1484264280, 324630547, 2014534008, 1501041497, 324630547, 2014534008, 1517818714, 341473300, 2014599800, 1517818970, 341538836, 2014600056, 1534596187, 341538836, 2014665592, 1551373660, 358381589, 2014665848, 1551373660, 358381589, 2014666104, 1568150877, 375224342, 2014731640, 1568151133, 375224342, 2014731640, 1568151133, 375224342, 2031574649, 1584994142, 392067351, 2031574649, 1601771358, 392132887, 2031574905, 1601771359, 392132887, 2031575161, 1618548576, 392198423, 2031575161, 1618548576, 392263959, 2031575417, 1635326049, 409041176, 2031640953, 1652103266, 409106712, 2031641209, 1652103266, 409106712, 2031707001, 1668880739, 425949465, 2031707001
  Data.l 1668880739, 425949465, 2031707001, 1668880739, 442726682, 2031772793, 1685658212, 442792218, 2031772793, 1685658212, 442857754, 2031773049, 1702435685, 459634971, 2031838585, 1719212902, 459700507, 2031838841, 1719212902, 459766043, 2048681850, 1736055911, 476543516, 2048681850, 1752833127, 476609052, 2048682106, 1752833128, 493386269, 2048747898, 1769610601, 493451805, 2048747898, 1769610601, 493451805, 2048747898, 1769610601, 493451805, 2048747898, 1786387818, 493517341, 2048748154, 1786387818, 493582877, 2048813946, 1803165291, 510360094, 2048813946, 1819942507, 510425630, 2048814202, 1819942508, 527202847, 2048879994, 1836719981, 527268383, 2048879994, 1836719981, 527333919, 2048880250, 1853497454, 544111136, 2048945786, 1400250479
  Data.l 240350734, 1980650358, 1400245843, 240350734, 1980650358, 1400245843, 240350734, 1980650358, 1400245843, 240350734, 1997427575, 1400311379, 240416526, 1997427831, 1417088852, 257193743, 1997493367, 1433866069, 257259279, 1997493623, 1433866069, 257324815, 1997493879, 1450643286, 257324815, 1997493879, 1467420503, 257390351, 1997559671, 1467420759, 274233104, 1997559927, 1484197976, 274233104, 1997559927, 1500975193, 291075857, 1997625719, 1500975449, 291075857, 1997625719, 1500975449, 291075857, 1997691255, 1517752922, 307918610, 1997691511, 1517752922, 307918610, 1997691767, 1534530139, 324761363, 1997757303, 1551307611, 324826899, 1997757559, 1551307612, 324826899, 2014600568, 1568150621, 341669908, 2014600568, 1584927837, 341735444
  Data.l 2014600824, 1584927838, 358512661, 2014666616, 1601705311, 358578197, 2014666616, 1601705311, 358643733, 2014666872, 1618482784, 375420950, 2014732408, 1618482784, 375420950, 2014732408, 1618482784, 375420950, 2014732664, 1635260001, 375486486, 2014732664, 1652037217, 375552022, 2014732920, 1652037218, 392329239, 2014798712, 1668814691, 392394775, 2014798712, 1668814691, 392460311, 2014798968, 1685592164, 409237528, 2014864504, 1702369381, 409303064, 2014864760, 1702369381, 409368600, 2031707769, 1719212390, 426146073, 2031707769, 1735989606, 426211609, 2031708025, 1735989607, 442988826, 2031773561, 1735989863, 442988826, 2031773561, 1735989863, 443054362, 2031773817, 1752767336, 459831579, 2031839353, 1769544553, 459897115, 2031839609
  Data.l 1769544553, 459962651, 2031905401, 1786322026, 476739868, 2031905401, 1803099242, 476805404, 2031905657, 1803099243, 493582621, 2031971449, 1819876716, 493648157, 2031971449, 1819876716, 493713693, 2031971705, 1836653933, 493713693, 2031971705, 1383406957, 206730508, 1963741813, 1383402578, 206730508, 1963741813, 1383402578, 206730508, 1963741813, 1383402578, 206730508, 1980519030, 1383468114, 206796300, 1980519286, 1400245587, 223573517, 1980584822, 1417022804, 223639053, 1980585078, 1417022804, 240481806, 1980650870, 1433800277, 240481806, 1980650870, 1450577494, 240547342, 1980651126, 1450577494, 240547342, 1980651126, 1450577494, 240547342, 1980651126, 1467354711, 257390095, 1980716918, 1467354967, 257455631, 1980717174, 1484132184
  Data.l 257455631, 1980782710, 1500909657, 274298384, 1980782966, 1500909657, 274298384, 1980783222, 1517686874, 291141137, 1980848758, 1534464346, 291206673, 1980849014, 1534464347, 291206673, 1997692023, 1551307356, 308049682, 1997692023, 1568084572, 308115218, 1997692279, 1568084573, 324892435, 1997757815, 1568084829, 324892435, 1997757815, 1568084829, 324957971, 1997758071, 1584862302, 341735188, 1997823607, 1601639519, 341800724, 1997823863, 1601639519, 341800724, 1997889655, 1618416992, 358643477, 1997889655, 1635194208, 358709013, 1997889911, 1635194209, 358709013, 1997890167, 1651971426, 358774549, 1997890167, 1651971426, 358840085, 1997890423, 1668748899, 375617302, 1997955959, 1685526116, 375682838, 1997956215, 1685526116, 375748374
  Data.l 2014799224, 1702369125, 392525847, 2014799224, 1702369125, 392525847, 2014799224, 1702369125, 409303064, 2014865016, 1719146598, 409368600, 2014865016, 1719146598, 409434136, 2014865272, 1735924071, 426211353, 2014930808, 1752701288, 426276889, 2014931064, 1752701288, 426342425, 2014996856, 1769478761, 443119642, 2014996856, 1786255977, 443185178, 2014997112, 1786255978, 459962395, 2015062904, 1803033451, 460027931, 2015062904, 1803033451, 460093467, 2015063160, 1819810924, 476870684, 2015128696, 1366563948, 173110282, 1946833268, 1366559313, 173110282, 1946833268, 1366559313, 173110282, 1946833268, 1366559313, 173110282, 1963610485, 1366624849, 173176074, 1963610741, 1383402322, 189953291, 1963676277, 1400179539, 190018827, 1963676533
  Data.l 1400179539, 206796044, 1963742069, 1400179795, 206796044, 1963742069, 1416957012, 206861580, 1963807861, 1416957268, 223704333, 1963808117, 1433734485, 223704333, 1963808117, 1450511702, 223769869, 1963808373, 1450511702, 223835405, 1963808629, 1467288919, 223835405, 1963874165, 1484066392, 240678158, 1963874421, 1484066392, 240678158, 1963874677, 1500843609, 257520911, 1963940213, 1517621081, 257586447, 1963940469, 1517621082, 257586447, 1980783478, 1534464091, 274429456, 1980783478, 1534464091, 274429456, 1980783478, 1534464091, 291206673, 1980849270, 1551241564, 291272209, 1980849270, 1551241564, 291337745, 1980849526, 1568019037, 308114962, 1980915062, 1584796254, 308180498, 1980915318, 1584796254, 308180498, 1980981110, 1601573727
  Data.l 325023251, 1980981110, 1618350943, 325088787, 1980981366, 1618350944, 341866004, 1981047158, 1635128417, 341931540, 1981047158, 1635128417, 341997076, 1981047414, 1651905634, 341997076, 1981047414, 1651905634, 341997076, 1981047414, 1651905634, 342062612, 1997890423, 1668748643, 358840085, 1997890423, 1685525859, 358905621, 1997890679, 1685525860, 375682838, 1997956471, 1702303333, 375748374, 1997956471, 1702303333, 375813910, 1997956727, 1719080806, 392591127, 1998022263, 1735858023, 392656663, 1998022519, 1735858023, 392722199, 1998088311, 1752635496, 409499416, 1998088311, 1769412712, 409564952, 1998088567, 1769412713, 426342169, 1998154359, 1786190186, 426407705, 1998154359, 1786190186, 426407705, 1998154359, 1786190442, 443184922
  Data.l 1998219895, 1349786219, 156267529, 1946767476, 1349781840, 156267529, 1946767476, 1349781840, 156267529, 1946767476, 1349781840, 156267529, 1963544693, 1349847376, 156333321, 1963544949, 1366624849, 173110538, 1963610485, 1383402066, 173176074, 1963610741, 1383402066, 190018827, 1963676533, 1400179539, 190018827, 1963676533, 1416956756, 190084363, 1963742325, 1416957012, 206927116, 1963742581, 1433734229, 206927116, 1963742581, 1450511446, 223769869, 1963808373, 1450511702, 223835405, 1963808629, 1467288919, 223835405, 1963808629, 1484066136, 223900941, 1963808885, 1484066136, 223900941, 1963809141, 1500843353, 240743694, 1963874677, 1500843609, 240743694, 1963874677, 1500843609, 240743694, 1980717686, 1517686618, 257586703, 1980717686
  Data.l 1534463834, 257652239, 1980717942, 1534463835, 274429456, 1980783734, 1551241308, 274494992, 1980783734, 1551241308, 274560528, 1980783990, 1568018781, 291337745, 1980849526, 1584795998, 291403281, 1980849782, 1584795998, 291403281, 1980915574, 1601573471, 308246034, 1980915574, 1618350687, 308311570, 1980915830, 1618350688, 325088787, 1980981622, 1635128161, 325154323, 1980981622, 1635128161, 325154323, 1980981622, 1635128417, 341931540, 1981047158, 1651905634, 341997076, 1981047414, 1651905634, 342062612, 1997890423, 1668748643, 358840085, 1997890423, 1685525859, 358905621, 1997890679, 1685525860, 358905621, 1997890935, 1702303077, 358971157, 1997890935, 1702303077, 359036693, 1997891191, 1719080550, 375813910, 1997956727, 1735857767
  Data.l 375879446, 1997956983, 1735857767, 375944982, 1998022775, 1752635240, 392722199, 1998022775, 1769412456, 392787735, 1998023031, 1769412457, 409564952, 1998088823, 1786189930, 409630488, 1998088823, 1786189930, 409630488, 1998088823, 1786190186, 426407705, 1998154359, 1366628715, 156333321, 1963544949, 1366624593, 156333321, 1963544949, 1366624593, 156333321, 1963544949, 1366624593, 156333321, 1980322166, 1366690129, 156399113, 1980322422, 1383467602, 173176330, 1980387958, 1400244819, 173241866, 1980388214, 1400244819, 190084619, 1980454006, 1417022292, 190084619, 1980454006, 1417022292, 190084619, 1980519542, 1417022548, 206927372, 1980519798, 1433799765, 206927372, 1980519798, 1450576982, 223770125, 1980585590, 1450577238, 223835661
  Data.l 1980585846, 1467354455, 223835661, 1980585846, 1484131672, 223901197, 1980586102, 1484131672, 223901197, 1980586358, 1500908889, 240743950, 1980651894, 1517686361, 240809486, 1980652150, 1517686362, 240809486, 1997495159, 1534529371, 257652495, 1997495159, 1551306587, 257718031, 1997495415, 1551306588, 274495248, 1997560951, 1551306844, 274495248, 1997560951, 1551306844, 274560784, 1997561207, 1568084317, 291338001, 1997626743, 1584861534, 291403537, 1997626999, 1584861534, 291403537, 1997692791, 1601639007, 308246290, 1997692791, 1618416223, 308311826, 1997693047, 1618416224, 325089043, 1997758839, 1635193697, 325154579, 1997758839, 1635193697, 325220115, 1997759095, 1651971170, 341997332, 1997824631, 1668748387, 342062868, 1997824887
  Data.l 1668748387, 342128404, 1997890679, 1685525860, 358905621, 1997890679, 1702303076, 358971157, 1997890935, 1702303077, 375748374, 1997956471, 1702303333, 375748374, 1997956471, 1702303333, 375813910, 1997956727, 1719080550, 375813910, 1997956727, 1735857767, 375879446, 1997956983, 1735857767, 375944982, 1998022775, 1752635240, 392722199, 1998022775, 1769412456, 392787735, 1998023031, 1769412457, 409564952, 1998088823, 1786189930, 409630488, 1998088823, 1786189930, 409696024, 1998089079, 1802967403, 426473241, 1998154615, 2107382124, 1048419390, -1673626212, 2107391613, 1048419390, -1673626212, 2107391613, 1048419390, -1673626212, 2107391613, 1048419390, -1656848995, 2107457149, 1048485182, -1656848739, 2124234622, 1065262399, -1656783203, 2141011839
  Data.l 1065327935, -1656782947, 2141011839, 1065327935, -1656782947, 2141011839, 1065327935, -1656782947, -2137178240, 1065393471, -1656717155, -2137177984, 1082236224, -1656716899, -2120400767, 1082236224, -1656716899, -2103623550, 1099078977, -1656651107, -2103623294, 1099078977, -1656651107, -2103623294, 1099078977, -1656585571, -2086845821, 1115921730, -1656585315, -2086845821, 1115921730, -1656585059, -2070068604, 1132764483, -1656519523, -2053291132, 1132830019, -1656519267, -2053291131, 1132830019, -1639741794, -2036448378, 1132895811, -1639741794, -2036448378, 1132895811, -1639741794, -2036448378, 1149673028, -1639676002, -2019670905, 1149738564, -1639676002, -2019670905, 1149804100, -1639675746, -2002893432, 1166581317, -1639610210, -1986116215, 1166646853, -1639609954, -1986116215, 1166646853
  Data.l -1639544162, -1969338742, 1183489606, -1639544162, -1969338742, 1183489606, -1639544162, -1969338742, 1200266823, -1639478370, -1952561269, 1200332359, -1639478370, -1952561269, 1200397895, -1639478114, -1935784052, 1200397895, -1639478114, -1919006835, 1200463431, -1639477858, -1919006835, 1200463431, -1622635105, -1918941043, 1217240904, -1622635105, -1902163827, 1217306440, -1622634849, -1902163826, 1234083657, -1622569057, -1885386353, 1234149193, -1622569057, -1885386353, 1234214729, -1622568801, -1868608880, 1250991946, -1622503265, -1851831663, 1251057482, -1622503009, -1851831663, 1251057482, -1622503009, -1851831663, 1251057482, -1622503009, -1835054447, 1251123018, -1622502753, -1835054446, 1267900235, -1622436961, -1818276973, 1267965771, -1622436961, -1818276973, 1268031307, -1622436705
  Data.l -1801499500, 1284808524, -1622371169, -2137109355, 1115725378, -1639808866, -2137111936, 1115725378, -1639808866, -2137111936, 1115725378, -1639808866, -2137111936, 1115725378, -1623031649, -2137046400, 1115725634, -1623031649, -2137046400, 1115725634, -1623031649, -2120269183, 1115791170, -1623031393, -2120269183, 1132633923, -1622965601, -2103491710, 1132633923, -1622965601, -2086714493, 1132699459, -1622899809, -2086714237, 1149476676, -1622899809, -2086714237, 1149476676, -1622899809, -2069937020, 1166319429, -1622834017, -2069936764, 1166384965, -1622833761, -2053159547, 1166384965, -1622768225, -2036382074, 1183227718, -1622767969, -2036382074, 1183227718, -1622767969, -2036382074, 1183227718, -1622767969, -2019604858, 1183293254, -1622767713, -2019604857, 1183293254, -1605924704, -2002761848
  Data.l 1200136263, -1605924704, -1985984632, 1200201799, -1605924448, -1985984631, 1216979016, -1605858656, -1969207158, 1217044552, -1605858656, -1969207158, 1217044552, -1605858656, -1969206902, 1233821769, -1605793120, -1952429685, 1233887305, -1605792864, -1952429685, 1233887305, -1605792608, -1935652468, 1233952841, -1605792608, -1918875252, 1234018377, -1605792352, -1918875251, 1250795594, -1605726816, -1918874995, 1250795594, -1605726816, -1918874995, 1250861130, -1605726560, -1902097522, 1267638347, -1605661024, -1885320305, 1267703883, -1605660768, -1885320305, 1267769419, -1588817759, -1868477296, 1284546892, -1588817759, -1851700080, 1284612428, -1588817503, -1851700079, 1301389645, -1588751967, -1851699823, 1301389645, -1588751967, -1851699823, 1301455181, -1588751711, -1834922606, 1301455181
  Data.l -1588751711, -1818145389, 1301520717, -1588751455, -1818145389, 1301586253, -1588685663, -1801367916, 1318363470, -1588685663, -1801367916, 1318363470, -1588685663, -1801367916, 1335140687, -1588619871, -1784590443, 1335206223, -1588619871, -1784590443, 1335271759, -1588619615, -1767812970, 1352048976, -1588554079, -2086580073, 1199808839, -1589148767, -2086582397, 1199808839, -1589148767, -2086582397, 1199808839, -1589148767, -2086582397, 1199808839, -1572371550, -2086516861, 1199874631, -1572371294, -2069739644, 1199874631, -1572371294, -2069739644, 1199874631, -1572371294, -2069739644, 1216717384, -1572305502, -2052962171, 1216717384, -1572305502, -2036184954, 1216782920, -1572239710, -2036184698, 1233625673, -1572239454, -2019407481, 1233625673, -1572239454, -2019407481, 1250402890, -1572173918
  Data.l -2019407225, 1250468426, -1572173662, -2002630008, 1250468426, -1572173662, -1985852791, 1250533962, -1572173406, -1985852791, 1250533962, -1572173150, -1969075574, 1267376715, -1572107614, -1969075318, 1267376715, -1572107614, -1969075318, 1267376715, -1572041822, -1952297845, 1284219468, -1572041822, -1935520629, 1284285004, -1572041566, -1935520628, 1301062221, -1571975774, -1918743155, 1301127757, -1571975774, -1918743155, 1301127757, -1571975774, -1918743155, 1301127757, -1571975774, -1901965938, 1301193293, -1571975518, -1901965938, 1301193293, -1571909726, -1885188465, 1318036046, -1571909726, -1868411249, 1318101582, -1571909470, -1868411248, 1334878799, -1571843934, -1868410992, 1334878799, -1571843934, -1868410992, 1334944335, -1571843678, -1851633519, 1351721552, -1571778142, -1834856302
  Data.l 1351787088, -1571777886, -1834856302, 1351852624, -1555000413, -1818013549, 1351852880, -1555000413, -1818013549, 1351852880, -1555000413, -1818013549, 1368630097, -1554934621, -1801236076, 1368695633, -1554934621, -1801236076, 1368761169, -1554934365, -1784458603, 1385538386, -1554868829, -1767681386, 1385603922, -1554868573, -1767681386, 1385603922, -1554803037, -1767681130, 1402381139, -1554803037, -1750903914, 1402446675, -1554802781, -1750903913, 1402446675, -1554802525, -1734126696, 1402512211, -1554802525, -1734126696, 1402577747, -1554802269, -1717349223, 1419354964, -1554736733, -2019273575, 1283957836, -1538488412, -2019275641, 1283957836, -1538488412, -2019275641, 1283957836, -1538488412, -2019275641, 1283957836, -1521711195, -2019210105, 1283958092, -1521711195, -2019209849, 1300735309
  Data.l -1521645659, -2002432632, 1300800845, -1521645403, -2002432632, 1317643598, -1521579611, -1985655159, 1317643598, -1521579611, -1968877942, 1317709134, -1521579355, -1968877942, 1317709134, -1521579355, -1968877942, 1317709134, -1521579355, -1952100725, 1334551887, -1521513563, -1952100469, 1334617423, -1521513307, -1935323252, 1334617423, -1521447771, -1935322996, 1351394640, -1521447771, -1935322996, 1351394640, -1521447515, -1918545779, 1368237393, -1521381979, -1901768307, 1368302929, -1521381723, -1901768306, 1368302929, -1521381467, -1884991089, 1368368465, -1521381467, -1884991089, 1368368465, -1521381467, -1884991089, 1385145682, -1521315675, -1868213616, 1385211218, -1521315675, -1868213616, 1385276754, -1521315419, -1851436143, 1402053971, -1521249883, -1834658926, 1402119507, -1521249627
  Data.l -1834658926, 1402119507, -1521184091, -1834658670, 1418896724, -1521184091, -1817881454, 1418962260, -1521183835, -1817881453, 1418962260, -1521183579, -1801104236, 1419027796, -1521183579, -1801104236, 1419093332, -1521183323, -1784326763, 1435870549, -1521117787, -1784326763, 1435870549, -1521117787, -1784326763, 1435936085, -1504274778, -1767483754, 1452713558, -1504274778, -1750706538, 1452779094, -1504274522, -1750706537, 1469556311, -1504208986, -1750706281, 1469556311, -1504208986, -1750706281, 1469621847, -1504208730, -1733929064, 1469621847, -1504208730, -1717151847, 1469687383, -1504208474, -1717151847, 1469752919, -1504142682, -1700374374, 1486530136, -1504142682, -1700374374, 1486530136, -1504142682, -1700374374, 1503307353, -1504076890, -1683596901, 1503372889, -1504076890, -1683596901
  Data.l 1503438425, -1504076634, -1666819684, 1503438425, -1504076634, -1968809571, 1368041041, -1504605530, -1968811638, 1368041041, -1504605530, -1968811638, 1368041041, -1504605530, -1968811638, 1368041041, -1487828313, -1968746102, 1368106833, -1487828057, -1951968629, 1384884050, -1487762521, -1951968629, 1384884050, -1487762521, -1951968629, 1401726803, -1487696729, -1935191156, 1401726803, -1487696729, -1918413939, 1401792339, -1487696473, -1918413939, 1401792339, -1487696473, -1918413939, 1401792339, -1487696473, -1901636722, 1418635092, -1487630681, -1901636466, 1418700628, -1487630425, -1884859249, 1418700628, -1487564889, -1868081776, 1435543381, -1487564633, -1868081776, 1435543381, -1487564633, -1868081776, 1435543381, -1487564633, -1851304560, 1435608917, -1487564377, -1851304559, 1435608917
  Data.l -1470721368, -1834461550, 1452451926, -1470721368, -1834461550, 1452451926, -1470721368, -1834461550, 1469229143, -1470655576, -1817684077, 1469294679, -1470655576, -1817684077, 1469360215, -1470655320, -1800906860, 1469360215, -1470655320, -1784129643, 1469425751, -1470655064, -1784129643, 1469425751, -1470589528, -1784129387, 1486202968, -1470589528, -1767352171, 1486268504, -1470589272, -1767352170, 1503045721, -1470523480, -1750574697, 1503111257, -1470523480, -1750574697, 1503111257, -1470523480, -1750574441, 1519888474, -1470457944, -1733797224, 1519954010, -1470457688, -1733797224, 1520019546, -1470457432, -1717020007, 1520019546, -1470457432, -1717020007, 1520019546, -1470457432, -1717020007, 1536796763, -1470391640, -1700242534, 1536862299, -1470391640, -1700242534, 1536927835, -1470391384
  Data.l -1683465061, 1553705052, -1470325848, -1666687844, 1553770588, -1470325592, -1666687844, 1553770588, -1470325592, -1666687844, 1553770588, -1470325592, -1649910628, 1553836124, -1470325336, -1649910627, 1570613341, -1470259544, -1633133154, 1570678877, -1470259544, -1633133154, 1570678877, -1470259544, -1633132898, 1587456094, -1470194008, -1901437281, 1485744728, -1437036886, -1901438834, 1485744728, -1437036886, -1901438834, 1485744728, -1437036886, -1901438834, 1485744728, -1437036886, -1901438834, 1485810264, -1437036630, -1884661361, 1502587481, -1436971094, -1867884144, 1502653017, -1436970838, -1867884144, 1502653017, -1436970838, -1867884144, 1502653017, -1436970838, -1851106927, 1502718553, -1436905046, -1851106671, 1519561306, -1436904790, -1834329454, 1519561306, -1436904790, -1817552237
  Data.l 1536404059, -1436838998, -1817551981, 1536404059, -1436838998, -1817551981, 1536404059, -1436838998, -1800774764, 1536469595, -1436838742, -1800774764, 1536469595, -1436838486, -1783997547, 1553312348, -1436772950, -1783997291, 1553312348, -1436772950, -1783997291, 1553312348, -1419929941, -1767154282, 1570155357, -1419929941, -1750377066, 1570220893, -1419929685, -1750377065, 1570220893, -1419929685, -1750377065, 1570220893, -1419929685, -1750377065, 1570286429, -1419929429, -1733599592, 1587063646, -1419863893, -1716822375, 1587129182, -1419863637, -1716822375, 1587129182, -1419798101, -1716822119, 1603906399, -1419798101, -1700044903, 1603971935, -1419797845, -1700044902, 1603971935, -1419797589, -1683267685, 1604037471, -1419797589, -1683267685, 1604037471, -1419797589, -1683267429, 1620814688
  Data.l -1419732053, -1666490212, 1620880224, -1419731797, -1666490212, 1620945760, -1402888788, -1649647203, 1637723233, -1402888788, -1649647203, 1637723233, -1402888788, -1649647203, 1637723233, -1402888532, -1632869986, 1637788769, -1402888532, -1632869986, 1637854305, -1402888276, -1616092513, 1654631522, -1402822740, -1616092513, 1654631522, -1402822740, -1616092513, 1654697058, -1402756948, -1599315040, 1671474275, -1402756948, -1582537824, 1671539811, -1402756692, -1582537823, 1671539811, -1402756436, -1565760606, 1671605347, -1402756436, -1565760606, 1671605347, -1402756436, -1565760350, 1688382564, -1402690900, -1834130269, 1586670942, -1386310995, -1834131822, 1586670942, -1386310995, -1834131822, 1586670942, -1386310995, -1834131822, 1586670942, -1386310995, -1834131822, 1586736478, -1386310739
  Data.l -1817354605, 1586736478, -1386310739, -1800577388, 1586802014, -1386310483, -1800577388, 1603579231, -1386244947, -1800577132, 1603579231, -1386244947, -1783799915, 1603644767, -1386179155, -1783799659, 1620487520, -1386178899, -1767022442, 1620487520, -1386178899, -1767022442, 1620487520, -1386178899, -1767022442, 1620553056, -1386178643, -1750245225, 1620553056, -1386113107, -1733467752, 1637395809, -1386112851, -1733467752, 1637395809, -1386112851, -1733467752, 1654173026, -1386047315, -1716690280, 1654238562, -1386047059, -1716690279, 1654238562, -1369269586, -1699847526, 1654304354, -1369269586, -1699847526, 1654304354, -1369269586, -1699847526, 1671081571, -1369203794, -1683070053, 1671147107, -1369203794, -1683070053, 1671212643, -1369203538, -1666292580, 1687989860, -1369138002, -1666292580
  Data.l 1687989860, -1369138002, -1666292580, 1687989860, -1369137746, -1649515363, 1688055396, -1369137746, -1649515363, 1688055396, -1369137746, -1649515363, 1704832613, -1369071954, -1632737890, 1704898149, -1369071954, -1632737890, 1704963685, -1369071698, -1615960673, 1704963685, -1369071698, -1615960673, 1704963685, -1369071698, -1615960673, 1705029221, -1352228689, -1599117664, 1721806694, -1352228689, -1582340448, 1721872230, -1352228433, -1582340447, 1738649447, -1352162897, -1582340191, 1738649447, -1352162897, -1582340191, 1738714983, -1352162641, -1565562974, 1738714983, -1352162641, -1548785757, 1738780519, -1352162385, -1548785757, 1738780519, -1352096849, -1548785501, 1755557736, -1352096849, -1532008285, 1755623272, -1352096593, -1532008284, 1772400489, -1352030801, -1515230811, 1772466025
  Data.l -1352030801, -1515230811, 1772466025, -1352030801, -1515230811, 1772466025, -1352030801, -1766823514, 1670819939, -1335650640, -1766825066, 1670819939, -1335650640, -1766825066, 1670819939, -1335650640, -1766825066, 1670819939, -1335650640, -1766825066, 1670885475, -1335650384, -1750047593, 1687662692, -1335584848, -1750047593, 1687662692, -1335584848, -1750047593, 1704505445, -1335519056, -1733270120, 1704505445, -1335519056, -1716492903, 1704570981, -1335518800, -1716492903, 1704570981, -1335518800, -1716492903, 1704570981, -1335518800, -1699715686, 1721413734, -1335453008, -1699715430, 1721479270, -1335452752, -1682938213, 1721479270, -1335387216, -1682937957, 1738256487, -1335387216, -1682937957, 1738256487, -1335386960, -1666160740, 1738322023, -1335386960, -1649383524, 1738387559, -1335386704
  Data.l -1649383523, 1738387559, -1318543951, -1649317731, 1755165032, -1318543951, -1632540515, 1755230568, -1318543695, -1632540514, 1755230568, -1318543695, -1632540514, 1755230568, -1318543695, -1632540514, 1755296104, -1318543439, -1615763041, 1772073321, -1318477903, -1598985824, 1772138857, -1318477647, -1598985824, 1772138857, -1318412111, -1598985568, 1788916074, -1318412111, -1582208352, 1788981610, -1318411855, -1582208351, 1788981610, -1318411599, -1565431134, 1789047146, -1318411599, -1565431134, 1789047146, -1318411599, -1565430878, 1805824363, -1318346063, -1548653661, 1805889899, -1318345807, -1548653661, 1805955435, -1318280015, -1531876188, 1822732652, -1318280015, -1531876188, 1822732652, -1318280015, -1531876188, 1822732652, -1318279759, -1515098971, 1822798188, -1318279759, -1515098971
  Data.l 1822798188, -1318279759, -1515098715, 1839575405, -1318214223, -1498321498, 1839640941, -1318213967, -1498321498, 1839706477, -1318148175, -1481544025, 1856483694, -1318148175, -1481544025, 1856483694, -1318148175, -1481544025, 1856483694, -1318147919, -1464766808, 1856549230, -1318147919, -1464766808, 1856614766, -1318147663, -1447989335, 1873391983, -1318082127, -1682739287, 1788588906, -1284858957, -1682740581, 1788588906, -1284858957, -1682740581, 1788588906, -1284858957, -1682740581, 1788588906, -1268081740, -1682675045, 1788589162, -1268081740, -1682674789, 1805366379, -1268016204, -1665897572, 1805431915, -1268015948, -1665897572, 1805497451, -1268015692, -1649120355, 1805497451, -1268015692, -1649120355, 1805497451, -1267950156, -1649120099, 1822340204, -1267949900, -1632342882, 1822340204
  Data.l -1267949900, -1632342882, 1839117421, -1267884364, -1632342626, 1839182957, -1267884108, -1615565409, 1839182957, -1267884108, -1598788192, 1839248493, -1267883852, -1598788192, 1839248493, -1267883852, -1598788192, 1856025710, -1267818316, -1582010720, 1856091246, -1267818060, -1582010719, 1856091246, -1267818060, -1582010719, 1856091246, -1267818060, -1565233503, 1856156782, -1267817804, -1565233502, 1872933999, -1267752012, -1548456029, 1872999535, -1267752012, -1548456029, 1872999535, -1267752012, -1548455773, 1889776752, -1267686476, -1531678556, 1889842288, -1267686220, -1531678556, 1889842288, -1267686220, -1531678556, 1889842288, -1267686220, -1514901340, 1889907824, -1267685964, -1514901339, 1906685041, -1267620172, -1498123866, 1906750577, -1267620172, -1498123866, 1906750577, -1267620172
  Data.l -1498123866, 1906750577, -1267620172, -1481346649, 1906816113, -1267619916, -1481346649, 1906816113, -1250777163, -1481280857, 1923593586, -1250777163, -1464503641, 1923659122, -1250776907, -1464503640, 1940436339, -1250711115, -1447726167, 1940501875, -1250711115, -1447726167, 1940501875, -1250711115, -1447726167, 1940501875, -1250711115, -1430948950, 1940567411, -1250710859, -1430948950, 1940632947, -1250645067, -1414171477, 1957410164, -1250645067, -1414171477, 1957410164, -1250645067, -1414171477, 1957410164, -1250644811, -1397394260, 1957475700, -1250644811, -1397394260, 1957475700, -1250644811, -1397394004, 1974252917, -1250579275, -1632275027, 1872672111, -1250976075, -1632276578, 1872672111, -1250976075, -1632276578, 1872672111, -1250976075, -1632276578, 1872672111, -1234198858, -1632211042
  Data.l 1872737903, -1234198602, -1615433825, 1872737903, -1234198602, -1615433825, 1872737903, -1234198602, -1615433825, 1889580656, -1234132810, -1598656352, 1889580656, -1234132810, -1598656352, 1889580656, -1234067274, -1598656096, 1906423409, -1234067018, -1581878879, 1906423409, -1234067018, -1581878879, 1906423409, -1234067018, -1581878879, 1906488945, -1234066762, -1565101662, 1906488945, -1234001226, -1548324189, 1923331698, -1234000970, -1548324189, 1923331698, -1234000970, -1548324189, 1923331698, -1234000970, -1531546973, 1923397234, -1234000714, -1531546972, 1923397234, -1217157961, -1531481180, 1940174707, -1217157961, -1514703964, 1940240243, -1217157705, -1514703963, 1957017460, -1217091913, -1497926490, 1957082996, -1217091913, -1497926490, 1957082996, -1217091913, -1497926490, 1957082996
  Data.l -1217091913, -1481149273, 1957148532, -1217091657, -1481149273, 1957148532, -1217026121, -1481149017, 1973925749, -1217026121, -1464371801, 1973991285, -1217025865, -1464371800, 1973991285, -1217025609, -1447594583, 1974056821, -1217025609, -1447594583, 1974056821, -1217025609, -1447594327, 1990834038, -1216960073, -1430817110, 1990899574, -1216959817, -1430817110, 1990899574, -1216894281, -1430816854, 2007676791, -1216894281, -1414039638, 2007742327, -1216894025, -1414039637, 2007742327, -1216894025, -1414039637, 2007742327, -1216894025, -1414039637, 2007807863, -1216893769, -1397262164, 2024585080, -1216828233, -1380484947, 2024650616, -1216827977, -1380484947, 2024650616, -1216827977, -1380484947, 2024650616, -1216827977, -1363707731, 2024716152, -1216827721, -1363707730, 2041493369, -1216762185
  Data.l -1363707474, 2041493369, -1216762185, -1363707474, 2041558905, -1216761929, -1346930257, 2041558905, -1216761929, -1564968528, 1973598325, -1200250184, -1564969566, 1973598325, -1200250184, -1564969566, 1973598325, -1200250184, -1564969566, 1973598325, -1183472967, -1564904030, 1973598581, -1183472967, -1564904030, 1973598581, -1183472967, -1548126813, 1973664117, -1183472711, -1548126813, 1990506870, -1183406919, -1531349340, 1990506870, -1183406919, -1531349340, 1990506870, -1183406919, -1531349340, 1990572406, -1183406663, -1514572123, 1990572406, -1183406663, -1514572123, 2007349623, -1183341127, -1514571867, 2007415159, -1183340871, -1497794650, 2007415159, -1183340871, -1497794650, 2007415159, -1183340871, -1497794650, 2007415159, -1183340615, -1481017433, 2024257912, -1183275079, -1481017177
  Data.l 2024257912, -1183275079, -1481017177, 2024257912, -1166432070, -1464174168, 2041100921, -1166432070, -1447396952, 2041166457, -1166431814, -1447396951, 2041166457, -1166431814, -1447396951, 2041166457, -1166431814, -1447396951, 2041231993, -1166431558, -1430619478, 2058009210, -1166366022, -1430619478, 2058009210, -1166366022, -1430619478, 2058009210, -1166365766, -1413842261, 2058074746, -1166365766, -1413842261, 2058074746, -1166365766, -1413842261, 2074851963, -1166299974, -1397064788, 2074917499, -1166299974, -1397064788, 2074983035, -1166299718, -1380287571, 2074983035, -1166299718, -1380287571, 2074983035, -1166299718, -1380287571, 2075048571, -1166233926, -1363510098, 2091825788, -1166233926, -1363510098, 2091825788, -1166233926, -1363510098, 2108603005, -1166168134, -1346732625, 2108668541
  Data.l -1166168134, -1346732625, 2108668541, -1166168134, -1346732625, 2108668541, -1166168134, -1329955408, 2108734077, -1166167878, -1329955408, 2108799613, -1166102086, -1313177935, 2125576830, -1166102086, -1313177935, 2125576830, -1166102086, -1313177935, 2125576830, -1166101830, -1296400718, 2125642366, -1166101830, -1296400718, 2125642366, -1166101830, -1296400462, 2142419583, -1166036294, -1514438733, 2040904569, -1149655621, -1514440283, 2040904569, -1149655621, -1514440283, 2040904569, -1149655621, -1514440283, 2040904569, -1149655621, -1514440283, 2040970105, -1149655365, -1497662810, 2057747322, -1149589829, -1497662810, 2057747322, -1149589829, -1497662810, 2074590075, -1149524037, -1480885337, 2074590075, -1149524037, -1480885337, 2074590075, -1149524037, -1480885337, 2074655611, -1149523781
  Data.l -1464108120, 2074655611, -1149523781, -1464108120, 2091432828, -1149458245, -1464107864, 2091498364, -1149457989, -1447330647, 2091498364, -1149457989, -1447330647, 2091498364, -1149457989, -1447330647, 2091498364, -1149457733, -1430553430, 2108341117, -1149392197, -1413775958, 2108406653, -1149391941, -1413775957, 2108406653, -1132614724, -1413710421, 2108406909, -1132614724, -1396933205, 2108472445, -1132614468, -1396933204, 2125249662, -1132548932, -1396932948, 2125249662, -1132548932, -1396932948, 2125315198, -1132548676, -1380155731, 2125315198, -1132548676, -1380155731, 2125315198, -1132548676, -1380155731, 2125315198, -1132482884, -1363378258, 2142157951, -1132482884, -1363378258, 2142157951, -1132482884, -1363378258, 2142157951, -1132482628, -1346601041, 2142223487, -1132482628, -1346601041
  Data.l 2142223487, -1132482628, -1346600785, -2135966592, -1132417092, -1329823568, -2135901056, -1132416836, -1329823568, -2135835520, -1132351044, -1313046095, -2119058303, -1132351044, -1313046095, -2119058303, -1132351044, -1313046095, -2119058303, -1132350788, -1296268878, -2118992767, -1132350788, -1296268878, -2118992767, -1132350788, -1296268622, -2102215550, -1132285252, -1279491405, -2102150014, -1132284996, -1279491405, -2102150014, -1132284996, -1279491405, -2102150014, -1132284996, -1262714189, -2102084478, -1132284740, -1262714188, -2085307261, -1132219204, -1262713932, -2085307261, -1132219204, -1262713932, -2085241725, -1132218948, -1245936715, -2085241725, -1132218948, -1463974987, 2124987774, -1115772739, -1463976280, 2124987774, -1115772739, -1463976280, 2124987774, -1115772739, -1463976280, 2124987774
  Data.l -1098995522, -1463910744, 2125053566, -1098995266, -1447133271, 2141830783, -1098929730, -1447133271, 2141830783, -1098929730, -1447133271, 2141896319, -1098929474, -1430356054, 2141896319, -1098929474, -1430356054, 2141896319, -1098863938, -1430355798, -2136228224, -1098863682, -1413578581, -2136228224, -1098863682, -1413578581, -2136228224, -1098863682, -1413578581, -2136162688, -1098863426, -1396801364, -2136162688, -1098797890, -1396801108, -2119385471, -1098797890, -1396801108, -2119385471, -1098797634, -1380023891, -2119319935, -1098797634, -1363246675, -2119254399, -1098797378, -1363246674, -2119254399, -1098731842, -1363246418, -2102477182, -1098731842, -1346469202, -2102411646, -1098731586, -1346469201, -2102411646, -1098731586, -1346469201, -2102411646, -1098731586, -1346469201, -2102346110, -1098731330
  Data.l -1329691728, -2085568893, -1098665794, -1329691728, -2085568893, -1098665794, -1329691728, -2085568893, -1098600002, -1312914255, -2068726140, -1098600002, -1312914255, -2068726140, -1098600002, -1312914255, -2068726140, -1098599746, -1296137038, -2068660604, -1098599746, -1296137038, -2068660604, -1098599746, -1296136782, -2051883387, -1098534210, -1279359565, -2051817851, -1098533954, -1279359565, -2051817851, -1081756737, -1279294029, -2051817595, -1081756737, -1262516813, -2051752059, -1081756481, -1262516812, -2034974842, -1081690945, -1262516556, -2034974842, -1081690945, -1262516556, -2034909306, -1081690689, -1245739339, -2034909306, -1081690689, -1245739339, -2034909306, -1081690689, -1245739339, -2034843770, -1081624897, -1228961866, -2018066553, -1081624897, -1228961866, -2018066553, -1081624897, -1228961866
  Data.l -2018066553, -1081624641, -1212184649, -2018001017, -1081624641, -1212184649, -2017935481, -1081624385, -1195407176, -2001158264, -1081558849, -1413510984, -2102673534, -1081955393, -1413512533, -2102673534, -1081955393, -1413512533, -2102673534, -1081955393, -1413512533, -2102673534, -1065178176, -1413446997, -2102673278, -1065178176, -1413446741, -2085896061, -1065112640, -1396669524, -2085830525, -1065112384, -1396669524, -2085830525, -1065112384, -1396669524, -2085830525, -1065112384, -1379892307, -2085764989, -1065046592, -1379892051, -2068987772, -1065046592, -1379892051, -2068987772, -1065046592, -1363114834, -2068922236, -1065046336, -1363114834, -2068922236, -1065046336, -1363114834, -2068922236, -1064980800, -1346337361, -2052079483, -1064980544, -1346337361, -2052079483, -1064980544, -1346337361, -2052079483
  Data.l -1064980544, -1329560145, -2052013947, -1064980288, -1329560144, -2052013947, -1064914752, -1329559888, -2035236730, -1064914752, -1312782672, -2035171194, -1064914496, -1312782671, -2035171194, -1064914240, -1296005454, -2035105658, -1064914240, -1296005454, -2035105658, -1064914240, -1296005198, -2018328441, -1064848704, -1279227981, -2018262905, -1064848448, -1279227981, -2018262905, -1064848448, -1279227981, -2018262905, -1064848448, -1262450765, -2018197369, -1064848192, -1262450764, -2001420152, -1064782656, -1262450508, -2001420152, -1064782656, -1262450508, -2001354616, -1064782400, -1245673291, -2001354616, -1064782400, -1245673291, -2001354616, -1064782400, -1245673291, -2001289080, -1047939391, -1228830282, -1984511607, -1047939391, -1228830282, -1984511607, -1047939391, -1228830282, -1984511607, -1047939135
  Data.l -1212053065, -1984446071, -1047939135, -1212053065, -1984446071, -1047939135, -1212052809, -1967668854, -1047873599, -1195275592, -1967603318, -1047873343, -1195275592, -1967603318, -1047873343, -1195275592, -1967603318, -1047873343, -1178498376, -1967537782, -1047873087, -1178498375, -1950760565, -1047807551, -1178498119, -1950760565, -1047807551, -1178498119, -1950695029, -1047807295, -1161720902, -1950695029, -1047807295, -875000902, -1295263566, -659371048, -874990901, -1295263566, -659371048, -874990901, -1295263566, -659371048, -874990901, -1295263566, -659371048, -874990901, -1295198030, -659370792, -858213684, -1295198030, -659370792, -858213684, -1295198030, -659370792, -858213684, -1278420813, -659305256, -858213428, -1278420813, -659305256, -858213428, -1278420813, -659305256, -858213428
  Data.l -1278355277, -659305000, -841436211, -1278355277, -659305000, -841436211, -1278355277, -659305000, -841436211, -1278355277, -659305000, -841436211, -1278355277, -659239464, -824658738, -1261512524, -659239208, -824658738, -1261512524, -659239208, -824658738, -1261512524, -659239208, -824658738, -1261512524, -659239208, -824658738, -1261512524, -659238952, -807881521, -1261446988, -659238952, -807881521, -1261446988, -659238952, -807881521, -1244669771, -659173416, -807881265, -1244669771, -659173416, -807881265, -1244604235, -659173160, -791104048, -1244604235, -659173160, -791104048, -1244604235, -659173160, -791104048, -1244604235, -659173160, -791104048, -1244604235, -659173160, -774326832, -1244538699, -659172904, -774326831, -1227761482, -659107368, -774326575, -1227761482
  Data.l -659107368, -774326575, -1227761482, -659107368, -774326575, -1227761482, -659107368, -757549358, -1227695946, -659107112, -757549358, -1227695946, -642329895, -757483822, -1227695690, -642329895, -757483822, -1227695690, -642329895, -757483822, -1210918473, -642264359, -757483566, -1210918473, -642264359, -757483566, -1210852937, -642264103, -740706349, -1210852937, -642264103, -740706349, -1210852937, -642264103, -740706349, -1210852937, -642264103, -740706349, -1210852937, -642264103, -723929133, -1210787401, -642263847, -723929132, -1210787401, -642263847, -723929132, -1210787401, -642263847, -723929132, -1210787401, -642263847, -723928876, -1194010184, -642198311, -1127434027, -1229140810, -860439348, -1127434564, -1229140810, -860439348, -1127434564, -1229140810, -860439348
  Data.l -1127434564, -1229140810, -860439348, -1127434564, -1229140810, -860439348, -1127434564, -1229140810, -860439348, -1127434564, -1229140810, -860439348, -1127434564, -1229140810, -860439348, -1127434564, -1229140810, -860439348, -1127434564, -1229140810, -860439348, -1127434564, -1229140810, -860439348, -1127434564, -1229140810, -860439348, -1127434564, -1229140810, -860439348, -1127434564, -1229140810, -860439348, -1127434564, -1229140810, -860439348, -1127434564, -1229140810, -860439348, -1127434564, -1229140810, -860439348, -1127434564, -1229140810, -860439348, -1127434564, -1229140810, -860439348, -1127434564, -1229140810, -860439348, -1127434564, -1229140810, -860439348, -1127434564, -1229140810, -860439348, -1127434564, -1229140810, -860439348, -1127434564, -1229140810, -860439348, -1127434564
  Data.l -1229140810, -860439348, -1127434564, -1229140810, -860439348, -1127434564, -1229140810, -860439348, -1127434564, -1229140810, -860439348, -1127434564, -1229140810, -860439348, -1127434564, -1229140810, -860439348, -1127434564, -1229140810, -860439348, -1127434564, -1229140810, -860439348, -1127434564, -1229140810, -860439348, -1127434564, -1229140810, -860439348, -1127434564, -1229140810, -860439348, -1127434564, -1229140810, -860439348, -1127434564, -1229140810, -860439348, -1127434564, -1229140810, -860439348, -1127434564, -1229140810, -860439348, -1127434564, -1229140810, -860439348, -1127434564, -1229140810, -860439348, -1127434564, -1229140810, -860439348, -1127434564, -1229140810, -860439348, -1127434564, -1229140810, -860439348, -1127434564, -1229140810, -860439348, -1127434564, -1229140810
  Data.l -860439348, -1127434564, -1229140810, -860439348, -1127434564, -1229140810, -860439348, -1127434564, -1229140810, -860439348, -1127434564, -1229140810, -860439348, 46780
  ENDEBILD:
EndDataSection
Der Aufruf:

Code: Alles auswählen

Enumeration
  #Window_0
EndEnumeration

Procedure Open_Window_0()
  If OpenWindow(#Window_0, 397, 203, 528, 380, "Toolbar DLL Test",  #PB_Window_SystemMenu | #PB_Window_SizeGadget | #PB_Window_TitleBar |#PB_Window_MaximizeGadget | #PB_Window_MinimizeGadget)
    If CreateGadgetList(WindowID(#Window_0))         
    EndIf
  EndIf
EndProcedure

Open_Window_0()
If OpenLibrary(0, "C:\Toolbar.dll")
CallFunction(0, "AddToolBarStretch",WindowID(#Window_0))
EndIf

Repeat
  Event = WaitWindowEvent()
  WindowID = EventWindow()
  GadgetID = EventGadget()
  EventType = EventType()  
  If Event = #PB_Event_Gadget   
  EndIf
  
Until Event = #PB_Event_CloseWindow 
If IsLibrary(0) <> 0 : CloseLibrary(0) : EndIf
End
PB 5.71 LTS Windows 10 Pro & Ubuntu 18.04.2 LTS & Linux Mint 19.3
-----------------------------------------------------
Alles ist, wie man glaubt, dass es ist!
a14xerus
Beiträge: 1440
Registriert: 14.12.2005 15:51
Wohnort: Aachen

Beitrag von a14xerus »

Ich habe mir mal erlaubt, dass Bild aus der DataSection zu speichern Bild
Bei mir funktioniert alles, das "fertige Beispiel ohne DLL" kenne ich ja schon.
Ich selber steige durch den Api-Hook noch nicht so ganz durch, aber vielleicht krieg ich das ja auch noch gebacken :lol:
//edit: so langsam kommts ;)
Benutzeravatar
Ligatur
Beiträge: 196
Registriert: 09.07.2006 00:41

Beitrag von Ligatur »

SetWindowCallback funktioniert, man darf nur nicht den Mechanismus mit #PB_ProcessPureBasicEvents benutzen sondern muß am Ende der Callbackprozedur

Code: Alles auswählen

ProcedureReturn DefWindowProc_(hwnd, message, wParam, lParam)
aufrufen. Die Purebasiceigene Nachrichtenbearbeitung funktioniert danach natürlich nicht mehr so daß man alle Nachrichten über den Messageparameter direkt bearbeiten muß.
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

so eine datasection für so ein bild?

@legion:
das würde ich mal on-the-fly erstellen.

du hast hier vertikal 32 verschiedenfarbige punkte, aber horizontal ist das identisch.

also könntest du eine schleife schreiben, die 200 mal durchläuft,
und immer die 32 punkte untereinander direkt auf ein image malt.

der vorgang müßte nur 1x durchgeführt werden, wäre also schnell genug,
und du musst nur 32x3byte im code mitführen, die 32 farben,
nicht 200x32x3 oder sogar 200x32x4, falls du ne 32bit version gespeichert hast.
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
legion
Beiträge: 467
Registriert: 08.10.2006 18:04
Computerausstattung: Intel Core i5-6500 @ 4x 3.6GHz mit Windows 10 Pro, Intel Core-i7 mit Ubuntu 18.04 bionic, x86_64 Linux 4.18.0-16-generic, Microsoft Surface Pro - Windows 10 Pro
Wohnort: Wien
Kontaktdaten:

Beitrag von legion »

Kaeru Gaman hat geschrieben:so eine datasection für so ein bild?
Danke für deine genaue Analyse !
Werd ich sicher umsetzen.
Wollte noch keine Zeit mit der Bilddarstellung verschwenden,
Prio hat momentan die Funktionalität der DLL.


Ligatur hat geschrieben:SetWindowCallback funktioniert, man darf nur nicht den Mechanismus mit #PB_ProcessPureBasicEvents benutzen sondern muß am Ende der Callbackprozedur
Danke für die Info !
Ist sehr wichtig für mich !

Lg. Legion
PB 5.71 LTS Windows 10 Pro & Ubuntu 18.04.2 LTS & Linux Mint 19.3
-----------------------------------------------------
Alles ist, wie man glaubt, dass es ist!
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

...und jetzt wo ich drüber nachdenke, merke ich, dass ich unfug geschrieben hab:
du brauchst 32 waagerechte linien.
das mit einzelpunkten zu machen wäre hirnrissig... :oops:
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Antworten