Seite 1 von 3

SetWindowCallback in einer DLL aufrufen

Verfasst: 19.05.2007 10:27
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 !

Verfasst: 19.05.2007 10:34
von edel
Die DLL hat kein Zugriff auf die Objektliste der Executable. Nimm lieber
Api dafuer.

Verfasst: 19.05.2007 10:43
von legion
Sorry, was meinst du mit API ?
Meinst du mit "CallWindowProc_" ?
Kannst du mir das genauer erklären !

Danke !

Verfasst: 20.05.2007 00:10
von edel
Ja , mit SetWindowLong eben selber den Callback veraendern.

Verfasst: 20.05.2007 10:55
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

Verfasst: 20.05.2007 20:34
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 ;)

Verfasst: 20.05.2007 22:15
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ß.

Verfasst: 20.05.2007 22:20
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.

Verfasst: 20.05.2007 22:30
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

Verfasst: 20.05.2007 22:35
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: