From: Andres Hidalgo Date: 2001-12-17T12:14:07+09:00 Subject: [ruby-talk:28728] Win32 Eventlog extension ------=_NextPart_001_0000_01C1867C.2676A160 Content-Type: multipart/alternative; boundary="----=_NextPart_002_0001_01C1867C.2679AEA0" ------=_NextPart_002_0001_01C1867C.2679AEA0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable I'am submitting this extension (eventlog) for win32, it has been tested in NT4, W2K and XP professional. Built using the cygwin environmen= t. Please submit any comments, suggestions, bugs to ahidalgo@bellatlantic.ne= t. Place the evnetlog.so library to c:\ruby\lib\ruby\1.6\i386-cygwin\ ahidalgo@bellatlantic.netGet more from the Web. FREE MSN Explorer downlo= ad : http://explorer.msn.com ------=_NextPart_002_0001_01C1867C.2679AEA0 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
I'am submittin= g this extension (eventlog) for win32, it has been
tested in N= T4, W2K and XP professional. Built using the cygwin environment.
Please submit any comments, suggestions, bugs to ahidalgo@bellatlantic.net.
Place t= he evnetlog.so library to c:\ruby\lib\ruby\1.6\i386-cygwin\
&n= bsp;
 
ahidalgo@bellatlantic.net


 


Get more from the Web. FREE MSN Explorer= download : http://explorer.msn.com

