Table 11019352 RetSQL Setup 11-07-12 11:08:52 2132 revu,Retail2.40.12 Table 11074624 Revu_AllFields 20-06-12 9:22:00 2424 Revu,Redac Table 11074678 Revu_AllKeyDefs 06-03-12 13:34:24 1524 Revu,Redac Table 11113900 ReVu_Setup 03-12-12 15:08:31 10996 ReVu Table 11113901 ReVu_CustomerBuildToLife 24-08-12 10:26:39 3224 ReVu Table 11113915 Revu_Log 16-07-12 8:02:09 2524 Revu Table 11114027 RetExecute SQL 28-11-11 13:37:38 5652 Revu, Redac, Retail2.40.22 Table 11114032 RetExecute SQL Communication 18-11-11 15:22:32 1200 Revu, Redac, Retail2.40.22 Codeunit 11074608 Revu GetDataDefs 20-06-12 10:10:08 26972 Revu,Redac Codeunit 11074614 Revu RetConversion 16-08-12 8:35:55 776 revu Codeunit 11074616 Revu_GeneralUse 18-07-12 8:02:39 28740 Revu Codeunit 11074618 Revu_CheckStatus 26-09-12 10:51:45 5944 Revu Codeunit 11114033 RetExecute SQL 11-07-12 13:10:05 93212 Revu, Redac, Retail2.50.07 u€ KsA  {¥B óoÈï¢Ø +~aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZš‚ƒÜ„Ž…Ú†‡€ˆà‰âŠß‹çŒåã‘’“ë”™•é–ò—ï˜Ï Û¡ä¢ê£ð¤¥ÊºÌ¼Î¾õÞ÷èùìûîüóþô + Òž©°'-ÆÇÿ !"#$%&()*,./:;?@[\]^¸_`{|}~­ÝÐÔÖרÈÁ³ÃÄ´»Ë›œ±+<=>ñ®¯íöѪÓøæúµ¶·Å¹²½¿ÀÍ0¬«1Ø2ý3ÕÙ456789Aa¦Û Ú…܃Ž„Þõ†’‘BbCc€‡Ddè÷Ee‚ߊàˆâ‰FfŸGgHhIiä¡ãåŒç‹JjKkLlMmNn¥¤Oo§ê¢é•ë“™”ìùîû¼ÌPpQqRrSsºÊáTtôþÉUuð£ï—ò–šVvWwXxYyóüϘZz¾ÎÒ Ò!"#$%&'()*+,-./0ØýÙ456789:;<=>?@†b‡÷‰Ÿgh‹jklm¤ûpqrÊtvwx˜Î[\]¸_`†b‡÷‰Ÿgh‹jklm¤ûpqrÊtvwx˜Î{|}~‡‰††††‡‰‰‰‹‹‹††‰‘‘ûûû˜û›œžŸ†‹û¤¤†û¨©ª««­®¯°±Í³´µ¶·¸¹Ê»ÌÍÎÍÍÁÂÃÄÅÆÇÈÉÊËÌÍΘÐÑÒÓÔÙÖ×Øن††Ý†‰‰á‰‹‹‹æ‹÷ûûûûíûñ˜þ†ö÷øûúû˜ýþÿ +&!³´¹º»¼¿ÀÁÂÃÄÅÈÉÊËÌÍÎÙÚÛÜß+%" ÿÂìÂì lX$¨RetSQL Setup ©n ì`d revu,Retail2.40.12TÈÀÿÿÿÿ¡ d@ü¨Revu_AllFields n LŠ Revu,Redacx åÜ ÿÿÿÿPdvü¨Revu_AllKeyDefs «m ֛é Revu,Redacô^Xÿÿÿÿø \¬•©ReVu_Setup Ëo ãÆ? ReVuô*{P+ÿÿÿÿ¢l­•©ReVu_CustomerBuildToLife o m¸= ReVu˜  ÿÿÿÿM \»•©Revu_Log ³n m¹ RevuÜ B8 ÿÿÿÿht+–©RetExecute SQL ål ѐì Revu, Redac, Retail2.40.22žˆÿÿÿÿ´„0–©RetExecute SQL Communication Ñl ÁšL Revu, Redac, Retail2.40.22°94ÿÿÿÿÃh0ü¨Revu GetDataDefs n Œ›. Revu,Redac\i-Äiÿÿÿÿø d6ü¨Revu RetConversion ñn TWØ revuolÿÿÿÿ® `8ü¨Revu_GeneralUse ·n rä¹ RevuDp¤pÿÿÿÿ d:ü¨Revu_CheckStatus Co дT Revu8³œÿÿÿÿt1–©RetExecute SQL ©n ¢XÓ Revu, Redac, Retail2.50.07lýlÿÿÿÿlX$¨RetSQL Setup ©n ì`d revu,Retail2.40.12TtT0 d° €dddG¨(¬ h†6 1CXw倆6#E©$ d µ!, SQL SetupSQL-instellingen0‰h0… L0-P0-0\0-P 0-¤  Primary Key@  SQL Integrated Securityµ!D Sql Integrated Security"Geintegreerde beveiliging SQL SQL Userid@µ!,  Sql UseridSQL-gebruikersnaam SQL Password@µ!, Sql PasswordSQL-wachtwoord SQL Database Name@Pµ!4 SQL Database NameSQL databasenaam Script Folder@ú,A‚ dp ddddddËfÌfÍfÿɚ;<(ef  fX$¨fX$¨‡gÄ#¨0f  Rec4f  xRec  CurrFieldNo ¸ ˜A Utilities ¸ ˜A AssistEditScriptFolder3f Tdf dX$¨fdÄ#¨g  €fÚÿÿÿ-fËÿÿÿ VALIDATE Script Folder FIELDCAPTION0f¼ ˜Á SelectPathx8ÿÿÿÿ$Ee e{ese Retail2.40.12, PBR CreatedeEe„e ee ÿÿÿÿe-—e ee-ÿe ee ÿÿÿÿeeeee{epeƒeeTeƒeeVereeWeeTeƒeeTeƒeeUeVeƒeeUeUeZeeØ  Primary Key SQL Integrated Security SQL Userid SQL Password SQL Database Name Script Folder¡ d@ü¨Revu_AllFields n LŠ Revu,Redacx N:x T  d  pdddG¨øiÊ h†6 1CŒ+Ù €†6#E©$ d µ! Table definitions8(0‡ 0‡40-40-0‡0-0‡$0-( 0…H4 0-L4 0-l 0‡h 0‡l0-p$0-$0-Œ$0-ˆ$0-„ 0-€ 0-|40-x t  TableNo<0 = GetDataVersion FieldNo<0 = Table TableName@ú<Not a FlowField! FieldName@ú<Not a FlowField! Type DataType@ Length Class@ Enabled Type Name@<Not a FlowField! CaptionENU@ú<Not a FlowField! RelationTableNo RelationFieldNo SQLDataType@ OptionCaptionENU_1@ú OptionCaptionENU_2@ú OptionCaptionDU_1@ú OptionCaptionDU_2@ú OptionString_1@ú OptionString_2@ú CaptionDU@ú<Not a FlowField!0A ‚ dp ddddddËfÌfÍfÿɚ;<(ef ˜f@ü¨f@ü¨‡  Rec4f  xRec  CurrFieldNo <df d@ü¨f  ÿÿÿÿex      TableNo FieldNo TableName FieldName Type DataType Length Class Enabled Type Name CaptionENU RelationTableNo RelationFieldNo SQLDataType OptionCaptionENU_1 OptionCaptionENU_2 OptionCaptionDU_1 OptionCaptionDU_2 OptionString_1 OptionString_2 CaptionDUPdvü¨Revu_AllKeyDefs «m ֛é Revu,Redacô‰¨ôÐ dœ ldddG¨D=Ó h†6 1C}æ €†6#E©$ d µ! Key definitionsØ 0‡0‡0-0…0’ 0- 0- 0… 0…  0… 0-| ObjectId KeyNumber Columns@ú Enabled Generated at SqlIndexColumns@ú SumIndexFields@ú MaintainSQLIndex MaintainSIFTIndex Clustered KeyName@d0A ‚ dp ddddddËfÌfÍfÿɚ;<(ef ˜fvü¨fvü¨‡  Rec4f  xRec  CurrFieldNo <df dvü¨f  ÿÿÿÿeX     ObjectId KeyNumber Columns Enabled Generated at SqlIndexColumns SumIndexFields MaintainSQLIndex MaintainSIFTIndex Clustered KeyNameø \¬•©ReVu_Setup Ëo ãÆ? ReVuô*‹tô*Ð* dˆ XdddG^¨ÈöPÙ4 1t-¡hÙ4#©$ d (:0‰à 0-  0-”0‰D0…x0- t0.,t 0.0T(0-4°30-T\70‰Pœ80…\¤90-`”<ð‰l>0…x?0’|Ð@0‡„A0-ˆ(B0…¨C0‡¬lD0‡°E0‡´¸F0-¸´H0-ØI0…øJ0…üLP0-TQ0- tR0-@pS0`tT0‡h U0-l\e0.ÔTf0}ôTg02ÔTh0-àTi0‡äLj0‘èLk0„ø\l01Xm0üLn0.po4‹Tp0‰ Tq0’Tr0Ts0… Lt0.$u0-( v0-$¼w4‹ x0‡$ y0‡( z0-, {0-( |0-$ }0-   Primary Key@ ?@ABC DEFHIJ$P$QRS TUefghijklmnopqrstuvwxyz{|} Primary Key ReVu Path Backup Path ReVu Drive DriveRemovable RevuProcsVersionNo RevuProcsInstallDate RevuProcsInstallTime NavVersion Script Default Path CustomerCode HasCustomizations SystemAbbrev LocalizationCode IsInTestMode StartDate OutOfRangeWorkId MainCompany StepByStepMode NextBtlStepNo SwitchToStepByStepAtNo NextBuildStepNo SyncPreviousDB SyncNextDB CustomizedBTLOnly InstallerInuse Retail Version/Build Tables Retail Version/Build Other SQLProductVersion GetDataDefTimeStamp VersionDeterminingCUID WorkingDataBase Empty_DATEFORMULA Empty_RECORDID Empty_DECIMAL Empty_TEXT Empty_INTEGER Empty_GUID Empty_BLOB Empty_TABLEFILTER Empty_BIGINTEGER Empty_TIME Empty_OPTION Empty_CODE Empty_DATETIME Empty_DURATION Empty_BOOLEAN Empty_DATE CommandLine ApplicationPath ConversionMode ConversionStatus NrOfCompanies LastErrorText1 LastErrorText2 LastErrorText3 LastErrorText4¢l­•©ReVu_CustomerBuildToLife o m¸= ReVu˜ *˜ t  dˆ XdddG^¨<؇4 1y—ð‡4#©$ d Ì 40‡0‡(0‡h0- l0-,` 0’Lx 0…TP0-X¬0-T¬0-tp(0-”¼)0-´Ô BuildToLifeIdµ! BuildToLife Id Sequence BuildIdµ! Build Id ToVersionBuild@µ!(  To BuildNoNaar Buildnr<Retailium versie/build FromVersionBuild@µ!( From BuildNo Van Buildnr<Retailium versie/build InstallDateµ!0 Install DateInstallatie datum<Datum Installatie IsInstalledµ!0 Is Installedis geinstalleerd%1nSte ->%1ee ee ‡e ee÷ÿe ‡d?ee…e e ee e e eee÷ÿe ‡d3eele ee ‡eee ee ‡eee÷ÿee÷ÿe ‡)eeefe e ee eee-ÿee-ÿe e ee ‡e ‡úe?eee-ÿee-ÿe e ee ‡úe ‡úe?ee eee e ee‡e ee7eeþÿÿeúÿe¨e ee ‡e eeöÿe‡ee?eee ‡ eee ‡eeeöÿeeûÿeDe ee ‡e eeeeüÿeDe ee ‡eeeeeýÿeDe ee ‡eeeeeþÿeDe ee ‡eeeee eee{eÐdH$t,, 0 ,, 08$ ,@,( ,, 4\\,,$,,,,pedere/ereeWeereheeqeeWeeTeeUeZeeeùÿ?eƒeeZeeƒee?eLe ZeeeWeeTePeX#1########################: #2######################## #3########################UeZeedereeÿÿrehee]eeqeeWeeZeeqeXe@Revu_AllFields.SETRANGE(Source,Revu_AllFields.Source::"1");eqeƒee Zeeqee÷ÿ?eLedZeeqeeWeeZeeqeeWeeTeLeVee UeZeeqeeWeeZeeqeXe8Revu_AllFields.Source:=Revu_AllFields.Source::"1";eeqeeWee?ePeContainer for VersionNoZeeqeeWee?eLeZeeqeeWee?ePe20-06-2012lZeeqeeWee?eLeZeeqeeWee?eLe ZeqeXeVersionNoeleqeeWee ZeeeqeeWeeZeeqeeWeeTeƒeeVeLeUeZereXe TableGEeqeeWeeZeeeqegeeqederee÷ÿ3eLedreheeqe]eeqeeWeeTeLeVeeWeeUeZeeqeeWeeTeLeVeeWeeUeZeeqee÷ÿ?eLeZeeqebeZeeqee÷ÿ)eLeZeeqeeTeeWeeUeZeeeqeeWeeZeeqeeWeeTeƒeeVeLeUeZereXe Table TeqeeWeeTeƒeeVePe%1eVeeWeeUeZeeqeeWeeZeeeqeeWeeZeeqeeWee?eeWeeZeeqeeWee?eeWeeZeeqeeWee?ePeTable CaptionsoZeeqeeWee?eLeZeeqeeWee qe?eeWeereZeeqeeWee ZeeeqejereeWeere3ereLeZeeqeeWeeZeeqeeWee Teƒe e VePe <>%1nStVePe>%1UeZeeqeeWeeTeLeVee UeZeeqee÷ÿ?eLedZeeqedereeWee reheeqegeeqee Wee TeeWeeUeZeeqederee÷ÿ3eLedreheeqe]eeqeeWeeTeLeVeeWeeUeZeeqeeWeeTeLeVeeWeeUeZeeqee÷ÿ?eLeZeeqebeZeeqee÷ÿ)eLeZeeqee?ee Wee TeeWeeUeZeeqeeWeeqe?eƒeeTeeWee VeLeVeLeúUeZeeqeeWeeqe?eƒeeTeeWee VeLeúVeLeúUeZeeqeeWeeZeeqee Wee ZeeqejereeWeere3ereLeZeebeZeedereeúÿrehee]eeqeeWeeTeLeVee UeZeeqeeöÿ?eƒeeZeeqeeTeLe UeZeeqeeTeLeUeZeeqeƒee?eeöÿZeebeZeeedereeûÿrehee]eeqeeWeeTeLeVee UeZeeqeeZeebeZeedereeüÿrehee]eeqeeWeeTeLeVeeUeZeeqeeZeebeZeedereeýÿrehee]eeqeeWeeTeLeVeeUeZeeqeeZeebeZeedereeþÿrehee]eeqeeWeeTeLeVeeUeZeeqeeZeebeZeeeWeeZeeGex,‡4‡D ¸ ˜A _ObjectID c˜A _CurrentLanguageIeÿÿJeþÿEeœe e e ÿÿÿÿe -%1leÿÿee…e e e/ee4e e eÿÿee ee ÿÿÿÿe -%1leÿÿee eee eeee?eee?eee?eee?eee-ÿee-ÿeeee?eee?eee?eee ?eee ?ee e ?eee ?eee ?eee-ÿee-ÿeeee?eee?eeefe e ee eee-ÿee-ÿe e ee ‡e ‡úe?eee-ÿee-ÿe e ee ‡úe ‡úe?eee-ÿeee?ee e-ÿee-ÿe e ee ‡e ‡úe?eee-ÿee-ÿe e ee ‡úe ‡úe?ee e ee‡e ee7eedüÿÿe e ee{eL!È, 8DD4\\,\\,peeWee TeƒeeVePe%1lVeeÿÿUeZeedere/ereeWee rehee]eeqee Wee TeeÿÿUeZeeqeeWeeTeƒeeVePe%1lVeeÿÿUeZeeqeeWeeZeeqegeeqeeWeeZeeqeXe8Revu_AllFields.Source:=Revu_AllFields.Source::"1";eeqeeWee?eeWeeZeeqeeWee?eeWeeZeeqeeWee?eeWeeZeeqeeWee?eeWeeZeeqeeWee?eƒeeTeƒeeTeeWeeUeUereZeeqeeWee?eeWeeZeeqeeWee?eeWeeZeeqeeWee?eeWee ZeeeqeeWeeqe?eeWee qeZeeqeeWee qe?eeWee qeZeeqeeWeeqe?eeWee ZeeqeeWeeqe?eeWee ZeeqeeWeeqe?eƒeeTeƒeeTeeWeeUeUeqeZeeqeeWeeqe ?eeWeeZeeqee?ee Wee TeeWeeUeZeeqeeWeeqe?eƒeeTeeWee VeLeVeLeúUeZeeqeeWeeqe?eƒeeTeeWee VeLeúVeLeúUeZeeqeeWee?eƒeeTeeWeeUeZeeqeeWee ?eƒeeTeeWee VeLeVeLeúUeZeeqeeWee?eƒeeTeeWee VeLeúVeLeúUeZeeqeeWee ZeeqejereeWee3eLeZeeqee Wee ZeebeZeeGel,-4‡8 ¸ ˜A _RetVersion ¹ ˜A _DotPosJeÿÿEe$e e ee{epeeWee ZeeGeœ@‡D‡L‡T ¸ ˜A _cnt ¹ ˜A _KeyNameNum º ˜A _TableNoJeÿÿEe¬e eee eeeýÿee…e eeeDeÿÿe ‡d3eele ee ‡eee ee ‡eeeÿÿeeÿÿe ‡)eeeýÿ2ee4eþÿe ‡ÿÿÿÿ?eeýÿe?eee eþÿe ‡)ee eee ee ÿÿÿÿeee ee ÿÿÿÿeee…e ee/eepee?eee?eee?eee?ee e’ee?ee e?ee e?ee e ?ee e ?eee ?eee ,eeLee -$yNe-ÿeeþÿe'e?ee ee -eyN?ee eee‡e e e7eeÌüÿÿe{e\*Ä ( ,, ,,,$< peeWeeZeeeWeeZereXekey is Tableno,Noceeýÿ?eLeZeedereeWeeTeUereheegeeqedereeÿÿ3eLedreheeqe]eeqeeWeeTeLeVeeWeeUeZeeqeeWeeTeLeVeeWeeUeZeeqeeÿÿ?eLeZeeqebeZeeqeeÿÿ)eLeZeeqedereeWeere2ereeýÿreheeqe]eeqeeþÿ?e"eLeZeeqeeýÿ?eeWeeZeeqebeZeeqeeqedereeWeereheeqeeþÿ)eLeZeeqeeWeeZeeqeeWeeTeƒeeVeeWeeUeZeeqeeWeeTeƒeeVeeWeeUeZeeqedere/ereeWeeTeUereheeqe]eeqeeWee?eeWeeZeeqeeWee?eeWeeZeeqeeWee?eeWeeZeeqeeWee?eeWeeZeeqeeWee ?eƒeeZeeqeeWee ?eeWeeZeeqeeWee ?eeWeeZeeqeeWee ?eeWee ZeeqeeWee ?eeWee ZeeqeeWee?eeWee ZeeeqedereeWeere,ereeWee reheeqeeWee?ePe$yNre!ereƒeeTeeþÿUeeqeaeeqeeWee?ePeeyNZeeqeeWeeZeeqebeZeejereeWee 3eLeZeeEe$e e ee{epeeWee ZeeEe$e e ee{epeeWee ZeeGeh,‡0‡4 ¸ ˜A _Lang ¹ ˜A _CntIeÿÿJeþÿEee‡eeeÿÿ2ee eeÿÿee eee e e ÿÿÿÿe -0elee e e ÿÿÿÿe ->%1e‡eeþÿe ‡d?ee…e e eeˆeþÿe ‡d3eele ee ‡eee ee ‡eeeþÿeeþÿe ‡)ee eee ee ÿÿÿÿe ‹ee ee ÿÿÿÿeee eeee?ee eee‡e ee7eeˆþÿÿe{e0Ä08( ,, 0,pedereƒeere2ereeÿÿrehereƒee?eeÿÿZeeeWeeZeeeWee TeƒeeVePe0elUeZeeeWee TeƒeeVePe>%1VeLeUeZeeeþÿ?eLedZeedereeWee reheegeeqedereeþÿ3eLedreheeqe]eeqeeWeeTeLeVeeWeeUeZeeqeeWeeTeLeVeeWeeUeZeeqeeþÿ?eLeZeeqebeZeeqeeþÿ)eLeZeeqeeWeeZeeqeeWeeTeƒeeVeLeUeZereXe Table TeqeeWeeTeƒeeVeeWeeUeZeeqeeWeeZeeqeeWee?eeWeeZeeqeeWeeZeejereeWeere3ereLeZeeGeÔ ¸f ¼‡À…ȅԅà…ì…ô…… c˜A _RecRef ¸ ˜A _cnt ¾ ˜A _GetFields ½ ˜A _GetTimeStamp ¼ ˜A _GetSqlVersion » ˜A _GetRetVersion º ˜A _GetKeys ¹ ˜A _GetTableCaptions ¿ ˜A _HasSqlSetupTableJeÿÿ Ee”e eee ee ÿÿÿÿe ‹ee ee ÿÿÿÿe ‡X$¨ee…e eee e÷ÿe?eeLe…ee$-Has no "RetSQL Setup" tableeee…ee$-GetData definitions: ALL?eee¸eýÿe?eeüÿe÷ÿ?eeûÿe÷ÿ?eeúÿe?eeùÿe?eeøÿe?eeeýÿeüÿeûÿeúÿeùÿeøÿee e…ee(- GetData definitions: keys only?ee˜eüÿe÷ÿ?eeûÿe÷ÿ?eeúÿe?eeùÿe?eeeýÿeüÿeûÿeúÿeùÿeøÿeeÈe…ee(- GetData definitions: The rest?ee€eüÿe÷ÿ?eeûÿe÷ÿ?eeúÿe?eeeýÿeüÿeûÿeúÿeùÿeøÿee{eT&ü00(LD@P@P@oe OnRunXe_GetFields:=TRUE;taeeWeeZeeeWeeTeƒeeVeeWeeReQe UeZeeeWeeTeƒeeVeLeX$¨UeZeedereeWeerehee]eeqee÷ÿ?eeZeebeeaee]eeqedereƒee TePe Has no "RetSQL Setup" tableUereheZeebeZeedereƒee TePe GetData definitions: ALL?eUerehee]eeqeeýÿ?eeZeeqeeüÿ?ee÷ÿZeeqeeûÿ?ee÷ÿZeeqeeúÿ?eeZeeqeeùÿ?eeZeeqeeøÿ?eeZeeqeeTeeýÿVeeüÿVeeûÿVeeúÿVeeùÿVeeøÿUeZeebeeaeedereƒee TePe$GetData definitions: keys only?Uerehee]eeqeeüÿ?ee÷ÿZeeqeeûÿ?ee÷ÿZeeqeeúÿ?eeZeeqeeùÿ?eeZeeqeeTeeýÿVeeüÿVeeûÿVeeúÿVeeùÿVeeøÿUeZeebeeaeedereƒee TePe$GetData definitions: The rest?Uerehee]eeqeeüÿ?ee÷ÿZeeqeeûÿ?ee÷ÿZeeqeeúÿ?eeZeeqeeTeeýÿVeeüÿVeeûÿVeeúÿVeeùÿVeeøÿUeZeebeZeeø d6ü¨Revu RetConversion ñn TWØ revu¦Iä d$  dgx $ddddddËfÌfÍfÿɚ;g<(ef @ gš$¨ ʚ; ConversionMgt Tdf dš$¨g d»•©f Pf‘c˜Áf˜c˜Á Initialize Process ðÿÿÿÿÐeGe<f»•© ¸ ˜A _LogJeÿÿEe<e eee eee{e doe OnRuneWeeZeeeWeeZee® `8ü¨Revu_GeneralUse ·n rä¹ RevuDp¥7Dp p d$  dgx $ddddddËfÌfÍfÿɚ;g<(ef Ì !Lff ‡g9ü¨àfˆf f g4ü¨g1–©-û-<‹$f$f(f(f(f$f(f(f0f(f$f$f(f$f$f(f(f$f f f f ¸ ˜A TxtRemovable;f(  (Removable)(Verwijderbaar) ¹ ˜A TxtNoUpdatesOnDrive;fà oDid not find updates in any of your drives. Searched for a path containing "Retailium Navision Updates".kGeen updates gevonden in een van uw drives. Er is gezocht naar een map "Retailium Navision Updates". º ˜A MainRetVersion » ˜A RevuR5Funcs ¼ ˜A TxtChoose;fÀ `More than one disc drive was found that contains Retailium Navision Updates. Select one please:TMeer dan 1 schijfstation met Retailium Navision updates is gevonden. Maak uw keuze: ¾ ˜A TxtErrSQLVersion;f` .Could not retrieve the SQL-Server Version)Fout tijdens ophalen SQL-Server versie ½ ˜A TxtErrGetDataDefTimeStamp;fp 7Could not retrieve timestamp of the OBJECT table1Kan de timestamp van OBJECT tabel niet ophalen Ä ˜A ExecStoredProcs à ˜A CuExecSql ¿ ˜A path À ˜A RetVersion  ˜A WindowStyled( hide show ”c˜A GetDBName3f ¹ ˜A LeftTrim3f ’c˜A GetServerName3f “c˜A GetServerType3f Ä ˜A FormatVersion3f À ˜A SelectDrive3f ¸ ˜A SetRetVersion3f º ˜A SetSQLVersion3f » ˜A SetGetDataDefTimeStamp3f  ¼ ˜A GetRetVersion3f  ½ ˜A MagicPath3f  ¾ ˜A WriteLog3f  ¿ ˜A FolderExists3f  Î ˜A RunShellQry3f  ˜A PathExists3f È ˜A GetDriveList3f Ð ˜A CreateFolder3f Ô ˜A DeletePath3f SYSTEM FILE DIALOG ¬df d9ü¨g d4ü¨g d1–©g d”5wfdf df d¬•©fdˆ$¨g d”5wfd»•©fd ”5wfTdf $dy $L&WN Ü5ùðЭ¹ÀOՊ aä`(a+ô`ïCN $ÑÏÕMÂr ׋CŠB˜BKˆ¯¸œ fûÿÿÿfÁÿÿÿfôÿÿÿfþÿÿÿf÷ÿÿÿfýÿÿÿfÖÿÿÿfÕÿÿÿf¿ÿÿÿfÏÿÿÿfÐÿÿÿfúÿÿÿ COPYSTR CONTEXTURL STRPOS DELSTR STRLEN DELCHR FORMAT CLEAR CURRENTDATETIME CREATE SLEEP STRSUBSTNO4f¹ ˜Á DialogStrMenu0f¹ ˜Á ExecProcŒfÀ ˜ÁfÇ ˜ÁfÒ ˜Á Select1FieldTEXT Select1FieldBigINT ExecSqlQuery´fÛÿÿÿføûÿÿ‰…fýÿÿÿ RESET FINDFIRST Drive Removable NEXT,füÿÿ EXISTS,fÿÿÿÿ ERRORÔ fÿÿÿÿ$-Pf÷ÿÿÿ-RS GET Retail Version/Build Tables MODIFY SQLProductVersion GetDataDefTimeStamp ØfÛÿÿÿfëÿÿÿ‹ ‡føûÿÿ-  RESET SETRANGE Type ID FINDFIRST Version ListfÛÿÿÿfëÿÿÿ‡f÷ûÿÿ‡füÿÿÿ---’-‹ fúÿÿÿfêÿÿÿføûÿÿ RESET SETRANGE SessionNo FINDLAST EntryNo INIT ProgramCodeName ObjectName CodePosition Date Notes ErrorLevel INSERT SETFILTER FINDFIRSTÀfÛÿÿÿfëÿÿÿ…føûÿÿ‡ RESET SETRANGE My Session FINDFIRST Connection IDlPfè Run$0y- y y$$,y ðZÿÿÿÿ ˆÌ|ÜP Lðè ¼ ¬ ØØeGe|-ûl…t…x‡€-ûˆ-ûŒ ‘c˜A _FullPath c˜A _ForSql ’c˜A _Counter “c˜A _ServerName •c˜A _DbNameHeÿÿIeþÿJeüÿEeHeúÿe-ÿee-ÿeee‡ee-ÿeee- database=ee ‡ !ee?eeúÿe-ÿeeúÿe‡eeúÿe -&bNee?ee-ûeee-MSSQLve2ee eþÿ/eeðeüÿe‡eeúÿe?eeüÿe ‡4eeúÿeüÿ ee ˆ\ÿÿÿ2e,ee(eüÿe ‡*ee ÿÿÿeüÿe ‡4ee<eúÿe-ÿeeúÿeüÿe ‡!ee ‡úe?eeüÿe ‡?eeüÿe‡eeúÿe0eeúÿeüÿ ee ˆ.2e,ee(eüÿe ‡)eeŒÿÿÿeúÿe-ÿeeúÿe ‡eüÿe ‡"ee?eeeÿÿeúÿ?eee{e4ÀX4,H P\ Ppe eúÿre?ereƒeeTeƒeeVereƒeeTeƒeeVerePedatabase=Uere!ereLe UeZereXe -do-seeeúÿre?ereƒeeTeeúÿVereƒeeTeeúÿVerePe&bNUeUeZereXe -do-eedereere2erePe MSSQLverehee]eeqedere/ereeþÿrehere]eeqeeüÿre?ereƒeeTeeúÿUeZeeqelereTeeüÿre4ereLeUere,ereTeeúÿ[eeüÿ\ere2erePe\ouUere_eeqeeüÿre*ereLeZeeqedereeüÿre4ereLereheeqe]eeqeeúÿre?ereƒeeTeeúÿVereeüÿre!ereLeVereLeúUeZeeqeeüÿre?ereLeZeeqelereTeeüÿre0ereƒeeTeeúÿUeUere,ereTeeúÿ[eeüÿ\ere2erePe.ouUere_eeqeeüÿre)ereLeZeeqeeúÿre?ereƒeeTeeúÿVereLeVereeüÿre"ereLeUeZeeqebeZeeqebeZeebeeaee]eeXe8 IF _ForSql THEN _DbName := '[' + _DbName + ']';ebeZeeDeTeeúÿUeZeeGe @-ûL‡TˆX ‘c˜A _Text5f ’c˜A _Counter ¸ ˜A _CharIeÿÿJeþÿEeÄeÿÿe-ÿee-ÿeeÿÿee -<>xe - xe?eeÿÿe-ÿee-ÿeeÿÿee -<>xe -ÿxe?ee{e Xpe eÿÿre?ereƒeeTeƒeeTeeÿÿUeVerePe<>xVerePe xUeZeeeÿÿre?ereƒeeTeƒeeTeeÿÿUeVerePe<>xVerePeÿxUeZereXeDIT IS ALT+0160eGeX,-û-û$ “c˜A _ServerNameHeÿÿJeþÿEele‡ee-ÿeee- servername=e7ee(eÿÿe -????eeøeþÿe-ÿee-ÿeee‡ee-ÿeee- servername=ee ‡ !ee?eeÿÿe-ÿeeþÿe‡eeþÿe -&eree?eee{eÀ pedereƒeeTeƒeeVerePeservername=Uere3ereLereheeqeDeTePe???UeZeeeeþÿre?ereƒeeTeƒeeVereƒeeTeƒeeVerePeservername=Uere!ereLe UeZereXe Delete the "prefix"bNaeeDeTeƒeeTeeþÿVereƒeeTeeþÿVerePe&erUeUeUeZereXe Delete trailing p.eGe(-ûHeÿÿEe¤eÿÿe-ÿee-ÿeee‡ee-ÿeee- servertype=ee ‡ !ee?eee{epeDeTeƒeeTeƒeeVereƒeeTeƒeeVerePeservertype=Uere!ereLe UeUeZeeGeØT-h-p‡t‡| ¸ ˜A _ParRetVersion5f ¹ ˜A _RetVersion º ˜A _Cnt » ˜A _CopyFromIeÿÿJeþÿEe¼e°eÿÿe -Par3eeeˆeÿÿe-ÿeeÿÿe -=are -.are?eeÿÿe-ÿee- rsie ‡e ‡e‡eeÿÿe"eeeÿÿ'e?eeýÿe ‡@ee‡eeÿÿee ‡Ae4eüÿe‡eeÿÿeeýÿ"ee ‡!e?eeþÿe -Ret3eePeþÿe-ÿeeÿÿeüÿe ‡e?eedeþÿe-ÿeeÿÿeüÿe ‡ee -.'eeþÿ'e?eeýÿe ‡)eCeÔþÿÿeÿÿe-ÿeeþÿe -=ete - ete?ee{e$ ø(D€” @d peDeZereXePWerkt nog niet goed als er een (niet numerieke) toevoeging zit bv 2.60.02aedereeÿÿre3erePeParrehereDeZeeeÿÿ?eƒeeTeeÿÿVePe=arVePe.arUeZeqe'Xe 26002aVeeÿÿ?eƒeeTePe rsiVeLeVeLe"eƒeeTeeÿÿUeUeqe!ereeÿÿZeqeXeecereeýÿ?eLereiereƒeeTeeÿÿUeqe_ee]eeqeeüÿ?eƒeeTeeÿÿUere"eeýÿre!ereLeZeeqedereeþÿre3erePeRetreheeqeeþÿ?eƒeeTeeÿÿVeeüÿVeLeUeeqeaeeqeeþÿ?eƒeeTeeÿÿVeeüÿVeLeUere!erePe.re!ereeþÿZeeqeeýÿ)eLeZereXefor doet er ook al 1ls ebeZeeeÿÿ?eƒeeTeeþÿVePe=etVePe etUeZeeGe„¤-”-œf”5w¤-¬‡´-̇ЇØ ¾ ˜A _UpdatePath ½ ˜A _DriveRec ¼ ˜A _Options » ˜A _Selected º ˜A _OptionArray8fd ¹ ˜A _Cnt ¸ ˜A _PreferredHeÿÿIeþÿJeýÿEe8eýÿ eeeeúÿeeùÿeeýÿ eeeøÿee…eeýÿeþÿ'ee-\nulteP'eeeØeùÿe ‡)eeúÿeùÿ eeýÿ?eeýÿ/ee4eüÿe -,pteýÿ'e)ee`eøÿ7eeeøÿeùÿ?eeüÿe -,pteýÿ'ee'e)ee‡eýÿ ee7eeÄþÿÿeùÿ7ee e eeeùÿe ‡3ee0eÿÿeúÿeùÿ e?eeeøÿ7ee eøÿe ‡?eeüÿe-ÿeeüÿe ‡e?eeûÿe‡e eeüÿeøÿee?eeûÿe‡4ee8eÿÿeúÿeûÿ e?ee0e(eÿÿe -Sel?eee{eH ¼  H $0,,H,8DDpeeýÿWeeZeeƒeeTeeúÿUeZeeeùÿ?eLeZeeeýÿWeeZeeeøÿ?eLeZeegeeqedereTeeWeeTeeýÿWeeýÿre!ereeþÿre!erePe \nultePUeUereheeqe]eeqeeùÿ)eLeZeeqeeúÿ[eeùÿ\e?eeýÿWeeýÿZeeqedere/ereeýÿWeeýÿreheeqe]eeqeeüÿ)ePe,pt!eeýÿWeeýÿZeeqebeeqeaeeqe]eeqedereeøÿ3eLerehereeøÿ?eeùÿZeeqeeüÿ)ePe,pt!eeýÿWeeýÿqe!ereeZeeqebeZeeqebeZeejereeýÿWee3eLeZeeXePals er meer dan 1 drive gevonden is met updates: keuze aan de gebruiker.edereeùÿ3eLerehereƒe eTeeUeZeedereeùÿ3eLerehereDeTeeúÿ[eeùÿ\eUeZeeedereeøÿ3eLerehereeøÿ?eLeZeeeüÿ?eƒeeTeeüÿVeLeUeZeeXe$IF MainRetVersion >= 250 THENeneXeP _Selected := Revu2009Funcs.DialogStrMenu(_Options,_Preferred, TxtChoose)eXe ELSEleceqeeûÿre?ereeWeeTeeüÿVeeøÿVereeUeZeedereeûÿre4ereLerehereDeTeeúÿ[eeûÿ\eUeeaereDeTePeSelUeZeeGeÌTf¬•©\-d‡hgˆ$¨p » ˜A _RevuSetup ¸ ˜A _RetVersion ¹ ˜A _DotPos º ˜A _RetApplManJeÿÿEe„eeþÿeeÿÿ eeeÿÿeþÿ2ee4eÿÿeþÿ?eeÿÿ eee{eôpeeTeeþÿUeZeeeÿÿWeeZeedereeÿÿWeeÿÿ2eeþÿrehee]eeqeeÿÿWeeÿÿ?eeþÿZeeqeeÿÿWeeZeebeZeeGep,f¬•©4g1–©< ¸ ˜A _RevuSetup ¹ ˜A _CuExecSqlJeÿÿEeeÿÿ eee‡eþÿ eeÿÿe- SQLVersionee\-TTFROM (select CONVERT(VARCHAR,serverproperty('ProductVersion')) as SQLVersion) AS Xe ‡ee ‡2ee e eeeÿÿ eee{e˜¼peeÿÿWeeZeeqedereeþÿWeeTeeÿÿWeeÿÿVePeSQLVersioneVeeqePeXFROM (select CONVERT(VARCHAR,serverproperty('ProductVersion')) as SQLVersion) AS XVeLeUere2ereLereheeqeƒe eTeeUeZeeeÿÿWeeZeeGep,f¬•©4g1–©< ¸ ˜A _RevuSetup ¹ ˜A _CuExecSqlJeÿÿEeeÿÿ eee‡eþÿ eeÿÿe-GetDataDefTimeStampe`-XXFROM (select CONVERT(BIGINT,MAX(Timestamp)) as GetDataDefTimeStamp FROM Object) AS Xe ‡ee ‡2ee e eeeÿÿ eee{e˜ÈpeeÿÿWeeZeeqedereeþÿWeeTeeÿÿWeeÿÿVePeGetDataDefTimeStampVeeqePe\FROM (select CONVERT(BIGINT,MAX(Timestamp)) as GetDataDefTimeStamp FROM Object) AS XVeLeUere2ereLereheeqeƒe eTeeUeZeeeÿÿWeeZeeGeX- f¬•©¨f”5w ¬‡°gˆ$¨¸‡¼‡À ¸ ˜A _RetVersion5f » ˜A _RevuSetup ¼ ˜A _Obj ¹ ˜A _DotPos º ˜A _RetApplMan ½ ˜A _Cnt ¾ ˜A _PosIeÿÿJeþÿEe(eýÿ e eeýÿ e e  ÿÿÿÿe ‹eeýÿ e e  ÿÿÿÿe ‡ˆ$¨eeýÿ e eeÿÿe-ÿeeýÿe?eeÿÿe-ÿeeÿÿe‡eeÿÿe-RETAILsee ‡!ee ‡de?eeÿÿe-ÿeeÿÿe ‡e‡eeÿÿe -,et'ee -,etee ‡"ee?eeúÿeeùÿe ‡@ee‡eeÿÿee ‡Aete-ÿeeÿÿeùÿe ‡ee -.3ee eúÿe ‡)eCe”ÿÿÿeúÿe ‡0ee,eÿÿeÿÿe -.00'e?eeúÿe ‡0ee,eÿÿeÿÿe -.00'e?eeeÿÿee{e(ˆ00,x„ ˜ $ $peXe„_RetVersion:=FORMAT(_RetApplMan.GetApplicationVersionID()); Je kunt niet weten of de functie in de codeunit nog hetzelfde is.eXe Gaat soms fouteeýÿWee ZeeeýÿWee Teƒeýÿe VeeýÿWeeýÿReQe ýÿUeZeeeýÿWee Teƒeýÿe VeLeˆ$¨UeZereXe RetApplication ManagementpleeýÿWee ZereXe,mag NAV-fout geven als die niet bestaateeÿÿ?eƒeeTeeýÿWeeýÿUeZeeeÿÿ?eƒeeTeeÿÿVeƒeeTeeÿÿVePe RETAILsUe!eLeVeLedUeZeeeÿÿ?eƒeeTeeÿÿVeLeVeƒeeTeeÿÿ!ePe,etVePe,etUe"eLeUeZeeeúÿ?eLeZeecereeùÿ?eLereiereƒeeTeeÿÿUere_eeqedereƒeeTeeÿÿVeeùÿVeLeUere3erePe.rehereeúÿ)eLeZeedereeúÿ0eLerehereXePdit werkt nu voor Retailium, maar in de toekomst? en voor andere systemen?teqeeÿÿ?eeÿÿ!ePe.00Zeedereeúÿ0eLereheeqeeÿÿ?eeÿÿ!ePe.00ZeeeTeeÿÿUeZeeGe(-ûHeÿÿEe0eÿÿe-s?eee{epeDeTePe sUeZeeGeä¤-û´-û¼-È-û̋(f»•© ,f ”5w 4‡8 ¸ ˜A _ProgramCodeName º ˜A _ObjectName » ˜A _CodePosition ¼ ˜A _Notes ½ ˜A _ErrorLeveld(P InfoWarning Error System XerrorXwarning ¹ ˜A _Log ¾ ˜A _Session ¿ ˜A _NextNoIeÿÿJeúÿEeøeùÿ e eeùÿ e e  ÿÿÿÿeeeùÿ e eeúÿ e eeúÿ e e  ÿÿÿÿeùÿee…eúÿ e e/ee(eøÿe ‡?ee,eøÿeúÿe ‡!e?eeúÿ e eeúÿeùÿ?eeúÿeøÿ?eeúÿeÿÿ?eeúÿeþÿ?eeúÿ eýÿ?eeúÿ e’e e?eeúÿ eüÿ?eeúÿ eûÿ?eeúÿ e ee{e,(,,,$0peeùÿWee ZeeeùÿWee Teƒeùÿe VeeUeZeeeùÿWee ZeeeúÿWee ZeeeúÿWee Teƒeúÿe VeeùÿWeeùÿUeZeedere/ereeúÿWee reheeqeeøÿ?eLeeaereeøÿ?eeúÿWeeúÿ!eLeZeeeúÿWee ZeeeúÿWeeúÿ?eeùÿWeeùÿZeeeúÿWeeúÿ?eeøÿZeeeúÿWeeúÿ?eeÿÿZeeeúÿWeeúÿ?eeþÿZeeeúÿWeeúÿ ?eeýÿZeeeúÿWeeúÿ ?eƒe e ZeeeúÿWeeúÿ ?eeüÿZeeeúÿWeeúÿ ?eeûÿZeeeúÿWee ZeeGe”@-õD-H-L º ˜A _Dir ¸ ˜A _Cmd ¹ ˜A _QryIeÿÿJeþÿEexeýÿe$-EXECUTE XP_CMDSHELL 'DIR ""eÿÿ'ee -""''e?ee eeýÿee{e ø(peeýÿ?erePe EXECUTE XP_CMDSHELL 'DIR ""re!ereeÿÿre!erePe""'ZeeeWeeTeeýÿUeZeeGeԐ-”-˜‹Äf ,-e0…8‡< ¾ ˜A _Cmd ¿ ˜A _Qry ¹ ˜A _WindowStyled( hide show ½ ˜A _Wshell $L&WN Ü5ùðЭ¹ÀOՊ aä`(a+ô`ïCN $ÑÏÕMÂr ׋CŠB˜BKˆ¯¸ $DA¾Ó¢‹KÓP ¼ ˜A _Server º ˜A _RunModal ¸ ˜A _ResIeÿÿJeüÿEe(e eüÿeeeúÿeeùÿeyÿeüÿ e eÿÿe - md'eeþÿ'eeýÿeúÿe eeùÿ6eeTe e- Cmd failed:eÿÿ'ee -\\d'eeþÿ'eee e ‡eeeüÿee{e ``,peƒe e TeeüÿVeeUeZeeXeDMESSAGE('TEMP=' + _Wshell.ExpandEnvironmentStrings('%TEMP%'));eeeúÿ?eeZeeeeùÿ?eeüÿWee Teeÿÿ!erePe mdre!ereeþÿVeeýÿVeeúÿUeZeedereeùÿre2ereLerehereƒe eTePeCmd failed:re!ereeÿÿre!erePe\\dre!ereeþÿUeZeeƒe e TeLeUeZeeƒeeTeeüÿUeZeeGe@…€-ûˆ…”f ”5w œf»•©  …¤‡¨ ¸ ˜A _FullPath ¹ ˜A _IsDirectory º ˜A _NavSession » ˜A _Log ¼ ˜A _Exists ½ ˜A _NumHeÿÿIeþÿJeüÿEedeùÿeeýÿe eùÿe ‡?ee-ÿeeþÿe‡eeþÿee ‡ee -\3eepeþÿe-ÿeeþÿe ‡e‡eeþÿee ‡"ee?ee ee-Revu_PathExistse-ÿe e(- @IsDirectory=%1,@FullPath=%2andeùÿeþÿeeeüÿ e eeüÿ e e  ÿÿÿÿeeeüÿ e eeûÿ e eeûÿ e eeûÿ e e  ÿÿÿÿeüÿeeûÿ e e ÿÿÿÿe‹eeûÿ e e  ÿÿÿÿe-Revu_PathExistseeûÿ e e  ÿÿÿÿeþÿeeûÿ e e ÿÿÿÿe -%1ee-EXISTS=TRUE*tseeúÿe…eûÿ e e?eeÿÿeúÿ?eee{e4l(dh€(,,<,H,,peeùÿ?eLeZeedereeýÿrehereeùÿ?eLeZereXelanguage independentheledereƒeeTeeþÿVeƒeeTeeþÿUeVeLeUere3erePe\reheeeþÿ?eƒeeTeeþÿVeLeVeƒeeTeeþÿUe"eLeUeZeXeRemove trailing '\'eeeeWeeTePeRevu_PathExistseqeVeƒe e TePe$@IsDirectory=%1,@FullPath=%2andVeeùÿVeeþÿUeUeZeeeüÿWee ZeeeüÿWee Teƒeüÿe VeeUeZeeeüÿWee ZeeeeûÿWee ZeeeûÿWee ZeeeûÿWee Teƒeûÿe VereeüÿWeeüÿUeZeeeûÿWee Teƒeûÿ e VereeûÿWeeûÿ ReQe ûÿ UeZereXe InfoeeûÿWee Teƒeûÿe VePeRevu_PathExistsUeZeeeûÿWee Teƒeûÿe VeeþÿUeZeeeûÿWee Teƒeûÿ e VePe%1eVePeEXISTS=TRUE*tsUeZeeeeúÿ?eeûÿWee ZeeDeTeeúÿUeZeeGeÜh-eXf ”5w `f»•© d…h‡l º ˜A _NavSession » ˜A _Log ¼ ˜A _Exists ½ ˜A _NumHeÿÿJeþÿEe°e ee-Revu_GetDriveListule -evueeþÿ e eeþÿ e e  ÿÿÿÿeeeþÿ e eeýÿ e eeýÿ e eeýÿ e e  ÿÿÿÿeþÿeeýÿ e e ÿÿÿÿe‹eeýÿ e e  ÿÿÿÿe-Revu_GetDriveListulee…eýÿ e ee$eÿÿeýÿ ?eee{e 4(,,@peeWeeTePeRevu_GetDriveListulVePeevuUeZeeeþÿWee ZeeeþÿWee Teƒeþÿe VeeUeZeeeþÿWee ZeeeeýÿWee ZeeeýÿWee ZeeeýÿWee Teƒeýÿe VereeþÿWeeþÿUeZeeeýÿWee Teƒeýÿ e VereeýÿWeeýÿ ReQe ýÿ UeZereXe InfoeeýÿWee Teƒeýÿe VePeRevu_GetDriveListulUeZeeedereeýÿWee rehereDeTeeýÿWeeýÿ UeZeeGeÈT-û\f ”5w df»•© h…l ¸ ˜A _FullPath º ˜A _NavSession » ˜A _Log ¼ ˜A _ExistsIeÿÿJeþÿEexe ee-Revu_CreateFolderule-ÿe e-@FullPath=%1ldeeÿÿeee{epeeWeeTePeRevu_CreateFolderulVeƒe e TePe@FullPath=%1ldeVeeÿÿUeUeZeeGe(|-û„…f ”5w ˜f»•© œ… ‡¤ ¸ ˜A _FullPath ¹ ˜A _IsDirectory º ˜A _NavSession » ˜A _Log ¼ ˜A _Exists ½ ˜A _NumIeÿÿJeýÿEeÀeúÿeeþÿe eúÿe ‡?ee ee-Revu_DeletePathe-ÿe e(- @FullPath=%1,@IsDirectory=%2andeÿÿeúÿeee{e L(peeúÿ?eLeZeedereeþÿrehereeúÿ?eLeZereXelanguage independentPateeWeeTePeRevu_DeletePathVeƒe e TePe$@FullPath=%1,@IsDirectory=%2andVeeÿÿVeeúÿUeUeZeeEeHee eee- C:\ACAfietsee{e  oe OnRuneTee UeZeeXe,MESSAGE ( RetVersion );meeTePeC:\ACAfietsUeZee d:ü¨Revu_CheckStatus Co дT Revu8¯‹8 d$  dgx $ddddddËfÌfÍfÿɚ;g<(ef „ f¬•©€fˆf,f,f f f f g ¸ ˜A RevuSetup ʚ; TxtDbLocked;f` *Database is locked by Revu-conversion,Database is geblokkeerd door Revu-conversie ʚ; CloseClient $Lw¸^¿ÍÀÔKšfûZq¯ÐH†‹Qxx¦F€¸Æ9Ñȉ $ˆfpÃ?fʚ; ¸ ˜A SetApplicationPath3f ¹ ˜A CheckConversionMode3f SYSTEM DIALOG DATABASE CODEUNIT Tdf d¬•©fTdf $Tdf $df df dg $Lw¸^¿ÍÀÔKšfûZq¯ÐH†‹Qxx¦F€¸Æ9Ñȉ $Lüy Ü5ùðЭ¹ÀOՊ  ôyØy˜á+èy?CK $ÕMÂr ׋CŠB˜BKˆ¯¸fµÿÿÿfÜÿÿÿf·ÿÿÿf¸ÿÿÿf¹ÿÿÿfûÿÿÿfÏÿÿÿ ISSERVICETIER COMMANDLINE APPLICATIONPATH CLEARLASTERROR GETLASTERRORTEXT COPYSTR CREATE¨ -u-vf÷ÿÿÿ‹w‡x-z-{-|-} fÿÿÿÿfúÿÿÿ CommandLine ApplicationPath MODIFY ConversionMode ConversionStatus LastErrorText1 LastErrorText2 LastErrorText3 LastErrorText4 GET INSERTL0f Suicide$ ‚$$ ,fÿÿÿÿ ERROR,füÿÿ COMMIT( fÿÿÿÿ RUN°ÿÿÿÿ¬Ð eEee…ee/ee,ee-ÿee?eee-ÿee?ee eee{e,$$pedere/ereƒeereheeqeeWeere?ereƒeeZeeeeWeere?ereƒeeZeqeXe8hiermee kan ik ophalen met welke navision versie deeWeeZeeGeÜ,f¤-¨ º ˜A _WindowsShell $Lüy Ü5ùðЭ¹ÀOՊ  ôyØy˜á+èy?CK $ÕMÂr ׋CŠB˜BKˆ¯¸ $DA¾Ó¢‹KÓP?f¼ ˜A ʚ; _ErrTxtJeÿÿEee6eeøee ‹3ee eeeee ‹?eee ‡ÿÿÿÿ?eee-Uncatched error?eee -ast?eee -ast?ee e -ast?ee eeeeeee…ee ‡6ü¨ee4eee eeeTeþÿe-ÿee?eee-ÿeeþÿe ‡e ‡úe?eee-ÿeeþÿe ‡ûe ‡úe?eee-ÿeeþÿe ‡õe ‡úe?ee e-ÿeeþÿe ‡ïe ‡úe?ee eeeeeeee eee{eP$ $, ,DDDDpeeXe$UnLocked,DbLocked,RetConversionedereeWeere2ereeWeeReQe reheqeXedoor REVU gezeteqe]eeqedereeWeere3ereeWeeReQe reheqeXe4bezig met de wijzigingen in SQL: GEEN TOEGANGieeqe]eeqeƒeeTeeUeZeeqebeZeeqeXe,Dan is ie dus in RetConversion-modus TOeqeXeDMeteen weer locken. Revu_Installer zet modus weer op UnLockedeqeeWee?eeWeeReQe ZeeqeeWee?ere"eLeZeqeXe@Uncatched error; voorschot nemen op niet-afgevangen foutckeeqeeWee?ePeUncatched errorZeeqeeWee?ePeastZeeqeeWee?ePeastZeeqeeWee ?ePeastZeeqeeWeeZeeqeƒeeZeeqeƒeeZeeqedereeWeeTeLe6ü¨Uereheeqe]eeqeeWee?eLeZeeqeeWeeZeeqebeeqeaeeqe]eeqeeþÿ?eƒeeZeeqeeWee?eƒeeTeeþÿVeLeVeLeúUeZeeqeeWee?eƒeeTeeþÿVeLeûVeLeúUeZeeqeeWee?eƒeeTeeþÿVeLeõVeLeúUeZeeqeeWee ?eƒeeTeeþÿVeLeïVeLeúUeZeeqeeWeeZeeqebeZeeqeƒeeZeeqeƒeeTeeUeZeeqeeWeeZeqeXeafsluiten navisionoeqebeZeeEepe…e e e/ee e e eeeeee{e4oe OnRundere/ereeWee rehereeqeeWee ZeeeZeeeZeet1–©RetExecute SQL ©n ¢XÓ Revu, Redac, Retail2.50.07l÷løk d$  dgx $ddddddËfÌfÍfÿɚ;g<(/ef //¨ 3fX$¨f+–© f0–©‡‡¨f$-… …-H‹|fpftfXfHf ‡¨f-<‹0f(ff(f(f(f,f,f,f,f0f,f,f$f(f$f$f(f$f,f(f$f0f$f,f(f f f f f Ä ˜A RetSQLSetup º ˜A gExecSql Å ˜A SqlInterface ¼ ˜A gNumRecs » ˜A gTestInt ½ ˜A TxtErrUseQryType;f€ 5Querytype [%1] cannot be used here. %2 is allowed.@Querytype [%1] kan hier niet worden gebruikt. %2 is toegestaan. É ˜A gTestBigInt ¸ ˜A Query8f ¹ ˜A gWithInfo Ê ˜A gInstallTrigger À ˜A gTestText Á ˜A LogLeveld(( NoneOnError Full  ˜A TxtErrProcNameLen;fT %Procedurename too long(%1) max=250&Procedurename te lang(%1) max=250 ¾ ˜A TxtErrFileCreate;fH Could not create file %1."Kan bestand %1 niet aanmaken. Ì ˜A TxtErrShare;fT %Common ACA-share %1 does not exist$Standaard ACA-share %1 bestaat niet ¿ ˜A TxtCmdFailed;f4 Command failed: %1Commando fout: %1 à ˜A TxtCmdSyntaxErr;f$ Syntax error in Command: %1 Æ ˜A GlobalSession Ç ˜A TxtErrorSqlIf;f„ 8Error running SQL interface for code %1 in session %2. @Fout tijdens uitvoeren SQL Interface voor code %1 in sessie %2. È ˜A GlobalCode Ë ˜A WindowStyled( hide show º ˜A InstallExecSqlTrigger3f ½ ˜A GetVersionInfo3f » ˜A Wr3f ¸ ˜A ExecSqlCommand3f ¼ ˜A ExecProcedure3f ¾ ˜A Select1FieldINT3f Æ ˜A Select1FieldBigINT3f ¿ ˜A Select1FieldTEXT3f À ˜A Select1FieldCODE3f   ˜A Select1FieldDECIMAL3f  à ˜A Select1FieldDATETIME3f  Á ˜A Select1FieldByRec3f  Å ˜A CheckTriggerVersion3f  Ä ˜A GetDBName3f ¹ ˜A GetServerName3f É ˜A GetSession3f È ˜A GetHostName3f Ï ˜A GetMachineName3f Ð ˜A PathExists3f Ê ˜A ExecSqlInterface3f Ñ ˜A ExecSqlQuery3f Î ˜A RunShellQry3f Ë ˜A OpenNewSessionStream3f Ì ˜A GetTempDir3f Ç ˜A ExecuteSQLScript3f Í ˜A GetTempFileName3f DATABASE SYSTEM DIALOG FILE Ìdf dX$¨fd+–©fd0–©fdfdf d”5wfdf d„dyd0”5wfd/”5wfd ”5wfTdf $d”5wfTdf $Tdf $df Tdf $Tdf $Tdf $Tdf $Tdf $d„ $L&WN Ü5ùðЭ¹ÀOՊ aä`(a+ô`ïCN $ÑÏÕMÂr ׋CŠB˜BKˆ¯¸ $L,z0( Bçω= ÉB( $zzÈá+z?CK $þC “ðω@ ÉB( $L&WN Ü5ùðЭ¹ÀOՊ aä`(a+ô`ïCN $ÑÏÕMÂr ׋CŠB˜BKˆ¯¸ $L&WN Ü5ùðЭ¹ÀOՊ aä`(a+ô`ïCN $ÑÏÕMÂr ׋CŠB˜BKˆ¯¸ $L&WN Ü5ùðЭ¹ÀOՊ aä`(a+ô`ïCN $ÑÏÕMÂr ׋CŠB˜BKˆ¯¸ $L,z0( Bçω= ÉB( $zzÈá+z?CK $þC “ðω@ ÉB( $L0( Bçω= ÉB(¢õÃÇ£ˆÐ«Ë ÉÿÀ $L&WN Ü5ùðЭ¹ÀOՊ aä`(a+ô`ïCN $ÑÏÕMÂr ׋CŠB˜BKˆ¯¸„ fýÿÿÿfÖÿÿÿfûÿÿÿf¿ÿÿÿfÏÿÿÿfÕÿÿÿfÐÿÿÿfôÿÿÿf÷ÿÿÿfµÿÿÿf¶ÿÿÿ DELCHR FORMAT COPYSTR CURRENTDATETIME CREATE CLEAR SLEEP STRPOS STRLEN ISSERVICETIER TEMPORARYPATH¤ fÿÿÿÿ …-- GET SQL Integrated Security SQL Userid SQL Password|‹-‡-‰2- - - --‹f÷ÿÿÿfþÿÿÿ‡(fÛÿÿÿfëÿÿÿføûÿÿ-’fúÿÿÿfüÿÿÿ‹2 ResultDataType ResultFieldName ResultINT ResultBigINT ResultTEXT ResultCODE ResultDECIMAL LineIn1 LineIn2 LineIn3 LineIn4 LineIn5 SessionNo QueryType MODIFY FIND RowCount RESET SETRANGE FINDFIRST VersionInfo ResultDATETIME INSERT INIT LogLevelÜfÛÿÿÿfëÿÿÿ‡-føÿÿÿfüÿÿÿ‹‡-fúÿÿÿføûÿÿ…f÷ÿÿÿfÎÿÿÿ RESET SETRANGE Session Code DELETEALL INIT Type LineNo Notes INSERT FINDFIRST IsError MODIFY TABLENAMEfôÿÿÿfõÿÿÿfþÿÿÿfñÿÿÿfÿÿÿÿfòÿÿÿfýÿÿÿ TEXTMODE WRITEMODE CREATE CREATEOUTSTREAM OPEN CREATEINSTREAM CLOSE,füÿÿ COMMIT4 fÛÿÿÿfëÿÿÿ ‡‹føûÿÿ‡. . - RESET SETRANGE ID Type FINDFIRST BLOB Size Date Time NameLfÿÿÿÿfþÿÿÿ ERROR MESSAGE ¬yyyyy      fëÿÿÿ…føûÿÿ- SETRANGE My Database FINDFIRST Database Nameœfëÿÿÿ…føûÿÿ- SETRANGE My Server FINDFIRST Server NameÄfëÿÿÿ…føûÿÿ‡- SETRANGE My Session FINDFIRST Connection ID Host Name  °Df!'@f ' FolderExists$ …-$$ FileExists$ …-$$ Lfüÿÿfüÿÿ EXISTS ERASE lPfè Run$0y- y y$$´Df!'Df` FolderExists$ …-$$ CreateFolder$f-$$x\f  $L0( Bçω= ÉB(¢õÃÇ£ˆÐ«Ë ÉÿÀlPfè Run$0y- y y$$L fþÿÿÿfýÿÿÿ EOS READTEXT(Hÿÿÿÿ cœhPàììììà°4萌”˜¤#Ü $t˜äeGe(|-„-e‡”fœ- ‡¤ ½ ˜A _ExecSQLTbl À ˜A _VersionInfo ¾ ˜A _Dim à ˜A _SrcFile º ˜A _Code » ˜A _LNoJeÿÿEe(e e?ee/eeÿÿe-eeþÿe?eeûÿe-TRIG1 a?eeeûÿeúÿe$- DECLARE @Trigger SYSNAME seeeûÿeúÿe<-44 DECLARE TriggerCur CURSOR LOCAL FAST_FORWARD FOR /eeeûÿeúÿeT-LL SELECT s.name FROM sys.triggers s JOIN sysobjects o ON o.id = s.parent_id eeeûÿeúÿe- WHERE O.NAME = 'M eÿÿ'ee -'xe'eeeeûÿeúÿe- OPEN TriggerCurM eeeûÿeúÿe- WHILE 1 = 1Cureeeûÿeúÿe- BEGIN1eeeûÿeúÿe4-,, FETCH NEXT FROM TriggerCur INTO @Triggersoeeeûÿeúÿe(- IF @@FETCH_STATUS <> 0 BREAKeeeûÿeúÿe8-00 EXECUTE('DROP TRIGGER [' + @Trigger + ']')eceeeûÿeúÿe0-(( print 'Trigger dropped: ' + @Triggereeeûÿeúÿe- ENDnteeeûÿeúÿe- CLOSE TriggerCurdreeeûÿeúÿe - DEALLOCATE TriggerCureeeûÿe- QRYLog1a_LN?eeeûÿeúÿe\-TT IF EXISTS (SELECT 1 FROM SYSOBJECTS WHERE TYPE='P' AND NAME ='RetExecQryLog')= 'eeeûÿeúÿe$- DROP PROC RetExecQryLog eeûÿe- QRYLog1b_LN?eeeûÿeúÿe(- CREATE PROC RetExecQryLogieteeeûÿeúÿel-dd @SessionNo INT, @Path VARCHAR(1000), @MessLvl INT, @LogLvl INT, @Init CHAR, @Txt VARCHAR(4000)'eeeûÿeúÿe- ASsseeeûÿeúÿe`-XX DECLARE @cmd VARCHAR(8000), @Out VARCHAR(2), @Xerr INT, @ProcName SYSNAME,@Dq CHARRCeeeûÿeúÿe8-00 IF @LogLvl=0 RETURN --//None,OnError,Full), eeeûÿeúÿe- SET @Dq=0x22eeeûÿeúÿe0-(( SET @ProcName=OBJECT_NAME(@@PROCID),eeeûÿeúÿe8-00 IF @LogLvl=2 OR (@LogLvl=1 AND @MessLvl=2), eeeûÿeúÿe- BEGINgLveeeûÿeúÿe`-XX IF EXISTS(SELECT 1 FROM sys.configurations WHERE Name='xp_cmdshell' and value=1)RCeeeûÿeúÿe- BEGINSeeeûÿeúÿeX-PP SET @Path=@Dq + @Path + '\RetExecSql' + LTRIM(@SessionNo) + @Dq + '.log'eeeûÿeúÿe@-88 IF @Init='T' SET @Out='>' ELSE SET @Out='>>' @Seeeeûÿeúÿe$- WHILE LEN(@Txt) > 0teeeûÿeúÿe- BEGINLENeeeûÿeúÿeT-LL SELECT @Cmd='ECHO ' + SUBSTRING(@Txt,1,80) + ' ' + @Out + @Path'.leeeûÿeúÿe8-00 EXECUTE @Xerr=MASTER..XP_CmdShell @Cmdeeeûÿeúÿe4-,, SET @Txt=SUBSTRING(@Txt,81,8000)ROeeeûÿeúÿe - SET @Out='>>'Reeeûÿeúÿe- ENDTeeeûÿeúÿe- ENDDTeeeûÿeúÿe- ENDeeeûÿe-TRIG2de?eeeûÿeúÿe,-$$ CREATE TRIGGER RetExecSqlINS ON [eÿÿ'ee -]xe'eeeeûÿeúÿe- INSTEAD OF INSERTEeeeûÿeúÿe - ASeeeûÿeúÿe- SET NOCOUNT ONeeeûÿeúÿe$- DECLARE @SessionNo INT ieeeûÿeúÿe- ,@Xerr INT eeeûÿeúÿe$- ,@ErrTxt VARCHAR(250)eeeûÿeúÿe$- ,@EmptyC VARCHAR(1))eeeûÿeúÿe - ,@EmptyDT DATETIMEeeeûÿeúÿe(- ,@EmptyDEC DECIMAL(10,4)ieleeeûÿeúÿe- BEGIN TRY eeeûÿeúÿe|-tt SELECT @SessionNo = SessionNo, @EmptyC=ResultTEXT,@EmptyDEC=ResultDECIMAL,@EmptyDT=ResultDATETIME FROM INSERTEDeeeûÿeúÿe- INSERT [Seeÿÿ'eeT-LL] ([SessionNo],[VersionInfo],[QueryType],[ResultFieldName],[ResultDataType]'eeeeûÿeúÿeT-LL ,[ResultDataTypeText],[LineIn1],[LineIn2],[LineIn3],[LineIn4],[LineIn5]e]eeeûÿeúÿe4-,, ,[ResultINT],[ResultTEXT],[ResultDATETIME]eeeûÿeúÿeP-HH ,[ResultCODE],[ResultDECIMAL],[RowCount],[LogLevel],[ResultBigInt]) 5]eeeûÿeúÿe$- SELECT @SessionNo,ISNULL('eþÿ'ee(- ','empty') ,0,@EmptyC,0,@EmptyC'eeeeûÿeúÿe4-,, ,@EmptyC,@EmptyC,@EmptyC,@EmptyC,@EmptyC[Leeeûÿeúÿe - ,0,@EmptyC,@EmptyDTptyeeeûÿeúÿe$- ,@EmptyC,@EmptyDEC,0,0,0@Eeeeûÿeúÿe- END TRY @Eeeeûÿeúÿe- BEGIN CATCH tyeeeûÿeúÿeD-<< SET @ErrTxt = 'In [' + LEFT(ISNULL(ERROR_PROCEDURE(),'lteÿÿ'ee- ') + ']: ' 'eeeeûÿeúÿe$- + ERROR_MESSAGE() ,250) eeeûÿeúÿe(- SET @Xerr=ERROR_NUMBER() T(Ieeeûÿeúÿe- END CATCH eeûÿe-TRIG3de?eeeûÿeúÿe,-$$ CREATE TRIGGER RetExecSqlUpd ON [eÿÿ'ee -]xe'eeeeûÿeúÿe- AFTER UPDATER eeeûÿeúÿe - ASeeeûÿeúÿe- SET NOCOUNT ONeeeûÿeúÿe$- DECLARE @Qry VARCHAR(8000)eeeûÿeúÿe- ,@DTp VARCHAR(30)Aeeeûÿeúÿe- ,@Xerr INTeeeûÿeúÿe- ,@LLvl INTeeeûÿeúÿe- ,@SNo INTeeeûÿeúÿe - ,@ErrTxt VARCHAR(8000)eeeûÿeúÿe- ,@QTp INTAeeeûÿeúÿe- ,@Sq CHARAeeeûÿeúÿe- ,@DSq CHAR(2)Aeeeûÿeúÿe - ,@RFld VARCHAR(100)0)eeeûÿeúÿe - ,@Path VARCHAR(500)0)eeeûÿeúÿe- SET @Sq=0x27R(eeeûÿeúÿe- SET @DSq=0x27+0x27eeeûÿeúÿe@-88 SELECT @Qry=LineIn1+LineIn2+LineIn3+LineIn4+LineIn5ineeeeûÿeúÿe$- ,@DTp=ResultDataTypeTextn2eeeûÿeúÿe- ,@QTp=QueryTypeTypeeeûÿeúÿe`-XX ,@RFld=CASE WHEN CHARINDEX('[',ResultFieldName)=0 THEN '[' + ResultFieldName + ']' ');eeeûÿeúÿe$- ELSE ResultFieldName END(eeeûÿeúÿe- ,@SNo=SessionNodNaeeeûÿeúÿe- ,@LLvl=LogLeveldNaeeeûÿeúÿe- ,@Path='c:\'eleeeûÿeúÿe- FROM INSERTED dNaeeeûÿeúÿe- BEGIN TRY ED eeeûÿeúÿe- IF @QTp<>0 eeeûÿeúÿe- BEGINomeeeûÿeúÿe- IF @QTp=2eeeûÿeúÿe- BEGINeeeeûÿeúÿe - PRINT (@Qry)eeeûÿeúÿe - EXECUTE(@Qry)eeeûÿeúÿe- ENDCUTeeeûÿeúÿe- ELSEDeeeûÿeúÿe- BEGINeeeûÿeúÿe<-44 IF @DTp='CODE' SET @RFld = UPPER(@RFld )Peeeûÿeúÿe$- SET @Qry = 'UPDATE [eÿÿ'ee- ] SET ' 'eeeeûÿeúÿeL-DD + CASE WHEN @DTp='INT' THEN ' ResultINT = ' + @RFld, 'eeeûÿeúÿeL-DD WHEN @DTp='DECIMAL' THEN ' ResultDECIMAL = ' + @RFld, 'eeeûÿeúÿeL-DD WHEN @DTp='TEXT' THEN ' ResultText = ' + @RFld 'eeeûÿeúÿeL-DD WHEN @DTp='CODE' THEN ' ResultCODE = ' + @RFld 'eeeûÿeúÿeL-DD WHEN @DTp='DATETIME' THEN ' ResultDATETIME = ' + @RFld 'eeeûÿeúÿeL-DD WHEN @DTp='BIGINT' THEN ' ResultBIGINT = ' + @RFld 'eeeûÿeúÿe- END @eeeûÿeúÿe- + @Qry @eeeûÿeúÿe8-00 +' WHERE SessionNo = ' + LTRIM(@SNo) IGIeeeûÿeúÿe`-XX IF EXISTS (SELECT 1 FROM SYSOBJECTS WHERE TYPE='P' AND NAME = 'RetExecQryLog')o=eeeûÿeúÿeH-@@ EXEC RetExecQryLog @SNo, @Path, 1, @LLvl, 'T', @Qry NAeeeûÿeúÿe - PRINT (@Qry)eeeûÿeúÿe - EXECUTE(@Qry)eeeeûÿeúÿe- END Eeeeûÿeúÿe- UPDATE [,' eÿÿ'ee<-44] set [RowCount] = @@RowCount WHERE SessionNo=@SNo 'eeeeûÿeúÿe- END wCoeeeûÿeúÿe- END TRY = @eeeûÿeúÿe- BEGIN CATCH@eeeûÿeúÿe`-XX IF EXISTS (SELECT 1 FROM SYSOBJECTS WHERE TYPE='P' AND NAME = 'RetExecQryLog')o=eeeûÿeúÿe- BEGINSTSeeeûÿeúÿeH-@@ EXEC RetExecQryLog @SNo, @Path, 2, @LLvl, 'F', @Qry NAeeeûÿeúÿeH-@@ SET @ErrTxt = 'In [' + LEFT(ISNULL(ERROR_PROCEDURE(),'eÿÿ'ee- ') + ']: ' 'eeeeûÿeúÿe@-88 + ERROR_MESSAGE() + '(' + @Qry + ')' ,250) CEDeeeûÿeúÿe,-$$ SET @Xerr=ERROR_NUMBER() @eeeûÿeúÿeH-@@ EXEC RetExecQryLog @SNo, @Path, 2, @LLvl, 'F', @ErrTxteeeûÿeúÿe- ENDEeeeûÿeúÿe- END CATCH ee/ee(e-TRIG1lIeeee(e- QRYLog1atereeee(e- QRYLog1btereeee(e-TRIG2lIeeee(e-TRIG3lIeeee ee{el±H,D\tX<80THXP0<@ |D HŒ0€X8PX4€4x`D8tXT@440h<,8D<DD@H4œ˜tTp|T@D48ˆDH4h8,8D<444@448@@8<`D<€D<<8<88488@@844\hllllll88X€h@@4„4<<€8hŒ`Lh4<(,,((pee ?eeZeeXehInstalls INSERT and UPDATE triggers on table [_ExecSQLTbl] _ExecSQLTbl currently = 'RetExecute SQL'eƒe/eZereXeRelease locksT eeeÿÿ?eeTeeþÿUeZereXe also returns the tablenameteeXeLOpenNewSessionStream(_SrcFile,_OutStrm,TRUE,TRUE); //Textmode,writemodeeeXe0Delete all existing triggers for this tableeeûÿ?ePe TRIG1 aZeeeTeeûÿVeeúÿVePe DECLARE @Trigger SYSNAME sUeZeeeTeeûÿVeeúÿVePe8 DECLARE TriggerCur CURSOR LOCAL FAST_FORWARD FOR /UeZeeeTeeûÿVeeúÿVePeP SELECT s.name FROM sys.triggers s JOIN sysobjects o ON o.id = s.parent_id UeZeeeTeeûÿVeeúÿVePe WHERE O.NAME = 'M !ereeÿÿre!erePe'xeUeZeeeTeeûÿVeeúÿVePe OPEN TriggerCurM UeZeeeTeeûÿVeeúÿVePe WHILE 1 = 1CurUeZeeeTeeûÿVeeúÿVePe BEGIN1UeZeeeTeeûÿVeeúÿVePe0 FETCH NEXT FROM TriggerCur INTO @TriggersoUeZeeeTeeûÿVeeúÿVePe$ IF @@FETCH_STATUS <> 0 BREAKUeZeeeTeeûÿVeeúÿVePe4 EXECUTE('DROP TRIGGER [' + @Trigger + ']')ecUeZeeeTeeûÿVeeúÿVePe, print 'Trigger dropped: ' + @TriggerUeZeeeeTeeûÿVeeúÿVePe ENDntUeZeeeTeeûÿVeeúÿVePe CLOSE TriggerCurdrUeZeeeTeeûÿVeeúÿVePe DEALLOCATE TriggerCureUeZeeXe0Wr(_Code,_LNo,'GO'); go mag niet icm SQLCMDeeeûÿ?ePeQRYLog1a_LNZeeeTeeûÿVeeúÿVePeX IF EXISTS (SELECT 1 FROM SYSOBJECTS WHERE TYPE='P' AND NAME ='RetExecQryLog')= 'reUeZeeeTeeûÿVeeúÿVePe DROP PROC RetExecQryLog reUeZeeXe0Wr(_Code,_LNo,'GO'); go mag niet icm SQLCMDeeeûÿ?ePeQRYLog1b_LNZeeeTeeûÿVeeúÿVePe$ CREATE PROC RetExecQryLogietUeZeeeTeeûÿVeeúÿVePeh @SessionNo INT, @Path VARCHAR(1000), @MessLvl INT, @LogLvl INT, @Init CHAR, @Txt VARCHAR(4000)'UeZeeeTeeûÿVeeúÿVePe ASssUeZeeeTeeûÿVeeúÿVePe\ DECLARE @cmd VARCHAR(8000), @Out VARCHAR(2), @Xerr INT, @ProcName SYSNAME,@Dq CHARRCUeZeeeTeeûÿVeeúÿVePe4 IF @LogLvl=0 RETURN --//None,OnError,Full), UeZeeeTeeûÿVeeúÿVePe SET @Dq=0x22UeZereXedoublequote "2eeTeeûÿVeeúÿVePe, SET @ProcName=OBJECT_NAME(@@PROCID),UeZeeeTeeûÿVeeúÿVePe4 IF @LogLvl=2 OR (@LogLvl=1 AND @MessLvl=2), UeZeeeTeeûÿVeeúÿVePe BEGINgLvUeZeeeTeeûÿVeeúÿVePe\ IF EXISTS(SELECT 1 FROM sys.configurations WHERE Name='xp_cmdshell' and value=1)RCUeZeeeTeeûÿVeeúÿVePe BEGINSUeZeeeTeeûÿVeeúÿVePeT SET @Path=@Dq + @Path + '\RetExecSql' + LTRIM(@SessionNo) + @Dq + '.log'UeZeeeTeeûÿVeeúÿVePe< IF @Init='T' SET @Out='>' ELSE SET @Out='>>' @SeUeZeeeTeeûÿVeeúÿVePe WHILE LEN(@Txt) > 0tUeZeeeTeeûÿVeeúÿVePe BEGINLENUeZeeeTeeûÿVeeúÿVePeP SELECT @Cmd='ECHO ' + SUBSTRING(@Txt,1,80) + ' ' + @Out + @Path'.lUeZeeeTeeûÿVeeúÿVePe4 EXECUTE @Xerr=MASTER..XP_CmdShell @CmdUeZeeXehWr(_Code,_LNo,' IF @Xerr<>0 RAISERROR(''Error %d occurred in %s'',16,1,@Xerr, @ProcName)');eeTeeûÿVeeúÿVePe0 SET @Txt=SUBSTRING(@Txt,81,8000)ROUeZeeeTeeûÿVeeúÿVePe SET @Out='>>'RUeZeeeTeeûÿVeeúÿVePe ENDTUeZeeeTeeûÿVeeúÿVePe ENDDTUeZeeXeTWr(_Code,_LNo,' ELSE RAISERROR(''XP_CMDSHELL Permission not set'',16,1)');@eeTeeûÿVeeúÿVePe ENDeUeZeeXe0Wr(_Code,_LNo,'GO'); go mag niet icm SQLCMDeeeûÿ?ePe TRIG2deZeeeTeeûÿVeeúÿVePe( CREATE TRIGGER RetExecSqlINS ON [re!ereeÿÿre!erePe]xeUeZeeeTeeûÿVeeúÿVePe INSTEAD OF INSERTEUeZeeeTeeûÿVeeúÿVePe ASUeZeeXeLmaakt een record aan met initiele waarden. Er is 1 record per sessie.16eeTeeûÿVeeúÿVePe SET NOCOUNT ONUeZeeeTeeûÿVeeúÿVePe DECLARE @SessionNo INT iUeZeeeTeeûÿVeeúÿVePe ,@Xerr INT UeZeeeTeeûÿVeeúÿVePe ,@ErrTxt VARCHAR(250)UeZeeeTeeûÿVeeúÿVePe ,@EmptyC VARCHAR(1))UeZeeeTeeûÿVeeúÿVePe ,@EmptyDT DATETIMEUeZeeeTeeûÿVeeúÿVePe$ ,@EmptyDEC DECIMAL(10,4)ielUeZeeeTeeûÿVeeúÿVePe BEGIN TRY UeZeeeTeeûÿVeeúÿVeeqePex SELECT @SessionNo = SessionNo, @EmptyC=ResultTEXT,@EmptyDEC=ResultDECIMAL,@EmptyDT=ResultDATETIME FROM INSERTEDUeZeeeTeeûÿVeeúÿVePe INSERT [Sere!ereeÿÿre!erePeP] ([SessionNo],[VersionInfo],[QueryType],[ResultFieldName],[ResultDataType]UeZeeeTeeûÿVeeúÿVePeP ,[ResultDataTypeText],[LineIn1],[LineIn2],[LineIn3],[LineIn4],[LineIn5]e]UeZeeeTeeûÿVeeúÿVePe0 ,[ResultINT],[ResultTEXT],[ResultDATETIME]UeZeeeTeeûÿVeeúÿVePeL ,[ResultCODE],[ResultDECIMAL],[RowCount],[LogLevel],[ResultBigInt]) 5]UeZeeeTeeûÿVeeúÿVePe SELECT @SessionNo,ISNULL('re!ereeþÿre!erePe$','empty') ,0,@EmptyC,0,@EmptyCUeZeeeTeeûÿVeeúÿVePe0 ,@EmptyC,@EmptyC,@EmptyC,@EmptyC,@EmptyC[LUeZeeeTeeûÿVeeúÿVePe ,0,@EmptyC,@EmptyDTptyUeZeeeTeeûÿVeeúÿVePe ,@EmptyC,@EmptyDEC,0,0,0@EUeZeeeTeeûÿVeeúÿVePe END TRY @EUeZeeeTeeûÿVeeúÿVePe BEGIN CATCH tyUeZeeeTeeûÿVeeúÿVePe@ SET @ErrTxt = 'In [' + LEFT(ISNULL(ERROR_PROCEDURE(),'ltre!ereeÿÿre!erePe') + ']: ' UeZeeeTeeûÿVeeúÿVePe + ERROR_MESSAGE() ,250) UeZeeeTeeûÿVeeúÿVePe$ SET @Xerr=ERROR_NUMBER() T(IUeZeeXehWr(_Code,_LNo,' RAISERROR(''>>>>SQL-Error %d in INSERT-trigger: %s<<<<'',16,1,@xerr,@ErrTxt) ');MeeTeeûÿVeeúÿVePe END CATCH UeZeeXe0Wr(_Code,_LNo,'GO'); go mag niet icm SQLCMDeeeûÿ?ePe TRIG3deZeeeTeeûÿVeeúÿVePe( CREATE TRIGGER RetExecSqlUpd ON [re!ereeÿÿre!erePe]xeUeZeeeTeeûÿVeeúÿVePe AFTER UPDATER UeZeeeTeeûÿVeeúÿVePe ASUeZeeeTeeûÿVeeúÿVePe SET NOCOUNT ONUeZeeeTeeûÿVeeúÿVePe DECLARE @Qry VARCHAR(8000)UeZeeeTeeûÿVeeúÿVePe ,@DTp VARCHAR(30)AUeZereXeDataTypeRCHeeTeeûÿVeeúÿVePe ,@Xerr INTUeZeeeTeeûÿVeeúÿVePe ,@LLvl INTUeZereXeLogLevelNTeeTeeûÿVeeúÿVePe ,@SNo INTUeZereXeSessionNoeeTeeûÿVeeúÿVePe ,@ErrTxt VARCHAR(8000)UeZeeeTeeûÿVeeúÿVePe ,@QTp INTAUeZereXeQueryTypeAeeTeeûÿVeeúÿVePe ,@Sq CHARAUeZereXeSingle QuoteCHAeeTeeûÿVeeúÿVePe ,@DSq CHAR(2)AUeZereXe2 single quoteseeTeeûÿVeeúÿVePe ,@RFld VARCHAR(100)0)UeZeeeTeeûÿVeeúÿVePe ,@Path VARCHAR(500)0)UeZeeeeTeeûÿVeeúÿVePe SET @Sq=0x27R(UeZereXe1 single quote(eeTeeûÿVeeúÿVePe SET @DSq=0x27+0x27UeZereXe2 single quoteseXe`Wr(_Code,_LNo,' SELECT @Qry=REPLACE(LineIn1+LineIn2+LineIn3+LineIn4+LineIn5,@Sq,@DSq)');rTxeeTeeûÿVeeúÿVePe< SELECT @Qry=LineIn1+LineIn2+LineIn3+LineIn4+LineIn5ineUeZeeeTeeûÿVeeúÿVePe ,@DTp=ResultDataTypeTextn2UeZeeeTeeûÿVeeúÿVePe ,@QTp=QueryTypeTypUeZeeeTeeûÿVeeúÿVePe\ ,@RFld=CASE WHEN CHARINDEX('[',ResultFieldName)=0 THEN '[' + ResultFieldName + ']' ');UeZeeeTeeûÿVeeúÿVePe ELSE ResultFieldName END(UeZeeeTeeûÿVeeúÿVePe ,@SNo=SessionNodNaUeZeeeTeeûÿVeeúÿVePe ,@LLvl=LogLeveldNaUeZeeeTeeûÿVeeúÿVePe ,@Path='c:\'elUeZeeeTeeûÿVeeúÿVePe FROM INSERTED dNaUeZeeeTeeûÿVeeúÿVePe BEGIN TRY ED UeZeeeeTeeûÿVeeúÿVePe IF @QTp<>0 UeZeqeXe /*UPDATE comes from INSERT(eeTeeûÿVeeúÿVePe BEGINomUeZeeeTeeûÿVeeúÿVePe IF @QTp=2UeZereXe$/*execute (stored procedure)*/,eeTeeûÿVeeúÿVePe BEGINeUeZeeeTeeûÿVeeúÿVePe PRINT (@Qry)UeZereXe$in case of untrackable errors,eXeXWr(_Code,_LNo,' EXEC RetExecQryLog @SNo, @Path, 1, @LLvl, ''T'', @Qry');' eeTeeûÿVeeúÿVePe EXECUTE(@Qry)UeZeeeTeeûÿVeeúÿVePe ENDCUTUeZeeeTeeûÿVeeúÿVePe ELSEDUeZeeeTeeûÿVeeúÿVePe BEGINUeZeeeTeeûÿVeeúÿVePe8 IF @DTp='CODE' SET @RFld = UPPER(@RFld )PUeZeeeeTeeûÿVeeúÿVePe SET @Qry = 'UPDATE [re!ereeÿÿre!erePe] SET ' UeZeeeTeeûÿVeeúÿVePeH + CASE WHEN @DTp='INT' THEN ' ResultINT = ' + @RFld, 'UeZeeeTeeûÿVeeúÿVePeH WHEN @DTp='DECIMAL' THEN ' ResultDECIMAL = ' + @RFld, 'UeZeeeTeeûÿVeeúÿVePeH WHEN @DTp='TEXT' THEN ' ResultText = ' + @RFld 'UeZeeeTeeûÿVeeúÿVePeH WHEN @DTp='CODE' THEN ' ResultCODE = ' + @RFld 'UeZeeeTeeûÿVeeúÿVePeH WHEN @DTp='DATETIME' THEN ' ResultDATETIME = ' + @RFld 'UeZeeeTeeûÿVeeúÿVePeH WHEN @DTp='BIGINT' THEN ' ResultBIGINT = ' + @RFld 'UeZeeeTeeûÿVeeúÿVePe END @UeZeeeTeeûÿVeeúÿVePe + @Qry @UeZeeeTeeûÿVeeúÿVePe4 +' WHERE SessionNo = ' + LTRIM(@SNo) IGIUeZeeXehWr(_Code,_LNo,' UPDATE [' + _ExecSQLTbl + '] set ResultTEXT =@Qry WHERE SessionNo=@SNo ');;MeeTeeûÿVeeúÿVePe\ IF EXISTS (SELECT 1 FROM SYSOBJECTS WHERE TYPE='P' AND NAME = 'RetExecQryLog')o=UeZeeeTeeûÿVeeúÿVePeD EXEC RetExecQryLog @SNo, @Path, 1, @LLvl, 'T', @Qry NAUeZeeeTeeûÿVeeúÿVePe PRINT (@Qry)UeZereXe$in case of untrackable errorsNoeeTeeûÿVeeúÿVePe EXECUTE(@Qry)eUeZeeeTeeûÿVeeúÿVePe END EUeZeeXe@Wr(_Code,_LNo,' SELECT @RowCount=@@ROWCOUNT ');ryeeTeeûÿVeeúÿVePe UPDATE [,' re!ereeÿÿre!erePe8] set [RowCount] = @@RowCount WHERE SessionNo=@SNo UeZeeeTeeûÿVeeúÿVePe END wCoUeZeeeeTeeûÿVeeúÿVePe END TRY = @UeZeeeTeeûÿVeeúÿVePe BEGIN CATCH@UeZeeeTeeûÿVeeúÿVePe\ IF EXISTS (SELECT 1 FROM SYSOBJECTS WHERE TYPE='P' AND NAME = 'RetExecQryLog')o=UeZeeeTeeûÿVeeúÿVePe BEGINSTSUeZeeeTeeûÿVeeúÿVePeD EXEC RetExecQryLog @SNo, @Path, 2, @LLvl, 'F', @Qry NAUeZeeeTeeûÿVeeúÿVePeD SET @ErrTxt = 'In [' + LEFT(ISNULL(ERROR_PROCEDURE(),'re!ereeÿÿre!erePe') + ']: ' UeZeeeTeeûÿVeeúÿVePe< + ERROR_MESSAGE() + '(' + @Qry + ')' ,250) CEDUeZeeeTeeûÿVeeúÿVePe( SET @Xerr=ERROR_NUMBER() @UeZeeeTeeûÿVeeúÿVePeD EXEC RetExecQryLog @SNo, @Path, 2, @LLvl, 'F', @ErrTxtUeZeeeTeeûÿVeeúÿVePe ENDEUeZeeeXetWr(_Code,_LNo,' IF @LLvl<> 0 RAISERROR(''>>>>SQL-Error %d in UPDATE-trigger, see %s\RetExecSql%d.log'EReXe@ + '<<<<'',16,1,@xerr,@Path,@SNo) ');ErreXetWr(_Code,_LNo,' ELSE raiserror(''>>>>SQL-Error %d in UPDATE-trigger: %s<<<<'',16,1,@xerr,@ErrTxt) ');EReeTeeûÿVeeúÿVePe END CATCH UeZeeXe0Wr(_Code,_LNo,'GO'); go mag niet icm SQLCMDeƒe/eZereXe@!!!!! Anders kan ExecSqlInterface niet uitgevoerd worden inee(TePe TRIG1lIVeeVeeUeZereXeDROP de triggersExeee(TePeQRYLog1aterVeeVeeUeZereXeaanmaken procceee(TePeQRYLog1bterVeeVeeUeZeeee(TePe TRIG2lIVeeVeeUeZeee(TePe TRIG3lIVeeVeeUeZeee ?eeZeeGe@-0-eDf”5wH ¸ ˜A _VersionInfo5f ¹ ˜A _ObjHeÿÿIeþÿJeýÿEeØeþÿe -Ver?eeýÿ eeeýÿ ee ÿÿÿÿe ‡1–©eeýÿ ee ÿÿÿÿe ‹eeýÿ eeeþÿe-ÿe0e-ÿe0eýÿee -_OB'ee-ÿe0eýÿe'ee-ÿe0eýÿe'ee -=mee --:ee)eeýÿ eeeýÿ ee ÿÿÿÿe ‡+–©eeýÿ ee ÿÿÿÿe ‹eeýÿ eeeþÿe -_ere-ÿe0e-ÿe0eýÿee -_OB'ee-ÿe0eýÿe'ee-ÿe0eýÿe'ee -=mee --:ee'e)eeÿÿeýÿ ?eee{e È00´00Ä\peeþÿ?ePeVerZeeeýÿWeeZeeeýÿWeeTeƒeýÿeVeLe1–©UeZereXe THIS CUeeýÿWeeTeƒeýÿeVeeýÿWeeýÿReQe ýÿUeZeeeýÿWeeZeeeþÿ)eƒe0eTeƒe0eTeeýÿWeeýÿUere!ePe_OBre!eqeƒe0eTeeýÿWeeýÿUere!ereƒe0eTeeýÿWeeýÿUeVePe=meVePe-:eUeZeeeýÿWeeZeeeýÿWeeTeƒeýÿeVeLe+–©UeZeeeýÿWeeTeƒeýÿeVeeýÿWeeýÿReQe ýÿUeZeeeýÿWeeZeeeþÿ)ePe_erre!ereƒe0eTeƒe0eTeeýÿWeeýÿUere!ePe_OBre!ereƒe0eTeeýÿWeeýÿUere!ereƒe0eTeeýÿWeeýÿUeVePe=meVePe-:eUeZeeDeTeeýÿWeeýÿ UeZeeGe<-”‡ -û¤ˆ¤-Q¤‡¤‡¤ » ˜A _Code ¸ ˜A _LNo5f ¹ ˜A _Txt º ˜A _Cr ¼ ˜A _Q ½ ˜A _I1 ¾ ˜A _I2IeÿÿJeüÿEe4eÿÿe -Cod3eeLe1e4-,,Programming error C01 in CU11114033-Wr()tgeee7ee,ee‡e$e?eeÿÿe2eeÄe eee ee ÿÿÿÿeee ee ÿÿÿÿeÿÿee eeeþÿe ‡?eeeÿÿ?ee eþÿe ‡)ee eeee?eee ‹?eeeÿÿ?eeeþÿ?ee eýÿ?ee e eee{e0¸8,, pedereeÿÿ3ePeCodrehereƒe1eTePe0Programming error C01 in CU11114033-Wr()tgeUeZeederee3eLereheree?ee$Zeeedereeÿÿ2eerehee]eeqeXe<vorige records verwijderen, alle types (log + query)deneqeeWeeZeeqeeWeeTeƒeeVeeUeZeeqeeWeeTeƒeeVeeÿÿUeZeeqeeWeeZeeqeeþÿ?eLeZeeqee?eeÿÿZeebeeaereeþÿ)eLeZeeeWeeZeeeWee?eeZeeeWee?eeWeeReQe ZeeeWee?ereeÿÿZeeeWee?eeþÿZeeeWee ?eeýÿZeeeWee TeeUeZeeGe  ¸‡¨-°…¼…ÄfÌ„Ô-Ø-܇à ¸ ˜A _SqlCommand ¾ ˜A _ShowResults ¿ ˜A _ShowErrors ½ ˜A _SrcFile ¼ ˜A _OutStrm » ˜A _Path ¹ ˜A _Code º ˜A _LNoHeÿÿIeþÿJeûÿEeÀee -lob?eeøÿe-SQLCMD ?ee÷ÿe ‡?eeeøÿe÷ÿeþÿee/ee(e-SQLCMDIeýÿeüÿee{eØ(,peXehCheckTriggerVersion; hoeft niet, gebruikt trigger niet maar SQLCMD. Deze gebruikt andere connectiereee?ePelobZereXeforceer leegmakenn;eeøÿ?ePe SQLCMD Zeee÷ÿ?eLeZeeeTereeøÿVee÷ÿVeeþÿUeZeeƒe/eZereXe@!!!!! Anders kan ExecSqlInterface niet uitgevoerd wordenar ee(TePe SQLCMDIVeeýÿVeeüÿUeZeeGe0 ô‡ä-ûì-éô……ff+–©„ -$-(‡,‡4 ¸ ˜A _ProcName ¹ ˜A _ParamList ¾ ˜A _ShowResults ¿ ˜A _ShowErrors ½ ˜A _SrcFile à ˜A _ExecSql ¼ ˜A _OutStrm » ˜A _Path À ˜A _Code º ˜A _LNo Á ˜A _NumRecsHeÿÿIeþÿJeúÿEeìee -lob?eeöÿe- EXECPROCeeg?eeõÿe ‡?eeeöÿeõÿe- EXECUTE eegeþÿ'eeýÿ'eee/ee(e- EXECPROCtereüÿeûÿee{e4h L4PpeXe8CheckTriggerVersion; hoef nie, gebruikt trigger nieeee?ePelobZereXeforceer leegmakenn;eeöÿ?ePeEXECPROCeegZeeeõÿ?eLeZeeeTereeöÿVeeõÿVePeEXECUTE eegre!ereeþÿre!ereeýÿUeZeeƒe/eZereXe@!!!!! Anders kan ExecSqlInterface niet uitgevoerd wordenar ee(TePeEXECPROCterVeeüÿVeeûÿUeZeeemeese|OpenNewSessionStream(_SrcFile,_OutStrm,TRUE,TRUE); //Textmode,writemode. Note: the USE-clause is set to the current DBese@_OutStrm.WRITETEXT('EXECUTE ' + _ProcName + _ParamList);modese//Wr(_OutStrm,'GO');XECese_OutStrm.WRITETEXT;eese_Path:=_SrcFile.NAME;ECese_SrcFile.CLOSE;eseCLEAR(_SrcFile);AMEeseCLEAR(_OutStrm);AMEeese<EXIT(ExecuteSQLScript(_Path,_ShowResults,_ShowErrors));ese ITne ITeGe„¤‡”‡¨-û¸-¼‡Äf+–©̇Ôy Ø ¸ ˜A _ResultField5f ¼ ˜A _ResultFieldName º ˜A _Line ¾ ˜A _LogLevel ¹ ˜A _ExecSql » ˜A _NumRecs ½ ˜A _DummyHeÿÿIeþÿJeúÿEe´eúÿeeúÿeýÿ?eeùÿe‡e eúÿeüÿeûÿe?eeùÿe‡4eeeþÿeúÿ?eeÿÿeùÿ?eee{e °<0peXel_ResultFieldName, //Name of the field in the query. Can be 'DISTINCT(..)' or 'MAX(..)' etc eXeD_ResultField, //explore this field after exec. eXe€_Line //should contain only part of the query starting with 'FROM ..' e.g. 'FROM MyTable WHERE X=Y'eeeúÿWeeúÿ?eeúÿWeeúÿReQe úÿZeeeúÿWeeúÿ?eeýÿZeeeeùÿ?ee TeeúÿVeeüÿVeeûÿUeZeedeqeeùÿre4ereLerehereeþÿ?eeúÿWeeúÿZeeDeTeeùÿUeZeeGe„¤‡”¨-û¸-¼‡Äf+–©̇Ôy Ø ¸ ˜A _ResultField5f ¼ ˜A _ResultFieldName º ˜A _Line ¾ ˜A _LogLevel ¹ ˜A _ExecSql » ˜A _NumRecs ½ ˜A _DummyHeÿÿIeþÿJeúÿEeÀeúÿe ‹?eeúÿeýÿ?eeùÿe‡e eúÿeüÿeûÿe?eeùÿe‡4eeeþÿeúÿ?eeÿÿeùÿ?eee{e ¼<0peXel_ResultFieldName, //Name of the field in the query. Can be 'DISTINCT(..)' or 'MAX(..)' etcMeXeD_ResultField, //explore this field after exec. eXe€_Line //should contain only part of the query starting with 'FROM ..' e.g. 'FROM MyTable WHERE X=Y'eeeúÿWeeúÿ?eeúÿWeeúÿReQe úÿZeeeúÿWeeúÿ?eeýÿZeeeeùÿ?ee TeeúÿVeeüÿVeeûÿUeZeedeqeeùÿre4ereLerehereeþÿ?eeúÿWeeúÿZeeDeTeeùÿUeZeeGe„¤‡”-¨-û¸-¼‡Äf+–©̇Ôy Ø ¸ ˜A _ResultField5f ¼ ˜A _ResultFieldName º ˜A _Line ¾ ˜A _LogLevel ¹ ˜A _ExecSql » ˜A _NumRecs ½ ˜A _DummyHeÿÿIeþÿJeúÿEeÀeúÿe ‹?eeúÿeýÿ?eeùÿe‡e eúÿeüÿeûÿe?eeùÿe‡4eeeþÿeúÿ?eeÿÿeùÿ?eee{e ¼<0peXel_ResultFieldName, //Name of the field in the query. Can be 'DISTINCT(..)' or 'MAX(..)' etcMeXeD_ResultField, //explore this field after exec. eXe€_Line //should contain only part of the query starting with 'FROM ..' e.g. 'FROM MyTable WHERE X=Y'eeeúÿWeeúÿ?eeúÿWeeúÿReQe úÿZeeeúÿWeeúÿ?eeýÿZeeeeùÿ?ee TeeúÿVeeüÿVeeûÿUeZeedeqeeùÿre4ereLerehereeþÿ?eeúÿWeeúÿZeeDeTeeùÿUeZeeGe„¤‡”‰>¨-û¸-¼‡Äf+–©̇Ôy Ø ¸ ˜A _ResultField5f ¼ ˜A _ResultFieldName º ˜A _Line ¾ ˜A _LogLevel ¹ ˜A _ExecSql » ˜A _NumRecs ½ ˜A _DummyHeÿÿIeþÿJeúÿEeÀeúÿe ‹?eeúÿeýÿ?eeùÿe‡e eúÿeüÿeûÿe?eeùÿe‡4eeeþÿeúÿ?eeÿÿeùÿ?eee{e ¼<0peXel_ResultFieldName, //Name of the field in the query. Can be 'DISTINCT(..)' or 'MAX(..)' etcMeXeD_ResultField, //explore this field after exec. eXe€_Line //should contain only part of the query starting with 'FROM ..' e.g. 'FROM MyTable WHERE X=Y'eeeúÿWeeúÿ?eeúÿWeeúÿReQe úÿZeeeúÿWeeúÿ?eeýÿZeeeeùÿ?ee TeeúÿVeeüÿVeeûÿUeZeedeqeeùÿre4ereLerehereeþÿ?eeúÿWeeúÿZeeDeTeeùÿUeZeeGe„¤‡”‡¨-û¸-¼‡Äf+–©̇Ôy Ø ¸ ˜A _ResultField5f ¼ ˜A _ResultFieldName º ˜A _Line ¾ ˜A _LogLevel ¹ ˜A _ExecSql » ˜A _NumRecs ½ ˜A _DummyHeÿÿIeþÿJeúÿEeÀeúÿe ‹?eeúÿeýÿ?eeùÿe‡e eúÿeüÿeûÿe?eeùÿe‡4eeeþÿeúÿ?eeÿÿeùÿ?eee{e ¼<0peXel_ResultFieldName, //Name of the field in the query. Can be 'DISTINCT(..)' or 'MAX(..)' etcMeXeD_ResultField, //explore this field after exec. eXe€_Line //should contain only part of the query starting with 'FROM ..' e.g. 'FROM MyTable WHERE X=Y'eeeúÿWeeúÿ?eeúÿWeeúÿReQe úÿZeeeúÿWeeúÿ?eeýÿZeeeeùÿ?ee TeeúÿVeeüÿVeeûÿUeZeedeqeeùÿre4ereLerehereeþÿ?eeúÿWeeúÿZeeDeTeeùÿUeZeeGe„¤‡”‡¨-û¸-¼‡Äf+–©̇Ôy Ø ¸ ˜A _ResultField5f ¼ ˜A _ResultFieldName º ˜A _Line ¿ ˜A _LogLevel ¾ ˜A _ExecSql » ˜A _NumRecs ½ ˜A _DummyHeÿÿIeþÿJeúÿEe´eúÿeeúÿeýÿ?eeùÿe‡e eúÿeüÿeûÿe?eeùÿe‡4eeeþÿeúÿ?eeÿÿeùÿ?eee{e °<0peXel_ResultFieldName, //Name of the field in the query. Can be 'DISTINCT(..)' or 'MAX(..)' etcMeXeD_ResultField, //explore this field after exec. eXe€_Line //should contain only part of the query starting with 'FROM ..' e.g. 'FROM MyTable WHERE X=Y'eeeúÿWeeúÿ?eeúÿWeeúÿReQe úÿZeeeúÿWeeúÿ?eeýÿZeeeeùÿ?ee TeeúÿVeeüÿVeeûÿUeZeedeqeeùÿre4ereLerehereeþÿ?eeúÿWeeúÿZeeDeTeeùÿUeZeeGeðh‡Xf+–©l-p‡x‡€ ¸ ˜A _ParamExecSql5f ¹ ˜A _Line º ˜A _LogLevel » ˜A _NumRecsHeÿÿIeþÿJeûÿEe\e!eeþÿe-ÿe0eýÿe ‡e ‡úe?eeþÿ e-ÿe0eýÿe ‡ûe ‡úe?eeþÿ e-ÿe0eýÿe ‡õe ‡úe?eeþÿ e-ÿe0eýÿe ‡ïe ‡úe?eeþÿ e-ÿe0eýÿe ‡ée ‡úe?eeþÿ e ?eeþÿe ‹?eeehe1e-ÿe0eþÿeee1eþÿee1eþÿeeþÿ eeeeþÿ eeeÿÿeþÿ?eee{e4 DDDDD0Ppe e!TeUeZeeXe0used by logging procedure RetExecQryLog:ntaeeþÿWeeþÿ?eƒe0eTeeýÿVeLeVeLeúUeZeeeþÿWeeþÿ ?eƒe0eTeeýÿVeLeûVeLeúUeZeeeþÿWeeþÿ ?eƒe0eTeeýÿVeLeõVeLeúUeZeeeþÿWeeþÿ ?eƒe0eTeeýÿVeLeïVeLeúUeZeeeþÿWeeþÿ ?eƒe0eTeeýÿVeLeéVeLeúUeZeeeeþÿWeeþÿ ?eeWee ZeeeþÿWeeþÿ?eeWeeReQe Zeeedereerehee]eeqeƒe1eTeƒe0eTeeþÿWeeþÿUeUeZeeqeƒe1eTeeþÿWeeþÿUeZeeqeƒe1eTeeþÿWeeþÿUeZeeebeZeeeþÿWeeTeeUereZereXedExecutes the selectstatement as is in Line1 thru _Line5 and modifies current ExecSql-record. e.eeþÿWeeZereXe`Get current record: RowCount has been changed (probably), ResultField has been modified.rd.eeDeTeeþÿWeeþÿUeZereXeHexamine the right field (ResultINT, ResultTEXT etc) yourself now.eleGet,-e8f+–©@ ¸ ˜A _VersionInfo ¹ ˜A _ExecSqlJeÿÿEeœe ee€eeÿÿeeþÿ eeeþÿ ee ÿÿÿÿeee…eþÿ ee/ee´eeeþÿ eeþÿeÿÿ?eeþÿe’e0e?eeþÿe$-Placeholder for VersionInfo?eeþÿ eee/eeÿÿeþÿ2eeÔeeeþÿ eeeþÿ ee ÿÿÿÿeee…eþÿ eeeeþÿeÿÿ?eeþÿe’e0e?eeþÿ eee eee…e eeeee eee{eDœ,, $0,($,pe!deree rehereDeZereXe4Currently in the process of installing triggerseeeTeeÿÿUeZeeeþÿWeeZeeeþÿWeeTeƒeþÿ e VeLeUeZeedere/ereeþÿWeerehee]eeqeeZeeqeeþÿWeeþÿ ?eLeZeeqeeþÿWeeþÿ?eeÿÿZeeqeeþÿWeeþÿ?eƒe0eZeeqeeþÿWeeþÿ?ePe Placeholder for VersionInfoZeeqeeþÿWeeZeeqeƒe/eZeebeZeedereeÿÿ2eeþÿWeeþÿrehee]eeqeeZeeqeeþÿWeeZeeqeeþÿWeeTeƒeþÿ e VeLeUeZeeqedereeþÿWeereheZeeqeeþÿWeeþÿ?eeÿÿZeeqeeþÿWeeþÿ?eƒe0eZeeqeeþÿWeeZeebeZeeeeeWeeZeedereeWeeTeeUereheZereXe@Creates a record for current session. (=My Session=TRUE)elfeeWeeZereXe$Get values updated by triggereseGeÜh-ûXf0”5w X‡`-ûh-ûl ¼ ˜A _DB ¹ ˜A _Counter º ˜A _ServerName » ˜A _DbNameHeÿÿJeþÿEeheþÿ e e  ÿÿÿÿeeeþÿ e eeÿÿeþÿ?eee{e pe"eþÿWee Teƒeþÿe VeeUeZeeeþÿWee ZeeDeTeeþÿWeeþÿUeZeeGe„@-û0f/”5w 4-û< ¹ ˜A _Server ¸ ˜A _ServerNameHeÿÿJeþÿEeheþÿ e e  ÿÿÿÿeeeþÿ e eeÿÿeþÿ?eee{e Äpe#eþÿWee Teƒeþÿe VeeUeZeeeþÿWee ZeeDeTeeþÿWeeþÿUeZeeGeX,‡f ”5w $ ¸ ˜A _SessionHeÿÿJeþÿEedeþÿ e eþÿeeeþÿ e eeÿÿeþÿ?eee{e”pe$Xe Id van de huidige sessieggeeeþÿWee TeeþÿWeeþÿVeeUeZeeeþÿWee ZeeDeTeeþÿWeeþÿUeZeeGeX,-ûf ”5w $ ¸ ˜A _SessionHeÿÿJeþÿEedeþÿ e eþÿeeeþÿ e eeÿÿeþÿ?eee{e”pe%Xe(geeft de machinenaam van de clientneeþÿWee TeeþÿWeeþÿVeeUeZeeeþÿWee ZeeDeTeeþÿWeeþÿUeZeeGe ¸-û¨f --û-û -(…4…@‡D ¹ ˜A _Wshell $L&WN Ü5ùðЭ¹ÀOՊ aä`(a+ô`ïCN $ÑÏÕMÂr ׋CŠB˜BKˆ¯¸ $DA¾Ó¢‹KÓP ¿ ˜A _Query ¸ ˜A _Machine º ˜A _Server ½ ˜A _CodeTbl » ˜A _GetMachineName ¼ ˜A _GetServerName ¾ ˜A _TypeHeÿÿJeþÿEeeûÿe-ûe#e?eeùÿeeøÿee eee ee ÿÿÿÿe‡ee ee ÿÿÿÿe ‹ee ee ÿÿÿÿe- MACHINENAMEee…e e e/eeÐe eeeeee ‹?eee- MACHINENAME?eee ‡?ee ee e -ote?ee e eeùÿe?eeTeüÿe -Mac2ee$eüÿe ?eeeùÿe?ee eee ee ÿÿÿÿe‡ee ee ÿÿÿÿe ‹ee ee ÿÿÿÿe- SERVERNAMEeee…e e eehe eûÿ2eeDeùÿe?ee eûÿ?ee e eeÄe eeeeee ‹?eee- SERVERNAMEe?eee ‡?ee ee eûÿ?ee e eeùÿe?ee/eeùÿeÀeüÿe -Mac?eeúÿe-ÿe ee?ee÷ÿe ‡?eeýÿe- UPDATE [aceeúÿ'ee$-] SET Notes = MachineName c'ee\-TT FROM (SELECT CONVERT(VARCHAR,SERVERPROPERTY('MachineName')) AS [MachineName]) Xdif'ee$- WHERE Session=0 AND Type=A'ee-ÿe0e÷ÿe'ee - AND Code='MACHINENAME''e?ee)eýÿee eee ee ÿÿÿÿe‡ee ee ÿÿÿÿe ‹ee ee ÿÿÿÿe- MACHINENAMEee…e e ee$eüÿe ?ee8e1e -MACHINENAME not found'eeÿÿeüÿ?eee{eœI@ ,08,   (,08(   ,$,08(8pe&Xe<Geeft de machinenaam waarop de huidige server staat.UE)eXe@misschien al opgehaald. Check of servername nog dezelfde iseeûÿ?ee#Zeeeùÿ?eeZeeeøÿ?eeZeeeWeeZeeeWeeTeƒeeVeLeUeZeeeWeeTeƒeeVeeWeeReQe UeZeeeWeeTeƒeeVePeMACHINENAMEUeZeedere/ereeWee rehee]eeqeeWeeZeeqeeWee?eLeZeeqeeWee?eeWeeReQe ZeeqeeWee?ePeMACHINENAMEZeeqeeWee?eLeZeeqeeWee ?eeZeeqeeWee ?ePeoteZeeqeeWee Zeeqeeùÿ?eeZeebeeaeree]eeqedereeüÿre2erePeMacreheeqeeüÿ?eeWee eqeaeqeeùÿ?eeZeebeZeeeeWeeZeeeWeeTeƒeeVeLeUeZeeeWeeTeƒeeVeeWeeReQe UeZeeeWeeTeƒeeVePeSERVERNAMEeUeZeedereeWee rehee]eeqedereeWee re2ereeûÿreheeqe]eeqeeùÿ?eeZeeqeeWee ?eeûÿZeeqeeWee Zeeqebeebeeaee]eeqeeWeeZeeqeeWee?eLeZeeqeeWee?eeWeeReQe ZeeqeeWee?ePeSERVERNAMEeZeeqeeWee?eLeZeeqeeWee ?eeZeeqeeWee ?eeûÿZeeqeeWee Zeeqeeùÿ?eeZeebeZeeƒe/eZereXeeventjesneNedereeùÿrehee]eeqeeüÿ?ePeMacZeeqeeúÿ?eeWeeZeeqee÷ÿ?eeWeeReQe Zeeqeeýÿ?ePeUPDATE [acere!ereeúÿre!erePe ] SET Notes = MachineName ceqe!eqePeX FROM (SELECT CONVERT(VARCHAR,SERVERPROPERTY('MachineName')) AS [MachineName]) Xdifeqe!eqePe WHERE Session=0 AND Type=Are!ereƒe0eTee÷ÿUere!erePe AND Code='MACHINENAME'Zeeqee)TeeýÿUeZeeqeeWeeZeeqeeWeeTeƒeeVeLeUeZeeqeeWeeTeƒeeVeeWeeReQe UeZeeqeeWeeTeƒeeVePeMACHINENAMEUeZeeqedereeWee reheeqe]eeqeeüÿ?eeWee Zeeqebeeqeaereƒe1eTePeMACHINENAME not found'UeZeebeZeeDeTeeüÿUeZeeGep|…l-p…tf”5w|fè…ì ¹ ˜A _Path º ˜A _IsFile ¸ ˜A _FileRec » ˜A _FileMgt $L,z0( Bçω= ÉB( $zzÈá+z?CK $þC “ðω@ ÉB( $ *‡KÓ©zK6\Ÿ ¼ ˜A _ExistsHeÿÿIeþÿJeüÿEeÜe0eûÿeeýÿ/eeDeúÿe…eûÿ eeþÿe?ee<eúÿe…eûÿ eeþÿe?ee0eûÿeeÿÿeúÿ?eee{e¨4<pe'ƒe0eTeeûÿUeZeedere/ereeýÿreheeqeeúÿ?eeûÿWeeTeeþÿUeeaereeúÿ?eeûÿWeeTeeþÿUeZeeeƒe0eTeeûÿUeZeeDeTeeúÿUeZeeGe˜ ô-ø…… -û -e--e--$-û,-û4fœ ¸ ˜A _Code Á ˜A _ShowResults  ˜A _ShowErrors ¹ ˜A _DB º ˜A _Server » ˜A _Qry ¼ ˜A _Use ½ ˜A _Cmd ¾ ˜A _CodeTbl ¿ ˜A _TempName À ˜A _TempDir à ˜A _Wshell $L&WN Ü5ùðЭ¹ÀOՊ aä`(a+ô`ïCN $ÑÏÕMÂr ׋CŠB˜BKˆ¯¸ $DA¾Ó¢‹KÓPIeÿÿJeüÿ EeÔ eõÿe-ûe,e?eeûÿe-ûe#e?eeøÿe- sqlcmd -S "eûÿ'ee -"er'e?ee…e eeeðe…e eeeÈee,eøÿe- -E nte)ee”ee -QL 3ee,eøÿe- -E ser)eePeøÿe- -U sere'ee- -P ser'ee'e)eeüÿe-ûe"e?eeøÿe- -d "ameüÿ'ee -"B'e)ee÷ÿe-ÿe ee?eeöÿe- RetExIfSql_e-ÿe0ee'ee -_ob'eeÿÿ'e?eeúÿe--Q "See-set nocount on 'ee - SELECT Notes AS '--l w'eeÿÿ'ee- ' FROM [ote'ee÷ÿ'ee -]od'ee- WHERE Session='ee-ÿe0ee'ee - AND Type=1 AND Code='w'eeÿÿ'ee-'" -o p'eeõÿ'ee -\em'eeöÿ'ee-.QRYNam'e?ee*eøÿeúÿe‹eeúÿe- -i reeõÿ'ee -\em'eeöÿ'ee-.QRYNam'ee- -o am'eeõÿ'ee -\em'eeöÿ'ee-.LOGNam'e?ee*eøÿeúÿe‹eeþÿeœe*e -"%windir%\notepad" "RY,eõÿ'ee -\em'eeöÿ'ee-.LOGNam'ee -"OG'ee -OGe ‹eeúÿe--Q "ggie - BEGIN TRY DROP TABLE ,'eeöÿ'ee(- END TRY BEGIN CATCH END CATCHa'ee- CREATE TABLE C'eeöÿ'ee - (Notes VARCHAR(8000))D'ee- BULK INSERT R('eeöÿ'ee- from ''eeõÿ'ee -\em'eeöÿ'ee,-$$.LOG' WITH (ROWTERMINATOR='\n')"t i'e?ee*eøÿeúÿe‹eeúÿe--Q "e- ALTER TABLE WT'eeöÿ'ee(- ADD [LineNo] INT IDENTITY "')"'e?ee*eøÿeúÿe‹eeúÿe--Q "e- INSERT [e'ee÷ÿ'ee<-44] (Session, Type, IsError, Code, [LineNo], Notes)G'ee- SELECT n, 'ee-ÿe0ee'eeH-@@,2, CASE WHEN Notes like 'MSG%LEVEL%STATE%' THEN 1 ELSE 0 END 'ee -,''eeÿÿ'ee,-$$',[LineNo] , LEFT(Notes,250) FROM %'eeöÿ'ee -"em'e?ee*eøÿeúÿe‹ee eee ee ÿÿÿÿeee ee ÿÿÿÿe ‹ee ee ÿÿÿÿeÿÿee ee ÿÿÿÿeee…e e ee|eýÿe<e*e -"%windir%\notepad" "es,eõÿ'ee -\em'eeöÿ'ee-.LOGNam'ee -"OG'ee -OGe ‹ee…e2eõÿe -\em'eeöÿ'ee-.LOGNam'eeePe2eõÿe -\em'eeöÿ'ee-.LOGNam'eee1eeÿÿeeeHe…e2eõÿe -\em'eeöÿ'ee-.QRYNam'eeePe2eõÿe -\em'eeöÿ'ee-.QRYNam'eee…e2eõÿe -\em'eeöÿ'ee-.LOGNam'eeePe2eõÿe -\em'eeöÿ'ee-.LOGNam'eee{e LÔ$<(((P$8,`\(¨(”X(p(p(,0,((”XH(`HXHpe(eõÿ?ee,Zeeeeûÿ?ee#Zeeeøÿ?ePesqlcmd -S "re!ereeûÿre!erePe"erZeeedereeWeerehee]eeqedereeWeereheeqedereeWeereheeqeeøÿ)erePe -E nteqeXe8'-E':use trusted connection. Is eigenlijk default..eqeaeeqedereeWeere3erePeQL reheeqeeøÿ)erePe -E sereqeaeeqeeøÿ)erePe -U serre!ereeWeere!erePe -P serre!ereeWeeZeebeZeeeeüÿ?ee"Zeeeøÿre)erePe -d "amre!ereeüÿre!erePe"BZeee÷ÿ?eeWeeZeeeöÿ?erePeRetExIfSql_re!ereƒe0eTeeUere!erePe_obre!ereeÿÿZeeeeeúÿ?ePe -Q "SeqeXeDDe inhoud van _CodeTbl wordt in _TempName.QRY gezet voor _Code eqe!erePeset nocount on re!eeqePe SELECT Notes AS '--l wre!ereeÿÿeqe!erePe' FROM [otere!eree÷ÿre!erePe]odeqe!erePe WHERE Session=re!ereƒe0eTeeUere!erePe AND Type=1 AND Code='wre!ereeÿÿre!erePe '" -o peqe!ereeõÿre!erePe\emre!ereeöÿre!erePe .QRYNamZeee*TeeøÿVeeúÿVeeReQe UeZeeXe8uitvoeren _TempName.QRY, resultaat in _TempName.LOGeeúÿ?ePe -i rere!ereeõÿre!erePe\emre!ereeöÿre!erePe .QRYNameqe!erePe -o amre!ereeõÿre!erePe\emre!ereeöÿre!erePe .LOGNamZeee*TeeøÿVeeúÿVeeReQe UeZeeedereeþÿrehee]eeqee*TePe"%windir%\notepad" "RY,re!ereeõÿre!erePe\emre!ereeöÿre!erePe .LOGNamre!erePe"OGVePeOGVeeReQe UeZeebeZeeXede logging.eeúÿ?ePe -Q "ggieqe!erePe BEGIN TRY DROP TABLE ,re!ereeöÿre!erePe$ END TRY BEGIN CATCH END CATCHaeqe!erePe CREATE TABLE Cre!ereeöÿre!erePe (Notes VARCHAR(8000))Deqe!erePe BULK INSERT R(re!ereeöÿre!erePe from 're!ereeõÿre!erePe\emre!ereeöÿre!erePe(.LOG' WITH (ROWTERMINATOR='\n')"t iZeee*TeeøÿVeeúÿVeeReQe UeZeeeúÿ?ePe -Q "eqe!erePe ALTER TABLE WTre!ereeöÿre!erePe$ ADD [LineNo] INT IDENTITY "')"Zeee*TeeøÿVeeúÿVeeReQe UeZeeeúÿ?ePe -Q "eqe!erePe INSERT [ere!eree÷ÿre!erePe8] (Session, Type, IsError, Code, [LineNo], Notes)Geqe!erePe SELECT n, re!ereƒe0eTeeUere!erePeD,2, CASE WHEN Notes like 'MSG%LEVEL%STATE%' THEN 1 ELSE 0 END eqe!erePe,'re!ereeÿÿre!erePe(',[LineNo] , LEFT(Notes,250) FROM %re!ereeöÿre!erePe"emZeee*TeeøÿVeeúÿVeeReQe UeZeeeeWeeZeeeWeeTeƒeeVeeUeZeeeWeeTeƒeeVeeWeeReQe UeZeeeWeeTeƒeeVeeÿÿUeZeeeWeeTeƒe e VeeUeZeedereeWee rehee]eeqedereeýÿreheeqe]eeqee*TePe"%windir%\notepad" "es,re!ereeõÿre!erePe\emre!ereeöÿre!erePe .LOGNamre!erePe"OGVePeOGVeeReQe UeZeeqederee2Wee2Teeõÿre!erePe\emre!ereeöÿre!erePe .LOGNamUereheeqee2Wee2reTeeõÿre!erePe\emre!ereeöÿre!erePe .LOGNamUeZeeqebeZeeqeƒe1eTeeVeeÿÿVeeUeZeebeeaee]ereXeCleanup filespaeqederee2Wee2Teeõÿre!erePe\emre!ereeöÿre!erePe .QRYNamUereheeqee2Wee2reTeeõÿre!erePe\emre!ereeöÿre!erePe .QRYNamUeZeeqederee2Wee2Teeõÿre!erePe\emre!ereeöÿre!erePe .LOGNamUereheeqee2Wee2reTeeõÿre!erePe\emre!ereeöÿre!erePe .LOGNamUeZeeebeZeeGe8 Ì-Ô-ûÔ-eØ-Ü-eà-ä-ì-ûô-ûüfd ¸ ˜A _QueryText ¹ ˜A _DB º ˜A _Server » ˜A _Qry ¼ ˜A _Use ½ ˜A _Cmd ¾ ˜A _CodeTbl ¿ ˜A _TempName À ˜A _TempDir à ˜A _Wshell $L&WN Ü5ùðЭ¹ÀOՊ aä`(a+ô`ïCN $ÑÏÕMÂr ׋CŠB˜BKˆ¯¸ $DA¾Ó¢‹KÓPIeÿÿJeþÿ Ee”eýÿe-ûe#e?eeúÿe- sqlcmd -S "eýÿ'ee -"er'e?ee…e eeeðe…e eeeÈee,eúÿe- -E nte)ee”ee -QL 3ee,eúÿe- -E ser)eePeúÿe- -U sere'ee- -P ser'ee'e)eeþÿe-ûe"e?eeúÿe- -d "ameþÿ'ee -"B'e)eeüÿe--Q "ame$-set nocount on BEGIN TRY dt'eeÿÿ'ee - END TRY BEGIN CATCH RY'ee$- DECLARE @M VARCHAR(1000) t'ee$- SET @M = ERROR_MESSAGE()t'ee<-44 RAISERROR('Qry failed with message %s',0,1,@M )t 'ee$- RAISERROR('Qry %s',16,1,'h'ee-ÿe0eÿÿe -=uee -'uee'ee-') END CATCHry 'ee -"'e?ee*eúÿeüÿe‹ee{e@t<(((P$8”pe)Xe execute smallsize queries0)eeýÿ?ee#Zeeeúÿ?ePesqlcmd -S "re!ereeýÿre!erePe"erZeeedereeWeerehee]eeqedereeWeereheeqedereeWeereheeqeeúÿ)erePe -E nteqeXe8'-E':use trusted connection. Is eigenlijk default..eqeaeeqedereeWeere3erePeQL reheeqeeúÿ)erePe -E sereqeaeeqeeúÿ)erePe -U serre!ereeWeere!erePe -P serre!ereeWeeZeebeZeeeeþÿ?ee"Zeeeúÿre)erePe -d "amre!ereeþÿre!erePe"BZeeeüÿ?ePe -Q "amqeXeDDe inhoud van _CodeTbl wordt in _TempName.QRY gezet voor _Code eqe!erePe set nocount on BEGIN TRY dteqe!ereeÿÿreeqe!erePe END TRY BEGIN CATCH RYeqe!erePe DECLARE @M VARCHAR(1000) teqe!erePe SET @M = ERROR_MESSAGE()teqe!erePe8 RAISERROR('Qry failed with message %s',0,1,@M )t eqe!erePe RAISERROR('Qry %s',16,1,'hre!ereƒe0eTeeÿÿVePe=ueVePe'ueUere!erePe') END CATCHry eqe!erePe"Zeeee*TeeúÿVeeüÿVeeReQe UeZeeGeԐ-”-˜‹Äf,-e0…8‡< ¾ ˜A _Cmd ¿ ˜A _Qry ¹ ˜A _WindowStyled( hide show ½ ˜A _Wshell $L&WN Ü5ùðЭ¹ÀOՊ aä`(a+ô`ïCN $ÑÏÕMÂr ׋CŠB˜BKˆ¯¸ $DA¾Ó¢‹KÓP ¼ ˜A _Server º ˜A _RunModal ¸ ˜A _ResIeÿÿJeüÿEe,e0eüÿeeeúÿe?eeùÿeyÿeüÿ eeÿÿe - md'eeþÿ'eeýÿeúÿe eeùÿ6eeTe1e- Cmd failed:eÿÿ'ee -\\d'eeþÿ'eee0e ‡ee0eüÿee{e``pe*ƒe0eTeeüÿVeeUeZeeXeDMESSAGE('TEMP=' + _Wshell.ExpandEnvironmentStrings('%TEMP%')); eeúÿ?eeZeeeeùÿ?eeüÿWeeTeeÿÿ!erePe mdre!ereeþÿVeeýÿVeeúÿUeZeedereeùÿre2ereLerehereƒe1eTePeCmd failed:re!ereeÿÿre!erePe\\dre!ereeþÿUeZeeƒe0eTeLeUeZeeƒe0eTeeüÿUeZeeGe0|fˆ„˜… …¨-¬-e¬ º ˜A _File5f ¼ ˜A _OutStrm5f » ˜A _TextMode ¸ ˜A _WriteMode ¹ ˜A _Path ½ ˜A _DBIeÿÿJeûÿEe<e.eûÿee…e2eûÿee e2eûÿeeÿÿ eeýÿeeÿÿ eeüÿee…eÿÿ eeûÿe/ee(e1e eûÿeeÿÿ eeþÿeeúÿe-ûe"e?ee{e `( T $pe+e.TeeûÿUeZeederee2Wee2TeeûÿUereheeqee2Wee2TeeûÿUeZeeeÿÿWeere?ereeýÿZeeeÿÿWeeTeeüÿUeZeedere/ereeÿÿWeeTeeûÿUerehereƒe1eTee VeeûÿUeZeeeÿÿWeeTeeþÿUeZeeeúÿ?ee"ZeeeXe(Wr('USE [' + _DB + ']',_Code,_LNo);eGeì@-û0-û8f¤ ¹ ˜A _TempDir ¸ ˜A _FileMgt $L,z0( Bçω= ÉB( $zzÈá+z?CK $þC “ðω@ ÉB( $ *‡KÓ©zK6\ŸHeÿÿJeþÿEe¬eþÿe -\\me-ûe&e'ee-\EXDChi'e?ee0eýÿee…eýÿ eeþÿe/ee@e0eýÿee1eeþÿeeþÿe -\\me-ûe&e'ee- \EXDC\Tempa'e?ee…eýÿ eeþÿe/ee(eýÿ eeþÿee0eýÿeeÿÿeþÿ?eee{e(L4 L4 pe,eþÿ?erePe\\mre!eree&TeUere!erePe \EXDChiZeeXedIF NOT _File.FINDFIRST THEN //Als _File niet bestaat geeft NAV een foutmelding !@#$%^%$#!eƒe0eTeeýÿUeZeedere/ereeýÿWeeTeeþÿUerehee]eeqeƒe0eTeeýÿUeZeeqeƒe1eTeeVeeþÿUeZeebeZeeeeþÿ?erePe\\mre!eree&TeUere!erePe\EXDC\TempaZeedere/ereeýÿWeeTeeþÿUereheeqeeýÿWeeTeeþÿUeZeeeƒe0eTeeýÿUeZeeeDeTeeþÿUeZeeGe”X‡H-T…`…hflfÔ-eØ-܅䋇--f$„,‡0-e4 Á ˜A _Path5f  ˜A _ShowResults Ä ˜A _ShowErrors ¸ ˜A _File º ˜A _Wshell $L&WN Ü5ùðЭ¹ÀOՊ aä`(a+ô`ïCN $ÑÏÕMÂr ׋CŠB˜BKˆ¯¸ $DA¾Ó¢‹KÓP ¹ ˜A _Server » ˜A _Cmd ½ ˜A _RunModal ¼ ˜A _WindowStyled( hide show ¾ ˜A _Res ¿ ˜A _Output à ˜A _Txt É ˜A _SrcFile Å ˜A _SrcStream À ˜A _Pos Æ ˜A _DbNameHeÿÿIeþÿJeûÿ Ee” eùÿe-ûe#e?eeïÿe-ûe"e?eeðÿe‡e0eþÿe-.SQLme?eeðÿ7ee4eðÿe‡e0 eþÿe?eeôÿe-ÿe0eþÿe ‡eðÿe ‡"eee- _Result.txt'e?ee…e2eôÿee e2eôÿeeøÿe- sqlcmd -Steùÿ'ee --d 'eeïÿ'ee- -C -i"'eeþÿ'ee-" -o""'eeôÿ'ee -"ut'e?ee0eúÿee…e0 eeeöÿee÷ÿe?eeõÿeyÿeúÿ eeøÿeöÿe÷ÿe ee0e ‡ee0eúÿeeõÿ6ee”e1eeøÿee0eúÿee…e0 eeeøÿe -"%windir%\notepad" "ecteþÿ'ee -"at'e?ee÷ÿe?eeöÿe ‹?eeúÿ eeøÿeöÿe÷ÿee0e ‡ee0eúÿee…e2eþÿee e2eþÿee1e -RROeee…e2eôÿee eòÿ eeôÿeeòÿ eeñÿeeõÿ7ee…eñÿ ee/e,eeeñÿ eeóÿee‡e0eóÿe -Msgee ‡3ee¨e‡e0eóÿe-LevelTee‡4eede‡e0eóÿe-StateTee‡4ee eõÿe ‡?eeÀþÿÿeòÿ eeeõÿ6eeýÿ-eeØe0eúÿee…e0 eeeøÿe -"%windir%\notepad" "ecteôÿ'ee -"ut'e?ee÷ÿe?eeöÿe ‹?eeúÿ eeøÿeöÿe÷ÿee0e ‡ee0eúÿee…e2eôÿee e2eôÿeeõÿ6ee|eüÿee0eúÿee…e0 eeeøÿe -"%windir%\notepad" "o Reþÿ'ee -"at'e?ee÷ÿe?eeöÿe ‹?eeúÿ eeøÿeöÿe÷ÿee0e ‡ee0eúÿee…e2eþÿee e2eþÿee1e -RROeeHe…e2eþÿee e2eþÿeeÿÿeõÿ?eee{e KØ$<@h@˜4 D 4H0@0 < DDD 4H0@4H0@0Hpe-eeùÿ?ee#Zeeeïÿ?ee"Zeeeðÿ?eƒe0eTeeþÿVePe .SQLmUeZeedereeðÿ3eLerehereeðÿ?eƒe0 e TeeþÿUeZeeeôÿ?eƒe0eTeeþÿVeLeVeeðÿ"eLeUere!ePe_Result.txtZeederee2Wee2TereeôÿUereheqee2Wee2TereeôÿUereZeeeeøÿ?ePesqlcmd -Stre!ereeùÿre!erePe-d re!ereeïÿre!erePe -C -i"re!ereeþÿre!erePe " -o""re!ereeôÿre!erePe"utZereXe '-C':use trusted connectioneeƒe0eTeeúÿVeeVeƒe0 e UeZeeeöÿ?eeöÿReQe öÿZeee÷ÿ?eeZeeeõÿ?eeúÿWeeTeeøÿVeeöÿVee÷ÿUeZeeƒe0eTeLeUeZeeƒe0eTeeúÿUeZeeedereeõÿre2ereLerehee]eeqeƒe1eTeeVeeøÿUeZeeqeƒe0eTeeúÿVeeVeƒe0 e UeZeeqeeøÿ?ePe"%windir%\notepad" "ectre!ereeþÿre!erePe"atZeeqee÷ÿ?eeZeeqeeöÿ?eeöÿReQe öÿZeeqeeúÿWeeTeeøÿVeeöÿVee÷ÿUeZeeqeƒe0eTeLeUeZeeqeƒe0eTeeúÿUeZeeqederee2Wee2TeeþÿUereheqee2Wee2TeeþÿUeZeeqeƒe1eTePeRROUeZeebeeaee]eeqederee2Wee2TereeôÿUereheeqe]eeqeeòÿWeeTeeôÿUeZeeqeeòÿWeeTeeñÿUeZeeqelereTeeõÿ3eLeUere,ereTe/ereeñÿWeeUeqe_eeqe]eeqeeñÿWeeTeeóÿUeZeeqedereƒe0eTeeóÿVePeMsgUe3eLereheeqedereƒe0eTeeóÿVePe LevelTUe4eLereheeqe dereƒe0eTeeóÿVePe StateTUe4eLereheeqe eõÿ?eLeZeeqebeZeeqeeòÿWeeTeUeZeeqedereTeeõÿ2eLereUere-ereTeeýÿUereheeqe]eeqeƒe0eTeeúÿVeeVeƒe0 e UeZeeqeeøÿ?ePe"%windir%\notepad" "ectre!ereeôÿre!erePe"utZeeqee÷ÿ?eeZeeqeeöÿ?eeöÿReQe öÿZeeqeeúÿWeeTeeøÿVeeöÿVee÷ÿUeZeeqeƒe0eTeLeUeZereXe(Need sleep to realy do RunModal.../eqeƒe0eTeeúÿUeZeeqederee2Wee2TeeôÿUereheqee2Wee2TeeôÿUeZeeqedereeõÿ2eLeqeheeqe]eeqedereTeeüÿUereheeqe]eeqe ƒe0eTeeúÿVeeVeƒe0 e UeZeeqe eøÿ?ePe"%windir%\notepad" "o Rre!ereeþÿre!erePe"atZeeqe e÷ÿ?eeZeeqe eöÿ?eeöÿReQe öÿZeeqe eúÿWeeTeeøÿVeeöÿVee÷ÿUeZeeqe ƒe0eTeLeUeZeeqe ƒe0eTeeúÿUeZeeqebeZeeqederee2Wee2TeeþÿUereheqee2Wee2TeeþÿUeZeeqeƒe1eTePeRROUeZeeqebeZeeqebeZeeqebeeqeaereXeAll went welllll" "eqederee2Wee2TeeþÿUereheqee2Wee2TeeþÿUeZeebeZeeDeTeeõÿUeZeeGet,-8‡@ ¸ ˜A _Path5f ¹ ˜A _MySessionIeÿÿJeþÿEe¨eþÿe‡e$e?eeÿÿe-ÿe0 ee-__tmp_ExecSqlll'ee-ÿe0eþÿe'ee-.SQLssi'e?ee{e °pe.eþÿ?ee$Zeeeÿÿ?eƒe0 e re!erePe__tmp_ExecSqlllre!ereƒe0eTeeþÿUere!erePe .SQLssiZeeGeœ@f+–©H-L-ûT ¸ ˜A _ExecSql ¹ ˜A _SqlCmd º ˜A _TempDirJeÿÿEePe!eee‡eee-GetDataDefTimeStampe`-XXFROM (select CONVERT(BIGINT,MAX(Timestamp)) as GetDataDefTimeStamp FROM Object) AS X hue ‡e?eee ‡2ee@e1e(- Fout bij GetDataDefTimeStampAX(eee‡eee-databaseversionnofTe -FROM [$ndo$dbproperty]Se ‡e?ee1e(- Test Select1FieldINT: NumRecs=(e-ÿe0ee'ee-,databaseversionno='ee-ÿe0ee'eee e-ûe,e?eeÿÿe ‹?eeÿÿe-databaseversionnoan?eeÿÿeeÿÿe ‹?eee‡e eÿÿe -FROM [$ndo$dbproperty]oe ‡e?ee1e,-$$Test Select1FieldByRec: NumRecs=ddee-ÿe0ee'ee-,databaseversionno='ee-ÿe0ee'eee‡ee-sp_helpe-'RetExecute SQL'o=eee6ee,e1e- GING FOUTe eeýÿe-ûe,e?eeþÿe0-((BACKUP DATABASE [master] TO DISK = N'seýÿ'ee(- \master.bak' WITH NOFORMAT, DIS'eeP-HHINIT, NAME = N'master-Full bak',SKIP, NOREWIND, NOUNLOAD, STATS = 10 'e?eeþÿeL-DDBACKUP DATABASE [master] TO DISK = N'master.bak' WITH NOFORMAT, = eP-HHINIT, NAME = N'master-Full bak',SKIP, NOREWIND, NOUNLOAD, STATS = 10 'e?eeeþÿeeee1eH-@@Next Execute reports errors because of non-existing fieldnameATeee‡eee$-databaseversionno LALALALs e -FROM [$ndo$dbproperty]Ae ‡e?ee1e(- Test Select1FieldINT: NumRecs=ae-ÿe0ee'ee-,databaseversionno='ee-ÿe0ee'eeeèe‡ee e-ProductVersionTe`-XXFROM (select CONVERT(VARCHAR,serverproperty('ProductVersion')) as ProductVersion) AS Xke ‡ee ‡2ee,e1e- FOUT.... X'ee{e˜G¼´ 8t $( X¤|$Ȭ X| ¼oe OnRunXe test:ieqee!TeUeZeeeXe„Aanroepen middels eenvoudige interface: (er is ook een versie voor TEXT,CODE,DECIMAL,DATETIME, afh. van datatype resultaatveld)eXeˆAls NumRecs=0 is er geen record gevonden, als =1 dan exact 1 en is de query dus juist, anders (>1) is de query wellicht niet juisteeXetAls LogLevel::FULL wordt zowel de gegenereerde query als eventuele fouten in een (ASCII)logbestand opgeslagen weXeHAls LogLevel::OnError alleen als er een (SQL) fout is opgetredene feXepAls server = MyServer dan wordt de naam van het logbestand = TEMPORARYPATH + '\RetExecSqlLog' + @SessionNoeeeXe8Queries die binnen een transactie kunnen draaienogbeXexEenvoudige interfaces, die gebruik maken van Select1FieldByRec, die gebruik maakt van huidige SQL-Server connectie:eXe Select1FieldINTceeXe Select1FieldTEXTeeXe Select1FieldCODEeeXe Select1FieldDECIMAL deXe Select1FieldDATETIMEdeeXevoorbeeld:eee?eeTeeVePeGetDataDefTimeStampVeeqePe\FROM (select CONVERT(BIGINT,MAX(Timestamp)) as GetDataDefTimeStamp FROM Object) AS X huVeLeUeZeedereeqe2ereLereheeqeƒe1eTePe$Fout bij GetDataDefTimeStampAX(UeZeee?eeTeeVePedatabaseversionnofTVePeFROM [$ndo$dbproperty]SVee ReQe UeZeeƒe1eTePe$Test Select1FieldINT: NumRecs=(re!ereƒe0eTeeUere!erePe,databaseversionno=re!ereƒe0eTeeUeUeZeeee ?ee,TeUeZeeXe8gNumRecs:=Select1FieldTEXT(gTestText,'MachineName'aeXed ,'FROM (SELECT CONVERT(VARCHAR,SERVERPROPERTY(''MachineName'')) AS [MachineName]) X' SQeXe ,LogLevel::Full);VEeXe0MESSAGE('Test MachineName=%1',gTestText);VEeeeXe8Zelfde voorbeeld kan ook zo, mbv Select1FieldByRec:eXeelfeeÿÿWeeÿÿ?eeWeeReQe ZeeeÿÿWeeÿÿ?ePedatabaseversionnoanZeeeÿÿWeeÿÿ?eeWeeReQe ZeeeÿÿWeeÿÿ?ee ReQe ZeeXe<Note: do not use the global recorddefinition gExecSql''ee?ee TeeÿÿVePeFROM [$ndo$dbproperty]oVee ReQe UeZeeƒe1eTePe(Test Select1FieldByRec: NumRecs=ddere!ereƒe0eTeeUere!erePe,databaseversionno=re!ereƒe0eTeeUeUeZeeeXeStoredProcedureso=edereeTePe sp_helpVePe'RetExecute SQL'o=VeeVeeUere2ereLerehereƒe1eTePeGING FOUTe UeZeeXe0MESSAGE('Test ExecProcedure: Finished');ionereXe8StoredProc, Parameterlist,_ShowResults,_ShowErrorsqeXePNote: supply multiple single quotes if there are spaces in the parameterS [eeXe|Let op bij gebruik van paden. Als de database zich op een niet-lokale server bevindt, kan geen gebruik worden gemaaktt eXexvan lokale (temp) paden. SQL-Server kan deze niet benaderen. Je kunt dan ook niet de lokale %TEMP%-Dir gebruikenaakeeXe\Stored procedures of speciale commando's die niet binnen een transactie kunnen draaienkeeýÿ?ee,Zeeeþÿ?ePe,BACKUP DATABASE [master] TO DISK = N'sre!ereeýÿ!erePe$\master.bak' WITH NOFORMAT, DISe!eqePeLINIT, NAME = N'master-Full bak',SKIP, NOREWIND, NOUNLOAD, STATS = 10 ZeeXe<Nu wordt het default-backuppad van SQLServer gebruiktOAeeþÿ?ePeHBACKUP DATABASE [master] TO DISK = N'master.bak' WITH NOFORMAT, = e!eqePeLINIT, NAME = N'master-Full bak',SKIP, NOREWIND, NOUNLOAD, STATS = 10 ZeeeTeeþÿVeeVeeUeZereXe,SQLStatement,_ShowResults,_ShowErrors Neeƒe1eTePeDNext Execute reports errors because of non-existing fieldnameATUeZeee?eeTeeVePe databaseversionno LALALALs VePeFROM [$ndo$dbproperty]AVee ReQe UeZeeƒe1eTePe$Test Select1FieldINT: NumRecs=are!ereƒe0eTeeUere!erePe,databaseversionno=re!ereƒe0eTeeUeUeZeeeeDeZeeedereeTee VePeProductVersionTVeePe\FROM (select CONVERT(VARCHAR,serverproperty('ProductVersion')) as ProductVersion) AS XkVee ReQe Uere2ereLereheeXeNOOT: 'AS X'!ONeqeƒe1eTePeFOUT.... X'UeZeei£SD$Tõ‘¡]&Æû+¯ïy+î –ë X$¨7c—²4½8Ë#Ÿ³qêÖ°kx"[iӚ–ÓÃýíû×SwwÝà/Ž_íëiŒ"8†3¾>=8Ì0›jí{ƒ©j7@¹ék$=Ÿ>éÌ,™¨K'ùób±¼s>ÄšÁìiø7üÞ[܃Ì&* !és.¾m"°}…¦g5íøÂÄÍ]Ôj`O»/³šíSí!š9¸ðÎÎíŸU»–ŽkáD äÇ!ð˞L¾üfÊ0¦\¸ðUÚÂXø ”XØ°æÀ ‚ëí]ÍR³©Ae‘òŒ6βÏ%ìI!õs×Ò»ÕtHj ¥oµXœÃIU,«cDc#3}@òÛek– ÙqÈ䬨ÞÑÔsp¨Ï-+ÐJ¤‡ÀÖB!k'à.lr¼©˜ú Ո¸P˜UqÂV×5^µJÅɚ= %E€Ò ˆÔג)Pïˆ9“ ¨…˘”j¹EA Þr„øl=P Q֌JO±÷>©Ý®ÄPƒ? uLç 3¸±”O5.L5wxóWÚ">q bP‹&Ð=•&rALUïßc ˜z¡ôòþÞïé‘ÎòÖÑÞÂV^ßag¥<ä­0~+g£ø¶d":ZïºÝ°Ý«‡HM¦-Œ‡ùl¹à¶o~Öʦ´Æ!÷ý1öÁl]Œcüäôø/®~W™œš lMRßÔúöç_áfñ}þëü1.Ô¤€ñŠ³²cdmkÿ›M¨»Û›+à$•k»Ñ¶ÖóT§¿òo i1émÛ ´ÂÓK)¢SIUÀ…—Fÿ’vÍ÷5ÝÎk ¯Æïù¾nKe›\b H¨í<[Ä|'4pëi½:ΌÁ‹JØ2ðØܧßÊx”•§+!â҃Jx—h‡–t0òìL¿å¼Ñ Ì:Qû¨\L²¥ß23Nĺ,nx®cD=Š¾6´Åk·4Ò#5Ócs×cpiò,M ÆHe¬9F$ª=ÝÛ[¿6ÿx8˜tò5J…pâ‡11ÃQòN±PD˜Äâb*‡à.D-Šž&%Eí2“0©‡¾æ$… sÇ¢ž)”}`µåpš ìòÈ!;!Ú¹ÃJS”)öFO^Æ¡9=c(PÈ0\¿å²2Z¼ ñ¥2 ^1–d¨ÊÓä3‘Šç%¨èG¦ƒÒf$Ë1‘§¯;Ëœæ  85¹:[½m~–2»†@ ĜÒï>&J Êóî¹ö}E±aÔÍÌ,«Î¾@ 'RçíŒ7Þfs­ð~§o:‡ïÒû>#§¶è¥XÇ)§‘ÎÞà¢?…Wû˜••°ГÇï3z‚¼+®ðð‚Õí± ×SŽõ®ö p’¸Î2GwA8[þÇ,ÍcÏ$œ=a‰M +*+ÿNRŽ@ìó /#B}"ñXžþñVœ¹W£‚žÿ·î+2öÈTâùâÊÜs¦Þ¼öÛÛY\ÿmÓבBoOJ㮃ó!;C붭IFnQÊ%–¨† U^]vFÿ¬5«ÓZO·m³_ëÔ]vˆí}"Ës±D$œþ=«à²á.#ƒ‚ÁBŸ$Ò¢Ê¢ë ª)R¤õ.„I’ÌyQD«0ðôYŸqˋÞ-Ds’y»J½JÏT#–Ë‘c_¼ù.CÎû[чQiÔ¬¾À–ÚdÈTf|ƒÂYæɺxN{¦Æ¢ Cæ´Ü“ãϑ®ö±—› íù°Æ‘ˈÛ³YlåPÊ°¦Y }fBP¤Žq¨øC4˜„8|% b,ê}Á*Y`64@ed9b  b[‘™s²ì…-Ý6Kš@”Ñ3 āt_³¬AléP’s§Sá2çb.‚œÑŠ†CÜÀr­¦XéKù¦¹•`ˆÂ>Ð6‰Gä=Þ1VЪŸpU„2­¨/1¯¬Dš´¾ôÄ8õ‡U5M§/ðuWÃæ@¶5„õ¾”ÃOíLí·ûé}¢î°¦Æšab]a®÷pkĔœ ¨QŸM¬*v–š`Ÿå뛿ºî® ™úLI]ç‡?Í/.¥ÎÓü~]MÝ©§ææmïÿjêù½Êϛ½¿9:]Ø"Vþl+øˆn¨{±mCo~D< ”d=µõ/e@=úèÙ÷£]ª,§µ3'¬3)¢€âø„¢ò3T丹ÞÑ¿Ñ´iÇ*fÈ©ÕÚ£|<ì=ðöb—²6°Ž4 Ÿð¸=ÁZ(4p-–+BÙilÀq;$ÔÝÝÓû» ÂO·§wFÙTGU®;Ÿ|-pki·"ô³8uTøø/Þ³ÿ™4›^ÜУŽ¦ ÓKèÆ:hé‹ •—áŸ%N'÷²Ñ‹®’tÖ~\0µkk(ågˆç®¿zKÉîKîëÅX™=ü.r“HÖS~÷¾ýàG,‘ÈTH T/xt•-4nîù<ûþmíðô€ìI[–·p Ã,ò mgŽ/# Z‚ ¸Ê@‡¬‰ø$‘Æ˜4åüãkˆà’|ö‚*P°hJL±ž­…{ ‰¹2>_qSp™21áåæ(AÊ¢Ýõƒ‰­Q /ÈKsLN¬Œ‡D ¢OHÖÏì"M½P:ë}-[…•c•KžSžQyMi0]àì$Ú;óÚ#d¯m:ÕlÊiÒ0/•n”ê[À3”.ûؐÊ6ÓÝÀsÍ |á<ü7j»çù{| >u"ĸ#·PY†*´·p˜ gúwät‘šdcnúÊ1ƒ}M5Œ,I4±g˼’JF8¯)ÿykænÇPôښŒKt*ÙH.ª=­—Sí_؂Ti+t*\¿ÿ˃ü…׍UcŽ×Ç^ømýDWÚ d+ö86Â\ˌ‡zZ”<ŠÈNo®Ãÿ±÷àï¬öýé{ñvü¨$îcw±¶½!ü\Ø¥’›kŠ¤Ùm%¹T[ÖlÀb.³¿nàîîºwL­ñËýÒÓ*ÀCµ`;­F!ãÐàU Ѝ¶¬‘óéJ ð ˜uªBE脐©YŽ¬ò²Œ¹IU¨Z‚B)dçæóycÆ -ʀ€`*d„®¥^e=À’²ÒOMKbó6Õ+MãjQE/OÑÛyÏÌ¿¥¬$fœPÝâäº2yK¡£CcÅ!/ÏÙ'¬5@`ÌuɅºb´¾ÐªU§AUªB W9R4§XxWðèBÊ`Ì AäÁc±ëÉdºÈ;uhŒ*hg ‰õ:Ê3×½²TƒjNº’Tl“Ù[á1 éAUòž´åâBLµ5赩÷…K}=ùÕ1Ù¡¤ kÒß1Úés峮ǫ,ÚÒ—ä”0 ú´è%BØ$›“±èh;]]¥AÌ*Gu‚ Û ±d7êšþ–‚Œñ'h–þ]ÍáX‘VüÏNв€ÒÛbgop‰|pî¥Z+K¾îþ[CŽ•­Un µ³p ¸ö…NœÐt†à¯¨ ¡ +xŸŸä²w£Ì´ÿÿš»ú+KÄ 7‘àòïÓgN¦ŒžìOx~¯Àg‡àÒ(w†²¢¶4*þî‡϶š‘Cߗ]¼ì9ŽßTÆï×Õ)Ýev„b‚B=ª/;ýÜØÿ±Òª¥×¡ŽW¿Ÿc¾`öc—²4°Ž5’çþCºJ؊ÄbG)U$ .‹··öÝfîîÏïúã/ßëݲ*ÇUw<ðµÀ­¦Ü¦L~€çªF.Ý¿zÏþ6PP”3ž ž§2‰aÈ­Xy©y±ÃøgËTF]̸qôP16Aÿ— Ps üíÍÚîùþ@^Þø‘«±îëÀՎuRÛKv…ëïÆ 'vACP‘1 mÂ_Xžõ'T Ê;L˜³äñ†v W’—fŸãO-|ÏÔê›SaÆè]4‚ê£ÖÙu>×ýˆ1Êo+S€ùáÔàÿ(ôcԦҘã‰[8ëÅ_ ¿¨Šã{A¬…~ÇNSŒŽ“½PbÑ ÅE7×aÿØûðwØ{~ò{𬕩‹–k›Õ¶×·˜;Ú|ÛI$¶ÚY²‘·iq¸HåÂ8rôoûoŠß¼×½çK7Ç{ÎR•í¨‘˲8î µÆ㠁–äs^3áið”G6¶;¶FŒ5rDÛÖíïÉÀcŒ¤´Í_–£,!,C&ݦqA¯ÙÓeƒ DˆQ”i’žßkäøõ¯±Æ 'A!í31‰ªxwA³ á1N]¤va,š±d ’ˆú¯[ÙÕVaüXBƒ²ÅÖÓ¹§êú•¼6$ ø¢É(‰’Ó)Fð¤Né€6fïaM+)Þþ-mq„q^y}'ÒgБ’TäÚ,A:@›hÜJôéî\Ê%ã™j1<ñâšAGÁ·ß0ä²1Ü Œ±r1ué¤ÆŽÓ-”ˆZ,ª~ 1WÊplŒòÆ(B@"•È†…n+Ü,ù©úÄÒ‡ ýÉC]<hÄ´ FS¤~Rs­ B´DùlŠ1ĕ pbDå²p€t}éœß@ ‹„y&+:aÝN òßG€<­gʨ¬bø‘¸ž’)U¯;i—ÅkªçlJ•Ÿ3η‚.aš§ø3Uç® Ù¥Ê4{ZŽ·‘÷ëyڅ³x3‡U¸ƒ«…,`"rË p…ÞV;¨2¯äˆ}Î!ÛÓ_1a>Ìóbx¹Ä:½EïèÝ"hxŽ9ó!­UäýCYóžÐÖÇ;Ö¼-ì¯OÇEâUJXû_!tañ§7PëgÙF^L9PÃa´)£G¾;6y¬²jc ²*Óµhž¼àZÆVµî%•Q ñ]#>Žj@>qq}õïGÎéx߇òiÌ9€’ށϦ C»9¦¯8_uèØs!–e±‹Ó ýŒ^èeéQW{¯ÜOS› ÷Äp2jÉ/@…>‘Ô!iÑ µºã—¤‚ÝÇ\׺ìç¨Ôþ-kÊ͗v?øpU©C9&æ~Vk»yÊBÊ,~U57 .~ü_y–'ÎaA’äö™[KvbÒ%ÑaSEˆ?zq}¾¶†¯âºÔöʺsà÷TXfÜÆ©ïłÜï}ÔQae–0(gq÷ÝrßXe£ây¯SËRQad¾ €lÔäfƋ$‚$N¦ÅºCí>púܲÆ8WÁ/‰”ˆZŸµ9›ÉS’¼º.|çb#¥‡t"ì7/ŽGOƒЗÿyÔĵìV¿·I/Z‹#ùmÄá ð§B˜ô†µs¯ý¤Å QaÖV犢:1ŠehÕikô5©lt5élô6?á[A`)×éÜ ‡œVO•RPZexª¼Ž läÁ‹4§R½m À/ƒv€äÜk›Õ¶žsT¯ú´™ i@¥ºäK$¶SHÀÆUz7ü“Åm¶½ï8X…~7æےI,¥)„n Æ[plpn Á¸Mð«-£ cm¶ãIà¼ð¥Bþ֞”¾ûÇq¦ª£W |î&“`£j8wÇØÞ…?Z5¸œ”x`öˆT…÷ႎ頽¯-ÓÒ.ñLFp}"»‹)ŠSN(ž;†Y§OK˧¤w ˆ&x]2R…ÈPî©}ÕìÒ¤ D9y% ¸Ixˆáf:q¤PBèƒDˆˆÄ–‹’©¸¨P^Ñ"… 8¥™ˆ,Î룼RÿLŠçB°ÚwîxÅÅF@À¦¬ÔÝÞ³\xAùüšÜ†„ÐÒØ¿(20µbwT€Mòv@~á tƒm© mîBüFƒ ’il’çpÉ&3èY ™‹¼Å|ÅUy™×Ë*€Ê ¸—PÌxU?ž.@ £DÃÆr,*ùÒÈ2ÎÔáÜsøûÐ/ÑßyÙxúŒ°èÝ4oLmé ý!ŸÎDõÄ!QCAHœ89&‡­ø,A‚`¡G«¬P"ýÁE‡Z—¿ïüȼ–yü³¤ÁJAE}ø]¶á$aÁÀô.àÛÈûdxj„ç ³Ìà“ä:œ¾Äè38ú²€8QœQJ–¾ÇV–®¶ÈeíÌŸÛ“´÷XZÅGt`¼«ÿ^Ý&tr‰„”A–¦ÁxœêWLxŽô² ™”éàgŽí˜Öªoݦ‹Ñ¾SœU$cµC¶*«¸¹[ ÐËäD²CtÿqèáÑÁiނ7žüçjÜb“9ª¶M^œj†¼(|ʗ’i>ºqzgÓ¢L滐T¤¦_5Ÿ‰Xq)“¥9C'L~)Q@ï™îëÅtTÿèéHkcÄ ¬RVž¡¤Ú‹½¹"œï1TWÐxóS¯'t©ÓP®Š†9í{üVϙjaÉ.܊,àCÄuwɃ 6YÕ²˜Öëd_î­è¥ÏVœXË}ðૹŒ¡—©‰Íµ)~×ØË2Ò»® ”ø“Û [YŒÒ.<ÅãV‡û<‚µn|„s©”Þx­ú*]ŽriR`8 Í~„¢ãœÈ7]q… Õy|1 OÕçÇåÔê-ÅQ·Y»Tìöë1C{U2Œ¼oè4Ý®õl£ l¬X*£OvتÑUTmšè±ÖjFÌYÆQ›#ւžìµ†Qnî’ ˜,5‡¦@ëسV½‹VÛôœ+žk S Hd®µï¢$ž|…*Þ °±ú©Á,NmsV‚Vb¸9[êjLd&áeŒˆ!KLZE&EßWï rñ­øã_꡽ˆ }TÇõˆ#h=ëN!k-ú&ˆ™µ Cߌ;¦Uú;zž*u)…²Ô3ÈYÎx­wGxñ¾³)ÒºP÷¢tª°Ÿ¦FªQƒFߙ”RÎÊZ ­Õb¿h£+Ö(¦Hªfì¸U¯K²@Œµsä–ÐÑ´-¸ƒÄ š{UþQzÿÖÕþWýŸâÿ:[Ê¿Û• ôîø vµY¾…C±óT;² H?*Ub¾;u”xjZîFwj}ÊÖq‡l¹(ý.‹mÃ[ˆÎ*zDý“C÷Û"a6’˜óã•SŸI_/,íí’/ŒçCÓ¡báOpÎpǶæ%„¡å YIŒ¥|á/Wý„½ nwAϘ¼‘õ2jÛ¶ër²½M¢ëð½ã,G…ã@ Às¿»t!Šðß1žt#:—Å-úºi(ª@Ÿù¡t1¢_ûå¥ALÕQ,1ß<žÔïX«³¶Q «Ù×¥Il$›õ8¢,{dÓ(7¯ õÍöMƾ9n,L„¬%Š ¦àbsN‰h\‘JŽëû¨¯ó®î¿ï]Þ½…ÕdóÓÒ/ÿ¨­•©£Md{δ½±—¹ŸzÂäMã*®wƒ¶Ïn1åMã@`½w½ùŠ–Û›oŽ7Ç/í÷¶@äCc– ˆ¯ØÈ,F§–Ù×àJ ¾ iÖ¨Ë~±H ™sY#.Ü·´ü…#\eNd-AT²ëëw;vvAƔØÐMŒ´1V6è$ÍÓIæbÚ½Çi̴؟2Œ!6Ğ|V1éÇî œÒ’ýÁÌÇêþZÑ— ãz–Öœ¦VhÊ4\†Hæ›AŠmºå¤jƒ¢yW€û€Q¢{Vo;_ÇW%8½8ƒ³eúœ…%Õ>³žÂ2Ú Ñ¯d[dgÌ8r;ó”–͕làŒ·dۏ„â<ûH2·¤¡8ÅEŒ·§@*‰ö / ò*áە˜ t»9ÜúJŒ‹¦j›ê»49É ÃQPƒ@ h[E xí€2ÏÁ‹yĈ3{@ƒ:—`a®æïS„ÿ²Ay˩ȧêýÔþu'ü¡×û(xCß@î\:Ò¿W(p:0²;tTªÝ Ä«ÅOM¸i³—PR¬&Eù¤Ár9 fR ™Öµxÿ Uæ-?5±ðwõu{åÕ¾ˆUM' ÇvÃøšØÅEÔÅHmó½`¹‹ÏMdҗCÈpTo[àüì]þÅÛþ(±u(¿]i>ib‹|µ­°+‹¿z׳©a°äØ Í¥§.5ô@3gÅEއýzõsàÙæéx} ]Zòìêlƒ SXUük—±¸žãD¦Ð`¶‰_t *E³º8tJ…U\1loòv‹^ë[ºàKQãwõ¶ùÉ'u½PŒ!PneÜ.JøT`ÃXÓmÐçXEµ°]¹W¿œò-LV¦ÁjM1ädͲ %§˜´xöÎ,ú"Á²A§R~*êše& ÆNº ­Ì%ۅÞ,œÒ½W™ÂbÆbžtC8¦íÏÞíÀ èÒ\@Á2P‘c@È¥Ë|¾ò~\·ÃÊW#”©Wð¬u8gR+ (ƒØāI/"XÕÑ#T²öjœVӋ¬ËQå”SWë>Ã4m2è2e@‚ÆO ëI©¸âÕ½–5ˆôéõ  ̱KogçÍçš3i y¬ò½Ì¥ L;#§R̽·²¥¾†¬ÔKRҏQõ蚷I)4æNÜåŸ(-¤Ì«& ;ۉ8÷ ð©×®.€eIÚs ÿ°”ñI"WŸ®{xÂÎÉ^PL;u‹lóë䊍¡iž¸¾ózŽÇÁû zÌìß õï`úQ-\6#}'J:B+-ðŠe摒èßX|`ÞÅ_tÍì„6x:ºƒ$}}¶ L–¶š­‚¥e¹(–„2ïèæÀ´!;¡Uvz­‚µœ uuÁæ⡪ȥÌfÕÈñX§“Æœ?ž‰´Šû[Š×5nU#ª¼`†iÛ·®ÝS»zcÿV€¥¹æ2=,v³îΔ~Œ}vóç59ÉçvRþM†õƒTÊûŽ¦–6 4ÝgtÒïI‰—üR‹¨ºRt `ÿ¬Óüc2¤”?šÞ«Zny‹1½J–) ØÃÓéB¤2-®øÖ}zÅ{‘+¯_ÏÁ`߁÷û°“ÉÈr5D±«1õYpò„}çµú†X ‘©²ïÐ¥xÄmBñfÕDž¸˜ X 0/Á©—o?‡+ö‚n3¤×C£ˆb†<ú©Žñ™eh1fÐ,s}½±¥&\øóbŠ>ƾ–LjNC¦\Æc^Æfš­K‚5šz|Ÿzߢ’îsˆ“®ž+üU "ùÂËÖKÚø86ŸhÛâ¾ÿOíßë¿ÐPÁø>0æŠ×ÚþýäÿZÜÿ-aSçváþ»•©z5c—²4½8Ë#Ÿ³q­‚D+x"Ûkӂ‚GŸ;¾qË»»fîðã—÷wªŒq\ELç(ñõÆ"ÈèáÑ8ÔÖößJPnqciZ¤=Í-C˜U2ç¥TH~¸­ìÍp*pBÔ2K>ÞדÇ{t\C‘bÐTÙSu³s A¶ÓLÌ[WÊës-7g­@A6쾎+¯˜Þä÷ŒÎi͹€·2ý­³s\澜T6î9†^8ž£[6G-ƒ9·Ø¹†z˜&ƺlàß_Zs«å[Ê *òÞçÁ•K⽊‘Dí~;2GsŽ€êóŽâœ4 l*}Ÿ<„eôJٕlH#>ÁZô®Uè¬,(Ò¯Hæô ð–¤òµ!ð-N€Ví.¦JhV [™0¤Tè †z\ú.T«ŒÔn:’,¦hd+q7R_BÚM«ÇlËKŸ¢. E3‘l8è½¥-whØz\*œgêIe'ðúE#Wö¤aS™_ÕFõ[±DÊ=.ˆÅT;˜–=}OÒ¤]"¡€›ëœ^…k®^yqà’PšÂ’߁þ¯^õâ?ßeÎ%š&x*úÿu^æ§r®þTo•€úB³bç:Éë ü¶y»Çï9i? ûä4*ñÁ=Øïø+˜[¡K°o3g±LÞÍÙ~|ØųóŠ;|žY¬2:¶G2SŠå]¯`1EšÔ"-d­®Úãfã艹æ~zßv…»#…å¿WCäñ.§FIò|¯ÌR]P?ÇâöŸWš¥ïX×gšébù>D‡„UËPÿêçŸÏ) z˜º³5åÞÓøú)íˆ,j»Ñ¶Þy˜?侁gSŠ6㔁¤qË`JÝf0R”æ—í΢]ÈîäõdÆïùrM¸å¦—Rø±µÆ¾}ï¾}ð‹hÂÈӍêthÍK`Íæ³aÙý'IZs²×F¤cÆ»X¦ÖJÃÌ?Ê>]SŠÿÄ[X}ñŒì:Qý(`LÓ%ºÌCXK6 |W9£¢¯;DÅkæžyOšSfÇu›ј´biF@ŽS-acJ¤¶_E~ÝÀäv£T©Wò(t8bJ?*Ó ƒÝ@Š¤‰p¢ÅQ¢Í:“8©‡¿P$¤ËiäPí)Ô}&`‚Ø@q´ç(ûف æC…ÈBYÐ2‹Ý\ ý~)7S© ‹‡×ìëpÅáâ‹\¦óê`úýÚݜ;¸ïÀO±x½\0_¿ûŖ¼7fëvmÂYá,ðñ»k·mñÅ·×oÁzó”/ԑrŸ †*ô÷²dÂ\rêXw]ñý‡©cšÍ\r¾Â8iG·VÜ;\‹u¸Eâý[÷v¼ Øp½oùÔuuK ã ÞêÊ¡y½Ãs(PÈ1`ëô‹ ”Ù¥š¼Ps¥2‰^Qšt¨ÊÕuw©Šö’Ô”£ú ‰ 7±Šl‰F™§25b(î|¢[1–/TL°pn$Þ;â/¼EνQ»¯Â#¾"O¨oOÐ,¯Í@ (Rçï7ÞgiÖø?_*ì3¯˜?† ôû°xå‘ÚÛß6sQ-E¾ADŸz|>”%ßIÒ*QÈƨ%ó‹9¨bzR©ŒÇj=MÃ9ÆY1Q6aSÿ<©s>åR¢³°ÚÃ4ìÕ³ˆ+åôÊøû_Ù .<ƗÕ)VÉû;UOC“KACŽShì °‡Õ¢¬Þ g2¿3…%…AÒ³^ý)<ŒŠÄÊ{÷˜ö~ÆN²#ß5×~k˜T¸íL‘”V·Û*c4»¬Ø£èÐ*܉Lê@—c|¿ã2^_(ut†)*ë#/.Ü|œœp_FA‡&LyËò·†Ù¬>vÎÑ1øéëÛ<¶Šú[Õ¿™v`ö8½~ [2ü5Ú©$§Ó—–'ö…nh¿æyÐsJ¹ºé ¦ó¾z#Ûkq v—®Àe\òôZ7‹bÜE•·¶K|¿ÏðÞk¯n?­6©ÇfÁ{ü+–©â|k›Í¶¯Ÿ›ÞHï‰óLkm´2ªÍ–²K”E²›Y²ÆôŸë˜8ÝM¸ürm»Aj//{Üې[pe¸ƒ€GIÅ~-‰ŽŒ´4a«n)þ •ïp!$9 Ÿ-<œôÙ ,Øw7„òT3P2œÁŒqpoù?»øÁC˜|å—2`H5äÏҍ;”’t'èVäç¦õL5¢Méxy¯1ã'?°'RDô‘.f¿®XµçÑ Cô‚!=9Æm0 x.QÒ¹§ *==J²ñâçÿÕü$Жyêôt5Ðeiη|Í!”z33PÖ&·ÂQ¥xÚS¢‘—\§(%€D§Ø 3{eªžuƒp #™ME©O¬vâ¤ÌhˆœåáHMKS%í—Jw=;(UH “·Ñx¤0®QFÔ”éXìÄéjˆ¦AåÌ2’…¨hãÈœW-¯õ4z (ø’¬½ïøÚê ògd°+㨦e¼‰ç<åR£Eç²ç ÉÐ@¡ü Uoê/ß‰Ú ÖéÛÿŽ^X>o~Õ¾¢j`Ч ÄÌ®•—7lv<€šŠ¦°1ˆwí­§,~ÿõ¿$³?4~©ŸŠ8dÇÉørEñpÍÒcüq-‹ò2ä6·&ê'°tóuêÒݏ©èW†­¼ýb›¢3»ÒÝõ™fÏã“BæňÒ;p²aÆ\*A6v¼)`á_*Š`„X–X‪4ìì{vvIqñŒ!$•%à€Ç†ˆý·B•By$6r(Ibä'ˆá„Häºi>Ìh’BjÈ ë1!Áä‘ >8c´§4 tÄnb$b‹’(a Å)âå*C1ËÎY!Œp‚•} hH™ PSá̝õ‹"HždÝ7¡‹Bo@öki\–äM:^ŸQ=´hS¦åtùÜXo—"CÓêWVr{jÒZ.V¬à±aüÛzS¤åJŽT¬æíW*Sr¥*ÖW-‚ ¸¿:4&ÝW½jƒÛUŸ‹æ¬²ÄÄÖqÍ纤_I/uD Óˆ¸„S¨æÝm ç‚[WqÊ»nnÖpAGú¥_r`¯zSE¡j$­)§7^æTB¦dÒuY‡e–¨0B•)Ó.…ŠÔ¼ª?;uü ƒ ]À׃ ©_âþñÇPM¨‚5„`_üÀ3²C4ÇûVß8ä$’”á"\»¿s€WËÆ(¦)üœò˜Ñd$H|1Jc”ùiô$äG B°v)n_IÕ<Ð¥“%ќ&ÆZ¸Ê€jc1'@ÜÎdÐ]ë+è(±WšlH1ëb,q~`4E”Ò •©Û—>–Uª€bÄɨ›„?ž^B ~N3ÈFš#ZHm´žHÙœã”ç;~ð@¿ª§è®?¢¢}™ ß4&, 2#w·•æêÎ LñbÊVe71™WÌϛϩoa­VGk&˜íÊXñ‡Å†tVºÀ\qÌSñýlî"wXKŸå4PöFΧI?‚¬•­¶²OÜ3K¶f—5¾Ô¨Mõlà £ayèù©ìÏÔ÷(§?Š]4Â&ŽŒäõŠ´ßH;¶á­Î®Ž!e©ÖVAb–µ~¶…pÉâóÙ(Ñäp¢á’qŒÆ»ÝœÃªŠ:*´nP9⚟¾`MŒi5£RÎF—y¢`R¹w.0>·“0æ ⢵3Å×±Jœ•ó>ÆHç@gð dEˆ±ú#W‘þ£³a .èfì\–ùW‘Öú±¼ÿÉçyˆÌE{2FÞ£¾SÚ廄M`Sôˤ%ÕJû³WÑÕ4£töظÌÝxŠx•l™€g'h¦¯xc%»ôR¾”ºýØ ¹CªŒŒÎåMlpä47àt“×ëŒÐ<ùG,8@ùÁ&¢/ßµ9oi¶úëkãñ’üÍó×Þ=‡'kϔãhçl\ÀŠ èËÖ.ùžkkƒ$ü»N?{ðy¾ò¥ðMáÑà/—5MÅ©ƒA×fÃåÁt ¬ CD·_0÷q*Ë­ ~¾Ô*Õ»¶m[½à¦ZŠA£YЖ•IŽs ƒæö/Ï°µtÞMéÌ»CŸä‚ò•\[vv³ˆ Û]YtÈZZµnŽun,#*`.½ÉÝüÜ jIüÝäy….¹¢i½lFò¤ç[Ö\§x=5ŒezW×;WÆýåíwµv>å„Û´ÅS, ÿ;×YÉeë>õqeîIìŠ8ÉÆ€àUMM‹O½xÌ9›èðD²[×ŒÍ/Œ0²²û±¹ÿÍnšÈF ”„uäWߎßëN®C ŸÝ:˜[÷Ó«ŠÅËvl>ö¬"›Õ7Ö.O„Òá¯s45ð®âîN-Þ >J½Ø€µ6Áˆ! ŠeÄ̂èÑý2ŽäÞÎ4ˆªüžMë\7¸,?ñi]UÝÌÓTHËP%z«UÞ¹ëÔ&Û¢A²ðÜ 0§VBŠ€U„3©ðÉó„c Ã¬åV¸NJßi»¥÷6­v›ÿï¹~{;ÿÿ0–©ðÓc—­¶½\À‘ÞÓæ´·[rBªM‘­”ULmfܲ|™ƒoñ6à¬ñËñËL¨·Aʸò,æá4a#m©t\û–£}A®H²3òzñœÀÊ”²¨ÏÛ>¬>ÙÏC)B…Ø'çæõzbé¢tmP ,tg±¬Îê;Áhv¦†‹‡äü4 óÓkHžoov{ž:¶ü‡¸æפ¦eölyrÚPô|ºu¡–Ær¢æBÊiØ“pQcÀÛ:å10®Æ&„<«C•è‹RATºí{ö_¾(ûk(.¶<*œÒ2êޘ/ƒf…!Å`Ì-ZÂi°p&st) úMböIô‹[ÔüA£ «bjf”ºµ"€X1ðK%)}ÒØK&Þ¯¶lX54CaT¨§¶)A¡BâîNè!/ºZ»¤ÒJ =v Â=89þ)¤Üðe!O€1ÇÅø ²q º«€³ú g'Cš÷Ml8qƒ®Àm¸%°H֋x0hD3é–3É7l~,ÿá·/¶pÜûÐJ ©ýä¿ì{Ð4‡˜i›ùܹRÀ˜|ž^!O@Š]ËÖïÿaòcüö#'/—bJçCx±x{a‹ÞïöÔZ¾á ŒðjäÁ ò_ž[óÍÂÂ-ýÍ+uÊâÅöü+s òcw±¶°ƒj•ô³¤@‘Ãk¨-­ËjÀkÖwí¼.îî_ïʵB¾7~Y&6¸C@ ÇûÂÓ¶›r©1ú§\Œ]Á~õžṳ̈¡(g:8õ½Ne2£µQÑS͎Ã>]qw²Ñ‹ª‘‰²ü¸aƒÑʧè©Z+/ÞEã(ª‘ûºñV&2— bÖRªÊoÞ÷ß¼³" ©¢°¥ª”ƒ i/ʟoù<þ`ôؒ·-®àÄ:1Áþ:¤$ÁbqŠÒ)`D‘•Tœ =¢Pˆ‘°e= HX4±k؊Ïëa^è"nL¤#“7¸i0Šˆ^x1áåæVUfhƒ®òÁÅ4Tðd²‹£QkÁÈóç2 iG¥ígö)ëFޓ*ë}0tTýxҥÞeHf´˜.€ðvnù‹î²W¶l¶e&jQÊ·$ê›À4 Ýç֐„ê'„ÓÝÀsÌzY)Âyø.nÙwòöø@y»þàŽÜ XçUM´·x^¿ gúwä5 ÆÜ%õ‰ðÔpõ@œ£±$ɋ)Ms°Z¼u;0”ÿykæ~ÇPôښŒN‰ëë¤UÖË©öÏì@”iŽSyڜËÿ§ùG¨Ã¥6¤Ç*ÛÇ^ømýDWÚ d+ö8(p:œduêƒ¬TS}vý¿}§·ï'ÿˆ0ü¨Mà{½öm·Ï@¾ÿ¢s$S%&Ûmº¨Š$S¨r‰:‘r (¡‚Òù¤l(•Äü›A?¿ýñø’QH¤£mI$²Hãé-émÖYÚN·w[ÝeíØ[·mÝáÔ]†òo>x7›¿pÃ~ì;Gv±¶ÛwÝa«b±¾éw[Óôž÷ç±eÆÝop’èï´½Ö,».ªû²ëßhŒ]tmûÃwZ½;#¼Fk¼!A»·[j]EÚ·}{eA=?H;Æíåì0¯8¥1ºìûיbÊå4ú~—SÓô„/[Ö®=Ûâ×(®EèqÒó^¿¶tk²;B²Êîº* Úö˜"Š'¥Ÿ¢ž˜µD·ùŠ,bˆ…ËpvÀÂ*­µÌ¾èܐF‡ |u äiÒ9~Ép=¯8Ýá¸Fê'"2 €®1jÐÚ{ŠóŒn®A”éE…ÙnØ·˜jÓ{œ&¯²Î¶0jã²Û–½•Ú´ÈÄà,»SÙf“fÓ½ÀÕÙgñº ÒïîÝÜæ··ïÉ;èm¿{¢Á.P\ÐQƸX/ÞÈf\{‚Ü7ÞbI@œ’ýð6'H.ÉDL” ó×h‚'L‘BbËí²7JAôh’›D›3Ü÷EÔQ9³RQ<ù½TŒÎß ýÏt½Q{‹©§ž–¦’Zš`_…QMÄ£PàÕê£åQރoµGÒLt"HƒB¤SãEîÃp£LªÔÒ̺hûäà êŒ L÷¿K3Ûr‡ÊÄV 0,{·¿ºnÞsڏҞ¹¨Y¿É5ohž–ÚG®£Óàô€äWbÁïøõÆÐÜ]—Fq‹=†„˜a¡Mg:Ƽ¯.àÚ"!†¾ÚÒá‡Âdør µ‚ 8Ã+Í´¨>’õsag±Ñ{ LDËc#þprLn ös§ðÃÕ(¢Äè×xց.0ëè„H¤,P¿œ ÜhG4Bk¼Ô=ÕÙ¾<‚Ù˜48-lW{¿ {¯}„Ã…sÌ&wÆÃ#ü 2·†`ËvÐ÷¾ÉÊ|±µkљ¿X‰›5,.u¶-pÆ®'Hÿ†ÔänïL©›Óò‰3>ª¼—[ë‹iiÂ-Òî‰ÌMïÚ3a6p¼‚ÙêB,|åùR5gu<„-–X3»î1Õ›¨šq-g­«ùôbìU'„C SãpŠhâ¦ÓðvÙ’ÄMîÇ¯=S+5M­ÖúC@×SÑÝÛ”í$÷x\ñw-»$,½·ºóÆKÚ±d#x[[L·evaJ"í; æÊ|á)rÍ»ÌÍÄA³QÈWÜ«Šz 胔ÕØ„,>Ø»MK"¬Rê «d¹Êœš2cŸMöˆ™öFÈNòË0¬2iüUÇq°:´*àQj­òª•·'¹nýКçUéÙ¡ál¨s®`³°;”“HQ#hਾ:Žõ–Á !] Ý^Ã.¯mÁ¯ÒÖàp¹úsBr>ç £ÿNˆÈ» •Åèÿrê sm²5ÚE õPÆä·¦fÏØfAî'‘H^1E>aIŸ0¤ß˜S?æÐ0§ñŒsQ1Oº1ÔÿxÇè¸Áû‚/Týq{„¦X³5‹¸iº°EøÑËÿëî×·Ù_(Ê_}{TþWržö[_ºíG'ýíÖgò ÕOß”¾ö÷7ù7¸pƒX ½Ûß¹Âe-ýî7Cÿ¯F)eöÙöyý·¥«ÿ§´=Åï²M^˦ãjUjܾ‹µn¸÷àÚ²4¡Ú|ûw§§…7î#PúD“ƒ%÷ _e˜K½àw¾¯8Ù§ŽÐ›ÝŽ1hbÝm‹B¬ÕÊÉÄ Ð/ÓêXßtƒ»Ð]Æ ë%¼KŒ;/y†­7½ àÜ®vþÔ½?"ïY燷¥×êÜ)O‡¯šÙ ›®oEè°K‡†®r§AA«÷±÷ö˜.ã6÷þPÇf0ÈYŽ¸Ú‹³²èñcw¼¶XhoÅqøÆÕ§lQUm®e÷Fଷhq¿Kûl±eçя]gq¿;î°Õ± åÏ.7jŖï [[L·evE8G¡Ô]¦W’]¤]”Œ°ŠT9‚Ú¡}À’rNo¯l`\N(þ"Ãé[Pä@Gæ—Eæ „ÔðJ‹å–‰ˆš~’šñuZÁ„#Ñju‘ýqQ⠂Ç> ‘˜TŒkǀD²«âOpUç²)—­ëDÈõg-_eX‚#gÄrøõ±@Ì8p4î-€ƒ_á!BÔxQ·[áÛßõ¶ð¯Øœ~BF9[¢2.Ã.¡ zJ6–*–‰'ÓT±Ÿð?ÿÛ ¿KK[J^»'¾Ý±;TÐ}!É:épMê\3F— Ä¥$·¥×•_òª¹Ö_üªìq‡NªÖXUà»Fº« oeZ°ƒ]ܤ!¼JÁxÉ.}B¹Å÷_a±n–³‹Þ7’BÏÐÑRn‚(ŘÔxßî¥:¶®²˜L8Åe;Sh.žL[Ž7¼s±f «š¦¸œN¬íz•¹ÓêTŸW_f~¼t ÈíÁ=þ2°Æ[Û]—øqPš2Þ¬å›6#xœ,B`U蛉u¶ª†w-N_íQræfì.nn¼ì `æÉõ+^Fҗ^û3ÐÍGKRbB™Ÿ©žI @Û‡ú“CI e7Ê%“ÏðL%#­$kEoÜqŸgr'âÌÖº¶[NÄQW£&-®@¡B·?ŸO }BÆ>Øm3,Ú®Ýc(Ágp°jœ}'Ÿ)9ò'U¨ªÊ„@r'”FÈÈ0éȄ¶v(ÏYTIn™!¨#¦«;¸Eaƒ›Ö— ÀTDï dPéÕ§ù[Õ6ºÍ¼Àtª½ÐŸ\ê ´µ ùŸۂ=”*·Æn°xCè.Íñš¡R5k7ïYkb“ö>/ª$]~éaìk2ÕAµl—ыƒM\²‘ÄŸ… ù#z³“üëR¤¡fqې-§àA>òo³¸‰‰óÑæLMIŸÒÞóý ï?ÆÞáL¥xV¯ÐÛ¦zsÊh‘¬WyQ.ú"§}zþ¾ØëßÓš¶ß¼;$ËZþkouwkPr× ÙªV„”GX ¦“~ÙPmp½¾9'¬l «Ïy†F #aÚfª‚ˆæA©S«F•:ö;Š] «M&wÂÉ+«°¬õ°­G1Ü. ¨…œ‹h|WO~êeî/z8zñòÙ*bG[)Ñ”ðYff‰‰Švê´x¦D̝QÈ{ƔÍ})--xÒ°8 m DîúC%  ,ö)ãëË .,Á0æ?՜¦!c}PÁ‡[EÆ ÔZC®ï±}.‡":,áõßË>¢øÁ»tâ-A@éO-â,ëJÍA~ÙÛöЏ°”R§QekÀ”Ó£),ïQLîij{ée& WFimëê)+ýeÿ]á¨omAñÔg“'¿‹'ÞæOñQ?ÉǓŸ÷Ñdz‘Ü¡æO8òEþ«ÙÊÊȏNçy•oöÊ+ q+à]›ÉdOÃ).²tÑZ»"¬ì“àý0ÏÁ(^xjSµ$ýzdsòɖ\º~¼ºã¾¾MëYÄ9HcȖ©b Ó»ùÍäºFd¿‹4LEm,õ¹lÆ·´¢YÞ¿°[Mçg#Èn†Ñêj>Ê=Ø´”¬ºÍaÇID–é9[pK¯%øEq㮚Nð´ӆbQôŸY9Þ͎I¨~Þós Üs2N y8½ç¡ >|š É ßzUÇf¸÷%ÖØVª60˙ÅgÔ­xm|SǑ7—½/²­Üax—Oš?µˆõLºmf—‘CŧO‰9›àÓ÷§—_OLz{I§ÇgO®ÆŸ†„êLÚ¶Õœx¾¥MZ”Pá»F{¸aÐgSÝu‹m! ‚Ž!µ´ËvWe!xš$Ï&Ú¸’Ç«${±ÑÙÚP©F¬ê¶=» WAå¼'ijuªÐžo´”Jf‚y ¿ä4½’ÈFíbL;ßtƒºõže–\oo‡ª9Ø:B 3cüí gBïÒÑ4þƉ§ø4B¬Ÿ FçÖ£N—·ábêsÛ´Ææÿ&ºØ-EB¥k ömA–Ý=q±Q7³ø¸fJ³bïŎ \ðùØÁ ¦¬Óùöâ¶ym“ VÑê|X†a#|˜‰öGKWŠ‹µoVv½JÜéõ*O«¯³?_ •0Waøt/½õíŒ~»-í®Ëü2ä_ÐQ9³p§Ü`|$œþù'?)&5›Vq•¸Éå”L‚ÝÈ&ücßâÒõ|°(a p¼Õ×#H?¨ØÆ,ì*µ*uVºÖ5,ïQLä¡T"$f½Ñ±vdƒp¯Û›+ÔRVmk!+à,=6Uk-";JZ4©×°¶HÆì`‘H &t˜0õq{Ïaèf<†õm…j¡ÀÀpbZðÚÌ ]?Ê×þ&¼{Sû¼HD '´pàg›&‡¨rÍ ³ý~èâ(‰„Þ¿2|¦=½`ÓøüÕ! ‡ƒQÕxÔó"8Œ>eO?èr9þW"òc‘•U¹r¼ÉäÏÖãæ}.<µ(ö¬í…kПaT)V¯Ïž²‡í1æXtds§W‹ëÅZý~é`A þ°ÐíTVÉp.V¸`ƺPh#`ŽÙMƒåá¹ep¾¸ ÒmË«‘]ÐGà dl‡d·¹Pz «K>ôhB‰H°uàn&/Áà{yšÎ—냭¦žƒh`—̤èeR~·ÞOÕhµX´ú„2‹© Îm¶F»P8ãðwTmô>ˆû ÝíðõB HAS2¬>V3Ÿsô´³8%4‚U‹ÄÐè2»®„õà«9¹<ìƒOÐÇôþ=÷TÿKŠ§Þ‰yÐí)Å!ÃN®¿Ó7úŸd?j~xÉ7Çf³=ökôͬÄý ßT¿k7ñÍ¥:¶®·# ŸR›NÂ \NqÆܖµÇÞ7žÕÁëƒÓz㠍V=ŸR©YÚ3§'‰22`k§P©Z±öCvŠ ¶~`‰Ê7¼î÷Õëûl±d[­±h@ükŒ¸è5$x¨øí÷A±€á×µbËa‡YïÆ)ÏÀ\]¨ã¤.l¨Ë2‘EòŸR°ðŠ-¨B@¨~ia*«ßdˆMŽ.́¶¨¶M†Ýäõ²/¿q´7geÑˍˆUÌAt´ÚÝo¤]f“O?Nji¦ô|VÛ÷‡džç»ÔêŠø›XQ4!—ñ}ß¹´BVál§f6Z&&\~ª½ÑÕ¿w„ýˆ{-¬èº*ÔUegÔ©Jçì‚?(‘`'aÀõÕ°ªÚÁïÒø˜tF?4ÚU[„3¥B¸Ý$&>›jÎÀšñ)€!N“ÇúTêÑ¥N½…DK{*ՄÄ0ž)0ÕªL8ìt q{ÏP}Fº’O» Ï[-¦ð{u1Óâ¼ Á˜‘c£Fî/z8zñÌMè‚pÞô½Š3ÖT3†}Þ½TíIT@£ÑÄË«Ð[dÙݖ²·o7Aul"hÕêCíËsï‹?\©„Ø ³~ëNñ¥ó_Ôèװ盧qZ¯.§C(7l0ÂxgÉ-˜ìK†ÄðýYÊb17՜%5ºÐ.u%èÖõýˆc‹‚ ú_;œåN|·Ç qQSVw1LŒ†::!ÌAN&Ãã`Z2ᝡbùsíõVŠ‹Zò·³3ç6Û#]¢¡çóA´äƒ¬-£,!÷V7å©êÊaïÇ]|•‡ÄF%yõuÕAú4¥ê£Ý0÷ëµo3ÉÍI.—ÛHþ²šVÅ~îØ &è•U¹r¾52gõ©“?¡L«Yh>žÏCîRԞåÁ8ã K?w'¯céA¥ø?¶ãQ €Ã¨¦€ß"‡3êPæ|êîªu>|‰üÙ6/ÁwÏ}9ÏðÝåô¸õ|:\o"eŸŽ±7ëú«“ÛQe=£áȋ’V¬ê5ë«Ubáܵ>z¾E?B<&Xk1te¢•÷H;¥â.ÈwÜpmðÚCcò3M«CéáËÕCsy žt~H!±~é’SàN£åò(_:¡ò(õØhðûm:…'?‘DÓú£ÏOú£Îƒ7Â#‚n àù«àŸÔ¥e!~e.N’܍þ"·©õ+ZžUfL¶'Õ¢.uˁ/ìËÓù¿T;H‡ãÁËì1íYÙߋ8^¨©V¯Ïž²fjŽAþüH̒ƒçv…õïìù ú2Ànˆ÷hvª «d¹Ï µ×H\Ù_ŠWªô›rêäWt@®‡²6oGr¡Ã’V“­Y8dà.ÎÛsµ¿í«Êò±8¡f[ ×[»>SÂR‘æyqÆ÷žÌ÷áÖ²>¼›×üvý(εJÌQ98ÖXˆ¯ùAÆ÷ýÞú½m–,‹u¶-)tè ÇXl&à 6û¬5l×!Åq»V,·xbÚÚe»+²)ϼx»P%Æ+‡Œ³*ފAº×íý§±DgeÑˌZ%‰ÌAb4ÚÝo¤B¢içéÍM9BÓÚH{žïS« &üÌD"¯X!ˆ¸¯Ø"÷o~ö5”ÅãdyGüŒ²oìe€„^Ê Þ ;P6”âÚ¨»VþÖc!Ÿ…•œùA¢9=l’&ýȵêVçO©R}]}™úê‹×öLMq<]º³×4.HþqÅê¾½²ç%®Ë{k²ÿ*vŽ«ßZ !wP`² ux˜¡¡ˆ)þöj’ë«aU¤…{à¤eqº0¤n·h˜ªTê,­t ÃU´³“ÎGŒºkÎ2,!0°œ¯ ÐTSG±ê)œ’±B›fQutë]ó ^ž5gªEÎx„ÃÊóöěҧV*uì-‹†lÉm&µI‡ŽÏN/yë<öaÒº» Ï[-¦ð{bÀ äÀªYUì¹Hnâ÷âų©–ëýNޗ³±Fzʃկ"Àgo’÷{ŸSfð_Œe9Â̲àŸ4¡CAÛk\ßVÒïóÌÈ÷ú^Øz]@“ERŠhƒ£LF1Œ%šûmÿþ뙎_½o·‰m»ØÆÚÂa ³¸EW¡ê~/;ñËhÚÆÛNåâÍbfõl èbCØß­6Îy[U²lûHRG¯”F>XM£QYúÑ#tB¸¶Ñ ¤¥ër# r<ئÏÆçj@˜di4£,Q¤5TØ„RSæ¶odµCZ%V*rUO«QU„²XVÍdV§öɹŸƒ†ögW˜7¨ÍbñvÆúõ/2#ù¼ NŽÁqw´Î¦­Ý3¤½ÛשN—]êÞx÷k1WÍìîo<››¯¶åž>țդF%ëI(„$ÑÿA’<˜k<Í·“ö„]Ž]Õm;Ÿ†jžê¡ëd–½¶žmÒä£,}²|¯œ!]òƒ‰‰Á“ÁØ&Id\ó/ÀéCúÓ2¾HLl¬ì fü¯¾éx\(ÖђFôÊ$sO †N†÷þéµmÉÑdý:>€Û+{&|½½M¶­‚Eoþ‹¹Ïԗ˜é5ã~?GF\FîœuKwã7”¿E×IYr®B_¤›cøþÊ'?Õ¨‘¥³ú¯Z…§¬]*¾W« †Õ×[Ržf÷1;8¢33Ϙb_Æ`¨£5êWgjQ ¿JðÁl:¥ÛDǯžÍoH<;©è„O>$‚Ów½[‚‰T¡*³AHŸùY€Aq§_áÒ,_zː|-uùí¸Ùb涞­/Ä¢¶ºººÃ˜Å©€?UX(Œ8ƒ5iEýP¡©q†™‡3’Šuh;÷tKÌNI÷Ö.À Ë@bl–\yȀép¨=Ï—2ÒGî#PÀ¥Ž¢;7êAöžžÞ8õ/Qb„t„/ÑÎ2{†;Sò’7rƒ‘ðÀ I£).a@è‡Ò^ҏ¾Œ4þ`óõ‚BӎÚO’bY9¡€æ{q»±¯í\M>‡<ªñœg†ã5íùü¶/ygï;Ç×mì«óeYë{ý[Õøˆéڇ=nõÖîz£ŸÇÀßrÿ¢ùø;áÿï6ü¨1ýc—­¶¨G5J÷ýc†D©4ˆÛc p‘RÛa]xòË'[þ•„­Äې1•ñ»òG m¦¢dqsg € cM=CR©CŸ±®¼7nYïȓ±m_[¢âìQ²¤í‹”Ôņ…99Gó‹²qoî/WÀã;’µ~¤/¯.Uª.3*Z -T%ۅÞ-œÇù_MBbÖú'ždœÕݹÛvàÞÞ¦€Â.¾µR,m}`ь¢¢i…yŒÖ…õ hR]$‘ïîoI¸P!Ûyª–¬LÂÁ”‚•jñPÑ`¡! †V|ÛÅȦ¹”Ëa{NÅÎ,rE°¼b¬ƒ"PUœS±4™Ã¤ÓÖe"a¨-õß$®á²9ò–XýÕÔ10G›´NàœÌ:³±™£ž÷‚ØÇÒ¶À0BM2~"L\ëQFÁ Ísi<²Â@õš‰œþ1R?èçÔ½7֞Ҵ£ïaüî{|5+æ¿èÁ@ì‰miœœ’y>ÈyXÎ%¼±9d"Ä¡ôo2¯Ì&fÊ¡8µDøŸòÛü¥Ky è,k³ p" |IŽœׄN¶!ù ÕÔÁ?u‰få@Qœ‚ì‹G9ÉÊ(¹–sMMÄÄË(³D#Õ>ÕtNÔ0Ú%òÙAq®\âšzày•M’xø$ݵDÒõUøõ.9ð§D†¶S™(ÕJýÃ`{±ïGw«¢lMz:{si2ØQìbÎ_“ÿÒ]ÿÁ.my‘£ +ó»p¾ü8ü¨& {½ö¶ßûϞÿ™ SÜ"û‰$¤“eD’%6@(• 1·D¬!È÷È®¯q¿wÅ$k ñ¶ÿûîîîî@h’›%™/×싶¢s&$¢sfq¤pÝ{å¯Ù7T>âíÍM-` |i$¢à¦ŠZZ ih‡‰ú¦©€ˆà¬÷Tš2œàø7"oôi8HÐ?¨8Ñéy–ª­z×V6ë3D~5Æ~‹©jiLåDÝ]gŸÝ9nwà#(2Ïîu1åæs‚.‡™û@^ZŽ ¨rq¼å¨é‘Æ1ÂiÙÙÇô_)M: £0ü.³­#5鮺4ßI”QâhNq—@çCÏA3óµõmï † ™5ø„!7YI“`°ÐÑpÄ÷Lç|yèÎæeaSðÂ6‚Žª¯<-²c¡º0+/Âx\~2ދΉóN—´âçé@ìçcBe¸âtNÂ"‰ÃP iºN-Ôß1ËñääW]šã/XdlÔÓ $ðƒÃP>ª¬¬} U>¼í›ÌÚoܝöšoãœ} ä ÌôíáÈú‰ó=ª>úgº\Ïðãº)ÑËv„t„ß?ž\%~§Ó‚‡ÏVôè´üÌ<ä](×8þs´qM>„1„ý/ lÓ\in5W)Tõƒçyp:UK=œÓ~¯ßÀÈ>Ål|”Pq§èh=9Éèc¡Û¬lÈô¹o3ÿ=º)–=ZKïÃn]"Ìí’Ý®ÉáÜËÒ óŽUƒ0…½О”ÙÏÃ9ðъð`7ÏⅤᕙð1`–ü ¸G–ü¼'£V|¨ô^ï£é©î»n ËER«D{ÖC2{Våßùw󡖈&8ø÷KŅ\oÃCI)óÒКkƒ‚)£5àLbzÓ¢¬iûÈlW¨ñ .S¡æ:ûŸìÁvGےÜÃ⫝èÖÛ#XíՐBÕêFú¬d 4û ê¥ß#wÞPAÒ·˜*ç&pH‘^_ÄÌÂõ«¸Wef¸lüZ9؅]ŠŽym ª†ljÊØ À} Y¤hÒo}®¤$û²ˆ€..QÔjÞæàHÃD¨>±¹qîê侀¼Ò]uHÈl‘Ç’siô»?·c…ÎÙâKÌØß z¤¿¹¹×„ûh”,Öësc [¡NÉ:Û¿PvŒøˆ6Jˆloº«cAÏt„ðcºü»² ƒ%ʺ¬/õ†xÝi Aã¯GÇ6+YÇòïÙ[ñí ˜‰Ýڂ8àiu¹T<+;ÞämJÇ(ˆ}vßf:0Ñb˜Ï)\æsÄ4 ±r8pgÅÎ5„×DðAH5™¦Ï]¡ îjc¹º2SY';¢Š’Ûx˜ÅæÂ6€!a›í-bÐ9Ñnn0Õ¥aJ!íu%ՐñÂB(¼N|®!7¹mo ò ŒP‚ƒ¤3+NrsÓNn˜¢íÀ!G퇴B_y,Rª ›eßèP–Ž ,bb2¹^ó% ŸuFÀD»r‹°x»=u„ׂàε[ÆU+okÝë ­Òâ´7)±« דת­ÁÈHRÒ(’0@S߸ñpâà ¾Þ#"Aò² vš`j²ŠÕKFIN>[-;Øvë§ÙEQ¾È¢‡Ɩqû/^èSµÒä|Stf&šŸâSç|U¼[$^à>?áxšw±~¸÷ºnݏQÞ ¿Ç\%ün9?ñ—  T-ÙtOã—H H|Îgþ¸K7îÿ#„1i–’ÊKôR[e¢\Uìê¿%&𿺔±v¡ÌXvZ!•€ÿ#–zF¡,f¾¥.%mn²¬^îÒ þWdŸ¢™ÖZã†R¾ g`)!ò·¹±½Øõj~f÷Kæos?c{6Œª•Z#Þ²‹Våßâp™K3›è±¯S þ à)…ógz$—i[kÚÛT»ÿ&\¯•¾l¸SŸñ·Éß;|ë‘rŽ£VÁ½ÎüMíâo¿‰ÚB÷E÷Å%ûⓠ(µM’Ì–ŽehýNÍ ?–zô?óU)q.Ù[þSà(ýÜì¿K«—òdm3çu`N±¾6õI|TÏÄê¡(M<Óq/ù¦áO“[é<šéÍ´¿†ôþô ›š`j³Èø]ì~ øþWÉ?ь9´N"ü¨CäÆ*"Ï͌l¿û҇`2ËiþKDQÿ{hú*#Dl £wK_‚¢0ÿ]B~¶°÷•¼ÁtûÏKÆߪ*͹]r4ͺãÞÍ¡¤+ƒ3‚¦²Fƒ½ ³ÔŸo΍AéLOR}›Ì1að·<÷sêé(5¬&¸B.°ÅÀÒë ³;؃±úü]õەqUÙ®2õw¸TŸKÁz¼í›ÌÚ.á0ñՂ´A­¶F» ¶¯R0?Õc—¾èBÐݺ$ª.;D%ÎMHt)V ù˜ƒ¸Wef¸lûü\oŒ<-¦ýdoAó¼cebُµZg>óc ­4°ð8KÛ¬/iälF²æ½Un éæÈ=JRPq4@cXœõæ×fؐVÐ˾ÒÖ-5tbÜÜa«J° {´‡µ,I ˕œí!èý z%¡nl4ê OÌO§[–@„c¼.jZ;¾Qxeö¶ëmî+F³Åj¶iv,úÕêHÂu÷Fº=ŽÁäòY§@[¶þ•‹5Ѐ=!Ýk8䬩UÝ Вˆ³…¤HČõšÏˆ·uѧ™€BKÛ(îX)îJ5BîßTý-©PPG(pxí´ß(n¬‡ÑÙçi`ª kmU ¶;ÄúÒÿŸ£%•¯º¬Œ «¾Tî©o€êÈú2ĚÓÙ4 9o„~ôõ'jŏV¤‘YêÒ«h]×Rô(jÈ8\ˆo‚¿jÖ³ɜ¬-z]Jub ÷AÁQG½d³6·¥``5ʔª¼³â¶¬3™…ëû£@gëõiÔ¤$"j DE­VˆžõÞë읜}0‹J5£#ðï…â|‰¨¢?Eñçù‘ÏS³Ð¡ íÂö7Ê0™¦ggψ|LG>€”ǃ经¿‹Ó&†]wp«Þ4³%_ŠGÍyÆËï 4r1˜3/d/á…îóMÍۖ zx¢‹Ár²Â8Eéøc/íÃ$¬ÉɚLo;2ü.p`œð<¤0Cžù`rözŸ1î|œ†Ãcä©o p7*]ŠvsRì®ñõø2¾s£åeP{ŲEî!¯|3pE1nïâÄ¥ãG¿‰A¢€¦ú¤tÆx±åÐÑ:|H»þÇVº5«ík=:¢uéêI¡Iˆ‚~ÙGÕ[ ±Ë&Ò¼OK<¨òÞkc|†e¡“µÅKH6L¼©]ÅSœ¸Hº²:z’ ö)ðXò*ÿ^IðQ£NÈ©ØRÎrjOOþ–Ÿ¯Óã‹Xsïƒ3t?.zPyb»ïgsð朋͙“gMYÔٚ¡;zHô^î]0•$#B‚hÄOíÅë)dúž§©&4Ö Sã½`YàÊF.8½×L(_WŸLhÜ aš£™÷„™h"ïŒR.{ËñHÁ¦ÆXþÍ70?<åÅHs¾G´Ù‹A¦ì\‡Ó†5̊®Á¦r쬖ÅÉÜÚwÄfæÓÎ Wt÷ýê6¹§—è£i‹<´mÿHþ;ôûqèPTHÊ>wÝùãdèñ³ì@d'šº¯ ób¨å¼ºÀÚiœx¬íªJã{»â„Ìn{\À€åµÌ̸{¶K‡wñ´»d\Ãݎ†¦ 7\díLµlL®2ŠÛCXJ°Øƒ1ŒÐ&nfo\hhˆ­¡Û3ú˔[¼—*zr“–®:ÇJcm_´=&Iî$âq¶¸Àæ”(jȐ&tžñ‹2IÝÏ¢2¦q폝)4$¤m‰:BòþèôeÏO6̹ùòÊ=ÞÈk0y¢Êò•“.¼,ê=Éy>’’‰OÏ:”ªá/"ˆ‚Ž±òt,ÿjþõ/Ã<÷H>ÌóóR󘴎w'LfxwŸy¥[Z¥S+H™ìa®éž7÷Ý*õëW@½Vœ§ u™;Nˆ]Ü ã‚lµÖû…“à}EuXhØ䞵¨Íõ/.² (ž„ÙêO ¾§èiåÍÒ]…8>¹è‚“ÄC¹DÏò—Ù;wråyBQÕ ±NÊ+'ÈÆTñ±ŸÚ+ˆDo‘!Ë^2›àš•0©ÊæS½ÂÆøòhÔìÄC°«¼A°.LSyg7Ø×±âf²Ìy. :®> ÕçlÞfÓrœŠÚ7 !@­$j;ìo´Óx!ž,ÌBŠÊÕ †\ºpIU·~ l´~¤ ÍÙǦÏ]¡šBS›£03ËHëcƒ¿g·‘‡•ôRs%ŸJõŸ4S¼ ÙF8:{£SÃ|ÍÍ"/ù$Z;§âHiT±IÄBLžYÇŠ¦¬€Èœï‡gX Ùux—›i®—X6—,s!òm gÛÚ ÒH®øv‰P?LÒO—hxùvŠ™›a -m¦òm k½^erÀZíÖ6•f†0H’4ÔқG‚Iz˜Ô)´BQ‚˜ç¯~¸÷ ÛÕ`Šûaidí¿1øÒào2 Ùlø4£Û–=ÑÒãÇL§ÜÔ®¤{]ÁÒþ š <Û $)³§©2vZÀJ «°'Q®Ž½åØXVM‡»r:z‘&±è*;AùE ˆîLZ4Sƒ“‹3z"h~Äðy“=8ŠÛ3Ecđ$.äbE6«Q§³ô¹ÎÕ6šY}ëüŽ»íÒ'¿FK­OÓFH ?ÑFLTؽKˆv¬}V>ÅÔRjs&sPOùåôÂS–êPðßf—bÌR` _l-zÓÑn”˜T”±KŸ‡¨NÝÌ"t0áå§_ܞéy'»ÇROji%âšGÈTØñA—93Åä1s›-Y5ëm Î酱Z¯Z•{(uµ«ìuu«¤ØÉÀ2] Hy } 1ºé ¬ªØ 2"-kìÕ-Ìlz _Õ¬!:/îêЛú´Oöuhæ9ñûRmŽž~ž>zn3˜˜1Y^àì[—59r˜¿þß†ÚëÛ§W<2¶$¤ååýûRo5>§³æ÷qäö©Û2 J™rd£¶2#(èÔù¨a§Ñù}ê|rߦ|h?QjˆòG/ž£Zôú€õRÚÖì b f ¹P|¥¡†ãªüÊZü5%Qú’ÎñT—œùÿ.LøïÀ,™ºþ:Ÿõ?¿hˆÉÁ ÞD´Ýü§ùm<é¿a’á6;ӑŽAh•^•ˆë–nWîõ\a@t1l¸`0¯­W©IQ-'ƒËONDéó’5Õf۔ŒR EÖºSef'2sØ2!„s%K±›i[Tr›!Dæm ÈøÚtR¬ƒuÉ/iSDi[c¸6KäTaªãõY†ÌöZã¨>ȕlÓ«Gf{L‰\Vتëu³÷š¼Q[Ù¬6%—™\eéªp¯2A²»+l®FËâؽËð=/t(Ò©±Õ®ã„ï0ª.Ùc{ð Ê:·eÀ ȯ¶QÜ°RMIåxƒÒ ÙCÚ&eØC荍òG¡¿³Ù´1ï­¶þ•‹5âCÒ ºÖ0qɯJε:’QÎÐIHæõ0M†®ß\¹CÄ'Û0^¬‡)P„¦X|ð±e2±Œé)ùõ?ى©çbÙÚ²f6”ƒ(8 œ*³§B*Ÿå«[µeS_µKrêÕ™ åZ#?lÖ®rîf°½Ô¥V% Q­–ðaUÒ0‡NÏ].ö"!›FgÀaä”DI2¤ŠÏV•S®9ÔÁ‰fö\ÊÂQ5dJŒD¬Çï£NºèÜ~ V¢¸Ô³#úŽ3>ú9ºWíyJ®À‘¾ó”ñãÀ}=™/MGžEeÊ.“´Q3x1†h‚Jªì/zâB¸ª¤솀Â+Cí5q²ú‚ œ 0X&ÎçFÏ©ƒO· ½èÁ@É)4äà_4ðf™:HGÎÏ坟ä\¥ÿòå²Ñ.*þr‘PJß/@G^€bm{[j—}‹>—ʼ¹òà])v)ÙBONÍ-­½I1- ýˆÈÇµ²‘m>:ä\£¨Õ·°w Ï#VÈ­ÃgAU[ƒIþ—6”ÀÁ@ϖ³üÕZ(ÛIÜçwŒ@ÇI‰ª<œ{zœW—S%'x52°6ϑ›Sm,ºcÕuU¬š›9žè¡fÜìC…ÕÚ&«¹p*j°eê”m³“PçÙ«l[M,¾õð¥}°0„ünD÷L'cSŨ[°Tax=½“~y=–ããð ]—\þM{^éç×Åàwõ8‘µ|NòÈJÍZ’>·wRmpd·9½[m¿öæÀnóP  UӍ6âa¦‘RMÒS¶a] דˆbÉ{ȧ¢ ?ßûÞ$“âRI5[ºìµË¶@mx.`(ۗpYøwß·ÃÝð:ðM÷km7žpm»×©3äëc#ԛ¹u÷j‡–ËõBð⃐46žV&>ugt'ihŊójƒ*~XR¶“ñ¿µȌP&·¡dԀ NÖí³³eŒöjµo)¯|™¼,k²ÜѨòž4©ÜpÇ¿ Ë¦Sqˆ>¼QFåñö'ײÒñ© Ú.ëäÃiïÙƲC³–&Qn>fP1iŽÊhaÛÝTÏ /—ÕKýIV¼(UXEfû¥¤GàpOt6|¤ó®1 °0¼Z™ §à®A’é_Æ>ºë¡kK"Ö4/JÁ. $}ô-5r-‡é[þƒÁ[}–Wµn½[kÛc̾…†´k¢mÞ UR‡5²ø‹³fn¿¥…1▘ ðн§‘í2=ał€)£úèUëÆ«>j¥Õ…$`\Òì÷…ñ“Ø\¿Ë/Û8$/ê½}ûñæ^ñ=ÙT¡Iëʶ Óy.2¼úãºÞÔ(ÒŔ¡ùÿ0øsä¡PvJ>û›Z1IæÅD“_νmûk¥çÞá­æ®×Ľ›)&vJtäÒñ'âI0û&‘àg¥aY‚Á é3¤ƒûÄTlF_äçbe«`_Ô>&¿s“àø|xL"*µ®(¸ðT»ó=û@pV¡B•=JuN)Ço›çç*£ï£æp:פn8á"b*‰E ß(`l÷ïiü.ÝKÒ0žº]«÷¹>‹Ÿ-òó£JGìKÙ|óˌ;΀Dñcô•}Ï­FµUëêé×Ö¡WN–¥=Í:uiQÓקJ-ÊtêØܧÑ8#~?ë=e42s ™ë6Zšƒ4t¸A÷ ŠÁèm[Y6ÝZµI%2jÖHâÔ²ö][Ñ5~‹t=„—÷5ºcºx/ô¿¾þIl!•ÀœÍVÀÄÚLÓ>±yœKJëa’n;÷†,lT2U I#™»xûF(ˆ ‡\ ¤Œ尔BÕbGÊÜV‰!^¨)4=Ö˄*“ÞÑìgÈ~Ѝbӕ4LKHT¬è« #»*àÜaœäøêBéýÊ Y¼bÕЪQtÅH5%1v©ÏŠ“s7kú›.§Ó/É5m $.ÏBŸÕ§Š%ý$“3C £¡ä²êliUäÚJµ.IvYÝdI–°î¶ ;›žÅððpC@ˆD†«%C|(vêeþ•f¿J÷›p0_«dÖ"Ðo—ë…!mj^5¼j¤·[\3z£ªµR I‰èþ¶ gøpöÖ• Ò0Lg¦ÞÓržŽµeu÷…©C‰Ç§$öœùqpƒ³ÖŒ¾FÉy¿CƒŸX& !±ÿèZpŠæóoúqâ%`侅b/ÔLð=‰gF¼õ–k#âx—>&ݸÏÂ5¸2Že«F„Úø£|Éɳ؊X?µ5ÖÕÎS'o¾Â—µƒ“KÈ ðÆò„?IˆVŽ®Ll%±Q ÊH-JIz{U?umà¸Û¼xã@Ãå~]~kµË>úîëðTDß-ái«­»½û¶È£ª ûY^Ô~Y@H&BV.WNFiò]—W§¹p‡ÖDzY8ñ … K)R îØ/<6;ÈÚ-•¶ÓYMŸ‡ád|s 'ÈÜ[]XY%£70¢lÍÎguokÀ _´5Šâ5¿¸Õ»[¢OnJ©¤²»pµU4¨¦©g"±¨Pžs°îoî+ýYåP¡‹<©´q lȇ̓…²¯„$õ¬‹ïÚx0Nîqg*ƒI¶ô'¾"»€«‘ÞèÉvQìöWiyvô“Ùß`eÃ|]¨`B3VוqNóaJ,åm³¿6CÝ)Ɔû!rCi»£¡´6~[ÌùnÖJëØa–¾·rÀ=‹Ä¾þ|«±¨€i²Ã2ù~¨Yþ;EØËO++—:3¸IŠòíw2ŽXÖ´q¬h|c'e(ä†þQ¿bðܸiԏR|9š(§Òëš4Ù0À¸ÍêÃ±±:€:!Øvëßk±¯|¹•.zñeè[IÜÊädï—(h4ÐaÛï¶ïÅC½Ñ9ã#|•ž¸;Mò TñRÆQÉaÅ.¹A˜¾–|áhfj0%þ •,l–t ‹+ Y¶»"´ó㾪zK&ªkùØjÛU ¿¯¾X¼ãã ©”St–Ù“Êþž †Ä…Pgˆ±<™ƒÎdo—¤ƒ¶((õé¾O_†c0æ M\—¹‡dB÷eê„Ç痹eþ#ö/€¿!ï ‚°Óü°1šJæÀÏntïyé{ÏKÞz_øô¥oøz˜†‹gÏÓ™öë9EÒcvGT6rþeÅÛ²wÞ¼ŒÂòЏ3ËáöLÚsCò̵=›â6¨Ø˜“ëŽëx33¤ä9ž½q#Ñ͇œ¸MÂtQâøœò?üç¤Èbq‡‡é?ÌõË×pÙ¼oúJ_øñvï;tD4ÕjÛ-oî5nÖè“Û…EP¹JG/ÿ#ٚhf=|7ß#O(Ô¢ ùÁè¾ý§€ÙNFo(À7Ã%SV-q¸7ÆTvZÃV)|Åú÷ˆ«ÄÃןžNŸÚ»Ê’Ø©B\@r) é%éÆpýՊonGàoŒiÿ”aùuùˆ›,ûë oÁQ|·xà{oª:U쾅väk*iQ’þ+ÿoõëþo ìǼ®î€( ß㸓ÜÃ!/\ÀÓuÖp:/˜¸¼îbà¡ø– ”ùØÈGü Ôp:¶KÜa“ŸH ™‰úð(¤04doüƒ!LQüÑ7fâñ°²;¾H3hWWñ‰Nxp-$ˆ®…R‹… }†ÆéAÊ1Ÿg£7ç £‚`“­±ÁVµ[·†ýùrK—Œ‚3Õ=/IØFD=“„ß?ÕúC÷ú:ü¨·ósÝõ‰¶øæ‰?¿Ô¿îK÷ æÝ*c8$0x .ª(šñÝà=áw{‡iþ7÷»€à`ێèäwYfVÅ®Õ)–Ú¬®Ë-Ù+­ùòûòSñhÃXÛm¸`+×Åo’“Þ·r/}ò¶ù 5ãÌ©Èðð•¸&X9–¡xåÂOP=ÎLDƒë™WÈÙ1¦{ê¦l8LôÊãzü#¾„[¸äƒÛ'œWu2A,X+cA§[¹Ë­Üµõí<4ð¾+gáØ¡º€ƒtŽ ·G¦g Å; /A†Ѐ·“™É(ˆ_ ä¾X3Òဏ‰°•‡Ò|`äz¿ g3áí‰ób#ç) V2# ˜ \pEʼnòãȃ¥¢6gÜï ç ŸþÙ-¾pˆM îÈzh7ãˆþCÔ»\Íñ±DOPˆä¬ñçMðø…ÊÂó§,ÂìÎæY!»¼‡'‡ÄŽ©=ÅË°ÒÛ4a„ìÇë<XZtÐÿžŸtù´l-³²tÂ루˜šö¦ÅÐÂè,Ìô‡0Ž%âæOs1˜çäìБýȤäó!‰ȐFn‰(GüG¹ÿ¢b»ÜÊíô=šPœØSA†€”Ý)Ú¨…×cŒV(¡ÕŠV¸ù fœX†ø*QtpH½Ö@Èáª8µ?Bœ£t¾R±â3À¦D“›µ+à§"Y¤«|‡É痐B-å$X(ÑB¾®nù…©„Å9ÊBPtrLÊ ¢‹³3t¬-É\³Øku­†Z—Aª Kgb–Ķ—Ýj]=‰Û,P¨Å6šÙ攲[¤_Ù4Œ+3ŠGτÀ>𳪹…2‰AÖÃ9Ö cvtèpÙèDá/c,|$yÏõGÏ1ÏI~xÆb¹óÂN˜ÉᖗٞæzoF÷‚[²ºúb?!ðÇï h| ¸G 6^¬ö3qDÓû6da–ÎürDl\ë•Hb¸…)_µ‡MéaÓgþ Cßiß[B—íbSºX”õÿ%ï¶ÿ­‰!Kö±&zX•ížûúؕ² ?õV½Ù­U¥rª”Ý4¦éHöšŒpIՏžËûÈ1n¶W «G®y^脧 2¢ã=ˆEg±›ˆ€ìðώÍß?Ȧä¨Ìò³¡’3LžYxâðÞ/ìO˜àN æÌž| Á¨i\—ƒ5<(× &úÎ)“Ä- º¾*Á×h™÷g2 ‡…ò7ÙmÓ ,©Ø*$öÛfĀ·LØݒÙϖø^ê@E€°#Ô¡2³`Ï%Ñ"Æś’L°]!8nIá†ßÀ§TC„›¦Kzðàf~ç«Ÿ þ^̑+X·VÕÏVH¶?Õ ½O&ð5Òʼn҆©a|> z{tGÒ"â͌ L!$êè„ùëwÿô1–©>GXƒõ·ÿcÀ&ªì ÓÈÄ÷I)¤“…„VŸ$}¨”·u6˜|‚‰ò+lÓº^î”Ò°?Æïþöût”Q)6“qÁ‰”Òmôõ¼'uà(¼' ½ÕðQ±Á×°{à.-Á˜¶&¤¹'Ap{*Š.5ɀKpåü ¹‰£»Y"m»´åQ/®ü­Êóüè}òڦ󯻧ýw¬Õ7ð(³«€µ‡ j±=};õÈÿoK€=jd¯N¹½°QÚ՝sV\«aš¥yþpg‘úìÓ'[kŽ^L¿:½vÚ¦ÉzŸ?Îôüÿ8Bär$Ö%;Kæª\Jö4ƒL'ÈËd¨*m²ûâQڄ°ãP&¦%.X±DÌXÅۏ¾ÓĪø¨ºç¡aò<*a¤3ÈCÆŽ?Ö)ÀëÁí]çk‘è#òÂ6áj5R¡‡ »Íj² í%7^©”Ë• ž$5\X¯Êìjª”Ê¿A¾Îþƒt€i‚N¹« ‰r…VŠÁ²|SD–î…‚?yôô/À™{F ­…@¬†¦ hóÙϓ5ír°xnœ'Fîâ£çè ÓL$”Ò™/¥$ÚÜ}x ÏÐ.U¯qzxiÉM< ԗÂd”åÒ Fȗ*N }aI™‰'Y½ÃÄ6‰¤ˆv…ÉËdnU<y”’6S,õ0Û0æ0OŸ‚m‘xr„páø7;‰3“l¡øˆ)¥… 0Î |!‡éZÃäLjptáË?,Þå?—8Á tÅÞõÍ&”1zYùLdbF#§JFÛ%òfBÉxíUÝdàb Ï<ο¢v)勡`kÜÓcºëdeÁUæµ¥4Ý;/!m…³»m°óUjƒãö6ÇÂ27”ر0'“M› ÀŠiJ™ÓÜR4>ÛµU&©²ß°ä£EEaòË$ Ôfpx¼Gø ÈI4œ=ué9núD‘%#Øwlǝ§D"~©ð»ºGb¤Êé±6ì.k26[3„bYu3±jpûÆãɏ&$vã˜|ø^–RRy)•ž°CG‡uÏŒ”`8 Ýt½”ÿÓd…gÿJ~äáE„£KPÌčâalŽø‰GãîÂs ԏËO¿ 8JÏ»›0 ‰)%…œê@sÖJ+ê2÷º“ Ä8‘´982C4>¦`žAs!$ÌÙFæJiYˆDQ¶£Œp””q=9u³%ÝK#™‘&o¼ÛUÇ`]µIì(+TÈe¢ÒmâP[,²V­Ä¶ÖA¸8q›®$~¿%YsàC{_}/®ä ëJwof*’Ï?d£`™IFdž‡<Èç…â!aŸPëëNƒné2ÚáYñeOà§Uׂ§:~ÄÜ6ÅDÄTڜúXÜx#À¥' “°†"‡œ.ƒ "1-ÄÏ?ˆwú=#/¹gŽ¡âx ˆÃI©.»”­³œr†/É·Ltp>;zf˜v »3b›ƒ¾»Çh¸¿põðwc‘&†fڗӤÖZ]zLú-9Qފðk¶Ob“`µ`’_Ôw£ëR]w€Ö_P¶Rèèól÷z5¢ÑMl~ÈýÄ76ݹ Ê@­²öÈs˜2ýøCEÐýŒ‹nXøžE—þU£„iƒ!KþÊыÏ#Ö]Ô Z%7^©”Ë•$l¯øYW¸Ä2¿T¥øX…/ˆTÔ%?I‡š«Ts `b4½¶#éóûÊWÒ¡òIüz,Ö'¸Ÿbzùd|Q$OêO‹‘íR=î¨ <׉B'…ÿJÿÍëjø`ûï'îOԟ²~uÀ"æ ¥\ŽQ'Dõô/« LöØ[©Ì¢X¹ë¬M2­<€Vœ¹°DQ’‹>•ˆ!ÚŤOCñFÛ¿´—ýÑêKê­½‚V¯=§¿ª¶³òþý͸?óLˆ¾j«Óyªð{‘‰B]çm½£¶ö®—oyãSúiw;›)‡»÷òÒõs”ì0/çS• ¦Í†àÅõTä~«.UÀæ¼ë•@dGˆå2Ib!Шx?LJ\½‘¿d5gÒ֦ϔN|å†Û³ÌG«‡ÀþðýWyØOD¨'uHóÍT µ]j ©8 J$"ž3ô?€9^d:ÚøÓò­èjž³=ÜçíZÇÕàš–%7Å4I\Ê`Àî®V;Uw3z®ó«ÖsZƒRƒšn†ÛM–ß%Ìú?-¶ÃÍUªGººR÷…iÏ;MàO…‘QM)S.vm»URj‘°×[ÀitFÛºL¶z0:g£g¨è+;þZW8ދNTw¢¼í’ ¬= ¶.ûM´á"qóá‘ʏ©C4]sаø"J` ¶Ì¶4›jœ,²tžv!:VÚf{´åQ" 3,j;Qzn× ´t[v›%Fç„ݬÔJJ’,kíΆúDq´ù'E‚Ñ6·5V4›ì¤+[N`?¨ŽÇ[kÚÞØÖ F{U­«óqå†ð´Wz™¼c.Ùœ·7—Œ}Ê´]¹ÜÙòärq¹qf°¶píkvܬ•o„R–^]9Aæ±Ú[À;ôŸ³¤œ¬ö`gH2° :*Íl7I¸KJ'hGöÒdGa8È/Néáäø6Aëdp$Qg”Ù[W9"¦™'£PuY€ˆÈôâŠfÏqҒ(ô‘(§Ã—-ÃÒ=;Œ+O+¥"餪÷j -C%4- X–±Ø½-"¶Áµw×8Žkțe$«ŠJž5œ°Åª_œ½Ùc˜ö²€ÌÅ;¨9½“Ì,«hï /Ú7ɶA•‚b\=}#„°rº–™Ë/Ia+IIʋ"rìhäR[›9iâ”áÝo …ƨÔ`Oà¹Åµ,±?®þô/‰ñ}ÊT(—ÓUŒø*"w"ô ì…h‡·!üäýäuÍÊ(ªXg ¢A/íÀzü¸|HVèªúþТÿù ãe,ÁѴμEkKÊ‚£`€SãRф7‡˜ãÉ¡Gˆl`Vðà l)”*#Ïb„µ X¥l8Š}ÁnñØ)È61¹ ؜ÆrâôybHXëwÿ¸ãóƦsE'­K0E¡$k ž‚çX~h?xΑn . ô‘yWy ¸E"ÜÔyÚõÉSVÐèâݱe¡^ñÐtgñÀ¼,QZKç•]Эꧧ*Zt˜ý¤½ÀÕ÷ZÈìչʻU6x,‘‹]}¿çÐ]…ĉéòNÞ€±þà`®z=˜çfjfÎΣ)Ã[öÀCR‡Ðý›¡»Å,ÐtxÔ¶m‚=¯ñ? Ã[ìµÐN‡e¦œªÙ›aØ8ˆçïÅÌú´e-áØÂMèšÿ]¬‰/–Èn¤m$ŸÈå›A‹ÄÌÆ`ԏiƒò6ƒº^A¥æ¥­+ iNÛ4ø鈈EÀOž}uý’¯ísí±Mââ£QƒS…5Vœ%¿‡ÂQü%ŸÂaü0xëIþÇR“V#ö‚*¢KÚñ¼Fèw‚pSc›Ï6ØS†=3Tœ¸ÅÍÊHŠ…ãÏE9è!&1Ñ©EšÄ‘5!0]A³…~+šÂA ÊòH¿t½ÏõKœþ©kAo%! Pë®ïGFõÜMŽ¿Þ5Ál)Ãl|Ø­†ã"[ pџ5)âýÔòQ•4Á.Ӑd-K,,\k09þ8\ vˆ˜ãÉ¡DL-Îã Yv‡‚ Dþ-"ÒÞGÛÎ̟9Š›µˆø´Þv±Ðwù—6åã Ï—87|mšl¨kä}²kˆ$_×‰PUÞv™*Xx’>ß#ˆ»hiÀcùÔ𼠌߳„&‰k!‘ «iÁSeò Ý1Xr™§é3¤^‘çyÿÓ²;53˜g/!JØoºRø鍲à›ßtPwãæ_ù¥¸¥ß3ŽÆ80ß®6áAFàÚ~‚ À֔èŒ%R¾j¬i6kIaՋâ¸l}öúþÐîÿú1иPø¬Ü¶v#°ä÷$ {Z‹c~*; ±“Ï‘í’ GˆÓ"ÄDï:.Â$ž5(eÎWm'÷"’DD{ˆ£`‹ü¨¡ç™“Eu{L /܊LH´G鑣"þTxÌí¢¢äÿº*†5[H«`ùQaôÅ ²¢ëŽø|ŸõEQ’.;í¢7äEXô2OۈªŸöeC’.²¦Áø‘PUf/ž´Nôí@Ošp wÑ@¸—#ï´ë†EFhµXZ†Z8˂^ó77'à«Xyôaq"¸ÕŒ 1d-K,K󗥏÷sõ¬s³‘˜jp0õdžêĀ´û‚rUÚ¨!å®Ûï—s6K{%©çÎÏ‚·½T sƒRH“%UÕnH#àˆ”“5Êÿýâ w¤,,ŋ´K¶+N´à©²ù9ÌÓô™Òl‚#Ï:óþI[û,!œÀã8ü«¢0×ÂùeWܕDWR$Ö®¦d4 Ջž³½}Ðó/k±išWøÐEkëûEKükïÀSßH¾U÷÷¨¡(݅¹ÂòÏ0§ aRø”œÂ™^B5 ·ÙC졼ÊçaOÍI\«T•äÅ%vˆY~’µÆÀ±†óÌk@fü àKÕô!„h/G9UQËR[G1jJ~rÃFD”阬ßz¥³sÍD5Ã9ŒÝ£-Ùzˆ =Þû6ۏýøô^Hi®%$ãmJ ©¤Sh’‘#-”QC¥óHÚQ/S‘èãwÿ¾ø’I%$“n9’9®Ém¶ÛÖðëo»‡ .ÖÞÃ^݀à »a€¢ø0Þ ¶Þ 7ºë¸ ñQ·ƒx·³x;ÅÞ=øBô{ݬm´Ìðß’0çɚé[·GTå„g dB}ϼ mû¡¶ûxt-Ñî·å8õÃ7zNXëWÔJÑÇÿÍo4ßÒæ©ÿÚFpýŒM~ìKýœ{K„ìǸ̮G•šõê§ÒŸ@ŸÂ¢½Ñ²Ð½EC{÷–^;*\—T3Ö«w‡¶ÀÙº.à Ýï£èÖ¦£jl(ÐåÑ­IŒlìJüiC¤§j®ª2eT£ZÚR“µÖHò1´íYê½l«zð2/¡r ¡–ÓK-J“GeEš 2mž\ŒGV× „Š™µ_ž ×Ó,\ö؇R‹Ø‹øW{òìîgä\ð­fþU¬ÞúÖõUÚmE–LÔ¡>^(8˜¸ eF½ÂÝwâoƒŸs~¶°ì,­Ç`Pµ@¬ÃmÚ«ì°q‚±ÏoLZð{2´ês J¯xG2¸Û¾ÅÛwÚµõÖbâ‹&äpƒÚswÕh5¨_;©NÓï víà]®²‹ÝX6v=7ÒÐúÎqhŠƒŸÈ⋐ºSÃS89úå”Z_X‚Cn4Øð[ é^ð½u;!ô¬5ÎËÜ<LŒShŽ,»IÊB¸'•5¼6Á)h`%ov­j€Âö­9H‡ôä&Í-ú§­VØ©u¸RVÆÝ¥¼;jlŒé²ŠçîmY,l(úPŠ J¬6e¦À{Šàò¼Æ(ËùOŸ#B'ӉŠEö*ÎÓa%âÒy¾Çp(Ê¢£ZéY¾ùçˆùt™l}p¿M öö¥[êUµo»!j*½ÚŠ²Óg‰CÆ ßeŽÁ~xҐOÌêÒ­KZÑÕ,Ú¯E38’5+YÔµ|r'‰:äÉÜPðAJ2e%‘5p"I¡&Tœùñÿ验¾\ìˆ:cZ•öI'ê0ÎKl9Ûë m £ƒyNमüÉÒÉRG‡t¸"y熕ºò3¼ ƒQÉb?% ú¼½£cù“å’\‰ø*\½'ÈT$õŸ>AÿÖs4}{÷€$>à£ö€J?ä&¾\ÿè‹p|à'ýÀ&—^«“Þ˜"ÈuÝ]1ä®ëF>t q9äc `yr;Ûa[¤Ø‘ܐͱd;ˆ»3=ÀLÿFG¾{<ên6*L¹Þ'Þ!4yê‡ ϬºcÙS ͝¤„<³mƒ¯Uå!›Ñ3¢q°=¤ýË®ÅÕvwÚ/7|›rEvƄä“á*j¨>­CqÃ*á'¬•%j՛GIê2ÅæT ®B% *H"%W ‚ÝÆó<%9ñz»'@™O?è‚$ÿ*Ô±öšª,Áà¢vZÃÕ­ײh”$z::s"»':€é {þˆ-ŸæTÇZòËI[>&˜‹òh‚“xlŸ-6 ‘ †îõ»qzõSy凢ñfdöbnaSÔVôB­Ñ÷Š±šîqYúÅgCÊ+:â³õ É­Kì̊ϐWú/Ê%¢.Œï÷$Òëº, ŸÞ,Dk¹Åƒë|¢À8°}BÀKPû{«¶+Ž]Y#©Ôk[Üi±à¶Û ’èÖ®§d>\çeîí9·êӄɑÎBSÚ3¬ÓIñ˜¤ÅÑýã0F»œf>±˜›å‰¼ã1õ Á-CìŒJ®øÌ!ÿÌ·ë ÄçêнOøŠiR«^gl¼¼f\kùÆsëɞQœ™Î3ŸPÎ9j`ÏåVöƊjL`ÚUa³-6 ž¨¶ÁHTÇq\o¡ßsæwÜ/4SI:µÒÿÑzq°çÌ_ë´<¢ö‡8½ýB÷VÂ`»Æ©í‹Ÿ(°"üš ¦á²{Ã?öŠé¥ß¢ŒQ^# À¢Øgű…±úDôÙØôßVéÎüB<ޕ\£ÔQ•0;AŸè0%u8û¼&_ˆ>VR¾;ž¢l«x'7œ6ZŠrrp s0ÃYd[U]ô)YêzÓ´q¡ò2± ¤}nà"Ž0'r$“êvúW…>X @‘A™ºh6]K 3r…“bšLmnÕÇ @‹#”,™ŽÌÐøà<ϖÌú 9¿$ ›Žè!ñÀ™¿, ›ô@’9~H; Ñù(JwËg}'GÚ¡- €@‡ÉBz, Ðú@j¶6ˆ*ŸBöO'Ápµ¼áÝ=_ñ{Å·‘n` ќwØêá;†Ëúö_$ùÈü.ìÎL¿¼N¬ÏW/äOˏï=VïÕ_e‚ã 9ozø±Ê®•»tuR:¥›Uè¦wnD¸. TÕQf Kõ…¼3‰2µp«tãa…4ŽŽ˜;'ièÊx±/ý¨’¢CÍ1 ù<¯ýFÀ£im…ï¬5¶†Ì³yNÅ¢5œïÅlNl7û‹?/ç€fy |^7‹‘àæwÜÄ3ÊëäÄW±Ãžôo{4êÔôN×Y#ÅÒ=!›óBnøÄÑrÚ [.í‰F„¨×¥᳄ÙTh3eZ¨w.ae’tSg²\éeøØ"rî:˜ :L²Ã2Ӿ˂üå ¶p¼*ئG ( æË©â´Çb“CÃ|Mq\¾¢÷‡tGm2Æ› n‡‚´ä¸ër·õ^îû{‰·6¬1ÚSäpGÙS4$ƒ îï¶-’²g=±C­ZiuÓÛ¸x·ÂÈJý‘.Çb^mlù¬²r{{zøm°­Þ þ^³'ø5|{`·8Å êùå†*N XbÃ&ËîJçÙX}ç8ÙÊj.—náR¥+5–q¾)M–†I@4WËnÛ @ÁT—PÄÆÈx‹Ø$4lÝÆ£-8Ó½m›£ä­ýÿ5aGAÆ_ÇR¦òf©79¼/3ø*]ÄæýMã\|>âC‘¿âªدæªS™i(¤Ÿúj€©o%N—ã©ä4øé¤ÆXõ5=âùžoÓ¡¸Üë7óS©“½ºvĺüTîãÉI…×ÆÉjÓߧ¬kõ.¹¡‰áj壾1 Öa¦ÿP„:—禟ñ¦’GŸÈü•§úº—/ª¸ÿU?ÀšîT-±Bܞ¿žÕñ­]ÿcôûžY‘…Ã@b܃þ’0=­”¦N§OC>žŠsçMÒÔÏÒ£:f~ž”铵4´¨ÔÔÒݑ(KáYc~·Ï_«„lîf=$P™;¢ãïìåŽöþ>&.=…³t¦ÅÑpcůŽr1¹î;‡¥<=3Þ$ÅžÞö sèD˜Ëƒ!1d5ˆ‹£r§Ð¨H”(Œ^ʋ4<¨gԜXŸìÈ@×¼„Îʗ.Ò@Pp‡Úñ›ZCo¥!á0påE3øÑ RŸá8Äõ˜’"åEë'Š|ùÈ÷Y¸2œ³´k¦0|ìyÛÈL¡ý‘@ÿ—I‘¨Øê®Ój/p™Ý%¤J“^-j¶±FºR}×RlcÃ<Ù)$cg*Ô‹)Æѽˆh“ÖJÃüõvNèÀÌïâ4ʛFÄeñˆ`òÁÚ¶*ÃY\0ªêÇYy£9«}<) |¸´Jt†ðb¬,¬j¦‡^| —ûVWl•s>„Uuð:Y*ú&¹œìH3å„ŒŸ»XkÞnø`8¥Ð©ŸrÁr¼5ˆ8 O ÀëÎñQß$`ªÑlÛ) xØM ÙU¸Â:hÅ%Oa†ÆÐNŸ†oLCóÍühNüà䚵l[J×0.´6|Y¼ð`$MbâåÀLšÁÃÝÞÂÔa'»¢fhö=>gLRd₍S¼.…AÈ}±#̈́›œÌAbZ›L9tJƒDŸÇ8‰¢lPÿv¬?HáóªYè¹e,¤î1½¼œ¹ñ ÿüh |ä­~¼gßQïc=ãÆkñc1ÞL @nwRÌÀçóBƒŠ>@µù¯k¸_0ع¿ºêx•ìÓ«SÐåZQ­]‹ªìîr•G´òyçγÿ³¬€1¿ó:¾çΫá /ã ۚ KÚVk×µ˜öÆ»~œ9oQ¬AJØQ¡Ë)ÔàW&1ÄÍãï!ÃâàñùºâՋ6Bg™’’ùSØ[aÑÔ¬]»ãN¹Íĝš Î vš› Ëȸò Áy@²G"«„lîëu)ÑM!z2EœûGœ)>ƒÚ†=I‰BTF'Q&N$2u9#9ÔÖw›#º™áTµf¸Ž¶•d©&o`A3¼ê6©kQµ(ÁAÔµg¨o@é0w¤€ÒѶ/F¤xºåJyúÉZHNmFÅ1 Бœ FÀ£im€ðë m È ÞS¸2:,V<ò&ȋ#¹BMz4µªØ,ø“–ŠÒìŽàQ)aqƆ±ñ<<M7}7ýí8^œŸN_ûӟçL4sï»M; Sf=ϝÿ.ž;ú)¼2yM‹\CKójëg‹;-çY ÂpIZµfÑÐÎa.ÃbÙc ÷dãÒX˜Îª¢Ì^¢S¥8‚±«…[§"Ӑšè#ÑÑÓ ‰™ ˆ[®”¡ˆþŒÐ𢆈{@¿“È0ûë¹&•dvºõS9Ù )‘·…•Å›ØôH7ÁϹ¿[XvVàœÅè]E¾—eV›iٞ-ry%;ÁתÕ@®7)Uèó…¥W¼Z µo±vÝÆ¿µõÖbâÄӛ¾«D„¬ä?UM ëÚÆ»¬¢÷V©ñ>–‡Þs‹@ˆúdÈa0sèám€& 3#+Þmôcþ×ÑQyå’ùX\1K-ý¿é#™ÚBœéµAúˆiÍÏEU3ô´ç!ž‚P¥¦†„é“4·d^8VXߨY×£) ƒŒ³¹‹CÊäY>¢ü%×bê»;†Ñ|¸âÇ>•¤ƒƒ~!÷;äpU<9\˜/,YMÚːÏ@çh¿!C=¡ž[¬ Fº6\¨r»#ðyî•UöØõj^ó†0¸QAŒŒäÌÖ0^Æה³6€ÅDÙt¾&ÍäO‘±xØ‡ i¸ÓcÁç(ʤËV] T3¿@Hgo¯”¶ØV븱¼BςéN%êø·}ŽÀbm…fڏÊZ~kéll—p ÓÓÔ osí.˜öTŒ…óˆÍÍ6Èùº(¡ÁÑê—<Œ¼èîýîY¡û)ÚX.ûI×õ,ÇӛÀ Lx6œÚOÇIÓ¦«>·J®óÚ¾5–ùÆ·Fe)“©ÓÐϧ¢…ùÓtµ3ô¨Î™Ÿ§¥:díM-*558†¶:%b’÷ ðŒ`ㆅÙÏäúˆ“ŸHFø6ÿìhCS Pfù’@B†z £Øp0š‹¦qøÓAE¡´Ðcƒp(Û>ؤi×á´ä‰0©ÍK{Û@@‚BÛöRD´ §T™®áڗª’yI!˜8/eìG(™$fËÒP§htQ›¡ÆNþÇκÞʃú@|„]oY{º+c¹…•[ܑ‘”áe»Ú˜¸K熓`š|ilMԝ@REž~x¿¿à“ž”™ø@&g Dp®0ºã¸[„@|›Õ¶Üíkð Ìg:Æ âII¤Šeã(S9J%0m̎bÀÉò(HP€4¹×ñ»ÿýà ’I$¤Ûq·mGéÍΝ2ÎëÝ{§N–æ<š72ÜìκBèvË£råÞ»·FêÛ½~ÍÚÉi’£Ä+VŠÝ¶½ÿ€–O=Rdãì{ðœd¤€ Èc®Û»‡ß°žH²øìœågsrÙ5>xEïÎÍ?’Çó"½R è䇰%'Z²€Ï$mñé6ÙyîØVІ¿Ð«õH‡;ípÆãvþž7Kâ¹·ÄÚ}–ÒæÚ[ÆdÔ$E”–a!ÝM˜ì6>¡w‰·Ù8»RØÐ.PŸéñÒ%ŠMuV¾"Ú=ѽé I/`ÞB#l L¢­ç/qȜ ðBÚ¼57C¾Ü’u¶¨0–Í·;LÛ\¯<j˜®ÆÎ2]ŒÈ ¡Â4P(:y¿Î!ΛŽù+ÀµÓ-»…vIñR¡Th €p\ a ¹+X‡0⌃cU›p2ÙAuc…H¹½ç.Ù'Õq <5|2¯'rz‹{„´_ÆW±÷>®úÆz„3šÀõ öÀØCxۖºÛä FÇ ‹«UZ,³•âP\ˆÈ‘tȒšÕö‰îÁ„ÈbûÆÜuúj¬© \§ûY¹(V¤A—)òÍæ=¼ôo¢HU¸ Ü4z†'fadÁî,§_­uµÆ pd© ˜¨,½N»MÙs¶»üVË:vóX]nM™›„•Æô‰!¢A"¦8"7³ ¡ô0…G•Û‘ò­›·<ššµöՈ…ñÛ)–™¨ó¼4¶ÇØ"‡7¶ãNó{-„U\d á;néˆbˆ£…_x\#cÉ!•@âkãop Šš8äKï‘ð:õϹ6Ù©XŒ RZ¾Ù 6¤Â”‘Q—€ÑYFƒzfÄ7‘¸j++A…x÷É:Ô£Ó ²Z²‚å„ÏÞujÿA*V]U˜ÇµÝuÍò#ñ3ôIרÇL‰-_®Â«mT­AŠëOG²Ú)å*ôž¥Àqª·9¡J‘=Ú­6ZÎ{ÀÉØ%JJÖb£á?ù]îb"B% ¨aÎP+ЂÎÁ•"]9='F{I5@³>Õ­­qÛkà)Ú_g›U^²µy«°«ÍDÁLIdV¨kå } $¤dô¤N¡BUV›E„DÎdø^ßû< ʬªê±AÇK° _Káâ†Z…m•byxinòôAZòÌ·hõ¦K½Za®´(@_+Èô$&†<5L†éÈLC̼ؓ“׸ù£öŸÙ4³ð™l:É͇’hºPŒÊ¼û-Ø /Æ®šLrT™çS1Z¡3Õ#ÇÚC5Ì-ÕWÙÛiÞí¶rÙYo¼ú_véSËAîJJÔ©ÔYv2ЏƆS¢¦Ó¯>•&_dÊ4–fἓðÐß æÔã¢ÚõÏN<¾æ?⋿ú¢öóL§Rª²UìT]…Òó­Iän&nbA!àöáiçÞÎõT'ÅWÚxyŒNÀɑÒõ„‹yRý||%ô©Ö^,iNó°A¿™*ÅË÷pûÇíƒ/eª²ÕÖIŽÍÛ ¨nœ|„e“LÛrє0Üönµe)aûJTÐ |ýM` À/Nz„ÕP=ºÁñ¨æ€ñ˕¨Òåä uü!Â草–ÛÅñNwäˆ!¶U<óçû¢×Fy»òCᒜPKû¡èÉ&¿É ¿lî ÚþƵžu¿Âu9Öh⋠þ{ŸêåÞÕ¶¬Æ¬‘^Ø _ê](ÔB¸ùÁ‘IךnѨÒÚ+ûÎY^× MÍËnXfÝêûoæ¤þóO÷GÕ_owåî.þ–Àqp{I¤]ÖnÛ}!¬«_6µr»ÀWsleÊã؞É|ºéšZ5ýW‹ù9Э›æç`³Ó6ÎoA;|¬†ºôl¨]}À´ ›w†+ÏVöbP?0ãɘq²¶ù©À½’/ÿ¹©2ŒÍ*T´äRԕBF”Ý]‰´4¦HÖÕҙ¥±««BžÆ¯u ªí»gúŽåxbt»Þ²vœ²ÖïR·iýìÄn¥<Ξ¸ÌZEþŽô%a¢´ ?Í,u; õ ¿Â¥+ÿ¤/40qæ¦>œðGž‘üÒ¶~EÁ T+)ÔÏnܓ²®j¸¿¡Š®R†¶a¥§Ï—7OÉW?¸ö÷YÆG|€y׺ŒÙ"å±u֟âCŽ ìÈ·Š×¸,€L(fƒÍ/EA‚ø9Óȉ$*>߇ð£!Tg]` 3 Ͷ[”ÂTx…jÑ[¶×¿ðÉæÊLœ}~Œƒôæ¨dô /=×& _â¸Än´ŸµÖ×+ìH`EAjêuÚn˝µßâ¶YÓ·š²XöÙ6fqjý"Ÿ%hÑñqÔ¤u:¨W6`V[}û«`¾‚wë_ÿºwÿ5yБ7w ~¢c±Uýd áb¼YX{j÷ aל¥æ&|ԝ¼Ö°;ÝÍò¾Í£=LOW’«ƒO@ýø꬀†F<µjÑYZ *”5Ja+jàã“&‹¥ Hù.ƒÝd CwÂÖ'Oanª±òwېQp\{‚½:|=¸p¦•±2# ÈÈ#'"YÆ~Æ:#ÙìÑñ!SXðÜÉò¼v<~þ¬ÓåI¦m¸$ìhþH`7fëVR–´¥M P%óõ5‚À‰šrÂß½U ¦(oùse‡Ì­@Ì°ùLCòúÆxmìöO Ñ÷ýê>Wªª»iM•ˆDhÞ°5{e-ÌZ ÜÞõ„Ôú̺Ó=«e“D °ÈÿÐZ5îºÅí®¼IYßHñÕ0[:$ܵ"ůuóê(þ›êD4Â9a%½…× jŠ8qçM»ærpÛd(ÅÎMØE®-ª‹òæH[A"Ë Ué»(õØô7§Þ×DüAÃÇ<Ф—çžz!œ|“‡N¥Ud«Ø¨» ÁËXpM Ðdׅ§Ÿz2Iu›A÷ÞÆ?VµÕÊÁÌÙ!é]eîñVäÜ÷ìO7½†6«ÒT“§ÞˆhɬÚc1àîaГѭŠ0‡]®FÁZ»na:Û͖Æc…ðW‡Hs¨S"ʘ–ÿ)éäq^1QþÔgç1ӊž¯=Bjiò «øûŸKø„¢dÔí7¡Ä0ÕáŽG|—Há¶È»÷Q~Qr†n`ªM:—Ü"·¹o …Á¦Ìíñlv$‹¦Ú´ÿ¶Ä©T´¦ÓVT¹åkM‘.]r5u´¥H•*„ª:Ò´ô¦Lðؕ…á@ªþÁ@˜0í¦lo4Ùŵ3PZ¯b•c|˜\o”8¤"{xøq?!áä®‚Hž0M O†¹Äüœ;ªn[²W`8S\Ã̉ÃYL5•Gōfpñ¿"F‹ï2èü;|EÞ¢w3ü¼Ç°µa£MoÏÜ?sÝû!·²:¿î‡#qhä⎳ðiq½^4Š‡­Ôy«6Í#ýŠŒhMb¦S&gœMvAá-‹¯•~¥Uì:ÕÇÒÃPËúõg«ï9Û CÀgÊ`6{î#ìhÏ|‘šôÞäGÚ#]ð ì¥ö’¤Ê34©RӑKRU Suv$jÐҙ#[WJf–Æ®­ {@ˆÃ×+¼wÍ_t[¸ÍbTN½k­…F82ÅÍ×¹$i».v׊6À|Ô«Qª x,ÙG„”úHo4º<2€ÖÜðñ¸Œ ¬ê€RArëÿ5£ 6yµù.Ù<®íTT‚ÜÓm óŸL]nn«mÎúÕK´"©ì·f!5DGóÇQ4P…ž¢«Û4²ÔðdC½Sä)oÇTù _gO]…¶ëÁo*ˆÉ ÔG'dPˆ¨5`¬¸ŒjÜtjÓØô š ÈtKl¶…Ч܆§ìϜžL™‚;ª-‘ô¤x¯œA;˜›ŽdÅ^l> ¸Û„Mߢ”\.¿u?ΓÄÐ|É%÷]™!†“ˆÑüLP½UUÛËD]¦ÊJöÊ[˜´\¶ææ0±‡D’²ÚÐ9|Ï|í*ºô6UH)S_‰·Ùá ƒP`Y_=qå\g¦¹Œ>jä¿MrÇä³×%ç®[Ë\×Ó\÷÷×Eúë¦ûëªÿzê²W\Պ[$xkœ#î%âß,¸Hz¹2dãà½ëòUÅ3Øjãã¤×_·µý•øŽ{ö£^ªþ;ܐ¢!Iá"žõ𐿩x9˜p´d<Åý7ËCÒMæMþ’sg¹ Çô“­ë|»Äóé'ÞRý þ%õ”oÞR?òR9 W>‡ä'H8ÕkRїó’w-{zlfÙÀ;FÉ×о’t½<)úí“ý‰¨žï¤©¨ª²ÕÖIy “LÛrѐ°@RåٺՔ¥‡í)Sf€óõ5¦(Išrƒ×UBi¨IFÿ—6X|ÊÔ Érò™…Kóo†Û\qú 7÷¾Îæ{wÿ­ð~׵ȷ_ǽä/o±QƒP… Eaȋƒ?„çú¹wµm«àq«$Ù+ì~àÄýfwʑÃÆ5è: ÄÎî¼Óvˆ.(ãν‡.››–Ü°`Ҁ¤/æ¤þóO bëмço¹š¿6a76¸—+Ï[‡'+_‘‰ÞÓNžì—õØ8{Ú$£hcÄ Ò ®ÖÝu¨-îmÐc¦40în?¿sq^Ø_ñ[é×[j€8h¹tÇO%~¥X苾ü±Q¥.û Ñ‚b6™áJ¥m(àH…νºËá¬?¸l…¡8ë.ñJV`Iç78îû/«ÀXL¶Ã„’|T¯“ƒB`Ѫ ‡&*‚˜Nt)G°øZç]u«%<-WlhH÷D×ÌZõ,¥ˆ½ýꁖ±l8힛-Ù¶0„él}PÚíZ´Wsᐞ8jȁ@Ñosç¥l a-™©"ÀøI¸êƒ M"î³vÙêƒÑ²£I§slÀaSïGÝâØø ^:Åw$k|ZàíV»¾ Ó§®VX~]6‹nÎÃVªVa+LçÇÑ·ÔD$èJ؆ß*ﳿq/qñ ¡æâ¯R”g?KE)7úì4ž›g~“Ëúë¡ÈŠ›(e Ôã8Cª©­_hK §ä£^·YU˜Kb¦È(JmPì$< ÃÀ¦™x™¹¢ƒ‚¡P\ë&bn N12ó~ètI/»@]0é9“åß,,xû©¹uòvš÷ó¢Ø¨ å äÝ` '–€‡½Á@ïx¶8â(„4@—½ 6>ÆSn"¢&mþïà ûÿžÐ@3ü^ò*UrÕPÔ۝:Ü5OrEFH¥›3Á¹âˆ ÃQ|q?‘VñDîE¯È«ƾ!Ø·Á[FÖY%MI3+–ìíú[‹í¸¼Ôï“*Ú¦IZË4â愆VÂkZ0E7le'P•kñY Ä)*öϐÑÿ¯Vqúèn`ø¬K´¸Ð™ŽEY¨Þƒ¤{w/:òŒ³@Îm‘È}°IòÏÞɜþ؛9Ӝ06pi¤ám7Õ[è"À‹£O×rÈÆ=ëMÜqÚÈ¥Ä퇈4ò¯Ú&?þ/÷ðÿDŽW"ƒö(!枽‘˜§þ†Ì%Zu!±YïÊÿD]j@‰ÕU$ðùq}x¤Ç÷\—Bå;Q›ª(ä88ø^5ø1œÁ†(h³ äÃ8`D¡¡˳é#ßöžcjûÜŸßNi—o}¹ÇåÎ-Ýp¹„*Âv¤g͹ÊÝՐd´u‘@/6;ò[P(e¬è¦ÕyÊ3;†rZ{œg®ç¤h§©â4´jŸèǞt뀪ó¶Û´YöÉj¯-4sF$BS¡?NüzÀpÑÕÝ>TAçoÓؕU¤A¡¢?z¤>\§Á!Ù:j ºèäš{Ÿ‘çø