4Z1{N <Schema Software Map7ReportGLW~7y,6V ,Ic a 2EGetNode a  1 / sDImpActions M 0Ic a 7F"AddFunctionLinks 6 3 t@(SWUnitMajorFuncList'  u 4Ifs  5Ibx FuA(SWUnitMajorFuncEnum' v :FSetUpIterate ~ 9 8 =FIterate ~ < ; wJeAppContainer@FFindReport ? > DF$SWUnitSoftwareMap C A xJeDatabaseBIswu k GF CallSoftwareMap F E yJeDistributedH?"PathSoftwareDiagU' I  J , K NFBuildDisplay M L zJeDataFlowO?PathByPathV' P  Q ? R   UFBuildDisplay T S {JePresentationV?$PathSoftwareStackW' W  -X?$IABot_StripeShapeX' Y  .|JeDevelopmentZ?StickFigureY' [  /\?IASimpleBoxZ' ]  ^ 3 _ }JeControl`DDataObject  dF SetUp c a ~JeSecuritybIia  e?AppSimpleBox[' f  g 4 h ?SWFunction '       3 iDDataObject - mF SetUp l j ̓DSWUnit k FunctionskIa - n?SubStripe\' o  p > q ̈́D Kind  rD Levels? ContainerStripe]' t  u  v  a ͆DKindTitle   wDDataObject a xDNodeLevel͇DImplements % ImplementedByyDLowestLevelzDHighestLevel͈DHWPlatform  "OperatingSystems~F SetUp } { |Ic a ͉DRunTargets $ ̓FAddBox   ̀Ibx H͊D Calls  ́I level̈́?$SWContainerStripe^'   7͋DCalledBy 4  Calls͆?$HWContainerStripe_'   =͈?,ContainerStripeStripe`'    8   c ?&͍DRemoteCalls  ͌D Level͍?IAConna'    9   e ͎D*ConnectionTechnology  ͖F SetUp   ͒Istartbox H͐H NeedsImplements  FImplements attribute should be set͓Iendbox F͔Ileveldiff͒H NeedsRunTargets  NRunTargets attribute should have entry͗?FuncConnb'    :   g ͠F SetUp   ͔HNeedsConTech  ZConnectionTechnology attribute should be set͜Istartbox H͝Iendbox F͖HNeedsCallee  <Calls attribute should be set͞Ionright͡?ImpPathLinec'   ;͗?SWFuncCatBase!'       6 ͣ? ImpPathTextLined'    <   ͧDMsg ͛DSuperCategory  SubCategoriesͨDImpPath  ͭF SetUp   ͜DRequirements = ͪImsg ͫIip  ͝?(SWFuncCategoryGroup"'      ͰFHit   M.SWFunctionCategoryDiag  ͡DSubCategories 7 ͳ?SWFuncCatDiage'      ͷDTreeList j ͢?&SWFunctionCategory#'       9 ͺFBuildDisplay   ͻ?SWFuncCatTreef'        i ͦDSWFuncs 4  KindͿDDataObject  DBox  ͨDFacing    DHandleLenF SetUp   ͪDInterfaceKind    Isa  IexpandedͭEProducts (    Ihandlelen?SWFuncCatShapeg'       ͯD"ImplementsRunEnv  DDataObject  DExpandString ͱD NeedsRunTargets  F SetUp   Isf  ͳDNeedsConTech  IexpandedFHit   ܀%Q͵DIsClient  ?ProductShapeh'      DDataObject - ͶAFacingEnum$'  F SetUp   If - ͸JeApplicationFFindReport   ?ReqShapei'      ͹JeSysManagementDDataObject  F SetUp   ͺA$InterfaceKindEnum%'  Ir  YMSoftwareMap  ͼJ"eRequestResponse? SoftwareMapDiagj'      DProductList ( ProductsͽJ eConversationalDProdBoxList tDRunEnvBoxList n ;JeCalledCodeDRunEnvLine  DSupplierLine  ͿJeGatewayDSWOrderList tD SWUnitGroupList l J ePushDConTechs p DShowSuppliers  J eNoneDShowRunEnv  D ShowProdOptions  ?Requirement&'       < DCCProngLen  DProductStripe  D$IsCoreRequirement  F"BuildDisplayBase    FAddProduct H   DResponses . Ip - Ips ID$PossibleStandards C FAddSWProduct H    Ip O ?Supplier''       >  Ips IF"AddProductBundle H   DProducts ' SupplierIp ] Ips I?ConnectionTech('       @ F&AddProductVariants H   Ip X DUsedBy 4 *ConnectionTechnologyIps IFAddSWUnit     ?Standard)'       B Iswu k  FAddSWFunction     DAddOnModules C Iswf  %F*AddSWFunctionDetails $ ! ^9p IDCurrent  "Ibx  #Iswf  DPrecursor  )FAddRunTimeEnv   ( & 'Iae % DSuccessor  Precursor/F,AddMiddlewareEndPoint . * +Ibx  DRequirmentsFor = $PossibleStandards,Imep  -I lowerD&SupportingProducts * &StandardsSupported4FAddSupplier 3 0 1Ip - ?*StandardOrganization*'       E 2Ipbx H8FProcessSWUnit 7 5 DIsVendor  6Iswu k ;FFindReport : 9 DStandards D >FShowExample = < EFSearchRunTime D ? MConfigurations  @Iip  AIia  ?Configuration+'       G BI diag H CIrt % DApplications P LFSearchSWUnit K F GIip  DDatabases R HIia  II diag H DDBTransfers T JIswu k SFSearchProd R M DSystemApps V NIip  OIia  D Paths J PI diag H QIpr - D Nodes ^ T?$SoftwareMapByProdk' U  V  W XD CurrProductList ( ProductsDSWContainers ` [FBuildDisplay Z Y \?"SoftwareMapByEnvl' ]  ^  _ KM0ApplicationArchitecture  `DCurrEnvList % RunTimeEnvscFBuildDisplay b a ?StartPath,'       I d?(SoftwareMapProdLoopm' e  f  g kFProcessProd j h DNumber  iIp - nFBuildDisplay m l DStartsWithUser  qFIncludeProd o )EWnpIswp O ?StartReqRes-'      r?,SoftwareMapByFuncBasen' s  t  u vDCurrFuncList ;  AllSWCategoriesDStartAction  zECheckSWFunc y w xIswf  ?StartAsync.'      {?$SoftwareMapByFunco' |  }  ~ ͂FIncludeProd   DSequence N ̀Iswp O ̓?*SoftwareMapByFuncEnvp'      ?ImpAction/'       L ͇D"CurrOtherEnvList % RunTimeEnvs͋FIncludeProd    DSubActions N ͉Iswp O ͌?(SoftwareMapByTwoEnvq'       DSeqSubActions  ͐DCurrEnvList % RunTimeEnvs͑D"CurrOtherEnvList % RunTimeEnvs DSysFunctions  ͔FBuildDisplay   ͕?,SoftwareMapBySupplierr'      DContainer a ͙D"CurrSupplierList ? Suppliers͜FBuildDisplay   @SysFuncSet0'   ͝?,SoftwareMapOneRunTimes'       % ͣFBuildDisplay   A SysFunctionEnum1'  ͤ?&SoftwareMapOneFunct'        ͫFIncludeProd   JeGatewayͩIswp O ͬ?&SoftwareMapOneProdu'       - JeRouterͲFBuildDisplay   ͳ?$SoftwareMapOneMidv'        JeBackupSwitchͺFIncludeProd   ͸Iswp O J eDataConversionͻ?.SoftwareMapOneFuncKindw'        FIncludeProd   JeAccessControlIswp O ?(ProductBundleStripex'      JeAuthenticatorDDataObject ] F SetUp   JeFaultMonitorfӰ-Ip ] ?*ProductVariantStripey'      JePerfMonitorDDataObject X F SetUp   JeDBAccessIp X ?SWUnitGroupz'       k J(eTransactionMonitorDDataObject k DTopStripe > ?AppImpAction2'      DBotStripe > F SetUp    DApp - Iswu k FAddFunction   !?SWUnitAction3' "  #  $ Ifb  Iswf  %DSWUnit k F FindFunctionBox     Iswf  &?NetworkAction4' ' ?RunTimeEnvBox{'       m DDataObject % (? StartPathAction5' )  *  + DSWUnitList tF SetUp   ,D Path  Iaep % FAddSWUnit   -?Application6' .  /  0  O Isbx H?SWProductBox|'      1DRunsIn % DDataObject O F SetUp   2DDatabases R 2Configurations.DatabasesIp O ?SupplierBox}'      3DInstances X AppDDataObject  F SetUp   4?Database7' 5  6  7  Q Iv   ?SWFunctionBox~'      8D Apps P Databases8Configurations.Applications DDataObject  D Title 9DInstances Z DatabaseF SetUp   Itxt :?DBTransfer8' ;  <  =  S Iswf  ?ConnectorBase'      >DTo Y F SetUp   Ist H?D From Y Ien H?SWUnitAppLink'   v@DCategory A ?"SWServerFuncLink'   !  " )F SetUp ( # AADBTransferEnum9' B $Ist H%Ien HCJ eETL&Istarttop'IendtopDJeDBCopy*?ContainerLink' +  ,?SWMapOwnerLink' -  E?SystemApp:' F  G  H  U .?&SwuOptionsProdLink' /  0?$RunTimeTargetLink' 1  IDService  2?ConnectorComb' 3  4  5  o Ϳ=Software Map  |  '    t u v w x y Version 1.0 s 6DDataObject  JD Node h *Configurations.Nodes;F SetUp : 7 8Ict  {MPhysicalModel L 9IpronglenM Main  <?ProdOptionConn' =  M?SWInstance;' N  O >?SWFuncStripe' ?  @?DiskFigure' A  PD Node h *Configurations.NodesB?BigArrowFigure' C  ?SoftwareMap'    D?&AppContainerFigure' E  Q?AppInstance<' R  S  T  W F?DataFlowFigure' G  H?PresyFigure' I  UDApp - InstancesJ?$DevelopmentFigure' K  DRunTimeEnvs % L?"SysControlFigure' M  WDBackup V N?SecurityFigure' O  P?NameShape' Q  R  S XDDBInstances Z TD Text D"SWFuncCategories 7 XF SetUp W U Y?DBInstance=' Z  [  \  Y VItxt MComparison Z ]DDatabase 4 [?ComparisonDiag' \  ] X ^ DSuppliers ? _DProfiles r _DBackup ^ `DCurrFuncList ;  AllSWCategoriesq@a aDCurrEnvList % RunTimeEnvs`DAppInstances X DBInstancesbDProductList ( D ConnectionTechs A dDProfileNum c a?Container>' b  c  d  [ eDEnvListEmptyhFBuildDisplay g f eDSysFunctions  lFProcessProd k i  DStandardsOrgs F jIp - fD&EmbeddedContainers \ pFIncludeProd o m nIswp O gDContainer a &EmbeddedContainersq?Profile' r  s  q  DConfigurations H tD Name h? Node?' i  j  k  ] uDProducts ( v?"TableAcrossShape' w  YmDNumber l x?TableDownShape' y  Z DProducts (   z?ColShape' {  [nD Apps X  Node8Configurations.Applications|?TextRightBox' }  ~ \  ̀D Text oDDatabases Z  Nodë́F SetUp   D AllSWCategories :   ͂It qDTierNumber p ͈FChangeName ~   ͆INewText rDManager E 4Configurations.SystemApps͉?TextProfileBox'    d  D Paths K   ͍DDataObject q uEFullName  t s ͎D Text ͒F SetUp   v?SWContainer@' w  x  y  _ ͐Ip q ?NamedObj'      ͖FChangeName ~   zDSWUnit k ͔INewText ͗?BlankBox'   ]MCommonShapes } ͙?TickedBox'    ^  D Name ͝DProduct - ~?InfoTextLineA'      ͞DProfile q ͣF SetUp   ̓DMargin  ͠Ip - EGetName    ʌp ͡Ipr q ̈́? HeadingTextLineB'      ͦFHit   ͧ?NotTickedBox'    _  ͈DMsg ͫDProduct - ?ReportedObj'      ͬDProfile q ͌F SetUp   ͱF SetUp   ͮIp - ͊Imsg ͯIpr q DReport ZʹFHit   ͍?LineTextLineC'      ͵?ActionBox'    `  [ ͹D Text ͑DMsg ͺDId?$ActionImplementer'  ͿF SetUp   ͕F SetUp   ͼIt ͽIid͓Imsg FHit    ?HWPlatform' !  "  # ? RequirementsRow'    a  ͖?BlankTextLineD'   DDataObject  F SetUp   ͘?InfoTextBoxE'      Ir  $D"OperatingSystems 4 ?MultiBox'    b  ͟FAdd   FAdd   Iid ͝Iitl ~ If e %?RunTimeEnv' &  '  (  # ?SmallTextBox'    c  ͢FAddBlankLine   DDataObject e D Text ͣ?BoxWithNameF'      F SetUp   )DImplementedBy 4 It ͧDDataObject  If e M Guide  ͫFChangeName ~   ?ProductReport'      *DSWUnitsCanRun 1 RunsInDInxͩINewText DSubInxDBlankProduct Zͬ?StripeWithNameG'      DBlankSupplier Z,HIsAppContainer + pImplementedBy entry does not implement run environmentsDBlankRunEnv ZͰDDataObject  R,˟ DBlankSWFunc ZDBlankMid ZʹFChangeName ~   DBlankPath Z-?Product' .  /  0  & FProductList }   ͲINewText FSupplierList }   FRunEnvList }   ͵? MainStripeFrameH'   FProcessReq   1DVersionId Iswf  ͷ?InServerStripeI'   Is ZI super͹?"HorzStripeSimpleJ'   FSWFuncList }   2DSupplier  FProcessCatList }   ͻ?"VertStripeSimpleK'   Ilst 8 FMidList }   ͽ?MainStripeVertL'    FPathList }   4DLicenseKind =  3  FStandardList }   Ϳ?MainStripeHorzM'   FCreateStandard Z   Is  ?IconBaseN'      R0Software Map By Product 5DIsOptionFor ' R8Software Map By Environment FHit  R2Software Map By Function R:Software Map By Func And Env ?ExpandPersistO'      RBSoftware Map By Two Environments 6DHasOptions ' IsOptionForR2Software Map By Supplier DExpanded qR$Focus on Run Time  % R$Focus on Function   ? ContractActIconP'      R"Focus on Product  - 8DCurrent 7 R(Focus on Middleware   F SetUp   R.Focus on Function Kind   R(Path Configurations ,Iob RFocus on Path ?  9DPrecursor - !R.SW Function Categories I left"R&Feature Comparison X:.Ƣ  $@RunTimeEnvSet'  % Itop%@RunTimeEnvList'  % :DSuccessor - Precursor'@ProductSet'  - FHit   (@ProductList'  - *@"ProductCommonSet'  B ?ExpandActIconQ'      ,@SWProductSet'  O <EAllFeatures /  ; .@FeatureSet'  e F SetUp   /@FeatureList'  e 1@SWUnitSet'  k Iob2@SWUnitList'  k =A LicenseKindEnum' > 4@SWFunctionSet'   I left5@SWFunctionList'   7@"SWFuncCatBaseSet'   Itop8@$SWFuncCatBaseList'   ?JeOpenSource:@,SWFunctionCategorySet'   FHit   ;@.SWFunctionCategoryList'   =@RequirementSet'   ?LargeLabelR'      ?@SupplierList'   @J eDualA@&ConnectionTechList'   D Text C@StandardSet'   D@StandardList'   F SetUp   F@0StandardOrganizationSet'   AJeCommercialH@$ConfigurationList'   Itxt J@StartPathSet'   K@StartPathList'   I leftM@ImpActionSet'   B?ProductCommon' C  D  E  ) N@ImpActionList'   ItopP@ApplicationSet'  - R@DatabaseSet'  4 APositionEnumS'  T@DBTransferSet'  : FD&StandardsSupported C V@SystemAppSet'  E JPositionMiddleX@AppInstanceSet'  Q Z@DBInstanceSet'  Y JPositionLeft\@ContainerSet'  a GDFeatures . ^@NodeSet'  h ͱMPathSoftware  `@SWContainerSet'  v ^uN b@(ContainerStripeList'  s ?PathDiagBaseT'      d@4ContainerStripeStripeList'   HD$OwningProdVariant X f@IAConnList'   DImpPathList K *Configurations.Pathsh@FuncConnList'   j@$SWFuncCatTreeList'   DXOffsetl@ SWUnitGroupList'   KEAllFeatures /  J I n@$RunTimeEnvBoxList'   DIterateLine  p@$ConnectorCombList'  2 r@ProfileList'  q DLastBox FzNameStyle ANEAllStandards D  M L {SmallNameStyleADIAConns f |Info_TextStyle A}BoxHeadingADFuncConns h ~HeadMsgStyle`AO?SWProduct' P  Q  R  + (Underline_TextStyle AddD"ContainerStripes d ̀&DataFlowAnnotStyle@Á&ItalicHeadingStyleADShowSecurity  ͂LargeLabelASDSWUnits 2 ̓NameRightStyle ADShowSysMgmt  ̈́ActionStyleAͅ"SmallCentreStyleAD(ShowRoutingGateways  ͆ BlueCentreStyle ATDSetOptionsIn 2 ͇6SWFuncRequestResponseStyle?  D"AuthenticateText  ͈@@͉0SWFuncConversationStyle?     D$AccessControlText  ͊@@WESWFunctions 5  V U ͋ @? D"FaultMonitorText  ͌BoxStyle??͍DiskStyle3? D PerfMonitorText  ͎BigArrowStyle3?X? ProductVariants' Y  Z  [ ͏ SWFuncIconStyle? D"BackupSwitchText  ͐AppArrowStyle  ͑@@@'pN DRoutingText  ͒DBArrowStyle  \DProducts * $OwningProdVariant͓@@@DGatewayText  ͔$DiskNoBorderStyle͕AppContStyle?D DataConvertText  ͖PathLineStyle@]?ProductBundle' ^  _  ` ͗ContainerStyleDBlankContainer s ͘ AppBoxRectStyle͙"IASimpleBoxStyleddDContainerList b ͚MachineStyledaDProducts ' ͛AppContStyle?DLastContainer a ͜PresyStyledd222?͝SysContStyle222?DAppBoxList t͞DataFlowStyle@@  dEAllFeatures /  c b ͟33?33?D&LastContainerLevel͠SWUnitStyled?  ͡@@DStickFigure Z ͢ RunTimeEnvStyle?e?Feature' f  g  h  - ͣSWProdStyled?F"BuildDisplayBase   ͤ"ProdVariantStyledd?ͥ ProdBundleStyleddd?F"AddIAInContainer   ͦ SWFunctionStyleddd?iDShortTag ͧ(FuncCallNetworktyleddd?Iia  ͨ&SWUnitAppLinkStyle?  ͩ@@@Iims  ͪ,SWServerFuncLinkStyle?  jDRequirements = Responsesͫ@@@I levelͬ&ContainerLinkStyle@  ͭ@@@Ireplytocallerͮ(SWMapOwnerLinkStyle?  k?SWUnit' l  m  n  0 ͯ@@@$FAddContainer s  #  Ͱ0SwuOptionsProdLinkStyleddd?  ͱ@@@!Ic a Ͳ.RunTimeTargetLinkStyledd?  oDInProducts , SWUnitsͳ@@@"I levelʹ&ConnectorTechStyledd A333?  . csڍ͵??)F"AddContainerConn ( % Ͷ"SupplierBoxStyle2dddpDRunsIn $ ͷAllBlack&I stcon a ͸"ProductTickLines͹"ProductNoTickBoxddd'Iendcon a ͺ$SmallTextBoxStyleddd?qDMajorFuncList t ͻ.ProductOptionLinkStyle?  .F(FindContainerStripe s  - * ͼ@@@ͽProductTickBox222+Iss I;BlackLineStyle?rDFunctions 4 y^xJwQvOuHtb6z { | } ~                                                  q@r o@p m@n k@l i@j g@h e@f c@d a@b _@` ]@^ [@\ Y@Z W@X U@V S@T Q@R O@P L@M N I@J K G@H E@F B@C D @@A >@? <@= 9@: ; 6@7 8 3@4 5 0@1 2 -@. / +@, )@* &@' ( #@$ % A             ! " E  EEEE EE   EEEDC                  B`@ G E  XP?VDC   BHE  DC BIE DC  BIEͻE  ͸DͷC    ͶBHͲEͭE  ͪDͩC    ͨBHͤE͟E  ͜D͛C    ͚BH͘BH͓E ͏E ͌D͋C    ͊BHͅE ́E D~C   }BH{BIyBIwBIsDrCt u mEn iEj fE^D]C _ ` a b d e h l p \BDZ@[ q v x z |         UEV SDRCT X QBHOBHMBHKBHIBHGBHEBHCBHABH?BI=B 7E8 9 5D4C6 ; 3BP1B /B -B +B #E$ % & ' "D!C)  BNB E  DC BNE   D C     BHE DC  B E DC  B E E DC    B E E  ̧]ɊE DC      BIE DC  B E DC  B ͿE ;DͽC ͼBd ͷE ͶD͵C ʹBd ͰEͯDͮC ͭB ͨE ͧDͦC ͥBd ͡E͠D͟C ͞B ͚E͘D͗C  ͖B ͒E͏D͎C   ͍B ͈E ͆DͅC  ̈́Br E ~D}C |Br wEx uDtCv z sBd oEp lEhEi gDfCk n q eB aE_D^C` c ]B YEWDVCX [ UB MEN O P Q FEG H I J ?E@ A B C <E9E5E6 0E1 2 *E+ , - &E' !E" # E E E  E   E   E  EDC                    % ) / 4 8 ; > E L S BD@( T \ d r {                   * , . 0 2 < > @ B D F H J L N P E DC  BH=x$EE DC   BHEE  DC    BJE   ;DͽC    ͼBI͸EͶD͵C  ʹB Ͳ@     ͮEͩE  ͦDͥC    ͤB~ ͢BQ͛E   ͚D͙C ͘BN͑E   ͐D͏C ͎BN͋D͊C ͉BI͇Bs ͅBs E  {E| vDuCw x y z ~  tBIqDpCr oBIjEk hDgCi m fBHaEb _D^C` d ]BH[BHYBIWBISERDQCU PB LEKDJCN IB EEAEB >E;E8E3E4 5 /E0 *E+ , %E& '  E! " E    EDC$                          $ ) . 2 7 : = @ D G B @ H O V X Z \ e n s        F  E   DC  BHEE   DC  B E%$UBTE   DC  B DC BDEDC BHBI;BIͼBIͺBI͸BIͶBIͱE ͯDͮC  ͭBIͨE ͦDͥC  ͤBH͠E͜E ͛D͚C  ͙BI͗B~ ͒E ͐D͏C  ͎B~ ͉E ͇D͆C  ͅB~ ́D̀C BH}@~                   |G   Y  yDxCz wBa sEkDjCm n o q r u iBa dDcCe f g bB \D[C] _ ` ZBM TDSCU W X RBM ODNCP L@M Q Y a h v HDGCI J FB BFC D =D<C> ? @ ;B 7D6C8 9 5B 0D/C1 2 3 .B +D*C, )B 'B $D#C% "B DC  B F            DC     B DC B DC B DC  B 3)u Dp@       ! & ( - 4 : A E DC       B @ DC  B DC      B DC B DC B DC   B ͻF      ͷF  ͫEͥDͤC        ͣB ͠D͟C ͞B ͚D͙C  ͘B ͂D    ́C           ̀B vFw x y z { | } ~ nDmCo p q r s lB hDgCi j fB bE`D_Ca d ^B- [DZC\ YBB UERDQCS T W PBB LEIEEDDCF G H K N CB- >F? @ A ;E0D/C 1 2 4 5 6 8 9 : < .B (D, 'C) * &B #D"C$ !B B DC B EDC  BADC          @     % - = B O X ] e k t u            G  K { s8Model design is copyright (c) 2008, Polyphony IT Ltd, UKLlocals sec := new _ReportSection; do sec.Heading := s.Name; sec.Id : \b= gen_id(s); if not s.Current then sec.Text := sec.Text & "<p><b>This standard is not current.</b></p>" endif; sec.Text := sec.Text & "<p>" & s.Description & "</p>"; if notnull s.Precursor then sec.Text := sec.Text & "<p>The standard replaces " & s.Precursor.Name & ".</p>"; endif; if notnull s.Successor then sec.Text := sec.Text & "<p>This standard is superseded by " & s.Precursor.Name & ".</p>"; endif; if notempty(s.AddOnModules) then for ss := s.AddOnModules do sec.Sections append CreateStandard(ss); endfor; endif; return sec; endlocals; L   locals rsr _ReportSectionList; do for so := model.StandardsOrgs do locals s := new _ReportSection; do s.Heading := so.Name; s.Text := "<p>" & so.Description & "</p><p>" & "There is one subsection for each standard for which we have information.</p>"; if notnull so.IsVendor then locals t1 := "<p>This standards organization is a vendor as well."; do if notnull so.IsVendor.Report then s.Text := s.Text & t1 & " <ref " & so.IsVendor.Report.Id & ">Click here</ref> to see information the vendor information.</p>"; else s.Text := s.Text & t1 & "</p>"; endif; endlocals; endif; for std := so.Standards where std.Current do s.Sections append CreateStandard(std); endfor; for std := so.Standards where not std.Current do s.Sections append CreateStandard(std); endfor; rsr append s; endlocals; endfor; return rsr; endlocals; wlocals rsr _ReportSectionList; s _ReportSection; do for ip := model.Paths do if isnull ip.Report the}Vn s := clone BlankMid; s.Heading := ip.Name; else s := clone ip.Report; endif; s.SelectedObj := ip; rsr append s; endfor; return rsr; endlocals;  w  ^locals rsr _ReportSectionList; s _ReportSection; do for ct := model.ConnectionTechs do if isnull ct.Report then s := clone BlankMid; s.Heading := ct.Name; else s := clone ct.Report; endif; s.SelectedObj := ct; rsr append s; endfor; return rsr; endlocals; locals rsr _ReportSectionList; s _ReportSection; do for swf := lst do if isnull swf.Report then s := clone BlankSWFunc; s.Heading := swf.Name; else s := clone swf.Report; endif; ProcessReq(swf, s, false); s.SelectedObj := swf; if swf is SWFuncCategoryGroup -> fcg then s.Sections := ProcessCatList(fcg.SubCategories); endif; rsr append s; endfor; return rsr; endlocals; /return ProcessCatList(model.SWFuncCategories); if notnull swf.SuperCategory then ProcessReq(swf.SuperCategory, s, true); endif; if notempty(swf.Requirements) then if super then s.Text := s.Text & "<p>This function has inherited the following requirements from " & swf.Name & ":</p>"; else s.Text := s.Text & "<p>This function has the following requirements:</p>"; endif; for r := swf.Requirements do locals desc := r.Description; do if length(desc) > 0 then s.Text := s.Text & "<p><b>" & r.Name & "</b></p><p>" & desc & "</p>"; else s.Text := s.Text & "<p><b>" & r.Name & "</b></p><p>No information.</p>"; endif; endlocals; endfor; endif; g .>]locals rsr _ReportSectionList; s _ReportSection; do for rt := model.RunTimeEnvs do if isnull rt.Report then s := clone BlankRunEnv; s.Heading := rt.Name; else s := clone rt.Report; endif; s.SelectedObj := rt; rsr append s; endfor; return rsr; endlocals; locals rsr _ReportSectionList; s _ReportSection; do for v := model.Suppliers do if isnull v.Report then s := clone BlankProduct; s.Heading := v.Name; else s := clone v.Report; endif; s.SelectedObj := v; rsr append s; if empty(v.Products) then s.Text := s.Text & "<p>We have no records for products for this Supplier.</p>"; else s.Text := s.Text & "<p>Products from this Supplier are:</p><ul>"; for p := v.Products do s.Text := s.Text & "<li><ref " & gen_id(p) & ">" & p.Name & "</ref></li>"; endfor; s.Text := s.Text & "</ul>"; endif; endfor; return rsr; endlocals; vlocals rsr _ReportSectionList; s _ReportSection; do for p := model.Products do if isnull p.Report then s := clone BlankProduct; s.Heading := p.Name; else s := clone p.Report; endif; s.Id := gen_id(p); if notnull p.Successor then s.Text := "<p>This product is superseded by " & p.Successor.Name & ".</p>" & s.Text; endif; if notnull p.Precursor then s.Text := "<p>This product replaces " & p.Precursor.Name & ".</p>" & s.Text; endif; if not p.Current then s.Text := "<p><b>This product is not current.</b></p>" & s.Text; endif; if p is ProductBundle -> pb then s.Text := s.Text & "<p>This product is a bundle of the following products:</p><ul>"; for sp := pb.Products do s.TexhۍdYt := s.Text & "<li><ref " & gen_id(sp) & ">" & sp.Name & "</ref></li>"; endfor; s.Text := s.Text & "</ul>"; elseif p is ProductCommon -> pc then if p is ProductVariants -> pv then s.Text := s.Text & "<p>This product has the following variants:</p><ul>"; for sp := pv.Products do s.Text := s.Text & "<li><ref " & gen_id(sp) & ">" & sp.Name & "</ref></li>"; endfor; s.Text := s.Text & "</ul>"; endif; if notempty(pc.AllFeatures()) then s.Text := s.Text & "<p>This product provides the following features:</p>"; for f := pc.AllFeatures() do if length(f.Description) > 0 then s.Text := s.Text & "<p><b>" & f.Name & "</b></p><p>" & f.Description & "</p><p>The code for this feature is <b>" & f.ShortTag & "</b>.</p>"; else s.Text := s.Text & "<p><b>" & f.Name & "</b></p>" & "<p>The code for this feature is <b>" & f.ShortTag & "</b>.</p>"; endif; endfor; endif; if notempty(pc.AllStandards()) then s.Text := s.Text & "<p>Standards supported by this product are:</p><ul>"; for ss := pc.AllStandards() do if isnull p.Report then s.Text := s.Text & "<li> " & p.Name & "</li>"; else s.Text := s.Text & "<li><ref " & gen_id(ss) & ">" & ss.Name & "</ref></li>"; endif; endfor; s.Text := s.Text & "</ul>"; endif; endif; s.SelectedObj := p; rsr append s; endfor; retuIȶ-rn rsr; endlocals; v    Text := t; 2Shapes append new SmallTextBox call SetUp(id, f); DataObject := r; locals pr := new Profile; do pr.Name := "Profile" & str(context.ProfileNum); context.ProfileNum := context.ProfileNum + 1; context.Profiles append pr; endlocals; ;Text := t; Id := id; ͳ!Profile.Products append Product; ͰProduct := p; Profile := pr; ͥ!Profile.Products remove Product; ͢Product := p; Profile := pr; ͕4DataObject.Name := NewText; return RedisplayShapes; ͑DataObject := p; ͇)Text := NewText; return RedisplayShapes; ̓ Text := t; oif EnvListEmpty then for swu := swp.SWUnits; swf := swu.Functions do if swf.Kind in CurrFuncList then return true; endif; endfor; else for swu := swp.SWUnits; rt := swu.RunsIn where rt in CurrEnvList; swf := swu.Functions do if swf.Kind in CurrFuncList then return true; endif; endfor; endif; return false; kif p is SWProduct -> swp then if p notin ProductList and IncludeProd(swp) then ProductList append p; endif; elseif p is ProductBundle -> pb then for sp := pb.Products do ProcessProd(sp); endfor; endif; MEnvListEmpty := empty(CurrEnvList); for p := model.Products where p.Current do ProcessProd(p); endfor; locals mv := new MainStripeVert; tab1 := new TableAcrossShape; col1 := new ColShape; ticks := 0; do mv.BoxAlignment := LeftOrTop; mv.Left := 100; mv.Top := 100; Shapes append mv; mv.Shapes append tab1; tab1.Shapes append col1; col1.Shapes append new BlankBox; for p := ProductList do if empty(p.AllFeatures()) then col1.Shapes append new TextRightBox call SetUp(p.Name & " *"); else col1.SY_Ohapes append new TextRightBox call SetUp(p.Name); endif; endfor; col1.Shapes append new TextRightBox call SetUp("* = the product has no Features documented"); for pr := Profiles do locals colp := new ColShape; do colp.Shapes append new TextProfileBox call SetUp(pr); for px := ProductList do if px in pr.Products then colp.Shapes append new TickedBox call SetUp(px, pr); ticks := ticks + 1; else colp.Shapes append new NotTickedBox call SetUp(px, pr); endif; endfor; tab1.Shapes append colp; endlocals; endfor; tab1.Shapes append new ActionBox call SetUp("Add Profile", 1); if ticks > 0 then locals reqlist := new TableDownShape; do mv.Shapes append reqlist; locals hd := new RequirementsRow; do hd.Shapes append new BlankBox; for ppr := Profiles do hd.Shapes append new TextProfileBox call SetUp(ppr); endfor; reqlist.Shapes append hd; endlocals; for c := CurrFuncList; r := c.Requirements; do locals rr := new RequirementsRow call SetUp(r); do rr.Shapes append new TextRightBox call SetUp(r.Name); for pr := Profiles do locals mb := new MultiBox; do for p := pr.Products; f := p.AllFeatures(); do if r in f.Requirements then mb.Add(f.ShortTag, f); endif; endfor; rr.Shapes append mb; endlocals; endfor; )ܳ] reqlist.Shapes append rr; endlocals; endfor; endlocals; endif; endlocals; gM   c1W Text := txt; :(DataObject := ct; ProngLen := pronglen; (StartBox := st; EndBox := en; if starttop then StartSide := Top; else StartSide := Bottom; endif; if endtop then EndSide := Top; else EndSide := Bottom; endif; StartBox := st; EndBox := en; DataObject := swf; if isnull swf.Name then Title := txt; else Title := txt & ": " & swf.Name; endif; if notnull swf.Kind then DisplayControl := flag(swf.Kind.InterfaceKind); endif; DataObject := v; DataObject := p; SWUnitList append sbx; DataObject := aep; for ts := TopStripe.Shapes where ts.DataObject = swf do if ts is SWFunctionBox -> fb then return fb; endif; endfor; for bs := BotStripe.Shapes where bs.DataObject = swf do if bs is SWFunctionBox -> fb then return fb; endif; endfor; return null; if notnull swf.Kind and swf.Kind.Facing = eSysManagement then BotStripe.Shapes append fb; else TopStripe.Shapes append fb; endif; DataObject := swu; locals midstripe := new SWFuncStripe; do TopStripe := new SWFuncStripe; BotStripe := new SWFuncStripe; midstripe.Spacing := 20; Shapes append TopStripe; Shapes append midstripe; Shapes append BotStripe; for mf := swu.MajorFuncList do switch mf case eDatabase: midstripe.Shapes append new DiskFigure; case eDistributed: midstripe.Shapes append new BigArrowFigure; case eAppContainer: midstripe.Shapes append new AppContainerFigure; case eDataFlow: midstripe.Shapes append new DataFlowFigure; case ePresentation: midstripe.Shapes append new PresyFigure; case eDeWQvelopment: midstripe.Shapes append new DevelopmentFigure; case eControl: midstripe.Shapes append new SysControlFigure; case eSecurity: midstripe.Shapes append new SecurityFigure; endswitch; endfor; midstripe.Shapes append new NameShape call SetUp(swu.Name); endlocals;  Q DataObject := p; DataObject := p; tfor swf := swp.SWFunctions do if swf.Kind = selected then return true; endif; endfor; return false; ͹for swf := swp.SWFunctions do if notnull swf.ConnectionTechnology and swf.ConnectionTechnology = selected then return true; endif; endfor; return false; ͱ1ProductList append selected; BuildDisplayBase(); ͪlocals k := selected.Kind; do for swf := swp.SWFunctions do if swf.Kind = k then return true; endif; endfor; endlocals; return false; ͢for ib := selected.ImplementedBy where notnull ib.SWUnit do ProcessSWUnit(ib.SWUnit); endfor; for cr := selected.SWUnitsCanRun do ProcessSWUnit(cr); endfor; BuildDisplayBase(); ͛for c := CurrSupplierList; p := c.Products do ProductList append p; endfor; ShowSuppliers := true; BuildDisplayBase(); ͓for ct := model.ConnectionTechs do locals inone := false; inother := false; swul SWUnitList; do for ub := ct.UsedBy where notnull ub.SWUnit; rt := ub.SWUnit.RunsIn do if rt in CurrEnvList then inone := true; swul append ub.SWUnit; endif; if rt in CurrOtherEnvList then inother := true; swul append ub.SWUnit; endif; endfor; if inone and inother then for swu := swul do ProcessSWUnit(swu); endfor; endif; endlocals; endfor; BuildDisplayBase(); M|1=^͊for swu := swp.SWUnits; rt := swu.RunsIn do if rt in CurrOtherEnvList then for swf := swu.Functions do if CheckSWFunc(swf) then return true; endif; endfor; endif; endfor; return false; ́qfor swf := swp.SWFunctions do if CheckSWFunc(swf) then return true; endif; endfor; return false; y!return swf.Kind in CurrFuncList; mKfor p := model.Products do ProcessProd(p); endfor; BuildDisplayBase(); j;if p is SWProduct -> swp then if IncludeProd(swp) then ProductList append p; endif; elseif p is ProductBundle -> pb then for sp := pb.Products do ProcessProd(sp); endfor; elseif p is ProductVariants -> pv then for sp := pv.Products do ProcessProd(sp); endfor; endif; bfor e := CurrEnvList do for ib := e.ImplementedBy where notnull ib.SWUnit do ProcessSWUnit(ib.SWUnit); endfor; for cr := e.SWUnitsCanRun do ProcessSWUnit(cr); endfor; endfor; BuildDisplayBase(); Z<ProductList appendlist CurrProductList; BuildDisplayBase(); Rif ia is SWUnitAction -> sua then if notnull sua.SWUnit and pr in sua.SWUnit.InProducts then diag.ImpPathList append ip; endif; endif; for sa := ia.SubActions do SearchProd(ip, sa, diag, pr); endfor; Kif ia is SWUnitAction -> sua then if notnull sua.SWUnit and sua.SWUnit = swu then diag.ImpPathList append ip; endif; endif; for sa := ia.SubActions do SearchSWUnit(ip, sa, diag, swu); endfor; Dpif ia is AppImpAction -> aia then if notnull aia.App and notnull aia.App.RunsIn and aia.App.RunsIn = rt then diag.ImpPathList append ip; endif; elseif ia is SWUnitAction -> sua then if rt in sua.SWUnit.RunsIn then diag.ImpPathList append ip; endif; endif; for sa := ia.SubActions do SearchRunTime(ip, sa, diag, rt); endfor; pvz#|=8locals diag := new PathSoftwareDiag; do for ip := model.Paths do if ip is StartReqRes -> srr then if selected is RunTimeEnv -> rt then SearchRunTime(ip, srr.StartAction, diag, rt); elseif selected is SWUnit -> swu then SearchSWUnit(ip, srr.StartAction, diag, swu); elseif selected is Product -> pr then SearchProd(ip, srr.StartAction, diag, pr); endif; elseif ip is StartAsync -> sa then for s := sa.Sequence do if selected is RunTimeEnv -> rt then SearchRunTime(ip, s, diag, rt); elseif selected is SWUnit -> swu then SearchSWUnit(ip, s, diag, swu); elseif selected is Product -> pr then SearchProd(ip, s, diag, pr); endif; endfor; endif; endfor; if notempty(diag.ImpPathList) then call_diagram_no_form(diag); else display "No configuration example found"; endif; endlocals; :kif notnull selected then if selected is ReportedObj -> ro then if notnull ro.Report then show_report("Report", ro.Report.Id); else display "Report for this shape is empty"; endif; else display "This type of shape has no associated report"; endif; return; endif; display "No selected shape"; 7lfor p := swu.InProducts do if p notin ProductList then ProductList append p; endif; endfor; if ShowSuppliers and notnull p.Supplier then locals ven := p.Supplier; do if isnull SupplierLine then SupplierLine := new MainStripeHorz; else for v := SupplierLine.Shapes where v.DataObject = ven do Shapes append new SWMapOwnerLink call SetUp(v, pbx); return; endfor; endif; locals vbx := new SupplierBox call SetUp(ven); [_\ do SupplierLine.Shapes append vbx; Shapes append new SWMapOwnerLink call SetUp(vbx, pbx); endlocals; endlocals; endif; 3  .locals ct := mep.ConnectionTechnology; do for ctbx := ConTechs where ctbx.DataObject = ct do if bx notin ctbx.ProngBoxes then ctbx.ProngBoxes append bx; endif; return; endfor; locals cbx := new ConnectorComb call SetUp(ct, CCProngLen); do if lower then cbx.ProngSide := Bottom; endif; cbx.ProngBoxes append bx; ConTechs append cbx; CCProngLen := CCProngLen + 10; endlocals; endlocals; (for x := RunEnvLine.Shapes where x.DataObject = ae do if x is RunTimeEnvBox -> rtb then return rtb; endif; endfor; locals abx := new RunTimeEnvBox call SetUp(ae); do RunEnvLine.Shapes append abx; SWOrderList append abx; return abx endlocals; if notnull swf.Implements then locals te := AddRunTimeEnv(swf.Implements); do Shapes append new ContainerLink call SetUp(bx, te); endlocals; endif; for t := swf.RunTargets do locals te := AddRunTimeEnv(t); do Shapes append new RunTimeTargetLink call SetUp(bx, te); endlocals; endfor; if notnull swf.ConnectionTechnology then AddMiddlewareEndPoint(bx, swf, notnull swf.Kind and swf.Kind.Facing = eSysManagement); elseif notnull swf.Calls and swf.Calls.SWUnit <> swf.SWUnit then locals svr := swf.Calls; fbx := AddSWFunction(svr); starttop := isnull swf.Kind or swf.Kind.Facing = eApplication; endtop := isnull svr.Kind or svr.Kind.Facing = eApplication; link := new SWServerFuncLink call SetUp(bx, fbx, starttop, endtop); do Shapes append link; if swf.RemoteCalls then link.MidAnnotation := link.Annotations [first]; endif; endlocals; endif; for t := swf.CalledBy do AddSWFunction(t); endfor;[~4%  $  yfor x := SWUnitGroupList do locals fb := x.FindFunctionBox(swf); do if notnull fb then return fb; endif; endlocals; endfor; locals ubx := AddSWUnit(swf.SWUnit); fb := ubx.FindFunctionBox(swf); do if notnull fb then return fb; endif; endlocals; stop "AddSWFunction error - f.SWUnit inverse messed up"; return null; "for x := SWUnitGroupList where x.DataObject = swu do return x; endfor; locals bx := new SWUnitGroup call SetUp(swu); cnt := 0; do SWUnitGroupList append bx; if ShowRunEnv then for s := swu.RunsIn do locals apbx := AddRunTimeEnv(s); do if cnt = 0 then apbx.AddSWUnit(bx); endif; cnt := cnt + 1; Shapes append new SWUnitAppLink call SetUp(bx, apbx); endlocals; endfor; endif; if cnt = 0 then SWOrderList append bx; endif; for f := swu.Functions do locals fb := new SWFunctionBox call SetUp(f.KindTitle, f); do bx.AddFunction(fb, f); endlocals; endfor; for tb := bx.TopStripe.Shapes where tb is SWFunctionBox -> fb do AddSWFunctionDetails(fb, fb.DataObject); endfor; for bb := bx.BotStripe.Shapes where bb is SWFunctionBox -> fb do AddSWFunctionDetails(fb, fb.DataObject); endfor; return bx; endlocals; locals pb := new ProductVariantStripe call SetUp(p); do ps.Shapes append pb; for pr := p.Products do AddProduct(pr, pb); endfor; return pb; endlocals; locals pb := new ProductBundleStripe call SetUp(p); do ps.Shapes append pb; for pr := p.Products do AddProduct(pr, pb); endfor; return pb; endlocals; locals pbx := new SWProductBox call SetUp(p); do ps.Shapes append pbx; for swu := p.SWUnits do Shapes append new SWMapOwnerLink ]! call SetUp(pbx, AddSWUnit(swu)); endfor; for suo := p.SetOptionsIn do Shapes append new SwuOptionsProdLink call SetUp(pbx, AddSWUnit(suo)); endfor; return pbx; endlocals;    :for pb := ProdBoxList where pb.DataObject = p do return pb; endfor; locals bx _BoxShape; do if p is SWProduct -> swp then bx := AddSWProduct(swp, ps); elseif p is ProductBundle -> pb then bx := AddProductBundle(pb, ps); elseif p is ProductVariants -> pv then bx := AddProductVariants(pv, ps); else log "unknown product type, " & p.Name; endif; ProdBoxList append bx; for oo := p.IsOptionFor do Shapes append new ProdOptionConn call SetUp(AddProduct(oo, ProductStripe), bx); endfor; if ShowProdOptions then for op := p.HasOptions do Shapes append new ProdOptionConn call SetUp(AddProduct(op, ProductStripe), bx); endfor; endif; AddSupplier(p, bx); return bx; endlocals RunEnvLine := new MainStripeHorz; RunEnvLine.KeyText := "Application Environments"; DefaultNotesPosition := Left; ProductStripe := new MainStripeHorz; ProdBoxList := []; SWOrderList := []; SWUnitGroupList := []; ConTechs := []; locals m := new MainStripeVert; sws := new MainStripeHorz; top := 50.0; do for p := ProductList where p is ProductBundle do AddProduct(p, ProductStripe); endfor; for p := ProductList where not (p is ProductBundle) do AddProduct(p, ProductStripe); endfor; if notempty(RunEnvLine.Shapes) then m.Shapes append RunEnvLine; Shapes append new LargeLabel call SetUp("Application Run Time Environments", 30.0, top); top := top + 170.0; else top := top + 70.0; endif; for s := SWOrderList do if s is RunTimeEnvBox -> rteb then if notempty(rteb.SWUnitList) then sws.Shapes appendlist rteb.SWUnitList; 5[" endif; else sws.Shapes append s; endif; endfor; sws.ExtraSpacing := 40; m.Shapes append sws; Shapes append new LargeLabel call SetUp("Software Functionality", 30.0, top); top := top + 150.0; m.Shapes append ProductStripe; Shapes append new LargeLabel call SetUp("Products", 30.0, top); m.Left := 100.0; if notnull SupplierLine then top := top + 90.0; m.Shapes append SupplierLine; Shapes append new LargeLabel call SetUp("Suppliers", 30.0, top); endif; Shapes append m; for ct := ConTechs where count(ct.ProngBoxes) > 1 do Shapes append ct; endfor; endlocals;   40falsetruefalseDataObject := r;  if notnull selected then if notnull DataObject.Report and notnull DataObject.Report.Id then show_report("Report", DataObject.Report.Id); else display "Cannot find an associated report"; endif; else display "No selected shape"; endif; DataObject := f; if DataObject in context.Expanded then context.Expanded remove DataObject; else context.Expanded append DataObject; endif; DataObject := sf; locals haveinfo := false; do if sf is SWFunctionCategory -> fc and notempty(fc.Products) then haveinfo := true; if expanded then locals prodstripe := new _StripeShape; do prodstripe.IsVertical := true; prodstripe.Left := 50; prodstripe.Top := 40; prodstripe.Spacing := 0; for p := fc.Products do prodstripe.Shapes append new ProductShape call SetUp(p); endfor; endlocals; endif; endif; if notempty(sf.Requirements) then haveinfo := true; if expanded then locals reqstripe := new _StripeShape; %m#a do reqstripe.IsVertical := true; reqstripe.Left := 100; reqstripe.Top := 0; reqstripe.Spacing := 0; for r := sf.Requirements do reqstripe.Shapes append new ReqShape call SetUp(r); endfor; endlocals; endif; endif; if haveinfo then if expanded then ExpandString := "Don't show information"; else ExpandString := "Show information"; endif; else ExpandString := "No information"; endif; endlocals;  a DataObject := sa; Box := new SWFuncCatShape call SetUp(sa, expanded); Shapes append Box; context.TreeList append this; HandleLen := handlelen; if sa is SWFuncCategoryGroup -> fcg and not empty(fcg.SubCategories) then locals row := new _StripeShape; rk := new _RakeShape; hl := 15.0; do row.IsVertical := true; row.Spacing := 30; rk.HeadBox := Box; for x := fcg.SubCategories; y := context.TreeList where y.DataObject = x do hl := max(y.HandleLen + 5.0, hl); endfor; rk.HandleLen := min(hl, 25.0); rk.HeadSide := Right; rk.ProngSide := _JoinSideEnum::Left; for ss := fcg.SubCategories do locals sft SWFuncCatTree; do for t := context.TreeList where t.DataObject = ss do sft := t; endfor; if isnull sft then sft := new SWFuncCatTree call SetUp(ss, ss in context.Expanded, hl); row.Shapes append sft; endif; rk.ProngBoxes append sft.Box; endlocals; endfor; Shapes append row; context.Shapes append rk; endlocals; endif; tlocals hs := new VertStripeSimple; do hs.Left := 100; hs.Top := 100; for fc := model.SWFuncCategories do"i:$| hs.Shapes append new SWFuncCatTree call SetUp(fc, fc in Expanded, 0); endfor; Shapes append hs; endlocals; ͹t | ͯLcontext.IterateLine := ImpPath; iterate_set_timer(300); iterate_set(Timer); ͬMsg := msg; ImpPath := ip; ͟lStartBox := startbox; EndBox := endbox; if onright then StartSide := Left; EndSide := Right; endif; ͕StartBox := startbox; EndBox := endbox; if leveldiff = 0 then StartSide := Right; EndSide := Left; Form := UseDucts; elseif leveldiff < 0 then StartSide := Top; EndSide := Bottom; Form := UseDucts; endif; ͂for x := Shapes where x is SubStripe -> ss and ss.Level = level do ss.Shapes append bx; return; endfor; if isnull LowestLevel then LowestLevel := level; HighestLevel := level; endif; locals ssx := new SubStripe; do ssx.Level := level; ssx.Shapes append bx; if level < LowestLevel then Shapes prepend ssx; LowestLevel := level; else Shapes append ssx; if level > HighestLevel then HighestLevel := level; endif; endif; endlocals; }DataObject := c; lDataObject := a; cDataObject := ia; T1ImpPathList append selected; BuildDisplayBase(); MBuildDisplayBase(); if notnull selected then if selected is SWUnitAction -> swa then if notnull swa.SWUnit then if SWUnitSoftwareMap(swa.SWUnit) then return; endif; endif; elseif selected is Application -> app then if notnull app.RunsIn then set_selected(app.RunsIn); locals dg := new SoftwareMapOneRunTime; do call_diagram_no_form(dg); endlocals; return; endif; elseif selected is SWContainer -> swc then if notnull swc.SWUnit then if SWUnitSoftwareMap(swc.SWUnit) then Fz5FC% return; endif; endif; endif; display "Cannot determine product for software map"; else display "No selected shape"; endif; F  Clocals diag := new SoftwareMapByProd; do diag.ProductList appendlist swu.InProducts; if notempty(diag.ProductList) then call_diagram_no_form(diag); return true; endif; endlocals; return false; ?hif notnull selected then if selected is ReportedObj -> ro then if notnull ro.Report then show_report("Report", ro.Report.Id); else display "Report for this shape is empty"; endif; else display "This type of shape has no associated report"; endif; else display "No selected shape"; endif; <if iterate_setting_is(Step) then iterate_set(Timer); return NoRedraw; endif; locals lastbox := IterateLine.LastOverLinePoint; do if isnull lastbox or (notnull LastBox and LastBox = lastbox) or isnull lastbox.DataObject then if IterateLine.IterateLineAmt >= IterateLine.DrawnLength then stop "Run complete"; endif; IterateLine.IterateLineAmt := min(IterateLine.IterateLineAmt + 20.0, IterateLine.NextPointPosition); return RedisplayShapes; endif; if notnull LastBox then LastBox.NotesPosition := NoNotes; endif; lastbox.NotesPosition := Right; LastBox := lastbox; iterate_set(Step); endlocals; return RedisplayShapes; 9IterateLine.IterateLineAmt := 20.0; iterate_set_timer(100); IterateLine.LastOverLinePoint := null; if notnull LastBox then LastBox.NotesPosition := NoNotes; LastBox := null; endif; return RedisplayShapes; for f := fs do switch f case eAuthenticator: if ShowSecurity then FuncConns append new FuncConn call SetUp(AuthenticateText, bx, true); endif; case eAccessControl: if SDX a && howSecurity then FuncConns append new FuncConn call SetUp(AccessControlText, bx, true); endif; case eFaultMonitor: if ShowSysMgmt then FuncConns append new FuncConn call SetUp(FaultMonitorText, bx, true); endif; case ePerfMonitor: if ShowSysMgmt then FuncConns append new FuncConn call SetUp(PerfMonitorText, bx, true); endif; case eBackupSwitch: if ShowSysMgmt then FuncConns append new FuncConn call SetUp(BackupSwitchText, bx, true); endif; case eGateway: if ShowRoutingGateways then FuncConns append new FuncConn call SetUp(GatewayText, bx, false); endif; case eRouter: if ShowRoutingGateways then FuncConns append new FuncConn call SetUp(RoutingText, bx, false); endif; case eDataConversion: if ShowRoutingGateways then FuncConns append new FuncConn call SetUp(DataConvertText, bx, false); endif; endswitch; endfor; 6  1Zif c is Node or isnull c.Container then return c; endif; return GetNode(c.Container); -ifor y := ss.Shapes do if y is ContainerStripe -> cs then if cs.DataObject = c then return cs; else locals csx := FindContainerStripe(cs, c); do if notnull csx then return csx; endif; endlocals; endif; endif; endfor; return null; stcon := GetNode(stcon); endcon := GetNode(endcon); for iac := IAConns do if iac.StartBox.DataObject = stcon and iac.EndBox.DataObject = endcon then return; elseif iac.EndBox.DataObject = stcon and iac.StartBox.DataObject = endcon then return; endif; endfor; locals startbx ContainerStripe; endbx ContainerStripe; do for x := ContainerStripes do if isnull startbx then startbx := FindContainerStripe(x, stcon);Hf(%V' endif; if isnull endbx then endbx := FindContainerStripe(x, endcon); endif; endfor; if isnull startbx then log "Cannot connect " & stcon.Name; elseif isnull endbx then log "Cannot connect " & endcon.Name; elseif startbx <> endbx then IAConns append new IAConn call SetUp(startbx, endbx, endbx.NodeLevel - startbx.NodeLevel); endif; endlocals; (  #;for x := ContainerList where x.DataObject = c do return x; endfor; locals cstr ContainerStripe; lowestlevel := 1; do if c is Node -> n then cstr := new HWContainerStripe call SetUp(c); if notnull n.TierNumber then level := n.TierNumber; endif; else cstr := new SWContainerStripe call SetUp(c); endif; cstr.NodeLevel := level; ContainerList append cstr; AddFunctionLinks(c.SysFunctions, cstr); if isnull c.Container or c is Node then for css := ContainerStripes do if css.Level = level then css.Shapes append cstr; return cstr; endif; lowestlevel := max(lowestlevel, css.Level); endfor; loop do locals cssnew := new ContainerStripeStripe; do if lowestlevel >= level then cssnew.Shapes append cstr; endif; cssnew.Level := lowestlevel; ContainerStripes append cssnew; endlocals; break: lowestlevel >= level; lowestlevel := lowestlevel + 1; endloop; else locals cbx := AddContainer(c.Container, level); do cbx.Shapes append cstr; endlocals; endif; return cstr; endlocals; locals lpstart := new _LinePoint; bx _BoxShape; origXOffset := XOffset; do if not (ia is NetworkAction) then locals cstr ContainerStripe; X( newbx := false; do if isnull ia.Container then cstr := BlankContainer; else cstr := AddContainer(ia.Container, level + 1); if notnull LastContainer and ia.Container <> LastContainer then AddContainerConn(LastContainer, ia.Container); endif; LastContainer := ia.Container; LastContainerLevel := level; endif; newbx := true; if ia is AppImpAction -> aia then for ab := AppBoxList where newbx do if ab.DataObject = aia.App then bx := ab; newbx := false; endif; endfor; if newbx then bx := new AppSimpleBox call SetUp(aia.App); AppBoxList append bx; endif; else bx := new IASimpleBox call SetUp(ia); endif; if newbx then cstr.AddBox(bx, level); AddFunctionLinks(ia.SysFunctions, bx); endif; lpstart.JoinWhere := Centre; lpstart.X := XOffset; lpstart.Box := bx; ims.Points append lpstart; endlocals; endif; locals subcount := 0; do if ia.SeqSubActions or isnull bx then for x := ia.SubActions do AddIAInContainer(x, ims, level + 1, false); if notnull ia.Container then LastContainer := ia.Container; endif; subcount := subcount + 1; endfor; else for x := ia.SubActions do if subcount > 0 then locals lp := new _LinePoint; do if XOffset = origXOffset then XOffset := XOffset + 4; endif; { () lp.JoinWhere := Centre; lp.X := XOffset; lp.Box := bx; ims.Points append lp; endlocals endif; AddIAInContainer(x, ims, level + 1, true); if notnull ia.Container then LastContainer := ia.Container; endif; subcount := subcount + 1; endfor; endif; if notnull bx and (replytocaller or subcount > 0) then locals lp := new _LinePoint; do if XOffset = origXOffset then XOffset := XOffset + 4; endif; lp.JoinWhere := Centre; lp.X := XOffset; lp.Box := bx; ims.Points append lp; endlocals; endif; endlocals; endlocals;    3DefaultNotesPosition := Right; locals cnt := new SWContainer; do BlankContainer := new SWContainerStripe; BlankContainer.DataObject := cnt; cnt.Name := "Actions with No Container"; endlocals; locals mf := new MainStripeFrame; leftcol := new PathSoftwareStack; rightcol := new PathSoftwareStack; itb := new InfoTextBox; hd := new HeadingTextLine call SetUp("To show path, click on path name"); ss := new _StripeShape; do itb.Top := 30; Shapes append itb; itb.Add(hd); if ShowSecurity then locals sectb := new InfoTextBox; sechd := new HeadingTextLine call SetUp("Security"); do sectb.Add(sechd); AuthenticateText := new LineTextLine call SetUp("Assure Authentication"); AccessControlText := new LineTextLine call SetUp("Access control"); sectb.Add(AuthenticateText); sectb.Add(AccessControlText); rightcol.Shapes append sectb; endlocals; endif; if ShowSysMgmt then locals smtb]b!W* := new InfoTextBox; smhd := new HeadingTextLine call SetUp("System Monitoring and Recovery"); do smtb.Add(smhd); FaultMonitorText := new LineTextLine call SetUp("Fault monitoring"); PerfMonitorText := new LineTextLine call SetUp("Performance monitoring"); BackupSwitchText := new LineTextLine call SetUp("Backup switch point"); smtb.Add(FaultMonitorText); smtb.Add(PerfMonitorText); smtb.Add(BackupSwitchText); rightcol.Shapes append smtb; endlocals; endif; if ShowRoutingGateways then locals rgtb := new InfoTextBox; rghd := new HeadingTextLine call SetUp("Routing, and Gateways"); do rgtb.Add(rghd); RoutingText := new LineTextLine call SetUp("Message routing"); GatewayText := new LineTextLine call SetUp("Middleware gateway"); DataConvertText := new LineTextLine call SetUp("Data conversion"); rgtb.Add(RoutingText); rgtb.Add(GatewayText); rgtb.Add(DataConvertText); leftcol.Shapes append rgtb; endlocals; endif; if notempty(leftcol.Shapes) then mf.Shapes append leftcol; endif; for p := ImpPathList do locals ims := new ImpPathLine; ln := new ImpPathTextLine call SetUp(p.Name, ims); lpstart := new _LinePoint; origXOffset := -2; do itb.Add(ln); XOffset := origXOffset; if p.StartsWithUser then if isnull StickFigure then StickFigure := new StickFigure; ss.Shapes append StickFigure; endif; lpstart.Box := StickFigure; lpstart.JoinWhere := Centre; lpstart.X := XOffset; lpstart.Y := 30; ims.Points append lpstart; endif; if p is StaƼ +rtReqRes -> srr then AddIAInContainer(srr.StartAction, ims, 1, true); elseif p is StartAsync -> sa then for x := sa.Sequence do AddIAInContainer(x, ims, 1, false); endfor; else log "StartPath has no action"; endif; if p.StartsWithUser then locals lpend := new _LinePoint; do lpend.Box := StickFigure; lpend.JoinWhere := Centre; if XOffset = origXOffset then XOffset := XOffset + 4; endif; lpend.X := XOffset; lpend.Y := 30; ims.Points append lpend; endlocals; endif; Shapes append ims; endlocals; LastContainer := null; endfor; if notempty(ContainerStripes) then ss.IsVertical := true; ss.Spacing := 50; for c := ContainerStripes where notempty(c.Shapes) do ss.Shapes append c; endfor; if notempty(BlankContainer.Shapes) then ss.Shapes append BlankContainer; endif; mf.Shapes append ss; endif; if notempty(rightcol.Shapes) then mf.Shapes append rightcol; endif; mf.Top := 100; mf.Left := 150; mf.Spacing := 100; Shapes append mf; Shapes appendlist IAConns; Shapes appendlist FuncConns; endlocals; 3   falsefalsefalse'Text := txt; Left := left; Top := top; $context.Expanded append DataObject; ,DataObject := ob; Left := left; Top := top; $context.Expanded remove DataObject; ,DataObject := ob; Left := left; Top := top; ͳpif isnull DataObject then return ErrNoDataObject; endif; DataObject.Name := NewText; return RedisplayShapes; ٚ$Rۙ,ͪpif isnull DataObject then return ErrNoDataObject; endif; DataObject.Name := NewText; return RedisplayShapes; ͡!Shapes append new BlankTextLine; ͞Shapes append itl; ͔ Msg := msg; ͋ Msg := msg; ͂5.0tSif Number > 1 then return Name & " (" & str(Number) & ")"; endif; return Name; p3l1^falseVfalse falsetrue1truefalseʹfalseͲfalseͰfalseͮfalseͬQreturn for f := SWFuncs; p := f.SWUnit.InProducts do p endfor; ͩeRequestResponseͧ eApplication͕Gif isnull Kind then true else not Kind.IsClient or notnull Calls endif ͓Zif isnull Kind then true else not Kind.NeedsConTech or notnull ConnectionTechnology endif ͑Uif isnull Kind then true else not Kind.NeedsRunTargets or notempty(RunTargets) endif ͏Tif isnull Kind then true else not Kind.ImplementsRunEnv or notnull Implements endif ͌falseͅNif isnull Kind and isnull Kind.Name then "...Unknown..." else Kind.Name endif cNreturn for p := Products; x := p.AllFeatures() do x endfor; VIreturn for s := SWUnits; f := s.Functions do f endfor; Mif notnull OwningProdVariant then return StandardsSupported & OwningProdVariant.AllStandards(); endif; return StandardsSupported; Jqif notnull OwningProdVariant then return Features & OwningProdVariant.AllFeatures(); endif; return Features; 7true3 eCommercial+=all ib := ImplementedBy with ib.Kind.ImplementsRunEnv endall  return Name; 5for c := Configurations; ip := c.Paths do ip endfor; Wexplode SWFuncCategories for SWFunctionCategory with SWFuncCatOS/Yʞ[-$egoryGroup.SubCategories endexplode  W $  1for p := Suppliers; x := p.Products do x endfor; ͳBAͶ |  @   0X? ProductVariants' Y  Z  [   ͂D'  ͸BA T]?ProductBundle' ^  _  `   ̓E'̈́H'AHBHBͅI'A͆J'   A A͇K'HB͈L'HBHBHB͉M'HBHBHB͊P'  Contract icon  ͻ ͋Q'  Expand icon  @@͓Z2SW Function Category HitHit  ͔ZShow SecurityShowSecurity͕Z.Show System ManagementShowSysMgmt͖Z0Show Routing & Gateways(ShowRoutingGateways͗Z6Show Run Time EnvironmentsShowRunEnv͘Z$Show SW SuppliersShowSuppliers͙ZIterate PathHit  ͚ZIcon HitHit  ͛Z@Find Report for Selected ObjectFindReport͜Z*Display Software Map CallSoftwareMap͝Z6Show Example ConfigurationShowExample͞ZFind ReportFindReport  ͟ZIcon HitHit  ͠ZIcon HitHit  ͡ZIcon HitHit  ͢Z*Show Product Options ShowProdOptionsͣXCABAOKͤXCHBBACancelͽ ͌R'  H?"PathSoftwareDiagU' I  J  K   ͿBpBYO?PathByPathV' P  Q  R      @@B`B  8V?$PathSoftwareStackW' W  `  a   NGateway  X?$IABot_StripeShapeX' Y  b  c   Z?StickFigureY' [  d  e     @@ AZ\?IASimpleBoxZ' ]  ^  _     @@? AA  @@@PA@e?AppSimpleBox[' f  g  h   QeI!.N Push      A n?SubStripe\' o  p  q     @@@@@ A  @@@ A͒U',Path Software Diagram    ͔W'A͕X' B͑Y'Person    pA@@  pApApA Bm?$SWContainerStripe^'   f  g   ?$HWContainerStripe_'   h  i     AAA[?,ContainerStripeStripe`'       c   pA B@@pBu?IAConna'       e   pA BApB͖Z'(System SW component    pBA?FuncConnb'       g  } @@`BA  ͗['Application    BHB6?ImpPathLinec'   j  k   ? ImpPathTextLined'          z @ ABA  ͙^'Container SW  A@@@@pA@@      } @@@B A  ?(SWFuncCategoryGroup"'        ͐`'HB?SWFuncCatDiage'        ͎a'.Path action connection  ͏b'(Function connection  = ?SWFuncCatTreef'        i ͍c'  ͛d'    HCA   @  ͚_'HW node  A@@@@pA@@ ?SWFuncCatShapeg'               } @@@B A  ͥVAA CCHC6Select Implementation PathImpPathList͘\'AͦVAA CCHC*Select ConfigurationConfigListJ?ProductShapeh'        ͧVAA CCHCSelect Product CurrProductList͓V',Path Software Diagram  ͞e',Path Software Diagram  V3ĺM/?ReqShapei'        ͝f' B͜g'  Subject Area    B B? SoftwareMapDiagj'         z @B B     A BBpA  ͟h'  Product   { ABpA  ͠i'Requirement    ABpA  ͦk'0Software Map by Product    ͡{'<Application Logic Environment    BpB z @@B`B  ͳ|'"Software Product    BHB z @@B8B  ͱx'Product Bundle  @@@A        z @\BBpA   ͣ~'$Software Function     BA          @@@A    @@@ A@@  @    @    @A@BA  ͵'BRun time environment for SW unit  Ͷ'&Call a SW function    x0Can call over a network  NW   A A A    ͷ'HImplements the Run time environment  ͸'JAn ownership or part of relationship  ͹'8Product sets option in Unit  ͺ'HApplication Tool Target Environment  ͥ':Common Connection Technology  ͻ'^Product is an option of the product pointed to  ͤz'SW Unit !  A@@ A A$   " # ͧl'JSoftware Map by Run Time Environment %  & ͨo'8Software Map by SW Function '  ( ͩp'LSoftware Map by Function and Run Time )  *  T?$SoftwareMapByProdk' U  V  W   ͪq'TSoftware Map for Interconnected Run Times +  , ͫr'2Software Map by Supplier -  .  \?"SoftwareMapByEnvl' ]  ^  _    M 0ʹ}'SW Supplier / 0  B B d?(SoftwareMapProdLoopm' e  f  g   2 z @@BB 1 ͬs'2Software Map by Run Time 3 ͭt'8Software Map by SW Function 4 ͮu'0Software Map by Product 5 ;?StartReqRes-'        r?,SoftwareMapByFuncBasen' s  t  u   ͯv'6Software Map by Middleware 6 Ͱw'8Software Map by SW Function 7 ?StartAsync.'        a{?$SoftwareMapByFunco' |  }  ~   Ͳy'Product Bundle 8 @@@AͨVAA CCHC8Select Run Time EnvironmentCurrEnvListw?*SoftwareMapByFuncEnvp'        ;   9 : = z @\BBpA < ͩVAA CCHC0Select SW FunctionalityCurrFuncListY?(SoftwareMapByTwoEnvq'       ! ͢'SW Functionsͼ'6Has important disk file(s) > ?A BO?,SoftwareMapBySupplierr'       " @   A B A@?,SoftwareMapOneRunTimes'       % # A   AAA ?&SoftwareMapOneFunct'        $ B   A A A@ͪVApC CCHCDSelect Other Run Time Environment"CurrOtherEnvList ?&SoftwareMapOneProdu'       - % C   A B ?$SoftwareMapOneMidv'        & D  A AA BͫVAA CCHC&Select Supplier(s)"CurrSupplierList$ ?.SoftwareMapOneFuncKindw'        ' ͽ'FHas internal network communication E ͬVApC CCHC8Select Run Time EnvironmentCurrEnvListF?(ProductBundleStripex'       ( G   F ' H IB B7?*ProductVariantStripey'       ) aHh1K z @@BB J ;'DProvides an application container L ?SWUnitGroupz'       k M  @@ BA A AͿ':Routes or reformats messages N ?AppImpAction2'        O  pA@pA BP  @@A B!?SWUnitAction3' "  #  $   Q  A@@ B'>Provides end user presentation R S  @@AA@@n&?NetworkAction4' '  P  Q   ?RunTimeEnvBox{'       m T  @AA@??T(? StartPathAction5' )  *  +   U  AAA@??V  AAA@??'BUsed for application development W Y   X H?SWProductBox|'       * [   Z '6Provides system management \  ?SupplierBox}'       + ]  @A@A@^  A@A@_  @A@AxAAx ?SWFunctionBox~'       , `  A@AA@A'(Security operations a b  `A A A@c  @ A@@A ?ConnectorBase'       - d   B0A@'Comparison e  f 7?SWUnitAppLink'   l  m  . '@O?"SWServerFuncLink'   !  "  / '' Product Profile' g hBA#*?ContainerLink' +  n  o  0 p,?SWMapOwnerLink' -  p  q  1 .?&SwuOptionsProdLink' /  r  s  2 j  BA i q0?$RunTimeTargetLink' 1  t  u  3 2?ConnectorComb' 3  4  5  o e=Software Map  |  '    t u v w x y Version 1.0 s Svs;2' k lBA'  "Product selected m <?ProdOptionConn' =  v  w  4 M?SWInstance;'   N  O   O>?SWFuncStripe' ?  x  y  5 n  AA@?DiskFigure' A  z  {  6 BB?BigArrowFigure' C  |  }  7 ?SoftwareMap'        D?&AppContainerFigure' E  ~    8  F?DataFlowFigure' G      9 o  AA H?PresyFigure' I      : k J?$DevelopmentFigure' K      ; p  AA L?"SysControlFigure' M      <  N?SecurityFigure' O      = '  *Product NOT selected q  P?NameShape' Q  R  S  > r  AA'  An action s u  AA t [?ComparisonDiag' \  ]  ^  ? 'HProfile information for requirement@' v wpBA'.Feature short tag text x z  pBA y {  pBA' | rq?Profile' @  r  s  q }pBA  pBA ~ v?"TableAcrossShape' w      A Ax?TableDownShape' y      B z?ColShape' {      C |?TextRightBox' }  ~    D ̀B'  " ?TextProfileBox'       E  ?NamedObj'        ͮBA ?BlankBox'       F  ?TickedBox'       G J~?InfoTextLineA'         9? HeadingTextLineB'         ?NotTickedBox'       H  ?ReportedObj'        q|VN63 ]?LineTextLineC'         ?ActionBox'      [  I  ?$ActionImplementer'   N  O     ?HWPlatform' !  "  #    $? RequirementsRow'       J  ?BlankTextLineD'   R  S    I?InfoTextBoxE'         ?MultiBox'       K  ?SmallTextBox'       L  ?BoxWithNameF'         j ?ProductReport'       M ͱ ~   A   ?StripeWithNameG'        ́C'   ? MainStripeFrameH'   T  U    x?InServerStripeI'   V  W    ?"HorzStripeSimpleJ'   X  Y    ??"VertStripeSimpleK'   Z  [    ?MainStripeVertL'   \  ]    9?MainStripeHorzM'   ^  _    ?IconBaseN'         R8Software Map By Environment   c R2Software Map By Function    ?ExpandPersistO'         f RBSoftware Map By Two Environments   R$Focus on Function    ? ? ContractActIconP'          1 R(Focus on Middleware    R.Focus on Function Kind    } RFocus on Path    RR0Software Map By Product   R:Software Map By Func And Env   ?ExpandActIconQ'           R2Software Map By Supplier   R$Focus on Run Time  %  R"Focus on Product  -  R(Path Configurations   !R.SW Function Categories   [?LargeLabelR'         k"R&Feature Comparison   a?PathDiagBaseT'        |U}  xUz { w7]34vUw sUu qUr mUn o p kUl gUh j fPeR    aUb c d \U] ^ _ ` Zc A@A@AAAAAAXc?APAAAAABWUY [ RUS T U V NUO P Q LUM HUI K FcpA A A@A@A BpAAAAA AA AAEUG >U? @ A B C D 8U; = 7P     6P     5P     4P     3P     /U0 2 .P    -R   ,P     +R    *P     )R    (P     'R   &P     %R   !U$ c @ A@ A@@@PAAA AA AU  Y  c@ A A A AA@A U        U   U  U  P     R   U U U   PP     U  U  U  U  U  U     R   P     c@@@@@U   U   ;U  ͼU ͺU ͷU ͲU  ͭU  ͒A͑D͐C͏D͎C͍D͌C2~E5͋D͊C͉D͈C͇D͆CͅD̈́C̓D͂ĆD̀CD~C}D|C{DzCyDxCwDvCuDtCsDrCqDpCoDnCmDlCkDjCiDhCgDfCeDdCcDbCaD`C_D^C]D\C[DZCYDXCWDVCUDTCSDRCQDPCODNCM@L@K@J@I@H@G@F@E@D@C@B@A@@B?@>@=@<@;@:@9@8@7@6@5@4@3@2@1@0@/@.@-@,@+@*@)@(@'@&@%@$@#@"@!@ @@@@@@@@@@@@@@@@@@@ @ @ @ @ @@@@@@>TG 6@@@@@@@@@@@@@@B@@@@@@@@@@@@@@BxJ  wQ           vO                ~= shape.DataObject.Namey = shape.Textt = shape.Texti = shape.TextJ = shape.Text<= shape.DataObject.Name:= shape.GetHeight()9= shape.GetWidth()1= shape.DataObject.Name#= shape.GetHeight()"= shape.GetWidth() = shape.Title = flag(InterfaceKindEnum::ePush)#= flag(InterfaceKindEnum::eGateway)&= flag(InterfaceKindEnum::eCalledCode)*= flag(InterfaceKindEnum::eConversational)+= flag(InterfaceKindEnum::eRequestResponse) = shape.DataObject.Name= shape.GetHeight()= shape.GetWidth()= shape.DataObject.Name= shape.DataObject.Name= shape.DataObject.Name= shape.DataObject.Name= shape.ExpandString= shape.DataObject.Name= shape.DataObject.Name= shape.GetHeight()= shape.GetWidth() = shape.Msg= shape.Margin= shape.DataObject.Name= shape.GetHeight()= shape.GetWidth()= shape.DataObject.Name= shape.DataObject.Name = shape.Text͹1= if count(Shapes) > 3 then 50.0 else 100.0 endif>@͵ = shape.Msgʹ= shape.MarginͰ = shape.Msgͯ= shape.Margin<Import0=Software Map  |  '    t u v w x y Version 1.0  s eNqFIncludeProd  o  <EAllFeatures /   ;  5 FHit   H6{YQ8,͒ b Vc 2'  Java Web App   <  3'  $Web to App Server   <  M"'Presentation w  L 2'  App Server One    D  3'  &App Server to COMS    B  N#'6Presentation Device Server x M   2'  "COMS Application J  3'  ,App Server to TIP App    B  O#'2Presentation Application M   2'  TIP Application T  +-'.NET to NX? * Q"'Development y  P *2' " ".NET Application #  Z  )3' $ .NET to COMS %  ( Z z R#'(Logic Specification z Q   '2' & "COMS Application J  5.'BMessage Queuing IBM to ClearPath? , S#'.Development Repository { Q .2' - MVS Application `  03' / "MVS to ClearPath `  U#'Testing Tool Q T  23' 1 2OS 2200 i/f WebSphere MQ M  42' 3 TIP Application T  V#'Modelling Tool Q   9?' 7 Web Server 8 <@' : .Web Application Server ;  9  X"'Security W ??' = Java App Server > B@' @ JVM A ?  Z#'Authenication X Y D@' C EJB B  G?' E A Series One F \#' Access Control  X [ J@' H COMS I  G p M?' K 2200 One L ^#'Protection X ] Q@' N OS2200 O P M T@' R TIP S  Q  `"'&Flow and Integrity _ W?' U (Microsoft XP Server V Z@' X Microsoft .NET Y  W a#'&Trans coordination `   ]?' [ "IBM OS 390 Style \ `@' ^ IBM MVS _  ] :[9b#'Trans resource `   f&'@Start and stop Programs/objects e b'  ) d    j' g XP Op system   h i c#'Workflow `   l ' k Win32 j 0  m ' .NET j 3  f''&Oracle Corporation  e p' n COMS  o q r ' Microsoft Win32   t ' s  p 2  g'(Oracle Database 11g f  c v ' u COMS Port file p :   w 'Tuxedo i/f p :   i'NOracle Database 11g Enterprise Edition f  d  g h z' x BMicrosoft Transaction Integrator  y  { ' Linux   } ' |  z 9  v k'$Active Data Guard f  j  l ̀' ~ BJ2EE Connector for ClearPath MCP     ̓ '    9  v n'*Advanced Compression f  m  o ͇'  *MCP operating system     'Solaris   ͉ '  ZMCP - Master Control Program (for Unisys NX)  0  q'$Advanced Security f  p  r ͌'  TIP & HVTIP     ͐ '    2 t'&Oracle Data Mining f  s  u ͑ 'Tuxedo i/f  :   ' HP-UX   ͔'  6J2EE Connector for OS 2200     w'Oracle OLAP f  v  x ͗ '    : ͚'  Tomcat     z'Label Security f  y  { ͞ '  0JSP - Java Server Pages  3 #  'AIX   ͠ '  <Servlets - for Java Web pages  3 & }'Partitioning f  | ͢ '  Web Server  N ͥ'  EJB container     '4Real Application Clusters f  ~ ű`s:ͩ '    2   '  Microsoft .NET   ͪ 'Commits/aborts  a ́'2Real Application Testing f   ͭ'Solaris     ͮ '2Solaris operating system  0  ̓'Oracle Spatial f   ͱ'.HP-UX operating system     '  Java VM  Ͳ '.HP-UX operating system  0  ͅ'Total Recall f   ͵'*AIX operating system     Ͷ '*AIX operating system  0  ͇'^Oracle Warehouse Builder Enterprise ETL Option f   ͸',MySQL database kernal     '  Java EJB  ͻ 'Kernel  ? ͉'ZOracle Warehouse Builder Data Quality Option f   ͼ '$Stored Procedures  4 Ϳ'.Linux operating system     ͋'HOracle Warehouse Builder Connectors f    '.Linux operating system  0  '  Unisys MCP   '6PostgreSQL database kernel     ͌'<Oracle Content Database Suite f  'Kernel  ?  '$Stored Procedures  4 ͍'2Oracle Fusion Middleware f '.Oracle database kernel     '  Unisys OS 2200   'SQL DDL & DML  ?   ͏''"BEA Systems, Inc    '2PL/SQL Stored Procedures  3 (  '.Stored Procedure calls  4   ͑'BEA Tuxedo     'Transactions  b '  IBM MVS  '&Oracle Data Mining    ͓'BEA SALT     '&Data mining access  B 'Oracle OLAP    ͕'BEA Jolt     'OLAP engine  D '  Unisys NX COMS   Ojc;'WebSphere MQ     ͗'JBEA Tuxedo Mainframe Adapter for SNA     'Program i/f  8   'Tuxedo     ͙'JBEA Tuxedo Mainframe Adapter for OSI     ' ATMI  7   '  (Unisys IX TIP/HVTIP 'TX Support  a ͛'"BEA TSAM Manager     'MQ Interface  9    '*Local Monitor Server  J ͞''  ,Microsoft Corporation   '0BEA Tuxedo Web Services     '  IBM CICS 'Tuxedo call  9   ͡'  Windows XP     'Web Services  :   '$DB Spatial Access    ͣ'' IBM Corporation    'Spatial Access  A   #' ! JSP " ' Total Recall DB     ͥ'"IBM WebSphere MQ     ' History extract  A '4Extract, Transform & Load    ͧ'AIX     '  C   &' $ Servlets % '.Warehouse Data Quality    ͩ'@IBM Rational Rose Data Modeller     '  A   '@ETL Connectors for specific DBs    ͫ'6IBM Tivoli Storage Manager     'Connector  9   ('PL/SQL ' '8Rational Rose Data Modeller     ͭ'RIBM WebSphere Studio Application Monitor     '  V '.Tivoli Storage Manager     ͯ'tIBM Rational Application Developer for WebSphere Software     '  K +"'*Run Time Environment * '$WebSphere Monitor     ͱ'BIBM WebSphere Application Server     '  I f <'LApplication Development for WebSphere     ͳ'hIBM WebSphere Application Server Network Deployment     '  R ."'(Run Time Containers + , -  '  U ͵'PIBM WebSphere Commerce Business Edition     ':WebSphere Application Server       '  2  ͷ'XIBM WebSphere Commerce Professional Edition    '8WebSphere Commerce Business     0#'@Actual/Virtual operating System X . /   'B2C web site  N ͸'JIBM WebSphere Information Integrator   '  c '@WebSphere Commerce Professional     ͺ'4IBM WebSphere MQ Workflow     '$Multiple Channels  N 2#'(Transaction Monitor ^ . 1  ',WebSphere MQ Workflow     ͼ'`IBM WebSphere Business Integration Event Broker     '  c '.WebSphere Event Broker     ;'dIBM WebSphere Business Integration Message Broker     '  ; 3#',Application Container ` .   '2WebSphere Message Broker     Ϳ'6IBM DB2 Universal Database    '  : #'DB2 Everyplace   ! " ' IBM DB2 Connect  $ ' # F 4#' User Code Calls +   ''BEA Jolt   % & 'LIBM DB2 Everyplace Enterprise Edition    ( ' ' 9   +'BTuxedo Mainframe Adapter for SNA   ) * 'IBM CICS    , ' + 9   6"'Interfaces 5 - ' + :   ''  &Unisys Corporation   0'   . / ;)D=1 ' 0 2 '  NX COMS    2 ' 0 :   7#'*Request/Response API 6   5'HTuxedo Mainframe Adapter for OSI TP   3 4 '  MCP    6 ' 5 7 7 ' 5 :   '  TIP & HVTIP    :'"BEA TSAM Manager   8 9 8#'&Conversational API 6   ; 'Web Console : O '  HMP NX 11    < 'Data Manager : ? = 'Data Gathering : I ''Apache  V&'0Findable across network9#'Gateway 6   W&'Access Control'  Tomcat      Xsfopsys"Operating System > Y&'$Memory management'&JSP start and stopJSP  Z&'6External devices interface:#'(NW Interoperability 6   [&' ? *Processor Allocation'' JBOSS  \&'0Multi-processor support]&'Partitioning'  JBOSS    ^sftransmon(Transaction Monitor @ ;#' Push 6   _&'2Transaction Coordination''"Sun Microsystems  `sfappcont,Application Container A a sfdbDatabase B 'Solaris    bsfdbkernal Database Kernel C ="'Database a  < c&' Data Definition' MySQL    d&'$Data Manipulatione&'"Rebuild from log''0Hewlett-Packard Company  f&' D PReorganization data when schema changes?#' Database Kernel b = >  g&'BEfficient disk space utilization' HP-UX    h&':Handle large data quantitiesi&'*Spatial Data Support''  Open Source  j&'&Historical Queries)֚ǜ>A#' Database Access m = @  k&'8High Transaction Throughput' Linux    l&'$High Availabilitymsfdbaccess Database Access E 'PostgreSQL    n&'Remote accessB#' Database Mining p =   o&':DML can cross many databases('  OSI TP  psfdataminingData Mining F qsfdbetlTDatabase Extract, Transfer and Load (ETL) G ('Web Services  r&'(Read access to copyC#'Database ETL q =   s&'&Backups on standby('SNA  tsfsysmgnt$System Management H usfsysservSystem Service I *'  ISOvsfsysagentSystem Agent J D#' OLAP =   wsfpresPresentation K *'  OMGxsfpresserv6Presentation Device Server L ysfpresDevelopment M *'Sunzsfdevtool"Development Tool N F#'.Synchronized DB Copies = E  {sfdevrep.Development Repository O a+'Basic Examples    6 |&'0Data Capture and Replay}&'0Password authentication6'  Java Web App # ~&'4Smart Card AuthenticationH"'$System Management t  G &'Single Sign-on6'  App Server One  ̀&'2Message Kind Restrictioń&' Data Subsetting6'  "COMS Application  ͂&'(Data Label SecurityI#'$Monitoring Server u H   ̓&'6Network Message Encryption6'  TIP Application  ̈́&' Data encryptionͅvenoracle&Oracle Corporation P 6'  ".NET Application  ͉'DB Testing   Q J#'"Monitoring Agent v H   ͐venbea"BEA Systems, Inc R :=/ȋ? 6'  MVS Application  ͗venmicrosoft,Microsoft Corporation S ͙venibm IBM Corporation T !-' Java Web to TIP?  ͨvenunisys&Unisys Corporation U K#'8Data and Storage Management H   '; '- 2 '$ ' '  ' ' ' = ' ' ' ' '  '   ' ' ( , ' ' ' 6 ' '  ' ' ' '   '   < '     '   '    '     '     '  '   ' '    Ϳ'}  ;'}     ( , ͽ'z ͼ'w  7 ͻ' v w     - 2 7 ͺ't    1 ͹'p ͸'m    ͷ'l      Ͷ'f ͵' ʹ' ͳ' Ͳ' ͱ' Ͱ' ͯ' ͮ' ͭ' ͬ' ͫ' ͪ' ͩ' ͧ' ͦ' ͥ' ͤ' ͣ' ͢' ͡' ͠' ͟' ͞' ͝' ͜' ͛' ͚' ͘' ͖' ͕' ͔' ͓' ?~p@͒' ͑' ͏' ͎' ͍' ͌' ͋' ͊' ͈'i ͇'w ͆'t Q'9'; < = 8'4'6 7 3'/'1 2 .'*', - )'&'( %'"'$ !''  '' '' '' ' '   ' '  ''  '' '' '' '' ' ' ' '' '  '    ''     ' ''    ' ' ' ( '    ''     '  ''     ;' ͽ'ͺ'  ͹'ͷ'     ʹ' ͳ'Ͱ' ͯ'ͬ' ͫ'ͧ'  ͦ'ͤ' ͜'   ͛'͙' ͕' ͓' ͎'  ͍'͋' ͆' ͅ'́' ' {'} y'  r't v w q'o' i'l m h'e' d'k n q t w z bT$?Ac'i _0' \'` Y0' V'Z S0' P'T O0' L'Q I0' F'J A'D >'B ;0'8'< 6'9 ? G M W ] ,'. 0 2 4 (0'%'' #') 0'0'' 0'' '  '  '  '! + 5 '      'a '   '   ' ' '  ' ' ' ' '  ' ' ' ' ' '  '  ' 'p z  '    '0 '# ͽ' ͻ' ͹' Ͷ' ʹ' Ͳ'  Ͱ'  ͮ' ͬ' ͪ' ͨ' ͦ' ͤ' ͢'                  ͠'j ͝' ͚': ͘'5 ͖'+ ͔'' ͒' ͐' ͎'      ͊' ͈' ͆' ̈́' ͂' ̀' ~' |' {' y'i x' v'i u' s'i r' p'i o' m'i l' j'i I"3]Bh' e'g i k n q t w z }          d' f          _'a b c ]'  ['   Y'} ~  W'Z \ ^ T'| P'R S U V L'N O G'I J K E'r s @'n o >' c d e f g h i j k l <'? A B C D F 5'7 8 9 : ; 1'_ /'Y Z [ \ ] -'0 2 3 ,'f V W *'. 4 )'+ 6 = H M Q X ` '' %' "' 't ' '   'm  ' ' ' ' 'l '              # & ( U9<p>See <href "www.unisys.com">www.unisys.com</href>.</p> T3<p>See <href "www.ibm.com">www.ibm.com</href>.</p> S?<p>See <href "www.microsoft.com">www.microsoft.com</href>.</p> R3<p>See <href "www.bea.com">www.bea.com</href>.</p> P9<p>See <href "www.oracle.com">www.oracle.com</href>.</p> O<p>These include version configuration management tools that manage development assets. They have a set of references to the development tools they manage assets for.</p> N<p>These include source file editors, compilers and program source analyzers. They have a reference to the application run time environment of the application logic they help develop.</p> M@<p>This category is for application development technology.</p> Lx<p>These provide the services used by the presentation clients and include web servers and voice interface servers.</p> nCK<p>This category is for end user interface technology, typically devices that users use to access the IT applications and servers that support those devices.</p> J<p>System management products often have a centralized server and agents spread around the system. The agents may be little more than an interface, rather like the middleware end point except that they only communicate with their central server. Sometimes they are more than that and can be programmed to report selectively on the environment they are monitoring. Note this category includes security agents as well as system monitoring and systems management agents.</p> I]<p>These are central services used for systems monitoring, systems control and security.</p> H><p>This category is for all system management facilities.</p> G`<p>This is for tools that load data warehouse/mart by extracting data from other databases.</p> Fj<p>This is for database tools whose main purpose is to discover relationships and trends in the data.</p> E<p>Databases typically run directly on the hardware platform using native operating system. This category is for software that bridges between programs and the database such as OCBD, JDBC.</p> DlWhen the schema changes, the data might have to change too. This facility is for a utility to do it for you.C<p>This is the basic database functionality  support for data manipulation, data definition, storage, transaction management and recovery.</p> B1<p>This category is for database technology.</p> <p>An application container's main functions are:</p> <ul> <li>to start programs or components;</li> <li>to allocate resources to like memory or database connectors;</li> <li>to reclaim the resources when they are no longer used.</li> <li>They may also provide an interpreter for the code or provide a rules engine for executing application rules.</li> <li>It is very common for an application cZ Dontainer to have additional functionality, for instance, provide a middleware end point or implement security access control.</li> </ul> A  @<p>An <ref sfappcont>application container</ref> that also supplies transaction management such as used by database systems.</p> ?;Sharing processing power across multiple threads/processes.><p>An <ref sfappcont>application container</ref> that runs code files using the underlying hardware platform. Control resouces like memory and disk files.</p> ͨThis is the EJB container.ͣ/JBOSS supports all the standard EJB facilities.͡5This is the main Tomcat functionality  a web server.͟jTomcat supports Servlets and JSPs for generating web pages. It also provides a JVM  Java Virtual Machine.͝.Tomcat supports JSPs for generating web pages.͘0This is the main installable program for Tomcat.͖$The end point for connection to TIP.͒:This creates a gateway from Java programs to TIP programs.͏RTIP is normally used to run COBOL programs, one program for each transaction type.͊1The main component running on the OS 2200 system.͈The operating system has all the standard facilities  program management, memory management, device control, security. Also includes WFL (Workflow Language) which is for batch program job control.̈́The operating system component. Unusually for operating systems it is written in a high level language  NEWP  which is a derivative of ALGOL. ͂$End point for connection to NX COMS.~lThis is the COMS NX version of Java connector for integrating Java transactions with mainframe transactions.|$End point for connection to NX COMS.xOriginally called COMTI, this allows Microsoft COM/.NET transactions to be integrated with NX mainframe transaction running under COMS.4ޒOtEu^End point for connections to Java and .NET. (I think this is essentially a sockets interface.)sbContainer for COMS programs (usually COBOL programs) that implement transactions on NX mainframes.n1The main COMS component running on the mainframe.kWindows operating system.gMThe operating system for Intel servers (up to 4 processors) and workstations.^,The IBM MVS operating system for mainframes.[An IBM mainframe.X].NET programs or components run directly on the Windows XP or Windows Vista operating system.UAn Intel server.RA TIP transaction monitor.N+The OS2200 operating system for mainframes.KA 2200 mainframe.HA NX COMS transaction monitor.EA NX mainframe.CWA JBOSS system that supports EJBs  Enterprise Java Beans  for transaction management.@2A Java virtual machine from an unspecified vendor.=A Unix server (let's assume).:dA web server implemented using Tomcat software. Web applications may be written as JSPs or Servlets.7An Intel server (let's assume).38TIP transaction processing application written in COBOL.1(Interface to message queuing middleware./(Interface to message queuing middleware.-*Cobol batch application running under MVS.&9COMS transaction processing application written in COBOL.$kCOMTI now renamed Microsoft Transaction Integrator, interfaces Microsoft .NET to other transaction systems."+Microsoft server application written in C#.8TIP transaction processing application written in COBOL.#Uses Java Resource Adapter for TIP.9COMS transaction processing application written in COBOL.$Uses Java Resource Adapter for COMS.PJava Enterprise Server Beans application doing orchestration; routing and coordiZlQF)nating the calls to the back end servers.P )  )Uses Java RMI (Remote Method Invocation.) )Java web application developed with JSBs.&Batch Cobol program running under MVS..NET application written in C#.8TIP transaction processing application written in COBOL.9COMS transaction processing application written in COBOL.yJava Enterprise Server Beans application doing orchestration; routing and coordinating the calls to the back end servers.5Java web application developed with Servlets or JSBs.Object Management Group./International Organization for Standardization.Used by Unisys mainframes.=This is a general catch all for open source or free software.oJBOSS is an open source Java program that supports Java EJBs with which you can implement transaction services./An open source web server. Implemented in Java.Bundle of software that has most of what you need to run a transaction processing system. Includes operating system (MCP), transaction monitor (COMS) and database system (DMS II).VThe transaction monitor for OS 2200 mainframes. HVTIP is a high volume variant of TIP.The operating system for NX (previously known as A Series) mainframes from Unisys. The letters MCP stand for Master Control Program. Normally sold bundled with many other utilities.COMS is the transaction monitor for Unisys NX mainframes. It is usually sold bundled with the NX HMP release (that includes the operating system). It includes addition middleware gateway facilities.}Vendor best known for IT hardware, in particular large mainframe and Intel servers, and integration and outsourcing services.͟ZThe server and workstation operating system from Microsoft. Now replaced by Windows Vista.^A Series programs that run under the COMS transaction monitor.5Programs that run under the IBM MVS operating system.0OS 2200 programs, except TIP and HVTIP programs.(A Series programs, except COMS programs.IEnterprise Server Beans  the Java standard for transactional components.EA Java Virtual Machine, i.e. an environment for running Java objects. HThe program run time environment supported by Windows XP and successors.2 =Import:+"'*Run Time Environment  * ; 3#',Application Container ` .   ; 4#' User Code Calls +   ;6"'Interfaces  5 <7#'*Request/Response API 6   <,8#'&Conversational API 6   <H9#'Gateway 6   <Z:#'(NW Interoperability 6   <i ;#' Push 6   < ="'Database a   < =5B#' Database Mining p =   =C#'Database ETL q =   =vD#' OLAP =   = H"'$System Management t   G = I#'$Monitoring Server u H   =J#'"Monitoring Agent v H   >K#'8Data and Storage Management H   7M"'Presentation w   L 7N#'6Presentation Device Server x M   7oO#'2Presentation Application M   Э-b=5I,͓b Vcb0Enterprise Software Map   M   2Version: 1.0 PreliminaryJCopyright (c) 2008, Polyphony IT Ltd 'Software Map                     smbyprod0Software Map By ProductSoftware Mapsmbyenv8Software Map By EnvironmentSoftware Mapsmbyfunc2Software Map By FunctionSoftware Mapsmbyfuncenv:Software Map By Func And EnvSoftware MapsmbytwoenvBSoftware Map By Two EnvironmentsSoftware Mapsmbyproducer2Software Map By SupplierSoftware Mapprodselected"Focus on ProductSoftware Map runtimeselected$Focus on Run TimeSoftware Mapfuncselected.Focus on Function KindSoftware Mapconnselected(Focus on MiddlewareSoftware Mappathexamples(Path ConfigurationsSoftware MappathselectedFocus on PathSoftware Mapcategorydiag.SW Function CategoriesSoftware Mapcompdiag&Feature ComparisonSoftware MapIntroduction   understandingDUnderstanding Enterprise Software  'softmapSoftware Map ! " $2What Software Maps Means # &.Browsing Software Maps % .exconfig.Example Configurations ( ) +:Using Configuration Diagrams * -PathListSoftware Map , 0comparison&Comparison Diagram / 5prodlist Product Details 1 2 4ProductListSoftware Map 3 9vendorlist&Software Suppliers 6 7 8SupplierListSoftware Map>applistDApplication Run Time Environments : ; =RunEnvListSoftware Map < CsfcatlistDSoftware Functionality Categories ? @ BSWFuncListSoftware Map A K=7zQ"'Development y   P 7R#'(Logic Specification z Q   7S#'.Development Repository { Q  7 V#'Modelling Tool Q   7 X"'Security  W 7 `"'&Flow and Integrity  _ 7a#'&Trans coordination `   8b#'Trans resource `   8{c#'Workflow `   8g'(Oracle Database 11g f  % $  c 8i'NOracle Database 11g Enterprise Edition f   d  ' & g h  8Ik'$Active Data Guard f  j  ) (  l 8xn'*Advanced Compression f  m  + *  o 8* q'$Advanced Security f  p  - ,  r 8/ t'&Oracle Data Mining f  s  / .  u 8 w'Oracle OLAP f  v  1 0  x 8 z'Label Security f  y  3 2  { 8}'Partitioning f  5 4  | 8'4Real Application Clusters f  7 6  ~ 9'2Real Application Testing f  9 8   9'Oracle Spatial f  ; :   9|'Total Recall f  = <   9'^Oracle Warehouse Builder Enterprise ETL Option f  ? >   9'ZOracle Warehouse Builder Data Quality Option f  A @   9f'HOracle Warehouse Builder Connectors f  C B   9 '<Oracle Content Database Suite f  E D 9 '2Oracle Fusion Middleware f  G F 9 'BEA Tuxedo   "  I H   ! 9 'BEA SALT   K J   9'BEA Jolt   M L   :i'JBEA Tuxedo Mainframe Adapter for SNA   O N   :'JBEA Tuxedo Mainframe Adapter for OSI   Q P   :'"BEA TSAM Manager   S R   :;'  Windows XP   U T   ]O{JHmidlist4Connectivity Technologies D E GMidListSoftware Map F LstandardlistStandards I J KStandardListSoftware MapQswexample*Software Map Example P CHCAP7png O  N Uconfigex,Configuration Example T pCpCHBT7png S > R YconfigwithfuncJConfiguration Example with Functions X pCpCHBX7png W  V ]configwithflow@Configuration Example with Flow \ pCpCHB\7png [ > Z aconfigwithcontJConfiguration Example with Container ` pCpCHB`7png _ rq ^ MiQ U Y ] a JhK EhG @hB ;h= 7h8 2h4 )h+ - "h$ & h   ' . 0 5 9 > C H L  m              cPNG  IHDR26csRGBgAMA a cHRMz&u0`:pQ<pIDATx^?/e`aF7Ypp,N  Ssc6q慉63'_8/&sjpp;phnuKjԥ3#tMI!@ @ N"C @@OqVK @(w` @ @ ^=޾Q3 @V؍ @1 Xawԍ @ {=! @ f=Q7 @ @{G @س @bcu#@^@`~ @Y@`wԍ @ {=! @ f=Q7 @ @{G @س @bcu#@^@`~ @Y@`wԍ @ {=! @ f=Q7 @ @{G @س @bcu#@^@`~ @Y@`wԍ @ {=! @ f=Q7 @ @{G @س @bcu#@^@`~ @Y@`wԍ @ {=! @ f=Q7 @ @{G @س @bcu#@^@`~ @Y@`wԍ @ {i6_>ns5Y?k_R @A|R{'/HpA J<@`▘bŽ7#BM\ӎ<~}g *-(Ws^oӳ{^(74}D/~` :npm*pyl-Ab~;tsx^/Mv\k ,~>>**{n}sW>6s moWqGCC  @ʁ*\y~\iɷx % } *Ҫr~@tVj|;ᩫ~FT׮so֔'YUu?-Qa;fl'헂r}8}SY_cyF~OTG^  @]V׎i,ofZ%o+ğoOKfӿ__7vf^ot ? ˹CLMjK}yۇן>ܼ!mf5oΏ߰>eё @ . ;|_mIfnxKӵWJ㽕{mڽG8Nػn1}0|GyV;F}g}}&~w׸7q< C ~^cy~L真:&Wέ~VooS`/xU߻AZ_ )L`eY- @@S H`|N-!7SՒ2q q- iU湜ꆻo ;~Ƭvyb'}+]M]?ldKdM>'5^  @7^˯uAeF]N+Zq=}znګѿFV.[)OwM7t}7v<~'>pt&kyX<ˑ @ '{-dix9ڏzJU{{w('rt Jsci^OkӹR~|~|G>=?{͛*vS 9:ߠևoߔq4+8Q9j+X*~`/k4۴+{m0T'ԥcEԜέFϼ_0S^sUN.,{OpwKbîsތ$= g ϝ/e'@ L BӲ;{׹Rwqr0> @ ia۔_*̎ wĨ @jjEAbqC @UT[!Ç( +  @"#U#@  @"#U#@  @"#U#@  @"#U#@  @"#U#@  @"#U#@  @"#U#@  @"#U#@  @"#U#@  @"#U#@  @"#U#@  @"#U#@  @"?kǗs瞞^tx}[YyR^gDZknT@%@XG zG8K=q\7:*ߘ i1 @v> Xyrc~ @X؏A ѷ[YZ=6bi^\^SmEm+9bվzc~z6 m˘+{Ad @Sd2rzmyr _*e~j}7w33[bz붧! @Ke7vtwݼލZ}ciz^'~ǍK{gۺȴ`3]$@.p7_WρXs8i=6 U2tMOZi\<^Z}Ou=F֙[b  @B {}x׾Z?=|{ޭ֣-2g߬dן:v(W׫+\`DPI @@[b[WڿM }/9:u*#u^j!Sb\w>%&^ @ þi\ @B@`7 @D, G9F @@`7 @D, G9F @@`7 @D, G9F @@`7 @D, G9F @@`7 @D, G9F @@`7 @D, G9F @@`7 @D, G9F @@`7 @D, G9F @@`7 @D, G9F @@`7 @D, G9F @@`7 @D, G9F @@`7 @D, G9F @@`7 @D, G9F @@`7 @D, G9F @@`7 @D, G9F @@`7 @D, G9F @@`7 ӷ  NM" }ݤ&P7 VŘqwUؽYY t*]!@@.'85)[=ۮpRv=m  . YLuD@`Ϥ5 }yC-w|:޿k&H~>ܻA\nQvj7SlS-^C6.=P"U`/p e8lv0 +Sn!9v LM% bs*a}ſUjU|~ZAoVjEe?{}%|mU}`E(O^Uk0ol:gpOUwv lUͽ"񉁽R+&c;L{ zan= MڍRQ4W[}4bĘ[bp՗6w -1CO0 # - -<D i`/*{MǛek )bh[{=~! {vgLDXI@`_ R1I@`fX& /s6v=ʩRf ؜Dv]`{)- @`'.d&$ @`o^> ctWMI@`O7g >E̱ lL O{2]!  t& @- K' MW"nNTM"@n ,ؗ :zzJ"@@4k/χOf}|)/ |z=Oς?q s!V?(p[z>kϫsn=S:} v j/ὶ^_Vρ Y?*!8Ơ_{]o;֖v'jeN{ Hk\զCf`ԶJ}?}  zp̢\վs]_]V/o77V/{Ϋ>WB}7_ޅ2M{v{PSSMm!@Y`^cJͥXmE9][n zUػnJMp@<{<}&XM`^׷|TkZw}K]f`KLZom{)T[pvgKe%f AV >ZP.>w^vh#6_OcӛSn{zШue?xi VED =5[2] rLeP&n`_Z  ӁaKL8[%* Os<v "y^V{Vݭ"L`ϥ"laR{], ܻ۴M`U(9;waVW`ST)[=ۮpRSm&o*cC "`a.lҫn{ݫq*0&?{E@s}{H 0C@`ħgL4H@`e . [8"V@`t5W?=5#AﷷG&# ?U  T >5 A ,9q T+s9j!@@.G>IU}C  ]`2[Փ>lN@`M[&+ HP@`'&e+ gN@𣧟~o~tousOO~x@ז?kn!~Ĥm{ރO{.7"7x֛%:  @`@΁!s ~,|Pw }pU>{9@p=8  @`{{b-**Dnengy z✪N-0r{EYQږS7+(u͡^++ rv$o`o t*]ƿVAزR}/!t]ٛo-:_zp9f+s+;̪J( HP -'͛@ń*א|[i}SV-pw]gmmxu#n̡ XM"p_@`7B @܁Jݱڧ-2m-eH?fŸҾX=/z}z]ۦSl)}׍w{[nؗmx1i5Cw &%# 'ӕB#{c H ==77kvl#ܖ]ˣ&{7xr ׭سr &@ GbXŮ}鵧^Vy#[!1>/gytֱܿh_6hxh`ol]i斑o|{u[?~qQoRJL-OzJL6u$v# <6z7g{3V#~0ȇ.g75vc ԟ8xJL/LWj{ā= Ԁ>^` B ^=޾Q3^`=ݜH  . ;W$J@`%\@}Mxhv{ݢRX&0ؗzY" 不ԓ X  @`5}5l سz P@`STK؍ @`5}5l سz P@`STK؍ @`5}5l سz P@`STK؍ @`5}5l سz P@`STK؍ @`5}5l سz P@`STK؍ @`5}5l سz P@`STK؍ @`5}5l سz P@`STK؍ @`5}5l سz P@`STK؍ @`5}5l سz P@`STK؍ @`5}5l سz P@`STK؍ @`5}5l سz P@`STK؍ @`5}5l سz P@`STK؍ @`5X{|,3XmPL,H`p&@b o@G`x+ @`܈y{)`w]*Kq{\{nmqQRSa#@ K}nD<=nv q﹵D`>)]@`:O`}mm] q﹵76.F Z=ڮQ1FgHI@`O7g=_>;|?~Qҥ/>^?K7WϞ:_~GbEſ+E}V|u 2.!We4Bsyu*:3WgF@`U .q#K#ὶ^r_Vρ/_m)>typ  V!Fyj:;>/o:]@j{j==8 3{׷T֋]W׫"wʷV/pVk}Uy}޻ތnt&@؍$(muszqW"E_onH-V5~ںu(Ŧ=ɩIf3МBvثzp>Wrܙ^vr[b7–;ۋ7Ǜ_[_\sQ?Q Qw @`n{g~[7֟ SޛNk7׷t' y:Ng=Bz%+ƿ& ֣C~K\, 3n @ A}P~o\/޷Mf$  @`8ܓ>VVgO'HJ@`O;5'}j4x݌&@|M@ d؋'xLa|L# Qs"+>eDŽ-#hG`#}#h!@Y@}}|9>X?WM‹6>wС]`rָxxF 0[ ^D.[bko_~RįeH6saq^OSؓN!@I ^_.Vˋ[ yǽ7p .o8]9C+M@9!Z1Ӷvv8~"s9j!@@Y"s1yu|W.?W_A8c=ѯzS-"@@v[b{+:tzk/Wn:067w9l! Pou[b-A ~=>RCLط%ON dj B% d'p؍$( o]K`Oprj 4 @ v=\޲d=~طqvl* o]K`tڸhhF 0_@`,Y`?I %=-cuk 4n @ A=\޲d=ɩIf3МB-cuk 4# @`S=\޲d}ibأ#@|X{т"to0,;賷G1!@1c]Ab A`{0Z, O&sk(CꗓSok+tu hL`> _+G>yv?0=~J2hz더,[4͍J@`;Tヨ>J`_gn*}s >. '%- 'ݽG@E1Y/'&h= 0_?O  @`>F1 djT @`>Vq4Ntj @J$@`}}}S% @Ntj\@`|h>rs}m'}?} 2" aU(A@`C/#1@ vؕRYXS@`_SSYC*أ"$@(  mk8] .%@555E@(=r  @ z=.RAa@ vؕRYXS@`_SSYC*أ"$@(  mk8] .%@555E@(=r  @ z=.RAa@ vؕRYXS@`_SSYC*أ"$@(  mk8] .%@555E@(=r  @ z=.RAa@ vؕRYXS@`_SSYC*أ"$@(  mk8] .%@555E@(=r  @ z=.RAa@ vؕRYXS@`_SSYC*أ"$@(  mk8] .%@555E@(=r  @ z=.RAa@ vؕRYXS@`_SSYC*أ"$@(  mk8] .%@555E@(=r  @ z=.RAa@ vؕRYXS@`_SSYC*أ"$@(  mk8] .%@555E@(=r  @ Z?g"'?*F @, 4h! ԒV_rxzz*?\  @`G?|GVUrsum&@!OOWs}e}Kd!E D, G9F@ZEP}{{{}Qs+ p؍l$ fÇѫ' ss& v?OO~yqB{y# E`uKM @ =`('{/8I@``X-wxz>wO_r+~~yXN >uƙi iV 1XV|cP xwx_ =\z !^`L* ? I T`U*A*~8|ufȫ/[ ?|y/O} 1>R_V߫oΫj:/S^u>F1XA H`f e=m)e ŭ_miZ@\}\U[g:=z]s )U`_GI Iu @^ebV*v_دʩWχVӏ)V˟4p^/ ܔѮs?Qo/[߆$Jnd)$7Bt{ epna9s cZǟVf@\myBy;X[omiW׹c/G,_"5nx @`#%JҵMOM{[+ool=T׶4nmm]鼙(Fw> vu[l_^P2Wy^\f7nJE ػVwY[1קι|\A=).u^ߺfvCjOXaycM7euS=P~oW;_[@`_[TyX'<{LlAm8<6e@S@`7"  fxou7zQr*%@`®UƀW;_[@`_[TyHuKFamoONv/l1 +;a9MS!/Q.;GHK@`O3\zӰ~ iir} 0J``  zIqPF{Fp8/jO_  /.jDgNgr%VՋ_l),'>'4O`,,] x{#`[/n>-x߳pmݖG)+So I =+'ôV/rRK}{Ln=>q$.g( gLcثG8u9ŗpl<˛S7 1^U`W)&=P`O{4]z.I% HA@`O!BU) ) u.]tJ B/jC=2SSMm!@ j=Q w]&$@ =^Ԇ{Ue$ ԛB@ G1`0m l5]g^{N ؝TEU`ٸW!&@JJD@`߄EG19JN@`ڕ CBN  % br  +؇|+ !?;lYǗΩ6.>?&=P'vo_x~[H;7tx}~:폇 ͜A JVh jp^XK@`?Ԇ۳%f|hK̓>Q<\`a0J%@>qP~8||y:{XsumU@`gԋ]z'!~wOB· 9& #C@Į?>_ SqN#OB· 9& #C@ĮT>"T>{D(D`P' srT{ 8 @FF. B" ¨ FG@`/Ԅn  @`#}#hYE@`_Q!VWaTa#G# jB@`7 ˬ" ¨0*1}0h(؇#l% o%:d/[`A5]`% @D{D*- 1A~Ѻ} ?'@`G.wO壘+ p؍l$ ˍ$& '֡C@. BY{̽n$% ԋl& oFB. 9v]`'p8Q@`7  . F/7.Xj . f1 1 . {R/j  . {?O@`,Lv]`G0 @F. ܸLb{b9+ +, ;F@R. Iiff.D@. 칿j<} 0Y@`v} vÀ .or2 u . {PjsI .'1 Q .:yn"@d]`/N p l$ ˍ$& '֡C@. BY{̽n$%z`ozxzW"?w[\w5zVϧ)'9eO!'cqG1W!@*  H ^O?WcP_k9BxQ^76~Yh7z!p3hN!@;+"߮AîH)9 GO+ϙ!^@`o (RE=ӎrïʕ߬DfoEhwoj[j`\97ezt>֟p+*  @poVB{+C_:Rs~p꫟eϽ׊7=v=AsKk]WR#'9I Iu @;VVokk%^mӞ %ߜ_{SqSfO p__վWNk[ˤ:_^;XU@`_SaH3> ϗoZo^si47Co*}cKe%c4Cv^5#@ 1${O(-sO} |t{{w_k?4[qu*ygpyic۱bX/ 쉽hNR{Rݩ1,b`oliͧj%W}̛O^i~㍨S,汎?\_`yUU9F߶r @xJL*v{iY~<ұ Bvѧsmg' Ez/{!MWk(Hq}Y]7nN9sP:^ӖGB>; >p @` ݼiͅ뀫#`}s 0C@`طS'ϘN! @ n#5@{}f$& Zc!''9I Iu . Kc~PG ./ !7{)p!dN @<]`-ϛ"k @( KCuv/S5#@ 1]`-'9I Iu ./ !c~PG . K7{)p!dN @<]`_C/ϛ"k @( !Ҳv/S5#@ 1]`_C/'9I Iu . Kc~PG ./ !7{)p!dN @<]`-ϛ"k @( KCuv/S5#@ 1]`-'9I Iu ./ !c~PG . K7{)p!dN @<]`_C/ϛ"k @( !Ҳv/S5#@ 1]`_C/'9I Iu . Kc~PG ./ !7{)p!dN @<]`-ϛ"k @( KCuv/S5#@ 1]`-'9I Iu ./ !c~PG @lh>@}2|ȉR\Q F6)odٱSTU@`gԫK@`7.# jB@{X:Tsv- T= <:ۯn1}+i٫מSov';,J@`Ϫ5v>)# QsN{K%z%@}Cسn! @s sԜC/k}s  0A@`Ь[cg3МB95 ڸD@`_\L'`94+= 4 @`>G9996.ؗ9 XJ@`Ϫ5v>)# QsN{K%z%@}Cسn! @s sԜC/k}s  0A@`Ь[cg3МB95 ڸD@`_\L'`94+= 4 @`>G9996.ؗ9 XJ@`Ϫ5v>)# e"OhQsN{K%z%@}Cسn! @s sԜC/k}s  0A@`Ь[cg3МB95 ڸD@`_\L'`94+= 4 @`>G9996.ؗ9 XJ@`Ϫ5v>)# QsN{K%z%@^ &tǢCӲ~*Et&  C`^/5|c*NM@`OGhQU`f{/S*iǨ kF۲k.EaJ'@E@`_3 a5Ö.{a$0M@`hط ;jĉ/K} sn8 @`#}Y:ۖ!x.o2t 60 a},]`Jbc!@ Y}g{XͰ ɾiX =b  Xؿ>|O+_4axm_~q{T`H`>-8g/_x]k1_뗧g^cO_>K)뫻o/#NT@`ϴ5z.V׋vt!U#Vũ\|[)Tss" U=n:tTqNsZo&چOWCoS) )6 ^:_?MZtks(o7W/mm~JyǠ_%]8{ў2lW(_T*b=Q5XU دD:E*sc^Uk0}3QW+7][_23r=׿-XOﷷG1W!@*  H`~`/q+Cu=/ eԪVt|R;ôPހb]_B`EeؓJ !@ vj]zmi0ںy3iQN;T7L7g}{J]~zq~% y?^qOcRzD}HV`^`}FNoVk7<^cM7e57oZ2]ۛNոnKL/rL@`F`42["tD,{{MeYaH`>- {X5Kg81S=ӎl[%_  /;HGj KQ,GXaJ !@ aX{&/]/RW<I) kԚi{lxc4(v ӼMݏR,]c ;~WǀUy*~yk菏f|@@5w>|}GoNYY|~g81S=ӎlxx`zg׶d˕NavfLXm5w}yIJ9~ܾ/}WܷS{v$T`/V+vb oK 1#^tS\~R}fm /KUأ @ -/=~b7fkl+ؗ}^q;O ؗi|M=VM &M-3!Wsvml>UoZ[_.o>p%ϭKm/ ?ԀLb-m*G/xe=56X]k7w>|MU_o:\_K`EO3WWT ؗExNbKLKMg=jv ӼM{ذ/g_'xH}&@ +}D\,]t+Yi  @}w[w1!p؍l$ aK7zqddRC]@`6E ۚKCNe( ثD@{jKLX5Kأ|R;GHK@`_3V3l{ZmZ^@`o (mC`agK̲CNe( ثD@7t-1CB|]`%J"#U#@ -=l`YkքFo)[ 5}4X{{{|on!@*  H`h}j D"#!@ ]=ݾղe2?g/ ZH@${$ u E& G!C@]^e{W߿^t_l>Y,כYm!O~yqB{y# B {<[jG?p &N'q92x>Z_1x=2gHS@`O_Q O:[V??k #}GHE@`oa0J%@;n 0^@`oHXI@`WJ!E7k$F[@`ԎI {[*v @`>ʑ .4C =nH% qH!w$F$ U, Ax}#  @`%]`_i()@{ݬK@`jC n=Q;$) Il"H@`Xvx+G @JPR ,,Y#  .5"Ն@{vHR@`ؓE V / V$@v}YYtF @ .]`kD G .'95@ =b  @_@` I+ JCI1سf$@@\׈Tq q @ I]`Or`k@{ X @@.[9Vbd! gIv=6#@@(@%@~]`7?/ r$$ + %B@`Ϣ5~_|0(9 |̈1S̭͞?rsq%@ @B Xʸ3o|(Te<* M@"B 旁kk7A % Y Yw \/!W=מnAXJ 1uk<k k*vcn  @`E}ELEh _D{=(*@)`~ v D@ªP1uk<k k*U2rsy&@ @UY Yw Xa7VWTeH* M@"B 旁kk7A % Y Yw \/!W=מnAXJ 1uk<k k*vcn  @`E}ELEh _D{=(*@)`~ v D@ªP1uk<k k*U2rsy&@ @UY YwMh,LPi Xa7VWTeH* M@"B 旁kk7A % Y Yw ~r'?ZE+@WC {=! *V9/ g=vV_rxzz*?Z.`~>nwk=+ .W?KUe, N`ӷǕcX+`҇+sdd~M+IO'gK`@Mǀ{N#J19 _^[̯qNk֫Vj `Ÿo>|8Is2^'Mأ"$@1.PM76̯εj!% @n_n~PB/j  B7/ 7R(Y`OwO_s睿{?m_~ÈC/pW};㆗7v){$]C[wp7"x=i} P\-Ԟ4}w^ѡSꜾz ^ =FƖO}Z;N{u>g3?C}*e>Q(N{ު VG vo[s%\~z`_סo{@ Ȱ*%c'7~h~m[`O?@0Gۭ)om%&M-1=۽yŽN{W\3E$}BXtZ{S'> tzb}\P|ZC '.X76xcM|\F?nVW8{ӼII7\ᱎw{OQGkgaOϴC|VM;k qLj}42EU08n;B`77½_}N9ZC@(=7\C@!:hcʵwW%;]`_;dcJy)kwfVX`O?@0]`_; cJy{o.X`p<aH`S=uj=b'@;ɑ'&&@%vc|3̯tA XU+z%/Pͯ_z.N`?~*֚ =c~:jS/k?}55P@ȰWn@!<W0{uVW̶ B`vopk^B` KؓފLVW =: -z}>\|xԤh~O >e^=rF!'S@z`tx}~i.}<<<ǚOB9-mC̯mةǗch2X_@֟_ _Z/~1ns׽ ;(R7s[_/75n' &$x ].}x(rů 翿uxP^f]@+@oN-"Oأ"$n7ޯ~\_ebZo><a~-l=R?d؋*`Xmzהpj"鷘!PW8Jcu -/ĔɕA[76S=wƲ@!h~;&/7T,Oo:=pZl)n@=of7ַd1*5Risf+ԘC jq3x Ŋ=u<(v=˷6zA@`o}UQ(g7`}{H]eHH@`O3B`W,ݿZG`5}5l (l 76@~%4= {8*Pq4je~я}_#e {_ ?]=Vu(8Gf2G+i.0OO9S؍+-]c / Xa+T@c 1P bܼ6̛׸Q{*= @n_n~PB/j  B7/ 7R(Y`O@!Phe~_),Ћ@`B(M42ͯJSEm @!P&e~_W % )6@@(p2̯p+zQl PEf~_WB{ 6( "D3/+Jd=^@n_n~PB/j  B7/ 7R(Y`O@!Phe~_),Ћ@`B(M42ͯJSEm @!P&e~_W % )6@@(p2̯p+zQl PEf~_WB{ 6( "D3/+Jd=^@n_n~PB/j  B7/ 7R(Y`O@!Phe~_),Ћ@`B(M42ͯJSEm @!P&e~_W % )6@@(p2̯p+zQl PEf~_WB{ 6( "D3/+Jd=^ GOOr>1ϯSEm }tLW8nS8 ś_~W A|(x3Q8(ϯ ofQ? 2g}c_ {9D$ꁢgծp^- 뢬ӛsUnsC_xS:\w|}[CMFk[@]DABj038M‘{ 6X=PYQwLkU ?W|R[=[ao2nV2kSQ_~Qz&ڷ:OZ>gDA?1W_S~ޓ|4g ‘{ 6X=P LA OO+{wب9 =޵O#ϽM9$ yvۦo(Oꁽyv9gzn~ReL3C??R8R`OR7ĬQj1[bz&垃i;x7YaOBA)_[ `U^]?U;u檣~Z=Oٜq<Ξۑ^?R8R`OY)ߨק\k' 'fkhN }}' kJH=^d(p1)ɱC_<G F AC`5ʃ̯t|kJH=^ #Pe~/9)L`@!P3&S/9Y2=L`ϴ5TB(ΚǛ_5~xck3@!P̘8#O1/kd0=ӎlS B:ko~_{f@1c<2̯%L;^ L( be~_KG 96! PŌ32FNL3x&0U@(fe~/9)L`@!P3&S/9Y2=L`ϴ5TB(ΚǛ_5~xck3@!P̘8#O1/kd0=ӎlS B:ko~_{f@1c<2̯%L;^ L( be~_KG 96! PŌ32FNL3x&0U@(fe~/9)L`@!P3&S/9Y2=L`ϴ5TB(ΚǛ_5~xck3@!P̘8#O1/kd0=ӎlS B:ko~_{f@1c<2̯%L;^ L( be~_KG 96! PŌ32FNL3x&0U@(fe~/9)L`@!P3&S/9Y2=L`ϴ5TB(ΚǛ_5~xck3cooobLs0̛9W> {>} E;9 ͯ,@F_Ay^.P(O1Rc{_=: Qf[@!g;7h/!?ߥ I+s霼=ͯZמN>h7HbN/'qc2v-՟ZC @101I͗eC ' :q* {*c9v_>{{Z5 />= ؝U}g/O!@HL@`OC5 @ -= @:Ts @O!@HL@`OC5 @ -= @:Ts @O!@HL@`OC5 @ -= @:Ts @O!@HL@`OC5 @ -= @:Ts @O!@HL@`OC5 @ -= @:Ts @O!@HL@`OC5 @ -= @:Ts @O!@HL@`OC5 @ -= @:Ts @O!@HL@`OC5 @ -= @:Ts @O!@HL@`OC5 @ -= @:Ts @O!@HL@`OC5 @ -= @:Ts @O!@HL@`OC5 @ -= @:Ts @O!@HL@`OC5 @ -= @:Ts @O!@HL-8hIENDB`_c d e f g h i 1j ^ImageConfigCont.pngkLPNG  IHDR&[/sRGBgAMA a cHRMz&u0`:pQ<IDATx^$aaZ#1b+ H\/xG h\xE5=3&^HT/NA!cp5W\İ}_HF4c _֤į^W\;N9u=UJ6:E @1` @c yp&@ @*.  @[@0 @+& @b2~ @O @L5 @ `) @} @L? @_@0Ԁ @@I @ & @H^@0I@ @`|d>P @ &ɟ @/ j@ @ y$S @@  @$/ $ @ 0`2~ @O @L5 @ `) @} @L? @_@0Ԁ @@I @ & @H^@0I@ @`|d>P @ &ɟ @/ j@ @ y$S @@  @$/ $ @ 0`2~ @O @L5 @ `) @} @L? @_@0Ԁ @@I @ & @H^`o0ypy5>. cyu"pAe 1Ã\?'q~A*GZRl8J@09m.Ƙ &'} }xB JM\WERVǘíVB &٤bJg"@+ YLj ƳLA @z &˕) nBYL +3ʼnYm.겜$puyQ{ٞUqپfeYγCVDTOSL4];Tz?tR}غ} γl6ϯw3~=nz: @rt`rHVh_  E9 7fJ qWn"].10@ &,p =& &BI !67>9'ڑ١_\}OY>:tJzHK`+_R7ʿ&3*m,_sqⷩVJ9'U+޼^9EKIiuVoLF&V<+a9 m/b {6o(Y%@tLjƼ"^=w~S}ժGUaeQ|iգU]7/}~y}Eٮޞ WY0 Wu*N*6L,_.I}RV88jN.Ca2Ҹ;>pF7D @ L'W/MٝX,w[r.=[Ɗ]Rz4p߫{ \!tB@ MϭL}ت}ϳՕ:R{ib?lʞk3-]_qLݛc &yXwo9%hM}<9ߐ,K02t/z YKfk#˷,VIV\wj@;hǤ`RolbrS{ZgndF:؇ת'+o)j; P-m0iyJdZd숺,VD _?Ӛ Ь{ⲗVL֗Vwʩ?+4?O#>lܾVى<_g|rgK[`RG$#^p`ߵUyDp:vo}m^l߯bm*/W*|.,?vVVT=.v'V%VεR-ĽvdDCB]yvj0U#~[T; @` ɼ>wH ٪uX!X4gqI%J[(N 1*]`.\ZY &5V^!{)Ms܇TdZ҇GX}uLjΣcg?$@BhLBzusIWR| @XN{.Im^6)LD܇1* @`lOj,4AmBU@0Lj;0}8  @ &ɟ @/ j@ @ y$S @@  @$/ $ @ 0`2~ @O @L5 @ `) @} @L? @_@0Ԁ @@I @ & @H^@0I@ @`|d>P @ &ɟ @/ j@ @ y$S @@  @$/ $ @ 0`2~ @O @L5 @ `) @̓Ƀ>~g W響}+[vSo+ϜۼzjXy=g*Xn;P]{"P, @6A\~NS?_?x_ШzxYq#/C @ +&{4)狔ɨxo) ئ]4)c2Q\Ҷx>"D1T @`\r/*Xڽ|Ra{*+,`P|V!̴z*W^M>uрOpt @ 4dj9 @) &(OZ^JtRj+ @@zVLs-&@ `\ @\  @' %*D @ =$>b @ &u  @HO@0Iϵ @@pIp]B @Ls-&@ `\ @\  @' %*D @ =$>b @ &u  @HO@0Iϵ @@pIp]B @Ls-&@ `\ @\  @' %*D @ =$>b @ &u  @HO@0Iϵ @@pIp]B @Ls-&@ `\ @\  @' %*D @ =$>b @ &u  @HO@0Iϵ @@pIp]B з^z)u_^}վ|# 8= @ }s#<۳z(;;;?om-{ߞ}_LCC  `Ro "gdF[[( @`XdXoG#@K7goxUXoYh| @00ΎB# gZ%z=G @ =$>b$#_7L;R| @@IƎ@#p}۷}ѡd{~I\  ?V]0uuF @`LdL}&@*ﭞ &@`L @I s{>IiBLB u!@ &=XgRT & }?'$4! &! @@gW]\ʕ0c~#/W@0W 0K/=C'߿?R+& @ )_=L~o-)Sm")7%@XXK +'}]+{z @; @`??}˷|K땓_~hbN_ $| ˃Fӛ[5jXL >;;[km@otG/~Ih$BLB u!@^_x,}ew '@zA 7ǻ=pL!@}Y$q; &NHV@0I5;E @`dgG!@@m @ [nu?=+A**A@IHU@0I絛zY  @R\N # jB &;&NHV@0I5;E @`dgG!@@m @`$UT@0TNLN7TLTD' De*L w @~BppBM @``d`p#@A &v `` # (h" 4Q LR@0dj &vj @J @@WIW!@L `24/ 8C `N_  , p# 8= @ Y$ٮpLU"@aaM&J!@I &V"@ R$ҎSm8]@09P J@0JR9 `]0L&ܹF;{{ߋLU @^Moz;o_ 0`2 @H/B~0[HpXX &NHN _!vZꫯWKgJrLzC] @`*UOrl!@jęAI WK ߝKIYh,BLB u!@>Oduw.pT &N HJčI K@`I`: Пݻww]p#|J&@!䐐  @`2VKVt#d[CL@0T8ZR,Սۋ&ٗhZjV%@`BɄ:SS @Z_[  p`r2 @ tR6_noe[. nXW^˸r#1j!@qqn"@HY-)6͍tj `}j Z*Ӎ/ # ( 0%*~sHLr &@@_GyƺF @``!@I |򕎮ߕr P- 83 @`r}Fɝ*D@@I@* Ѝ@׫%ZxiR `w=nw @W @H}F:a `2.@#jJҍSZJpp֎D= y{L `\k0)_buڵ,_5kՙ!A@0 ԁNrdU1y2 `hǨ4zdU377#[ @`rH +nPA"L"($@jVKq# &*F{nwkdLs"cer@@0Q 0@%~sQ `2$'kڝ˿ݧY}z @ J$nSih.0\0i^'[ @@Y@0qN @w 0d" P' 87 `C/# l eؕLV>,pmLOL\@0xkL&ґAus1&1: @ ݽ2J} &} +F-+' @ T$ԞQ/H@0R1U@0W 0`2~ &lAQ &Qw `LWk(RxOO@  `~!$`r  0`2 @hhLI , @@I' ZL>8kk @ $RS8JV!?; @@IƎ@ &;8 & lF &z `Vk-(/&~M&@@I pٞ߯.Ŏ Я`ү  @`td.P4L لbLb=u'@ $R$* $M@dId V{L^j  @` d h!@ $_=E! &!: @@I"@@oIo &@00A- _@0q @>7k&V#@@I} H~!j @`xdxsG$@AAG &GٍbLb)$@ m$z$ $ɚH t& @! 0`2 @ɐڎEccC &u ``k2Ls-&@ 6$S_8B>#  !  0e0yrz8< & H@@0I5;P  @`D6S@0S߱  @` Gf}9 Lڊٞ"-+' @ D$^Q'X@0Tq\@0T `^g$ $ɚH@I DݳVd{ @G#<+h# Ѳ-D* DqM@BIBHW@0IﵜXXzJ=  @]c ؕLU.$pLT/U!@`\ @:Y \@0U&MlC11(/tL!@6I- @@wf^~iTLݿZGsĉ@{H @DE @WW^ @@IL ˳61y)j"L35&@W`"@zD} @TE @SSN @@IV&H@s61y!j"L35&@^n^\`я[W<* ʫp /pue4x啻`zFt} @OO]e @`d7 &TdLp%@``j`2-$0`2v8>:LWV7O˥\: Ѕ`҅2 `"X1 h@ T6$@@C<=wn?3{Yn?I.rnaL\WK1 &1 @B``rdzǟ 3͞{^`0=sLv_~q&7 L#@@k!ɽ}enξz[6aj٥gyL:t. tN@+0t07_}yT~3mVS|]hL+g7+t7;~]:`(ͭ;@ I $%0x0Y:g[O/<\y)cDlO}o,.'V~)ס%NF4((J&LOɪrդ2T=&; sC}_̃Wۏ]0y`ߘU2 ę@ LN{ P7o(W?1L&F9LU"@)IuPLN )Ҿ4L(ن &1+"L"zPU &vj @N@0&_;r߇&^5L з`ҷ  0`RLէLG A$Nd- &}&~:!&!: @Cr0{nC-ś;˸GٺM0p*JĉA ۷7nL4`eS@R"$K`dv%@@IB0_Ldd""L",U%@@D0irF09$uLUFL.NA Ee F@0ie[D e08.}u1qj󳫋=/b1ՌWYxzu[V7Y6 ?$>RCSL֣C@]y!CEga$zge_l%#w hZ#nIL! Lk.IO#EvU'W$^,ţjge*[x},W{?k˫ٱ .ev}`(S0T@I( tLfuPX*Iʱ^Xe֫-˰70P,߾VinVd=%YW~-`'3Kʗ~WMXԦ,ĭj񜯂I<}" L'KnI6s/A10+Ւ CU{NS9"SZY߻Rg:Zڪsa5)R0՟@|I|}+u0W9%W..+.`0WZv?}x.;2L^L:֮,+&F&NLN3dR\+_YY_:vҥ\x:|eqoɲ{M*VL旲\UL jD@TITݥ8,y0YN΋O%}gʛ 7oMKٴnyU0PSn+?&vւJ C啝. Tu @dD}a`;#6*C &qZ`2s`s倀`!@`hdhq#@@ &Z/[<)6[@0 Ԏ:2$Ѳ-]&](* &I`҅2h# Ѳ-"L.NS Ee F@0ie[D ^l=9nq@ILZP0~^|`b߫߹^<ָL&6qL"@U~G_fr߫`~ RL$@887{ @ X>p &6ICZ$# $J@*I7ó,GVT!@I}f8J@0&o`r &*&ɡI^b2puP ӁLdbZs$" $њI@:I}07\qr+7-%`IG& &$$&&Ǭ*Lyr5a#@//Y @`$D09&@ &# X%@`- 8 01D0L&65@"I"# &I:]K LI@0Roj fI}0oP=&n~~A@`I`:8U@0&LJdSG 8U@09UL@0L\ؠT &lDxD0g)@ &f'៹ϤpYK&F9"L"4U&@>>|k?&_Lo&$ B.ĥ\]$e 0`2 @gD0Lzd'@V @`<Y0{]R# # 8) 01>W7_`"LlkO  # &.@@I# &bLb5u&@`reX.m> c &c @c+&+wqT9f5"}h- &*'3{և'{YVvv쿞 &${uC 77'~읳cuN0 {\zY HJ `27>}b&< oq= ?4Yqtt0YΎ[ I>LzXA &AvJ @xԃODY,onVL~ ?Ggbr' &*LҪjEadO/ow]{gY2 u0β_\TtkL?,kz^ցK6mY9xUeWn~ee꛿nd&&v0)Mԋ+ U{{CNߋ``ӟzޑ})C,bͿFKˊafUf!Ymsudb#VsX &LL `Ro]*/cu|Mj~Y|UUi|e[z @C &C` @D&UK@t9|2^ΥJJ>dϭ'?B0\ZdkRڿ:VjS\57":KU  D``uRՍ{.jnT4^q^7/&S|u0_„8nh֓z݊Ia`"L"4U&@>OѨo?ch߭Ka`wՃ67:-r%fXb0Xyo~RHp̡V.x @`D;VHW``uU/uzݛLXP/O/du)沫Lrj}'}z]0Iwpk9 &`#@ =I>4ymmɀu>tڡHD@0I5t!۸=-%`jϨL+H#L@0RAC@0 Y\V[@0 X1bbŤA8Lav ' &p͑N@0RIB@0L J R@0i fs. &ITL`"&ԚC $LL$$ L73D0L `c3&`-{M  F@V[@0 X1brL`L:#@`Қ[@0LǨ P- 83 01D0L&65@"I"# &I:]K LI@0Roj f`"x+ @ F$^SgL[1 &1: @`f{3}o_}g'sOB=XЊO<}GrO=&էޜ\?31*[LUg&&p(L-sLV}\0I@IP@0ه)4=R#@++I @ D0TLPTm6Z%@@`i*t &mlKT0BQLhٖ&I`҅2h# Ѳ-"L.NS Ee F@0ie[D &]I @`F˶@@0L8M.A@m  `"tq &](*6I- @ D04LPTm6Z%@@`i*t &mlKT0BQLhٖ&I`҅2h# Ѳ-"L.NS Ee F@0ie[D &]I @`F˶@@0L8M.A@m  `"tq &](*6I- @ D04LPTm6Z%@@`i*t &mlKT0BQLhٖ&I`҅2h# Ѳ-"L.NS Ee F@0ie[D &]I @`F˶@@0L8M.A@m  @HW^nݺ /YβwS}F(g`2 HZ@0I5) L{7n-?yAiͷ?ٝ;wF9MQ@IݯLQ `ĝ'߇\Hu[)Rm"@R@0qb @`bID_0i~[1ineKLqT L.NF Ee F@0ie[D &]I @`F˶@@0L8M.A@m  `"tq &](*6I- @ D04LPTm6Z%@@`i*t &mlKb &O]){A!T\=G6?{b;ٛΟS %o\|{1y*{T>D0T(D0b &|SMG ?{Opp(,$iVG C#0ƔZ 0`2 @`0X:H1'G~S+]X-7FV{nBKa?)9TZ@0 {TR&jtW`rsy9W2r9tX7 &{ `oߩ9* &y)t+!Փٿ.Z1Y]U\w})#&* $LJ/*>.r0 1MV!^.wr;2L&ݽG@)Cj^#゛[ْnnB`(t &mlKT0BQLhٖ&I`҅2h# Ѳ-"L.NS Ee F@0ie[D &]I @`F˶@@0L8M.A@m  `"tq &](*6I- @ D04LPTm6Z%@@`i*t &mlKB &o~כz[`,/#:Ǿ=s(g`2 HZ@0I5) L^y֭[|_ZwS}F(`2 HZ@0I5) L&Yv+T#$P&tf `#A0i*e;LT &eK}_\}ԕ/2U@BIB!P&gBviU?8; 7O-y}Ïf[Lci% &;0(2~啻`zsk❺͡ &W L `+y-&{# &v* @`@L~eJ} >ᏯWL~꧞b}O^7f]2xᅿ&WW{~"ʝ;?7p& KI9&>ht7h<*$$ $ٚJ@dId p`r}  Ч`ҧ  @ 0$Q'$$ $ٚJ@dId p`r}  Ч`ҧ  @ 0$Q'$$ $ٚJ@dId p`r}  Ч`ҧ  @ 0$&XVpQ'$$ $ٚJ@dId p`r}  Ч`ҧ  @ 0$Q'$$ $ٚJ@dId p`r}  Ч`ҧ  @ 0$Q'$$ $ٚJ@dId p`r}  Ч`ҧ  @ 0$Q'$$ $ٚJ@dId p`r}  Ч`ҧ  @ 0$Q'$$ $ٚJ@dId p`r}  Ч`ҧ  @ 0$Q'$$ $ٚJ@dId p`r}  Ч`ҧ  @ 0$Q'$$ $ٚJ@dId p`r}  Ч`ҧ  @ 0$Q'$$ $ٚJ@dId p`r}  Ч`ҧ  @ 0$Q'$$ $ٚJ@dId p`r}  Ч`ҧ  @ 0$Q'$$ $ٚJ@dId p`r}  Ч`ҧ  @ 0$Q'$$ $ٚJ@dId p`r}  Ч`ҧ  @ 0$Q'$$ $ٚJ@dId p`r}  Ч`ҧ  @ 0$Q'$$ $ٚJ@dId p`r}  Ч`ҧ  @ 0$Q'$$ $ٚJ@dId p`r}  Ч`ҧ  @ 0$Q'$$ $ٚJ@dId p`r}  Ч`ҧ  @ 0$Q'$$ $ٚJ@dId p`r}  Ч`ҧ  @ 0$Q'$$ $ٚJ@dId p`r}  Ч`ҧ  @ 0M0y;{g^x!{ @ =$>b$, &׮=oϞ|~w&N00A- @`M0GndgggΝ;A @^@0qv @@B`ruC` h*L"@^6$ne?/ j@@"oy_u ]ٖ;>ѷfꗐ >Ȼf PLH ݻwrwL~Wofdz_|Q'1qƍC@HIH.LZ@0?g?Y$PdoG``!@@Ix }bd7 !`A'"LƟWLD0VB@0BQh ? LCaХ\ LlB`D;VO`r=q;{칻Od/?;dcI)Ix]jD`(d(i!@ y,@<330ava2{N-&ɿ `p+}*jO͞{|Q5-eOK?+}|粻ue__Jm[O0L5% L?z &~񿋗{mSťbyYh'kk RWS-{]LIdG. ML, xz &Z^LַE֪D]YS\(Z?bWvڰ\CN9wBT:c$"x$`nk9 LBy`FͥW}/Z6'K6u VmٷzSk]U֔'&{#@`˦8E`2BHY\&U'ro[Kp)֍K*oj)cd?}Vl]Ug:7~D09e ۗ~~}N)޽| ݞoybM+">5k\u]}gpc|M{Lv\wNY]0jry$`nk9 L~޾˳^^VL8oLG $P- ?)LCAR0' 8? 0@dՎC& &@a8B@09.8F@0R,c]C`4Q+@@0R,IoVH`$d$x%@ =dI`2~&i1IS) @Dr0yG|{8k_{~t>wfX\u D, DyN@\`OV} -pLw 낉| @!$xd`p#`pLBO$^(A0 GԇxxL@bI. Ih>L @ $NLB$^Pa&aZ Evvq5Y6ϭ(<>ۖRb'0]d}e&0`2C^gf|}90gI`(LFawPA &AvJ 0E,_bXy0.gAdh2~3dy6 &mlO`tVL`$_4)e{k[ WgGZ}@`\ @@S&2"˴V#됲X%J~W`2Љa;H ( P-{0 ;7c˾.,I1+h`, @s LœJ" 2[)]U|VFjO@'1E`+&#;$i LV{V}Vzp1o/9ʭLX1q @```T7B{dɑpv#0A+&TM"@ L$~LBbzD}' g$& I C $~P LBd$^LB!`F? &!t`B/&C@0 Ԃ:Y0 zA}! jA@cg?c~vmDMйc 2*>B@0T)LߓO>9`Ť)b\ 1/ro 1<0:A6] 0`2wj0C;}oCeV!>lM ̓Ya/Wwkbx:~YpOK]{ʫ VEJ+롻ce55o4G}' H@0iĴhO0%w9c{֊}Br5dO05~uy87q=muR(`0)ֳP&؆۾r7/Vl+2-2DM_en7w쓟F?㿜?ٿ4=:CU`Ҳ+'R&/~`RL*们_lj@QNI= $UC+${BWΡ՚ʾhr:n/*6 &{0:Du`Bϧ[!T(:&9xIqed2q=5=6Ҕo]gtq+[~־M{E{P>gel_eֲ-kbA\ &t* @ $$L`R|TKV,.%,]uV)Utj⓱=AA;-F &}Nv`w?;S*>/>(5Il' (`BW &M{A0i*5FbB7E0  `B &M{A0i*5h;S0T&oU0i IS m'DۙI]G@0]09]09^LPwLD,J0~.}CkVO:>i|M=>5lT=9$.`&J0~KLӿ N\/|Gk>/noC &Cj;& >Lo2׳ xфz[[  Ё`"J%&)b$d$x%@@`"ׯgݛ߾}7qцy+&?+p &'ٕ) &`Y0ҧOͬ8?u{akZR~ LqU*&+ &Id;<x-?_;I8}&B@0LȂI,+Z-9RLD0}P09Lzr @``"& &17wtAtv$@@`"&iiuI'@D0L&9&tj @ D0LXޯ3.$R[. &`2 LR@0djLD0F) &) @D0L &u{]" %@`"&:TpBbjéՀS0id&`"txD;iĉԆ*x>ٝ &`c0.βEvjjyyxbʃ|m/.Ηeq]>8~_ٱ/./~[un^=uXԵ`TZƫz';mv_n^7}7`ҍR ԃ'~읳_C/gQ& Ox_og/|GagYo|2ėumO_5Pׯgݛ߾}7qwv 2)'痳}>'@Ror<̬&cw_:f`@bD&应Z<ˠyjzBh({_}{ZՌ͹QէGZ`r$ Iޙ=wfo/>{g~pP8<'p>X8LL[Ir+1S^lIa{U{Qc<Ԇ. #FT&L^b% 'y]OİdSv+(I]0)^_r(N+.e:8Q^+^ZtuQ,vŤr_e}gݰmV;h/T\W|nwTm%)f,0`OW L^YYo_TjBQ &/}j3a[8yo|({zyIjͼ]5\Ew볪k+-I +&{W<|kYI#V)Ƕb҇a#L@ Rn0ٞ\,/g*[bpKV,%\\{L>,.[r,P{2pT^U|\֪Ӟw|)`RL77a{Lj&c,XEMQ՚u-ecl>?tɞ.(7_rxˇ[5hC{hn~g1:(t"0`RD +U+;¾I}iBgc(;/ӏcV7oVV᣸JQaVDfc_w^9`[!>1j]OZ?mkg^T {}3u7/SJ#m]v~xrr7ls[Kj7\Vngm(mw~qRvc18.ALv,W*CFy_WGIU[7VTVuw6ʕﻹ/СK++) 'zY1Z1I 䦖.vry0{qoE˩>`qo0ˬ9~ĥ\{L}p0G &Gى L/4C+ ^`~wB^?}L?ХS.&;r$> * ɗC/>" &ɠo֩`) 0}d`ס$_5_g`RRO{U У@KN`?JjÊݳ`3  05=)?P %{l@IF8fw`20 @ vd`_aLru=> El01Tcɩ~ b; &|da) 1LF-'*@I~/*,Nm`RLd̹Ztyk^[M//SYV^yvY8+{Z//ReQ[o1lky]{`źru0A- `2L0ɟU̒\NS_0 &ˉ&,o??YX8ŀM|mLdwKͮpSDTxmj2۸Un16>u]dv ^vEK?x=UYv?#BaI9%ՒKR]Q0&uAVд6K;f5 & wabi/CC\w/44 @ e`~3P,.&)!Ut~Oq\ܧZҥrYM&_KΪ.+w0DeWm&UV}B[E%yV?&B~IBcL]ţWL+8MWS\1izڶi{x.'+֡M `Pg bL &_ڏC/O %-BI"$TcR^u_eZWL:NaŦ͊ɲ[ʬ,9NޕqjVE.\tc[)~p~& @ `WL~_>3KZd9&'SuT]M;OyBdeJ2fFuQTʰ3ݦ[xǭ=FE]u\{)RCjۡ#LF'@@lIdupld2,ƶ&PP:[S  Ѕ`r܄9Ch`"{~$rR@0RSYH@@0LB uuL$L;& &tj @ D0LvGUv޽{۷f7nV.y.-ն*Ի:M㗑`2~  & &Ia89/M|VܻsU6jC9s_sm=o{ ۖshv  @`) &ԃ_:We-H]Yԭۖ/;;L AD?6Rc/;/gRʡƻnuo(d"J@0LU${pg}&Ǯ Suo02RcoMҸc*CKCn8I @@B!0؋`}.~Pʮ_ݻwo}ƍ:r?g{V+}ͥ\{L67k!٥\U|ax߫cаibeTsoo 6lߠ]F^Wysvhюu:x 3g q L߿x|;|3Xv0~\E\2\ː%G'mNUz2VS+K*D@0 #T&z) XSLڳE``u| I E@0sHdHmǚ`2՞.$ بOL @@,I,=C &Cj;Tv @''XF- D}*`HGbLb)R@0R۱* Lg= &=*6j$S@@:B5 `KOɐڎ5Ud=]I@0 VQ L%'7h$A'@@h٧>kLH(2?~ꧾ`oPó؄:L:@TB &  &u `w}?I?J%`c3Q &QvJ, x &u `w}?I?J%`c3Q &QvJ, x &u `w}?I?J%`c3Q &QvJ, x &u `w}?I?J%`c3Q &QvJ, x &u `w}?I?J%`c3Q &QvJ, x &u `w}?I?J%`c3Q &QvJ, x &u `rΝ֭[4z׳^?O9՗`2YL'$@`Y[o}A7W>~~:ʮ?y]0du  . @&f2OzHLxQ& &DM @ l?[ &q_%11$~ĂI].$ &lD&vU`r{LU@0jj &]Mm~%-]0 I# *B~'VLtdtGxx;{ @`֊I.z۰1[c S@0wkŤ_߮JL|rla &a 0!ӃS٣goʞxqYգY>__[]Ƀ̣WK.Y??FqRhqY1WI0Q(`$^Sg8)'u\i1o.D&yYs_|b߳,Jjro旂^h]O`iRVAg=. &諽=%DLavd޽{D:wuU*Gyţk5GW?z̃rE# ;, gSy֪̪4\5 %l 5}8L R.F8>f4j2/&q9TU #Cw@ &#9<9F &[@Q Kn\/]rUyS{^N9<7no~_LU^.?+T_UuD.W&L}Mkt) t,8.>5ksޒ;'kzUd~Iqu7}oֽ#śko_4D}:Kfq#*~۷f7n<d;] G`rQ>/G)=Ky!bLb%u$@`IF0׷Ii^^XJ]^(k]MQ-'`xc$@``!@@IA\`үoW[1 aD( DiL@7θ.?ӤIٷ?qgtƭ{\57,*<ztGgHlyo߮Ʊ&q5!!3Oݚwۏ~QE»O|Lq%`RW _0x}4}Zxfg~tpO0vH@` @@پS{̟4 &l=wxYybrOx'1©ϕă }:#W]`2P@0T8F&3F c!˸K~3+^*sWݰ>ĕVLr([XjK{/$/&0`2c @ K &re$+_=Y|~XO&'bReq_*V_|]s{ &b;i bRsrj-I1,VLv/'- *L?$7!'`x?,V5N}yI~ W~#_g7[o<ԫՒld!uVFy.ZҺww$p}uu]~=wٍOgk T6$@i!pyy/G<.xVc2?%IA^ U}3GM`ɔ{WJ `r2='b Vgt%2L!@`IF0i+L-FD/ D߅@@,I Lt+&c'D&vU`fh 4@ L &J[`Ż2LS@0fj &NxUIoND $P / t5bүd &B &ُ-~'VLt $$ $ٚJIWS[+&J[`2Y@0 wԍI &NxUɤ4@I #@@@`[o|g0d0~~:\g+@ʮ_ݻwo}ƍ罕 ``k2 &wnݺHo_={ӑyY} &CA $~RK& p(L@`Қ&+ Lk5zD}BLBu `F? Tnt-sguIH`D6@L~G4ys# ?n߾cA v$T(SiLx*W4og*JV @`W@01ݓ@I} ,7ofs< pBLB @`w/~~/f=oX?e/uK/M@  Z 0iL׮]߿I X1I5&8硣 `V L$Nt$@`Ҋ Ѕ`"tq)i &O!@@`ʼn * ` &@` @d ^@0 TLZDɩ'@`L&H$R[@0 &I& p@@0q @`2I/ E*H &j-"@TTA @@kD0i}؁ &b $@@x`YF- O$^ 8 8E @`pD0s@L"$@dzg p`r  @`">i@w @ <D0 T#L'@@`iL" 0`" ~9  &w  @`z`2Z8U@09U Z@0LZ4v @`X  `"wVc &c @ AD0Id&N\@0L?H  0=D0YE* *hh- &O; 0yd]O@0L;+Ո{  `"$xk2:]]]>`|${g;k׮e/yWl'@V@0qr @C|#dO>?|qw`|LٯZEHy01q a'/`|M50q$@ Vĩ[O( _LݿZG&N;\RWRݭ & v& ПSJ&`|9L[@0vj 8 pI _Iu&( $L@&N* 0mdu ,`40%%`|%``k2 8gdƗsi 0TwklI'`ԟ _LݿZG&N;\RWRݭ & v& ПSJ&`|9L[@0vj 8 pI _Iu&( $L@&N* 0mdu ,`40%%`|%``k2 8gdƗsi 0TwklI'`ԟ _LݿZG&N;\RWRݭ & v& ПSJ&`|9L[@0vj 8 pI _Iu&( $L@&N* 0mdu ,`40%%`|%``k2 8gdƗsi 0TwklI'`ԟ _LݿZG&N;\RWRݭ & v& ЏK/^x!{9R $*`|%񚝔`Twk,} \v-{ߞ=ٻ>l _u'( $L@?G oxCvΝ~T _vf'% $K@WWW`}J0r NP@0I5~\^TBLB u!_Vn>h]3q:t3{[Jg2ڼ_M߇aDZu# tRvDz{>`<{958W ,3_ͭ/.1 &1:Xĩd೟P !i1/㫏?_tNXZtNB`&N'N}L0Z`2s;v_< &SY"С`"12qL8x2:%@`dI0R`o[5L.Ξ9{<{nMsBvs}.{粻 7[uyvB(Lf=.Ue}ϋ熱3{uW LU"`d<Ĩ <-d 3I0 |bpeI>0q #Uu?7f5cB ci7FچWhIէ`D6&&8n/CI򯾫А,:ՕrUܫ+n@ک8 -nrD}M&Z[+ᢼJO;8`s;qG|$ҎSmC L!bqiVy%_wH9,/w7lO䗋.{wuY2<By#yTsD'V&N3u?_OO;{!PkߒՕ`ҕrLX``_p^|z>U_SpQBR\MYm[g{]O >})LxnDyR*^S^-)Dϡ>L=[' 'jD 8'N{4V7߮=Ս孾jύQ(MJbx)jEsTb4S@zܯRj 4@ &d.f7o]U [fw*ڕ&L~@IP O* {o~߷Y7ʧ_掳I7Ԭ@oB߾ѭ^LJ-+xoG6,0͊b|d wzư:8FAM:XGIG!0e~I:+cLNB>S$sDݎ4[ymL۷ZF3ɁU`b|b|u+PA &b;X&)OLn|7z &ih$ &}LL>+e.ޯFl`Xɞ`yL$ߣL@0id+I &I=D0R`//DށO`r0{nC| b{C#S6yG|\ŀ5.!~:FI'0ٍ7&2MR |mŤzαe-LR}m'P@0ie&N<ƗӅՅ2L'SAMNhh|Eu*^LL٠`4ɑבpv J@0 ;T@I[L٘k|[Z' 878(c0ypy^xjyv`ۯeW\f;]]\o:[dMnyc*8rm?jZr#_8*e\d\G'@lb69*yLz2d|T|]f6ڮ0Zb~ܝ0ESIR/`Rz}>.u4L U!@\d70@jW&J͢l뗳1;`bR.I#:΁&tjY `rhrSz2|4[iY,;_YQx9g`/X19`2Y@0©`8_[$L`r7>B' 888!dL <м3{c_.ģʣ6 KIjO \:W?z}VX<1sMl|*.$R[3qZZ솁bHXlSb^&y +<4U7&!"L3NF:t- t-<eTWحm2l䗟./H}9"!be,?_Y^&՗rm_ʶҊ[x9N1L.g;PcVL2`b̴mll|*.$R[2qjBoVcq^dJRf%\bU ֪N׫1)b(*fkJ+D/#G856#%Umƣ1mH1/[% _jK`^&Nō[~*}zRUAbب"{#|eX[Nzm/]3qj6\{_EL&V+L1shնl|*.$R[2qj|)W/ՁiqjG/}*̬CPe*6]]_;,mUJ_{$DVĩpe|uL>HY?eM_j6l`W-Q8Qyp.Z]U &uƗm<̬j<ƊJO+&@(:_-.:R~A?ۇ\[u"9gq;) /jE (&NPk:dݛ˗^~so뿺}:UBX+1o{VLmɻ&C WӿL5퇖Y1j:ΐɐڎE R^'Nѫ[o{"ck@_U,MʵnRMpjTy]NGfdy01f=JIj6l`W-QF8 Go{rCƖu4qj6\_ġ[G@c|5_K@0Ԗ(NLHMXlkl&;CG2 DWeKm "ĩ$mɶ&N͆kИ8z$@0i6lE LHv `rph70{RթlL_ƗL/%016f2fcVLZHd''QmƗe|7`W-QLLLzƗe|7`W-QLLLzƗe|7`W-QLLLzƗe|7`W-QLLLzƗe|7`W-QLLLzƗe|7`W-QLLLzƗe|7`W-QLLLzƗe|7`W-QLLLzƗe|7`W-QLLLzƗe|7`W-QLLLzƗe|7`W-QLLLzƗe|7`W-QLLLzƗe|7`W-QLLLzƗe|7`W-QLLLzƗe|7`W-QLLLzƗe|7`W-QLLLzƗe|7`W-QLLLzƗe|7`W-QLLLzƗe|7`W-QLLLzƗe|7`W-QLLLzƗe|7`W-QLLLzƗe|7`W-QLLLzƗe|7`W-QLLLzƗe|7`W-QLLLzƗe|7`W-QL~wc/~79pv+&{gg7G9C;}N+>]&](*M߿x|;|3XF`RFa|y8/D'$MSl`r\0I6W-ۆ* 3E $Έ*&NIħoU7"l 4@ [7瀉S`b|yoij|zLяZAWr0{nʮ_As^1R/#]_T@@C fĩd%yvʵxW0ڝ7Y3/+ߺ]0Iﵜ@cfvN&N1n̴2a@I@*Bȃ#tv8m彥W+ߨO@0q~ pPeƍ}3x๗Ɨ>[=Fdz}E @L2&@ 0=dz}E @L2&@ 0=dz}E @L2&@ 0=dz}E @L2&@ 0=dz}E @L2&@ 0=dz}E @L2&@ 0=dz}E @L2&@ 0=dz}E @L2&@ 0=dz}E @L2&@ 0=dz}E @L2&@ 0=dz}E @L2&@ 0=dz}E @L2&@ 0=dz}E @L2&@ 0=dz}E @L2&@ 0=dz}E @L2&@ 0=dz}E @L2&@ 0=dz}E @L2&@ 0=dz}E @L2&@ 0=dz}E @L2&@ 0=dz}E @L2&@ 0=dz}E @L2&@ 0=dz}E @L2&@ 0=dz}E @L2&@ 0=dz}E @L2&@ 0=?IENDB`[ Lk l m n o p q r s t "u ZImageConfigLine.pngvIPNG  IHDRg2sbsRGBgAMA a cHRMz&u0`:pQ<IDATx^$y~=R _"anaAg'7 pyI F"c =`&'kǂwd>1D ApacF9w !j%7ꮮ*9wI: @ @` jUSYA:/fzh =`,\ VRe[gAY zmk~"ێU w^۬ϯ;s*9\[2LbsX ^ x/"lQAzy#@ @h6kP1fQzX e^_"]GBp69[ Fk gNV_X @ @eZ^cO n6ؚWޮWg\#lsE|_\pku~1 +u @ @ px8ˌ @ @ XGO @ @LT@8;щw @ @t+  @ @pv  @ @V@8ۭ @ @ 0QD'i @ @ Эp[G'@ @{'S!]x @`ىN&@ @ @[lN @ @DxM @ @@n @ @ g':N @ @n;: @ @Nt6 @ @ gwt @ @&* ;m @ @v @ @LT@8;щw @ @t+  @ @pv  @ @V@8ۭ @ @ 0QD'i @ @ Эp[G'@ @ @`ىN&@ @ @[lN @ @DxM @ @@n @ @ g':N @ @n;: @ @Nt6 @ @ gwt @ @&* ;m @ @v @..N>4y tv1;0 @`فNa @N@>4z ue#@/ o @gm|p" @gv @@YlHc!@* ;o @`Ypv< lO&0 @ g P- ue @&(ppVHoo{#8|կ~'=ݵb[7Ua8e @$I|L9٧jw.y[=Mj)-{[o ϋ; #&@vg @>`uYźQak9xկy1ߙYez;?Ʈmo-l׫wKqsZ=AicvvK;0 0P@'ΰ  @5}A"L]s֎`U^]y+|msPwbv> !ފGŞj]-F5)w @SNq֝3 0ySw T-+Tc/T}/Z*]kPY=pGN[  @@`N{+U0s[z`8;J],B㊖ (L0 s;8 @sj; @'ggbșnُv>H?OD[Pv2t-WVQ|{p @gv( @@_6B^l_p @" L' @ApV8 eW @#Gy @`Ypvw @cΎe& @pV8{  @-- @UEk9 @> g8+DhYF g#p@\7ŀV8{ @S[ԯOLR@8;io! 01& @B@8:hB@8ۄ} @SNy; 0Yd6ig @tLκ6h @S}NLVp2],P\&\n:]^^n'&]]w,Ǭ}@1X~ޱ##@! <% @Q&ٗח鲐΃ث^=jݠs^}IS# g<;F A@8;Y2F @@M)elT^bY3߳.jcg󱏍sCoˊZvQ[[٘.fqJ)ƱT7<؝pʎAY@8;un @-f˰teuYoZV.<žBV;2w֞`eBTGB 2ts])E[up.[pH  @~ g9/FEhUp6r,-y2g-V敦հ=h-U.{V=/\@8U[Ce✝Ksjuϰspv @MQ[vv^W XkoUv=R&4Ǖ:lՂa#U+ pp4?&@ Rp6-m?Z5j[ikP^tlWZm}mG[e`ikP`A @ζ%k @ 4BW}.>mA¢^k!z뢯MiA@t~y໶X٪b7_ zU[Э\P%rw @v @Ng;<]7AfX @! g8kL8Q@8{". @i< 0HQq Z8;yt @@w Йp3QX8;t2 @@ еpGgAt' ޑ  @ g;ՁN'Ct !  @] g#xx [lw @C} pp6B5Eqqy  @ u9 @&( < g') @ g[s @@?Yl?M"@% |;[ @\@8+f@^@8 @Yp췝 @6.  @Yo|LN@8ۻ)1  @@Yp @| 0BpV8;) @n  ppV8+=> @S= 0@pV8;א  @ gG7N _@8+O< жpma'@P@8+4$ @`rM&@$ g}' @t/ ~ pvpV8{  @Y @`Ypv7S&@z' ݔ @}pV8} @}}BNpV8+ @ g7eL8]@8+Ξ~ @T쩂OpV8+k @R'D/  g'Ah[@8۶ @z(  g{xc 09",q ^y  @R g @v?F@8pV8+=m @ ᬋ 0ApV8;) @nJ  оpV8+m>s @>>!_'@PW_Os'ob@?,7ҷr/?޹<_~L(?bχϗq] @ g[y$ @`4SgOxf!OE jk]gc~f-ŧm>W8;oN艀p'a @s L= @u,] Jcپq6ت} gy: 0f9 @Jge>t7m=FؖN%þdo$ @fz @`ٞ}_>4H @p5@pV8{Le ~p @@Vy Olٖ*_ d~6* @`Ν @ g jGrHκ0 @ g2 ;lĀ @ g3G @u @YolD N@8;)3` @Yp @ gO| @Yo\C&@F' ݔ:! @~pV8> @@ٶ CpV8Ӑ @ g'7N pV8+ нp90 @Yo;$@lg] @ g N蝀pwSb@ @Yl# @ g : @`Ypv7S"@' ܔ0 @tpV8{}d @S z> @`Ypv7! @ΎnJ @`pV8+x @mlO血pV8+iH @r'LHI8+N@^@8 @YI짟'"=|ו @pG @F# ΞƝ;Y8Vw;hD @3 g0 @> g' ,%ˏK飏t  @^O @ gg_ܹ3gM\|)?n碵W @#TD' 6F_oKËߗRg݂N g] @ gMk/3?^)=~{Ƣa6 @YW @`Yllk E({~J1 aN PO@8[ɣ @ g[ gS};wSzbT!@4! mB> @ g{e>LOv. @=l{L@p6{| /Z`AՕUJe>a` @s gϩX @ g{2LAl~.77)ݺV=_#@ζo @ g{7%Ql~e}WAξA @MgP @p6)ZfJoҳg==K"@' m֞  @vj5l#[D`k#@LD@8;v @pЄ@cl O ZĿm @ gG>N P% u]4!h8㏳¢V&> @ g{<9FhK@8ۖJ8F0ϧt^֛Fpv @|@l Z<|Fpvdt @uu/V>p߰| 0`@  @ gOdUku0 Ϲ @ gG4N PW@8[Wv =|ISz=Dpvg @ǹyֺ@'l>hupNՁKpvg @Syn.i8VdU6 @,C%@4% mJrE8S;d" @" D& @IlWo| A࣏;1Μpv0Se @YNyO gx8jZ|:w {l  @ g7{dD({~֏ɓ)Ns&@ $" @ilӢ_|J)ݽҋӜ(gMV@8۩10 @@{lA^Ô>tJ\  @ g{<9FhK@8ۖ;p6իZ<}:r @@/"@+ mw*{\8OMJntyT.VIz*  @Ml`|=ZVӹl)蕀pWa0 @g< > Vooا @=lB  p9Q4E0:O3$@z! 4 @zh gc>4kqAFhQ@8"] @* k\ gs¢Va]FK& ؄. @ >8͠k}61"糞ћFhX@80 @ зpmlFk6Z @ t\'aW @ gB<:T_zaя~bx" @( u= @&( _z숄g<ɪhG( :' @Qh'v䓬믧{ !  @g2΃ pp!#p7hupNJoM @ g'0N Py|:x  @j gkBy @`LǎH8ۓ;3BwZ<~ܓA wlg @-gB>=y. 0&) @C gq)/߬>oĩ/pi[_W8;g6i:$^@8 @C g ׫Xu^}M_ g}}[: 0˗ k.ݾ'oPm @JY @`C gߎxtVzbZV߳0/jc6 v矏},w+c4㿋͏3 k#l)ݽҋ! @ΞKq @=l8;kF~΃BlT.+W"\V.ۼB|b׵7 k>6T qVȔ_yl{Y:hn  @C1%@4 0p-8gUykemKUF 5>whU6pCs^t^sٱ @ g{8)Dh[`os[Sٍ¢B7oK mfpܤtVJZDl @`!̒1 @t8WCsN[[4֠HټmųɊ wuU[煳 _ݣGV~:A& Дp)I!@ H`",-7Xk`U[l]lj|a8~q[nmCVooN) @uu< 0"a^>  cl' @m L--֠d٨jZF0N( :' @x"Z}@gh/蕀pWa0 @gM\i ?|וMŋҰ#ps-b>`N "x `y( @`,Ylײp 3Vjupf. 5\ $] gaP>ky g]  @ gM\&;ǫW)ݻ:x8`^^y0[Qq^5y,i- < @8p+gY&;MJntyA0C 1}:qӸ8L@8{G @F! 6q! gP>=Z: z+poU*^^\#/*d?:,ɍҦj|/Si8.#@`a̓Q @ gM(d7VϞdP?bpZ}BErZ󱇇v 1,\^l/"x  ppV8{S|p Ş#ټlpEH(XUXzz֙Xzzcgcrmqsb Y@8;3v @Y쑗ӄM(pwV_z8I}REP[ Aw*yl szvڍ²fp_8pvd @f&(l=GTbaQIA'?Cϋg }^y{@ef3Mx17/ : @} gѾy_ 9zp!Ⱦ&E=i7muzByOE MRq$ =˃  @S8;ipvB >Zv?6-Pɻm4! mB> @lz:\lO'axjupmRJZŻV_\&,~yne,$v Oj, g۳g @@oA L8;jvOdYmnk/S1w6(]i8ͅꄳ`}$[jϘ wlg @-ϟW/Ԣ+@\7ŏlUޛЉ;blgU[ʇ{ g*B`Ņ @ilӢG@U8[{=xC8;!F;wR};?lIBnLA@8;Yv @pv(=H8;o5|:?>O` فLa @< k gKey'_OぞaO[VB`Ӿ=3gπ @> D棎qy:7A::=Ne\,HqEAك< @`jx#z6hV#=,71Ϯs#@8Y@8{2L] BCh/X g]  @vg]og^hhvC- = @@ٖ~zw:xP;3&@p%A @`pAWRw/kuI K 0 0(  @:vI֭./:ƌ;K( g] @vg] ѪA! <$mJ`{ @@O=@:xͬg;?gD*.  @;.g`7V|;8pގF 00&p! }7ku`, @`C@8 @ C@8 С@TFm,A Жp-Y%@pv$.i֋6zFoZpv$4 @ζjf=:@(  @@o ! xݻY* @`AO @- m[ )I=$4^@8 @@=C#'Vǃ N@8;)3` @s gϩX裔I>ȝx8pH 0 &P |AFz.  @@n>x믧O pN9 @`pMA:\ SlO'ư @! <z6hyG=ζ%k @Ύb^F?Kk#@=d"  @~΋Q8J ܾ:x]xhR@8ۤ} @N@8;)uBRz(kuVT@8) @]@82>G D{VOi>eL/suJ7mvhcm7 g'6N @0a^M`p7֭./:5y/2]&=v7BrQk=}; ppX9#@pv$.߶jtqy^ۮ"mjp) g] @vg]&$|3kuN\],*f#HW7Cۋ׷}\Zw˫tu3_v8 chxCq68-WػBF+gSon @ٞO8@6x0kuѤZ*o_7Pkyk久cW\ױl5-vlGmWy+c=X# \;S @#Gy xݻ)ݺ5Kn~׵efGlݯ]^_* (WʮNlq{׎C72[&Geڕ*T]oipuS\k>K{qS$pf @`Xa͗8'Y{Fq g9Ί @!lCvC`|` @l+vJ 0XfyhY࣏Rs'۷SÖf 0Xfy @" mN WVku0YvfhL@8 @Q@8;YuNZV)=~, ; @@։xA:;Ό'gOT @ g?ΐ@Q=UQMU6 κ @κ<hDիm6 0κ  @g]K ܾ:sq @ٞNa @C@l?(NѣÇZnr g[y$ @tL\޽': @@= C!@蟀psbDF'psҭ[)ݽҋ;='D @;.")[Ŀm 0z  @" =Es 8X ZfӃ  0,h  @, =3 <{otyS!@ gG:N @l3BwSzZ)跀pct @ g;'@ ڨZF@8;t" @mgPOы6zFoZ ^@8;)t @m gԵof=`@O @@!@虀pgb8d/^tnJntsC* 6 @yqvx$kupVGzv @~ O>You@# T( @@.>(;wR};?n=ϛUxgG2]stU1\CA |駳ooF5~%@Vhopv࣏@ @@XꄳB@X8j|v}lWXA|[nDx(kuVӼ5=` pvku";W ש-s2]_.BʟJ~#}cVeΟ@Y@8 @d:93Oz ;>pˇ,aǜ 1^\\=|; a^zv]5cٮׇ6^LWW{g\o-#'logS@8{Nm"0R:poiUmm x{uv]>/CEl7s-L~y_[S:s7yyav8msgs tc>o6J~+pZ D(s=2Wb>z4q}b#@#xW\6w܉::+mҞLW@8;ݹwmkkPUpvKr||y˂#y.[ٚ_0/:ǰ[*nβ gL g-yߋbE׫_|_/痢֎kkuB+((n.,\ g8+D``;[ ^eUZRlkw_զgc>{߮_ g<TJbRvu)X}cTyV ' gg!Wz+ /u1Cl=eX-V>]}e^}_w|jP@a75/!l.[3d LK@8;vZ_x@ R|~ےZ{lUuZPvYX]Ջ[_k_,/YlAP Eؾ1o^RX]yk9:zlu-C+wNEpwF̓=z?*|uU[@/|>No}5o'Rky;wmէ6\|.Bvy[z)_8;γ?8xrmw_VY;.n]lEi7ke/okUPjVY9\jQ,Uiܟ7Zζ l /-떾巴g bE[7sZ{◟r[?v_E ]o;αYVbY-,Yۄrm v}n׫j-yyUYB`C<9c)@UBP (-Uz|A\B[żJ*{cP8֠yZ-*hFgΞ @Yf.tBW8;+,=fj6g?xҭ[)}ɻ8L@8{G @Zζkt Q%YKwSޠed\@8; vz @Ú/=p<Ύ2!>OSz"p苀p/3a @pe@`S@8 Р@?R7c"@cǨy @%lKv;h젧&@J?)mdCI g'9NٛtqLחi?׶tuqol뗥/Ϟ?:{Ֆp-YOtJ&7N> g<;FLN`lAmaJϽh./g1j g'wTpU@D|Sww ФpIM"@(0p6EE:g,]?pKjOΎbDW/^tVJe}f?8.Tg] @ 7Bкd畲U.[,sz4Or^ymDW׳y'GtrNΎc 01vZeˠ66Zė#O< 쉀>Md#իm +l` @ =] S7`]v6 e!S' Dl2=z҃  @s(; @٨Zu2U^,xj1hg-jUּpF0'5' ;wS[^}q6FiG @"Yuż2};[8l0pkj {ΎaCU˖+do~x @ǹy @ᇳ~_G߾ҳg Љpv%@T g]6 ;26TOᬍz+  0Eg9 _oZ g<,'@C%c$@&# T;`y4*y, z+  0Eg9I _Ѫ ޻{M @`!Κ1@=[z>rZj^ /yy.V4 g`d }?L^e [Z@818CXt}9 n 3nc$Ѕ@l`>r ΞKqz-*>!_pOa,oҝ;[Dx! 4$> kŷ#-Y O#p]w!꾯aiyYLy`3iay0[wlt>lɨ&>>_'F@]l])냀p` _e>>-#@cQC1Z ^Ae!XR.*JeuKRQfێvEv{mǩ~; m &5@A_eO*[ F@8;2P}(JجA)\TYŷTiպ`Yq[\}O|g%lAAl09w)b\bg{21.'O"h=t}z'@Q Dg!Y9ì\Z|hku] *\7-i*gGT2=-E*oW=]cNxz;ǵ%jx% t,> ޳>;zn[ο@UBsvo \P]-A~ xՂ6u=tØ8T@8{|Y=[(_{N\><Wy'X,f#@A g5]KUS䖫=[`EW7дbemxnϚve}7˞YH,ܽ}nql :0Tf?60)?Tg߹,  x 江' ܔ0 &<g~p'>al>x EQ ?z!ę/pFlxůpxos"G'68e {)pߦIc Ј@Q0,*"},};w_[l&* =`wߋtvXbٰC ċtN3/T>:x(@c0ٳ,^iF`mE/#Gk#0Rl@cqBO٪W<*u 8H 55M- 6pvSg@all1am޺;Bzx gl 0 (I @`%h{YX" PrSڗp6B5Pc?O_E} E\:NY@2#/jcq|w,^_^sX6@ϡpv4jHSm/Ugw @`4L!@ |Bedm6EB"UFxϳ F@8+nޮ ?|@nx5s%~ 6pv4SD @`QAalTD8Ud;*%# gdP_[\[6pvTd @c=iAm60Gzč[ 엔pV8+Ξ&pʣ`6m#@Q gG5N) DBeFx*7ok\@8+ gb ĻSbA?lnuWy @.%@ FUm3l#}s/o' gYlVh?SbF+ :1 0c=˂xgnemQw/zT> `2pV8+wb eb,Q;V?P g' @OBeF8!mFx!n;Bzv gYl߆{h?]}h?b,6pv @Vc#*6 FۄZ4mZބYpo3v_%ߣy޺};n#@Q gG=N8J *""~K#?߱Y|=x[PO܄Ypo#~@s녿c+ @`O$@Ņ./6Be>z=f@pV8+m{n_F;hk`#@ gG?N8@TFUOFumqΊG5n|=s#w gYYgM`:?G?B?+x7Fk'vs5yuQJf^^_. vt~ٺUMq_mV6ymtyrlo@ @IDaY8QF/]|.W~[Jݨč-oCq9$4nBKs8ϗ"_>,U>x.*z{eփE0qjs;T|\'lKfٔꄳqck\SlO'ư G&]/gש5Wx{pkw/~΃ho"4___,zvv-d5x>.UDwQŻ)z罬~YMnf'L*U_Zԣ6/Pc~.B>3[3Cs5u+l[=_D d=ijZӭ lkG}޽,?#ƿcz,rR9RjlC+]@-GO}!߾7qZ8Fq.Ce@gq'ط~Qt) R߱ B fī_BjW('Anz "dFP{jw7o"f۳gx# -f}5T굉 g}@|oj`yFx7Dk?ԪjeB)ڻUfX(?o[E~vsX<"3&^mosU\(?~RnPBx\!c_^1nx|޼*y~t VXTԹfu2&Q]9?tml{bek߷c& [`Qy3kYPjmߨf/ٍurۃ_WG\}=f;S{Ң`qYx+Rܪcm/}׫cwBv?9Ե_$U3 ‰JdFOk#}o8o_IkT6zeٱu2wh}{{p!|-!iv[{4Cb8v!Vf?moY/MWNjTǽç\pc^5˃pvK?rEx;#OVTgAbos/'Rg_}vm,=ougpG`|yx--2GCꞯc?`m@.~2~p/J0tc1^ۏU5gKaqEO+vOح=1V?v}^Mx|73@k.Yּrn{~ h׀pv߀vz}_/; z^ew<]6+WYzU؋\1+dӖm8oi0`5l -:vSsZ\k[8[{ju>ά|x/V}m[afغ #sŵ= ֺ{}ΞP`su_[c^YE827*|ׂlcmnE k_+=s\ӭ.BGGE:o{^NY: ggl ikAU5p, }$p CXqp[EP[2+B[[XݲpЍqk%`|{?sm _8ۆ}@1DbG闭]Гv_maƼ/iŷ:Nk{yO쪸s,Wݖ]U>!_'U`?Y_9G?7wso{O{NA8WW1Z ۽߶Ł ^ l+h=$mRˏL85X"m1s׿Z>*ZPlVζo_U|f[ gW 0mZE [a ζj%@[޾z̶o1*,~ĘVͳ1`(d#s!XєP,-|z5p5着m`vA`lg#,z}=ğ{ٟ͂A8YڻW|Ҹ/,Ύ;wVCkEkl{ri[SyyH+^[ gwovngp6Ċ.|Nzz\זϭ{~p U$0)߯~Ζ?n-kmaFzk[*+VwkcK^;-떫 q1_-]Ū^V%*قD6ˏr֖Y|ET[#ݬНk1UM>' 7&{ܾm݁{@,M)⪅Ͷ^;*mJ=`UCbm?^51êY;-V\2AccYpoZ[-d%Qǎgf3-|}=?-aӲH-mǷŖo-Oa3 ;{t*UXrVWj=: UrUE}/-y֨}Eur4׌W5Ƿ~=CΞC1@ƫ[~ai޷QDϵGRs'%UOw%0pv=ܨ`]^YZ*G}spn3(yeokeZZ|}FP9]j y2d~+źZ 24V= gQ@6zݻR3n5 1]k˫X6oY6*j5km*CS`}k˶  iUΞ{#. Eз۷SztgQcnG; lkv<%1*=Fs @QUl?(/z`.oz^TTnq }ΟfFhU񹡟א礇c?)]\TG,hl9>g|\sP9+=1!E[>32Z}" ui @@IR,E놨 9Bo{->'=e8{B:* }aE{mW8ۓoC*M߇m @@8 @ D@io[TĘ-VFMT;%*B(W2GJ׺1,P ;;f,{Gyܚ@q!+:tZ\9T  0)n'K D(W?mqjTB~yjQ^;oYay~] b{:D@/޻72^D!pMhS B]}0 JEUmW jETƋFw>O9{-! gO @GyR fkAmacmnfpVHZ'$1*g7y @`IO'@"̋J<Stj8W ]#t ]pV=]|i g]u+7>兿ʶN?}ڶ @H#HA DuOyyRw2w]U+t}guBҮ#}+O_bԷx4Y) a 0bxclOaUBo pqaT_N۪  PS@8[ @`"QUџ6F=[#tTЎ?=]"ЎQ<]MpV8['$1ٮ3¦VWǻsl @p& @"M"*(pk,kyOJ'RB?dz玹C.spq=&ч!Xzm @XJ@t9 s⏵4plvqDl3޺uCתJ]kfm{a1U[h:!iWζ `]Bt5c?'q o'nrLMfO%@΍_^^_ںM0rrы6޾Gi ]3hl#UI{g]u+mvgRu0yql^ /wAt #l&P R`/i7WjګHG%6ʨnxnռWkU{@cqђTնrU guBҮ#mN-}8z"cބc]F@(vvs..]NB"["*p+M7^B˅x_ϫ|ύ`y}?xBp*]-9ϦK̫7tXGq$"d|&_KOUeE-򞮻BרLڦ g ^W8ح> yD^"ط:˿[.(n={ӎzuَ?{9{Uw#t~+ :3K[.2▇gc˧b R_.~iZYP{7k☪e[:f}r85zvJת_RҗRg~M_Ru3Y=HQ8+vAgmlZ ~֍!޵閞տϨ[ gw;*/-7 _lp~7m ;n87(Cu挛@_j[jWCQ!8KW_[8f E@U{ʊSb8ꆮTу.nQy4?n?Ϊ^{M=pV8UZف;fѦ_C0-~g0~Vr]nZpNUNﶿ?*}:cs vV>-hkl Vmo8ƖpsrZjIP8N=jzKTU-T-mʁ]x垮UgyOר6;.ӟvlT}:uͣt>YlgG (?= ՟="ڡoGm[pvVn}w񭿗/~?vLe g :vYmZhkm- =E+8׾pnԮN~WΪgg}j׻-pq}vXGpQ=t=f :%wѣjcsTξ߽?(amMQUV\|TM9ni7wx9f2^h ohh߶/w굿vO1{?{wi: g>Ok+./5-l i XrBrT^?jͱmXQW5֮/ǟbzdD("2ְK3ès='?"z"U} gvo7n?'dݐYQ'p{Qė׳Esw,[-+xۑ_J n;f9]nk6 Xκ  @8$} AC YQ=^xVaƿXypv  Ј@ ]INN?m)*V gۻylgc|/2.B6;\wxW';mz2P @alàvGZ?#Q5-ޟ6.WFQi;.٩Puާm{^i1Gz6,/Z8y|q˳y982k(hQ' gOt pve)bQW4X߲90p)/M g_zrk#@O @:4j'=A`SXU+mj g,wa~jEt\|wɐٍ  0pm] *=z&=;*zTU+u6pUω,u8OJ^UnGojO=O@8{Z}*~ *8Y?g8|3JY DLTZQE:-]6PU+O֜# >x2^Uy?Cm0Թ0nTg] @@?O{UI|U#YU+=ܣ! 1W6 yyDxAPʊ!ǹDx?*_H;@EUhޟVOyDUp>GNG@8g-{սZ;bs{is\_l gĴ+ 0jBFxl,?m)VU[ZM8[## 1_CeP#$yl߯2#@`ى_N%o?Jx+Qj1Z!?Vz#B) g+{y}[$ʊpvh[\?OKCA%@`b~۟؄;] Ш@Ű"`QoKO/ַ_᠞16liF{ڿ#ϴY~_JbF@' mdB; @A_nz5 >ed  _繨W,EWєyg(#7NL^@8;KhA zmޟVX sgU);ЫvYU)i'vY j m cq1k% t,@T%=zO`OAlrȫj."۬>g1pW8tis+x"ggf(81]΅-g[@K @Ux{<)-aG;w@\UE`lp}Or41[i|?/:N @2&@#x4xi gITmjG|&Ff_2"V!Y/_;# @@hX px{~s[+lMUqY uwƋXn>lϿr_آE<.k#@A g9mM&$p3>b=K8[|TNfN"t}XoeoB:?qZ_t9cM' p6o͏*#:VYڳVU['$8ۅ@S}8/BxŶ9zFluxI\76pvg @`Odic6 <-^REƨ\p<*F`=gp>p_Hwn_ܗvs<H@8;t* @`mAoA^ *Bh1oUU;['=p6_ҟs2x/@E}eEhc#@ g?NX [}w?IFHՇg7`jk=6s1}8O g#XSxq1bѭx\ۡ}eʟ0\>C g'6NLF FeQTFgT`:۩t?>W/@߽w'W[4iTlj:mX ~NyW6Ϩc~"?3tYU:l{Zxy^2>tڜ,)ܗ!@`y~;5 @D0}jjO[?z?M(O4#m8k}w[Dl[W6Z'6Ae.%p`u>8q&]U8Ypvsg @QGRTJO1/?yUpV8k";;;ف8^9iovcDS߽_CR]ys=I=O8;vv 8I {>[Dzi?|k`?^z=O}vyZp>9! +"8wU}acMl 9^X腷/e6 W7DL׋{gr+q//g/K^NZx|[.9]rj1uaìuAxwq\Ŋ}Sh}jB}葀pGa( @@GGt}ӎ=-G·LNQU;_NX+apV8{2:;yF'>(w ɾQqVmjkLVn^FkF"+"wy/׵/,\zEx\G74+[5e9u/&5CpniE/  m 6*g*@=d88[v/e{'0TPgθ  @n(AT3EW>=F^6|y =ٹ]~-7 łbO8;y:*,SˏOzYӲ1Snm-'M6E1murs{zpwWxk}/K7WQݻx{].~дlsժn _n+_'Y @d#' W_N_ ˩~cG=FZ"->:Eb1jcqXd,+7 /kl[Q}x'|@xn;U/ MO9-8x gc0[y[Q=H++OKv=&\TO霖 oy^cHMf8 sk=gO5=wZiͷ%@ O-t:-˨y9 lg+hg,Zm Ea[|=C<OsgU~&F>ſ/=7{T+lSVoyp"7TU=5Ou!r6^xp? C ^Wf;_ƅ`蟀psbD @"Jxl^O{l8V`m1Rʅb?5/Wϕb+m *Z~[ E[TܜXU-5OeW::!ߘ w0lۊ}e{t1DUact<7rvB g7Έfa`oϟ/?^Vm]E^*՛҂`UªBEۼy-Pub[ [TYlכk/ [#ɫj#y]# S/XƕDe|U[W6ZtYMpݶ R mرy&* ;m @gQŴOwo/˿>`Psmov.-Π{Dpxyjj2ZSļDˊ"ȍvQmgN6zW9ݝ;Y .**{jpÉVΖx,5>w ?Qf8LȿouyMKᬋ #o~oKw?" Y($k6;jUDXmT@BrvהEe>?aM嬅-;|_u@骯lhBMx)ZTmcx* =+ @ꇳӿݻˏgGO##iq1xOa?^eE8/}M_WJ3lZ5 "|-/f-A|/'@@##@&(ЇpW΃U7f k~*>+07-sV W_N_.-vFM ;o?ڟe٨hZhoѪ#BPIi"@٣< м@fpϾ#Wߞ0v6 cW;YcN5]yT J׶}9$WкcWbqmG6^l-B#ݵ({4, m @tC֪m+*7*3\塚Ŷ稘ͫ6VV\.iyEXnVop}eܟ޲-Zg<|b!e&F0׹z' ݔ 0eQQeQEŷ("M.]n]eKk`~_bm&!{TqY @G݇Yu -F;Xl`^9[j}AY XlpBEZr@^j_ }jrWo۰ъѣբ Z4}qTs)})Epm#@Ag1MILE|ٯE*+V]+.[ zspvǢni@MiA Z88rwme\}#}:z9B>&_6/{)})E F@8;2P @` } gUg[Cs[/{̖*g#0F#ȹm#ܷ-)cP6^`wS7B6rO @^^" @O@8n+;p_FoU;[*˨ cl_8u6Z#yF8W as?=#Ύ| 0,lQlM-HR}a!䶾UgaeUua)}`#*d#α?% g] @ g#m׷7Fg͂o٣ǻVtP`1[WT}ǹE˂"7[ R@8;i3h @`٦=lp_6YlՙEDۀb;wkRymqƞEg{0 @ ں"\lLƽ|cۺ0Z tBa]⅂C\l)op @@։ P_@8n設AMp6_+0m8lBa:o۽{q.uߨȍFz pxO[v%ᬅ-񘾲"qi7yF>}c!@@($@! =oUixp8k᯶.{J_٪|aji'"Chu4Bg2QILC@8{Z gfۗ-{VE{g|P6l]:]V8xnNϩcx9syY @GMF g?HS=؛) $d#-W6=GܾlѲ zF 1M_Lg~fc0龲UgQEh_;wRìB6oTUo,)M8m gSchkpvkx  g< @@ Uޥ.7|pw?/ g[s.# ѶV+ Z} ASl_/Ab9Z_ \Z#,`Lח[Q[6^4@._\XxJVjߥ9-|yOm}ӛsgLXAW BEϥ~ >Wv^?GhJWݻ)E >l[{Ζ¿ahK6 Wam!]1O/7Qfޚ|Bnf[kY{\K9wn_TΩ3k&1v˹P9ۇ[Y @G鄎sjg؏/Y:g_٪SHv}AVJƿh*9%esvb^ss[< gK=pwXTV.>s5ͬ w gwvcCjᶯ

Q!{u=]V.]9R|H;Ω;+gB>]xB`ϱ3$@ R,6+x͂o1Q-a{.Vٯ&@ŊSz9z~-xp6Beӵ;-e-{3[8<+qjU<; ,zͮڷΪxgwV=٠ž{zvr{^ , m  @ή&=<#u+u_٪* U5lT޺F!/1?̪|aEV- nz[ʅ!oVA.gYUy]2bkg+BZ:>jp*>Rۈpj}tәkgJpv5]gy' "u'poqG[)xzj+l||^7˻Bz{ߣxNS6"nJ  @ g# ,6֍@eVEjXx+}tDK6o[nc]sAϩ @@8;I2D @#g# >F)4ǜsQJ&cNEo-9k1_:BYc9s?I`N'@[@8;p6jZ0yoo좚5=]MB;Փ'M"W%&' ܔ;a @0# g󅿢Rv~<ǏCIMmy_xq :l;>\^65~#  @$v'M迀pv5GY,_*_ݏ}e EjA~luh};9u/VDe yF' ݔ:! @8# g#xWw7V#=ek/zFemT @@'@U@8;p_ݢC+[~nhpbgyec=} @g'w@ @:QX봝O`h}ed4cod)-41FekXh.G"@  @@3ف}~\RPVL'>t}C77{Q-a[Cj:  @ 8}08Q9o 6d#mB;hMoq^0,. @^ g [˫ǃC_*<UuQe"LO޳ @=_+Fџ\Uq=GUm,.8:v @=g0B2k _ۼb4fǾE˂h㼣4eѣŋ셆د\G'y2 @@[ٞ^E(k᯶.mc+[%׿tF8tPkƢ*>wQ{׊= @B'@plWvW,ȏdm X?N)BԦ~ @@N @`pgl^m9EB;<2h̓ۨ3*f?~Gm@[I z! 4 @@Y@8ۣp6ޖof;7QT}뭬A[:G%pm0rLhU@8* @+ A8kc/ϛb_P7GpA%#Dmz{0 m @p @_@8q8aY,!ShW,Pfem 2mqn.P{"@3 gψP @QՌQhkN`}e#P6>"-oqv-kΫ=;8 X@8;3t @BFjE**lTFZʆn|>s-j"<}6G|  0VllWTxNGuf|xCT^^fU6?#ukBNjZ@818 @tg g EtǏP6*)ŋwlsݷEb\ayT6y{QIU"@dj'JpLlTwZ#ojsgRoOG0"* :!nQ{TK9&h8B@8{ @/ ]< ވL7Y9)#pcu},`3ҴnFn=B:^84eb? йp)0 @*llȌl__Pnb_;F8{H(K]isMn2G8-l @HpF8V"gpomygv ~23kl̔FjG78Ln6}̨kFNΞ @c"dD :?h{ R_ٸf4ոvNnlܢb5+l#@' D@O'@*pAy VzMlF{j(O3w΅ҢmGT6}avMW69F"@g3UJEh,HΣY|sW,6{5hf6~c"F>#DmEd9+ۜ&@g{3BLEh*P8mB+*zFGV\7=+B˸F">mo5&Xw91^hr $} @@=l='"@4&ptxh/^dۄCC9Ў4*X#(^ڢGkc 8[$1 @`ALA @c8*<siG _뜡[;gr^QeXUC5<_ʪzy5ݢ!-mhA@8] @v $PG 3պ"@6!#bTF8 esӨF>W%wchrFZζk @m#| Ltᯣb_s;<6VF`yժG%kTx"poXF8k#@- g[ĵk @@puш:8B_ٸ&>*e#=G(bq{-B&77FZζk @k-MH`ϻӍ?W6B٨01tSӝWkYn5]d{ @`@M @P9;y,lp_kB_ڧ*ϧOSs$hgG*~r蹀pdx @ӳQZk+?q~c+dN="};h\+{׶m` 0h젧  @! g8k=sWTڪf'y8"XmM>ǸF[Gq[\3a0l @L3A;  @ κ0nA ."#Qvr Qd@zq kks#@&. pGM m`23ZT;ʫC&qFhT5Daڞ<ɪfwSpv4SD @.< i3@E8wKbJ6snm~MU &|Q?lJ~ @@mlm*$@4#0{Pujş&B68e쐶9#05MvwmkKv g]  @3 ><:cTZk}z4\iu~6+B8xoqݳ5r7lS[r02T@8) @Slx4:9GhTYk]=$5%wEacޢalX_\ 7U/Bα @$ uI @,0><\qᯡsMO\W6n CxK}E܏łZQq&b\[M> @@Y@8 @Y`0љ]&{|V(ZP6ZWD斾lnGrQYxkj\CNnʝ0 е@ãtX_Wv%+B_{- ezk~e#mk&eo кpub @ 6<2Q g8B{6xhgTaEkS1n;i/ ;C @gٞMȹfE߲~#"0ŨЌS9+9B߸Wyolҋ+BfyƾExt[ag-!bQ;yi> @lٳQ; 0uOgՂξ1 p>cɩO+)#tQ9B@ҹy0[ܬ-\7lSQ @ g{6!C[Y@l۷fT,޻U->~ꜟ9eGhs ő&&d @`! u) @(,$p 3wtW%={[o}/Le 8E{ePy/4ah ЪpU^;'@x{#LMlyдhQ@8"] @) =:<拾уz -^Fj|f~~t8u/uƂ/^4XTIG gD @(P~ܷfq6VOﯨJ٨0s DFymX,kzMBI[5}GN@cx4hpTx%]o/_Vi[tlEyp1{({t[x!)7}?~\o؛*p[ @G立.tKJJ[V;_NzZs]|5Sithz=-\kxk54=Ez2_>̛jqo=M:w.=Pk\OeO+e8zv}͟_RT6o58u䓬ȳg  @gv  0nGo*@ #۷`.R1:W1BEP6ki>`Wg~$[ 髋Iz"Hx2Em/ܷ^΂hw_&U9g,vt뎨:oSz\4" mN @rl{wr/(q濙X|%E>+6|*ʹILb[.NZζ l @`* 5kSPxcۨˁJw=d]>'Z'%<- zkH\"]y` Ys@klGmlD_IMW{W￟~K_J|3v>q.m_^'?/_? ezO49W\M M3Ǩö ?h\@88 @i E=aub5j^QkUl3vv-okK9)'Bٖvm_y=Wmv*Ko?UͯAs|D@d9}g*7 )EE P@8;I3d Gvãgkqe+̫\kTUuz` bn[¾lC =4:'f[7FWO?Ao}k0ּ'lUu{6֠)UGulTF lukl0"[Q w5тif_m}_ C@8 @h3_^?9[2ٽZ*wk+4DT߿1{zQ16 0`'  @@R}fU :\k۩4y}ev8[2?'[2LoI -=h?w/4^kF. >@ᑰshgg#4jl*j&mF 1F+OnЮǻE{+xΠ' pp(6O"@MG]߿Pxox䭘W5|c;}eR]}q_ݻ7eB۝W~I3WrMTƋ&Q}D̙ 8I@8{' @`evg ggU ϱ!}e~啿3[/HWH;˃ޏ?>}QDGb @l#vB!0g g=W6BٿJhcmzEuj,Tۀm=³gYlSռ= % |;[ Кppe쎭ŅkJ5^*7GJ6\ 5.7E5z=u8㛛S @W^M @ TGP@9ln-_۾ԹWdz{gq.f=s_u+|YT6{T"'@Y Ј@9<@FPnR+lή_Vm&;tҚ|da^ &euE&*]wO?.jwF6Nt% J~\ǭr<[#VyxR03k[?·۷-c+&כTH,DmvM+y @pф@Eyz׶S+_WLs̆\MUGD4S&E&:spv @GǜvE{׾p6~vW6E?ϡnEJ{E_x-z>xp^P6pvē @9G'd3#t=2/~1}2;CAnQǃ.\E)|u=]{yw# gfզ}e_\~.K\8s[}t.V[c{4`'ہ_>SvhQ O %@g2QI.0pjy ~uZBfkX+M n}3pv -0²+;{yDcxj=TYp}ȭW\o1Gʈ6=ڏ0F& $;E paGi|y3(DEb׳0vU<;,L2|:l ^k>s#Z5|X"䋞{{{ܩ=b#vяF @lٳQ;£}֯WT*nձyq_5Il:x;T>{=zF;6+7+;"U9+C)[,ujx1"LD@8;v @mGd8o^:ZDm1-[)[#=)l:EyBDv[[B_am ƠNdpv7\ד'ްqŵsjc| pfU|u[U?꯯`) e!miV7QloUli+5_Quk:FO!MpZy^TFծj>Bx")pvBT  @@ t3 -3v8آr6+K6mN@}p8RT}jͅC^>UT8CMǼ%^8{Ϋn~u)E8{|,vʖ~x^< R@8;i3h ?!⢸W[ю`-XJJ;/ރ<=}UVu -O ӄgjӋ/nHVƵ6 0A') @6zqyZv}8!^qC r }{ŏ6XrQ @Y Јpdo8;ڱQ,!ԑ[WTFud| Vx#xbu}jSƩj=#@=` Ah a.3'*O{TF"P+c#jY ן__NϦ/u࢝E\3FEY @`pB4"IxO[ #B<Ѻ ·/k@~NQ9X;V6 0q/O8kxԠwliW6MYʱW`8*wWE u}.EQlqEpv'@M %SBոbHY Ј@(7 @⋯E(>_R6rW$+Ç덙Ofu?/ۏfs:<S+o[_@8{~sG$@E~}0X(n[gQ?c[ =}e/忙~/_7io?~Wp6OYV5{y-nvO* =+ @ 4 Uk9xK-m+Po/L򧿕үW*e'Ү_E_AWT"ql8 @5 hD@8;`0}-o_m }Qmg3  @pK EUz}emCq޿k){[P6κoBqҫ{  @#D@  ʏ9(<:B/=-Ba |ċ P>AO @gqW 09]5ľvYR6*fK/W[\Qu;A=O#@-g[@K 0EMQu:1k9o-_Vx#/eՏ`7c pp`2O @GcV{۱ro(}ew9`裝XcZmC➉:sG;c<&/ %4# <DonR}; QmUߧT6#^ @`:'@ ⺪Qqo 9B6~Wӫn,"v= @`ٱά"@g ?6!}4 #jཋ?j\<%U @'y2 GMG>{Q-{d(r_s_ϩ9w7?ş8X㈪XLF$ =ϓ  @(B[g}_|+k!=Z;3c1eA?ggpE}.^ql3k{(D) mS׾  @G£&£"d֗⋍TVmQQ+R`_&k+d|ACS ЈpF;!@G£&£g#.NJ8YZQljY[l]poۏhUF4" mN @Exl|ѻgʾnu5 T?Sk~r]Yha#@6FiG @`GOBOXk~1W>}=}WFO97W/ W _?~1ν7,<^3Ùo~[s.~pxe9n @g[aS 0=ݍ.6ik͆V£:<|B-@T-[꡹A,بY9ת{k}l9L.å*y-epߋ.#+ "}lGMrn3'_Q1~׫' @<!JxJ8-*WY鮐:X*[bZ׳"=vqzvxãlR=Zpv}H̾O>0:hmm @>ώ @ nk%V%]Tf- 6^EƊUnmf !_/>6ٹ5l+-sX;)p, *wOvBd[U[ F ;ŏRwwa @q g5Άt&ZxX̪N`rcqU`b{bSusAc*v\-jTSs1>1UysXz!_n{Ζο -QT:nl {fVٸ7'tā  @SmJZh5<*-UMl᫼7cZ=g Uw/jT\ۅ v`1w# -9^-6YzF >lOxG4V:mqgj1WF F[{4{G菀p?sa$ @`Gut׻ ?8<:.裔|3 {/9m׾{b[fY|E+hi`#@& = @q L6<:$$!cbe_=w['{'}} A[!AW{o O& یdãCŸ}AҾr<{#BSz>l(d}ľ><%?c  @  fYNϟ?_~TnmL.g_JwJo{kxU~War pvS@x$<:&mb!cR6*fpD=T @Ú/%@ Z v]F_TbF# eSwڸn]y?[ ]@8;v~ @L#QQ\W[,Z,ł_}t+ø_M_>\JwsQ;* 0κ @FG£ãa\F(Ẻ,`r5}淾]F  ppx;$@ #׍ 7@:WTW*U괩RLRRrH4>44i("Mvv I93{VB >ߜ̻ oVsGW/hoޔʟ|\ѣᗧO|S*G6K(]⩸& Bhh,ezz}yվ=>/9u ߻+fwo.&[&@P.<\ XHy4GyٖGc1Ç31bfc /#_'|m?+CA9nOk @( p!x/g|=ȗ|͑1W>y2py9#@>rrFP)&G !  @wc @ו>`W]K~Fz @e (guVryq_p0 _J9|%ׅ @@GَV @@R@yt2DitH9+3e/JjM 0r]rH۟U)g{ @`wN @|-!| @Ylt @ @ (gm @ @ PfM'@ @ @r6 @ @Ylt @ @ (gm @ @ PfM'@ @ @r6 @ @Ylt @ @ (gm @ @ PfM'@ @ @r6 @ @Ylt @ @ (gm @ @ PfM'@ @ @r6 @ @Ylt @ vǘ.IDAT@ (gm @ @ PfM'@ @ @r6 @ @Ylt @ @ (gm @ @ PfM'@ @ @r6 @ @Ylt @ @ (gm @ @ PfM'@ @ @r6 @ @Ylt @ @ (gm @ @ PfM'@ @ @r6 @ @[l͇Ylt @ @ (gm @ @ PfM'@ @ @r6 @ @Ylt @ @ (gm @ @ PfM'@ @ @r6 @ @Ylt @ @ (gm @ @ PfM'@ @ @r6 @ @Ylt @ @ (gm @ @ PfM'@ @ @r6 @ @Ylt @ @ k`kIENDB`WIv w x y z { | } ~          VImageConfigAll.png͈JPNG  IHDR&[/sRGBgAMA a cHRMz&u0`:pQ<IDATx^$aaZ#1b+ H\/xG h\xE5=3&^HT/NA!cp5W\İ}_HF4c _֤į^W\;N9u=UJ6:E @1` @c yp&@ @*.  @[@0 @+& @b2~ @O @L5 @ `) @} @L? @_@0Ԁ @@I @ & @H^@0I@ @`|d>P @ &ɟ @/ j@ @ y$S @@  @$/ $ @ 0`2~ @O @L5 @ `) @} @L? @_@0Ԁ @@I @ & @H^@0I@ @`|d>P @ &ɟ @/ j@ @ y$S @@  @$/ $ @ 0`2~ @O @L5 @ `) @} @L? @_@0Ԁ @@I @ & @H^`o0ypy5>. cyu"pAe 1Ã\?'q~A*G8J@09m.Ƙ &'} }xB JM\WERVǘíVB &٤bJg"@+ YLj ƳLA @z &˕) nBYL +3ʼnYm.겜$puyQ{ٞUqپfeYγCVDTOSL4];Tz?tR}غ} γl6ϯw3~=nz: @rt`rHVh_  E9 7fJ qWn"].10@ &,p =& &BI !67>9'ڑ١_\}OY>:tJzHK`+_R7ʿ&3*m,_sqⷩVJ9'U+޼^9EKIiuVoLF&V<+a9 m/b {6o(Y%@tLjƼ"^=w~S}ժGUaeQ|iգU]7/}~y}Eٮޞ WY0 Wu*N*6L,_.I}RV88jN.Ca2Ҹ;>pF7D @ L'W/MٝX,w[r.=[Ɗ]Rz4p߫{ \!tB@ MϭL}ت}ϳՕ:R{ib?lʞk3-]_qLݛc &yXwo9%hM}<9ߐ,K02t/z YKfk#˷,VIV\wj@;hǤ`RolbrS{ZgndF:؇ת'+o)j; P-m0iyJdZd숺,VD _?Ӛ Ь{ⲗVL֗Vwʩ?+4?O#>lܾVى<_g|rgK[`RG$#^p`ߵUyDp:vo}m^l߯bm*/W*|.,?vVVT=.v'V%VεR-ĽvdDCB]yvj0U#~[T; @` ɼ>wH ٪uX!X4gqI%J[(N 1*]`.\ZY &5V^!{)Ms܇TdZ҇GX}uLjΣcg?$@BhLBzusIWR| @XN{.Im^6)LD܇1* @`lOj,4AmBU@0Lj;0}8  @ &ɟ @/ j@ @ y$S @@  @$/ $ @ 0`2~ @O @L5 @ `) @} @L? @_@0Ԁ @@I @ & @H^@0I@ @`|d>P @ &ɟ @/ j@ @ y$S @@  @$/ $ @ 0`2~ @O @L5 @ `)̈m͉ @̓Ƀ>~g W響}+[vSo+ϜۼzjXy=g*Xn;P]{"P, @6A\~NS?_?x_ШzxYq#/C @ +&{4)狔ɨxo) ئ]4)c2Q\Ҷx>"D1T @`\r/*Xڽ|Ra{*+,`P|V!̴z*W^M>uрOpt @ 4dj9 @) &(OZ^JtRj+ @@zVLs-&@ `\ @\  @' %*D @ =$>b @ &u  @HO@0Iϵ @@pIp]B @Ls-&@ `\ @\  @' %*D @ =$>b @ &u  @HO@0Iϵ @@pIp]B @Ls-&@ `\ @\  @' %*D @ =$>b @ &u  @HO@0Iϵ @@pIp]B @Ls-&@ `\ @\  @' %*D @ =$>b @ &u  @HO@0Iϵ @@pIp]B з^z)u_^}վ|# 8= @ }s#<۳z(;;;?om-{ߞ}_LCC  `Ro "gdF[[( @`XdXoG#@K7goxUXoYh| @00ΎB# gZ%z=G @ =$>b$#_7L;R| @@IƎ@#p}۷}ѡd{~I\  ?V]0uuF @`LdL}&@*ﭞ &@`L @I s{>IiBLB u!@ &=XgRT & }?'$4! &! @@gW]\ʕ0c~#/W@0W 0K/=C'߿?R+& @ )_=L~o-ٟ")7%@XXK +'}]+{z @; @`??}˷|K땓_~hbN_ $| ˃Fӛ[5jXL >;;[km@otG/~Ih$BLB u!@^_x,}ew '@zA 7ǻ=pL!@}Y$q; &NHV@0I5;E @`dgG!@@m @ [nu?=+A**A@IHU@0I絛zY  @R\N # jB &;&NHV@0I5;E @`dgG!@@m @`$UT@0TNLN7TLTD' De*L w @~BppBM @``d`p#@A &v `` # (h" 4Q LR@0dj &vj @J @@WIW!@L `24/ 8C `N_  , p# 8= @ Y$ٮpLU"@aaM&J!@I &V"@ R$ҎSm8]@09P J@0JR9 `]0L&ܹF;{{ߋLU @^Moz;o_ 0`2 @H/B~0[HpXX &NHN _!vZꫯWKgJrLzC] @`*UOrl!@jęAI WK ߝKIYh,BLB u!@>Oduw.pT &N HJčI K@`I`: Пݻww]p#|J&@!䐐  @`2VKVt#d[CL@0T8ZR,Սۋ&ٗhZjV%@`BɄ:SS @Z_[  p`r2 @ tR6_noe[. nXW^˸r#1j!@qqn"@HY-)6͍tj `}j Z*Ӎ/ # ( 0%*~sHLr &@@_GyƺF @``!@I |򕎮ߕr P- 83 @`r}Fɝ*D@@I@* Ѝ@׫%ZxiR `w=nw @W @H}F:a `2.@#jJҍSZJpp֎D= y{L `\k0)_buڵ,_5kՙ!A@0 ԁNrdU1y2 `hǨ4zdU377#[ @`rH +nPA"L"($@jVKq# &*F{nwkdLs"cer@@0Q 0@%~sQ `2$'kڝ˿ݧY}z @ J$nSih.0\0i^'[ @@Y@0qN @w 0d"ݵDɂn͊ P' 87 `C/# l eؕLV>,pmLOL\@0xkL&ґAus1&1: @ ݽ2J} &} +F-+' @ T$ԞQ/H@0R1U@0W 0`2~ &lAQ &Qw `LWk(RxOO@  `~!$`r  0`2 @hhLI , @@I' ZL>8kk @ $RS8JV!?; @@IƎ@ &;8 & lF &z `Vk-(/&~M&@@I pٞ߯.Ŏ Я`ү  @`td.P4L لbLb=u'@ $R$* $M@dId V{L^j  @` d h!@ $_=E! &!: @@I"@@oIo &@00A- _@0q @>7k&V#@@I} H~!j @`xdxsG$@AAG &GٍbLb)$@ m$z$ $ɚH t& @! 0`2 @ɐڎEccC &u ``k2Ls-&@ 6$S_8B>#  !  0e0yrz8< & H@@0I5;P  @`D6S@0S߱  @` Gf}9 Lڊٞ"-+' @ D$^Q'X@0Tq\@0T `^g$ $ɚH@I DݳVd{ @G#<+h# Ѳ-D* DqM@BIBHW@0IﵜXXzJ=  @]c ؕLU.$pLT/U!@`\ @:Y \@0U&MlC11(/tL!@6I- @@wf^~iTLݿZGsĉ@{H @DE @WW^ @@IL ˳61y)j"L35&@W`"@zD} @TE @SSN @@IV&H@s61y!j"L35&@^n^\`я[W<* ʫp /pue4x啻`zFt} @OO]e @`d7 &TdLp%@``j`2-$0`2v8>:LWV7O˥\: Ѕ`҅2 `"X1 h@ T6$@@C<=wn?3{Yn?I.rnaL\WK1 &1 @B``rdzǟ 3͞{^`0=sLv_~q&7 L#@@k!ɽ}enξz[6aj٥gyL:t. tN@+0t07_}yT~3mVS|]hL+g7+t7;~]:`(ͭ;@ I $%0x0Y:g[O/<\y)cDlO}o,.'V~)ס%NF4((J&LOɪrդ2T=&; sC}_̃Wۏ]0y`ߘU2 ę@ LN{ P7o(W?1L&F9LU"@)IuPLN )Ҿ4L(ن &1+"L"zPU &vj @N@0&_;r߇&^5L з`ҷ  0`RLէLG A$Nd- &}&~:!&!: @Cr0{nC-ś;˸GٺM0p*JĉA ۷7nL4`eS@R"$K`dv%@@IB0_Ldd""L",U%@@D0irF09$uLUFL.NA Ee F@0ie[D e08.}u1qj󳫋=/b1ՌWYxzu[V7Y6 ?$>RCSL֣C@]y!CEga$zge_l%#w hZ#nIL! Lk.IO#EvU'W$^,ţjge*[x},W{?k˫ٱ .ev}`(S0T@I( tLfuPX*Iʱ^Xe֫-˰70P,߾VinVd=%YW~-`'3Kʗ~WMXԦ,ĭj񜯂I<}" L'KnI6s/A10+Ւ CU{NS9"SZY߻Rg:Zڪsa5)R0՟@|I|}+u0W9%W..+.`0WZv?}x.;2L^L:֮,+&F&NLN3dR\+_YY_:vҥ\x:|eqoɲ{M*VL旲\UL jD@TITݥ8,y0YN΋O%}gʛ 7oMKٴnyU0PSn+?&vւJ C啝. Tu @dD}a`;#6*C &qZ`2s`s倀`!@`hdhq#@@ &Z/[<)6[@0 Ԏ:2$Ѳ-]&](* &I`҅2h# Ѳ-"L.NS Ee F@0ie[D ^l=9nq@ILZP0~^|`b߫߹^<ָL&6qL"@U~G_fr߫`Bno͋~ RL$@887{ @ X>p &6ICZ$# $J@*I7ó,GVT!@I}f8J@0&o`r &*&ɡI^b2puP ӁLdbZs$" $њI@:I}07\qr+7-%`IG& &$$&&Ǭ*Lyr5a#@//Y @`$D09&@ &# X%@`- 8 01D0L&65@"I"# &I:]K LI@0Roj fI}0oP=&n~~A@`I`:8U@0&LJdSG 8U@09UL@0L\ؠT &lDxD0g)@ &f'៹ϤpYK&F9"L"4U&@>>|k?&_Lo&$ B.ĥ\]$e 0`2 @gD0Lzd'@V @`<Y0{]R# # 8) 01>W7_`"LlkO  # &.@@I# &bLb5u&@`reX.m> c &c @c+&+wqT9f5"}h- &*'3{և'{YVvv쿞 &${uC 77'~읳cuN0 {\zY HJ `27>}b&< oq= ?4Yqtt0YΎ[ I>LzXA &AvJ @xԃODY,onVL~ ?Ggbr' &*LҪjEadO/ow]{gY2 u0β_\TtkL?,kz^ցK6mY9xUeWn~ee꛿nd&&v0)Mԋ+ U{{CNߋ``ӟzޑ})C,bͿFKˊafUf!Ymsudb#VsX &LL `Ro]*/cu|Mj~Y|UUi|e[z @C &C` @D&UK@t9|2^ΥJJ>dϭ'?B0\ZdkRڿ:VjS\57":KU  D``uRՍ{.jnT4^q^7/&S|u0_„8nh֓z݊Ia`"L"4U&@>OѨo?ch߭Ka`wՃ67:-r%fXb0Xyo~RHp̡V.x @`D;VHW``uU/uzݛLXP/O/du)沫Lrj}'}z]0Iwpk9 &`#@ =I>4ymmɀu>tڡHD@0I5t!۸=-%`jϨL+H#L@0RAC@0 Y\V[@0 X1bbŤA8Lav ' &p͑N@0RIB@0L J R@0i fs. &ITL`"&ԚC $LL$$ L73D0L `c3&`-{M  F@V[@0 X1brL`L:#@`Қ[@0LǨ P- 83 01D0L&65@"I"# &I:]K LI@0Roj f`"x+ @ F$^SgL[1 &1: @`f{3}o_}g'sOB=XЊO<}GrO=&էޜ\?31*[LUg&&p(L-sLV}\0I@IP@0ه)4=R#@++I @ D0TLPTm6Z%@@`i*t &mlKT0BQLhٖ&I`҅2h# Ѳ-"L.NS Ee F@0ie[D &]I @`F˶@@0L8M.A@m  `"tq &](*6I- @ D04LPTm6Z%@@`i*t &mlKT0BQLhٖ&I`҅2h# Ѳ-"L.NS Ee F@0ie[D &]I @`F˶@@0L8M.A@m  `"tq &](*6I- @ D04LPTm6Z%@@`i*t &mlKT0BQLhٖ&I`҅2h# Ѳ-"L.NS Ee F@0ie[D &]I @`F˶@@0L8M.A@m  @HW^nݺ /YβwS}F(g`2 HZ@0I5) L{7n-?yAiͷ?ٝ;wF9MQ@IݯLQ `ĝ'߇\Hu[)Rm"@R@0qb @`bID_0i~[1ineKLqT L.NF Ee F@0ie[D &]I @`F˶@@0L8M.A@m  `"tq &](*6I- @ D04LPTm6Z%@@`i*t &mlKb &O]){A!T\=G6?{b;ٛΟS %o\|{1y*{T>D0T(D0b &|SMG ?{Opp(,$iVG C#0ƔZ 0`2 @`0X:H1'G~S+]X-7FV{nBKa?)9TZ@0 {TR&jtW`rsy9W2r9tX7 &{ `oߩ9* &y)t+!Փٿ.Z1Y]U\w})#&* $LJ/*>.r0 1MV!^.wr;2L&ݽG@)Cj^#゛[ْnnB`(t &mlKT0BQLhٖ&I`҅2h# Ѳ-"L.NS Ee F@0ie[D &]I @`F˶@@0L8M.A@m  `"tq &](*6I- @ D04LPTm6Z%@@`i*t &mlKB &o~כz[`,/#:Ǿ=s(g`2 HZ@0I5) L^y֭[|_ZwS}F(`2 HZ@0I5) L&Yv+T#$P&tf `#A0i*e;LT &eK}_\}ԕ/2U@BIB!P&gBviU?8; 7O-y}Ïf[Lci% &;0(2~啻`zsk❺͡ &W L `+y-&{# &v* @`@L~eJ} >ᏯWL~꧞b}O^7f]2xᅿ&WW{~"ʝ;?7p& KI9&>ht7h<*$$ $ٚJ@dId p`r}  Ч`ҧ  @ 0$Q'$$ $ٚJ@dId p`r}  Ч`ҧ  @ 0$Q'$$ $ٚJ@dId p`r}  Ч`ҧ  @ 0$Q'$$ $ٚJ@dId p`r}  Ч`ҧ  @ 0$Q'$$ $ٚJ@dId p`r}  Ч`ҧ  @ 0$Q'$$ $ٚJ@dId p`r}  Ч`ҧ  @ 0$Q'$$ $ٚJ@dId p`r}  Ч`ҧ  @ 0$Q'$$ $ٚJ@dId p`r}  Ч`ҧ  @ 0$Q'$$ $ٚJ@dId p`r}  Ч`ҧ  @ 0$Q'$$ $ٚJ@dId p`r}  Ч`ҧ  @ 0$Q'$$ $ٚJ@dId p`r}  Ч`ҧ  @ 0$Q'$$ $ٚJ@dId p`r}  Ч`ҧ  @ 0$Q'$$ $ٚJ@dId p`r}  Ч`ҧ  @ 0$Q'$$ $ٚJ@dId p`r}  Ч`ҧ  @ 0$Q'$$ $ٚJ@dId p`r}  Ч`ҧ  @ 0$Q'$$ $ٚJ@dId p`r}  Ч`ҧ  @ 0$Q'$$ $ٚJ@dId p`r}  Ч`ҧ  @ 0$Q'$$ $ٚJ@dId p`r}  Ч`ҧ  @ 0$Q'$$ $ٚJ@dId p`r}  Ч`ҧ  @ 0$Q'$$ $ٚJ@dId p`r}  Ч`ҧ  @ 0M0y;{g^x!{ @ =$>b$, &׮=oϞ|~w&N00A- @`M0GndgggΝ;A @^@0qv @@B`ruC` h*L"@^6$ne?/ j@@"oy_u ]ٖ;>ѷfꗐ >Ȼf PLH ݻwrwL~Wofdz_|Q'1qƍC@HIH.LZ@0?g?Y$PdoG``!@@Ix }bd7 !`A'"LƟWLD0VB@0BQh ? LCaХ\ LlB`D;VO`r=q;{칻Od/?;dcI)Ix]jD`(d(i!@ y,@<330ava2{N-&ɿ `p+}*jO͞{|Q5-eOK?+}|粻ue__Jm[O0L5% L?z &~񿋗{mSťbyYh'kk RWS-{]LIdG. ML, xz &Z^LַE֪D]YS\(Z?bWvڰ\CN9wBT:c$"x$`nk9 LBy`FͥW}/%tLjq͍Z6'K6u VmٷzSk]U֔'&{#@`˦8E`2BHY\&U'ro[Kp)֍K*oj)cd?}Vl]Ug:7~D09e ۗ~~}N)޽| ݞoybM+">5k\u]}gpc|M{Lv\wNY]0jry$`nk9 L~޾˳^^VL8oLG $P- ?)LCAR0' 8? 0@dՎC& &@a8B@09.8F@0R,c]C`4Q+@@0R,IoVH`$d$x%@ =dI`2~&i1IS) @Dr0yG|{8k_{~t>wfX\u D, DyN@\`OV} -pLw 낉| @!$xd`p#`pLBO$^(A0 GԇxxL@bI. Ih>L @ $NLB$^Pa&aZ Evvq5Y6ϭ(<>ۖRb'0]d}e&0`2C^gf|}90gI`(LFawPA &AvJ 0E,_bXy0.gAdh2~3dy6 &mlO`tVL`$_4)e{k[ WgGZ}@`\ @@S&2"˴V#됲X%J~W`2Љa;H ( P-{0 ;7c˾.,I1+h`, @s LœJ" 2[)]U|VFjO@'1E`+&#;$i LV{V}Vzp1o/9ʭLX1q @```T7B{dɑpv#0A+&TM"@ L$~LBbzD}' g$& I C $~P LBd$^LB!`F? &!t`B/&C@0 Ԃ:Y0 zA}! jA@cg?c~vmDMйc 2*>B@0T)LߓO>9`Ť)b\ 1/ro 1<0:A6] 0`2wj0C;}oCeV!>lM ̓Ya/Wwkbx:~YpOK]{ʫ VEJ+롻ce55o4G}' H@0iĴhO0%w9c{֊}Br5dO05~uy87q=muR(`0)ֳP&؆۾r7/Vl+2-2DM_en7w쓟F?㿜?ٿ4=:CU`Ҳ+'R&/~`RL*们_lj@QNI= $UC+${BWΡ՚ʾhr:n/*6 &{0:Du`Bϧ[!T(:&9xIqed2q=5=6Ҕo]gtq+[~־M{E{P>gel_eֲ-kbA\ &t* @ $$L`R|TKV,.%,]uV)Utj⓱=AA;-F &}Nv`w?;S*>/>(5Il' (`BW &M{A0i*5FbB7E0  `B &M{A0i*5h;S0T&oU0i IS m'DۙI]G@0]09]09^LPwLD,J0~.}CkVO:>i|M=>5lT=9$.`&J0~KLӿ N\/|Gk>/noC &Cj;& >Lo2׳ xфz[[  Ё`"J%&)b$d$x%@@`"ׯgݛ߾}7qцy+&?+p &'ٕ) &`Y0ҧOͬ8?u{akZR~ LqU*&+ &Id;<x-?_;I8}&B@0LȂI,+Z-9RLD0}P09Lzr @``"& &17wtAtv$@@`"&iiuI'@D0L&9&tj @ D0LXޯ3.$R[. &`2 LR@0djLD0F) &) @D0L &u{]" %@`"&:TpBbjéՀS0id&`"txD;iĉԆ*x>ٝ &`c0.βEvjjyyxbʃ|m/.Ηeq]>8~_ٱ/./~[un^=uXԵ`TZƫz';mv_n^7}7`ҍR ԃ'~읳_C/gQ& Ox_og/|GagYo|2ėumO_5Pׯgݛ߾}7qwv 2)'痳}>'@Ror<̬&cw_:f`@bD&应Z<ˠyjzBh({_}{ZՌ͹QէGZ`r$ Iޙ=wfo/>{g~pP8<'p>X8LL[Ir+1S^lIa{U{Qc<Ԇ. #FT&L^b% 'y]OİdSv+(I]0)^_r(N+.e:8Q^+^ZtuQ,vŤr_e}gݰmV;h/T\W|nwTm%)f,0`OW L^YYo_TjBQ &/}j3a[8yo|({zyIjͼ]5\Ew볪k+-I +&{W<|kYI#V)Ƕb҇a#L@ Rn0ٞ\,/g*[bpKV,%\\{L>,.[r,P{2pT^U|\֪Ӟw|)`RL77a{Lj&c,XEMQ՚u-ecl>?tɞ.(7_rxˇ[5hC{hn~g1:(t"0`RD +U+;¾I}iBgc(;/ӏcV7oVV᣸JQaVDfc_w^9`[!>1j]OZ?mkg^T {}3u7/SJ#m]v~xrr7ls[Kj7\Vngm(mw~qRvc18.ALv,W*CFy_WGIU[7VTVuw6ʕﻹ/СK++) 'zY1Z1I 䦖.vry0{qoE˩>`qo0ˬ9~ĥ\{L}p0G &Gى L/4C+ ^`~wB^?}L?ХS.&;r$> * ɗC/>" &ɠo֩`) 0}d`ס$_5_g`RRO{U У@KN`?JjÊݳ`3  05=)?P %{l@IF8fw`20 @ vd`_aLru=> El01Tcɩ~ b; &|da) 1LF-'*@I~/*,Nm`RLd̹Ztyk^[M//SYV^yvY8+{Z//ReQ[o1lky]{`źru0A- `2L0ɟU̒\NS_0 &ˉ&,o??YX8ŀM|mLdwKͮpSDTxmj2۸Un16>u]dv ^vEK?x=UYv?#BaI9%ՒKR]Q0&uAVд6K;f5 & wabi/CC\w/44 @ e`~3P,.&)!Ut~Oq\ܧZҥrYM&_KΪ.+w0DeWm&UV}B[E%yV?&B~IBcL]ţWL+8MWS\1izڶi{x.'+֡M `Pg bL &_ڏC/O %-BI"$TcR^u_eZWL:NaŦ͊ɲ[ʬ,9NޕqjVE.\tc[)~p~& @ `WL~_>3KZd9&'SuT]M;OyBdeJ2fFuQTʰ3ݦ[xǭ=FE]u\{)RCjۡ#LF'@@lIdupld2,ƶ&PP:[S  Ѕ`r܄9Ch`"{~$rR@0RSYH@@0LB uuL$L;& &tj @ D0LvGUv޽{۷f7nV.y.-ն*Ի:M㗑`2~  & &Ia89/M|VܻsU6jC9s_sm=o{ ۖshv  @`) &ԃ_g s͏:We-H]Yԭۖ/;;L AD?6Rc/;/gRʡƻnuo(d"J@0LU${pg}&Ǯ Suo02RcoMҸc*CKCn8I @@B!0؋`}.~Pʮ_ݻwo}ƍ:r?g{V+}ͥ\{L67k!٥\U|ax߫cаibeTsoo 6lߠ]F^Wysvhюu:x 3g q L߿x|;|3Xv0~\E\2\ː%G'mNUz2VS+K*D@0 #T&z) XSLڳE``u| I E@0sHdHmǚ`2՞.$ بOL @@,I,=C &Cj;Tv @''XF- D}*`HGbLb)R@0R۱* Lg= &=*6j$S@@:B5 `KOɐڎ5Ud=]I@0 VQ L%'7h$A'@@h٧>kLH(2?~ꧾ`oPó؄:L:@TB &  &u `w}?I?J%`c3Q &QvJ, x &u `w}?I?J%`c3Q &QvJ, x &u `w}?I?J%`c3Q &QvJ, x &u `w}?I?J%`c3Q &QvJ, x &u `w}?I?J%`c3Q &QvJ, x &u `w}?I?J%`c3Q &QvJ, x &u `rΝ֭[4z׳^?O9՗`2YL'$@`Y[o}A7W>~~:ʮ?y]0du  . @&f2OzHLxQ& &DM @ l?[ &q_%11$~ĂI].$ &lD&vU`r{LU@0jj &]Mm~%-]0 I# *B~'VLtdtGxx;{ @`֊I.z۰1[c S@0wkŤ_߮JL|rla &a 0!ӃS٣goʞxqYգY>__[]Ƀ̣WK.Y??FqRhqY1WI0Q(`$^Sg8)'u\i1o._|b߳,Jjro旂^h]O`iRVAg=. &諽=%DLavd޽{D:wuU*Gyţk5GW?z̃rE# ;, gSy֪̪4\5 %l 5}8L R.F8>f4j2/&q9TU #Cw@ &#9<9F &[@Q Kn\/]rUyS{^N9<7no~_LU^.?+T_UuD.W&L}Mkt) t,8.>5ksޒ;'kzUd~Iqu7}oֽ#śko_4D}:Kfq#*~۷f7n<d;] G`rQ>/G)=Ky!bLb%u$@`IF0׷Ii^^XJ]^(k]MQ-'`xc$@``!@@IA\`үoW[1 aD( DiL@7θ.?ӤIٷ?qgtƭ{\57,*<ztGgHlyo߮Ʊ&q5!!3Oݚwۏ~QE»O|Lq%`RW _0x}4}Zxfg~tpO0vH@` @@پS{̟4 &l=wxYybrOx'1©ϕă }:#W]`2P@0T8F&3F c!˸K~3+^*sWݰ>ĕVLr([XjK{/$/&0`2c @ K &re$+_=Y|~XO&'bReq_*V_|]s{ &b;i bRsrj-I1,VLv/'- *L?$7!'`x?,V5N}yI~ W~#_g7[o<ԫՒld!uVFy.ZҺww$p}uu]~=wٍOgk T6$@i!pyy/G<.xVc2?%IA^ U}3GM`ɔ{WJ `r2='b Vgt%2L!@`IF0i+L-FD/ D߅@@,I Lt+&c'D&vU`fh 4@ L &J[`Ż2LS@0fj &NxUIoND $P / t5bүd &B &ُ-~'VLt $$ $ٚJIWS[+&J[`2Y@0 wԍI &NxUɤ4@I #@@@`[o|g0d0~~:\g+@ʮ_ݻwo}ƍ罕 ``k2 &wnݺHo_={ӑyY} &CA $~RK& p(L@`Қ&+ Lk5zD}BLBu `F? Tnt-sguIH`D6@L~G4ys# ?n߾cA v$T(SiLx*W4og*JV @`W@01ݓ@I} ,7ofÈRVt͐s< pBLB @`w/~~/f=oX?e/uK/M@  Z 0iL׮]߿I X1I5&8硣 `V L$Nt$@`Ҋ Ѕ`"tq)i &O!@@`ʼn * ` &@` @d ^@0 TLZDɩ'@`L&H$R[@0 &I& p@@0q @`2I/ E*H &j-"@TTA @@kD0i}؁ &b $@@x`YF- O$^ 8 8E @`pD0s@L"$@dzg p`r  @`">i@w @ <D0 T#L'@@`iL" 0`" ~9  &w  @`z`2Z8U@09U Z@0LZ4v @`X  `"wVc &c @ AD0Id&N\@0L?H  0=D0YE* *hh- &O; 0yd]O@0L;+Ո{  `"$xk2:]]]>`|${g;k׮e/yWl'@V@0qr @C|#dO>?|qw`|LٯZEHy01q a'/`|M50q$@ Vĩ[O( _LݿZG&N;\RWRݭ & v& ПSJ&`|9L[@0vj 8 pI _Iu&( $L@&N* 0mdu ,`40%%`|%``k2 8gdƗsi 0TwklI'`ԟ _LݿZG&N;\RWRݭ & v& ПSJ&`|9L[@0vj 8 pI _Iu&( $L@&N* 0mdu ,`40%%`|%``k2 8gdƗsi 0TwklI'`ԟ _LݿZG&N;\RWRݭ & v& ПSJ&`|9L[@0vj 8 pI _Iu&( $L@&N* 0mdu ,`40%%`|%``k2 8gdƗsi 0TwklI'`ԟ _LݿZG&N;\RWRݭ & v& ЏK/^x!{9R $*`|%񚝔`Twk,} \v-{ߞ=ٻ>l _u'( $L@?G oxCvΝ~T _vf'% $K@WWW`}J0r NP@0I5~\^TBLB u!_Vn>h]3q:t3{[Jg2ڼ_M߇aDZu# tRvDz{>`<{958W ,3_ͭ/.1 &1:Xĩd೟P !i1/㫏?_tNNB`&N'N}L0Z`2s;v_< &SY"С`"12qL8x2:%@`dI0R`o[5L.Ξ9{<{nMsBvs}.{粻 7[uyvB(Lf=.Ue}ϋ熱3{uW LU"`d<Ĩ <-d 3I0 |bpeI>0q #Uu?7f5cB ci7FچWhIէ`D6&&8n/CI򯾫А,:ՕrUܫ+n@ک8 -nrD}M&Z[+ᢼJO;8`s;qG|$ҎSmC L!bqiVy%_wH9,/w7lO䗋.{wuY2<By#yTsD'V&N3u?_OO;{!PkߒՕ`ҕrLX``_p^|z>U_SpQBR\MYm[g{]O >})LxnDyR*^S^-)Dϡ>L=[' 'jD 8'N{4V7߮=Ս孾jύQ(MJbx)jEsTb4S@zܯRj 4@ &d.f7o]U [fw*ڕ&L~@IP O* {o~߷Y7ʧ_掳I7Ԭ@oB߾ѭ^LJ-+xoG6,0͊b|d wzư:8FAM:XGIG!0e~I:+cLNB>S$sDݎ4[ymL۷ZF3ɁU`b|b|u+PA &b;X&)OLn|7z &ih$ &}LL>+e.ޯFl`Xɞ`yL$ߣL@0id+I &I=D0R`//DށO`r0{nC| b{C#S6yG|\ŀ5.!~:FI'0ٍ7&2MR |mŤzαe-LR}m'P@0ie&N<ƗӅՅ2L'SAMNhh|Eu*^LL٠`4ɑבpv J@0 ;T@I[L٘k|[Z' 878(c0ypy^xjyv`ۯeW\f;]]\o:[dMnyc*8rm?jZr#_8*e\d\G'@lb69*yLz2d|T|]f6ڮ0Zb~ܝ0ESIR/`Rz}>.u4L U!@\d70@jW&J͢l뗳1;`bR.I#:΁&tjY `rhrSz2|4[iY,;_YQx9g`/X19`2Y@0©`8_[$L`r7>B' 888!dL <м3{c_.ģʣ6 KIjO \:W?z}VX<1sMl|*.$R[3qZZ솁bHXlSb^&y +<4U7&!"L3NF:t- t-<eTWحm2l䗟./H}9"!be,?_Y^&՗rm_ʶҊ[x9N1L.g;PcVL2`b̴mll|*.$R[2qjBoVcq^dJRf%\bU ֪N׫1)b(*fkJ+D/#G856#%Umƣ1mH1/[% _jK`^&Nō[~*}zRUAbب"{#|eX[Nzm/]3qj6\{_EL&V+L1shնl|*.$R[2qj|)W/ՁiqjG/}*̬CPe*6]]_;,mUJ_{$DVĩpe|uL>HY?eM_j6l`W-Q8Qyp.Z]U &uƗm<̬j<ƊJO+&@(:_-.:Rݯ9gq;) /jE (&NPk:dݛ˗^~so뿺}:UBX+1o{VLmɻ&C WӿL5퇖Y1j:ΐɐڎE R^'Nѫ[o{"ck@_U,MʵnRMpjTy]NGfdy01f=JIj6l`W-QF8 Go{rCƖu4qj6\_ġ[G@c|5_K@0Ԗ(NLHMXlkl&;CG2 DWeKm "ĩ$mɶ&N͆kИ8z$@0i6lE LHv `rph70{RթlL_ƗL/%016f2fcVLZHd''QmƗe|7`W-QLLLzƗe|7`W-QLLLzƗe|7`W-QLLLzƗe|7`W-QLLLzƗe|7`W-QLLLzƗe|7`W-QLLLzƗe|7`W-QLLLzƗe|7`W-QLLLzƗe|7`W-QLLLzƗe|7`W-QLLLzƗe|7`W-QLLLzƗe|7`W-QLLLzƗe|7`W-QLLLzƗe|7`W-QLLLzƗe|7`W-QLLLzƗe|7`W-QLLLzƗe|7`W-QLLLzƗe|7`W-QLLLzƗe|7`W-QLLLzƗe|7`W-QLLLzƗe|7`W-QLLLzƗe|7`W-QLLLzƗe|7`W-QLLLzƗe|7`W-QLLLzƗe|7`W-QL~wc/~79pv+&{gg7G9C;}N+>]&](*M߿x|;|3XF`RFa|y8/D'$MSl`r\0I6W-ۆ* 3E $Έ*&NIħoU7"l 4@ [7瀉S`b|yoij|zLяZAWr0{nʮ_As^1R/#]_T@@C fĩd%yvʵxW0ڝ7Y3/+ߺ]0Iﵜ@cfvN&N1n̴2a@I@*Bȃ#tv8m彥W+ߨO@0q~ pPeƍ}3x๗Ɨ>[=Fdz}E @L2&@ 0=dz}E @L2&@ 0=dz}E @L2&@ 0=dz}E @L2&@ 0=dz}E @L2&@ 0=dz}E @L2&@ 0=dz}E @L2&@ 0=dz}E @L2&@ 0=dz}E @L2&@vLv͒$ 0=dz}E @L2&@ 0=dz}E @L2&@ 0=dz}E @L2&@ 0=dz}E @L2&@ 0=dz}E @L2&@ 0=dz}E @L2&@ 0=dz}E @L2&@ 0=dz}E @L2&@ 0=dz}E @L2&@ 0=dz}E @L2&@ 0=dz}E @L2&@ 0=dz}E @L2&@ 0=dz}E @L2&@ 0=dz}E @L2&@ 0=dz}E @L2&@ 0=?IENDB`S J          $ RImageConfigLine.png͓GPNG  IHDRjo#7sRGBgAMA a cHRMz&u0`:pQ<IDATx^=}w~w$ Pf֊E0h…`.!4~m1*ixeQhVSdlZ]|m:[u(iMjWI?FfmZqMXLYts?sܙw33!> ̏ysk}W@@@@8?j    'p&@@@@ j    BM" @@@@P@@@@Djf    >   $BPHE0@@@ @@@@ D*         $R@@@@5|@@@H&`    @    @"5T3@@@@B @@@@!@I"   j    BM" @@@@P@@@@Djf    >   $BPHE0@@@ @@@@ D*         $R@@@@5|@@@H&`    @    @"5T3@@@@B @@@@!@I"   j    BM" @@@@P@@@@Djf    >   $BPHE0@@@ @@@@ D*         $R@@@@5|@@@H&`    @    @"5T3@@@@B @@@@!@I"   j    BM" @@@@P@@@@Djf    >   $BPHE0@@@ @@@@ D*         $R@@@@5|@@@H&`    @    @"5T3@@@@B @@@@!@I"   j3#pm`P3k 6:>Chڇ}xKP/OwC yё/`/A}hUGCoֿC Juv}>C00%h3N6Pt0 veam=_?ڇqCRN\HKM+'kB 6|ڇ#sa v(B͡\H j5B͇͜@D5ڇ1_?H'L MI5B 术167]>|d>LYj./v!]|d>F5MJq 57od ￸~}kp1'R# '@!j5s4RvmCf.h\|rjO6oB<&J$' ڃ$@!j5 6|ڇ#sqeƗX̮rBIyϪns!zv'SdWllõk+v]뇔S8z2VfMq%(4-t=Py[J\) %]Ee 55:OŮSX3PC!2؜5&skGJ#h6BKl2p YP-fB P3A!e76=or})aZv(q 5PV0j^FFt=P.z Tkrj3k/ZΗPuB Ps`shʮ}hM>2ksy^Q 5U|ŃdyFz~K&N!j[.ҪZ 5۹}v_q_nr5B f΃Cnm"zCRNcyΔ6Bf_B-BM.sɄ8Yi4WL竀PC!jlm9SٵGwcPo) h.T圩YdDMY+1 1w͔YEI]B PCh7sF>뇔S8f7P鲮<*Mל3]oQފPrU]9,G5B 术167]>|d>3$jjmvE*qֶ]o+,} xg[݉*2hQҖݕe)*<3WϪ5 XG!j5s4RvmCf.h\|rjL jDZVUE!R0Ylk]o/\lGs%'([)E^'j5Cs@DtTvCh9]\jGiL[B}g[Z.BΫ4UbMJuz 5u6! {PC!y|H MD\}hsCʩ} 7Ǚړ#E]nGt=(\5B 术167]>|d>La$LfPC!y|H MD\}hsCʩ}JPC9w\7RB Ps`shʮ}hM>2k#0%`6P2aHB P3A!e76=or})1,gZϚP3JS!@!j5 6|ڇ#sq̬ej]J?CB P3A!e76=or})1VOE&m B PC9d9k MDMe>&ߵ̐ҳP^ j59)!~3kc.~H9Nk&}sBͤW%@!j5 6|ڇ#sa6v( 5׳k oqP&^wEŲ\\=>.^rY j59)!~3kc.~H9YO*dA9?]|B Ps`shʮ}hM>2k'䖣jFln.DkILZW$j59)!~3kc.~H9D'D#0kBMaP*K@A˘B Ps`shʮ}hM>2kThj $Wyo,a:bYUfٍzvYVmCbYU%YiFgyS 5O0r2]d|r3mz\Wq7o[nyv#{z]{Y,#L $;ОdkC !G)G޵/j>k7s_{뾹{?} >K[G}㳖_mv|8û`c}rK),}:TM\|XsPs2ABy#Jeg.T'dN1Ow 5_dzEM'-, HWb):Emiiwq^MQ.TX(ss1@{9X;E[>{ VgL|L-?^lDGZ}2JU%>F0́sPS) /EQfc* 'h]ޓi/DtjVV?HPda9e̮=P3vj,T(+B 5;Q/ )qr;bLrZ6EIm۩!LYD -K O .m!nNO5Eǹ"j#x `%X& Nw}8pi˦߉~,ޓkwy_c=Y)\7K+}rYEiii>bϵeGznSȖMRj uS:Gv}UaJ&ʂ˞qWɞ{?ux-  5bPJi=j*ġ\1$-*/rږy)8@bn3-ObKE1\kо}?mr ;g'7e*W9|[PUbR!&} 5lw=tcsw~cNޗв,]G4]h=D,9GG6zjo#I\򒥭7|v]Г_}<+J۶5u=/FLFOsepT*me!N!3.+ 6 x/wfyIU岧S_ 'N} !{=_+r_ʍQGT %Ԭ~C:g>_XDsmEEa;pwA}F,qP݌vņGFL—%;KufB[IxK7[Bξz1ŗҸfjZ۴?4~7Aq_ $Ygmw!Ga,{뒓/5 )Uߚ>}_ YN$b¹9BMO|gQ7)go+u·ݲ )X09fge,/jvv:ٖ>9h[|y"@FX uۓ r_sDl}ID)[2Ւ<7_T(asݓmw=2걝hCrx7xO{j/.;ڑ/|8PsP-oo}N} >y7nEbV=͹x^eURh.=}Lk3LP_UmkRq®Ob͆dSh۵e[M WL4WMEbݫ.J"Wźqu/vZ'+?|{.J-r\u7pYݲA[>01@{;pVIGxkCuɝ%B3,Y%޼NDNõU<{L ފ-ETi}N"31Ѳmlдm;;bwվW n #]jZ:Vbܫșg7nrdL])FUoq.?M8 HV'^  ?;yCkTN[n0Q^JU%mn$Qudzc3~'CLDc=^JQ0 >#v*N7B*f\wՏVEulo=cd2: S3 7Oq 5EAb;@$֬)FU]T$Ż_ 1X 1 ۋ} scz}_U$Ps n|jLr)C^RTm>N6'\^Ϯ-<ōTK{_ =21PME!j5Teǫυs;x͕m"o`}ڠ}=u 5=T=km(1 '{ PC!Ԥ:M.mT}3#?LcSlB } Ԝj5BMT26M7SK>RTm>6 5‘Ps#j5Tem"o`}ڠ}m3F).O{禔\fRٍȑs=\W9MNeǎkϽYm3/ڵ(ōŕ)lcH~%B P6U MDS>0U8S{섚$E"ĕ*oEQb#bJuR]tݖWB͍u2/ģ ̕FBy_#B P6U MDS>0U{ 5ͻ>]EDŎ-!dT1$;v#\E]WbT҉*m9Xʴ^W6bʎXumvfWekhPC!Ԥ:M.mT}3#?LcT8?"Jf%JT/Kv=E*bW6O+ۯuv 2;˜6ŘP Ei` 5|j5BMT26M7SK>RTm>9G+tؗw&A*ĊmlV ˒ "I7AP#[U^*us65B &mvh)إ}h)a6hلfZS/ʑ6U7M5:MS"HBf)Tu~eg*M] j5Tem"o`}ڠ}m3j5yΘUN}$"jj#o[ԏs95B &mvh)إ}h)a6hل}BMuD&jh"j6[o'dꄚ5B &mvh)إ}h)a6h#f)fPt]\2jᢛPSũ#TîO 5W\Pr Z!j5Tem"o`}ڠ}Ll"5`qF+4oϽVRbb*dqjWfqEvc)T%wA_m]mgĤ%Pɡl#{PC!Ԥ:M.mT}3#?LcrS Di)*5:Bͪ~7)av5u6no˝{j7WW˶B" !"vHhR}O>?[n3'OZ ( DԈI}`}&dJhGJ- =P3T j5cm">C8l9U5 j5gm"Od}䏩٢}lcq 5=t+@PC!jRȦnh>zN1̎ҴPf  j5gm"Od}䏩٢}lJ3j&_ 6f_:9c a=go*}4Ȝ}hskfb Ju@ B~.7|;Ӊ10nlڇ1go*}4Ȝ}t”ل*  I Ͳ!/=bM"bMe>:yᅯϾ>w} 9˙ֳ5ӪOA@ B׾P/?>n*qǟ>K-/}e?_}[VFcןPj֎SXm"ǏYQcTvjj=1#K̵ۮ=w{S{ݹwP޿bc]wݕ}w/oRmϾ|5z2d#ǩl+ٷ|˳ٻuϲ}7|6 {ݚ,qG79&y'_eQ=n=\+4sOk`GH!D[Q}(9@8ߘ9@@D!DַfG?el#/' >{g\y{ 0z/2,3D'@9; @[*^s%"M| &`>pk~$dCW=CKߟԧ6,BdVH@䜨t}3 $ Z_-cEL+ ѥ~x"p=Q4r9m>,&FaG &zeTMLD-y:_}xr:"j&Fdg|45!8@?X#_c2U%DPl a ~cr#No~O@GĿ#_M,ڗ&qYvy9YT vZyE@r 0w 2vG;Q~"@鋤 ~n m1!NY 1fvx,{,+')/G2ΙrY9İf,oGM h}ٴe @@%* P^Pm,WE52bE,\4B5!WcBeSwBq P j*tL&F6"“L@%BMKPNC# T%-.rP81X'f\sk=S^JUpl}Is#?dtiès#}cKXv wv鞈@/>)LX5}ױ"p~yc5!ŁLZ)1+gGwv:5@"?S$X@ Ԝ"0/ DL,A(F$)Do3 ˛b˝,uJ#ߑ1:vv]1x /2& PCP5@`Xefا{g'agvSuHSn3@%0!IO>2M<@ ԜXjUJ!_'#YH#+4*T# @IX|jSJ!ޗV eOs] zEx#89ir @:5KBhQ5Bf%^{mNbWwߝeNy@|02> D^furIP3zc>,6N) okf>F$D+-)fzGP3:c@sprN$.S#NIzH ȕvg!8@`5C%@`\5/. K,b$-u 0 3T2m'NW'.:Œ'dh* j8+˥N{FQvv1DBDwNm8#B{4$@e11A?l猱V" DH67y^%/$ga  7Bͼ̥g )߿MT/ Lk@%3,<#Sg,$@G!@,q2>|ED ~G4"wM]M伹l5[dIW=|i7́B ?@a ji#A /@Nm}{<_{w@r {Oc>!Kf N;;βAdG6@N {OZ@ȗwpzN߱WzOF@q @B @a j=çR[Ɨ~;W1f[nɲOgY$1v pfR,#Ӂ fX3{+s=8/Ȼm2D,-~4^=΋ L "B]Ct j KP3,=g]d*]Q&nw5u;I;iߙqy; QyB*\q8;B٫`jWgBOvgM{,{AR\] js>GPs?WoM)VX9H@4__msmŒe D>qPt @!0s;#08BȧH_)#qr_Lr!pGt޲oxC{^|e>R8B{03%@iW F΋Xdk8N؍ϲ]x'SہJPs(9!a5qsՒ@ 2vp ŴGz;"h p B1\ j3sŒ /\ƀ؁'p.vDϴ;rl=t y#-rćM@%@9@BM7^^ne[ % E R;{HI>+ϗʗd1 Q Ԍ jF\yÛ_&e(y|w @ih"Bt } Iӽ@3]3bS$*u ng!(fy$'ϖ/mhFAP3jb$"@Pe(25#;@Fm=4Aѝ!ȗ6nA`5zGL5g?D0vG}r>&ӐeH\l!kye4Z#s"HPs 8!5e/RkZ E`;; ]%߷R8fOgY$1v@/v jNM@`GTxꩧ_)cw'KNCowf,OfʞW5Izç?e/BտZz5UO|-~=҆.su2e=O?//_mxnO}TkMx8#@_+1%@9/DŽGv"U_#?R}M}~f1gߩ|~{9︺ }\߇~Hrt.d9*{/GG߮ys##?e}Χg6,FEdg䡉HK@&@!0w$=`h/W_[DKVdINGn'YpG/}zI?_l6J Q&ę:;~使}[)jwï&}gr  @9uD`5IPBM) LN{dD/8Dd[D}'w'k'?# A푅0Sm~OJwR!wßI,v!t "@9yE`5IB͏WR}&Xl剳{1I0 y ̫ Ԝ*,8P31 :1#% j}/g,EQ| -"umf!<]GwG=XBP[o?ˤ?|}4@`~5s%F5_S 5!sWI >@_'KYӯȳL/.rռ+^6fSW_>-{W^y%Q 0OyֻR#p>S5"vtNvwfR{OB7;;Cci{>/CXK#s+Yvm1579;./0_\yh';@jR 0$ko+w'c$$8agi4.l%Mϲw#<(S8|o "BM&LPd%DHF*'c5Yfgy=>}wVbL2!Śv[w_R>"r&"h"MD8@T jRv!0U$k'~k˥N=/g"MoBMϲ;̲׽^y[,g?T_9EM<9@ jR!!05$kP&:Ů1fpyM6 5vv_9hv螞{.,z&@5 KPWWr=|akS9PdU2j&B>j]lO? 7οED>@5& MPGPgB ~_47 $YPcg'nD`BM0{Y u}n@>j О=rS,weOmPj v}S/0LM\L>2ipʣ߷ߞel=yQ@H&` 3 @Ic=eNMb &dP 5vvm LIyu!|CZD|ޓ+mdev& pbv{( $2E[EBM2Uɐ*٩e;mC`*B͋Ďf<@k^Gl}C]NPs8;W"!5PHD_(-}Q;v7<31 5vv:ӌSj|凄׿j""gZlrj$@i i BMO  /\_BI9+C`lB[Y:f&"gze?5'?]^,,dz,1@5' P"@9K|򩧞ڲPsj IӀ1GU4&">CXl=DY7 7ݖez<9 ̩jR _.u ` ԜZ B5c#PcgyMMyztNZcpv[}_exG=D;Zc C@`CPӫ3ck)? Juc"pnNcqۚPKpC%4ױ@q׽^%T>e!8@`5ZC Q^*?P{j%18Pcg1xtlLAɗNё@^wDt@P3Zb#S"@96cm,us/b=HO袸y8L;; ,Vu~OgngU]KrC`?O]c{oO m ;gb?|R0"VJʯdl}>ϲ_β}bd?~Yv`cgV뿞e;}6̲5=Dٱ$>ov׵o2=x:5өK%A`5S,uzG}ك_͘tvw~Lc"b)0D6#Z!Q5vvj"}Q%ĕY|BieSXY#5mQ-r5C%@`\5+4;E8!GLZi;ȣl)k#[u|L[_(;;S珋iy;|.&)n} osFAP3jb$"@T?fKHxI_[ Cq p1ym;㼈)vv:G}GF6P/.2G>x ;g-ԟLn*5]9#@i/X[pqDߦx__b@;%#)j_t(;;u/WN7s8?'|rOE|4 W{@_5}thGP)!//GX4f_|Oqj %J5T;;qs;S]j#"gzegD8FH߷ܒea2y 5SEe@`L5{k+1=U1q"߁9  w[{U)tڞ#zv=mw䠉\4{ocblяfY|xvj*"B#t88eRL+~L3o鈸~b*Ysmݦb)DPs6!5Ktu\e*$ )Dɏ|9WOm'DTI>-dh* j-#GbS$D { Twf7{I8ERi_,g9U޴ 28wޙe{]}R}=Lfx$G`BMr}Cg’' WRײ?E$c@RL*K~^ɾ{~>"`/ f,<3]{챳;?w{͘$6#OkO?Cbv-" H*Qc}_!)wAZ Դ4 XC-:u>ܦw&K,#i_.#qU=86pxw~AXO6e%Ro~sp,3$@a+2g%03W^e/~gE_~x_I%NZSAQjˋt f)/@I*S?o$#j.}=" BxGHdA*CR @I؀HygK}dTX95qkR/\?5~ tM*?E޴/ѼE,H4ȷQ߃jҪ 0}3jXL4ԧ> K"t3nMmR|gFTM.Ձ@$Hh?%HF$;OYYB L"PKbS,wN86$©0rm ;;}r\"@y h#Zk'W5 : Bi+P#ap$'ٔTfg@ʞ9}IC/,}=ĚGQhwq 0RVG]ײ9=ײmsۧU7[7]ϟ7+oS;5qb9b]Ow+~]G9VM6]OgUm wI;ew~-{k/|ôƘMm;}z\/=:U]\;/Q/~2__Bko#}n>x&^y`T;Ho8?~|}~dv]Yd>g?6J_n"l;f:u$#'0Ɂ$.tר_HAo76i~aNvP_1y?Mu8cWޗ}oZFյSWc=77_/-=ST%E m(vwX?jf?95i~6M|k% \kQc:ly17DJFHmX~nv4T L&c&;PBMS|Mm;cʜ>vDL[__D&כ qd߈zli6zs[mb4/;>35SI= ߙqq-{w8<["7B~Gߺe^5{[%8ㄚ[,QooޑԿuoA2c7挍hGXj*{q#z/7{JoѨ f[Y( BF+6wVu/>9ҡ H;/#-BYv_}jWk{,;gsדmG 5z5%~`]-iqtW^G:m۲;|ӟ޿}_̾O.^*.Ú-8 dVyM{KV]-ʠ9 D??u㫤u~{sBBM"w|dTJ"wCch&eͱU!F+*\E从F\y2_͍_̗HgQi}͖>S̡6l!N`BMYtYKy|.|-,SZE' -vu(uPU p;UjIQW$)><Ё/˴oGzMEi*˥ 'cf\Oi_aV m|d@Ք :ͯ6=??~~;fb~N9PĮ;zpgNZv]|Ɔ|-e6u$٢Pq\mW)&WV}1ѦeͱU!'ĉnbMc&dY.Oݼ],U_erv\^6/g+q`jjBםR($ }UVNiI@ow;uHVj15D`:ds$ n!XuPSdl}E*κ廡|xe2\$ћ?YozHwPwR Udѵ~G)o=@~+B/`o>IOL 5'j|'_y2*|7 'sFMnbwʪdXd7Ҧzܷ@W7ԏ9Gؘ22f3+Y~ +_k9Sl8ܲ6@qddcAF(,TLxN3׮,,7G:M.ެmlġ]ٳgX8tjuuy[hש嬃^x{~lT8"i/S` te}{˃k|?H*yW>vMu8@㓋E_m'_onM4ƍ;ˋ:n R(Q|9SIYlؽʻZ̩^AܿܵtJlm)XXvੱryuR|͙ys)5I4$ tRBM[_{dR5Mi~ 7q(yO/#G-k q߁<7zG$لmQȸv]V03h_|_}}*gZ)W¶pSe<"fkQ&_t̝<2qXRYOEmnb jIUO9ATy@qBr;95_Q5hEE:ܠE_ĤPMu8n7gFtdI6zsshb4%rY5;>3&%\\_0E(M޶{;Yj9:&,2%aUMhx1䄚_""\~b4g5% 1y7aYdI6zs[mb4%rY_}}*gLil,>ff)/wZEmDEb$ZEԴغ|*;rj8X-ګ-JI#\~ \HS5X@-:A}k_;Ow:T^03XyV)Yi2;2&:9_**kg)өsԬl؈0娙=|5!l"}:zReOuڥO"f؄2Ps:D-7k 7:oi Mu8co_o^{7&Fs/;>3F'la7 yZPv o uiKlɽa})%9gVz~)LXTXjUSqc1uu:fkk5r֓WQ6 [.)$lUv"p tߙכ q$_^ۛD:}OAe>yo6Xv^Tlw[]9nNeOb8 )Ա5y eH~.!%!g7~/)vos:ly1_#jf1 5~G4rf> 0aS\5"zhYޔur!f#ȔNU}%j$?כ q_כj, /;>3FQ3*PV?PԁB':ݵؿijQ S,wQK t߼Ɯ^03FuޢF/-}"j&R1~(@ yvM!&[3D¾H{_~PM^۹?uGN7\ ԴpBHE* j%QD$Oq?0i~g㋧|JS6{< 7_onM)O9KO BTjR9FO@خj_m-0i~eԷtkf/t}e|61jy%`S9P3T0P35SI=c_O9@iP֛=`gᶖĨ-k睗KO 5ח6\L.7nnwŲL)]ecݻK21@_O'Aq{4 S>`gOܛ7&FԔKקrf\ MSjj741>@خj_m-0i~KԷtkf/t}e|61jy%`S9cBMYMXh3ۇxo~0@P+;V_<Ϻ)_jqrS{/i9f>H.~Bi_ 1&͓W2 |OÓKכfH??<wPO`wS Sڗ}|K߇jR>)mB;]$Q qj;*&(DtH&\w߬юRKUe_rE-(_]LT("M01y=΃s5_,넚K[_wh.9οִ|\6cPz{ZVP/Sm#j4 9rDn߭sTt[՞Kۈ|=m};~#Դw t:dxwfw\DZ(#{kHN~5+r7.s=uʾ*^>gۿ"aby_Ii>nOw><>ܦG)iVB͵kń% 5Wbl>߁K{Z)pîO<|ҖM\ꄚb㍋E䵩N|;jBMn9^`oxS&+lGԏg'[Hۈ0mٍ+[ qhhk<{އP}e'R6-f,RMHjzz=QN\SJ[`Z\/ۛmɓ"W?s}݆\hмݱr/~>i`3jֻ4rQY{3ڲs-/w"jVk۲*޳,&U ]kXP} &`sW88NY 䯢p koALn;/!gD{<=툔Ilm?z &4"rBo$ދPӾ3r&"`sITu]&~jSbק\!N9b Guކ Cݨs[#4'j,1ZTcھmE@ymkrzBRxl|ˎA;w~Y@,/wifq_Sk?fCcr4uyT^E`\ j,bP/{#4FM_hv扼9\K0di.E|ET4jˏ6ZXz]&{[萈'= 5M~كP/eb5T ;E1}1>?CoFBM7^>U;=f8)]v/-_kՄ_kvI)@'Efnk QoZyP!P \ 5 U[)GD,q7ۜS]'<-q_--VCe9GM}3} 5 㨣&+]ʮDRNdsn,DW[|6S}ɩ<@u*5?ru> 5#𔞗 Rmӛ&jWJ4RAmW}lǮGWUbls $׹AH=qfϢGmwRc~`H2BM•ôytЦcwNey#fzuD#%@9:5D{7޹˞"@}RbX5Ua]:&syHm9mN?a$|&aڼ@Ё^ṮjE9OeOQ_vI 1cV蘼Nٿe|gPNgBTFJPsn.WLݒ Brg$ęmz"yD\H9 4yݻNi#?vכ}}}⧔woYo7]Y|N'_Toq-9,|}K4> 5TE'BQCûeTOo}5bɄ˃-pҀyڻWlKʳzgt_?_.s!jʱXU~"OMwoU\[+>j* _P3wu˖NoՄ V"mWtZ%xu_X_0lY9 joFi+H4{*rn0 5H6;VycvŇ Z乼ۖm5e)#>䃹_F*| 6U^.n#4n;ӛ^*H jvECt tjbL1`#.w}\G?\ Q[D~W;5mt*=-Py62:[YiiU]ocjė?ߓ[m|"7=r|/aG:c6fzuD#%@Ic| $I*\Ж'o[W6 wY7iܳj2a_(tc蚚6cyپ;mܽNYL#o[i)"t,)|},BMeqaSѫ7-+D|:mBH'yM9&Ύ%%`@PSJJNJa O{W_X?Nd; 5&m,Nb{j lGm'Vsd6ׇKB̺M=EiSCcjrˍːަޫ+--i֭偅g|Owgfu5]#"p: 5&ƾ}d=&Cm=@ރP: bŦ~ 1ޯ #jLjkJ)OҔҲZ>mDE)[]TֲquM5뛄Bڙjc( Ԝft!`@PSQ1&o2[QSD,b|UӄL-B'K,mU]nm-%8č}+&2<2"B͡#Ǚˍ"C_Md"ju+םp.@čmn vSaU9*oT]㈨Wtam>wޥG]f]8P3zb jtGE4 t BӼEӻ+_P9$ԍgzn&թ]#`w;i- P3m*_Psz.ۭ|=fjWJ4R&E:$g#p :&z~y ȅu-O1'?P3S Ԍcd蘼NˣK:_Xr_3k"jWJ4R:iwJ7:&|x/#jfq{#^)jwJ@o:&{QL+:_?r=_'ԌWOpn8")$@9{:z]ۿQLK*蘼[F.˵|P3_=N~>+!0N3RY\\[7.~޴~H6C:ٷ,}h#i7{88d ?u}Ru?}Um$~ڇ~c 0_c9w x>L>3Xx_}7r*\xWe;[A o^mK'=I я~t. 6^ Ԍ؍Ix'oxp .F!p,x>9 =wB8,N\o,@`կf1z߽y?c."X p@g/r| _5?4Cs{w"sԄg|GwE7;~8#x#gBxpD*<kU58( "u'?1z~n@ko}{ W@0y4A/mGDՄo.1c#bg÷ȰwK.1qn{%@  ?,y>Y p*і#r."b2\nz"7͛jmJm1А~͛AXTË́GLo̍fn5 pw/OIT #h$IDPCpm# D@.]&GBuTË́_B1٪ƃ!@I"$G䡽1H@1/цtjd5" ձ#~73!乓"8xZ4OPzށ$B c #x"  Bnq*!„("M51@0!KD͜{OfJ, 0 1 b0.Z960?A)@'XQLK5Q3j*@B!b OƲO{>_Q48?fQ3rLja8{  pb[G К@1/M닜@ B;QZ 1!@X]eqDRL&a P"P;v 7A41v p(X<1p$P@?"WR a&qIC׆́f 09N 1Y hgQ@+cG>%Nw+IM fBH\I53t x jʏ&P;mq9*e|B}Eΐ}G(B3S=/nADQ33wO&`  p8{RH,]@xKІ@ID䉁ChSs9TEҼx5sLjx 01cMD&VɊsr!tFOzH\$In,Ec:i#iu(Bbk&;~'^FFP3 c. Ж@|ͷX|!f'X"/ O#dTi" o OdGE|XklB 5_&3tE<4aE;!XEfFU]Ec 3"P;&4fwB,!Dٹ@5|15?kbK^[bQ3ptX @^ÈReQ1a2QL +GCq@.ǖRXF"ou:FC 0XQ5#jf5f!@I.XL@y{<NjG_XBPt@'+O ˜"1!;$HrZ45̇f>u "gD-+b* t@L]G-Ŀ%2O \=@5ER F7cy'O$?O K6|]LKcbQ3SuB`~5s%FFK ;WAb8<ᱵ4'AɀcҜ|fxC"eFDҳ{ BM2U@(o&۵}b'!E(_,naSo 7]D̈́Dbry9"BkU@&빝|AGS9Ey؉Gba(Fy9@ Lf @`"ILC0s;"bך)䥉"Q+5Q'Q3wF%@9@@y{I1eSKu^|EɈnm7ĺbQ%28#B{4 e1˷hO1_KcKK9lZ@h)n4!R7x  @. @s GM1:cyi."b&&Sr<& ?ȣ279FS E$@IZ 06wuWv雖7|7doy[:NU}g?<|w~gK.1;=zs;#o?~_7)o,ye; j\ʆ 0dwsXFPD EBwGKWϱ{S,o%׮D f 6BʹW@"0D';9"nƶ"K"?P.1'^z){7\DL=̐9!' @9TDsMt{GG*O?rH슓Q21A !9K 7Qszf@Dޞs=@) LV @`p[CmS]bH|wJx`LcQI91/)Kl R:%sNY6FHP3Zc3 @rR蔷%;FR^ )\C9AfOu&X@ 9䪄A c$o~0()*9B)[{# j3s ;,]s8~v;x⏝GLOyKQO?/rͼgL攭ѽ@N;Jn+@%&kauʃPC*3B)[{#8(_[ @d jLP_8Pl0@`S  Bw4t>%w @` @{  jLL 5q.f}!jUJ p&.iB /}K9S 5@s  e.iB /}Ko!!@O]@ a.iB /}KIa P"@ @Pce2M/]s 5=f  0m.iB /}Kvt 0-iէ ĻdP_Kj9x, pB\ @ĻdP_Kj[ xjSW,EHĻdP_Kj@j = ԘxwLjK\BM/z@"@ LĻdP_Kj)LfZ4 g"@12&.ǹ3u@Ps4  P&@12&.ǹ 0K@&@12&.ǹ;!%. @5&]&ӄ_8PË-@OEG@vsy=ln҄ưpĻdP_KjFѕ0XPrgkjFFJPce2M/]s 5g"<D`BM0q]_GܜC t?'#!@12&.ǹt7 3 0AfQk7od!\]x4fF@ .iB /}Ku!!0MfiUSjn޸X/)YS/ER*&oUײڳ+h}*#h<́ 5&]&ӄ_8Psݕ )TDB076BNYtNV+nŞmfumPSw{jvEgL<{ 0Bw4t>% x p< 59j(o"R$[KbqBM=ϭL&3('T jLL 5q.f#Viܢ&?vcrzF4D;#nkA$Ԍ5يĻdP_KjէM`BMUGl\*Y>ttkZ%?ͼ#i jLL 5q.}#}PUtjS#қP6L={a7>ֽ@ Fyrgċ\`,Lcvwݗ&߯)^sB^;;0'o[%vYڻ;d;K #IBkt׾^gm]m{6!5;DM!fww4 @&\VDu%ωrHS!,?`(T?+ߖϸԧ,j'Vb[X\ 6 0w6Qs%\OwCώ+Dm#v,EJ`\BBLQؙ9DlMbW#EduN}Ŗ(6Dji)l7]ӞOʷOf3ͨBYG: ,pO׮wa^TMlTTUΜ\z/v#w'#PsfIਚ濻Gj!mOM|W#ymb\zn/׋?}8=5 571HGHf%_m/*Lhw)닯U9߸qPllDZ֪dWe*o۝'29 5\4R3S3n3wr!&D}9U"UΛ<@f h틻˨vu3EԌa>̊PW+`z9T~ɶ? /5넾Q#}r{EQi<'Br M`BMVX"/gGUrDLqͲJf+gi)rY K~3ePUиFh틅ֵڙӱpg@&0Nf3NDT 5!ZfGjS@v~V˞b"ܜx7AqZhBM(yOiBɃ5] NP38rD" 52Q"Af{&ͻ)[2V˨eO%.zMT'儚#&XG&._1qH)<ʄS%@j* ,Ԭ"TaW *s^rtW9˥. jddǩ!#Ԭ:>_$l}z #  q 5Ŗ7Z#bSL _Bݢrah}9ɂr.}I-A9NYE|}b9>_$jzx p*Su_@YP3X"2= 5]뗖>ͪKRX9B+ i ԘHwHjK\BM}+@yhF͝65m(9@.iB /}Kэ!!@O]@ a.iB /}KIa P"@ @Pce2M/]s 5=f  0m.iB /}Kvt 0-iէ ĻdP_Kj9x, pB\ @ĻdP_Kj[ xjSW,EHĻdP_Kj@j = ԘxwLjK\BM/z@"@ LĻdP_Kj)LfZ4 g"@12&.ǹ3u@Ps4  P&@12&.ǹ 0K@&@12&.ǹ;!%. @5&]&ӄ_8PË-@j1 &@12&.ǹiAJ"@V}*  jLL 5q.L" %  jLL 5q.Ff%w @` @{  jLL 5q.f}!jUJ p&.iB /}K9S 5@s  e.iB /}Ko!!@O]@ a.iB /}KIa P"@ @Pce2M/]s 5=f  0m.iB /}Kvt 0-iէ ĻdP_Kj9x, pB\ @ĻdP_Kj[ xjSW,EH@P$?}Zܾ)Խ@ jx =0[ Yx"5@-@,΂C@B @@LtNI׽@NI׽@Dtg @vp +ﯱ@`5SYBΠ= z$#LBz @[  DEvf/뱋ō|Z\ub=Us=5e#6\^_bu|+yV}k 7_}~ L jfZ /&:]Jfv"P+\^zJZ)9%VPZh3wC_"BP F7A;&:l'%"Z_V{5qkŐ{E9!Sr8oac9rh_ʏ) :̈fF #DPsrRZbBdB͍{忻jb\ض\Uq};]͹3@^0  6ѩ)SXδ.-eMijKv̬k&`jD8mN@qy Н@ov @B @@MtD,BSB$,7Z.{\,T$ejy5-EXδyXBM^CW?  0{ٻ }mQY'ke)JQegTP(9{& POP;@聀NB,=%@ @Dng!uj $`sJ$uJt' ;3W  CDS X x؍S%@j* Lta #a BM@>c%5֚c7Lf5\ 0!@zV @5=@t @LtXk 0U֬r! JDgP=[!= -@0 0V_c9v#T jZʅ 0(/LCKPA@@@@Djf    >   $BPHE0@@@ @@@@ D*         $R@@@@5|@@@H&`    @    @"5T3@@@@B @@@@!@I"   j    BM" @@@@P@@@@Djf    >   $BPHE0@@@ @@@@ D*         $R@@@@5|@@@H&`    @    @"5T3@@@@B @@@@!@I"   j    BM" @@@@P@@@@Djf    >   $BPHE0@@@ @@@@ D*         $R@@@@5|@@@H&`    @    @"5T3@@@@B @@@@!@I"   j    BM" @@@@P@@@@Djf    >   $BPHE0@@