------=_NextPart_002_0001_01C1867C.2679AEA0-- ------=_NextPart_001_0000_01C1867C.2676A160 Content-Type: application/octet-stream; name="myevents.rb" Content-Disposition: attachment; filename="myevents.rb" Content-Transfer-Encoding: quoted-printable # ******************************************************************** # * tevt.rb # * Purpose: test eventlog extension for Ruby # ******************************************************************** require "eventlog" def print_events(server =3D ENV["COMPUTERNAME"], eventlog =3D "System") print "Server:#{server} Log:#{eventlog}\n" line =3D sprintf("%-11.11s %-19.19s %-15.15s %3.3s %5.5s %-18.18s\n",= "EventType","TimeGenerated","SourceName", "Cat", "Event","UserName") print line print '-'*76, "\n" =20 evtReadflag =3D WinEventLog::EVENTLOG_BACKWARDS_READ | WinEventLog::E= VENTLOG_SEQUENTIAL_READ evtFilter =3D WinEventLog::EVENTLOG_ALL_TYPE =20 # Each event is returned as an hash eventcount =3D 0 evt =3D WinEventLog.new(server) evt.each(eventlog, evtReadflag, evtFilter) { |h| =20 line =3D sprintf("%-11s %-19s %-15.15s %03d %5d %-19.19s\n", =20 evt.event_type_str(h['EventType']), h['TimeGenerated'], h['SourceName'], h['EventCategory'], h['EventID'], h['UserName'] ) print line eventcount +=3D 1 } #print "\nlasterror =3D ", evt.lasterror(),"-", evt.format_message(),= "\n" print "\nThere are << ", evt.count(eventlog), " #{eventlog} Event(s) = >>, Oldest Event is ", evt.oldest(eventlog),"\n" print "There are #{eventcount} events of type <<#{evt.event_type_str(= evtFilter)}>>\n" #print "Error type: #{WinEventLog::EVENTLOG_ERROR_TYPE}\n" #print "Warning type: #{WinEventLog::EVENTLOG_WARNING_TYPE}\n" #print "Information type: #{WinEventLog::EVENTLOG_INFORMATION_TYPE}\n= " =20 end def report_an_event(server =3D ENV["COMPUTERNAME"], sourcename =3D $0, me= ssage =3D "Testing 1.2.3") evt =3D WinEventLog.new(server) =09 myEvent =3D {'server' =3D> server, 'eventType' =3D> WinEventLog::EVENTLOG_INFORMATION_TYPE =09 }; evt.report(server, "myevents.rb", myEvent); =09 end print_events(ENV["COMPUTERNAME"], "System") #report_an_event(ENV["COMPUTERNAME"], "Application", "Testing my eventlog= extension....") ------=_NextPart_001_0000_01C1867C.2676A160 Content-Type: application/octet-stream; name="eventlog.so" Content-Disposition: attachment; filename="eventlog.so" Content-Transfer-Encoding: base64 TVqQAAMAAAAEAAAA//8AALgAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAgAAAAA4fug4AtAnNIbgBTM0hVGhpcyBwcm9ncmFtIGNhbm5vdCBiZSBydW4gaW4gRE9TIG1v ZGUuDQ0KJAAAAAAAAABQRQAATAEGAJ5ZHTwAAAAAAAAAAOAADiILAQI4AB4AAAAuAAAABAAApCgA AAAQAAAAMAAAAACwYgAQAAAAAgAABAAAAAEAAAAEAAAAAAAAAACAAAAABAAAAAAAAAMAAAAAACAA ABAAAAAAEAAAEAAAAAAAABAAAAAAUAAATAAAAABgAAC4BwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAHAAADACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC50ZXh0AAAA1BwAAAAQAAAAHgAAAAQA AAAAAAAAAAAAAAAAAGAAAGAuZGF0YQAAABABAAAAMAAAAAIAAAAiAAAAAAAAAAAAAAAAAABAAADA LmJzcwAAAABcAgAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAwC5lZGF0YQAATAAAAABQAAAA AgAAACQAAAAAAAAAAAAAAAAAAEAAAMAuaWRhdGEAALgHAAAAYAAAAAgAAAAmAAAAAAAAAAAAAAAA AABAAADALnJlbG9jAAAwAgAAAHAAAAAEAAAALgAAAAAAAAAAAAAAAAAAQAAAwAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFdh cm5pbmcARXJyb3IASW5mb3JtYXRpb24AQWxsIEV2ZW50cwBVbmtub3duAFJlc2VydmVkAFJlY29y ZE51bWJlcgBUaW1lR2VuZXJhdGVkAFRpbWV3cml0dGVuAEV2ZW50SUQARXZlbnRUeXBlAE51bVN0 cmluZ3MARXZlbnRDYXRlZ29yeQBSZXNlcnZlZEZsYWdzAENsb3NpbmdSZWNvcmROdW1iZXIAbWVz c2FnZQBTdHJpbmdPZmZzZXQAU3RyaW5nQXJyYXkAVXNlclNpZExlbmd0aABVc2VyU2lkT2Zmc2V0 AERhdGFMZW5ndGgARGF0YU9mZnNldABSYXdEYXRhAFNvdXJjZU5hbWUAQ29tcHV0ZXJOYW1lAFVz ZXJTaWQAVXNlck5hbWUAQXBwbGljYXRpb24AU2VjdXJpdHkAU3lzdGVtAJCQkJCQkJCQkJCQkJCQ kJCQkJCQkJBTWVNURU1cQ3VycmVudENvbnRyb2xTZXRcU2VydmljZXNcRXZlbnRsb2cAkJCQkJCQ kJCQkJCQkJCQkJCQkJCQU3lzdGVtXEN1cnJlbnRDb250cm9sU2V0XENvbnRyb2xcU2Vzc2lvbiBN YW5hZ2VyXEVudmlyb25tZW50AI12AFNvZnR3YXJlXE1pY3Jvc29mdFxXaW5kb3dzIE5UXEN1cnJl bnRWZXJzaW9uAI12AFWJ5YHsoAAAAFZTi3UMx4V8////gAAAAIP+BHQXg8T4agBW6FwaAACDxBCj ADCwYusMifbHBQAwsGIAAAAAjYV8////g8T4jV2AUFPo+xgAAGoAVugrGgAAUFPoNBcAAIXAD5XA jaVY////icKD4gGJFeAwsGJbXonsXcNVieWD7CxXVlOLRRCDxPiLVQyLXRSLQAxQMcCD+gR0A4tC DFDo/xgAAIlF/IPECIXAD4S6AQAAg8T4oSwwsGKDxPRQ6MgZAABQU+iJGQAAg8QgiUX4g8T4oTQw sGKDxPRQ6KoZAABQU+hrGQAAg8QgiUX0g8T4oSgwsGKDxPRQ6IwZAABQU+hNGQAAg8QgiUXwg8T4 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 agBqAGi1GbBii4X8/v//UOiPEQAAg8QIhcB0BDHA61qDxPSLhfz+//9Q6G0RAACNQwxQVqEAMLBi UGjAGbBiV+gXDwAAg8Qg6xeJ9lahADCwYlBoyxmwYlfo/g4AAIPEEIPE+Go6V+jYDgAAicOF23QD xgMkuAEAAACNpdj+//9bXl+J7F3DJXNcJXMATi9BAI12AFW4AAEAAInlgewgAwAAVlONtQD+//+L VQiJhfT8//+Jhfj8//+DxPyNhfz8//+NnQD///8DUixQjYX4/P//UFaNhfT8//9QU1JqAOjIEAAA g8QEhcB0MVNWjZ0A/f//aMcasGJT6F4OAACDxPRT6FURAACDxCCJw4PE9GoA6A4QAACDxAzrE5CD xPRozRqwYugzEQAAicODxBDo+Q8AAKMAQLBijaXY/P//idhbXonsXcMkZXZ0X2hhc2gAJGV2dF9o YXNoLmNsZWFyACUwMmQvJTAyZC8lMDJkICUwMmQ6JTAyZDolMDJkAIn2VYnlgey8AAAAV1ZTg8T0 i3UMi10Ux4Vc////AAQAAItFEFDopBAAAImFWP///+iBEAAAiYVs////g8T4i0YMUGigMLBi6HIN AACDxCCDxPRT6HYQAACj5DCwYugMEAAAg8QQhcAPhHQFAACLRgyDxPhQoQAwsGJQ6LcPAACJhVT/ //+DxAiFwHUW6B0PAACjAECwYrgEAAAA6UQFAACJ9oPE+I2FbP///1BohhuwYujgDwAAg8T0i4Vc ////UOgxEAAAiYVg////g8Qgi71g////g8T8jbVo////jZ1k////VlOLlVz///9SV2oAi4VY//// UIuVVP///1LoPA8AAIPEBIXAD4WpAAAA6JwOAACjAECwYoP4enVug8T4i4Vo////UFfo0g8AAImF YP///4PE/IuFaP///4mFXP///4u9YP///1ZTUFdqAIuVWP///1KLhVT///9Q6N4OAACDxBSFwHVP 6EIOAACjAECwYoPE9IuVVP///1Loxg4AALgEAAAA6VoEAACDxPSLhVT///9Q6K0OAAC4BAAAAIM9 AECwYiYPhTkEAACLRQjpMQQAAI12AIO9ZP///wAPhPsDAACNdgAPt0cYhQXkMLBiD4TMAwAAg8T0 jbVw////aJAbsGKNXYDosg4AAIPE/ItHBIPE9FDo6w4AAFCDxPShGDCwYlDo1A4AAIPEEFCLhWz/ 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 ZQBvbGRlc3QAcmVwb3J0AGVhY2gAbGFzdGVycm9yAGZvcm1hdF9tZXNzYWdlAGV2ZW50X3R5cGVf c3RyAGluaXRpYWxpemUARVZFTlRMT0dfRk9SV0FSRFNfUkVBRABFVkVOVExPR19CQUNLV0FSRFNf UkVBRABFVkVOVExPR19TRUVLX1JFQUQARVZFTlRMT0dfU0VRVUVOVElBTF9SRUFEAEVWRU5UTE9H X0VSUk9SX1RZUEUARVZFTlRMT0dfV0FSTklOR19UWVBFAEVWRU5UTE9HX0FMTF9UWVBFAEVWRU5U TE9HX0lORk9STUFUSU9OX1RZUEUARVZFTlRMT0dfQVVESVRfU1VDQ0VTUwBFVkVOVExPR19BVURJ VF9GQUlMVVJFAJBVoTBisGKJ5YPsCIPE+IsAUGjTJLBi6AkGAACjDEKwYmoCaGAksGJo3ySwYlDo AgYAAIPEIGoBaEAjsGJo5iSwYqEMQrBiUOjoBQAAagBo6COwYmjsJLBioQxCsGJQ6NEFAACDxCBq AWi8IrBiaPIksGKhDEKwYlDotwUAAGoDaIwSsGJo+SSwYqEMQrBiUOigBQAAg8QgagNowBuwYmgA JbBioQxCsGJQ6IYFAABqAGjEI7BiaAUlsGKhDEKwYlDobwUAAIPEIGoAaBQksGJoDyWwYqEMQrBi UOhVBQAAagFosCGwYmgeJbBioQxCsGJQ6D4FAACDxCBqAWgQErBiaC0lsGKhDEKwYlDoJAUAAIPE /IPE9GoE6EcFAABQaDglsGKhDEKwYlDo/gQAAIPEMIPE/IPE9GoI6CYFAABQaE8lsGKhDEKwYlDo 3QQAAIPEIIPE/IPE9GoC6AUFAABQaGclsGKhDEKwYlDovAQAAIPEIIPE/IPE9GoB6OQEAABQaHol sGKhDEKwYlDomwQAAIPEIIPE/IPE9GoB6MMEAABQaJMlsGKhDEKwYlDoegQAAIPEIIPE/IPE9GoC 6KIEAABQaKclsGKhDEKwYlDoWQQAAIPEIIPE/IPE9GoH6IEEAABQaL0lsGKhDEKwYlDoOAQAAIPE IIPE/IPE9GoE6GAEAABQaM8lsGKhDEKwYlDoFwQAAIPEIIPE/IPE9GoI6D8EAABQaOklsGKhDEKw YlDo9gMAAIPEIIPE/IPE9GoQ6B4EAABQaAAmsGKhDEKwYlDo1QMAAInsXcONtgAAAACNvCcAAAAA VYnloTBAsGKD7AiDxPxQoSBAsGJQoRBAsGJQ6AwBAACJ7F3DVYnlg+wUU4tNCLsBAAAAi0UMi1UQ g/gBdA5yQIP4AnRrg/gDdG7reokNEECwYoPE+McFIECwYgEAAACJFTBAsGJogCiwYlHo1AAAAKNA QLBig/j/dUwx2+tIifaDxPxSUFHooQAAAInDg8QEhdt0MoPE9KFAQLBiUOiaAAAAxwVAQLBi//// /+sYifaDxPxSagLrBoPE/FJqA1HoaAAAAInDidiLXeiJ7F3CDACNdgBVieWD7AiLTQiDxPyLVQyL RRBQUlHoNv///4nsXcIMAP8ljGGwYpCQ/yWgYbBikJD/JZxhsGKQkP8lpGGwYpCQ/yWoYbBikJD/ JZRhsGKQkP8lmGGwYpCQVbgBAAAAieWJ7F3CDACJ9v8leGGwYpCQVYnlg+wUU4tdCIPE+ItFDGhQ QLBiUOgVAAAAaFBAsGJT6CIBAACLXeiJ7F3DjXYAVYnlg+wUU4tdDIXbdAYxwOslifaDxPRqCOhC AQAAg8QQg/j/dQoxwOnhAAAAjXYAicO4AQAAAMdDBKgAAADHQwjrAwAAx0MMAwAAAMeDgAAAAAAA AADHg4QAAAAuAAAAx0MsxCywYsdDMMwssGLHQxQEQbBihcB0D4uDpAAAAKMAQbBi6wmJ9sdDEABB sGLHQ3gAAAAAg8T0i0UIiUMox0NITCuwYsdDTEQrsGLHQ1A8K7Bix0NUNCuwYsdDJAhBsGKLRQCJ A8dDGCwrsGLHQxwkK7Bix0MgHCuwYsdDRBQrsGJqAOjOAAAAiUN8x0M0ADCwYrgBAAAAx0M4EDGw YsdDPABAsGLHQ0BcQrBii13oiexdwggAkP8lgGGwYpCQ/yV0YbBikJD/JZBhsGKQkP8lhGGwYpCQ /yWIYbBikJBVieWJ7F3DkFWJ5YnsXcOQVYnliexdw5BVieWJ7F3DkP8lfGGwYpCQ/yUIYrBikJD/ JRxisGKQkP8lDGKwYpCQ/yX0YbBikJD/JRRisGKQkP8lAGKwYpCQ/yUEYrBikJD/JRhisGKQkP8l +GGwYpCQ/yX8YbBikJD/JRBisGKQkP8l5GGwYpCQ/yXoYbBikJD/JbxhsGKQkP8l2GGwYpCQ/yXc YbBikJD/JdRhsGKQkP8l4GGwYpCQ/yXIYbBikJD/JcxhsGKQkP8l0GGwYpCQ/yW4YbBikJD/JcRh sGKQkP8lwGGwYpCQ/yW0YbBikJD/JShisGKQkP8lLGKwYpCQ/yUwYrBikJD/JTRisGKQkP8lOGKw YpCQ/yU8YrBikJD/JUBisGKQkP8lRGKwYpCQ/yVIYrBikJD/JUxisGKQkP8lUGKwYpCQ/yVUYrBi kJD/JVhisGKQkP8lXGKwYpCQ/yVgYrBikJD/JWRisGKQkP8laGKwYpCQ/yVsYrBikJD/JXBisGKQ kP8ldGKwYpCQ/////wAAAAD/////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAELBiCBCwYg4QsGIa ELBiJRCwYi0QsGI2ELBiQxCwYlEQsGJdELBiZRCwYm8QsGJ6ELBiiBCwYpYQsGKqELBishCwYr8Q sGLLELBi2RCwYucQsGLyELBi/RCwYgURsGIQEbBiHRGwYiURsGJDEbBiOhGwYi4RsGJgEbBioBGw YuARsGIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBcHBsaWNhdGlvbgAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJ5ZHTwAAAAAKFAAAAEA AAABAAAAAQAAADRQAAA4UAAAPFAAAGV2ZW50bG9nLnNvABgmAAA+UAAAAABJbml0X2V2ZW50bG9n AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABoYAAAAAAAAAAAAADEZgAAdGEA AKhgAAAAAAAAAAAAAAhnAAC0YQAA6GAAAAAAAAAAAAAARGcAAPRhAAAcYQAAAAAAAAAAAACkZwAA KGIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHxiAACIYgAAnGIAALBiAADAYgAAyGIAANRiAADg YgAA7GIAAPhiAAAIYwAAFGMAACBjAAAsYwAAAAAAAAAAAAA4YwAATGMAAFxjAAB0YwAAlGMAALBj AADEYwAA1GMAAORjAAD0YwAADGQAABxkAAAwZAAASGQAAAAAAAAAAAAAWGQAAHRkAACQZAAAqGQA ALxkAADMZAAA4GQAAPBkAAAEZQAAGGUAACRlAAAAAAAAAAAAADRlAABEZQAAWGUAAGhlAAB8ZQAA kGUAAKRlAAC8ZQAA0GUAAOBlAADwZQAAAGYAABBmAAAgZgAAMGYAAEBmAABQZgAAYGYAAGxmAAB8 ZgAAAAAAAAAAAAB8YgAAiGIAAJxiAACwYgAAwGIAAMhiAADUYgAA4GIAAOxiAAD4YgAACGMAABRj AAAgYwAALGMAAAAAAAAAAAAAOGMAAExjAABcYwAAdGMAAJRjAACwYwAAxGMAANRjAADkYwAA9GMA AAxkAAAcZAAAMGQAAEhkAAAAAAAAAAAAAFhkAAB0ZAAAkGQAAKhkAAC8ZAAAzGQAAOBkAADwZAAA BGUAABhlAAAkZQAAAAAAAAAAAAA0ZQAARGUAAFhlAABoZQAAfGUAAJBlAACkZQAAvGUAANBlAADg ZQAA8GUAAABmAAAQZgAAIGYAADBmAABAZgAAUGYAAGBmAABsZgAAfGYAAAAAAAA7AmNhbGxvYwAA AABuAmN5Z3dpbl9kZXRhY2hfZGxsAHACY3lnd2luX2ludGVybmFsAAAAgwJkbGxfZGxsY3J0MAAA AMYCZnJlZQAAXQNtYWxsb2MAAAAAigNwcmludGYAAAAA2wNyZWFsbG9jAAAASwRzcHJpbnRmAAAA VQRzdHJjYXNlY21wAAAAAFcEc3RyY2hyAAAAAFoEc3RyY3B5AAAAAGoEc3Ryc3RyAAAAAG0Ec3Ry dG9rAAAAAA8AQmFja3VwRXZlbnRMb2dBAAAAGQBDbG9zZUV2ZW50TG9nAEAARGVyZWdpc3RlckV2 ZW50U291cmNlAGYAR2V0TnVtYmVyT2ZFdmVudExvZ1JlY29yZHMAAAAAZwBHZXRPbGRlc3RFdmVu dExvZ1JlY29yZAAAAJEATG9va3VwQWNjb3VudFNpZEEA1wBPcGVuRXZlbnRMb2dBAOkAUmVhZEV2 ZW50TG9nQQDrAFJlZ0Nsb3NlS2V5AAAA7ABSZWdDb25uZWN0UmVnaXN0cnlBAAAAAgFSZWdPcGVu S2V5RXhBAAoBUmVnUXVlcnlWYWx1ZUV4QQAAGgFSZWdpc3RlckV2ZW50U291cmNlQQAAHgFSZXBv cnRFdmVudEEAAIQARXhwYW5kRW52aXJvbm1lbnRTdHJpbmdzQQCNAEZpbGVUaW1lVG9Mb2NhbEZp bGVUaW1lAAAAjgBGaWxlVGltZVRvU3lzdGVtVGltZQAAswBGb3JtYXRNZXNzYWdlQQAAAAC4AEZy ZWVMaWJyYXJ5AAAA0gBHZXRDb21wdXRlck5hbWVBAAAcAUdldExhc3RFcnJvcgAAKAFHZXRNb2R1 bGVIYW5kbGVBAADJAUxvYWRMaWJyYXJ5RXhBAAAAANIBTG9jYWxGcmVlAGgCU2V0TGFzdEVycm9y AABKAHJiX2FyeV9wb3AAAAAAbQByYl9ibG9ja19naXZlbl9wAAB+AHJiX2NPYmplY3QAAAAAsABy Yl9kZWZpbmVfY2xhc3MAAAC0AHJiX2RlZmluZV9jb25zdAAAALgAcmJfZGVmaW5lX21ldGhvZAAA wgByYl9kZWZpbmVfdmFyaWFibGUAAAAA6gByYl9ldmFsX3N0cmluZwAAAAAsAXJiX2hhc2hfYXJl ZgAALQFyYl9oYXNoX2FzZXQAADABcmJfaGFzaF9uZXcAAAA5AXJiX2ludDJpbnVtAAAAiAFyYl9u dW0ybG9uZwAAAIkBcmJfbnVtMnVsb25nAADTAXJiX3N0cjJjc3RyAAAA4gFyYl9zdHJfbmV3MgAA AB8CcmJfdWludDJpbnVtAAAlAnJiX3lpZWxkAABkAnJ1YnlfeG1hbGxvYwAAZQJydWJ5X3hyZWFs bG9jAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAA YAAAY3lnd2luMS5kbGwAFGAAABRgAAAUYAAAFGAAABRgAAAUYAAAFGAAABRgAAAUYAAAFGAAABRg AAAUYAAAFGAAABRgAABBRFZBUEkzMi5ETEwAAAAAKGAAAChgAAAoYAAAKGAAAChgAAAoYAAAKGAA AChgAAAoYAAAKGAAAChgAABLRVJORUwzMi5kbGwAAAAAPGAAADxgAAA8YAAAPGAAADxgAAA8YAAA PGAAADxgAAA8YAAAPGAAADxgAAA8YAAAPGAAADxgAAA8YAAAPGAAADxgAAA8YAAAPGAAADxgAABj eWd3aW4tcnVieTE2LmRsbAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAACQAAAAPDJGMoIyxzLlMgMzITM/ M10zejOXM2o0gzQRNTg1QzVPNX41pzWsNc818jUENko2ajZ8Ns42AjcUN3E3gzfhN/M39jgIOWc5 bTn0OR06RTp1Ons6jjqUOjQ7YDt0OwE8FzwzPFA8azzRPCs9Xj2KPZ49vj3vPUo+aD7GPuQ+Fj9I P3o/rD/ePwAgAABUAQAADzBbMJUwAzExMYwx8DH8MQgyFDIgMlUyWzLPMugyDDNTM2wzkDPIMyk0 czSMNLM0GjYqNjQ2OzZANlA2VTZaNmc2bDZxNoE2hjaLNpg2nTaiNrI2tza8Nsk2zjbTNuM26Dbt Nvo2/zYENxQ3GTceNzc3PDdYN103eTd+N5o3nze7N8A33DfhN/03AjgeOCM4PzhEOGA4ZTiEOJA4 ljjOONc44TjmOPE4GDkkOXY5fjmGOY45ljmeOaY5vjnVOeA5VzpeOmU6dDp/OpY6nTqkOqs6sjq+ OsU6zDrTOuQ68Dr3Ov46DjsWOx47JjsuO1Y7XjtmO247djt+O4Y7jjuWO547pjuuO7Y7vjvGO847 1jveO+Y77jv2O/47BjwOPBY8HjwmPC48Njw+PEY8TjxWPF48ZjxuPHY8fjyGPI48ljyePKY8rjy2 PL48AAAAMAAATAAAAAQwCDAMMBAwFDAYMBwwIDAkMCgwLDAwMDQwODA8MEAwRDBIMEwwUDBUMFgw XDBgMGQwaDBsMHAwdDB4MHwwgDCEMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= ------=_NextPart_001_0000_01C1867C.2676A160--