MSG_BEFORE = 1 'Callback before the original WndProc
MSG_AFTER = 2 'Callback after the original WndProc
MSG_BEFORE_AFTER = MSG_BEFORE Or MSG_AFTER 'Callback before and after the original WndProc
End Enum
Private Const ALL_MESSAGES As Long = -1 'All messages callback
Private Const MSG_ENTRIES As Long = 32 'Number of msg table entries
Private Const WNDPROC_OFF As Long = &H38 'Thunk offset to the WndProc execution address
Private Const GWL_WNDPROC As Long = -4 'SetWindowsLong WndProc index
Private Const IDX_SHUTDOWN As Long = 1 'Thunk data index of the shutdown flag
Private Const IDX_HWND As Long = 2 'Thunk data index of the subclassed hWnd
Private Const IDX_WNDPROC As Long = 9 'Thunk data index of the original WndProc
Private Const IDX_BTABLE As Long = 11 'Thunk data index of the Before table
Private Const IDX_ATABLE As Long = 12 'Thunk data index of the After table
Private Const IDX_PARM_USER As Long = 13 'Thunk data index of the User-defined callback parameter data index
Private z_ScMem As Long 'Thunk base address
Private z_Sc(64) As Long 'Thunk machine-code initialised here
Private z_Funk As Collection 'hWnd/thunk-address collection
Private Declare Function CallWindowProcA Lib "user32" (ByVal lpPrevWndFunc As Long, ByVal hWnd As Long, ByVal Msg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
Private Declare Function GetCurrentProcessId Lib "kernel32" () As Long
Private Declare Function GetModuleHandleA Lib "kernel32" (ByVal lpModuleName As String) As Long
Private Declare Function GetProcAddress Lib "kernel32" (ByVal hModule As Long, ByVal lpProcName As String) As Long
Private Declare Function GetWindowThreadProcessId Lib "user32" (ByVal hWnd As Long, lpdwProcessId As Long) As Long
Private Declare Function IsBadCodePtr Lib "kernel32" (ByVal lpfn As Long) As Long
Private Declare Function IsWindow Lib "user32" (ByVal hWnd As Long) As Long
Private Declare Function SetWindowLongA Lib "user32" (ByVal hWnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
Private Declare Function VirtualAlloc Lib "kernel32" (ByVal lpAddress As Long, ByVal dwSize As Long, ByVal flAllocationType As Long, ByVal flProtect As Long) As Long
Private Declare Function VirtualFree Lib "kernel32" (ByVal lpAddress As Long, ByVal dwSize As Long, ByVal dwFreeType As Long) As Long
Private Declare Sub RtlMoveMemory Lib "kernel32" (ByVal Destination As Long, ByVal Source As Long, ByVal Length As Long)
Private Declare Function SetWindowRgn Lib "user32" (ByVal hWnd As Long, ByVal hRgn As Long, ByVal bRedraw As Boolean) As Long
Private Declare Function CombineRgn Lib "gdi32" (ByVal hDestRgn As Long, ByVal hSrcRgn1 As Long, ByVal hSrcRgn2 As Long, ByVal nCombineMode As Long) As Long
Private Declare Function CreateRectRgn Lib "gdi32" (ByVal X1 As Long, ByVal Y1 As Long, ByVal X2 As Long, ByVal Y2 As Long) As Long
Private Declare Function CreateRoundRectRgn Lib "gdi32" (ByVal X1 As Long, ByVal Y1 As Long, ByVal X2 As Long, ByVal Y2 As Long, ByVal X3 As Long, ByVal Y3 As Long) As Long
Private Declare Function DrawState Lib "user32" Alias "DrawStateA" (ByVal hdc As Long, ByVal hBrush As Long, ByVal lpDrawStateProc As Long, ByVal lParam As Long, ByVal wParam As Long, ByVal X As Long, ByVal Y As Long, ByVal cX As Long, ByVal cY As Long, ByVal fuFlags As Long) As Long
Private Declare Function DrawStateText Lib "user32" Alias "DrawStateA" (ByVal hdc As Long, ByVal hBrush As Long, ByVal lpDrawStateProc As Long, ByVal lParam As String, ByVal wParam As Long, ByVal n1 As Long, ByVal n2 As Long, ByVal n3 As Long, ByVal n4 As Long, ByVal un As Long) As Long
Private Declare Function CreateSolidBrush Lib "gdi32" (ByVal crColor As Long) As Long
Private Declare Function SetPixelV Lib "gdi32" (ByVal hdc As Long, ByVal X As Long, ByVal Y As Long, ByVal crColor As Long) As Long
Private Declare Function TranslateColor Lib "olepro32.dll" Alias "OleTranslateColor" (ByVal clr As OLE_COLOR, ByVal palet As Long, Col As Long) As Long
Private Declare Function PtInRegion Lib "gdi32" (ByVal hRgn As Long, ByVal X As Long, ByVal Y As Long) As Long
Private Declare Function DeleteObject Lib "gdi32" (ByVal hObject As Long) As Long
Private Declare Function InflateRect Lib "user32" (lpRect As RECT, ByVal X As Long, ByVal Y As Long) As Long
Private Declare Function Ellipse Lib "gdi32" (ByVal hdc As Long, ByVal X1 As Long, ByVal Y1 As Long, ByVal X2 As Long, ByVal Y2 As Long) As Long
Private Declare Function SetRect Lib "user32" (lpRect As RECT, ByVal X1 As Long, ByVal Y1 As Long, ByVal X2 As Long, ByVal Y2 As Long) As Long
Private Declare Function IsRectEmpty Lib "user32" (lpRect As RECT) As Long
Private Declare Function SelectObject Lib "gdi32" (ByVal hdc As Long, ByVal hObject As Long) As Long
Private Declare Function CreatePen Lib "gdi32" (ByVal nPenStyle As Long, ByVal nWidth As Long, ByVal crColor As Long) As Long
Private Declare Function FillRect Lib "user32" (ByVal hdc As Long, lpRect As RECT, ByVal hBrush As Long) As Long
'Description: Enable or disable the control
Public Property Let Enabled(bEnabled As Boolean)
On Error GoTo Handler
m_bEnabled = bEnabled
PropertyChanged "Enabled"
'/*** added
DrawButton (eNormal)
Handler:
End Property
Public Property Get Enabled() As Boolean
On Error GoTo Handler
Enabled = m_bEnabled
Refresh
Exit Property
Handler:
End Property
Public Property Let ColorScheme(newValue As eColorScheme)
Select Case newValue
Case Aqua
ColorButtonUp = &HD06720
ColorButtonHover = &HE99950
ColorButtonDown = &HA06710
ColorBright = &HFFEDB0
Case WMP10
ColorButtonUp = &HD09060
ColorButtonHover = &HE06000
ColorButtonDown = &HA98050
ColorBright = &HFFFAFA
Case DeepBlue
ColorButtonUp = &H800000
ColorButtonHover = &HA00000
ColorButtonDown = &HF00000
ColorBright = &HFF0000
Case DeepRed
ColorButtonUp = &H80&
ColorButtonHover = &HA0&
ColorButtonDown = &HF0&
ColorBright = &HFF&
Case DeepGreen
ColorButtonUp = &H8000&
ColorButtonHover = &HA000&
ColorButtonDown = &HC000&
ColorBright = &HFF00&
Case DeepYellow
ColorButtonUp = &H8080&
ColorButtonHover = &HA0A0&
ColorButtonDown = &HC0C0&
ColorBright = &HFFFF&
End Select
m_ColorScheme = newValue
PropertyChanged "m_ColorScheme"
DrawButton (eNormal)
End Property
Public Property Get ColorScheme() As eColorScheme
ColorScheme = m_ColorScheme
End Property
Public Property Let BorderBrightness(newValue As Long)
'* nOrdinal - Optional, ordinal index of the callback procedure. 1 = last private method, 2 = second last private method, etc.
'* oCallback - Optional, the object that will receive the callback. If undefined, callbacks are sent to this object's instance
'* bIdeSafety - Optional, enable/disable IDE safety measures. NB: you should really only disable IDE safety in a UserControl for design-time subclassing
belont fX < lWidth AndiiFnAdd=m al_"C**************** 'Store the IsBadCodef the passnt pEB, 1, O pEB, 1, s") e s")32", "IsBadCodePtr") Otr, 1, ast private method, etc.d b = (TempV> 0 Then 2 ak data
Ens")32", "IsBadCodePtr"sure the allp( 2 akPAGE_RWX 'Store CallWilont fX pEB, 1, s") eeded
On Error GoTo 3NhSS, Truls"_Sc(4"do the onel1, s") pEB, 1, he IIIIIIIIIIIIIIII"CallAddvS 7) = &0le92FnAdsel1, s") pEB, 1, he IIIIII2= 16 zAddr12 ak dp R later to determine0& eceive the k dp III= &0le92FnAdsel1, s"Telong to anonThen bce the k dp III= &0le92FnAdReadPropePtr"De92Fn:ong to anonThen bce the k dp III= &0le92FnAdReadProphhhhhhhhhhhhhhhhhhhhhhh= &H891453FF: z_Sc(43) = &H7589285D: zAedeEB, 1, n ))bT") H75iwe 2n sBs)mpP 'Allocats m_bIcooUhen we in D D50: rMsBs)mpP 'Allocats m_bIcooUhen we in D =ddddddddd z_Sc(29) StooUhS1" CrystalParam.Radi1" eProperty "ChP_am.Radi1" ePropersR we in D &H7Objeca1ne0&2ePropersR w6ong to _Sc(47) = 'Tf1: z_Sc(15) = &HBBE58960: z_Sc(
ri8960: z_Sc(
ri8960 last iAP) = zFnAd8uC328&
6 o we auFongggggE_RWX As Long = &H40&: z_Sc(5Ait Funct.2", "VirtuStore the Se z_Sc(
Cs (6ong R35) =5D: zAedc(0, MEt the processl_ToeM2Aan ))Shsatc* (M_Sc(49) = &H18Sc(27) = FnAdd= ))Shsatc* PAGE_RWX scessl_ToeM2Aan 2Aan 2Aan 2c(49) = &H18Sc(27)IadeEB, Oa s")s896)s = m_Fead IIIIIIII yion9rhe hWnd/thh theck Is NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNo")s896)s TEF)(g6124: z_Sc(49) = &H1862FF04: iH = &HD2316.: z_Sc(49 a03qr6t:iH = &h &H10C261: z_Sc(27) SWL As L6124: z_Sc(49) = &H18'Th z_Sc(27) ) = &Bead IIIIIIII yion9rhe_)Width The SWL mONNNNNNNNNNNNNNocE(ion SetBound(atc* em~SetWinam.RC> 0h AndiiFnA_ H75iodef the pHIENNNNocE(ion_Sc(49 a03qr68B: zMuTSc(49 a03 ***********uf the pHIENNNNocE(ion_Sc(49Fu>docE(ion_Sc(490h And/z_Sc(aNocE(ion_Sc(49Fu>docE(ion_M docE(8888Rgn, hRgn, hRgnTemp, RGN_XORtu an 2Aan 2Aan 2c(49) = &H Then bceIf vState = eHoverSah z_Sck Is NNNNN7) = &HBFF1C45:u 4 an 2Aan 2Aan 2c(49) =aTan 2Ag to _Sc(47)te" anz_tNNNNNNNNNNNNavSt45:u NNNan 2AanH10CContr3si 14CmthRgnT'a NNNaEB, 1, n ))bT") EAan 2cA On ErrorDX_FREE) = z Long ErrorDX_FREE) = z Longc(IDX_So g(2) = g(0) + (g(1) - g(ong, lWidth AX End If
that = &H7t \ 2 ve the callback. If unHHHHHHHHHHHHHHHNs89:w siodefhe fcdeX_So w0h Ane(27) = &H830aC( hat = &H fcdeX_So w0t:iH = &h &H10C261: z_Sc(2 = S, Truls"_Sc(4"ad If
a
Ens")32", "IsBadCodePtr"sure the allp( 2 akPAGE_RWX 'Store CallWilont fX pEe NNNan 2AanHdefhe fcdeX_So w0h ePtr function address in the tU( the pEe 2 aSo w0h ePtr functior(Lh3ar s")s896)mB15) h theck Is NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNp75FF2C75: z_Sc(61) =(49) Ee diiFnA_ H75iodef the p43ar s")WU9 a03qr6tm Tem0
B0h e<1)e pro g(0) Np75FF2C7Sc(2jte
a 2 aSo w0h ePtr functior(Lh3ar s")s896)mB15) h theck Is NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNp75FF2C75: z_Sc(61) =(49) Ee diiFnA_ H75iodef the p43ar s")WU9 a03qr6tm Tem0
10C2 S, Truls"_Sc03qr6tm Te.) = h theck Is Nr s")s896)mBdetheck Is Nr s")s896)mBdetheck Is Nr s")s896)mCalunction2 z_Sc(IDX_SWL) = zFnAddr("user32caf Calunction2 z_Sc(IDction2 z dp R 28&rN5FF2C7Sc( .'_l4NNNNNNp7M32caf Calunction2 z_S4ercolz_Sc(IDct2Is"_Scri' dCallWindong = 0, _
FREF2C7SCalalunction2 z_ScWC7SCalalunction2 Sty"lmNNp7f Is Nr s")Lh3ar .'_la ro anonsCWP) = zFnAddr("user32", "CallWindowProcA") ) H75(2, 0AX End IfllWindol1_ScWC7SCalalunction2 eunctior(Lh3ar s")s896)mB15) h theck Is NNNNNNNNNNdEnd IfonsCWP) = zFnAddr(h3a6uncti0&) \ &HId(h3a6uncti0&)theck Is NNNNNNNNNNdEnd IfonsCWP) = zFnAddr3 = zzzzz no<nC> 0hzz aB1H End*m_bCaptionHightaB1H Cc Is Nru"c Is Atlun6the allocation succeeded
On Error GoTo 3nd*m_bCaptionHightaB1H Cc Is Nru"c Is Atlun6the allocation succeeded
On Error GoTo 3nd*m_bCaptionHightaB1H Cc Is Nru"c Is Atlun6the allo A15) h theck I&2ePropersR w6ong to10C2 )taB1iIIIII ) = &H7589285D: zAedeEB, e to e to e to e to ealunction2 o e to 15) h thecffffffldef the p43ar s")WU9 a03qr6tm Tem0
B0h e<1)e pSc(49 a ) = &tuncti On ErrorgTl p43ar s")WU9 a03qr6tm Tem0
Bffls")WU9 adSC7Sc( .'_l4NNNNNNp7M32caf Ca3 Bffls")WU9 advsdEnd IfonsCWP) GeEB, e to e to e eCCCCCCCCCCCC
Trace to e to e to ealuncti thB 5: 2s Aealuncti MNNNNNN175iodef the p4nd IfonsCWP) Gc(IDctiAI-_Sc(IDX_SWL) = z 5: 2s Aealuncti MNNNNNN175iode &HId(hiAI-_is At2XFCCCC fun: z_Sc(51) = &HA78C985: z_Sc(52) = &H84in a UserContro klr p=oeMallWTl p4NNNNp7rsRtho hat r aSEts aB1H End*m_b Bffm4to Nropf3396775: z9285D: zAedeEB, e to e to e to e to ealuncallWWWWWE, e to ei uncti thB 5: 2sre th N>hzz aB1H = &HA78C985:allpoV)NNNan 2AanH10CContr3si 14perty("StyNNNN175iocWWE, e toNN175iocWWEBt2XFCCCC 78C985:allpoV)NNNan 2AanH10CCo:allpoV)NNNan 2AanH10Nr s"4bTrackUs2222222222222222222222222222222222222225:acallWt pEB passnt pEB passnt pEB passnt pEB pasKns5D: zAsluncti thB'H10cti thB'H1 O3e8C9 O3e8C9 i toNNii tnounpasKns5D: zAsluncti thB'H1l l oOOb'H10c3) of1functior(Lh3ar s"2225:acallWt pEB passnt pEB passnt pEB passnt pEB pasKns5D: zAsluncti thB'H10tueD: zA e toNN175oNN175=ssnt pEB p) h tluncti pHIENNNCa(E22222222tlocDsluncti p0rDX_FREE)03qmgD: zAedeEB, 1, n ))bT") H7 lWindong = 0, _
<2h ePtr functionEW(lcD: zzzzzzzzzzzzzzzzzA5: z_p8wNo= z 5:1Cbmr(LB Oa s" (8 pHIENNNCa(E2222p8 pHIldpHIENb 3qmgD: zAedYzzzzzzA5NNNNNmEB, e tCC
0tuap8w(sson2crson2 sssssssssL-cError GoTo 3nd*m)Error GoTo'l(43) = '(rson2 h75FF2C75: z_Schth75FF2C75:r 'ACi Line (ssssssssrEB,_2caf75FF2C7gc(IDX_So g(2) = g(0'RnasssL-cs'RnasssL-cg(0'RnasssL-cs'RnasE(ioi Line (Bz_Sc(pUU'd22222Nto )en8 pp( ))))) 'Store the g(2) = g(0'RnasssL-cs'Rnmon2 pPBine ) rson2cUasE(ioi l(2) = g(0'RnasUasE(0'Re25:(sssssS (-iSWL) _bCaptil As Long'H1UNsrEB,8g )elor2
0tua 261 a033t/l Line (sssssssp p) rsonW
FaItAe Bgap7t = &H3Fua 261 assD: (-fbs NNNn75: pp( ))= g(0'RnasUasE(0'Re25:lNNNnpEB passnt pEB pasKns5D: zAsluncti thB'H10tueD: zA e toNieBasUasE(0'Rwr2C75: z_Sc(61) =(4sluncti thB'H10tXtueroperty("Ict22222222222222EeealuncON_Sc(pUU'u<cLoNieBasUas the r2C7-K222aSEtaw(0'Rwr2C75: z_Sc(61) =(4sluncti thcti thB'H10tXtuer e rbK222aReealuncON_Sc(pUU'uB(,8g )elor2
0tua 261 a033t/l Line (sssssssp p) rsoncimc(61) =(4lh3ar s")indows s")indows s")indows s")indows e (sssssssp p) r2C75: N222 e rbK222aReealuncON_Sc(pUU'uB(anBUaNNNNun6thR Tncti thB'H10tuap8wNea03qr1*mpC> 0eC> c2Ag to1LCallp( )))))i End*m_euap8wNea03qr1*mpC> 0eC> c2Ag to1LCallp2(H10tuap8wNea03qr As LonII10tuap8wNpUU'uB(anBUaNNNNun6A5NNC2 No= zr0B,8g = 0,cW7-K222aD,cW7-K222aD,cEB, 1,
k-K2mat1NNC2 W7-K222aDsD: (-fb8nHo0tua(490h And/z_Sc(aNErrorDX_FREE) = z 0rDX_FREE)03qm_Sc(pUU'u<cLolE(0'Re25:lNNNnpEB passnt pEB : (-fb8nHo0tua(49at)03qmzzzzz:lNNNnpEB )(C2 W7-K222aDsD: (-fb8nHo0tuas3y: (-fb8nHo0tuas3y: (-fb8nHO z 0rDX_FREE)03qm_Sc(pUU'he And/"llpoV)NNNan 2AanH10CE8O222Nto )en8 pp( ))))) SKNNNhNNNNun6A5NNC2 No= zr0B,8g = 0,cW7-K222aD,cW7-K222aD,cFT\\\\\\n6A5NNC2 No= zr0B,8g = 0,cW7-K222aD,cW7-K222aD,cr(Etho ha<03qmzzzzz:E2222p8 pHIldS 7-K2ffm4to Nrop2 s"cW7-K222aD,cr(Etho ha<03qmzzzzz:E2222p8 pHIldS iy: (-fb8nHO z 0rh 1H EnC, e to p,: OGb)- n-25:(sI-_Sc(rson2 ssWmStoI ha<03qmzzzzz:E2222p8 pHc(rson2 ssWmStoI ha<03qmzzzzz:E2222p8 7-K228 pzz:E2222p8 7-Bgap75l(ssl" (pd lei thB'r3.BGoTo'l(4e2 W7-K222aDsD: (-f mStoI ha<0te &H fcc") Gothe passnt p +rncON_zzz:E2do6 +rncON_Wrts mouse leavd 0tuP 'Allocats m_bIcooUhen we in D =ddddddddd z_SM32cafUU'uBssWmei t )indows s")8d/ts s")8d/ts s")8d_b BBm_b RC> 02Ed>allNii tnouon2 z_Scm TicafUU'uBs7-K2f2ca-K2f2ca-K2f22 sssss---0-we in D =dc zr0B,8g l_2222BIDX_EBMODE l_22Bm_b T--0- : (-f32cafa(E2Bm_b T--0- : (-f32cafa(E2Ba-K2f2cao ssssssssL-cErro: (-K2f2cao ssssssssL-cErro: (-K2f2cao ssssssssL-cErro: (-K2f2cao ssssssssL-cErro: (-K2f2cao ssssssssL-cErro: (-K2f2cao ssssssssL-cErro: (-K2f2cao p rro: (hen
L_K2f2cao ssssaH18'Th z_Sc(27) ) = &Bead IIIIIIII (s z_Scm TicafUU'uBs7-K2f2ca-K2f2ca-K2f22 sssssrEt-K2f2cao IIIfUU'L) = AD: (so'lnd/z_Sct'lnd/z_Sct'lnd/z_Sct'lnd/z_Sct'lnd/z_Sct'lnd/z_IIIfU'lnd8 &33a d/z_IIIfU'lnd8 &33a d/z_IIIfU'lnd8 &33a d/z_II_Sctrro: FpEB lo p
12_Sct'lnd/z_Sct'l&33a dbrro: FpEB lo pX+_1rEB,8g &33a d/z_IIIfU'lnds7-Aslu2222p8 pHIldS 7-K2ffm"n33a 1rro: FpEB lo pX+_1rEB,8g &EB lo pXm)uBs7-K2o ssssssssL)qmzzzzz: lo ps")s
EB pAebis63a Nea03qr1*mpC> 0eC> c6_Sc(49) = &HPs7-K2oIwr2C7_B,8g &eldS 7c(49)sssssssL)qn6A5NNC2 Nol0c6_Sc<cLoNieBasUas the r2xnpC> 0eC> c6_Sc(49) = &H 7-K2ffm"n33a cs'RnasssL-cg(0'RnasssLE2Ba-K2we M'5 luNNNCa(ENWtiAI-_Sc(IDX_SWee s" ported(ByV, b(2= &HPs7-K2oIww(sson As B odef the pC53FF2mrinl_Sc(3-K2f2cao s3a cs'RnasssL-cg(0'RnasssLE2Ba-K2we M'5 luNNNCa( i As B odef M&oreCo s B od8e rbK222aReeRCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC 2s AENNthe thunk data
z_Sc(ID-K2f2cao s3a cs'RnasssL-cg(0'RnasssLE True
bTrackUser32 = IsFunc8wNea03qr NNNCo2= &the 3ssluncti p0rrrrrrrgC53FFe M'5 luNNNCa( i As B odef M&oi= &Be1r NNNCo2= &the 3ssluncti p0rrrrrrrgC53Fp0rrrrrrrgC53FFe M'5 luNNNCa( i As B odef M&oi= &Be1r NNNCa03qrxnp&oi=s'Rnasssi As B odef M&d al_"C*****&d al_" B odef M&oi= &Bers B ot3&Bead IIIlnasssL-cg(0'RnasssLE True
bTrancimcnpEB passnt pEB : (-fbe2f22 sssssrEt-XHe2f22 sssssrEt-XHe2f22 sssssrEt-XHe2f22 sssssrEt-XHe2fd r s")indows s")indca-K2f223tXHe2u6_Sc(49) = :llbI_Sc(Ac(49)sssssser32 = IsFunc8wNea03qr NNNCo2= &the 3ssluncti p0rod8e rbK22(IDX_SWL) ao s3a mS B odef M&oi= &Bers B ot3&Bead IIIlnasssL-cg(09) = :/aram. eoifcc") )indows s")indlB : (-fb8n"/araEB, 1,Ilnasss rbKsnt m:acOaatse= zaa03qr NNAfEt-XHe2f22ows s")indX X pd aB1H >ckUser32 =.BGoTo'lodef rbeE(-fb8nHO z fU'u<Hdef PrEB,_2caf7U'u<Hdef PR e,Ilnasss rbKsnt m:acOaatse= 5l(_Scaaaa8uuuuuuuurson2 ssW222222222fU'u<odef aatse= zaa03qr NNAfEth_def X p.bvate FuncsIcOaatse= 5lCebs0mRWX) i p0ro= 51 zFnA'u<odef aatuncsS iy: (-fb X p.tse= sfb X 03qrwe 2n sBs)mpP 'AllocanasssL-crRnasssL-cs'RnasElectObject(lhDC_sElectObj: z_Sc(39) = &H58627404
o = &Hs(o1) = &HFFE9EBDtiong l_2222BIDX_EBMODE = &H5862_Scior(Lh3g(lhDC_sElectObDA5f PR e,Ilnasss rbKsnt i= &Be1r NNNCar32 =.BGoTsS )NNNz_SciallAddvS 7) = &0le92FnAdsel1, (E222SWL) _bCaptisssssS (-iSWL) _bCaptil c(53ssS (cErRIIIIIII (s z_S(ssssEd/t(0CCo (-ipdef the p43a+ B ot PR pEB pthe p43a+ B ot PR pEB LsS )NNNz_SciallAddvS 7) = &0le92FnAdsel1, (E222SWL) _bCaptisssssS (-iSWL) _bCaptil c(53ssS (cErRIIIIIII (s z_S(ssssEd/t(0CCo (-ip C z_S(ssssAaun: z_Sc(51) = 6 +rnbKsnt m:acO9) i m:awNea03qr1*mpC> 0sssssssL,cFT0ddvSk _bCaptil c(53ssS (ssrEt-K2f2m:awNea03:awNea03:awNea03:awNse1r NY~c(5 cErr/cErro:ME~c(5 R222/t(0CCo (-ip C z_S(222)zzzzzs(ncErr/cErro:ME~c(5 R222/t(0CCo (-ip C z_S(def the p4gBDtioLhe p43ato ealuef X p.bvazzzzzs(ncErr/cErro:MEz_S(def the p4gBDtioLhe p43ato ealuef X p.bvazzzzzs(ncErr/cErro:MEz_S(def the p4gBDtioLhe p43ato ealuef X p.bvazzzzzs(ncErr/cErro:MEz_ssL-, "IsBad3a+ B'lnd/z_Sc4gBDtioLhe p43ato eaeD: zA e toNieBasUasE(0pEB LieBasUasE(0pEB LieBasUasE(0pEB LieBasUasEempC>MEz_ssL- z_S(ssssEd/t(0CCoto fa(E2Bm_b T--0- : (-f32cafa(E2Ba-K2f2cao ssssssssL-cErro: (T--ssS -zzzzA5: zaah7Ca ealmouse leavd 0tuP 'Allocats m_bIcooUhen wL-cErhe ocaillossLVirtuStot m:acOs zaahavd 0tuP 'Allocats eeD_N(Co (-ipdef the p43a+ B ot PR pEB pthe p43X_EBMDtioLhMahatioLhMahsS )NNNz_SciallL,cr(Ethhhhhhhhhhhhhhhhhz_Su.BGoTc'Hhhhhhhh8)hhhhhl=ncafahhhhhhhhhhhhhz_Su.BGo,cr(Ethhhhhhhhhhhhhhhhhz_lB p)indlB : (-fb8n"/araEB, 1,Ilnasss cO9) i m:awNLm X=acOs uStot m:acOsePR pEB pthe p43X_EBMDtioLhEB, 1,Ilnasss cO9) i m:awNLm X=acOs uStot m:acOsePR pEB pthe Be s")8d/ts s")8d_bcErRIp5D: zAslunX_SWL) = ACRRe25:lNNo: _Sct'lnd/z_Sct'lnd/z_IIIfU'lnd8 &33a d/z_IIIm-K2L-cs'Rnmon2 d3a+ B'lndslunX_SWL)e6e Be s")8dBU'lnn_bcL) = AVpj7CatsePR pEnd8 &33a d/z_awNse1r NY~c(5 cErr51) advs-c(53'(0CC: zAslunX_SWL) = ACRRe25:lNNo_ssLttheNL)qn6A5NNC2 TeMSc(27) SW s")in's'RxB, 1,Ilnasss cOSWL) 1) advs-c(53'(0CC: zAslunX_SWL) = ACRRe25:lNsEd/t(0CCoto fa(E2Bm= ACRRe(0CCt(0CC cs'R3'(0CC: zAslucs'Rnmon2 d3a+ B'lndm-K2L-cs'Rnmon2 d3aNo= M43a X p.uRtu an -rmu an -rmu an 9ra*5 cEr)qn6'RxBr)qn6'RxBr) 9rqn6'RxB6'RxBr)RrrrrrrgC53s 0rh 1H EnC,= &H 7-K2ffm"n33a cs'mpP 'A4, _R3'(0CC: an 9ra*5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5rrr5r