ࡱ>   8 )"#$%&'(*+,-./01234567:;<=>G@ABCDEF9HIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~Root Entry  F(>AʺK@HBExE(H @HC/B@HA0C??(E8BA(H0 #$,-/03456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefgjklmnopqrstuvwxyz|}~ !"#$% "'()*+ ܅șx<Oh+'0x $T\d l xInstallation Database SwyxWare Phone Whitelist Update@HA0C;;B&F7BB4FhD&B 0SummaryInformation(#@HDjEA(H  @HNFhD=D3CB Swyx Solutions GmbH InstallerVersion: 1.01.013Intel;9'{F957AC8B-4584-453D-A431-0087F1AC185D}@ۺ@ۺ1Wind4321$$;=;><?!!!####$$$$$%%%TTTTTTTTTcccccc<HLHLPR;=Hmq<HLBHUWY[]_aHdfijk<IMIM<<<pI<M<IMMI<MMMMMMI<gMMM-xx-@HDED/H  @HDDD&AD5H@HRDEC??(E8BA(HN@HB'C$H ---܀-xx-xxxxxx---׀7752KnnnnnnnPFFˀFFFFFFFFFKKK((( <P<(hKJNJNQSoJn^OJNXJVNZ\^`bJeV`blijkf}~ !"#$% Ȁ"'() ܅șx##PR@HAEFAE(?(E8BA(H"*@HDED/;rD'C7CrD @HYEDhE7G  8@HBExE(;2DD1BE6H!,T4T21!#$%Tc222222222222,,,,,,PPPdLLqLUfqiqk3@H CCB  "@H C5BErE?@-,./01234756pr89:;<=DEBIHPOMNJKLQRSTUVWXYZ[]\_`bacd    fgh6ejnkBlmos~tvwxyz|} ( @vf&&&-------0000@@@@@@@@@@@@EEggggrrrrrrrrrzzz  @H?;C8DE i`@H??wElDj>D/H{@H??wElDj;E$H!]46B7FG&A%H ?   ,8765/.9:/@ABCDE<FGEE<rstuvwxy{|E{/.CD  | /.9 H&&@HHHHHH&HH222H2H22HH@@HH&HHH@ HHH22&HH222HHH HHHH&HHHH22                 "&     "A H  B D  S   %#        &          & %               g" 8      & %           .'9.:> kQs9c%A?vJBo ;~~`# `868RK5dXV/0O=R=@E  &&$t>\76f#7r{n6 8f>0!sq./Nmeric sort order, used to force a specific display ordering.The install level at which record will be initially selected. An install level of 0 will disable an item and prevent its display.UpperCaseThe name of the Directory that can be configured by the UI. A non-null value will enable the browse button.0;1;2;4;5;6;8;9;10;16;17;18;20;21;22;24;25;26;32;33;34;36;37;38;48;49;50;52;53;54Feature attributesPrimary key, non-localized token, must match identifier in cabinet. For uncompressed files, this field is ignored.Foreign key referencing Component that controls the file.FilenameFile name used for installation, may be localized. This may contain a "short name|long name" pair.Size of file in bytes (long integer).Version string for versioned files; Blank for unversioned files.List of decimal language Ids, comma-separated if more than one.Integer containing bit flags representing file attributes (with the decimal value of each bit position in parentheses)Sequence with respect to the media images; order must track cabinet order.Name of action to invoke, either in the engine or the handler DLL.Optional expression which skips the action if evaluates to expFalse.If the expression syntax is invalid, the engine will terminate, returning iesBadActionData.Number that determines the sort order in which the actions are to be executed. Leave blank to suppress action._SummaryInformationPropertyIdGuidThe UpgradeCode GUID belonging to the products in this set.The minimum ProductVersion of the products in this set. The set mayNameTableTypeBinaryDataFeatureFeature_ParentTitleDescriptionDisplayLevelDirectory_AttributesF_DatFilesData FilesFileComponent_FileNameFileSizeVersionLanguageSequencePhoneWhitelist_datCOMP_WhitelistPHON2DEA.DAT|PhoneWhitelist.datAdminUISequenceActionConditionCostInitializeFileCostExecuteActionFatal_ErrorCostFinalizeExit_DialogProgress_DialogUser_ExitAdminExecuteSequenceInstallInitializeInstallFinalizeInstallValidateInstallAdminPackageInstallFilesUpgradeCodeUpgradeControl_Dialog_EventMappingUCF8E5548A4C0011D380BC00105A6533791.01.0131.00.000{F8E5548A-4C00-11D3-80BC-00105A653379}ActionPropertyRemoveVersionMaxVersionMinEventAttributeActionDataTextActionProgressSetProgressProgressControlXYWidthHeightPropertyControl_NextHelpLogoIconIconLogo[_DialogFontDefault][ProductName] ended prematurely because of an error.OKPushButton[_DialogFontDefault]OK[_DialogFontDefault][ProductName] was interrupted before your new software was fully installed. You can rerun this installation at another time to complete the setup of this software.TextInstall[_DialogFontDefault][ProductName] has been successfully installed.TextUninstall[_DialogFontDefault][ProductName] has been successfully uninstalled.ErrorDialogErrorText[_DialogFontDefault]O[_DialogFontDefault]&YesN[_DialogFontDefault]&NoA[_DialogFontDefault]&AbortC[_DialogFontDefault]&CancelR[_DialogFontDefault]&RetryI[_DialogFontDefault]&IgnoreFilesInUseFileInUseText[_DialogFontDefault]Files that need to be updated are in use. Listed below are busy files followed by the application that is using the file. Close the application and click Retry, or click Ignore to replace the files after a reboot. Clicking Exit quits the installation.ListListBoxFileInUseProcessRetryIgnoreExit[_DialogFontDefault]&ExitVersionInfo[_DialogFontDefault]Version: 1.01.013[_DialogFontDefault]Initializing...ProgressBarCancelSignatureMinVersionMaxVersionMinSizeMaxSizeMinDateMaxDateLanguagesCompLocatorSignature_ComponentIdCOMPLOC_PhoneWhitelist{00000012-4C00-11D3-80BC-00105A653379}InstallUISequenceAppSearchFindRelatedProductsValidateProductIDCA_ErrorServerNotInstalledNOT(UPDATEDIR OR Installed)MigrateFeatureStatesMediaDiskIdLastSequenceDiskPromptCabinetVolumeLabelSource#setup.cabAdvtExecuteSequencePublishProductPublishFeaturesOrderValueControlConditionHideREMOVENOT REMOVEManufacturerSwyx Solutions GmbHProductCode{F8E554BA-4C00-11D3-80BC-00105A653379}ProductLanguage9ProductNameSwyxWare Phone Whitelist UpdateProductVersionALLUSERS1ARPURLUPDATEINFOftp://ftp.swyx.com/pub/phonewhitelistARPURLINFOABOUThttp://www.swyx.comARPNOMODIFYARPHELPLINKhttp://www.swyx.com/supportDefaultUIFontTextStyleDefaultSecureCustomPropertiesFeatureComponentsFeature_DialogHCenteringVCenteringControl_FirstControl_DefaultControl_Cancel[ProductName]DirectoryDirectory_ParentDefaultDirTARGETDIRSourceDirTextStyleFaceNameSizeColorStyleBitsTahomaCustomActionTargetCA_SetUpdatePath[UPDATEDIR]SwyxWare is not installed.CA_TestServerVerTestServerVersionCA_ErrorMsgServerVerYou need at least SwyxWare v4.33 Hotfix 8 or v4.40 Hotfix 2 to install this SwyxPhone Whitelist update.CA_ErrorMsgMaintenaceThis product is already installed.LaunchConditionPrivilegedYou need to be an administrator to install this product.MsiFileHashFile_OptionsHashPart1HashPart2HashPart3HashPart4ComponentKeyPath{00000001-4CFF-11D3-80BC-00105A653379}InstallExecuteSequenceRemoveExistingProductsInstalled AND (NOT REMOVE)ProcessComponentsRegisterProductRemoveFilesUnpublishFeatures(NOT CA_SERVERVALID) AND (NOT REMOVE)RegisterUserLaunchConditionsControlEventArgumentOrderingEndDialogReturnErrorOkErrorYesErrorNoErrorAbortErrorCancelErrorRetryErrorIgnoreUPDATEDIR_ValidationColumnNullableMinValueMaxValueKeyTableKeyColumnCategorySetIdentifierUnique key identifying the binary data.The unformatted binary data.Primary key used to identify a particular feature record.Optional key of a parent record in the same table. If the parent is not selected, then the record will not be installed. Null indicates a root item.Short text identifying a visible feature item.Longer descriptive text describing a visible feature item.Nu or may not include products with this particular version.The maximum ProductVersion of the products in this set. The set may or may not include products with this particular version.A comma-separated list of languages for either products in this set or products not in this set.The attributes of this product set.FormattedThe list of features to remove when uninstalling a product from this set. The default is "ALL".The property to set when a product in this set is found.A foreign key to the Dialog table, name of the Dialog.A foreign key to the Control table, name of the control.An identifier that specifies the type of the event that the control subscribes to.The name of the control attribute, that is set when this event is received.External key to the Dialog table, name of the dialog.Name of the control. This name must be unique within a dialog, but can repeat on different dialogs. The type of the control.Horizontal coordinate of the upper left corner of the bounding rectangle of the control.Vertical coordinate of the upper left corner of the bounding rectangle of the control.Width of the bounding rectangle of the control.Height of the bounding rectangle of the control.A 32-bit word that specifies the attribute flags to be applied to this control.The name of a defined property to be linked to this control. A string used to set the initial text contained within a control (if appropriate).The name of an other control on the same dialog. This link defines the tab order of the controls. The links have to form one or more cycles!The help strings used with the button. The text is optional. The table key. The Signature represents a unique file signature.The name of the file. This may contain a "short name|long name" pair.The minimum version of the file.The maximum version of the file.The minimum size of the file.The maximum size of the file. The minimum creation date of the file.The maximum creation date of the file.The languages supported by the file.The table key. The Signature_ represents a unique file signature and is also the foreign key in the Signature table.A string GUID unique to this component, version, and language.A boolean value that determines if the registry value is a filename or a directory location.Primary key, integer to determine sort order for table.File sequence number for the last file for this media.Disk name: the visible text actually printed on the disk. This will be used to prompt the user when this disk needs to be inserted.If some or all of the files stored on the media are compressed in a cabinet, the name of that cabinet.The label attributed to the volume.The property defining the location of the cabinet file.A named property to be tied to this item. All the items tied to the same property become part of the same listbox.A positive integer used to determine the ordering of the items within one list..The integers do not have to be consecutive.The value string associated with this item. Selecting the line will set the associated property to this value.The visible text to be assigned to the item. Optional. If this entry or the entire column is missing, the text is the same as the value.A foreign key to the Dialog table, name of the dialog.Default;Disable;Enable;Hide;ShowThe desired action to be taken on the specified control.A standard conditional statement that specifies under which conditions the action should be triggered.Name of property, uppercase if settable by launcher or loader.String value for property. Never null or empty.Foreign key into Feature table.Foreign key into Component table.Name of the dialog.Horizontal position of the dialog on a 0-100 scale. 0 means left end, 100 means right end of the screen, 50 center.Vertical position of the dialog on a 0-100 scale. 0 means top end, 100 means bottom end of the screen, 50 center.Width of the bounding rectangle of the dialog.Height of the bounding rectangle of the dialog.A 32-bit word that specifies the attribute flags to be applied to this dialog.A text string specifying the title to be displayed in the title bar of the dialog's window.Defines the control that has the focus when the dialog is created.Defines the default control. Hitting return is equivalent to pushing this button.Defines the cancel control. Hitting escape or clicking on the close icon on the dialog is equivalent to pushing this button.Unique identifier for directory entry, primary key. If a property by this name is defined, it contains the full path to the directory.Reference to the entry in this table specifying the default parent directory. A record parented to itself or with a Null parent represents a root of the install tree.The default sub-path under parent's path.Name of the style. The primary key of this table. This name is embedded in the texts to indicate a style change.A string indicating the name of the font used. Required. The string must be at most 31 characters long.The size of the font used. This size is given in our units (1/12 of the system font height). Assuming that the system font is set to 12 point size, this is equivalent to the point size.A long integer indicating the color of the string in the RGB format (Red, Green, Blue each 0-255, RGB = R + 256*G + 256^2*B).A combination of style bits.Primary key, name of action, normally appears in sequence table unless private use.The numeric custom action type, consisting of source location, code type, entry, option flags.CustomSourceThe table reference of the source of the code.Excecution parameter, depends on the type of custom actionExpression which must evaluate to TRUE in order for install to commence.Localizable text to display when condition fails and install must abort.Primary key, foreign key into File table referencing file with this hashVarious options and attributes for this hash.Primary key used to identify a particular component record.Required key of a Directory table record. This is actually a property name whose value contains the actual path, set either by the AppSearch action or with the default setting obtained from the Directory table.Remote execution option, one of irsEnumA conditional statement that will disable this component if the specified condition evaluates to the 'True' state. If a component is disabled, it will not be installed, regardless of the 'Action' state associated with the component.File;Registry;ODBCDataSourceEither the primary key into the File table, Registry table, or ODBCDataSource table. This extract path is stored when the component is installed, and is used to detect the presence of the component and to return the path to it.A foreign key to the Control table, name of the controlAn identifier that specifies the type of the event that should take place when the user interacts with control specified by the first two entries.A value to be used as a modifier when triggering a particular event.A standard conditional statement that specifies under which conditions an event should be triggered.An integer used to order several events tied to the same control. Can be left blank.The property associated with a SignatureSignature;RegLocator;IniLocator;DrLocator;CompLocatorThe Signature_ represents a unique file signature and is also the foreign key in the Signature, RegLocator, IniLocator, CompLocator and the DrLocator tables.Name of tableName of columnY;NWhether the column is nullableMinimum value allowedMaximum value allowedFor foreign key, Name of table to which data must linkColumn to which foreign key connectsText;Formatted;Template;Condition;Guid;Path;Version;Language;Identifier;Binary;UpperCase;LowerCase;Filename;Paths;AnyPath;WildCardFilename;RegPath;KeyFormatted;CustomSource;Prop[BQ|)pg}S^ .:HHH-;'7DdT(5 6$ at iows Installer XML v2.0.3220.0 (candle/light)}짰ݔ|~ƆÔzz坝~~wwrRRnn붶֨F77ɠ|hhǫQGRcRFE'_o 13wlL1X:cr^Wgo_mgR 7e x_O Cɢј~y -Ыj[JgtZ;/ Ζ)~k\M6NQV67fBԑjo&|ӌq[ᲂucUO> ՚XY i%iw BZRmwYӈ.> 65& ld .K Li GHғ2@f3fv˺HS) GI58JQ\C:}:H^d:yTlL5/?W[A8VŚs)xM<%P\ekDf.l&ILOdƻYK}cN"OfCm÷6wyFsE&r.ʕZ3~mUIk33vA_~ϿDWH裫hсoB'Wmii)1 &L+I CqbTJ^B~)'{,Ie @x (Lr|_9g- J*a tf9G2ம[ -W=ŸY[SxKJѰyb퇪XwWVo һgo?:9~ί6gbKOq XB_\䚃L?汑7!(v}q}Pl`S֓-r/cN~*C~)Z퍟,]*m]Ned./V@upF-a$ d>jr\J82jdm-)c8x8鬷O/`80f6ii$+`Byhl#֤&37IP =<7ګ9;QRu|fk lfw} ⼝KB.)B3p!OhZo3xk'}H?"Χd@&E` *dsrB:6gul@cδuZ߻пTTo'8gUտi,Bc >"؉.J`ϣj x9=I|7O%Ǯxd:$.jn}izP_s'{Z^pN0G{2Іu53=͓ B,揸A6IDZDId;W5ғ-iy>@"{*|O[%iS(7GO^ÍT5GЊXBgaTKԲx@[)1iZ4=] DVsϋ$R${#_⏿اzbٜY`6vW\q[T1zM#T~Oh4z'bfK8@[rvZ(فƽC)ߪ1Awʧح4hkS$r Mn(Kђ }<uieEߦw.]7{Dym16GIh 0h'A"> ㍎Ar}4 gO;Ī TyiEt5(^N#cQpP`-ɝQB<'mZxE u- DGؿӤxM&WĜӦ%֞/#e' Gkj)D?6kVx]=@&-.\49л3Ҽ'EY?u2]]X@$0BtPQ]GӛnRl"&:1̔b@U9zQgEPMSf+\F>hw#Bʚ< #M G1}lVo1odk=L3@Ln ^15]g6ՊNzNN /9r  לAyN HT :b#jΥ^TϽxFkNwUH޵;nXwOPΓ qI4ǿ4Oe (+F%3k9CN/,/xLh!: UV3")iW< A%N< ϕ %XOxXH򓻅 (\ #%W&:} F=&j&G^d6xRጕ,mJ!^Ԝ'.f(t`ߗoO/P PK|j5Uj\{umݹ I Δ+GAq_ (lwd/dZnQb(0P>Cs˼=ǾTrAU6 TD}hf@l7L*ϴ@}U(8t+EHvQx ߥ P, fܠx\Fیi `s$%Ά u%zk˴uD[6cp<Νm~EAC<"`̠=No2 T_ph @ 77n \"9TqF.ҠK}#^$ OsBEaVOR x+Bw?Cܰ3e"0{]M! sh=<%re*@קKCײ_+5#Wrq+H(9+J:c?# a,MSCF,O03z PhoneWhitelist_dat*oCK0À *H q0m10 *H 0 *H {wޕyv@`!<>f6d뿱Ek"P%Ff&DL\\~,2+7v_0 ¾*!&&;gI0< &ZBcj᭳B; \ KY:s &U&R3km.M lKHd';(w6NRs[zhc?`Q> @MEG?&;KY jr vDzFp£!l W{,ՏAms4A=w\[:ujzfLSO}֚,Ҷݑ<ՀlB D|' Quc]N,?;kݓZFvYa ^>EW^U(/;Vp@J'ɶӅݼ| 4~Ol75;ΙJMPq&:(*v~Ew/06Zg E[/GFi] "_A?2Bs0=O(^=eG_0%ɠv.ѿ,8;Q :׎ڃ؅IBν!A𰼂 3UQ [ '„ hF:( I0ʟvňtXkki(X3sLF<6Q;bDJ Z >'q/忨2%Φf ZrAN_4N\O V!Ճt_k=OU.jrKm/d(Jx6t|fhoW6uOW݅ÙbE";bo(nxb%kˎqA8^p:-MNx#jB)O ;#h w3. 3V& QjĂjJw=9K-}k-~a&kKɈ(Po4 IP]tz vC)^ps:8PVl+-tڻne,MW@4`=0܁tt{IBCupVy0wy7S@LךR$2r^"T3z\ゖhI1Y_bG`,1S9ה2& 粔 ;Vǔ kIo_E\@ˀlg^#VS`,掅y*} oiy+o"ˢnhk&DAca/ZRgXHbڧMtnVDp{jo۰' ̨WF"qtPJN:~ǂi _NbWtEaw1=V3WɈj`hGh~EHubˉ8g#\pW4 B6RR3̵]ѱ9j0avlI/7 %p5I$J[*I[CFcpFn~Qo;&ո.8‚#nʠ"%g= ^cRo4}?br@Ǻ,(+ȰtH/ܕS1V9I?oSޜ"0<5)5KvDl"E3!2zxP:]uehb_Lp{!I8Md7~a^=vE2K3ݡ7H<[n!&L(8vA36= g͖^,<,erDKCI/E ]oXA$(؃h-;cjC?+UIi8=Lq}plZ/Pxō xHbjg|C1nLݹv.1ӤMB4-o=sT^~i8E*8U~aƞķiR; 4DluUl;jLq$;XffM$T*=-E4к|'K1ǚCJ4\~#_99}zuvKV#vﴢ[pm)ɳ!*ɀbT%Bc\;lt0w-Ef1]E}ӓ%'p 71ҊxqJZCxOb7|a٥0:nQ6Bw\@4,yŞ^;qOZ(Ʀ2/.`BZib&֞>2CΏC eGcc aPTUׇRyQ>Yg?>;p $"֛_s!ѭyᛂ{(¤3ōy'OȬU|óFܟT_f&f c3dMS6-{NlM辳HjQa;ɸ@d>F`|yа+swg_I@(-_C׫9mPp|Rݒj,囄}do8- NQ)V AE<'GZu98UNxI=fv‹ˢEeU'4$5(J  .5gd1ڑ,20w}\|!jİ6\EQج"l6O obN 镚yxv=N5rU쪽昩;=0e5u:LY\q>[*ɵvYO[2ewͪa>`o\)BgP6hSp?{pS]&BB5tjR}]jּ߀}奟8#^m0E!ƪDQz*Z4Ĵ{s&"uMqGSy!*y<.AötU@WʕaɤhґMjV4q jW{+MM66}>ٸ5Z ^؃;DEjZE{⧞G!,4%p-dg 7'EPƳE;-}7vj%(!Az x 9*>|Cؕg ڳ^u$]wVrG>cqݾ$ hb.9vU, ϱWdٗR5\n:qi3<l3٫w_/APlwI^&"e~Q7[,)ePU97lq]# :| Bgޠgl؍Kո9u _{ Hv'ɲY)ݟZ`[ӿF=g@czV!e̠yʾ zzlPscU )QkBGuoW_v#мam5k̑ɚ1M:iJNZ.{TJ\Whj˟힪}XuZrF&߅ؓS p}Ցoy yp6V1ҁJuN7,p?N<@4.a 5a̷Go9M=E逺7KP8ziE|Fxgw5.1O?/tuE`uzDk\ 7Ʊ ϜWM{o nR b9yJNft$QV戥-ZE 5`xLe\̗| VT&{=J"Yi$dW% 7}Iu\f AĂo4{ '{aKaKWE~9fho[AJsBQam(]}76(\ paMk bwEM>O:3[WSF7dHIF̦b. ki\' U}%Ipf/!!g5D oӽ5tN֙}ow}tČ}ғG|Ai*7r ?Lv L6Tp#M1uUZ$ w#~h|ZN4`58AÉE3"]ɓ.{hGVma06:`;8rGڲ3"̈+>CP:*Dz=9-Ү>4qJV?^M5Fcb}lf7UjRJD0{h:DN4{%T],ƌ=۹{7_89e*$-HySw2"%wK:64כc"yd &R10lS:Y`VxlbjFr 40@cg̚=L|hכz.N[Z3|}1NE!#<۽_׉\NҺf,ջD[`Y3f(hy[6@)USl⬄/; >2Wzݾ*.7@+ p*23c Pʱ|~ͬ XRF@9C֕Yd /Fu4-C*"PnO"tC0$gk,P͈"S=Vj[)gt qLD(bZ|0u_b֚J l  +Z؈ 51m|hCB$CY2V($0 K!QSal,w:0 Ow?mnhM@Am/M}3?5¶_Z;$:ZAw]8RAzKJYgAѰ8+ UzI/XP J4^E+Smm_)Lxms3,,'RNoK6`y*/|S2?PeVӮ9PaMG0W: (e!ztO$Kwʲ|zEP_ W=Z&OF*M?&;_,lYGOњ|"ò;6 ic0±`Tc'A- m|#/+*;wp30̰A'tj -TSu&\|;5z0TPӽHk\LZH(eF d/K~Exj[^<=]%2/{c9kZH|뒐T(qkJ:h.<|tBt@  6(iA6 Ha.IE}c'(:@A X򶷶yECؾq TgWG?k_~=&UYe7#O7,]* 3E0$ҮT1 nb{_SESS@.-'G r~ͣ1Ȋu ?X| @I2QyK"Q}t.hm㙠OXkMEoCSP>E]N+H? `KK\\v%SZ0'NH4S=*$׀ mVw*np(8j ?Zq( gt5o6>2 [t|Ϻ&h>'uq뿋FO@@ 2=O*c"V6 kOj4"܋,<ʥVbR>`I7ʷV{,$oC6O`,) \$6=XATڜ^QEEŸ|2QTM^iL661?@BϿ EJ^mBU7WO/ '{ 3Ts\??-E^ܣM1gү͑^ >rz[kJZW976%ߑoAvI\>Ez̆c^sJ_Cij6Z>< 6ZPI DP=r>rP[Ώ}D, vPv? UlUp-[ZA _LٳjSQƞR0KrfS(Kb]@11-C~p"fMW٣8wK`0{E.*V|8***-~d#vQ^\}ҋ[ć6Ҧs &zH z.n.(q^AlH5mNeu ^8mD⬁5uݨ FZTqˣQw9ߣ9wsv}sD@di% {X7Һ~T( "Ն>֪y2>cS~m9&]'tbC˟7n8!o43H&~m/W45@b?\g|l Pvz'4 ]*PJvK]Nv)Z)!cmMXHYBS~$4z;&'Umr3@Ǥhm /o#ѓ~:.Trq#Sv@FGaxu摅((v[RsѺJ:4"mCuegPde"T`[EZ0lؖBmnl|6M\fIzݸ[NQ91J~D>qBexB[/ XL/vLsCYt+kKb\&Qņ-*U$;LA2ᒳV{-40P gX!K{gREv/Id6x%WɌա} 3!I!8ô}?! g. uTQand۟]׷Vk'?=Z=Eaۼa-y:HT? xd_k0D;VL/NVf/it.':<F[E2jDc!(c{<%{\,wAMg8@Mk3XAd6U !8[aGo?5 koV2 cl٤=Yyv/%aE Se hdAKc?B;1@ h55rܼ@)wL8h}9v=kӗhL"| PXɏ]X,2>eh}ƅv \vHp&ː+Ū;H/x2΁-|RX: Z'av 7N(!:L|W&o\VdK5.!cV4ZM),"3ߘtlCPz?n0xI'Ol:Cߩ}uWL20PMς@"Wϑ|ɸeʴKp,Hz%xU$mHk|(|K\QxuPٵA4*d2(09E"tіa9u0U-Lz{4fzh/UP+@+:4at Ƈђ`Qc "po҈vE\ H 嘙\6Č;*z*Iv55*GQ]ƢWd4 FI\U]v^C7s!/eg?-v^bχ7Q)V1xY|bd%քY, e1^;g3ʙT^oMy` i4"Ui`,B+6*c5y n58Ɓi`F _m+󒮩H/A"y(Dfj4YiulF9ug^8?fɻ} L|%: Jm{V@ No 52\.^F~1!c5{ C쾑_X'6nPfj / 9ޫSO>"Uwn4:0~){هYxϙ$ G H&cɝ j8r&PIv 4<h 9LVN^3y8 aDMgͭѯʼ,n5 * bao%:'yc: tػ]RwmӊxC*+6{ 7͕,5ky񑓊@n0Nҟ#RLVqfO強!4"8J맷jp #>q"yl>?^Q=(h嶰sϾcSE_3Qn/+ E͎,bI jn|&6wWP;ّ_\KeCg Ûjl*#Ӄ}iRd#'ÏDe%;*4'H {KAKdVNDࡓ{&ndD%$D[}3aCŖͭSmfX0قH̨a. t%PsZRa%~_%󀖠T;HIo Ec݆f57ɬ; +9w0b 8;%̵ s n 8CFyتw=8&rd|܌@#+Xͧ"j_ 5eW$` /F /Jk!ʅH )D@,=eC,pԃJgszr90E>Vѿ$gG`:wɯx*jO~,=4+ .v1#-2cU5mV;-.foJj0ԏiϣg>4 ;Ax'!kܒtM-LhGT7#B~F'lX*p.JTwnΧмkNvSRn8vO19#{pLW}2OM^YcۅX)fIvO"H 0N-A5`y]&r,&7HߕUMJڶs\ ܳRB;, 4e2B@i!пRȬ2Rq넣 n bpˆ61Osf$mj/Ew5n4eN@̏J^5V,神Gϥp A2%UMuAlz3wyj hn(g'J9Out6tbl> wT"_H( }jiz(1bL$vh1U0V,MU2K?EJ!~' S ugԻQ^4t<ZjMPV& xCwHgX-i&jQVm.MxqXJ-LEWIڤFBCX=^Ō3 T)I<ӫř ax4_J3OH(͞=;VqU7י P3D?^ NQ#_W a?G}rJR7yIMVfZ32.I-I(dO1-5MNf^܎]*gSEƪw35l~/\S Pt<Įt0>/}b]VȒzP6ʳE}o#Evˎa)[ ʲҏx}jØtöG٠E%^oZ@ vs̄8E w>뾆Nti=q|D yi|t®9f- SgQdfa5"7 HArcʓ>PXHF"xC{SgZ<;v҄:> C7}`vz0 v[8@g.ipU:~q7W(G%4ͺ_N 8 h.A YޚsTWҰDhǨATr~&Xu2xi32'b3 CPAUd^}?-<#ϼq\/sXIP.eIRȰʭY*j?;Ґ)IL}W$\bv M~ey׈{8x^yRDL_`dHe9WHQ.@mq ^YKv÷ bcTAjt =5yėU0Qv Sppn>bfc1gxkP@]hg~FlXBSr՟Тz&IQADEikw|I 5=@6s˵ I˒tX/=աF(lvSAZ wQJJDi@VQU*{;tRN ;~!úJ-!ty;*KUHV|cga wGJ T`~v>vC1|#+[m#]!mV]%uBN5e`$bs0\ qYCJQu_[8PS˨FT7{V̋Py@]7('$lI*pP63t t/=)-;jU GՌ4W<~ޠfKᎡ\r>gnG]u񸓒9Dp2!xEA-|k# +Z)5c#-E [n6Q <_eVB% ;;q2CAgy?|,ř''7Ss_c%@]0&:?z+m];^<3^KXuWpb+vp#CEɃk=S۶vEvwg AiVk,-TH_'d2KNzfe@3t{ ;!1d tr6,~+zVJƆcUj ~i[Ǧ+ D`:<&wY5Ӓ jGZVu}Kh~~N/&F)U=9,3&CO1Zh`kAtgp *t{lBHG }w?$}SJM&w@ZC#S ڞ0j,u]ƍ\g)fq4(fT7%I 4AguI8{4"=Ɓ fpgG=NÓ}ܱq_&4V}Ë̸BU_)y8ѭ" _UܬOGƌ ن.Dh^o(sՁyiE'{夁(Haئ/;~A=æ2IF/*HH0<ץI)LuseQU}K9kۯ9Uy\>/5I? -A¼.$~4|leYgy l'H54E -9F;&ڰBqҭ cusJQR}=KXcXpуi=V'U"ITX]l,vK%9 ?/]bCiui'X)0ph~bvs0 #?'=bdhnn੭l8?*YJn3FfrxZ> S8I`_d9кы٣vJUD$q],u0)\y^թZP(.M<@N[O6;P \S#@&ܿ@;h*N?1l5v UUYuE_~+DaS>l3و`3{FÊHFq>#X^UtOjٿvu]fzQ$8Ll+ؙ@ grq '9JavX6p^Y:^E7qx*AMp&όv4Ɛ38\P Z1h$Rt:x,e+>:-"QYM5 "~f?`R'=fe*ц zw0wE|͏Sq43R8`hkOZHj FYq_\hO>NdEh!Kyv́k^}6.K<|n{iIӽ;f(+tI/I Gh%vEX\$\h$ s=x"_fM9c$`o4qߌk;A`_Q*vPTH3Sgz_!I9ၖ'@=/<6z/ZD?+ջԘ,c+eYjQ.##9`Q~[Ϧ+FnV!8Qm”[לdpd_BN8AA-IEdւP,poKk^&NVHb.y"!RcqM .UJ\^KƁ@*ŦŊK8?~"Fb(!-ӮGXֳͅ,:8K输PU4ݢDrwMlaY\OScQd g rw] * N߮}Tn& lτ10k~(Q'Yچ֤y: "(@^qzc 1_Za(EI&0!]yt LR&h7piz-&`5U#R! tƯd/'f%* N  Ij4Aۘ@Glz;Lǫ!ɿFtЀQlC.W1`,#یmEDdƕ]аm'`?{z(U%|(V\tL(h2iаLT%{Btl S'm6+Er4*s'h߆g-d$Nߋ0D~OƂJ.Q]"_1͌ QMp7ӑRisd3%n&|G qq}dߨUԊxQxq.8"j@Nd9F5PEcOͶ K[fᾣmM#]H1]jD:%朽Q{Br6VjzҎ<>KX"bHX!-W7d. A5$,)oEsy-n5Kp$&[HqWjTԂ?m wLT'5h!ZRې)NS?LvZP{Z֓kzZa N0{ L]Ϙt#dŰ|Z?R`.h3;]JqRob^ [iȲ@HI:EVL3Zv/\'l(xHnFӁJM0be4Aol(F}y9\eؼi@0f]"Ntah$]gټw [ F-\05*rMib< ȠvTL2HXNȾǁ2ЈGn!f h$7)퀟R {En K?֨yKbœmgF␖EҋCtO ƥ֛3 jrm'rQ^{-g>=AceU2a4q))v),?7 ޛA56m%eW4VYyT(5 $;ռ}2Nj Jވ;^:.ܮHd$LFNÈ>(.tOf*Aձ/zؙHLC:+j▙}VE (fxwl<Ꮘ>Q''e\}*^ВXX[LAaOHzW85:[g`zvDiW\Mdzn߯xxwvZa 2|*:֭g]J,RެտB5 UZ͵D-1pOO]B&, Ƨ| @J7 xvX'_zarZz+z@t% נ =Qt]2Un(a V;aF{c#uM eC j1-uʬ+klItWϨ{4re 1c!>lM X~=<|LetU'( LYjx E&ķG± 9VD#2/*wAs0:mFc@m@x}^J-V1t> + ʒ6j-hqak"hkrc%n5F"ct?vE@>EڞeTeKGP7RtGh_-fO^Y6#oC9-+|/|OY^! UaU2B: mkT%)oQi4pR$Gh/볻ȕd qLC3lӨ)x_o1 9%sGuk#Wiƚ!kW5z8X5wZbIKznex^dC@XꀢZ ?Fx&:% o7 IouƓsg3Fۍ 5q30ɴg j ml_+Ҋ+BQġLg4xNW 9`LpV8 +NJ}BMl&7ݛVs<}3R̝Us=n%FC; :mcɆ(cvYsCSA&pbcgG!W:W)%'O$δ_(iඃl(D9|iѳŚF}O%簚y$j1{Xw O%xec?%+2Z;>fX~m1-'Kt < rqc{%jÜXYByOFWf660j(n7fw %L3>CJ[>Oq/"YI)?2c,Du?rڐnsTغy,XD:K?]TZN&5Z#yxIԴۮeMu2a6mןeߎ)ώKVUP7bG X~j#m!"tyM]}r*<i%e^1* NA ` ^y| -(*ܚ]7I[+ И$hVj[*/P!p)\/%O';יGxjq15TH*Eb&^c̠ h>7ݲ.lR+ ltceVnM/!VzcmTx1 ^skjO+֮dE\/淰,a&$Oݩilr=TcݔXLJ=3uo8EN^ڡW/k 귻M4ɲ =xSלSwv48TwB#vtTa?U^B^?=QcN !rk$UlnufCϳqɲ`xHXƴ!Jj$Ӂ] [x56d%ȴ='C/h.Ul?gb\"s9I\{EOy~A\@L GM{ksDȺ>sp; i&ʊO 5 Ck/mI5=ZM|_WLOޭLpWV- !%"BY,+ZS3!Z|ST^ 05%ውK4Ui )bT w7D_<\#Q=G׸c`IZ_Qn l4!I _+l^љN'dbm8}9c tmţj}0 aWP:yS(@ϔQ5= %4V *"}G* ӇrlmYīŭoB#vkVl}tCɏL8Xr"`}KyF0i)vXݚ',m*uhv%)XCL'#yسn}B~ڒ Bp4ҼT#,͑FYd/GHKuVzol"t>f `K*^s%u',꼴HKݞWqi"jINچWo0n3,.$ Sх;S8>nk]ͩޖރ^I愛L q)E'zΥX4<:-LP_ 6o ǡU_Sb%iDgGj|8oNN@^¿|Muj'JbN#O[ZǿVPU9=[~A(,U؜zD$PL*fOd&h˶Nr@גJ@X+9UM'kfMm`&烧' `- [&c=y#xXj8%]wtV@oPG21 )iqNҸwNfjw[[~M08egT G ZjPwuzl9N4BTZNe\,EK䯮°L𷎂$L<66cэB/fp2ۿ:Oh1S c_'gϒݯsܙ;{E賩̥c |`a,5. ڧJODF't6=r,$r͑H_3&p5յYǼ+A>sF+U}KєmoXqkC?qgTZ@}FncRb".jyyGS352h{ROvK9'w9/Nh*_[U.=zfZ8 u`;73Fr?L`;bH«6b ^W٨P[^E1*CFE㐃Fyc!w0OOSL:WHv>8އrN˨O-䧢)eKY$ /n1:6ўi~P x3JY_ /1ѷaqlxѾoY~}9Nn5GvJըRf [vCeGPKڸoguQc&>?fM^PuޛЩ~e?AWƌ,OVmlCT}%3 ƽlЇť.JQh\`r;'eTgw|dg{WX̭wXGs&N=MN:ι˼,QY+#.(WaO ;eU|UE6# bNL s]h Eya!F Wp7|A]h9r/#[׬fӎO6in*BnLdhg0>nB 2vi7M90~bLNt^}bǐDw{+ %lr霋НcZ+hdn{CI \`/)#/&'^i~MXO-X ђ-C{? ; m(F>c]KTN!l -޹N4$ԸQONSW㨺R(-|kfX͖$iyLs0?oV Iat١Y?r ;5aۚtNGUV],6&XFvٛd59L9Zc:唶bj|+"_c6RAx ڻ cp M::ǟz0J]Β-rժN_KiA^3H7O{!)+k%> mll?}UIJON(F+p/䃮%>ͷcc@TL:hRQȉqrU= .2 ?R=وntv !˅/q^51^^ B]h;wn'Ӏ%xUO"5{ [=q [5 @ "yEzSOb+ҭWɐVBBLN56R:H$&_YF䜊2A3x nE6_7eD)Os!onʔ"UzOր fWCZBo2ǤkШK3u~gxf8z<?Ȟ\&o$f$ @ 6c1XU<FNI)V5sg ]=E٨!GHή,` U1<#rp%ڼ޲{F ?mi&lڋcx_q 0[@IӾ`%:|mz5eUcLL^'V!"Agn # 3 ȯoӽѝ [֛2"T}w0cG: dH So\".ӵN̅/eQQ/N.uQpgǯt;"~G:N-c 7ꂔ8}#+^k4brvAhD/I< C?0s~,RŐCo0|q7>/aA2 f)r6-aVvW>G@%/,NܚEЀg8˖ 62y|r*IP/k a UGTߤ1eEnܛ{#*3,T}.Y!0o;H<@ONZS:xH͞V~6=6JʸyhF\F߻QDYuOEبi oC"!w= >]jiT|p\P[(@!.Ue3nNjhC=f`"qC _b;s }4ߴ_XKIE̊RG Yꏫ7JiMyD:"k5|a#}.0(qd!eor|X}` ;y=;1֘UfE OKTCydy^ 3JRf߹\+Y6,wL\J7n0iQO0M{;]]ֻՅ++.!o )]GOXgrS7iu դ:qKav!PP?1xB[Zd˘7y|m6sYrGI"rd7 V>m,ۃߣ^RUv꘦U2)͔ZV|"8 ۃ ΐ]_.n|Fm843B*B6(TŔOMCs4R:#s`߶Īm/I8^paK؜.t05քQ,GP֤zj`Rr9i/{OEɲ+iw1 /HܛwCTA=n莆`Z >*5/'$.X(~/dl=QUzkoWbikx錵^ʈ<_mޅl bĭcqZޘ IJ/If| =9mSh|4c{i}Hvz${6dw,IIrP J"Uh xv5SNJxum<֩ւwr Ne#pnCǘ.I$5D/׼gpdGgA? zg%d5F45"̟'<9 Opn'/ z<0t!'̮.ΎI [Z0<^˟@9q ]n+xP9X `MtB/.Bֽ@PN0C]K%*PJ)4Lש!OQǶ~ȳ.#CsR׵7}Wٍ0 s+_ !!DBڈ8%7Kp{P+~nj[w^Z=~ W +l)3 7>.PR}4?$C:x<Wa"cLKa!_߅.{t=wG}yKqnUC. "Oϝ7D1''Uه§+ Ed1㪍2$25pJCCCKCz>Ǯ_G)aV.*| /R@JS"Thm#,F cXR$iYlLJP)>* jzn~ݔ.Yx!Rmׁ1~SVc' % o@Cȓu,2w00=i1S!1h58tyyUbKf MGR}ٸ#S,Ǽac'YFP^$Q r=AۄX륌D. iAbFX)C-ͬJ5`#LaCNAR#NZ頵ދIOp 8~%n &r@ Zvq/S-E cmJqB6J~'dT寧ǓFA/7U%'P6zN{&5qlva9UoizObse=jOK'*ւH67!]RIeOCκSrTU {{hUOU2I '#5bV!W%Ǚ'"WnLO@Yv>WӰZ΁d0T >,w2sL6q2_{ȚNݙ!BKa]EnɘF[>MGQ 8e~6WZÍz>zՍd ]{EnSGu\ M{=pF*ֱB@#"eg LHc 2dDx~MhbD|HLPP;#Z-)q?b$2o0l+(K:M)BiԗN\z!a2VTr0Jlڤ6GրqvX{AՆldj^_Oa~dܳB$r=" R+Jں61{FW]{0xE>L}ct?H:v3BMVhj-T_Wao@פpcbceLuHn"Z̙R8):bMǼ„D686U/z}r_Xץao43G߃)x"nRXp-S%[$)oPLr Jnc ~V~ɯMԶΣ{Q˸A3}!\\W4m{L)˽ͱbyqKesDBFΖs({."^^?Rf;f h~Wǩ-9EINK0OdD R"3JJ hh/ f69`1]d!-KEyoM1UF-CI^Ah@ƀ-iBlچiȡJFTAqr~ae0F>Z)I*qVD+xLm-yvآZЗjR )U` @j.$~F-J.~ctK3DZs&*c0o276z1ȺiyudNI8"kgNT.Ko)\&q?ɰ h,I BZ.:37J`N1anx$Fde G5W';cP+R`^& &3#hJIT=}{!G^ q`IoS\b 9N6+nJTFL@8.L\=ݾF ֕Q4TN{er $i6͗ZU fv|'ZpLq5yiL d% :@4DS}h7|MCsJ ,* Ң@?̧5v˶^+(WTspZavYC.8,{>s9 .@W _!v4(XFŻXsUpF mqumHK~k&/EPG*[?)5 2:4<Gc(A[bA $#eՅĺ܂QS%D6ނ U,s-dу ;L+&=ҰڲT,N4&ab#3'O,YJa6w9F|GoM, iУxK' >47$e7 ~|3snN<]`ĭDqw\;9RGķK]K.(lg2j#+>AZso3LvM%I ͎Hh%=zf9D źl5>A &׍6AѮQ8.x^HY_p PBi7J?nLY^cV@=4#7}\aWGF@ pMY!G4cgNǽ"@o@i0ډLd7VOnW ]4DpVC"dH!‹&\ X]Ij'd;vGl[+'h0? #lfx DKJdI~@G3I@x9A؛&A~xXzOǗrP ( 0Qʹ6|xVTD a: U9b āc*bN7 째"#y=Өg2ld) %^ܸccXqM;<oW1X *kwn8كTD.,璘\|7h.6߈@cjT28ε \ mzjfbNHs>Y^EٷslK7?J 0 Yڇ췵 0uǪD`!mժZJ}cΑ*& t5V1RbtJNt,\iB`g^n*62P.f2> m8@ko9O gˮ}P<{o/>gZi, TUΐUԶ7Bcf;iIt"vw'ptAl7x"'"7Qŭ_q5Ilf3" `'ҩxB')*<}-y D4}+; cqEBN.E|gh\de]hPi~ȗꝬ˧ q09RDkM1 IyF0ÅB x$6=cZu6*̣(C '3i4*H^\ZG# ͟Y,a|771b۾Юs_H E!EC P:VۏR&xdR9@c'gwȢ-5l)5D=o(Gی4BH:hE%z9۽撡J%TsɸT 3r/"26;Q _AMd:/|XDM! ̵>0!Sی"]0̧ Pߔ*a˕c,s70^2JxbF#P\F _']{hU^+OSN]+ٕ2)Н7]TlҕJ8Ût:!0~A:H %8pS 1A#0~ =9ߒjJW $<`ji ߏcM z~\M 0rVX-pG`΃͎ =9zo 11F#!ٸѿFTԢ vX)ŤGZ|eKN /XO2}gs'T !G 2*Ýh᪅=/c\׺jiwdk@R 7w\Z4C,vn^y~+ZYw\U&/xCQj*psǎ/^,xV.Xƪ3\%ՍT՜2ibd"C/iUe;ÈM6vT<}{MpL}:žOw$'A-wJ͋Ӏ41q3,L7EM$ %YPR/0r#=f )>NJM<|"]lҏ&pmd/4_yp|\8q龄Jp+J;$2[mmgz5?7DZL D1o>RUDZK%xej#}HnƦFT%*o+Ls]KTGhZ)=qd){7vH jL]-P(گ/ fF24vÊHymiswEFUK.9元Fƭ<}DJv3~ȁ' uxM;$c{` +y9yl N~J<YDR>ٿ$zs+9β[ L'L*g 'xHp<4Wcx 5RMFjˀS[zkC[T'Lu?/*/n//9. RX3R^'; EZ .a`Q5!XxFd* RC77,4f$wbD 1}'H:L%Eu~;f!pzx7'sYa4N%}"#z LpҪWzlo{b>57ch!9fЗQS]tߘΡ%ixnȂ5ㄩ^*;IX4㣤0r|r%/ $F 鍎 \7GحV99,x*W=D`3/l rDZk} ohgWB+)H ;c:"tzlNF+'M+butlT9XDkq8$jD7tԩWpwt(iYԈ^׬q,iځxUڱ_tfDk?fohL2Dҵy5';_El}0T`jCXtW75 '\VTڝ+)ϑ}'Sϕ;GA$Ղ~r-lV X,`g> *b7sUA{|O40xO"(n#BW}5PLxjs {]FZ]fX[MXy (B}Aڠ2f5r}֐.i ӈ:8].O~|7q>"r?Ȑp E˩=`v@y6afd9I9ґQ$Oˊ>&}tcJvenU/ȋ\ 94[ u Qe<iSfJJ-vIف-M,r'^%޵b?({1ŞQTOיd w^S1Ht<``b[4OKv2#@"Fo#E62LP~ :p2apF{ZV5li:wxV-M̓k+:%B;ZH-Fnj׳3EF) ^:ZOiӌe9чۉpPsp4"O&TP [TkGJnN.uczAoru3AU`j[GL.8oLhB7ؔG. OFXqeIIt{NT (v2?WU -ۂM{j(<7n䚫Mš^Kre"I7az]7"Wb|aA8z2>ky?́lϥoῂ:^%1$1AS1\s!'jItM";ީqp3Rm"I6$ټY %5ZF7 gkNvڬ{>PpK2E[l_o/10}zs>Im2p@5Df7 sql,>o Ħ{`5~+tό']רE*ܸ>>Rd` .b17~BeKjEo53q(AslcP/$/@vEq=Mf@?d/]Q6J2.q?7vͩBl?&+2"l[dp,fjK3@3nr!:;+toϹb&"^Ē M"AOaR~LJk6k} :o~w?P>F2{ENv xJ yy"Nß:Ych*O^).~isD(VzҊC3$ŶCWlL,&!ye{\ݘ}Lr?ݎMǿ=z/QfƦe6nIM.oW>#i/C岑}zQ'8 )/㊝b0<-DmveWDx01nMp # -s;e) NQ <('>6[X*HW|^DyAqƩXF8 'f՝ m6Y'M:2GR4Ì,٨bXI֒Y3abDVp{iNM - ̘dFMI?²@;d?3I,C_]FCV]gdo)Ԣ:!=1ؑ$N:UEԭɁ}{EB"V.+Ck4(73oFP }mw]ZU=I읭.iNW/wjJ-=KW`QxbS,hQ֮Bewy=չ`uw(d2Y3;hP+}Ob'Lr3r |Ƴ$K'&&,q\ ݝXloP+9H<}?8 G]JE,[Jt)bHEmV`aͽ6% pdVCk)Bto?NQ K=X١BD[ɰM>m9Y4Sz`S|  C7AvQ_M1j{s9U"&R\Pu1K|mQ5N蠓}}s?os+E`v:|G0d[w &ٺK\B]y\shGsSWcuS SulӰ;#EPҖl4pnuѡ֬#ގ/ q@6#7SB;^iY͠~`YB֖|)WU'7Fĉ# \n<9n A$sza/Qgg9_U*ޜBe=ɷ[1;W{.? șZY Ojj淗ZWa2˜Z1cVNͼ_`'qeCA v oI˞zK:%V$2쫱.0Rk-S SOgBM?tO)&I'vM"}JZڗ7ϾPjC.!WI`cYCN{)Br@lV>=Dj4rο "qIgs$RHʳW0˔p:[E"&OUrHE^e|4e cNj-n~7Vk=2+2R@lgb2b-M~|aT=Yocp1 GREN5^ܘBH:tı1HlXJ3d~4aozPm"ʂ0;Ar0X ۥ,  8rA4)&ȫğܓbQڧI '[L44cur2>vJ5628w@isͥlOy|QLͿf A0[2SJ|GMQO7OTJ,u,^ ]~W٦=L>e[ZR+=oOrHܝ/f{7Vu|f&4^$5b@CͥxTKg<b50`ޢ[ o.B ˛`ޯ%sg}ٸl{>1嗀iV|?f {2yZg/6r5t? UyQ (/R f+/rSs 32+fLHuhc~۴$mlWzU ɿ'zZיp=;uo{XJ?۰ἶ :[s XJ|/5ZŐFoa-Ƴvgg(Trx(]6ΝvqPvGO}쳶NB3m谌bu;šdY;\yG dɺ\{mk33=H "K36 Th2XOp jiCxZ6:A$)S܅DV\SbRkZ|<# J yM+!Ats$7b4ZM!0RCӼC5m@gUUެ&TтQ-у)FIS}-+y H׿A");MUZt"s<[FYȸUkjr"Z1@" :G,cy{ξ. aa!'羶DLͶIU; Ztyp ʻdGF$u e(sH"iOu.fvE?zG0A+ EG g:5|kk'  j;NtO`2E`Bz v~v&iX-[kp" +_}Q}|/^-Yduqb|@e`MorFæDzEUu(eYN, Gva~egfҜL|'A91lz_TD~eN b_vnoCT:ʸ`Yʹ%IOHgm96Y?IH$WE ZK B/CH4A?D-5L"sNQr|Cd&u6!q&]G3ȨJyN9й Y;[u0H&V+mX,w:p fgjx?!xOs\+zYG31#g\73R3c>q^exVIϳ-lڝV;.v[W7~׃oY΍EA!{3qCg~9 J`FLf]0Ȥ>m]4Uo$hWE:9p֕1.FKUD8xL4ǽwcG9v0t >ﻠiVLoKrvh!w~;uuS5=آ'y}bبҡjϡSxZr6МTkg<=}S_QGLI37iEu){whEϒ(t-PXܵk"ݩ^@dOY-0 t|8|G`~=Gܢ @vP@yZRVrhmb?lہ͚[6NSTZRV6-jd7 6<: ||dv-@yG:`AFmۛſr.GRٻgeO`dm4I D/0[6q*>q/;z=M K"Cۢ^i| ӚCu dxƘmjU^.RX l8Q^n"]b"vz?:7bqm$BCt_\%"oZÌ4;qLhϚ{Vݤ?>ܙs&q~źҢ(f->uCU"Br/t{-f[K" ]8fflO ob}͸\4i4Ec]>D`?:e[7DLaFu?g &pAc] rn$mFQ?gB<RC\)?ۜؾ Vg8B,&>>߶?#M!X(K9򠐃Y\VR:vh5 8 ]*43BLֹ7ۘJ i Cߤ 's҂sכNx5{)\HɣEhC#?xy"rrB2&x#V +Vt9'ap&|1LJc.PlɘET<'22-/[ʅg*{}cfQjp{l仔T?VcjΤ+l~z'S!BSaƏIbJ=}K3o4 vV-uQPxi^B*DbY_<7tX\rW;& ʂZ7<kpVze*q7, rr@(X6|M!k֚"va3ҡdѨ2zBYgqiu.$m]BE%)#"Χ{H@ '#VlqEivnO5Ce:%30 |beةw┮]gD ZXNa7 PA8oqڪ5XkN=㉑X/|9a9+сg{:)IcSwĐ?+** ȝz_sf/wZHClNA`hwlnj%$%!.={DEμ;BaC8`tLxp!QLbܱr *H0gbO,8$/"JLߘ 0ExU L!=t}sՃ"TW('Ѽ+$W؎l -1kO"n«ӳ3\8hVǡl-Sӧ? ň0Χ': ^?T[*eUC')|QZ\VؽhQա6QMaD; t'@yԥvArAgY1X*Q]S >%L4[T34b|=5 iCi9w3qRk ),Uwy88DВ(0dw&G%7C8?ߚRPb-Z~},P@H C1A5G  C1A5G~=B2Hh C1A5G~?E7?hE9B?hE6CrD@DigitalSignature$TG͵4//-**wssjhhCBBʖҊvqպ|uΜĜŷźշۨͻ³đ{iʹӞ涕ΫƊZØͥźȀ=͚͝ɟ̦s_˷qxɎ̖Dzzqgjbv{{Ҟ޽HZdbʓ֬ݶ*/>Icqǎѳlʍ»ěϺ{{U߮ްA|,٥/x<5-(A5UJs BYFJ1DUsssppp\\\MMM999&&&P.PUBFUR@55BR͏ RF:+.46*+5RWWWWrt+#-[?GE=+FUxrWs^'1[9?GWx.BUy"'1[9WWw.Fe"'1[9GWWWI+ю$'"""'1[WWWWW5юŹ[1'" WWWWWw+юt9[1'" WWWWWtF>юg9['1eedWWwww=B>䎞699[Ξ# {A5>ލ9999W4ͦe/_]n5>Ӎ999G6b["'1945>↍hWWW '[ZU񷢭AWWWWW "'*嵠$# WWWWG[[''""$+ൠ^WWWW?9[1'"#P൐uAWWr9[1'^:|ўu=WrG9[1^.觡0 G?930>ڦwuk0.>㧟WWގ}BяWAADIw ප*.**#6AD}II޶uee*####006я⥣||offZZZJGGw~~vvvlia??Gww~~vvphh?GGWW~~vvpph9_HWWWdnzzqqmh9dwKKKKKKKKKKK??a'--------------------------------------------------------------------------- ' ' Swyx Communications AG ' Joseph-von-Fraunhofer-Str. 13a ' 44227 Dortmund ' '--------------------------------------------------------------------------- ' ' Project: Installation ' ' Module: TestServerVersion.vbs ' ' Description: Check Version of IpPbxServer ' ' Comments: ' '-------------------------------------------------------------------------- ' ' $Archive:: /Products/PhoneWhitelistUpdate/_latest/_Master (Swyx Engli $ ' $Author:: Mucks $ ' $Date:: 13.06.05 14:49 $ ' $Modtime:: 13.06.05 13:58 $ ' $Revision:: 2 $ ' $Workfile:: TestServerVersion.vbs $ '--------------------------------------------------------------------------- Option Explicit ' Windows Installer Custom Action return values Const ERROR_SUCCESS = 0 Const ERROR_INSTALL_FAILURE = 1603 Const ERROR_FUNCTION_FAILED = 1627 ' WScriptMain Sub WScriptMain() Dim ret ret = CheckServerVersion("D:\Work\Marcus.Mucks\Products\SwyxServer Win32\_latest\_Master (Swyx English)\Files") msgbox( ret ) End Sub ' Sub for Custom Action Sub TestServerVersion On Error Resume Next Dim ServerVer, UpdatePath, bIsValid TestServerVersion = ERROR_FUNCTION_FAILED If Not IsObject(Session) Then Exit Sub UpdatePath = Session.Property("UPDATEDIR") LogMsi("Search for server executable in '" & UpdatePath & "'") ServerVer = CheckServerVersion( UpdatePath, bIsValid) LogMsi("Server Version: " & ServerVer) Session.Property("CA_SERVERVERSION") = ServerVer If bIsValid Then Session.Property("CA_SERVERVALID") = "1" Else Session.Property("CA_SERVERVALID") = Empty LogMsi("Invalid server version") End If TestServerVersion = ERROR_SUCCESS End Sub ' Private Functions ' Proof the current server version Private Function CheckServerVersion(serverPath, ByRef bIsValid) On Error Resume Next Dim i1,i2,i3,i4 CheckServerVersion = "" bIsValid = false If Not GetFileVersion( serverPath & "\IpPbxSrv.exe", i1, i2, i3, i4 ) Then Exit Function CheckServerVersion = i1 & "." & i2 & "." & i3 & "." & i4 If ( (i1=4 And i2=3 And i3=3 And i4>=131) Or _ (i1=4 And i2=3 And i3>3 ) Or _ (i1=4 And i2=4 And i3=0 And i4>=79 ) Or _ (i1=4 And i2=4 And i3>0 ) Or _ (i1=4 And i2>4 ) Or _ (i1>4 ) ) Then bIsValid = true End If End Function ' Read file version Private Function GetFileVersion(filename, ByRef iVer1, ByRef iVer2, ByRef iVer3, ByRef iVer4) On Error Resume Next Dim fso, strVer, verArray GetFileVersion = False Set fso = CreateObject("Scripting.FileSystemObject") strVer = fso.GetFileVersion(filename) If Len(strVer)=0 Then Exit Function verArray = Split(strVer, ".", -1, 1 ) if UBound(verArray)<>3 Then Exit Function iVer1=verArray(0) iVer2=verArray(1) iVer3=verArray(2) iVer4=verArray(3) GetFileVersion = True End Function ' Log a a message in the installer log file Private Function LogMsi(message) On Error Resume Next Dim objRec If Not IsObject(Session) Then MsgBox(message) Exit Function End If set objRec = Session.Installer.CreateRecord(1) objRec.StringData(1) = "[Custom Action]: " & message Session.message &H04000000, objRec End Function J&-0@Egrz0  *H  s0 o1 0 +0g +7Y0W02 +70$ F0!0 +^Oxi³4]7 j0F0. 0  *H 0c1erty;Cabinet;Shortcut;URLString categorySet of values that are permittedDescription of column 0 UBE10U GlobalSign nv-sa10U  ObjectSign CA1!0UGlobalSign ObjectSign CA0 050527102326Z 060527102326Z0`1 0 UDE10U Swyx Solutions10USwyx Solutions10 *H  support@swyx.com00  *H 0Pm`5VnO"X8c WUBTk|6\='$+ĬTQ=oyxhfM9ׄSic g2ݲj!ϐA08A"L ,:%]00 `HB0U0U#0[K&K]V.8NS09U2000.,*(http://crl.globalsign.net/ObjectSign.crl0  *H F"J`&w4#Sp7l uD;%8x]  5WU4+oʮy 2d+VښY}2 ,Rxp R ;<) Uں8I6[\k0kn0.1qUQkHWP*cS~;zi\ueI/ 1| 3Ū X0;1ܻQ_Vu~\!?Cu*&S 00 v0  *H 0W1 0 UBE10U GlobalSign nv-sa10U Root CA10UGlobalSign Root CA0 990128120000Z 090128120000Z01 0 UBE10U GlobalSign nv-sa1%0#U Primary Object Publishing CA100.U'GlobalSign Primary Object Publishing CA0"0  *H 0 u* q$ߡb)ܞusVWiVOȼX&r `UWɡt@lS7y>R8,3RpJ]bg^JʼݍGe[Kk͎.P補&k6cApD_%uyP}_F UGӑFh'AQzDhqXoB fuFD0cDpVoX*'.qRmF+HdRtE xs r^s00U0U00UQy| Y:x-M03U,0*0(&$"http://crl.globalsign.net/Root.crl0U#0`{fE ʉP/}4K0  *H @JkT,Gfd.K ;;ՊGI-]G%)4?NÞ!(4ʈ@((M1=R3؅oaν2ܚn_gmj wY+Qt?}u)K'ACKmLEOU#3h-}&.0kT'YSr>/Hdp??Nz(;=LOQCDfC,,[ZH: "@SD 9, eX0 0 Yt't0  *H 01 0 UBE10U GlobalSign nv-sa1%0#U Primary Object Publishing CA100.U'GlobalSign Primary Object Publishing CA0 040122090000Z 090128110000Z0c1 0 UBE10U GlobalSign nv-sa10U  ObjectSign CA1!0UGlobalSign ObjectSign CA0"0  *H 0 pÌ &ogYL±ESuA6op(|mr%e: {^78KX IX&Ymƹ%bN l]pӛ) X|Չ5W˛俔_wty@!c8sڥEM*<(u|`%N-ֵ4<8:=ı00U0U00U[K&K]V.8NS09U2000.,*(http://crl.globalsign.net/primobject.crl0 `HB0U#0Qy| Y:x-M0  *H H &YzWt%K3Ce }~d+ɆA+)Ѹ$-'DF<|`>"SNlt^ M^ޖ;Qj@pMSοplapL ARfD̊0J IkNO3?6\Z!  CnFm,7\=|%; ne] riRCEwcWáAR<+I8ߝ3n*G100r0c1 0 UBE10U GlobalSign nv-sa10U  ObjectSign CA1!0UGlobalSign ObjectSign CA 0 +j0 *H  1  +70# *H  12/-)^6G|]ۤS0( +7 10http://www.swyx.com 0  *H O{.<`GƋL#Fqқ=BMHf2L4-ـ3z@LNtgz*]+EU" X =>P1ϭ+~9fhw LFӖg4ɗ^R$uL0P *H A0=1 0 +0g +7Y0W02 +70$ F0!0 +^Oxi³4]750F0. 0  *H 0c1 0 UBE10U GlobalSign nv-sa10U  ObjectSign CA1!0UGlobalSign ObjectSign CA0 050527102326Z 060527102326Z0`1 0 UDE10U Swyx Solutions10USwyx Solutions10 *H  support@swyx.com00  *H 0Pm`5VnO"X8c WUBTk|6\='$+ĬTQ=oyxhfM9ׄSic g2ݲj!ϐA08A"L ,:%]00 `HB0U0U#0[K&K]V.8NS09U2000.,*(http://crl.globalsign.net/ObjectSign.crl0  *H F"J`&w4#Sp7l uD;%8x]  5WU4+oʮy 2d+VښY}2 ,Rxp R ;<) Uں8I6[\k0kn0.1qUQkHWP*cS~;zi\ueI/ 1| 3Ū X0;1ܻQ_Vu~\!?Cu*&S 00-GߍRFCmH 10  *H 01 0 UZA10U Western Cape10U Durbanville10 U Thawte10U Thawte Certification10UThawte Timestamping CA0 031204000000Z 131203235959Z0S1 0 UUS10U VeriSign, Inc.1+0)U"VeriSign Time Stamping Services CA0"0  *H 0 ʲ }uNgadڻ30X~k6xw~o< hlʽR-H=]_/kLR`@~ ?Ǵ߇_zj1.G 1s W-x43h/Š*Ë!fXWou<&]'x1"ijGC_^|}bM "Vͮv M٠h;004+(0&0$+0http://ocsp.verisign.com0U00AU:0806420http://crl.verisign.com/ThawteTimestampingCA.crl0U% 0 +0U0$U0010U TSA2048-1-530  *H JkXD1y+LͰXn)^ʓR G'/8ɓN"b?7!Op18UN$ҩ'NzaA*^ݻ+>W~ +;R8'?J00 v0  *H 0W1 0 UBE10U GlobalSign nv-sa10U Root CA10UGlobalSign Root CA0 990128120000Z 090128120000Z01 0 UBE10U GlobalSign nv-sa1%0#U Primary Object Publishing CA100.U'GlobalSign Primary Object Publishing CA0"0  *H 0 u* q$ߡb)ܞusVWiVOȼX&r `UWɡt@lS7y>R8,3RpJ]bg^JʼݍGe[Kk͎.P補&k6cApD_%uyP}_F UGӑFh'AQzDhqXoB fuFD0cDpVoX*'.qRmF+HdRtE xs r^s00U0U00UQy| Y:x-M03U,0*0(&$"http://crl.globalsign.net/Root.crl0U#0`{fE ʉP/}4K0  *H @JkT,Gfd.K ;;ՊGI-]G%)4?NÞ!(4ʈ@((M1=R3؅oaν2ܚn_gmj wY+Qt?}u)K'ACKmLEOU#3h-}&.0kT'YSr>/Hdp??Nz(;=LOQCDfC,,[ZH: "@SD 9, eX00 +)2 ^v0  *H 0S1 0 UUS10U VeriSign, Inc.1+0)U"VeriSign Time Stamping Services CA0 031204000000Z 081203235959Z0W1 0 UUS10U VeriSign, Inc.1/0-U&VeriSign Time Stamping Services Signer0"0  *H 0 P(HhzDfu]~ĸc&=C|8%Usu'iN \ *UV!a3kݣ7e S\|f5_EvNS \0"7LB U?R,z򢪍5]j=k㿖`@DQn*(P{J 0kX@( ~|vqiOG05!b<+َ*{\{❥o<0 0 Yt't0  *H 01 0 UBE10U GlobalSign nv-sa1%0#U Primary Object Publishing CA100.U'GlobalSign Primary Object Publishing CA0 040122090000Z 090128110000Z0c1 0 UBE10U GlobalSign nv-sa10U  ObjectSign CA1!0UGlobalSign ObjectSign CA0"0  *H 0 pÌ &ogYL±ESuA6op(|mr%e: {^78KX IX&Ymƹ%bN l]pӛ) X|Չ5W˛俔_wty@!c8sڥEM*<(u|`%N-ֵ4<8:=ı00U0U00U[K&K]V.8NS09U2000.,*(http://crl.globalsign.net/primobject.crl0 `HB0U#0Qy| Y:x-M0  *H H &YzWt%K3Ce }~d+ɆA+)Ѹ$-'DF<|`>"SNlt^ M^ޖ;Qj@pMSοplapL ARfD̊0J IkNO3?6\Z!  CnFm,7\=|%; ne] riRCEwcWáAR<+I8ߝ3n*G100r0c1 0 UBE10U GlobalSign nv-sa10U  ObjectSign CA1!0UGlobalSign ObjectSign CA 0 +j0 *H  1  +70# *H  12/-)^6G|]ۤS0( +7 10http://www.swyx.com 0  *H O{.<`GƋL#Fqқ=BMHf2L4-ـ3z@LNtgz*]+EU" X =>P1ϭ+~9fhw LFӖg4ɗ^R$uLڡ0 *H  100g0S1 0 UUS10U VeriSign, Inc.1+0)U"VeriSign Time Stamping Services CA +)2 ^v0 *H Y0 *H  1  *H 0 *H  1 050916142348Z0 *H  1ea #՞[aQ\R0  *H *BnPp?1WSiʬ{f88w{%ã!1A0?%3Ξ,2\d}tVW)3v}MvYY`,dC04j%NF pqPL7zu L.Ydp!-7uBTt=`S:tj|2X MOIDoRQHb 1Op1j|g=]ɳ n|