PK N4zDoa,mimetypeapplication/epub+zipPKN4zDiTunesMetadata.plist[ artistName Oracle Corporation book-info cover-image-hash 954810243 cover-image-path OEBPS/dcommon/oracle-logo.jpg package-file-hash 767834551 publisher-unique-id E23431-01 unique-id 260001824 genre Oracle Documentation itemName Oracle® Fusion Middleware Administering Oracle ADF Applications, 12c (12.1.2) releaseDate 2013-06-06T21:23:47Z year 2013 PK`$`[PKN4zDMETA-INF/container.xml PKYuPKN4zDOEBPS/cover.htm  Cover

Oracle Corporation

PK@t` PKN4zDOEBPS/ap_aud_adf.htm{g Audit Reference for Oracle Application Development Framework

C Audit Reference for Oracle Application Development Framework

This appendix provides reference information for auditing in Oracle Application Development Framework.

This appendix contains these sections:

C.1 About Custom and Standard Audit Reports

The Common Audit Framework in Oracle Fusion Middleware provides a set of standard reports based on your audit records. It also enables you to modify the standard reports and create your own custom audit reports.

This appendix provides details about events that can be audited in Oracle Application Development Framework. Use this information to understand the structure of each event record to develop custom reports.

The following documents provide more information to help you write custom reports:

The following documents provide additional information about how to configure auditing and view standard reports:

C.2 Attributes of ADF Audit Events

ADF audit events use the attributes specified in Table C-1

Table C-1 Attributes for ADF Audit Events

Attribute NameDescription

mds-mo-name

Metadata object name.

mds-mo-type

Metadata object type.

mds-cust-layer-name

Customization layer name.

mds-cust-layer-value

Customization layer value.

mds-sandbox-name

Sandbox name.

custom-operation

The operation that triggered this event.

custom-attribute1-name

The name of custom attribute 1.

custom-attribute1-value

The value of custom attribute 1.

custom-attribute1-old-value

The old value of custom attribute 1.

custom-attribute2-name

The name of custom attribute 2.

custom-attribute2-value

The value of custom attribute 2.

custom-attribute2-old-value

The old value of custom attribute 2.

custom-attribute3-name

The name of custom attribute 3.

custom-attribute3-value

The value of custom attribute 3.

custom-attribute3-old-value

The old value of custom attribute 3.

custom-attribute4-name

The name of custom attribute 4.

custom-attribute4-value

The value of custom attribute 4.

custom-attribute4-old-value

The old value of custom attribute 4.

custom-attribute5-name

The name of custom attribute 5.

custom-attribute5-value

The value of custom attribute 5.

custom-attribute5-old-value

The old value of custom attribute 5.

custom-sub-object-name

User-recognizable name for the sub-object (XML element/attribute) that changed.

custom-sub-object-type

User-friendly type for the sub-object (XML element/attribute) that changed.

mds-repository-name

MDS repository name.

mds-partition-name

MDS repository partition name.

custom-object-name

User-friendly object name.

custom-object-type

User-recognizable object type.


C.3 Audit Events in Oracle ADF View

Table C-2 lists the audit events for ADF View:

Table C-2 Oracle ADF View Audit Events

EventDescription

CreatePage

Create a new page.

CreateRegion

Add a region to a page.

CreateDataboundComponent

Add a databound component to a page.


C.4 Audit Events in Oracle ADF Business Components

Table C-3 lists the audit events for ADF Business Components:

Table C-3 Oracle ADF Business Components Audit Events

Event TypeEventDescription

View Object

AddViewLinkDef

Add a view link definition.


RemoveViewLinkDef

Remove a view link definition.


AddAttributeDef

Add an attribute.

Entity Object

AddAttributeDef

Add an attribute definition.


AddTrigger

Add a trigger.


AddValidator

Add a validator.


RemoveTrigger

Remove a trigger.


RemoveValidator

Remove a validator.

Application Module

CreateViewObject

Create a view object.


RemoveViewObject

Remove a view object.


C.5 Audit Events in Oracle ADF Model

Table C-4 lists the audit events for ADF Model:

Table C-4 Oracle ADF Model Audit Events

Event TypeEventDescription

Page Definition

AddControBinding

Add a control binding.


AddIterator

Add an iterator binding.


AddVariable

Add a variable binding.


AddExecutable

Add an executable binding.


AddParameter

Add a parameter binding.


AddNestedContainer

Add a nested container binding.


RemoveExecutable

Remove an executable binding.


RemoveIterator

Remove an iterator binding.


RemoveParameter

Remove a parameter binding.

Application

AddDataControlReference

Add data control reference.


AddPageDefinitionUsage

Add a page definition usage.


AddPageMapEntry

Add a page map entry.


RemoveDataControl

Remove data control usage.


RemovePageDefinitionUsage

Remove page definition usage.


RemovePageMapEntry

Remove a page map entry.

Configuration

AddDataControlDefinition

Add a data control definition.


RemoveDataControlDefinition

Remove a data control definition.


C.6 Audit Events in Oracle ADF Controller

Table C-5 lists the audit events for ADF Controller:

Table C-5 Oracle ADF Controller Audit Events

EventDescription

setPageName

Set a page name.

addControlFlowCase

Add a control flow case.

addActivity

Insert a new activity into a flow.

getMutableTaskFlowDefinition

Edit a task flow definition.

addEntry

Add a resource entry.

updateEntry

Update a resource entry.

deleteEntry

Delete a resource entry.


C.7 Audit Events in Jedi

Table C-6 lists the audit events for Jedi:

Table C-6 Jedi Audit Events

EventDescription

AddAttribute

Add an attribute.

AddOperation

Add an operation.

AddValidationRule

Add a validation rule.

DeleteOperation

Delete an operation.

EditAttribute

Edit an attribute.

RemoveAttribute

Remove an attribute.

NewCustomObject

Add new custom object.

ChangedProperty

Change a property.

ChangedLabel

Display label change.

ChangedRequired

Required change.

ChangedUpdateable

Updatable change.


PK{{PKN4zDOEBPS/title.htmi Oracle Fusion Middleware Administering Oracle ADF Applications 12c (12.1.2)

Oracle® Fusion Middleware

Administering Oracle ADF Applications

12c (12.1.2)

E23431-01

June 2013

Documentation for Oracle Application Development Framework (Oracle ADF) administrators that describes how to deploy, monitor, and configure ADF applications


Oracle Fusion Middleware Administering Oracle ADF Applications 12c (12.1.2)

E23431-01

Copyright © 2009, 2013, Oracle and/or its affiliates. All rights reserved.

Primary Authors: Peter Jew (Lead), Liza Rekadze, Himanshu Marathe

Contributing Author: Odile Sullivan-Tarazi, Cammy Moore

Contributors: Lynn Munsinger, Duncan Mills, Dipankar Bajpai, Harry Hsu, Ray Maslinski

This software and related documentation are provided under a license agreement containing restrictions on use and disclosure and are protected by intellectual property laws. Except as expressly permitted in your license agreement or allowed by law, you may not use, copy, reproduce, translate, broadcast, modify, license, transmit, distribute, exhibit, perform, publish, or display any part, in any form, or by any means. Reverse engineering, disassembly, or decompilation of this software, unless required by law for interoperability, is prohibited.

The information contained herein is subject to change without notice and is not warranted to be error-free. If you find any errors, please report them to us in writing.

If this is software or related documentation that is delivered to the U.S. Government or anyone licensing it on behalf of the U.S. Government, the following notice is applicable:

U.S. GOVERNMENT RIGHTS Programs, software, databases, and related documentation and technical data delivered to U.S. Government customers are "commercial computer software" or "commercial technical data" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations. As such, the use, duplication, disclosure, modification, and adaptation shall be subject to the restrictions and license terms set forth in the applicable Government contract, and, to the extent applicable by the terms of the Government contract, the additional rights set forth in FAR 52.227-19, Commercial Computer Software License (December 2007). Oracle America, Inc., 500 Oracle Parkway, Redwood City, CA 94065.

This software or hardware is developed for general use in a variety of information management applications. It is not developed or intended for use in any inherently dangerous applications, including applications that may create a risk of personal injury. If you use this software or hardware in dangerous applications, then you shall be responsible to take all appropriate fail-safe, backup, redundancy, and other measures to ensure its safe use. Oracle Corporation and its affiliates disclaim any liability for any damages caused by use of this software or hardware in dangerous applications.

Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners.

Intel and Intel Xeon are trademarks or registered trademarks of Intel Corporation. All SPARC trademarks are used under license and are trademarks or registered trademarks of SPARC International, Inc. AMD, Opteron, the AMD logo, and the AMD Opteron logo are trademarks or registered trademarks of Advanced Micro Devices. UNIX is a registered trademark of The Open Group.

This software or hardware and documentation may provide access to or information on content, products, and services from third parties. Oracle Corporation and its affiliates are not responsible for and expressly disclaim all warranties of any kind with respect to third-party content, products, and services. Oracle Corporation and its affiliates will not be responsible for any loss, costs, or damages incurred due to your access to or use of third-party content, products, or services.

PKoNPKN4zDOEBPS/intro.htm%c Introduction to Oracle ADF Administration

1 Introduction to Oracle ADF Administration

This chapter describes the administrative tasks you can perform and the tools you can use to deploy, manage, monitor, and configure applications developed for the Oracle Application Development Framework (Oracle ADF). Some of the tools you will be using are the Oracle Enterprise Manager Fusion Middleware Control, Oracle JDeveloper, and WebLogic Scripting Tool (WLST).

This chapter includes the following sections:

1.1 Introducing Oracle ADF

The Oracle Application Development Framework (Oracle ADF) builds on Java Platform, Enterprise Edition (Java EE) standards and open-source technologies to provide a complete framework for implementing service-oriented applications. You can use this framework to provide enterprise solutions across different platforms. You can build applications that search, display, create, modify, and validate data for web, web services, desktop, or mobile interfaces.

You use Oracle JDeveloper with Oracle ADF to develop applications with an environment that supports the full development lifecycle of design, test, and deployment. For more information about ADF development, see Developing Fusion Web Applications with Oracle Application Development Framework.

After you have developed and tested your ADF application in test environments, you can deploy your application to production environments using the tools described in this book. You can monitor the performance of applications as they are running. You can also manage and configure properties and attributes.

1.2 Oracle ADF Architecture

Oracle ADF supports the industry-standard model-view-controller architecture to achieve separation of business logic, navigation, and user interface. The MVC architecture provides:

The Fusion web application technology stack components are:

1.2.1 ADF Business Components

ADF Business Components are application objects you can use to implement service-oriented Java EE applications. You implement ADF Business Components for clients to query, insert, update, and delete business data. You can apply business rules to the Business Components to enforce proper usage. The key components of ADF Business Components are the entity object, the view object, and the application module.

An entity object represents a row in a database table. It uses data manipulation language (DML) operations to modify data. Entity objects are used with others to reflect relationships in the database schema.

A view object represents a SQL query. You use the SQL Language to query the database to obtain the results. You can also link a view object with other entity objects to create master-detail hierarchies.

An application module is the transactional component that allows UI components to access data. It presents a data model and methods to perform certain tasks.

1.2.2 ADF Model

ADF Model implements a service abstraction called data control. Data control uses metadata interfaces to abstract business services. This metadata is used to describe data collections, properties, methods, and types. In JDeveloper, data controls appear in the Data Controls panel. When you drag and drop attributes, collections, and methods onto a page, JDeveloper automatically creates the bindings from the page to the associated services.

1.2.3 ADF Controller

ADF Controller provides a navigation and state management model that works with JSF. You can create navigational flows called task flows that encapsulate a specific task sequence.

1.2.4 ADF Faces Rich Client

ADF Faces provides over 100 rich components that can be used out of the box to create web applications. ADF Faces components provide built-in AJAX functionality to allow requests to be sent to the server without fully rendering the page. JSF provides server-side control to reduce the dependency on JavaScript. The components support skinning, internationalization, and accessibility options.

ADF Faces has a large set of components, including tables, trees, dialogs, accordions, and a variety of layout components. It also includes ADF Data Visualization components, which are Flash- and SVG-enabled, for displaying graphs, charts, and gauges.

1.2.5 ADF Desktop Integration

ADF Desktop Integration provides a framework for Oracle ADF developers to extend the functionality provided by a Fusion web application to desktop applications, such as Excel, even when they are disconnected from the network.

Using Excel's familiar user interface, end users can undertake information management tasks, such as performing complex calculations or uploading a large amount of data.

1.3 Administering Oracle ADF Applications

You can perform a variety of administration tasks on ADF applications. You can deploy ADF applications using Enterprise Manager Fusion Middleware Control, WLST commands, the ojdeploy command, scripts, or the WebLogic Administration Console.

After the ADF application has been deployed, you can configure application properties using Enterprise Manager Fusion Middleware Control. You can also configure some properties using the MBean Browser to change values in the ADF MBeans. For example, you can use Enterprise Manager Fusion Middleware Control to change the URL connection or WebService connection endpoints or seed the production credentials.

When you run the application, you can monitor performance data on the application modules, application module pooling, and task flows.

PKPG%%PKN4zDOEBPS/monitor.htm Monitoring and Configuring ADF Applications

3 Monitoring and Configuring ADF Applications

This chapter describes how to view ADF application performance. It also describes how to configure an ADF application's properties after it has been deployed to Oracle WebLogic Server. It describes how to use Oracle Enterprise Manager Fusion Middleware Control and its System MBean Browser to perform monitoring and configuration tasks. It also describes diagnosing problems with the Diagnostic Framework and monitoring metrics using DMS spy.

This chapter includes the following sections:

3.1 Introduction to ADF Application Monitoring and Configuration

After you have deployed an ADF application to Oracle WebLogic Server, you can view the application performance and configure application properties on the server. You can use Enterprise Manager Fusion Middleware Control to perform these tasks.

Enterprise Manager Fusion Middleware Control offers a user interface for the performance tasks. Some configuration tasks can be performed either from a user interface or by configuring an MBean, as listed in Table 3-1.

By default, the post-deployment changes made using MBeans are stored in MDS with a layer name of adfshare and a layer value of adfshare. You can provide a specific layer name by specifying the adfAppUId property in the application's adf-config.xml.

Example 3-1 shows the adf-properties-child code in adf-config.xml.

Example 3-1 MDS Layers in the adf-config.xml File

<adf:adf-properties-child xmlns="http://xmlns.oracle.com/adf/config/properties">
     <adf-property name="adfAppUID" value="DeptApp.myApp"/>
</adf:adf-properties-child> 

If you are moving data between MDS repositories (for example, from a test to a production system), use the MDS exportMetadata and importMetadata commands as described in the chapter on managing the Oracle metadata repository in the Administering Oracle Fusion Middleware and in the chapter on Metadata Services custom WLST commands in the WLST Command Reference for WebLogic Server.

3.2 Monitoring Performance Using Enterprise Manager Fusion Middleware Control

You can monitor the performance of Oracle ADF applications using the Fusion Middleware Control, as described in the following topics:

3.2.1 Understanding the Home Page

You can view performance information about application module pools and ADF task flows. Application module components can be used to support a unit of work which spans multiple browser pages.

You can:

  1. View application module pool performance.

  2. View task flow performance.

3.2.2 Finding Version Information of ADF Runtime JARs

You can use find the version information for ADF runtime JAR files and display the results in a table or export the information to an Excel file. You can narrow down your results by specifying a filter for each column.

To finding version information of runtime JARs:

  1. From the navigation pane, expand Application Deployments, then click the application that you want to view the runtime JARs.

  2. From the Application Deployment menu, choose ADF > Versions.

    The Log Configuration page displays.

  3. You can filter the results for each column by entering the filter criteria into the input field above each column. For instance, if you want to display only JAR files associated with specification 2.2, enter "2.2" in the field above the Specification Version column and press Enter.

  4. If you want to export the results table into an Excel file, click Export to Excel.

3.2.3 Viewing Application Performance

You can view performance information about application modules. Application module components can be used to support a unit of work which spans multiple browser pages.

To view application performance:

  1. From the navigation pane, expand Application Deployments, then click the application that you want to view.

  2. From the Application Deployment menu, choose ADF > ADF Performance.

    The ADF Performance page displays. It contains subtabs for viewing performance information about active application module pools and task flows.

3.2.4 Viewing Application Module Pool Performance

An application module pool is a collection of instances of a single application module type which are shared by multiple application clients. One application module pool is created for each root application module used by an ADF web application (ADF Business Components, ADF Controller, or ADF Faces) in each Java virtual machine where a root application module of that type is used by the ADF Controller layer.

To view application module pool performance:

  1. From the navigation pane, expand Application Deployments, then click the application that you want to view pool performance.

  2. From the Application Deployment menu, choose ADF > ADF Performance.

  3. Click the Application Module Pools tab.

  4. In the Module column, select an application module to display its details in the Application Module Pools table.

    No Data Available displays in the Module column if an application has never run.

  5. Click a module to display additional informations about the module, for example, Lifetime, State Management, Pool Use, and Application Module Pools Page.

    Use the Application Module Pools page to display active application module pools, a collection of application module instances of the same type. The Application Module Pools page:

    • Displays size and performance information about pool connections

    • Specifies settings that affect how application module pools behave

    • Specifies credential information for the application module pools

3.2.5 Viewing ADF Task Flow Performance

You can view performance information about task flows. Task flows provide a modular and transactional approach to navigation and application control. Task flows mostly contain pages that will be viewed, but they also can contain activities that call methods on managed beans, evaluate an EL expression, or call another task flow, all without invoking a particular page.

To view task flow performance:

  1. From the navigation pane, expand Application Deployments, then click the application that you want to view task flow performance.

  2. From the Application Deployment menu, choose ADF > ADF Performance.

  3. Click the Task Flows tab.

    By default, Task Flow Performance charts on the tab display data for the preceding 15 minutes. To set a different interval, click the time at the top of the page or move the slider to another interval, for example, from 08:00 AM to 08:30 AM.

  4. Click TF Charts.

    • Request Processing Time displays the average request processing time for all ADF task flows that execute during the selected interval.

    • Active Task Flows displays the number of active instances of each ADF task flow during the selected interval.

3.3 Configuring Application Properties Using Fusion Middleware Control

You can use Enterprise Manager Fusion Middleware Control to configure ADF application configuration parameters. These configuration parameters are stored in ADF MBeans. Fusion Middleware Control provides a user interface to configure the ADF Business Components and ADF Connections MBeans. You can also use the System MBean Browser to directly access the underlying MBeans and configure their values. For more information about accessing the underlying MBeans, see Section 3.4.

You can use Fusion Middleware Control to configure ADF parameters, as described in the following topics:

3.3.1 Modifying ADF Business Components Parameters

You control the runtime behavior of an application module pool by setting appropriate configuration parameters. Fusion Middleware Control provides a UI to configure ADF Business Components, as described in this section. You can also configure the ADF Business Components MBeans directly using the generic MBean Browser, as described in Section 3.4.3

To modify Business Components parameters:

  1. From the navigation pane, expand Application Deployments, then click the application that you want to configure Business Components.

  2. From the Application Deployment menu, choose ADF > Configure ADF Business Components.

  3. Click an Application Module.

  4. Click the Pooling and Scalability, Core, Database, or Security tabs to update configuration parameters.

    If the application module uses data sources, you can configure the data sources by clicking Edit Datasource from the Core tab.

The ADF Business Components configurations page is arranged with the following sections or tabs:

  • Application Modules section

  • Pooling and Scalability tab - Application Pool Properties

  • Pooling and Scalability tab - Connection Pool Properties

  • Core tab

  • Database Properties tab

  • Security Properties tab

3.3.2 Modifying Connection Configurations

A connection configuration contains information that a client application uses to identify the ADF application module's deployment scenario. You use Oracle Enterprise Manager Fusion Middleware Control to:

  • Register and manage back-end services such as mail, discussion forums servers, and so on

  • Register and manage external applications that users need access to while working with applications

  • Register and manage any portlet producers that the application uses or that users may need access to

Fusion Middleware Control provides a UI to configure ADF connections, as described in this section. You can also configure the ADF connections MBean directly using the System MBean Browser, as described in Section 3.4.2.

You must already have deployed an Oracle ADF application and have Enterprise Manager Fusion Middleware Control available to access the application.

You must have MDS configured in your application before you can modify the ADF application and connection configurations. ADF connection attributes are persisted to MDS.

If you deployed an application to several nodes within a cluster, any ADF connection changes to a single node will be propagated to all the other nodes. MDS will store a single set of connection information for all versions of an application.

To modify connection configurations:

  1. From the navigation pane, expand Application Deployments, then click the application that you want to configure connections.

  2. From the Application Deployment menu, choose ADF > Configure ADF Connections.

  3. In the Connection Type drop-down list, choose the type of connection you want to configure:

    • ADF BC Service

    • Enterprise Scheduling Service

    • URL

    • Web Service

    You cannot create an Essbase connection, however, you can edit an existing Essbase connection that was deployed with the application.

  4. In the Connection Name field, enter a unique name for the connection configuration.

  5. Click Create Connection.

    The Connection Configuration page updates with a section where you can specify options for the connection type you chose.

3.4 Configuring Application Properties Using the MBean Browser

You can use the Fusion Middleware Control System MBean Browser to access and modify the values in ADF MBeans deployed with the ADF application into Oracle WebLogic Server.

You can use the Fusion Middleware Control System MBean Browser to perform configuration tasks, as described in the following topics:

3.4.1 Modifying ADF Application Configurations Using MBeans

You can modify ADF application configurations MBeans using the MBean Browser.

You must have MDS configured in your application before you can modify the ADF application and connection configurations. ADF application attributes are persisted to MDS.

If you deployed an application to several nodes within a cluster, any ADF application configuration changes to a single node via an MBean will be propagated to all the other nodes. MDS will store a single set of ADF application configuration information for all versions of an application.

To modify ADF application configurations using the System MBean Browser:

  1. From the navigation pane, expand Application Deployments, then click the application that you want to configure.

  2. From the Application Deployment menu, choose ADF > Configure ADF (adf-config).

  3. In the left pane of the System MBean Browser, expand the parent ADF MBean ADFConfig and then the ADFConfig folder to expose the child ADF MBeans.

    You may see the child ADF MBeans ADFcConfiguration and MDSAppConfig.

  4. In the left pane, select the ADFcConfiguration MBean, and in the right pane, select the attribute you want to view or modify.

    ADF Configuraton Mbean
  5. Change the attribute value and click Apply.

  6. In the left pane, select the parent ADF MBean ADFConfig.

  7. In the right pane, click the Operations tab and click save.

    The new values you have edited are written to MDS after you click save from the parent MBean.

3.4.2 Modifying ADF Connections Using MBeans

You can modify ADF connection configurations MBean using the MBean Browser.

You can also modify ADF connections using the Fusion Middleware UI described in Section 3.3.2.

You must have MDS configured in your application before you can modify the ADF application and connection configurations. ADF application attributes are persisted to MDS.

If you deployed an application to several nodes within a cluster, any ADF connection changes to a single node via an MBean will be propagated to all the other nodes. MDS will store a single set of ADF application configuration information for all versions of an application.

To modify ADF connections configurations using the System MBean Browser:

  1. From the navigation pane, expand Application Deployments, then click the application that you want to configure.

  2. From the Application Deployment menu, choose System MBean Browser.

  3. In the left pane of the System MBean Browser, navigate to the ADFConnections MBean. The MBean should be in oracle.adf.share.connections > server name > application name.

  4. In the left pane, select the ADF Connections MBean, and in the right pane, select the attribute you want to view or modify.

    ADF Connections Mbean
  5. Change the attribute value and click Apply.

  6. In the right pane, click the Operations tab and click save.

    The new values you have edited are written to MDS after you click save.

3.4.3 Modifying ADF Business Components Configurations Using MBeans

You can modify ADF Business Components configurations MBeans using the MBean Browser. ADF Business Component configuration information are stored in MBeans that are specific for each application. Unlike ADF connections and ADF application configuration information which you can configure once for all versions of the same application, you will need to configure ADF Business Components for each version of the application.

You can also modify ADF Business Components configuration information using the Fusion Middleware UI described in Section 3.3.1.

You must have MDS configured in your application before you can modify the ADF application and connection configurations. ADF application attributes are persisted to MDS.

If you deployed an application to several nodes within a cluster, any ADF Business Components changes to a single node via MBeans will be propagated to all the other nodes. MDS will store a single set of ADF application configuration information for all versions of an application.

To modify ADF Business Components configurations using the System MBean Browser:

  1. From the navigation pane, expand Application Deployments, then click the application that you want to configure.

  2. From the Application Deployment menu, choose System MBean Browser.

  3. In the left pane of the System MBean Browser, navigate to the BC4J MBeans. These MBeans should be in oracle.bc4j.mbean.share > server name > application name.

  4. In the left pane, select the ADF Connections MBean, and in the right pane, select the attribute you want to view or modify.

  5. Change the attribute value and click Apply.

3.4.4 Modifying MDS Configuration Using MBeans

You can use the MBean Browser to perform advanced configuration of MDS parameters. For more information about configuring MDS using MBeans, see Administering Oracle Fusion Middleware.

You must already have deployed an Oracle ADF application and have Enterprise Manager Fusion Middleware Control available to access the application.

To modify MDS configurations using the System MBean Browser:

  1. From the navigation pane, expand Application Deployments, then click the application that you want to configure.

  2. From the Application Deployment menu, choose MDS Configuration.

  3. Click Configuration MBean Browser or Runtime MBean Browser.

  4. Select the MBean and the attribute you want to view or modify.

    ADF MDS Mbean
  5. Change the value and click Apply.

  6. In the left pane, select the parent ADF MBean ADFConfig.

  7. In the right pane, click the Operations tab and click save.

    The new values you have edited are written to MDS after you click save from the parent MBean.

3.4.5 Modifying Active Data Service Configuration Using MBeans

You can use Active Data Service (ADS) framework to control the runtime behavior of an Oracle ADF application and qualifying ADF Faces components so that whenever data changes on the server, the ADF Model layer notifies the component and the component rerenders the changed data.

You must already have deployed an Oracle ADF application and have Enterprise Manager Fusion Middleware Control available to access the application.

Note that the ADF Faces components of your application must be configured to use ADS. Additionally, if your application services do not support ADS, then your application must define a service proxy so that the components can display the data as it updates in the source. For details about ADS, see the "Using the Active Data Service" section in Developing Fusion Web Applications with Oracle Application Development Framework.

To modify Active Data Service configurations using the System MBean Browser:

  1. From the navigation pane, expand Application Deployments, then click the application that you want to configure.

  2. From the Application Deployment menu, choose ADF > Configure ADF (adf-config).

  3. In the left pane of the System MBean Browser, expand the parent ADF MBean ADFConfig and then the ADFConfig folder to expose the child ADF MBeans.

    You may see the child ADF MBeans ActiveDataConfiguration and MDSAppConfig.

    Active Data Service configuration
  4. In the left pane, select the ActiveDataConfiguration MBean, and in the right pane, select the attribute you want to view or modify.

    AttributeDescription

    Transport

    The method by which data will be delivered to the client. Value values are:

    • streaming (default)

    • polling

    • long-polling

    For more information, see "What You May Need to Know About Configuring an ADS Transport Mode" in Developing Fusion Web Applications with Oracle Application Development Framework.

    LatencyThreshold

    Latency threshold in milliseconds. Active data messages with network delays greater than this threshold will be treated as being "late".

    KeepAliveInterval

    Frequency in milliseconds for sending keep-alive messages when no events are generated.

    PollingInterval

    When transport set to polling, frequency in milliseconds of the poll request.

    MaxReconnectAttemptTime

    Maximum period of time in milliseconds a client will attempt to reconnect the push channel upon getting disconnected

    ReconnectWaitTime

    Time interval in milliseconds to wait between reconnect attempts.


  5. Change the attribute value and click Apply.

  6. In the left pane, select the parent ADF MBean ADFConfig.

  7. In the right pane, click the Operations tab and click save.

    The new values you have edited are written to MDS after you click save from the parent MBean.

3.5 Editing Credentials Deployed with the Application

You can use Enterprise Manager Fusion Middleware Control to edit credentials that were deployed with an ADF application to the credential store. You can also create new credentials and delete existing credentials.

For ADF applications, the following considerations apply:

For more information, see "Managing Credentials with Fusion Middleware Control" in the Securing Applications with Oracle Platform Security Services.

3.6 Diagnosing Problems using the Diagnostic Framework

Oracle Fusion Middleware provides a Diagnostic Framework to help you detect, diagnose, and resolve problems with your application

When a critical error occurs, the Diagnostic Framework immediately captures diagnostic data and associates the data and error with an incident number. Using this number, you can retrieve the data for analysis from the Automatic Diagnostic Repository (ADR).

Oracle ADF provides an ADFConfig dump which will execute when an INCIDENT_ERROR message is logged. You can also add code to invoke the dump in the application exception handlers. Example 3-2 show a sample code you can add to your exception handler to invoke the ADFConfig dump.

Example 3-2 Sample Code for Invoking ADFConfig Diagnostic Dump in Exception Handler

IllegalArgumentException e = new IllegalArgumentException("test exception");
LoggerFactory.getFrameworkLogger().log(ODLLevel.INCIDENT_ERROR,
 "Test error message", e);

For more information about the Diagnostic Framework, see Administering Oracle Fusion Middleware.

3.7 Viewing Application Metric Information with DMS SPY

You can use the DMS Spy servlet to view application metric information in a web browser.

For more information, see "Monitoring Oracle Fusion Middleware" in Tuning Performance.

PKȶPKN4zDOEBPS/deploy.htm;|ă Deploying ADF Applications

4 Deploying ADF Applications

This chapter describes how to deploy Oracle ADF applications packaged as an EAR file to a target application server. The focus is on deploying ADF applications for production and later stage testing. It shows you how to prepare the application server for deployment by installing the ADF runtime. It also describes some of the tools that can be used for deployment including Oracle Enterprise Manager Fusion Middleware Control, scripts, and Ant.

This chapter includes the following sections:

For information about deploying ADF applications for development, see Developing Fusion Web Applications with Oracle Application Development Framework.

4.1 Introduction to Deploying ADF Applications

Deployment is the process of packaging application files and artifacts and transferring them to a target application server to be run. During application development using JDeveloper, developers can test the application using the Integrated WebLogic Server that is built into the JDeveloper installation, or they can use JDeveloper to directly deploy to a standalone application server.

After the application has been developed, administrators can deploy the application to production application servers. The tools that the administrators use for production-level deployment are:

This chapter describes the tools and methods that administrators use to deploy ADF applications. For information about deploying ADF applications for development and testing purposes using JDeveloper, see Developing Fusion Web Applications with Oracle Application Development Framework.

If your application uses customization, you may need to set up the MDS repository in the application server. For more information about MDS, see Administering Oracle Fusion Middleware.


Note:

Developers, Test, and QA personnel may also use these tools and the methods in this chapter to deploy ADF applications to staging application servers.


4.2 Preparing the Standalone Application Server for Deployment

To run ADF applications, you must install the standalone application server with the ADF runtime. You can include the ADF runtime during a new application server installation or you can install the ADF runtime into an existing application server installation.

Figure 4-1 shows the flow diagram for preparing a standalone application server for deployment. Note the following definitions used in the diagram:

The following diagram contains clickable links.

Figure 4-1 Preparing the Application Server Flow Diagram

Preparing the Application Server Flow Diagram Install ADF runtime for WebLogic ServerCreate a global JDBC SourceCreate WebLogic Server domainCreate WebLogic Server domain

For WebLogic Server, the following points apply:

4.2.1 Installing the ADF Runtime to the Application Server Installation

The application server requires the ADF runtime to run ADF applications.

Installing the ADF runtime is not required if you are using JDeveloper to run applications in Integrated WebLogic Server.

For WebLogic Server, you can install the ADF runtime using the following installers:

  • Oracle Fusion Middleware Application Developer Infrastructure Installer: Installs the ADF runtime and Oracle Enterprise Manager. You should use the Oracle Fusion Middleware Infrastructure Installer if you want to use Oracle Enterprise Manager to manage standalone ADF applications (without Oracle SOA Suite or Oracle WebCenter Portal components). For more information, see Installing and Configuring the Oracle Fusion Middleware Infrastructure.


    Note:

    The Oracle JDeveloper Installer can also be used to install the ADF runtime to the application server installation. However, it does not include all the components that are typically needed for production and full test environments. Therefore, this installer should not be used for anything other than for development purposes. For information about the obtaining and using the installer, see Installing Oracle JDeveloper.


4.2.1.1 Installing the ADF Runtime into an Existing WebLogic Server Installation Using the Oracle Fusion Middleware Infrastructure Installer

You can use the Oracle Fusion Middleware Infrastructure Installer to install the ADF runtime and Enterprise Manager.

Install Oracle WebLogic Server. You must also have obtained the Oracle Fusion Middleware Infrastructure Installer.

Use the instructions in Planning an Installation of Oracle Fusion Middleware to obtain the software, start the installer, and to complete the installation.

In the installer you will perform several tasks including:

  • Adding any software updates

  • Selecting the WebLogic Server directory for installation

  • Verifying installation information

After you have installed the ADF runtime, follow the instructions in Section 4.2.3 to use the Oracle Fusion Middleware Configuration Wizard to create or extend the Oracle WebLogic Server domain.

4.2.2 Installing Relevant Patches

You may need to install patches and other updates to your software distribution. For more information, see Patching with OPatch.

4.2.3 Creating and Extending Oracle WebLogic Server Domains

You need to create and configure the Oracle WebLogic Server domain to accept ADF applications. If you do not already have a domain, you need to create one. If you already have a domain, you must extend the domain before it can run ADF applications.

If you are using Managed Servers to run your applications, you may need to configure your Managed Server. For more information about configuring a Managed Server on Oracle WebLogic Server, see Creating WebLogic Domains Using the Configuration Wizard.

If you are setting up Managed Servers for ADF where the Managed Servers are on the same host as the Administration Server, follow the instructions described in this section.

If you are setting up to deploy to Managed Servers that are on a different host than the Administration Server, perform the additional steps described in Section 4.2.3.3.

4.2.3.1 Creating an Oracle WebLogic Server Domain for Oracle ADF

It may be helpful to have an understanding of the options that are available to you when you create a WebLogic Server domain for Oracle ADF. For more information, see Section 4.2.

To create a new Oracle WebLogic Server domain:

  1. Start the Oracle Fusion Middleware Configuration wizard as described in the "Configuring Your WebLogic Domain" chapter of the Installing and Configuring the Oracle Fusion Middleware Infrastructure.

    Follow the directions as described in that guide but consider the following steps.

  2. In the Welcome page, select Create a New Domain and click Next.

  3. In the Templates page, select Create Domain Using Product Templates.

    The option Basic WebLogic Server Domain - 12.1.2.0 [wlserver] is already selected.

    Select Oracle JRF - 12.1.2.0 [oracle_common]. If you are using Oracle Web Services, select Oracle WSM Policy Manager 12.1.2.0 [oracle_common] and click Next.

  4. Continue to follow the directions in Installing and Configuring the Oracle Fusion Middleware Infrastructure.

4.2.3.2 Extending the Oracle WebLogic Server Domain for Oracle ADF

It may be helpful to have an understanding of the options that are available to you when you extend the WebLogic Server domain for Oracle ADF. For more information, see Section 4.2.

You will need to ate an Oracle WebLogic Server domain with the ADF runtime installed.

To extend an Oracle WebLogic Server domain for ADF:

  1. Start the Oracle Fusion Middleware Configuration wizard as described in the "Configuring Your WebLogic Domain" chapter of the Installing and Configuring the Oracle Fusion Middleware Infrastructure.

    Follow the directions as described in that guide but consider the following steps.

  2. In the Welcome page, select Update an existing domain.

  3. Select the location of the domain you want to update for Oracle ADF, and click Next.

  4. In the Templates page, select Update Domain Using Product Templates.

    The option Basic WebLogic Server Domain - 12.1.2.0 [wlserver] is already selected.

    Select Oracle JRF - 12.1.2.0 [oracle_common]. If you are using Oracle Web Services, select Oracle WSM Policy Manager 12.1.2.0 [oracle_common] and click Next.

  5. Continue to follow the directions in Installing and Configuring the Oracle Fusion Middleware Infrastructure.

This configures the rest of the runtime .jar files using the manifest file.


Note:

Your application's EAR file must have a weblogic-application.xml file containing a reference to the adf.oracle.domain shared library.


You can now start Oracle WebLogic Server by running the command-line script ORACLE_HOME\user_projects\domains\domain_name\bin\startWebLogic.cmd, and you can stop the server using the stopWebLogic.cmd script in the same directory. For Linux platforms, use \bin\startWebLogic.sh and stopWebLogic.sh respectively.

Access the Oracle WebLogic Server Administration Console using the URL http://localhost:7001/console.

4.2.3.3 Setting Up Remote WebLogic Managed Servers for Oracle ADF

If the WebLogic Managed Servers are on a different host than the Administration Server, you need to perform additional steps.

You will need to set up Managed Servers for Oracle ADF on the host with the Administration Server, pack the JRF template, copy it to the remote host, and unpack the template.

It may be helpful to have an understanding of the options that are available to you when you create remote WebLogic Managed Servers for Oracle ADF. For more information, see Section 4.2.

For more information about using pack and unpack commands to set up managed servers, see Creating Templates and Domains Using the Pack and Unpack Commands.

You will need to complete this task:

  1. Set up Managed Servers for Oracle ADF on the host with the Administration Server.

  2. Pack the JRF template.

  3. Copy the template to the remote host.

  4. Unpack the template

To set up remote Managed Servers for Oracle ADF:

  1. Use the Oracle Installer for JDeveloper to install Oracle WebLogic Server installations on both the local and remote hosts, if not already installed. If you are not installing JDeveloper Studio, you need to select the Application Development Framework Runtime option in the installer. The local host is the host with the Administration Server.

    Or, if there are existing Weblogic Server installations, use the Oracle Installer for JDeveloper to install the ADF runtime into the WebLogic Server installations on both hosts by selecting the Application Development Framework Runtime option. For more information on installation, see Section 4.2.1.

  2. Run the Oracle Fusion Middleware Configuration Wizard to create a new Oracle WebLogic Server domain. In the wizard, select the Oracle JRF option, as described in Section 4.2.3.1.

  3. On the local host, run the Oracle Fusion Middleware Configuration Wizard to create Managed Servers.

  4. On the local host, start the Administration Server and the Managed Server.

    For example,

    cd ORACLE_HOME/user_projects/domain/base_domain/bin
    ./startWeblogic.sh
    ./startManagedWebLogic.sh ManagedServer_1 http://localhost:7001
    
    
  5. On the local host, pack the Managed Server configuration information into a JAR and then copy the JAR to the remote host. This JAR contains the JRF template information.

    For example,

    cd ORACLE_HOME/oracle_home/common/bin
    
    ./pack.sh -managed=true -domain=../../../user_projects/domains/base_domain
         -template=../../../base_domain_managed.jar -template_name=
         "Base Managed Server Domain"
    
    cp ../../../base_domain_managed.jar remote_machine_ORACLE_HOME/
    
  6. On the remote host, unpack the Managed Server configuration JAR.

    For example,

    cd ORACLE_HOME/oracle_common/common/bin
    ./unpack.sh -domain=../../../user_projects/domains/base_domain
             -template=../../../base_domain_managed.jar
    

    If the Managed Server was created after the domain was, you must delete the entire domain configuration directory of the Managed Server before running unpack.

  7. On the remote host, start the Node Manager.

    For example,

    cd ORACLE_HOME/wlserver_10.3/server/bin
    ./startNodeManager.sh
    
  8. On the remote host, if the Managed Server was not created with the JRF template applied, run the applyJRF WLST command to extend the Managed Server with the JRF template.

    Also, if the Managed Server was created after the domain was, you must delete the entire domain configuration directory of the Managed Server before running applyJRF.

  9. On the both hosts, start the Managed Servers.

    For example,

    cd ORACLE_HOME/user_projects/domains/base_domain/bin./startManagedWebLogic.sh ManagedServer_2 http://<adminServerHost>:7001
    

4.2.4 Creating a JDBC Data Source for Oracle WebLogic Server

Use the Oracle WebLogic Server Administration Console to set up a JDBC data source in the WebLogic Server instance for your applications.

It may be helpful to have an understanding of the options that are available to you when you create a JDBC data source. For more information, see Section 4.2.

To configure Oracle WebLogic Server for a JDBC data source:

  1. Start Oracle WebLogic Server (if not already started) by choosing Oracle Fusion Middleware > User Projects > Domain > Start Admin Server for WebLogic Server Domain from the Windows Start menu.

    For Linux, log in as the root user and navigate to:

    <ORACLE_HOME>/user_projects/domains/MYSOADomain/bin
    

    Run the following command:

    ./startWebLogic.sh
    

    Or, from the Application Server Navigator, right-click an Oracle WebLogic Server instance and choose Launch Admin Console.

  2. Start the Oracle WebLogic Server Administration Console by choosing Oracle Fusion Middleware > User Projects > Domain > Admin Server Console from the Windows Start menu.

  3. Log in to the Oracle WebLogic Server Administration Console.

  4. In the WebLogic Server Administration Console page, select JDBC > Data Sources.

  5. Click New.

  6. In the JDBC Data Source Properties page:

    • In the Name field, enter the name of the JDBC data source.

    • In the JNDI field, enter the name of the connection in the form jdbc/connection DS.

    • For the Database Type, select Oracle.

    • For the Database Driver, select Oracle Driver (thin), and click Next.

  7. In the Transactions Options page, accept the default options and click Next.

  8. In the Connection Properties page:

    • For Database Name, enter the Oracle SID. For example, orcl.

    • For Host Name, enter the machine name of the database.

    • Enter the port number used to access the database.

    • Enter the user name and password for the database and click Next.

  9. In the Test Database Connection page, click Test Configuration to test the connection.

  10. In the Select Targets page, select the server for which the JDBC data source is to be deployed.

  11. Click Finish.

Once the data source has been created in Oracle WebLogic Server, it can be used by an application module.

4.3 Deploying Using Oracle Enterprise Manager Fusion Middleware Control

You can use Oracle Enterprise Manager Fusion Middleware Control to deploy the EAR file created in JDeveloper. Fusion Middleware Control is a Web browser-based, graphical user interface that you can use to monitor and administer a farm. For more information about deploying using Fusion Middleware Control, see Administering Oracle Fusion Middleware.

4.4 Deploying Using Scripting Commands

Applications or modules can be deployed from JDeveloper without starting the JDeveloper IDE. You can run WLST commands from the command line or sequence them in scripts to run as a batch.

Before deploying from the command line, there must be deployment profiles for the application (EAR) or project (JAR or WAR). JDeveloper creates these deployment profiles automatically for certain types of applications, but before using commands for deployment, it is important to verify that the deployment profile(s) exist. To verify that the profiles exist, choose the Deployment node from either the Application Properties or Project Properties dialogs in JDeveloper. For more information about deployment profiles, see Developing Fusion Web Applications with Oracle Application Development Framework.

JDeveloper can also be used to deploy an application's EAR, WAR, or JAR files. The same scripts that are used for deployment via a command line are also used to deploy via JDeveloper, but JDeveloper creates the syntax and provides a user interface for the deployment.

There are specific WLST commands (WebLogic) for working with ADF applications. For a list of these commands, see Chapter 6, "WLST Command Reference for ADF Applications."

For more information about using WLST scripts, see the WLST Command Reference for WebLogic Server.

4.5 Deploying Using Scripts and Ant

You can deploy the application using commands and scripts. You create a script to deploy the application using the ojdeploy command and use the ojaudit command to audit projects, workspaces, or source files of the application. You can also set up the script to run automatically, for instance, whenever a developer checks in new changes.

ojdeploy scripts and Ant scripts can be used together or separately:

  1. Create an ojdeploy script to compile, package, and deploy the application.

  2. Create an ojdeploy script to compile and package the application. Then use an Ant script (such as WLDeploy) to deploy the application.

  3. Create an Ant script to compile, package, and deploy the application. The Ant does not need to use ojdeploy.

For more information about the ojdeploy and ojaudit commands, see the JDeveloper online help.

You can deploy to most application servers from JDeveloper, or use tools provided by the application server vendor. You may also use Ant to package and deploy applications. The build.xml file, which contains the deployment commands for Ant, may vary depending on the target application server.

For deployment to other application servers, see the application server's documentation. If your application server does not provide specific Ant tasks, you may be able to use generic Ant tasks. For example, the generic ear task creates an EAR file for you.

For information about Ant, see http://ant.apache.org.

4.6 Deploying Using the Application Server Administration Tool

For WebLogic, you can use the Oracle WebLogic Server Administration Console to deploy the EAR file created in JDeveloper. For more information, see Deploying Applications to Oracle WebLogic Server.

PKv o@|;|PKN4zDOEBPS/partpage1.htm  Understanding Oracle ADF

Part I

Understanding Oracle ADF

Part I contains the following chapters:

PK PKN4zDOEBPS/whatsnew_adfag.htmf What's New in This Guide

What's New in This Guide

The following topics introduce the new and changed features of Oracle JDeveloper and Oracle Application Development Framework (Oracle ADF) and other significant changes, which are described in this guide. This document is the new edition of the document formerly titled Oracle Fusion Middleware Administrator's Guide for Oracle Application Development Framework.

New and Changed Features for Release 12c (12.1.2)

Oracle Fusion Middleware Release 12c (12.1.2) of Oracle JDeveloper and Oracle Application Development Framework (Oracle ADF) includes the following new and changed development features, which are described in this guide.

Other Significant Changes in this Document for Release 12c (12.1.2)

For Release 12c (12.1.2), this document has been updated in several ways. Following are the sections that have been added or changed.

PKX΀5k f PKN4zDOEBPS/preface.htmr# Preface

Preface

Welcome to Administering Oracle ADF Applications.

Audience

This document is intended for system administrators who need to deploy, manage, monitor, and configure Oracle ADF applications using the Oracle Application Development Framework (Oracle ADF).

Documentation Accessibility

For information about Oracle's commitment to accessibility, visit the Oracle Accessibility Program website at http://www.oracle.com/pls/topic/lookup?ctx=acc&id=docacc.

Access to Oracle Support

Oracle customers have access to electronic support through My Oracle Support. For information, visit http://www.oracle.com/pls/topic/lookup?ctx=acc&id=info or visit http://www.oracle.com/pls/topic/lookup?ctx=acc&id=trs if you are hearing impaired.

Related Documents

For more information, see the following documents:

Developing Fusion Web Applications with Oracle Application Development Framework

Administering Oracle Fusion Middleware

Developing Web User Interfaces with Oracle ADF Faces

Developing Applications with Oracle ADF Desktop Integration

Securing Applications with Oracle Platform Security Services

WLST Command Reference for WebLogic Server

High Availability Guide

Planning an Installation of Oracle Fusion Middleware

Installing and Configuring the Oracle Fusion Middleware Infrastructure

Installing Oracle JDeveloper

Creating WebLogic Domains Using the Configuration Wizard

Creating Templates and Domains Using the Pack and Unpack Commands

Patching with OPatch

Creating Schemas with the Repository Creation Utility

Deploying Applications to Oracle WebLogic Server

Oracle JDeveloper 11g Online Help

Oracle JDeveloper 11g Release Notes, included with your JDeveloper 11g installation, and on Oracle Technology Network

Oracle Fusion Middleware Java API Reference for Oracle ADF Model

Oracle Fusion Middleware Java API Reference for Oracle ADF Controller

Oracle Fusion Middleware Java API Reference for Oracle ADF Lifecycle

Oracle Fusion Middleware Java API Reference for Oracle ADF Faces

Oracle Fusion Middleware JavaScript API Reference for Oracle ADF Faces

Oracle Fusion Middleware Java API Reference for Oracle ADF Data Visualization Components

Oracle Fusion Middleware Java API Reference for Oracle ADF Share

Oracle Fusion Middleware Java API Reference for Oracle ADF Business Components Browser

Oracle Fusion Middleware Java API Reference for Oracle Generic Domains

Oracle Fusion Middleware interMedia Domains Java API Reference for Oracle ADF Business Components

Oracle Fusion Middleware Java API Reference for Oracle Metadata Service (MDS)

Conventions

The following text conventions are used in this document:

ConventionMeaning

boldface

Boldface type indicates graphical user interface elements associated with an action, or terms defined in text or the glossary.

italic

Italic type indicates book titles, emphasis, or placeholder variables for which you supply particular values.

monospace

Monospace type indicates commands within a paragraph, URLs, code in examples, text that appears on the screen, or text that you enter.


PK'w#r#PKN4zD"OEBPS/img/metadata_tampercheck.pngs쌉PNG  IHDREYP pHYs+ IDATxy|Uss@,jPdUٔ*Pu]^EV[hb_[[[QրREAd,ݗ3?&&3g{s3g3̜93gVeۑ(A݂\?|fS'P*G#*Z}Uw/stl_s:TI(syf# !E%Jq߼+x-#>pUU*@Q-q5Pt^*wV'>tpڞLjK"oFo|{P׬YӿJͻA[&*--`xo4ͽtZL$+ǁ`f,+d7O9rvIn OQs]%OWiZjV|/+_ʤ%eNxu+'k?Zd" ^-kf\{w5X GϦ O7E)7_{њۓۚEhZz2O&Җ=|w)Ǐej(j%vd]|wc잗\x}՞W_}Wޓ+w2K ^-2«D{I^$VdCdҊjO~N ReѮB8 5ԱY`~_ ^,:ڲeIuu-{MA@}}Aѻ%uL-Dġ'/]y.yK{ZIfX={Owބ).YPսrߤa4Qvɑ#G \ZḫnEQM>x}o^~Ʌ]RVf['m9y@8˖-0a_}AvhZ?A_KBCkmnnmon=v %xlFmL,z)+دEʟ} =YWWgE\q &pcv>NM.nJ_j()ߢ,Zے$v:w጑ /-|Kg_n:BH`&#?x\pyޓC ;w%X`z`^B *** i6JȉLO8&@An|EڃGE$8i`:r[*!J(bq>VݻwABp8L%v kfo$ۜ͢s(Ԥ=N&:,L⥗`qro{b:ZsI2Z.L;P(DIMgP8`q|3űfG {ߓؚ˻^5 ythCh }&C.u"ϼŋӉ.IJZ5Cm3y9V|BF6VFag%x}b{Ry|r:P63%Awޓz+So=hc~ZXeq2JBͯ6Vy˷ }3VKZގ&6Əi@XKƤG^SEvqkI'ր/;M ,blKr5mO~b-\ZlkGEe4f: kկc)o|bSe0v@ћk~ LQ؄^65Wax}{8dfIgԆ_UU5Lvͭ ׯ?}Wly9oiy( Y^o{Z6:-*fUTjYpp8E@SSwϤjwڵknחZZZnAII :֖/=/z.l^+U{2'B۴\oNȷ#G*LWwe\;\6m gHoCu1M}ٽ?9DP>oltg*΍)ںGt_qA]m:_~??{3+[Ggv=v<vFh NM mOmdT>;ϸnC\gt3r=}Rz쩪C o' !RܲˇѯЗY"&ua_7K 477ˑc1uno?+T!fʽr'7JzwyQU:`DV%%%C 9[N&M6ګk[}.alj KsדZwΝ;@l BuvbkwcV@nbc$ ]vǼ|Uc ̣E֭[u)..N&tV[NE ˖ޒrL[AG"OD"d۩)/ Y"?[U^<2%;Bƕr2-B@yK>żzt67֧mjqg2|=R*>Pش0zg襼XG>);3,Wni;3L@hXS76; \6Td&Wz 2k5d.z:14n۱}#.3Y?y*Y`s۳$khXCi {&mE48:(mV| tKÙ|$n =ׇo+^0 CJ5Q=-mRHj;ޖ9X~_jժQ:ze[omփE(o]VIr2m~h k۶m kB%s~1;jE},d*XQ aizg08pq7V~ܸ\۷oyݷUem].Ѐ3H{M5ԼYV4Ge@˖-[zXw|@E֙/V嬳Ϊ%sO/fIݞ9sc;.nokdڴ_Xw\Zzbf+Dį_sK!Ę` @# ZܻaAE'ݎwxAtzFVRSS7A5aۓ_ 80jn2}'oΝK g/bz67K>i-g=z_nĉ<ӻQvy]xD]lwK,>}zBr˚5kFiͭwacFc1iS7?+Q0ygɤ:JKKG8.GAc,6Ueevy&gRYyH#sƛ]Ǚpً GS,i2 rmI@(D"Qh7͐NJ-P(0v ~6,QLo밑9+[Mgۻ?^N7$&ÀL~Q$Z: 6e|>ѫLN<@[AhnӚnʔViY9}BJ WKOl>0ÌԌ5eswsŴ礲~6E5i6^9<҆ ݭFmi9Tv}RaB-#:\\{n} Ѵ4V+#p 2 ԙ4i.aχ+ q NgřWyfh%wM]=O>1Ƈ6 )/?@ezZsŔ}w3z/u&3Oxԝ<$9rŋ^Cgu)Ē>qU5˗/rjjj^x_^TlvZ ¯Yia~OKMi-tv߿Ё SD RkEA@vYy^S=MvP w̳ yu#ѣ0;nj|k.m(zҜ97KҴ+rA•&xg8ymL4UE?`'&.^ظJA?~l->e>&P^xK.1vbSЮd .Uc|X~Bf(B,Wʍ#Ld!ef b^X/L0wMG(B~6xz7j@0ff{V1@,ܠ2[5 X߶l`+&|s<7K`vm8Е[7:z:Gbǩ3tIm!LϷDW?z,tW4+zLR?o#3-^:Cf2mCڊisPk(SdxTf̘lN}`xRb1)_jE]Jd7D}N4KSVZJONt5y]v 6 n6`;e6ޥ M0ӻ݉Jf8 Aaji%ML=A=N 6[7dذd2q=O?[aߓ5۷ogfmۘZR;wׯ*G"ߟR$UmGsBSYYip׫Z⊚w5w3 !$ِF5W?U`|{)}מ{4঱UFj<v6$n[Eͼ3ᗺd~v,IҡFB9솲p6f[po8{wdc*vdȐL#Ættv2EoQnQ`*#@'ڕEwY:]黤pW6sݹC H.ʹX?`C5d!Ik1a7/ٳaA1iAŷqbޣ -܎ ھH 4(k5AP q CHNLBuZ6gΜ<.*dJaDIxAuӾ_GQp@0XJy rՌ[JKK \!DANI+ihFYUUr766Zq ĕ***ֆTU7 h4u|([GNTј׊Di(;YCoXP3HPU‚X)xv0CPU-pDUU˄Sjp7D/˴"9w#, L#13MWN&@yyY6sP(Q9#G-w]v?Su*-L1!uw2<[r!:2bq$Ry&v[9KGVݕsأPlv,v~]E֔|DHK ||fZ1A*qd˟͎Gh_Nu-Y=͈G$m?.*hl kGl1;G]z# BzXvо鱎~7FMMcNzs ߈Xy+/2kQs}n /e1&wKO󴦦FGS IDATMg.'@}D ȇiͰ˖,@cs;-fвbzьY(O[ 㰥Qe˚-TKPJO,E dySljhj&KILלbRST挘90 gѦnH항yx_g|Q3*&H0m\`bJVdx4Y ӻ-}| ?wyYC>"ybfWqLG6r1 +{?4H&qGM<*ARyU ksz,4SRHR^3]f`Rc`!3,xПcj``.5n&YnZxyl1"9{~ ⻝UMˌG]5H~sxi&[J3Rzhe^DNn﬊ Õ ׷&e_2鿕i5]!cA --ac3@(\{_e+ȟ.z&S 揻8Y^3Db'G{Ap .'+9E-XxqoP֣Jn zGOp=s 8c}e^dfҾ'@S+V8]TAs@A/,,}2Xww;;^pV(Hck6YIcҔi#Kͻƿ֙^OZQ0FxhѶyw=I҈N*!rBn6+Bﮦ5=;?:C0k𫯾̠ǻĻU̾% ?Br)A^YfnpE=SGDPRp+~p/{8å* |)[ꙍoe4Ӏ4?< +dpi*܊wCy#A|f S78h# u/ I퉅Kmz@;Z Q7,!~%w{YK.syКB驉AT6Q%Af˗˖}~#U{rfgu㿾G@;70gyd׋lcQO"RnMbO|9 G~SڀYGN:!#L z_B3$W/F&*!>NB>mYbk6?@7.1gi3g̵ {ZL)(7pCvg̘k!~1ʗsqZ 1.εpSO=P;E)IUPBJKJBH'gǏ 6dQBee%ulף25+p%_Y!bK+ޣ~=p+IW٘uNrúuC P8uLjSTk+h4iPlO*زe 0K*Z644P{zɜ^-ce dr_>PYY)[j != bR{_740Ǘ{`X_2nxg<} 9֌87jva:n(I%P׷W *䤤PۿmY3{H|gyGO;ݻw7bHIhI'dt9PT>L"UOC}6Y3)wiepf0p#ӣKGe;v, hhܵ[bfϾFk75SzvP:wl2aˏ \Xp͂~uZzdɒ[^:7A2ޥV̪U2yy+}^ۼy(֭['|rgW"mq0L<B10ܾwҳgT*b={f,i oB~8+z鞗K۷O>oSN9% K|w.BYĉ.̝u!|nBNKǏNuJ͚q`0Jq=:r\  V9v9;[~OoJZ<yNKKK%Kf.G'i˔x@ѡZѼ,)  XUUwZ:ɰl$©.= ڣP彎[by=HFHV3,cN+1 3ሿk}ZB_ /U& 6f2I- )0wAbGVM҄}ф[:¦KBE}Y2}mަK 5~N+ l4B# .saUU !T8AKGrSh,VpŅՠ&|9 yįTG"EQ`KK d#%cTNCl@H,Z HRY/j ߾Oˡ*ow@ֹS㱰yC`cdJH:RUnlj3RsGj_Κۼ+j{D1d:IBX,ڲwF_ );Arȅgu\ 1]ӷO@$Nk!$m ֙|eW6%0䲑mxQi @ A9餒ֽ/?K4[~{iG-}qW߸plޙ̍GRĮ-5:Pӫ Xuy'$$ 5rٗ?1EX!eg7`]ɕ(@?A UݺuPÉRQ^z1XuNZ7) :. ;u*ق&El."lO#G*tqp8lEF#xNTTTd=ttkP(d02VAv1c,EQSk̂J'O߽cNy莛B!Z(UzE<9Xx`d+iseD%MC/$,^0z @DۨvSy\Q~4LX : ! +o̒4@!VPU L>L; < '2GQ]i-c555"ȣrQQBIkh体!H@e ȑ#Gq,:z-Rj*Ec4 2c"ܼ~p<$@=w`n@*(o8@+Nk_U5557+ʳfEy3&f} ph=媶g.`C|y^*.gEw܌n4m?J s + AxgBzI"+.K0tr<̅ Cvivi "~mٲ%G H"tŵ+ݻ: !Hitpb 7$C% A2A6hAcf/DKXҲNGX]]]6C:2 `{fH_|ǽ-f|31 p!>%R]6T*/2y)hd2I]erXy+9+hӒ!AUfq*RK\ZZJmUUڐ-xqq1 K^2e"K9z.yq TUUQCccxۣCOE52FzfGVe 3qhJ + e ;fhS4c9ʂhL#L_V Xb J2VTPT3@y'Jf޸0P6d(zڎD"HYU^k@'KMdgfv)+ .~ɖLVՋwCz#šp`c#.ԋq21v߬I}^ïDFm?Bn>;<1XVO[ͅ:82Q[Eۡ% 1un ej3Y 'lte &bdQl~TCK(7ԷbzQg/YrA@Ek'hVD޹!CFۡW_V*-FwpFa%dSW% yjT_>}3t(ץr!YwG!z@?-M ̱IA" Gbpcj3_%H$ /zf.M|3?",Ibk=D:(+ki""]q3 /H n+3-2 `tVt`e4Chj/`Qޠ2z(nnd|1>݅^y^1ͽ 6k bPdM ^9ߤ@oEP%*w7P Y S`A 7v!wUϿu6`/̜22w|6n& GjjhL Xϯ<]}ՠ^CU6yK {24KlC\(cY z*Co"+^< pncF94DanlRp$s`(O#H;I`>aFF3Y1dfZ`hߍ+J1˘*ef/_oh,} elF_z$4 8(b6|xil煷7WvlmNPFG/me/B +;9ߝo&'=i]~X|3|p+'bXQ=+!j'53f> @,3xyMRm!4Gf kcR^_]4KocKCM4Kbp[}0[W[C|S4wL ܵwO8k}!q=wi(X̐ +c=ixz̙V){=hhhx'S|m6rȑ#3=iAh6F#xN MqϞ=zjh ρz'ZKkl:, dI45nggRfd-ׯ_opM}{ro V'k7 5&BA SP+[gϞ={65k֬Y2k3Ag!ChI5kg T`1C:**fU+*nW֭;s|>{ƍ73bt 64o&旿姟~:xM6]}ø!4d&C 01 0|pk׮=_yWY q=  /tW0]7o>3_d.6Hkߤelذag޼y3!d]52m }ɔ7|q\nk(Ξ=tf [ EPldɒ%KZ xUJ0cƌ\>uuu,q}hTBض hf/|`0?hm 5/|V`<bǓ/t=\OT;'i\0%s}) o4bx<^ZZRhES*_jȢHKZe |7nS4Fc| X9L[M<.rFD1ȕΙ0E"QB 1 # ~Oncssar!رc|hsq,| LF#xϖu*me ͺGA*@$?_(c̚w[̋pW0ȡ zS)w|6<-`p6H~yF LC,i +M-+ /|hei`pk%>H6}~!wcx3< A<k3A A$>q!$Nu"HsXBnY'9 ɔPN6M}NÑ}8Ǐ~_ Fo\t&QKsCA<x6s jY''X!(_ZAɔֽv6D潶-T++JrGDiS7G4h@, dNi0p%  l|oiH=_mCs Hůr F*%^:o{{eUY2G>djNTU%'R4I'ɓaYDrIYIQU@LYso1LMI$ұh+V|{MO?FHÑ0Ee. ɂLA/ɍT2m35kwdR_%\zdH2E7VTdꬳNY/38{k[`Q@z|53^h`c*GSyfG$뮤d  Z{ZmfE  Z%SH$JƸX,\NP!x bi XlLo}ot%Sᅶo)f)D}ot%4uv4@W R*k drl7qWF,-pso }Y'tkePi|wlȱ_s+9wwv|c=+R>+v.U;T*3j$Kv9Yka Ɔ]o=W;PNEPe}՗_p#gۄoGA-Yԩo50%U=*ztY HCqS}+wlo],6:LQ>]3Fvd뭱:CA| d6n:EP % .^'wl>⋙  k$Sj4UKABWznEgxdBIH# l„ x]3Eh K\=o\u$L۹K( *$Sa*O>ՠ"R)jV惰Z_O Vh ;LԵ5=?~匡#A/R!D| VRAd^ϊ h*A$׌k԰^|m|dP[һgр/W}z}_UBb{u_=S $P@Q{T\I[cQ3AeN{;َm?X^VֳGhRUt*JWe!!A#i{TuRQ\R EQT5>~,t nRx>ۻ9':# /tֵsEy%V@@) JX"ƼxЮAAD(UpjP(P\UF RtVA4hP&;b}#G̵  H+uuuVf߈  >!ث******ݵ~-: IgBճhg Wϋ^ H3fن!ȷ X Ah؛Pȕ@*4A"}J , ]ʦML_RXtSs=GQV-XֺgB#@z6فu|FA'O6R}vSM_VթS:GQ9bDg^l8;멭j#5vd;ܩܫ?H )$w;5%)?L n~r\{iWZb)43uu Y"řӺx|Z]sU?h]9@,\xi쯧pq@#!x ٴiSa^9w7ݻ{UdfϞ4{ڵk}HsMgS(t Y#A] ,1$HÕg" O(ͻ$# JJJۗE}A6 8rȆ Dvt򚒒ݻgy 5&G=zȎ6١3ABqa?bA9X! gHOeA 'όk,ZQ7c|'EALp3V9_rw_aM yjm-A̱7~&=Ԇ]w uuuK,ɵ +}zF!֟!Θ1cFUd 9o^prbUUs`. !g&AHR쒙 hFG>)3ll !R d!,j/_kXإ5SG,N4Ox?>ىoShPURV)ѻee [\= $͔h4&'>0)ԋT2%ÕKdKєo 9m\y WiV˴X,1A`*D/\{ &p#@eoW|e0M @ES0)?J3sfY_EwƔ= f]ebŸ9HDhfjk[0Nt:LU*v@44DNA$$(!C]\DXv- KM6b1|i&& n4w^+Тjb Jn3M"$Ԩŋ\gO{uNB8ybҝ;w>qݭX-e|j/M†#^p;^ ١GMM Ip8 dŭws !.}o]ST9˗/ϵ B^P0xKj`)@j5NFދ^J<i.մѳ4k\4Z&8)^ftP yp'y"|WRq]eXz.G/,etwAX049-Mz742mdB|W6jOnJZOv1~(<9>8zS+ ![^y";ZoVhk^if&1K{Ώ@Ɣm ۛW\%G%KXg ʣץƏo̙3JjwA" 4yl&4gc+YWW7h ަSNy瓭',++K$VE @ `Q 566pҤ9~7!x߿ZrTU#HWvLJ!HIxlN-TH\kvay" ~<=u QZXN55WVCGX @_3ܸ?r,7nVD+٘-70]X N?Pg5< Ԉ-lw@)nr%Vd%#,77 A*nb+㠭<6օ}M.ͫ:s_q@Lbb 44 /H"J)nP%AڮْngѤ0iժePfVh4j/L<#K~{=??Gusss{y{?)k 9GkRL3Y@E0~c> q^H<eiҤӔ1\2&6OW:/nk|$P!g7n_{}uk@(d2&MhxS7۵-jF ]M-#]T$a]JlBӨbJ_Sh곸f!hX܀b.íe[L=G}іK&M]{omW\{Yc=Hx{D}OڝgFcTqfdU+QH6o 0(gl~ߏZg)F2c&đ1'-Ɵ""""~WOZȲء?VOo/rI]`FHmh\{k;}> ,=o߾hL1!A (d5bҪSF%8}jv2S+|u){z/_vjNOөi:ϳO]}L&? Mg(%?E[d_Tia>~Ghi>g*6ΖEIU<@+?1Ҙk|y]E*VZC4 }no&W}CO<{qBdQG? Ï.-bhQ4A֢^Śc 0WN\:Dz>Dmthr֫"Jաgngv ѣGG]d WLFD 7d@_nx2]T=bAQƓVmI:X!5RzKI241Fos2RyѭjKR%9EӢG7"nĉ'NpD{1,84JO%\UڿJ2cL}>ݝHJ=2\PF.J חqv>ivF57~c> q^,(/D9~0 OTVTv[,៵Ř'Tn@tf?{TĚ˸wsa&Ĭ5HU9i=TxN W|` 2H 1dhl.25Gũ2s車JC Unx`PM$.r!^8rTDI%& ynMx%IB[ 琘6D4#bI5,q1<ga?4">^RO+RMT5?w~ܧnA2H]-KS)vͨN7`x> U24-}Sun&~S*se]1꨾ȗSQzk.:5Y?Y޹$g7yF/Vʍ3VH]TQ|,>Fzj:3Gs%ň1CX} 'WL$ ~Q}&>D髭u6%5tIhd|Ǣ]Ej7!,L17b$~0پs]*fQ@_zqӪzJD4DbO*׫:FegS6ݤ7JU####QkQKb P~v4YӲ4©TqΜ9DdYV.'{lVucmmmQk;FFF`p,ߋZp?ԍ'&'-* E%-2/i66/˶6Ωa,l99Ī -SS۶檰p~rA 40+kO麯Xtݴ,˴,떼޿y?mgg,Lط:u*MjTQyYo5lmm%"L<3t^I^TAJ)^aU%U- $E7shtQov&顣Re8WݙΜXs-ziR-- 0U۶Ϝ9:bŊaN!"1dK[v.ټBS*r˄"+~Rb.)"Z=ss೟F=h&3"2MK>UW|iU+K >eT0Dz@]]O31'-G*T,FjxRQ2!kXWW'/jI}NQIrg!)e5ٲ %?_rkC5#.5Gi$<5G=u+3XEDwcOJ{~ΜwYʹ,䪛޹ic>peB! ԁ`YּyTGGGGhҥ5:ŋ6C*5x[R2kT)e:C.,6&˲*֭\th 5͹ 餛9qt:"B'SFG Q z%C*EDvcONH]ȝJ 7t)j"ig>F.4 #37O??>̆#dxx8А#G,^8kZL[[ۧ~w88zMI@dOEލK*~}knj&2T*ej瞺:hܹщOOkOtoQ6g^v3>>뷎.lijjlfZAJu).fƿrew>q5ϪeYNP,}a,<̀h,"Wҩ8_]w} J*xͲ/Vza}c9{loZ!W-Lnvw@Wƈl 6` D3؏ϣmQs󏚛+)bY`oo/ROOPU5-c!l}l/O-{_.ZdΝMMM\^ޞN}ݞ /cx>&u֓'OQGGG*ݿOO;37nܨ_ HsOsǽOty;/#oi˗/NGZbŦM,YhѢpNJ {d$*^ǏK3۶W\988L\l^F$|$#{xϯwӳ -[&7=ȴmn~:[rz:ڕP+q;=ȁE̯Q8Dlj?Jg"\SgQ ,#ilAR_lLMMq=Nځ1I\,\˧Tu;~qSm!ZEKzUuxԏQFBO",@&5q&ޙJyFT̾ ÈZ 3(^L7 Vd2&;%tvvFoP`>@/y^HO‹/jb*=_CQ0EsIVO}WJ嫟v6IrADl. Lfj31嶵fgcudyۙ ScBKRqY>9u byK/XuNC}*9Oh10em'aTF5Hx>P0$7HxaDzPfU5IENDB`PKAssPKN4zD"OEBPS/img/mon_connectionsmbean.gifGIF87a 焄焄{֌cƥZZckks)11ckZZJB!!)BBB֭Ɣc{Bsk9{s)cR)ZRƜZZքBֽ֥ε޵1k{s֔kνέ9RZ1JBޭ9εJքZs{ss)))Z11ZZ1Z֜Z11{csֵcs1s)s{1ZZ9Z9Z1Zν9c1Δ{ZsRsZ{1Z֭s919s΄޽BBB{Z{{{֔{ZBRsֵZRޜ9Z{Z)RZ{ޔZ9B{9ZZR91Bs{ZZkZ!c!Bk1Jsc)ZΜ{sZ{9R)c1ZB{ZZ!Zk{RZΔk9ZZB{Jέ1֭)ksc9kcBksccBsZ)BƵ9ZR{{BJ)B1))Z{ƌccBތ֜RRk{{RJckk9ccBBBB99BBRR99!!11ZZccBB))!!JJkk9c999֌9ccss{{c!sƌc9cRRk{c{!s{9ss{){Z)k1BkBcR!!{ZBBcZε,H*\ȰÇ#JHŋ3jHǏ CIɓ(S\ɲ˒= f835ϟ@ JѣH*]ӧPJJ5&B>A4d ГٳhӪ]˶۷ ʝK]?BiOp˸ǐ#KL˘Vp-|f3^ͺװc˞mg5s A#Ig N㘝(A1B:%<ܹ6y%s۷Xi˟Os$3zkIG~*vxqV0 Yh@bUI.L($^vdc7P4ƀtvgaaa30ɄYF#eX 7䢏 L6҉=#$5\\WfGWD8wsE(R RB"M\)Hu>sm"DvcډtyY&  Ad6F㏠b$zC 3TCχSLQ78i뭸eCٟG0_.\~ I 9QHj7]tɧ,tFj%~~"ƻ{BaL  *D!p>p.Ȥ^n`H㺫Vg.G~h~'sp$Ip.'OTyퟌɢa",Fz怈0eyf gX7Q»0*=@P a- 7/lyLi4K+ҸGфv vf74#S4qhH]%5EYǞTaްɼw HB a X s7qu3|] NARW۵8TQ^l¿fX` 7zS >60UHg>Q <` "#T4vKZ 0N.d9 $A\(aJa83L }P %픴GZ`I &Wb&0Ü>!Y 1Xp @YU L> ai j $ !T+f舛(eF8ᤄę&^yE)D0x F'.4):q[,I0o^i+ bzKF i`E0a;s^ԎQ;Z^[z ? &L@>P0͓Kw9,:'Ly+țW:X-(zk?Z>G\ @ nF;~a*Y\P< *"| Q{(@7+ O ^ =WxĢ0)%A t`9(p{''jRsWEz`z({B%#a[ QF4Ft-FWyKxNyFy"Xy0Og,+t${Ҁ€TL1KW\0H0~pmm77 Vpk0 R K`?Tn\#g p dXf hx Ih]0nnh r8r 1cB-\B:eU )8HMz?Hz;'.xVyRBx KٔDXEWB^eRP\@qR1Otp( J@_HD9G9ޠ2ǙIȏ @ i 0@m2vz&^@cyЛ!Q))  xZIR׹gtuO7ӗ6e @ɂCE93~(yP(HPtw-77疭Kr㘠 tbi JF,_Y{)^\hn0T`HP` y@ddVd1 L E<+Z[

$ƨr jZx7qag' ux|ivo%7eWqg6) k1 P.n;N(FN0x%EJj< |HDyʥZȎ ȦхI'Ky̐☲ G*D C˳@~!p: Ƞ:3[En{ڨ鱐ɩ*CWcƊ嫎 ~UWЛc\ĺgUqGs z9KäxC-]7WIiCay{-lǮ{f* 8DTKsQ.':(jȘRQ%z P`1 a u∳VP+|Z6Kȿ<)c\` 鈚!9/*˙ J-jJ<VEόpq T7,݀Л-Rc3&9Dя{9i!M# Pҏ}׽ZJC,r2-F0Е-sjw{AEvcre#$! PWDFR L  K'<//.lm0* -@ LN םeL pmZ--݌е ]^` @%0z&YuZHj} IH0mDPbT^ mTMK,LD]J˴\+޿ Z Z A+ G.] 0 MPΨҙTW^6 bη}U ӎlo+)jA%w+A ߸JA>nQD-Vd*T<~鱁%MDRJ-]SL5mY$ t2VsDTR <*^E @֧$~VXe͞]ɀZm٢W\uśW^}X`… FXbƍ?Ydʕ-_ƜYfΝ==xhҥMFZj֭][lڵmƝ[n޽}\pō'Zr͝?]tխ_Ǟ]vݽ^x͟G^zݿ_|ǟ_~0@$@D0AdA0B 'B /0C 7ÊH@ E4%I\ʋhUqHWK`Cw,EQ(Q)athH) jr'yJHBD- qʓ,2&QD&L`H$qK53Ι|X DR)A &X#LSO $QF@ߜ3_MA|H=+=NNH-!Q,GDR)LGX}TV5T=\PthX-4CYETtF_5(pRW44lg5E]m6dLpvR@EvoGv])ZVHgӈxD$ -`#XdO-TD$LɝHE X]W܍h-tl`[QDQed"_swDa{!Y2igv^qlM&vbDžhWsyM3Ȩ؂TWh^cަ9oإ}U]"դWE(R95[P <KG!jOj:e\pvK\mlX-ߤ.Sqsb؈]vF7<ЩaMT%>WV3qWWYc'U|\]rwZ':c~=-Α_qSH4r]wU"K0B157_48PzD-kX@~mbWTpv+Lr^ 0c8@%!i #43U nЉ tvD ~ɡju#$iGf|^(62 IQ$f# jSRժ( E":BdD3ES1=2<%4e*U!ҕL`9KZ:e.uK^җf09LbӘDf2Lf6әτf49MjVӚf6MnEf8]Mq,'9Aΐa g9ϙsB\6Հ3 @ 9' @ XhO 4Jp œd%PN '5 Ke:SǢeB* F@<Cb2iIT*KsSpX! u@C1 `x*Lz`/ \@ "4H`<@Hp%1! a.^-"X XDa;rd7aՄ8 @V0- A @m*0Ԑח"i$JXpUp-d Z]я2bLH)ZߍIlFm]r/CZ_x+ǾG Ίxv/[Ћ6@ +v;o`Da0 ,0Ҕ vAPV+%uqMO2Q/1JI/*T1$qt1Ѿ3*rZbE<@p ]pjMKzX@*Ǻ{틻"JZqDɓ0  ȓg,޼iD>I@A=pD_J B bɚ'f`00H#Oz`ғ lUdQTռ vw" f*Z, j="28IdE N_67q}޲ $mG="e[ܟmGMU7'C 8Jҋ@7 U Q r])`e,-ZQ%g9++`KNDg+L$y"8;ݭN.n)Z2`j,Q kF:W8pNNmw{=;Jk_z44^bI*P!@ *yJ0](is}H7s|:i=4|f #sҏ.t kt$ Zp+rNZD{lco?g"3;$=kt/y_] /ks6 c?~?P>) ^B@\/  8 X=s=h3)Ip( H=i>9#>(ݩ,[" aK%Ĕ'>F"2ޓ! T":$;J*̚sB7$$?C:2D5Rna!l4e+}(YDWF@F|H8tC%Z()NEd]8*MJ>1#MDUYNHөNJED-@A E"[!t1>,-5+ X`x8"=$]RP x  @` (A,z:u&01#“EBA#L  Z5PA 78UMjSG2 K˼!x*cRT]Q#O" r[ ) 鳨Q)qbݔ **w$uKIöJ'(#ͤCBgS ] d!x& Xc]=^$^bBJ^,3%e![e`$`O`6 &nZvd:%;61*`EP\[="hT~-_$#VcM`+$+EfQq]en^X^%N\PZVgeHh6hHL pHx$hhhQ h)h i,N6ihh0&iÍ iEieۊ*5g'gtfcm!"NN3f^me&36\UgY.wFXk#yvc{}h>X莆i 8OY&ʾhl6ʖi ni7nmh^iijj]U{H8gCNZ_c[-aMblL)S>nnWn^beTRe]0C hlFxm88^$o~8?^NV vlǵp ھp3;덺[^5e$K-^6d]q$n'/ewf_ﯦ v½0,؀v\psjj@ܱܽ`Q#qcsFd#69:ot_%`Tf)?[ ؀Ou ,i ,@NW_YlHs^c^`ac΋heogguuu_vШvmptjsm6juw4myww x~Gxi{?8Ox 'ZxǢ`|w^/%l'Z|/} j'7Gzm-؟OY\ n,2o1Wu (8{(wwX~GzV G{f6ho9 g hO{Uߋq}w= X٧ڷ}j)ٿw*ua\Ł8pȀu _ @@~ ֗*7|Ww}Zh{x(^ 2,(h„-Dp(C%  9J`ЀMt¢D) >H$)vi ($xK5rDJ2KbX"OFm@9ŽJrWb"(kٳJ, -ܸrE [/.l0bf nȒ'St7s3$hlw\G P"Bp RbR (&@PO&\qRH,}'>xsě0wjo/ Ox%}k]ye_x uWu,YJb w!^8K m5Av"mAH)d r'u V1d]{JTL=B܋x#K2Tp.@{=Ҹ~V^ieKlY%e1Ufy&i&m9'uI'`'P Ő'Ɩ"N8B-ҏEB9) 5($DAݤmS`z" эFiIUiU%raߖb+8w{,hԃ:,6,E@O0<0`ph * :ͅd "t+NV仏6/Rb`Z\}g-A@1qӖ-!YR 5Ԁϒ<11C <@[.$!tb-F3bWnD)JU]ep|2+k (@ʐ\Po ]cBdAlEL2AaDŷqxY4ԁe8!bHR8k N'ץE"Be;ϷJjpБq%@v&XĢ;'\P Zd{㞮Do͎nARgr+ 3jal1}`?[_YuI9>8eIlr"73 ,S,77t4]Ȁ ! ?8 Mi4 fr)2:Jp'P$Az$x`3<@ #pT-\QFJ:>yff3v"P1&( _\CPE(qcBP+Ov{x kojW,q~ʠD&qtx@Ap Xr$Axas 91paC' 9KP&5iɿϔd&7HO2,e"d 2k46Pּf2Pfr3U+t3eS9vGpͨ4-V;G#cqg=qT!Eg1Tq˂(H:Γ(dD%Vt& Ʉ"n&zetG( &BED0Sr iF 9|*PPVjpխvYP^R.3g@6v͝w (=0䓍\+Ꙁs{ G7%}D Vp(BQ! b9eƒ+_Y"a5)+йLpO?ؒr*nsU*}ne:F,ߝ-yx, LK nH&yZ}m e Y ~3,燈T̊*]x,s}گ1J_?P9Mm3QB!i!B.,⽰20X@B*ꀂNipek te4G֜-a7Z3] 1{ܼme㳳3kS@C$-Z )ޝƗEulSS2}ot` 5  )\ .os̋[Vo:.4>0Y@:/?|o6;{>Sv<3?|YǒSէVZ. _JP`4p=x!;u 듯?a  Z@#/ctQÚ'9_WßX0!p8=@@l_y _WA`5 ,p\@ i`\<`@t liC4\4ʇQ``` X .!6>!FN!V^!fn!Ba0Z(!!!!z@c\ͰȠk̢ԆR$ mDGpHRL "MMENDTOJ"f S"6EOH"x|$Rl yT<#fa -"."ucxF nDw6s$  vPzH32bv,EL || `9E( p,pѢ>#?~T!cK ( \ cCRIȻ˭@d x&dHոc*jE,L,8a?$M\WL1c +B "LePd,HRh`JP>UDV>HFeg#MU[%\ƥ\%]֥]%^^%__W@8 ȡAPL eJvc΋S^ KN؎¸ʹ@ KL%HXT!X8LL_Ʀl&mfln n8B*μր@&,&0MEv԰hdpC$rffBf^GdK8MsZZ|nG~.Ƨ|'~ O*ϔ8gNOr,-O hގu6Łj0@T^jUzء*EBKBj|ɦcħ> **EBD:j( $AI6kݪ>%Y+0k$kkA+-JkjĨBh+}k5ƫE\"=A \+`O"@Îf" Vf@bVlöjLYki,B*R:ƀE ́(^k*kX+&ʬ՚ ǒR4k,HQ.kΦ)]mkZ<њE<զ2kz-͂kATm-ɒZGr-+ƭn (k&.m$Au=ZLYm܊"mmf..&nB]m 5n=ᣧJڂm.aj}n ײ}poVˊm>z/ԭjB}oTa$ֲ* 8,jIƯ_P`k/-.\ j:BDk0,/y(zKrEyY+ l+J.rp I6AlPmY-Ԣ p7` ! Ɓ@ @dp+~#"_gg,251>q&-.Vq~MA+1On^T2h@^AFC$P)Z"G(J!"<¢R܈Pn|bM$b{3)"Q2c33f$*%ol\&SpʒgqB2>@) kb "{c7u 4oM@Z$nG#8fFIB'K[9j>^=?=tIGElK@e4bנ[$QZtsGL#:% OO H;/A/JJ nI2/W; @BOM 1R dE|e@uW Sʫu4zo5\ [OT[*hgWwc76dI\fOHADm&gcO Q L5r xv@höa!6Ul lmf-m ; (= TSLQо \<́{K(;~c~||¯0w@)CcVdc # ~s|צwU=@I"9%(|p3p 1PgL# T$!P Lc _RdD RdiΛL%‘dHo9jUWfպkW_@ٲR"P- ,06ANBOW 4A)MЇg)#?oI^9gnkyMP}u&N.=uɁwC\ɻ!T =M8"tQnaQ36ɣ'΂C9='IļJEr&-ɹr!P )ʬbKCK.'S&*BΎclƦL9H -LⴿQS ɺňPɛ8 -KN8"@#L"">(LKL23ӌ(#‚7E$(# %ʄJ,rNBIO>R>4".}H%PQMUU.L)C jÛ+D&I$l!o_4mX>QX{%|\$WId뫻)J82LI,[-6Fr](<|{zoc) y :3^wNx%”:M,*۟႓Q `aFfT[E ZźmMkW"uY$5J1bU2ȊF!Q( 2r`ovhh_)q7:K9K1wܪʍ{cA3ӍSR])6mL'( ( *Z p!iTUϧRRK+}r~ugY}谄9bmF'#FL߃^,{_IM"jlrr|˒U M?7/+f@ < \O&w7HM{\-]HA]S<D  -sp Ȁ=(GݑJhĬK(!, `xXa"(d$ogmهlum-0}EN{̲=DYٚ@Egƾ) GE)a ᚓ@c\$\pNEsHHz1>m0$ c&N'>dJ2$-֐Z:T|0fG~Dt0Lb@A&O6ɎiIf2%y @-;@f1^:py1nVDpt1T ˨,5GRUiYzV*jѾT3UHl),]R1YSδ+) P <@swZW(l4g{VUtbx13B`M, YxFn(x ^ߟ͚= p7pp2Ufb4BFyf[3#Um?x'04 @ֺȇG{G6m${ ukp/M'ӡuOUzY3`x.~hVVKE%wX_{ʙq5^ؕWxxfv-V nǧ in;dysW嫞to;eG,F? `@ Yݪxz.*E4q{Ot3\S4*dssG'c}zODGg7U+z߲7џ~OY̟@6xnٌUnB/-{ʋ/U+όyN[ 7ΡZ$v"9-up:p,>{Bp+B0V&o3v&H؂2c@ v)^PC"BCepPCp-b0 c#P ppвHlh*~G Ԣ C40p14Z14/ c- a b ) ?Q P-b0@_0 pm5-â !bʈ"3QE "3hׂF `k/,qg5! lg LpBq  آ@-`bdLqqR!iQ qq"[Ch/* Ѣ/ZQ$ICG*z LGS$Cc$E*4:r-L&# %AF Yf7Gq'Z VPQq٢ib R QR'B-b`b C`-_Q2"8"p'3/ B- 2"%",2FƢ b"N'S9) l`1 0:63R'[5{1D4 0C35?34 CE3 *5D2g c,բBD--U+Y1 +0= @09 i7$-1p13[c ae5 ˆ1EP* uqX{Dc?= 4Fb$F@G&* F:S B55mg, e:1!p:S;= s QaeFFMFAq!uTpƀz92# cQS%YTQ,LhUeXf*h p h&JGkJsJE2KML= 4MD4YeBB4zDQ}E Q%-P:!7RUQ-F}t=35`6u^=G 4]`Fq0U-UO pHG ~eDD`XEKX)(,'625@\[ANBϔYYNavf-'ѣ\$Df TD1Lb\/~R,+y%j,B_ R06#2qj Ukb].‡2'X'J8`pAWuK7~ɜLmX+*4OXv5uVfb4[ PwAS3YSfɵ#gkVhjNOtDti_ PrK*Ks1 .e0+N ƖQ66 e%=3_n00`Z+`)dB 垔Ř6w*BP,W0d"y/#oBgt&K%)IR&18ITD'Jwô6ˆ$wq5N؄E%QJxGUwytr !v /,(`b {EoYZ퓿ΛwmeerD+^䛟RKBƾrNۻ0J"?,kL(gLE;(ip Lu7@m <ʼn[s:&*H [ X1Cga1>'[ * )g$<66ґ zj: ȟ\( \%eDa.bgb~͡J $ҜI̅<|T\,>/>&)jO">%' 8&/"tۨ"#=h*f2^&V:&(+frTe($loGu8b~N.fC!aA~LK=;E' ~a}P=4Ľ8I$]"Szh0J03U4XD}^JSQ33W?Z{FktfgtyS#^ܿ>ssr)| :'M6li> %:d~a^n?¥?=@6j@…c7>>Zb D"k^VE|VHGWYz0~j]E6+fS~*q ;NH|<塞&9o?KE'cHiE@cMR]NdR88 %E3e9(^H?L~{o"ʩ*^ ??9wXb<}'{Ye&E1PAʔf%^L Pm|U>bԄ|`N? #`' +FFL07$q$A'D6(ǐ-ND% &Ȗ,cBLi A4((DbLh NG*A!3¬ MڔѧɎ6ڵlۺ} 7s%X -| 8 >Lbh8vɔ`qPr(T jW4cSD&MP6*ZF*uղ_NvdQMHһhM@,±6k)3i,^le$@5jJĐO{iG}^SCb-x'UHAv*"E0Z!c:#_@EcI&YeVPf8R!Gill`ěoSdXq݆ eI_EAߑi[Q(_=Tntբ?aTRDĤ7UziU唓l1 }0.|[6QJJ,\+C*HC@EA4}5^N T֬e4mt~ikK=PA*ToTv@;uu>xp!Ap&x v]n?ՐDKJTv-_'Ǭ]'fLo;}D@6{ݮnUYnDmxZW}g޷}ߏO~$8t&M^yLu\y5&k1&u0F@_4s])"#%zl7 L`{>ZR}O<.:' ˥/{c Sɑ^zA,!IEg] ݐDeP֢Ú)a1%+_ XrnA#0 Pbp( H doG `/""p[%Yks/}4`7ZƩu&E)Al\|s? Ѐ t-AЄ{hA,K]H.q#!YqM/ğ*MxNG9HG?Z;IO%tD-Q#5qLmS ըJuTUլRfDc: ~BЁ:F{, R32)KW*@f;kJûT\:[I5Cb JvM},e/jv &( hH]L.T_{Ҽ5}-'%oD)UkSO˲z(J̝uj@@ T%p, F)n'W-q[Jc}oNbM֧՝LP*xd O} hP\4)ooyRirԾh:oZ?Ӽ4xW% 8D.7K Yh2 > p_{MLϒ@`q) 5%;<(Q 1c<#C ؐpdXwu*,$W.x1 G#*zуY 78΀tV{" %Ӕ u4S7Se5TWSհIeuNZ @jZ®btCxˆdSV_us9EKk۪M@>SYZnt՜Z;}J'm[6h=\vV;N)T}K\2m4a|gbش@;~$Yjon*Ij( >\o<{9 \CoYa^='B|4as's$6z'#SfC);ԍ|aw9ԗ*iz;~/<o#;fKK>C]Ay9-oʐ3V'XS=98P=D7d읔n{H8ɴMAXP/ԣf/]Pvz;oZY;Ǔ?ōd~ֿ{£uY/Wz,wznܷr/uyg${('~MHH w$Gvg kh*5X~AgmI\gISm6(|nk7G:h$-A,GsDFvzUs5#Ont:|xyAAI'vfA烢7h/c懟sQ؇փ[&~DxFmmMnAkQׅMl؅ v|j%Iohlz'n-(}9lHhki (>ofxp&O8'GsLgD@zYxl 8Hj ංn8|7Igb󸆇hzLHl(z(}O0ǂxȑՍI%'/q8Ok'WUz(>g o@}s*)pn(=9iR(EIV,I:/J  i^B {2wA)vn`N3uYӑy8 /pڑYW#U;R`MUbB%Y4jX6HxM$oFِI(h8_t6晟78`if#9Ivdq8Âi71?p㕹6M9(98?;hL#VzU|i$~"IgBUiC1Z嘓Ǟਟ@@Pi8hD-# BJd/:~@BU<)E6tבRSC;(s_@[W`0+j<p0U"?Z6<ڀDvu/ ןp?Q8 < _v)#"ZIv PZࡐJg _]@<5ꞻJ)5S_P_=jMs֤QʩT)!0: " z"D%p 1A9P p5&.0z)`3Ez.z'`ʚ3` `ڱsѦp 0ި&q\UbJ 70vR{ bB[PGjUQqj`h-")@Q6ԫ*p6d7%0&5{h$9+70:{z::{pӦ roay /]pR@@X!ZSHn ; j[@%d{;FVk R&iQ1${),k1{)@>ۭ>K6 0;8 [SWʵtS: U`'ZZ˨K SзKVٟ;&k-[N.йeњ4պ*+)`fJgo*ʰ_Z{:p˨\h h3l` p=#[+kKZ+140>K;(ma;*+rx8akp$ #ϛJs@|Mޟ=Ag5`׍]-mr)]l w`ݵHߛ5dM`|4-i{$=m]"}P\[z(ok;l'>⺭3nn%?.PEE λo=@QYFNbl+.R^搕-[乻 alq4r8Yzye+^TNn臎~PIo+#ssEļCN{Nfd@ *0. (؂ dޛMq=$Ů=z׃q =*-@qqג=.Oƞ=.-;\jj+JQջګG[P}VϺ+غF\>E8"{9 6*+Ԙ<2BL?1DkQǺWdobS$tB&F+BFfA5 <"V(`7?Ѿ /.oݶ AC_ bDHE!k|oB̢5hY49t)ʔʱN{do |hj/ns{tjAeB OФ+RdB'+ "!D )HۨHȄ)  PA qS3'J`/\J@Ζ^T/rBFˠt\5U4**r4$RGb:JVR(8lGrr'QHtELR B0:  S=t9VĊF 7x.;|#O?x4Ԃ\@*u;>u:suWCO=C4K>)@:ev@g( aHk?jom6uݐ%ӧX+ #"[ MI17GWI=M*v$~͗,xU^EWM4^)4<ɴ%dm,Xcv%`d66tn8>!9Lh `5VSjZi0m gW aCX&3(Bl=07w>6{z<şE\ {dOMy]^|j&~M?{;s!6NV6 XPW8,9aQd!O1e|W I^ӳ}(_a6؀;2X}?Wnɛ|D ҏ> Nm' d=[ɖg8 2h@P.w *,R6+e|A"<*̜ BDXBgѽ0_NL)IˡBlÉbG!'2^<90Or+J&gSNvWHdf3 G9o[<pZ hq"b"9GfNBѵGG>35Y"LC@^ϔ ILW;~%` ٘n'PpK"(*SKTGGp"#Ϡ&I b{ E1UH3]N5SC%<}%@i'!:xbPa^):?(?j.Huґ$*;M0u\Q繐T(>CbeEH ꢟJ;ҨIbbQ`>(@,!/YurOzh_ӆTnmmmh&MMM /wm(Aં MWd9ع97haŸvMs[f7-$4Cp9"5E-\skNrP mM՚X7R'r a.pPpM^\+gyߝ\ m~QA8QM:y*e7FZiNt^U& 喇)ol]k_ BH@ QU|oԄ"6oNm ^u /_C-geO^1v.N|{:$9kN̖_cO͟A0P>by'UwFU74mg*Hio

H6 X؁ ?+4l$0k3?X-X ̿?8 #@8@X;=H=.Ԋ&'& CX=$C($@B`B*t'͈6*tC3 ö2/LB1h$h;> \;Lḧ6AL|+40ț2pd 뚽XB*`/FZ+$.Bb\bc]D+bJ Ke\u \3 ݼ[5*5T"`]ѝ] =]m֒KL]]]-$]坛 Q?]3s^D\#^]^텈up$U-+_=_M_]^kBc__΁_#$ 9= \`֕79= -=I#afe7P9a(]`Cb!cC6e۴fi7'nȀ *^a,M"-O 2^1N 7z:g}[;$808SiԔ8,8F-avy'H0os(B"ɕp/P R"*e ǂ(pIcXc;;FKM0:T`: x:[Af階C>3GHN 0f-das JKR Y)Z&U \yVe_UNe!Qg巋[D AT<\Y>W8nE z*@Iuv X:QX;ȣ)񋉸~q ( ̈ 0" `NjYZjp9ÝѠ+jP̀R랸iV &jj` =>̻bfdUd>>?髾ɍ.0l 6`~VF?#xY*!scDDpt$fw#L8i)$ "%_B8'V81:<,آA1HnEf\ޖ @ ĔY$ƆfK$]񀞒6j1ruJnl ,(+{mmB"2xS'پ!֙S^nMZ)-:Q)'"`ԯRw"y3Gt ؐ H ŞMNh6w?*5qVuF'H' ڡt'!,J|!;""#eJr"2,N$/yA&~q+O PRY%c7`g$T_cJy^gk٦osYgV`X:'"2ڨi:ANg~裟顡Z`KXLk# Hحb9n㉩[2j`? ׶ApۭbbG )w.i6[*@@;*2 =P>⪟.6g6NjۦNn ʎB-/oP^2bkV 1 P4O+ peԸf]@O{=5A3H[eEZ+]\`k f'`9ݰnEGE[lJaDE&LHrcyIf7 3'Ռ@"{ W [wėB溝 f=Q]7v7~ݐ5#WO? ~@r[Iyw26&lK f8!smX/z%#jb]AL`L9 !!\̜P 3۵ -KkX[03h^"C=eq_ Nlz)qȥĬ@]b'"1&CA@d38@jL &;>0DDʽ, AK'"!%r?\ @QYA`&}Bg$4R*~H'I>C f9ʹ D##9IA*TY,UYp$eBIOL.H-3T`LX@rb;w+$jHCAH!ړؼdlkg9v<<ۖI~]Ę8կ11@I&45_(kfUd h`H+c=ZS86isj6 1'`e@^I%=2 $LH$5C=Y688101#U@zdV V@.`RBj&\Pأ&Ցd=KS T4d1 )qrB<*=V40b`XO.QB Y;3Tb;jDRɋZz(g"g(N7 6 @Ҙ145;ͨm6]sǫQ@=/v(/UR%2z=S"K>5pf4RkJ^0ke 5_ӷ%%~B{*0x`ꮳmAm(!mr6msIQZ\ ׭`4c梷5=f.lzPJ>P@1ȅ bҘKPdHxFpV1rĄn!,iF7 F.rAp+w9jt|?jPn]V30Ъسg;0N%@!Awb+=_`.$nJfma#[ls!SwQ"c0:+_?|7R uArR)j(t ^™ 9s+:D8f~VFZ§kf`Ǡct @^䄎[Zgf?d3{ڒ-/*͓iG)]`. `MeCҔݢR`=-@.ڗ}[4rlSOo޻>P4iAi'.| kQy%BwgH5SiL[@#ęڊIZbL`HS1QYJLS~jX8^pH+:d|6aGgJ6i qLcp^ryM8Fޛ^BYzox^PyNWS\ Se $]Ƞ]5V hZ>~%"ESM] a^*aV(V~Ds@hpr@x@l@hcdCGqݡa$~`^FUoRWW {!(buai"t%fz%E=E! (S =O`QTe),*b^Z"0OE R100Y-")]cJȕ]t6EK09:FfdrAAT')2KC-DRdE;b$ZGDHddIbF`DQHGKL J䃨d[dOdOePM$A@T PZ$8SBeTJTR%Un GVeWzW~Ii`XeY%se$%Y[eYnF\eZeGJ]^%b@@J_]!{ 4cHKb7`YaP٥bsdjGi&2${FsMfv܌aTKpoa^GgqJ EhiG"!LVjZHDvw` x"Lhigly{y,|"Ay |vD(!~Ќ@@0h8h @c`T|\Ys,م&t&tG|EaR{:lVwg¨\z(B|Ogbkgy`A4̡h\`F̎ȀL7ye0@Mڬm]@$ M0%| A)^M޵fV[C#( ƈ*iXg.QEv4Tp[I=m꣖$ag0IQL3i(1VG :Q.R]*]ԧXIlŢ_LT'"jӯD* ! @XِVɞFnŖDZ~AEA6IDGF:tmV'vUF}. F1!*dQe!ɐ}V?CԤ<ɓ=- |lYOkٖhnDi]6nSƘ?ÒI>PDȄPgO B媪B`nxGxc,KDȲ^l!ф3w2PT3\SpD~6[7 +E}7vZ7X8{w}ߢspaw@6V7FwGAxAY,Ohrj2kP k2xd7Gl[bx|tl@3yK0yf|8cozip^kK|r|Gu9Ω<Ǖy@lb(WEQTI=yzxjHGx…ETnC[T tjpgtgDM圯㑻zoЌۺcb`@NJTWlv8mHAFrqH{RTAW|<׵Ddq9U;Vd3cx^MET{\({{ hAv;y{xG@|{kCz @bw ܻ`(r{ l\7{|/|;p<q4@{#}ǥǃ<;dXrϧwzkp{+;/CCѳ9tdtB@w&?lº=F2}?1[FFaT;H#7[Ycm=Gl> j,@~=d'wv3v=Zb'J P}[xY?v>~3F ?7=A<+zGSײykL?A~r\"^=wԽPtwCkA@j:)"`B 6tbD ~q9vdH##"@+U(P@ ,PXdH8sa)C HA*( r&R(H\J-FJ <'kرGR4AիiB(E*J$Ѕ$Pċ? 11 $ rɩgw34i. t;{&$m92' ^褧ƒ+h倹wgDLb1wٷwd|(p S&Mqz#`@H+N: :Al .3:>p (Ԯ;{x-XtG,J~  &¡lL!4ZO 3\M3/kI>fB? 3'QGߎ7FC͈ذ Kl !K4:ZClD/m3 |:LIITPVuEH e(`5AdxeK"lALH0!6 wؒLؗm<ӿrCk()=DCX=~J5|4 1LUM(X0i\uR/^SSgpV& 0HU_/ (DAʋA-RN[4%p\q!%/=Z;{X}'>rǁI5 KV5)-!4o*iV75IPFS'0X/ >1HwY &D88 8[ȡ hp6w$5΄m/^f2a`ڹߞ݃w3z>O03JD,F" 6V 0n d{UP$pboI 4N(ͭ Cǿl.&0dkMԭ8% FS;H(*X \0@z%$ψߪ^ !QVŨňG!x<l"Uǩ0&Ӝd'XG"\vk&`V‡p:qTHqtD'hN+ yF]ZםV?xuGTH|vܦ pvQ98h&DDu)k2EAq@jUr̉jiXRǑc@]b0N lN]nk ^pw _`ɿ^q9q[!7$l,KWʹq19E^s+%.Љ^tyl:}2.t S[|w T^v6%X!p@ˇ0Ywzrˇ(vwd >y ]_]xt7~||DoyΕvk:Rm$&3oo۾7/vm>]:3IO}_;Nz hlSN{Dp,P%A vWtkzgdtxO6^š P5o4\ p1c (PO4P>Z@ | L /î/P`.Bp1/~P@%04?#;k"h p ҃  0g-|p/zbO@Dn/Op +i0 .nMe0lDui@ ` V0&+q>o 1D10`O;L"v`$N! D` JɐnK?W10 w 3QHLS-3~q LjS0ɰ/2#L3 @:O_t$qP/ݑoqO%.!tHG8`V%A Bw6+qeR>!q Ր0F!N!gd""&@)1)r!3)23~HPa d2R M,&O/o,#P0R vp$@z@22[ 26"&Ԫ@+tR(SS(Q0!(Rq1QT"R6p'8qy"1!R9- &.!38mss`.u6$tf#Y,`h QiZ}{lgzΖGYі@A4vćzhRs82{9;SD ^;{o 68RIQEO#9jpHHgI Dj|螠(H!DynLiMGŊh'044=b';jECE5ϰr/1StG0Q@-9/R@ ouGC*2UR9 Nu)!.m&U݀UIVTy3>L5!GWGiUYqQ{ t!r(LMlLʹIH^ƫ*[ -\wUK*ƕkN4{r"+rB L bvQ^eʍaCQnvԀ5c`QUJ9EmsD1PJ%  H*0 !#vB6efMcCDATH E6+â~UJ@h:mV}d64j?\Zspxȼj[˭Р0 4Eƌ¶zgo^\ʸnيLPP%be< `GCaqr)``MB("V*"lQG 6 @lBĴIhn!+ooIdwBPw"p r rW 6, b(Ȣz bzw{Wr {@{/|@+ /+԰,ab4B }߷a5tmHK#1` !kL[Kp\b zKxpU"B* sUsBa" ox/ wxˀmXa}7/ax)xs*"ɂU. "°U6S[*4f̉j 4ɜ,t"M^vx#…}$,(Hr.vx  ryanW+5ya# ʗ9RQ$RyYnk0C"  #Ԍ(?^GfC{R @(Mj҄@wO LNSEfTY"oxxW-Y"-^b4╉x Bb e(WWnm$h`8x*ڢ; 9J6ӛ7_yCǹAʙU8SZ \zՙ:#b\Y3YQKZڨjکxM4X^H 8XA=훫-!…7W rs-Y>ڒ{ v zڕ%׉ 6y oD=nk,As3…F~@ ayO`ۙ.}3[٦~;)؊~?vEe6/L csaZPcd5~(LB*B-87 %/W [ [}"a7+r[-DtS0θo5mEPn'$[mTU\ ;\q[${ëXUHIKƿg\A|'c\O\x[,aòtȱƏ|#jD||YV添\ŝ\˱ɻ"'q "D',u`<,3$,BZCO˜5Rh]dtϷŃ<=P.l v2O!{~)\87)}yJD"LrKL„Ι@ѹZ9TN  &|y։ZYP1Y"ӗϣZ)a?=(!܎$Hؽۿ]e#qFgxFlFhʣhfH i#<Dֳ#&}.J;>%Bgt^Avz @uy%o]"jboO "ZhȆ L~ Mtk48}%P䕞i0XIXg~εUMT㝰ޅ!<m^LjutJ[튬0nkx%#_M!2s/06"Lbm6vOv_1_&@!$@>}\xKB؃{l?XMeyߐNޓ0>F L8uPLT[aLƂx|$  $( Ç#JHE /jȱǏ CIR""B\$Q  S 'Ji@ 8iڼ >YfOESʵA`"@0hf,`A#zKݻxף 60:lWԞ}#KFVX+7A۷CӨS^:@c˞M۸sͻ Aȓ#ޜzhкӫ_Ͼ4˷@ϿѕdLh]ͷuneWp)(Vhf!|`߇ ($u(xP2I4h6!01"a/U-jeh'wU.Vl~wy?e1IjR3_&t;PK!xPKN4zD%OEBPS/img/metadata_missingentries.pngTtPNG  IHDRH{۬ pHYs+ IDATx{Źߞ\AdAaDL{D1FFL䨘$jTDFEvQr]vܧvڪ3Ouu[oUuuuݕ/*CP4 J4@{yL鹲'f|yNC;̼PG/YvӍׯ~*gJ=\+0DžbR5-Rr3<ސ;L4 \k ]W$:TZ|w^Zr݇!PR3ūGPTiPQQAUTT%pZaEQ9OP*' %V! 4d.MЪ;U[hJgOH4ȅ%|+KHU5.N.sP(Jn>J} UTT^2-JXF6{Kaf6JKu;6Cfn^p( Yyʸ-cu{K^=һd5m@%_'\it/'#3i4NDswwUĄwC,LYvjXvLFlU( 0hϝ# h9zY41)Pys}˹'ʺo+VXm&NH ޾i5Po^x!yIQ4M4p^E!wGKygӚD%`_ТA׋V'V]|O{2o1YmLr9YT%\6-X=+s,ѱa$2~z4Lڪ~ɝ&[FA"A|l+|=4rۆ$;ҹo_dcբ~3{AKٳflI+ٳg`yT,˖-«ATUQ~t78˖-[FD`Ĉ@mTUeݰbޙG#okfC[ .2N+{.E ZMo)ϯ5eLoI|gr*gڦF嫦5Fcړ&M:LZʷO?ݪNX)9s<裬|bFE/Ϝ9s jnZ%:H$*wX˷2Y݁k&6u ~ZQ[.c|6+h/%vw>spIY7#&H$,|Rsz[#Оז˾#{\av="Xq˜ޥnp}~i)/j8Mٿ/C3eEmO`&]ur4erP9k o?N£s ;H:k$A/}2&l^PS{4AAn*??_:/ B>?K(]G3tuzMrA0k^ф^0?6\ =klif927{<"RW%IK*w .ټfRdڭܱUdVG㖇Zd^a>מO .1i6 ?x0:֒K 9D˶x6˄[߃tXjriVCr{PycL1N.Zz˼2,-:f}7(w.ӑf>C="G&doV(.I͜XemFFq~?U,w.y7I!%ʛ8_ 1+g{2'^ߓ'}{vM>x萪i%Ł@T: q#usJ-;3QNxT?2qX恡-[PL= Æ cCL:55?=555t2Z7фޥKܹsx뀩M}x%Kw=k&|RN馛Ļ|r%x}C؟MwXU'|@NVAK2t>I\*m~.9(ˈcZo|,).&,}rFŜm}-[_^vmF|b~c?\]]}5׼ulǍB]"_!Ϛ5+_Ned?wR@­U.Nr*s-H(j{Yb/If\o_J닝"a{̯ pLqeG<ۈUww$Aí8{,+,m>躋NS6|y VY#F;JÂ瓉J1,׸q͛W7K}f[\;@ɟpR?Mvskb6宆Wpk/iOJm5+[v_yaoZ4ax!YEm ՙlp\ @ lm:bcz~1;i6yǺ7{tAJj`IIɎ#@Soo5?ϗ)^4BBh\qe[$>`0!K>?VYI$=ܸ G >c>ܸ'Ҷn~9Bx|?ӻHoe魾#(lr'Cz&n *+4M3 I$,t߃dǖ2R8閄Fn֓{?yv޳8`QܮSƏQ꾪c-V l5L1 HvgtgѤ63~Mw+>I:A`ꫯFV |M<{*Wmؠs4 ЀY- !!{ NfϞm#%q0.cxPJm.ht:eޱ.VT:U=6dTUU?lI )TU3#ĒG?jh̆|J?֞%EZZZlȽ#uz%d{{DUU;%$ ~uuc w]Gq)֝4$@35Ľf9sA&1Fn'юPc 4 o4ndy6cCb9;v*e Az~"R̠"Vϳ/ pa S^5 hk!j~:bgq>b4%ypP>\Zi: ;45b/ gDmma)ix[B5&;U6>C>^62:5̙E!p^ek$dfoK>޼4G~ "ALeji՚K"Dr͢V"ـDF‰3K+>V~:;^ٷDSQ9i3r+?l[xa҂dŊ ^{̵- 3%qlN궜~ ;撈 B%9 [Ca/Y6)]rmmnיr\ۃF^c\޾ξ+5=abs"w{y;ŹzvP͹8amIؿ?RTJvÇ-Gm (v;M;z=mnmxvAp3iOwDNcc䮆KsH#3n4w\3gNF83*T@ v䜪?p:mjW^\r#Q@~KT*HMJC!HbqOG%sRkj-F2~fn#Opo-!eN]JZ P(Jy3޾$Yf{2@[g mN9Ǡ*.mYDig/P5 6KeL ^iv{hosl`2\lI&-(2h}2 .mX_Q7Vݰ;IyiƻK3 Lʘ%32A qIo%ڲD=ېI$:ul6lxy'A Bź͗`G47Ot}Ս-7]t|@h9^ZZ1sOq扥 .K$V7ϴ9ʳ3fD#V>r/Ԡd<K{m_~„+L :V#Z__{0Il) f̞@ױ$ *I=̃w)Ciu넚Z*?nb*z"XRNg\_| 0{cйFJ(|#F.h<%bD".*R |*q_>,mV{s]u٬o ٔPLF8I)zK<~æ_6 u㈃٩T*ǏP>3uDEɑHbz C+P|ҤIPǞG7SJN/~1Apy;}ݝbKiH`0$Mgs=JSɃ%g[:֍njC"EN_v)@v#$X,ťe'9dӫw[{"PϏ$n)h=JKP(T^Vs4"9Fb#hoo--!dVTT]Ǻ'EiZG!%$^nYC8֑ ybmYV]y5OQe=dm6P3W~D{Aǎ}jti6"ʳ[B ,:iU; D PG݌Qg8pDg*#p'\{3u_H{"=uf'hPU5]VYe {L*ט>'x'hR۞{ޒ8@3\yɰ:k6EAv[{ g};A@[b>~.G {ܗ۔bp%жfRxFsNX䋎uLm7mAAt4L}F4da W 5F+l`[ޠz-444x=qQID73)jmرk֬,z)w h>;&˓9$wP\ tNE(ScGU<-)@QQQ</))!6YJJJM<WUK=.hœ#*Ae@jii1,$$`)":p[Kgk6 L`yN$ܥnDCF)MIyv\%RR2Ds&Yb#+귲RoB p8\YYu4t5,q~&'sD k^Bf"9þ@JnK$ӣ'{X=uoyFP{]= b1 T487 6n#ydU;+-xKy9YwίeFI$u6+V,,$yw@ dMIfL8#'m6vRL"(#F4`UW/tmqI&Uf-pdj kt?4]Mu0{y߰Ɉ&it*Jbn)\Ԟuz<>I1;O7)&x5\?5:LFrKA"Y?vg.\5od) @-p%ݵ.>H7a)qvٳf͢']XGC:% JJJm=P\RJIQp׮=xOJ|GAڏZaC %l~D6iքE.A<19M&ƬK |RN|Q8_]Bs&⫄F$' ]mHHx);$`Ú⥑{pН`'Ld$"xm@|Sӈ# A6 |{Mk!#󶲓[?!g/O%c馰-2$Z H7|Fݵ-1>75љ/2f/ ̣qq N1IH]m6ېEKȫKͧm63-ƒjtՐ7r`I"kift1yO>dB3A;,,?llt{ص#BsZH6-i[۷?Zto߾Qe߾};0Z8@]ޤp,OR(={(B6Bx4Hl߾^466R3466΁_^""26fE8R>`PfKტСCE2_7U_ m&VbYfc;v2,;v=0ECI}:|8L={(--x톖CCqj?<8v\kA߾}s>ye{׽{ٝ9TY t?~qz6P1boE⭹sϝ;̙/ϙ3Gb t#/k*LH*6UK_t饗<444˪>kq$耪i*VmHố ãCxx8<|x"|U5 ^~2[?ڵkIm6fXvA`˗/_|Iu5?S䩧B׳Rjn())ǓXIz+ڙ gJLabsU::_A\%%Ehdj4Μ&&ϡqeoyJ WUhhf=س6sec|fUq!jPgs MBTĒqa!=K47no"lݺIqZFڈXB< 0p | z.{n/--ؽ+ۯ4unn%nd9&FsAX_o2 _NfcT.ނOݹZ4@(!6r~uc5a_ 16ooff4-a$oG'lM6x㧷kF"WoPA'"$G'hL6q/~էwhXWi&X!\yјp8 `0 B!Xֳ!O  DӔ/BW8N l,p'V_y8=: T(n숬i ,y|)T!)TQZYX/ 3glfm_fxǦRH$( Y}0:.&<̋s?{:Q>`JйI7\]!%1e0eW} bj*+)^@$#xs(%ŏ|I4rȞI&(~ܤA,Z+#i{/ '= U]ܤiA 6xO~rכcmת?:L (l6;ϞWN?n=Z  Ml}1SEx◳/m޽sL7]JiVzyw].>c0)e5[k61q7x ޺"񴪦[͎¦fCI(JҐ $]##phK@yYiQ(H(JII1]]$®!FRA<"##S444dt Rf3YU; AA4M k rT))r^"bg$({ݯ-tɒw^>}^&Wd8&5te8֭K)XL'}BuzI:MvIJQ]w2t0otBG%-Iu]"N TlsUE_^|{s yեɤ2Ff_,A(#J'FgmDA8X[쯞 OeE?_ \o G6l ?#s[(r%s@lCLS~9Gk-[nUW@`fe˖D"!;KqqQ:40(6% m)0 IJ`',]w t3{wnDA[/K}Ypr{HZqf"2A S2ɧx3Š+ 0 9gĉ^irXtxCQVXQXhy_0 kډgt)e׋%qv7KN6r]UʒѠ0{p58nXȽbt&#Kʕ2c4홳FVv 1vS3X@ЊΤ¢_sqEL^O(JeyC Pn\16IppϫQ-MHT·n b"mq[ n mӒ?LYnң ~{#yX>C~9讣]Q[b,/bк=0V3kUkc0oNb8gjڌk3n/, _A"QX\{zG4 4DdwXa D|F8? QH)q6E䗜/]0v*G䊅brϚE3.#_}lRt\J#QGY+̼򟌱&4ho׳Q,}p%0߰8ocdZgJmXh<䙩a;}:q1g=rtNsWaͬ5n}i>I0z$ Enn_3v͙2NđHy}؇Ln|%JY,B*W={ׄQ"]*Ȕ 1@[y_˒w#ַܷh_8KÒٳgbצ~g9 e;+Qh<WW?g3H6p$% %n`.{WgOn=߀ OvuSLx4Pv6rXB>y5 /9w럔2ldKb1DbaCx9 "2Qqx\?0B"Vv>^ԗ8;%z^gQ&Pd34]͘F,sv7ۏ5[l)2Jqrzd+_JHZT:G B~dr_ݺڊ5v;`\7l?\=k|K.͸7nA742D]#!4tdB#3A<`f.e-6děgŊV![0 9JGgޘsՐ,C$g~__{ @LQC³MK.~6fċG[gM;.>F?fƙX58bă(4G@ d2X j~g}( k0zN-Ng"rF覘=%{({:ylABXfT]}E )um/yawW_ѹD#up)(㫎I!l(^ztx4q6躘ȁh6hI\&2hֻӔRSިxe3ݑknt}+r+N䛙blp + Qnr= 8"@ȇglx9Fs5%ǯsy3)i~&dJ#3HpAx|6 j># ((xO|F"/_ar<'WcSu99 uOe!. suCqXm/FH+B~k&J?] ВMAٳgZlywsB@@U믿m]Nү|[sĒVG!p3iG֮5f 1D"E2TTl[ 92f555555Ԓ!T f~%H X35bEɣ7>GK ԒHq"މ=8ί(04&2Ԭ{ .׭]jo$ Pө+o}_}*đ#FP3y%a/u/7 IDAT%K[D{yĈ  6:eMMbA^f=kO5_<!.n$PXW i)E\r:6r6ׯߕFwiUy< 67}@6lÆ jnX%'dF-2R9#FdC,+)sDrBMƖ 5UG@wNw96Be-մZ\f3]QcưxLd~3RYz/e/O-6=z~Ν.ib/OvIw$nDzWsI1)ӧO6$ HѣG L U0G@{A{V8648{JP@fEQoy*z;}'My.Ək87m-~Fg\t_2p'?>ۃA!#|ƍ9O?tӦMuuur6m㏳ N<2 AhLT*5y~9zG%ϚHXmի xWZqF'u$-//#!2օ<[#3Bb6#3sX ȕxsHE4?~FRhm`.Ae2*ʍSNU$d 'Fj󵍑gt4Vy8M?v O٠6"!c8-S!Gl#a͆ $:A ΓH3j#QUU5MKRGt$#mρXRMG+^8Ʃnݽ9H+&ȭBXb yGD"EQ`(:x0 ^m6q66qgCOţ>xAl:)_m͑O9T=tF7Goڿ}A) lѵ7ʙjyW}t@ּ^U+%?+ T}TV[G!,%/}ĜJSZvdps[_Epq士{5W"#_u3NLR_;UUUUD"^Q@ @ u3N2o;;vfSX! n{ʍmw|c}  @iJ??ӟoaE" ZKgYi/[Qշ[$.<ם;fw-]sBECEoX! N{V=KCR,A2 eN*\ECX! 3Wo{6l[^V֯1`0T t*J=G 9hu] H^Xy}z(*.PR (N9 Cإbjk:# #OUQѻW2 TZ%S!%@bˬGPgA1 E` H٠(J0( vhuj HAMh766ZA&{!ݴbqZAGj5DAB։%^IǢAAtՙȊp8]#Q{ذ~ tCcc+$bm(xKL Ht Î! &QWbe|K>(:8OQ{)ŋ:M3 WUEt`& 3TxE{eꖩS7Olٲ%fwLONn(O1~m#pZ9@L;C^~S yCHק(K֕p=LӴ?'nyn+~3[Q|yiuu&M(b wI#4zə:^YFwE7 ']]qTm*r*&ʹjbX yウ&ì]0]sn8S v\6"g9`/IՈMJ@]5Iם6SO^ YC>x^h:u3x# ں8p mv$ WAõ[Rl ^p r΋]]gDtҞ[pp_Qw/Y/?7Ӕgϟ:&ϫ7iy9eƥy=VfxD1 ]#J+X[ u<ڼy @,XS:쌱6e!L¡&AW~_c2u0tЌ^.?ڱ㊵kű)sN;>b38cРA.i.r&@VdR+A Aeȑ#Gk6{ѧ^B_sKJ8dQ{O/Dts.P:RRRlj=Ma?A 4@"nGM%UחnN) 2J4U1Х~PRS Jՙ;w?9eg-ZYYi4#wJ [\=$ɔh4&&>0 4Tእ\[ܥh86<Sbbӭ=DX֋d-d[toU$:)0ZdžXB|Joq6Pˌ‰_ׯQQ n:H2i,b>!p%6xC4!Citw}wP {S0%*?J7s0jqsn8(ȯ":J93 kiH|!,ϊtvۑnƨ5`C.\3˨R^B2R^"7i_E3bF3όI:FDNbC _ y3R&+6n| $4[Y`,IC_E̤2r$mtCɨ?3V3yDR!;ǺJ@P7 MʬZl⪴X  hPmDtH" e:3ױa x@V]~X9fA!Em3δ'tHqhf#p5̺]uC0g\CgR^( aihF~,?ʘr3ɗQgFr3>慈lTn2%eKfR}{lĨQ <n;­ꆥ&1ly ^ےq]7{:_`]hRBdduFaH0WmX-?{I{ u/ ^ IhOB{ jEp%۶mˋFhJ~1]V&^p;Ź(#jkkPaړ5%:-䛏ds7F*+VZs!/\(ӯ|iHAMCZP0crKL0,6s0rkSNs97tJ0 cA)8p[>fx/fxs0C (#3!vw|F sfUCb\:1;}gù!kֻ(;v*VD ѣH7l@S$+OF֋QJJ Iwum,%wMׯibLu#Rσdu(bݗ&1+-cN8t}eʺ4SH (Ӕ nVI5Y0}.V0b[7zae1*bclҕm~v[Z#csIEeKA(X$_{l5z:߶ 555M[[qϏ6۷,jz8T%PB@,kii;ϔy5ⱻ?m #*|_p? $<9R*Sa" ~G{LbPnxW)4G=ձuw^[ QO>Uyˊ+0rBqrXR+J8yA1MT o'@Z[[2t^IUAvC*4D=1RgϓZrcn-ebgןz铛yʤ䞾.x|ۥ˖-?jEIDATG"EީrE7_!ocfq=͹Ou]"^O\ եOj\<*QejK^ r2*ZZVO]_mHĒv>cKeHJkxjTٞZY&Sl.P:Uǩ*U(&]fkU`ҶήQF0-N`\J*?J*J+zR7\_J_ n/9HW )t"N ~f8<]uqj]p0%.YD* ZP~}~P9ُO5|uQ}̪VN%GHxW$T _Ɲsͯqu| Cz^uѣIɖ3lPeeiJ\',zdY?R"<o&]`Fݑ߶tl>䋏t|wU~{6HQdhBKF; A-Y DU GX= ~է9|BtJ\Th , *z Uךl焰ygs{3/y-/ؒy ıyHO1$mц Oʢ愣i8Tby WΕ2-MYF'}UDZP0?tgɺ@z7SaH?SޫRխ8pܱjw`zQRޖF?)LiuSuT_DLh˩]DDb:zCb:Xr-T>` wlgy#ɑC*/&D j8AU;;WrSO%b4UDZP0qm6<.Caܹ3 Uǻ96 Qdۯ&B@/$ -[v.o,iÖXH3v[&Y{'ͺt  WSTшamBۊZ245k69˙d2-#"˲w8NSSSSStrֈe- ۊ166آK/nC9"J0,X,,˘eA\Rh-۞<f-g-l3J¦5&Ja؞zcǶق:*,3kI90+wOo^}tnZeZ9'畼~_~m'D1i'ND`׌T*mzDla{{;|cB0MԴ֣.ZPxU- $0s iv7^XfБaU)˲L) 3x}/x>id2mmemۧNR]b('fz>sH =aZFGGs7+W(u+L52߮XB/{'h?G'Kh j>{s,g|NW?9 K+ioq"JʹRiZD#U\lv1sJ#hV5"2MK|m~+WWz~p6סiV6? @;,jjj444tggؘ7ȉiQ%JXݹ*RQ3[ /I}NIIW+[˲J x%ݴ/_rk#'5+#~Trp N vK]؛)Ų,"|sR6A(AyPݮU˛iYU7|g㆞}v6heY ,P'%Kq (ju`TfgU)dD&,>j[ʋ?l#+;ED-Iy NbLp_-" RcT5~mh1ԇ_բg:::>3}_;?D04U{׬/MeL.B vrAsc&{] 344>eLNNvttZZZ,1-l dؐr_;ߺ-8P,ˍ5 )!aYweڲ(a\ɠb|}pwK. T_s.-^;ӧ(M7 5<@\yCꫯF?"y(%W"@;"GP7x 2'?imqï<질eY K###UR2C?)f]{C}v_.Ydǎ---|~``^`ONNi~ir;6;Gm"e[nO; ۷]]]NPذa>Z J9Ϲ<%"rM&::'wCouuuJzzzzzzowww/_|vv###+Vظq_xhı@J9{^"Hdǎ.l.mmmm\rxx]5<ٶJA{C={Y_o?]9 tR7|sw}:tȑ#]]]W_}mۏ<ȵ^q\у86H-]]]~ 2֯_/}vv5Zjx׺:;;n\q54q<uω~N$[پ}CLكށ{ .4? }kǎv-nݺu֩VfW`?[u @ +`߾}ѿ- ojjrM@}0ױ~q{!~}08CHIss3ͽC@VJ&K.r&&&bql t9>zӁT" Rn٢a411V2o:v.uUٜ;mai7ᕜEiviq}T_QKRWb[Z泏Ro+ܴW[sJiB HrֳsqlZ~b"fffXgffhnql&&M0hmOAΘ%~嫼fܤ |.؛ʦO*>==v%O6<&amUysAgk= lnO==dٞ( EH$'hWq/2|x*$0*SRZ"Su8xH l9VX`w6WWJY?C|q)YJ"bJKM~sXA=_  -gx:{4BZ otnh*>™ÿP%ƔQibl- W6pMALxu*Q)i/wOwYvk5dCQ?A+nL{xIU4pKe W_mcjUV]VihxN> UmPP綃Ȉ(}H U`a*93ld5m;6)8d  fsƦL8i|!+,l`狉Ӆ5E-h\>1{6+2>k_¥}0L& Q$4 ,mj " <y@:ޤ*qIENDB`PKDYtTtPKN4zDOEBPS/img/mon_configmbean.gifGIF87a筭ΜZZZ{RRBBJB1))!))cksZkZέZ{kB9s)s1֭֔JRBJRZscs{ZcR)kέƜR)11Z{1){֔)Z11{Z{֭ZZRZcZޜތֵޥ֭RRs{Z1Z9cZkss絥ZcƜΜs!Z9ZssZ11ޭs)scZs{֜RsΔ{֜sk91Z9{1Zc1R{έcs{Z{sZ{ΜcRBޥ99sZRƭssJZcZBZ1)R9cJZkBZkRsΔ֥!֌1ZkJk޽νskέ99ck1RZ{9Zc{Z!)9ZcZc19RZBc罔ssRk{s1ZccZBs!Bk{)B9sƜZR{{BJBsRccB֔kkRJk{{ck޵RRZ{ZBBB9Ό99BBZZ99!!11ZZZZBB))!!9ֵ9{{{{!sRR{Z{c!s{9kk{{ccZZ{)c9)k)cR!!Zkc{cBB,H*\ȰÇ#JHŋ3j8ЀǏ CIɓ(S\ɲ0cʜIB8sɳϟ@ JѣHɴӧPa_?ajʵׯ`ÊKl@nE„[ K7%AQEM0Vu LÈ pbǐ-i d˘͗^ӨS^t@[  z̻L?8BFZ2n.K(|aM)Jȑq~黼Ydǯ. 2gB$( Nۉԝ zւoX HE(aCŞ/Pˆ!'f)L߀,\\@"aN !q,B$Hr86dGyurx\=͌L`D -F!\8Gah7)u!сE6c,ѓNh2 7TVL/ֳLIʧ,Q§}@+t-*/I0@ [Yx v%JdzN1E5jyp1piQ͸ܣGE*J麟B.E!_ * G9p~F$ l'k@ 1, 6Jl;^TB G' e ,q%1<ˈ,{`4ݴRTcf0cp>3 "uDJ v)E// "߁ 1%zٸɱ(B #ɼ62nN ĶE#\zEwBC7x遁UfP3pm>,@ $ .j  Jq}2XA/x7t'H1q# (X0HF8˝["?mNf@clAaT( $JC!<ˡM@2gzОG0#k|i;> ( 7, ПGhAj0H`ʼPJ΁ȶ3 "/k b! Yʀ4ˆP.,!kBHwH C!7ԡ&vzIlJ<@ *>#( b-A x&w^Z틿IF41sI18z$G',$(ï+ptd"mH# ÑX`I0I8|!0*bJTbd+b&0ay[8/lb̨F7 Ԁ2I96N $Hҁ +`,YRh= u?E:9 0 !#) V#ӟ %*C5]-8WBO+* uHV׾BģA@q< E@&Ԧ& ʐ vDl6wԞ B]fәu t޽qT- -=ȁXmJ܂tUCIF?URk*Va|؃M赸 ^ՎL)z҄v@%)a*A2L/J i Ahp$JGHm[Ѻa|џI:M9ҨY|/- 1U8zS)q٣VyIiʪpJIRSyWӛ@ʨ#hԌxeH9Z0uP= ~ 1x} ڠ˻ˤxkas|e%YQ {0D;״mڧ'L{zrfyד ܧ&l}1 [R%c`Y_U_CïV -pS];N{ҹKA:&]ܠ}ѹčSm]ZITtKr\pcV}PzPL$ 7Q0\X;yDn9y`eXlX1\PCzzHTeEw0+ 1ɗp +Y% 5JqbRj  |PPD^L/VVXlㄷzЗ5y).MϪR=26<=_9cC:tT9 ~C#:Nݐ͍% ͫy` }ˆ~a) Tj7sv ݭ@#a߾lZC ( `  p˼N AeJ=͋ia>RYX:nYdX[Ф.!2C.];JŎb_+&5>YTݞ]1u|3}Z~U ֲ-|ɾ˞_^ݸeE:yMۏʸˍ^^«0 m:HҚ2]2`CZTJgObo9)moZ?N]ucl~@tC"_M늿J5 p@ M Q p ` +p ЙcvXgpk}w,l3b /ȿri!@@PB >- QF=~aE^@DRJ-]3l9k/pTР2ETRM>UTU ipVXe͞EVZc @϶uśW^}X`… FXbƍ?Ydʕ-_ƜYfΝ=ZhҥMFZj֭]G[lڵmƝ[n޽}\pōG\r͝?]tՉƞ]vݽ^x͟G^zݿ_|ǟ_~0@$@D0AdA0B 'B /0C 7C?1DG$DOD1EW^|ZQ`\B!`Da|%DrG"_4#_1!{DW&-xQ*]r'D*(|2xʦ~40$QI,@P%\,Xx%Ģ 2NB<3ճ,9N+ R@K] 54TI31aO4%9}Q|rXO3!UDhY%F}QGi%Hh]u.[S[_Q#2.)w4-'}O8=`YNBхhɬX(Ŕ=SX|TƄ[wIfQ D1,Uak\w]98Jh5pE^AXbIΊg&`[Fd؀e ~JpU։tY~e2K_vYeW5g51تg>Uѧ;_>:5Y&7(xn 쵗OW5T5UrkoR7GF%59'mo.\EYj xM9w\Y#|t{`ڄR>mGNqD`W,] /]UJ^חs>QQ>%]5Dk=97iOnܻ^ 2 ϨWѢ2{a2x2+W\ӮF&IbaRq*WpZ\UH\ qĽf%[P֌b/<]șKh0Z\P3ęb'@^J],}8ɯdfږx:*mZD#7E>Rql*֦vժKmFz$5rtA-\?" 8єY)UJYKZ2*e.uK^җf09LbӘDf2Lf6әτf49MjVӚf66lӛ2@89NrӜ,NvӝT'S8̠D1JPbg>[o%`iJ<Щ(T)'% V]+*Zt .!AE.E%C0  $ gQBը75QZE IMph3b %Cv1bdO͹ծwk^:Ul`,% ", X*D _C/ыdì*AkD@  FMl_];[u+-&0t) YL֣y8YQd&jbeUd@)lk"įDkŻW)p^w t`1! ]|6%}jIɚ\ቅw.9ߧ4W [dw%Gqe-_7?8FI/lK5j{W jZ*B@@K!! F~@ CBj֞`e(߄[Kjq%ז:+Kksh'lk+6J ^&Z:Nj6Hz@22T @d6`h@~=H _cvnLn @*00)zEsWݣ0j"b7sTZ~gZb7FlDЄN3Z7ɽhu[:ݙ6+U4XU@&@V<޼N) ]YAQ 3uG5_ocKp+Ibq3clb&$˙#1{` kl5%go>BE6do$ɏ "Rw 7K:31z[(@(_EC|$/XY7Ĵ(@H֢3D - cW AFsTޕ"/e"5_: zHt^D]w~3A3l/>iWm}i:z?v=! `"mO,Ї!P,s _8օ*(Z'k@ .PXK۸9IÞOJQ6q+2=f ޱ3 1b =020Γ>3:<C4#Kkv#>:4ŸҴ+&P1`8H&tB( TpHc?;52*2(H 8?{8ٞD¶yRY3?ԁ:#Ġ{C, YD߫>$qqC1"ʘA06>A!4°:G"">jzQZZX[\BS/,#"'@C5Tk{1<j8<<ǛQ 6ѹ6K 4DPsaDٙG̕Ob{p8hL!=CQ9A:TDV1V;ctSS([Z[Ha6Ѕ0b++2H8bJ6߱iklCl,GCgzDIJvG9(bs lcʻGY6lÞK=|e[dHˮs DHD5܈/<˄H@TLНC(Aў\N8B9J Qݴc't$Ѷ:|uL!=#Et6جJ$\'LOR\O.OHYYH& S3ES5I-)}05 ɘ|X{ uTq6F2G6ɣ(èD Eś@$|>Ѕ\}c;ҕՅ^6^M] ]5^е^]`8v\}c0aD`R]E6Ec ~]4~_Q6a:>^M}emU>*H;=a`UF]!X_R_&}Uн\4F`V6eaVvftg][`Z. evV& >FhD]s:*z 0``Јa/hgh^Н`B~7f兀^ԝew>u_e+.wەg\ЭǝiPe~ghei% (%6*XhV(6)vveUv_)5$Nb vd-V^ngUeFgߢ~Nj]^^Rm*Y[jWŕi}~v6F=]^h]v\-K~TU.c<6[&j8gmaF~ QH5XmIfߜV[>meQnl6i{.m[Q~e^>n6~ joo7p > .pPd*pP܎)Ё @&rp +q݈ !h0  jC9 '_2Zވ)) +($7r2%-NS&j) % ,rw ܧ84GLr YrʯMNOuNg 5S'p+[a*8t'؁[,ЀPlPPb2a/v 2`/v6t"`joh#Ov vdw8رwx?*Pw@{ Zc@ŒuZ8\ru_WhwG7}x2hxBs$vdO5x"3'y7rvx`wvUw~ǩwzW0fdS!u\Ou>_9eWs怓zxv7684/{WS?{ʠ"|{S?h>HGWx zgvcpmw|xx$_'ͷxЗٴohD}{o0nf¿uOPXO$j@~O7O?'7Ӈ (Ow2gSlG8hO~("B@` T> tH /fXQHLjCh 84@$Ø2gҬi&Μ:wР %:QJ2mF j*֬ZrԨNǒ-k,ڴNE53; a. 'l*xL$7pE$X`I)9hDp"2yaʼn9|saWf*4hգHݶm;5P7sm8kҥ߸#}MsP W(%>,ނd()WLI%z略PYE5u`C(1tF(/4Q35DqJ*Lt8V6x")8@1jp '`Bۉ"MN@8$rI*@0V& C2Bb9RhNVnVnCɴapA DYF` `|` dfWIqDz(M @:DbbjMvYlF!62$fW*9qb ! 'V~&ǚ)*:`VJU$dRM5@ Y0H)V"CITX r k!  -@zTqz, f¦ n$A1{X/f',sb!3A =RԸI%*PǺ R|c ?  !tGyln1ތ]b7ǀ\ih?>yJ @N3 __MȋJK! )SWzPvAY%, *H ^@D_@˃PE'ҰBDҝ- [FNb]0dw2ߤM=(̠6C"*La @B-VauȆv#x@tr)jCdǘ/V29RNsf4GSAUH{' -H1nNd!ΈVH,PUnfя;l_Z":{auQ*1 *E]kJJ| YA 2:RfUɲ,pdo,]hb!ȁ)!}.6Be!(v"X5zUuʔWn'n 5y)sM,pdsQcL @ SUSDDJ oȅ$4pZi= GHKI*.&EqU\*F` _/z.2<. `_L2 0* qRLrNDc'ZR", !KNѱWt*70@P HΝ\0  j}bV'pcR\ /M ಷ\A?  9Ih`C/Z0hUOa:f B5ȵ/~|0HZ!x4 & }*,ky c@,bG1C:ޣ7M+!Szth&Sbh@; le yh@Z.;%xE2b#$D#`ά6Q.c͸#aU ,niȎfH 7H(M2ҥ.w2_B(r*4G\nԩncBզY%F̬fYyȟ1jisTi OEףeQ(u5iO1oݐ S*2PI9 qicu4րI nț9F |6jTAy}7X#.S83s) \d6Ӯ}30.w=9 rԱ6ł m~'6Cwx@cGBЃUC/z]`B;wn{H!3)>#Ξ4R\׻=bb܋1a3 hl&ǣ>%DRя+; V>yj aY,@AbXŘaO{df Y@Ȉ 4i i]XD Ơ ֠   !!&Sȗz!hEA#78F P$7 <@YNfV%R @`7|p7Uvc$)\&7ƣ,&Q:R&pEQTO~4WttdBmhY(8grJd,HK L&A8dn@h@ix&z"ekRzm"gvgkf'Q#kf&ƯPYl6~Wf2cUY%N\-^dс(KYFjp xpTir e\Vip1#k6 ߒMKƭepm Fs<qRu"Iܞ.ۚ0zxvA 5w,coeu^o$ϰȋȍxM' 1  2!!2"'"/2#7#?2$G$O2%Wr!+Ǣؖ&( (2))2**2++2,Dz,2-ײ-2._c'/[.r03#rA13,33? "/3C3T5gI3 *6{ 68/710qt@v :b9w7ϳ;hԆ9RM;;肮G:"'B@M;3.>H==_t3 DlSP4ctO|tO"C443CGHIDDNt'B5C$G'GFӄ:m8 ; SJI\JtWvX$4e5Hx'K?QJ <>.hutPehe4Eh%L^S5:r,nNU[Fv]UFdQDR,SXIJv PjU g3LBxfIs kIkg4ftM65A [6cn wN6LSa#xU9Yg}Vhiy^yW jhuZ\6,FffRw6k8 qwJv6øJmG;ox8ʶoNi4Zt^l#[D7NStpoCD63Ƅ[),<s9WsqtQu5]j j e||EwLX~o4CdLDuOk(DԀB%8@ jăǫS>S/LH9C<{ASy(<@l9xloĄa9@nfHfIՀX¯(D} ݥGFG![r2m@fq`[:BJdi霒a w(9C0y>|vh3GiV8kS8M6nK{y@{gNXLwr:-|~mEh>"I dęBzeyD)`,L?+Ef0h/·ӵY^A|'4;;wM=xk[{{Wm@ucNSi7 𴙫[Cy;xZxu;ȶCKF @gmꥭj՟d7Ol9L8RO93Lr83w|+7:m,DDLLO~d_][c޻]w~m<,@)"Cx(b 6|" r "ņ4bbI"#()$E"AnthHď* 6J89hQPt)O&:*1>uJC,uIYҢj[~˖+Zt{V^v."$fѢÊs\8cKrd8؜SʖDn# [,YbǜK]5l׈-cԽ2:4^A9ә&DX :PF{4rhpaK0c : &AxA@p'>*"!TТ3Aɿ;X )+ @B!KJ š!J\KB;r..l(-3LS+5l7*h ہ (HP)A.:@E,)62tÂ. )PF;JQ$ ScLtFu^;R Ȧ$3>*)-Ā..,X0jJ-`"'i-dH늲Ju- ܲ34Z w6=Xn#&bS=?mA'MPD#=dPkR#l@DBÐIU DTU␃?#1"(_HdBnQZ&Ȉi4٬k'Kأ:ȷn%)&K,s)rRKږi,0+.qmAnষ+[pƒț59aQXҭhء=)pH]3 (z4Ý?6Hȇo=g1o!zKwWuU$i{"^.hEWrhy §("X5Άz)u-|^ BV.bU-,֦ȿ.M ̂8|PH-t!, ̐' OB?f 3-_߱Vؐ &kxfm]090p@ !W8uQZh捈Kb< -=[hHD6K~aCbf\Xa'X.1dK[`;ryi- &ըA7ҁpd bE.쎳-q!2S,H"qdC@~PR#}ڶ4s\42A#C*,Le7R/0hN`8 `T=O7SlJ!$R QmQng S? JWT0%_&CeQ4#,i$7tMlbg^9@N; EfQM=Rng?$D N 6vU bI-t \kT GJe]%.lͫW%[+'2^y[bJ)kLUNaϣKa7M&` ;Mb$sT&6MpYfI\00kd | F`fmj6&Lfr ,[lv6DCYnN}$Xm:LnFLAtVɔVi ZF7i 4F0z̘ǰm/C{73yLX&>@^·=Q.V^ =Y#w5^MK6dLL{ם5 DY6M۟1'ќ檬xHIu0E-2Ld>Rj" 8^k={vcn |*)Y闋CgG۹41M"gQLqsGBe339<3glfωAY] VR4qZpk.',nΙy/l>Xb!ȁTYݧ፦qyڰ~dy5^ \Zz7y6o 9KL7=W#ښP`#|@ %A0[RLyI=ɴ+o|}Ja0O_o3tm^ՐA}t.ХR Cku::qM ) !('t`4Png6ժ:@j9vjkiB|vYpث[xm(oH'I K'duy{uxӪg泋 R)P HͿ0 ɬ`VKAsy[dNj04l̹!C`K!@Ȍ4gt xGNv'Chx`ygv!"|wvDP̏,c6` -t4uc@>EddeW@tde"FG!vGR/>F0մpsOpoد@d=ODc*pCxP`Pt @8DE %(b&r&${ ]pppӌ&@b. w|@c?1E0dEG@fkSl%j8%klq1uqy}1q1q$ p=2>j|T1ug*D"cVxiWXQX1qQr s1=eeeQpQbBCѱ- ;F ѥ%]%a2&erf&m&_sdOc2fc69cf tj>epYci`=p+ '+2,Q Ų,&tluVGuZGgvbv'{@wzw#x.7EfR!P++,!32%%r2-2bjlHxmI%s135Us55]5(h)4;O4ISL638q2*q"CHR̐~i77"Ȅ8s;s,991sS)35 3<:s*sK;?_,< 9tA)s)sB>"?A5tCHS@<sL2CD8 @L)D= p9\Dq41sNK"EoDsT)98YG!+D<)4K+1,ICLC]@@3AϦACi43 ˜bF>7 ֔F49MOs9>Mm)ȴ N =UR®N M4STQcRMPKE5 Լ4;4UT ӔHF)ȳ=nTHScV؎Ra@B@^@V[v" n]RqY}h[@rY[^v)NXscgaV[U1](6Bn*r@ o2I%zDT-4*# GlFJ)m]`)j$o_nCWo * ԳKpznnbHS5j =}4VgV}Ը j^/,~+w[[QsmV< wc ^'fR4NgԀi.N`Y8TG||%"vL|#wg;qBlI{w-W{aRzvz @VvX B >`oZ Ϲ;'j=FjEo ]<7;An;/= jw@q ņ왿?=# Vۺ<c$tӆwxA'ևǏ}=sr);%WB tX…x $- 1ƈ:z2ȑ$K<8Zxƍ0@3N= 4СD8LPt$ӍTZ5֭\zu ʾXQ6@eƎ.&T8E D`Qᚺ %6/|&x0[Fn;2ڶy%H֬C0x)xYᴁ0{pk8aP};VyM0t'?Ww]}٪([07X`@SFumvꪯn)2tH6ܶ.3SU۩ta޶y~&x.0a.Gʂ_O5CA+&fk^DQ.ݔv,7?~Cÿ%IAE jJ  @Hׁ :Cڹne R,ܡC 'L -| I<AQ5AOpd\Rψ.`JGp@8e">t ZԢPB>"G?BTf6\j'? Pr,)OTrl+_ XВ6 a$0rG$"@,+v$d#Cg3=hIAMZ ĉ 2lN@`= I 1p@`" H-@HB   % h3ZLs!9 !aFut['K_R T@FB Bx$j& A#:X iS$D J”$']#7,K WKu%Y$ GHDB(TDHGV VQMr@ĺX* 孢m\ [5 HB``.X#шF(xpA P e % ժ5,89(0t3%mAc kjZ WPBl]Ve@(ՁHE2!*b :%Y-nԹSH$ B@.|)er3.&]B$`c` @v,/j4voͰ@./ !2Ib_X%N,HNr~-4qaK($?q qCDn:ֱ (=ِ =fownv$:x5T9D'nglm^ Cuh}dհKCd9T |`#Ȏd],_7;%I@b!07zXa.-.sMA`Uh-2WӵMFm$:D Y/* B5~ WEC-> d`c׽qȓpRAjHbt!.sEyl 8&1G63d:CSeK BKW=t߷Z:n @͂LH[ Si3m?4yk-Xہ-1o'QFwHYwjzGRVq-JJ{DVc?Z`zA)-|gfzL7g|F?1al@ly1l1~[gOAfa7^|}~a7u釄-v2g7050WyGwTeH](Fcmbl!j;""hj hjq 4^Wr5[>Ň~eNŗe5 ,h'6x~8_yQ<8(qMXņ+~At/xuiq^6axETIPXBcR@ngcV3І;vx{{(z}?zPzWk(ur%؍'EI-X0xXGeQ؊dgFff;W9HiL}| IѧӸivcw{ h zzQ zy6FTzxqDR[xl.Y(;XtYbGwe4ņ  T؄JBY5di:W o6%'<^jpyz-/ɗ!3Yy7)khz*0xq{{f\WD fu|}HvLiԔl3}+PtPI}dDXHu}I`@HDL8I2n"oAA2Z2Fc&rVg%`zItp8ȩ!dqpu<3jГsf tsX=P"i1>g=M;W;T_seȋf,@p)O2)H_Ĺ/ dx%r P EjD$Hc#xg3U .*0*`x pNڥwiJ4B"TB"R;8 ?=$Ri p7*KJjʨz)+7DEtDDK$08w@>B$AzWl<HE@+M6h?C* {l$npTC@4 ; RY `ʤ s!Hp*zʧ8A{锫膽:ZA{K4 000NS@y hڭ<@ʰ>`>$ P*NZ%{;jg$Ot:ЯN3  87 ݪzI TcjqE=ACMDkI"˫Y;3(?2ES6E0s0P9;y kԡ*ʪD!ZNy;@V{bԵ.\˸9vWz5:03Kl˶8+?}{e+ =Hj늵ktq5A8[u[{ʹ˪*~;ʄGkڳd_)f#[+)/p!*k,TC_Vd;;PlйM5r+˱;!|Kٺ@]oSE4;!2QZ1p&gkۿ9p,\7ߪ@@G $źO~KN[$@W,)1p54 3vxa r!63 uu1e<'qUs9JWmolg|+Gm,ŋ1 Wֳ?B:Ar[ܝkFCvlGŊ;ū"5ŠS1"70 /00R"0b>Q8a+wC " w|tq C3S1 hͲ7 ̞*.2A6? H|iD Y)F+yr(|q\0!<W,2#24&&A̲-}C 53{\(Aڻ1a!E8-1[oM2X)djV1+]-ׂ ~pB}3/iac1 ѧs1t"'~1j#;ն,܌4ReMPV1P1]2/z25A="D]0d Jz3Q6}j:ё,g;f8f֥Cc(Z5^}B& E#=-(E'%Aͬ=b+ N }4)Q1PJc+m?>FkU15J xyټǷ1?\*am7<؋8?='8RO ?Hk9iB]dҬE5 %mm MPpV" > ɴ[ "b, 7SŸȣ8=A\oqS1 gq-Pɽy1'gюc%Θc丶 @g/OoFPIAAܼ>mx_"X1쪗cծd.N>9K0+!ݝ6]޾]/F;BBMO b; &~co`?om>(:d@p 9&',XrgCBRB,/O/]~:?hh^q/KNoٽ暞DQTtZ _S^N>[/]Zqo,z0N2";&ߓjIth-D1h A4h`aE5n#FE$YI)UflY2,/Z2 bǴ,+%{P`BۮHNHp8l#Zѥ^%b`7 vŏ'_rq( !, KS0Vy;đBd)=+=pA/B+ *ϻ0B `!Hl (EDTh.BTtFAȂ= N^";RH"}1F+m&Ơ(DhC33`&T C:ZMތ3:U  O27R9P2Bn5IB,X"?VM8QUb% 3giЙyg5219#"ҰQ\! J@z_xh8>z"뭿.al_Xjk:jt`; mm; XlkNH]3׼AdDw^D T0RM9`7 +3-V1c]ac$jټCtszp:uFS0:i0N'ps!]nW +i|q"qdx>a؎NNLxB? J F4\gS AL0 vS\*6DHf+}) ï@M`GTW^vY;wF4:hӘ04s Ҿ61aS6@NcN9x'y#F$ؐr"$.پP g,`CS 5@D ,JHUE )#vE]yS޿+\]_YbS,E@/Hfr?Qf7A6pc%>< AHғfvƳrcO|cKdCɿs:o/'%HJF&s CdDr)-aYu"e^0D'cQރ0c ~<Ɣ/L'mzSKM#98b䠚d`4&ST<ȹ>OxR՜ZF |XA9p2Ts( Qvu#!AD`ºn*c95T0l,t4MLW>}0')D?!²+jlK})M/cjo}M4oN$z[lu3\vUeti~rwev PVM R`7na˓a 0럫hv2lD#TqU P_L?`Bt lGv[߆XBصn 5>A4\M\xU؟1ylx" ery=k "ERJy |f4if`rq\i l)V1j]5yb\́:qrm$::Oq,ҺiH_HK&u~Yi&@F]:p^Qcr>%fGlhd\6%)Iiֳv,$zsE dfwnxk1_Zn o[' ^p\'wHxG<7{g\P>gU\ЦMf\+&u 0\3ym~s\;y}s]C'zэ~s\KgzL*6º<|wG^"` 'T=e|7t`00vzNf` 4)}ZUH}IM^''K`C%Lt@}D?4H7C& G@`6|<#( (@Wi?[H=@J<9+{?,>(?[@>ף=?a@@3LPDXD?-H»| <<?pHC(>'<8@@`@Q@s[[3DEs5@t 8?%ě+?>%$dC%h=C1?w ~G?K ?d?LDlG-pՋ:CĆsArzEH  ;)_($ɟFTB&,Ja a>p L8@0CH\ ,#qѓ KXôTQ>\?jĴlK>|`C$>DKKMLąL?~ Dh˘ ATK)8AxIF0PFHL!թ lš<>J%gL _$l§۬M. êTBJpl9f8K|tH?tAEK˴Q=8ȬiK,SĄD/̊Tϗ#t ܀CTGk>˙LQTB$AA8XRL `ʜ PJ\ mN M*݄ c Q J0LN[N& аδ΀AAѐCxq pBhl?ŗIi JK9Q Mʘ(іSD}G G=@25GSю\"KLLERC4%R 2k˿A)-W$Y=lLDI%H0IVpk( _M8m >mE0$EFUaί;@1;y@dGO MP|.C(HI$ ԁ]=-׏$D ?)ȀM+U@DL?:QU ,h@8AhP@9g>a\TB$$T]J|M-t.P=T,WL]5h48>y !(P;mWW[Ke;LQTK`DN JfnN92_3 N|@U.`aV>!19ہ0fW`he_.}VtzRuaahZf‚ne>f1e9mfh_ g0rbtNa_1[Uh,f1i4.ivg~}IN)ua?&c>U_>giW.߈nafhnjhhh-^faNVvaA ^逆hnfdsn柆L 掶D^܉>KujK Yhv儈^hd0c|ic>klv ` n֠3N?9ڦkelNf來dž$ƉTĎM&MlZ#,Օd捞^𚨁 U~ܐɒ$!c}`~~>k+,>PgIknNVLuT ӵ <եdjA>DńEtbdp%ŮĿ}$7O}DhTɃ>H--XOX%V}؉tH,5vtG?GKLғGtU8Yy5GAQMtXĮhTX %"YnIe*uxHc"2ZL"ȑPz _RB:u mYS :X`iLW֜֜$NHx^0wh"ۨ2۬jP  D0!qצ DVPHUS *YРRUXުo! Vj% , E.,S hc1xdomHXJVH-uT4|D2H\)=f9gsS:끰ܩ"JLPb[sݵ_c]gkݶUk,f@*kz 7Ċް#3޸C >c]t"Dv ɕ騿 SN,^㞻޻c} Y~ 4m1_c9s}̓S.{ޣo/.J>W} qd=z\ Bz MX 7v! s/1l\A! ak2niQ @cCB Jh#^-`ㅸYŵzaHE,q1@11 WޡьQT)E`G x9FaLآAʱq=!qQr`̘l ,P{*JarHIC^EŲc$gHz]B2̆ q|g`H&9N+[G9GSR 2 uR-dBiЊxaݒNvL=C7ЋT*bA;B(LY+hqeguQՂEHJHH LE>p #uDl;}Kp"!.ȌO# DFE-JHEVnibu4 N]ӛ~5\0 P6pGz MLJ  7 h ],2ya6`(@|ͽÖxE:5 䧞0$Ե14@_&4 c c ƃ4 t'fZ(tyqm.1 s 5#s8V1u=::$dz[JNef4$kdWL%/^;^? ~![cDZpЈ%^kF9 @#*4v )T̀$ڸ#[g/YϪ=@*K:"HzO T(|U7Rе[KZvZF% #]npMRF4IeTrY ssv|\Y/Nw~Y̼񗁤7zAI 1ihvޡ^:4Q4$u.xc cP()0 ^LAxld c!: dM"i/R6/x.; R<әQ愊r˃Wt r\ ACn1{urR\V5|)?]p" mT1!s q/QtzGy^]N9M\0mb׈$+4% Nab@6f܁ >0ZD1g1;䇨E;>+9K9fOc7DXܽ΃&~W>c |"3z;)b÷%A:ȭm}3[ 8lo|dhr5%p1аNj‡|u6ٷ9.0OH ZUܭ@S~*A>YNs[|Ӫs3g4(kQTA,@E@]\խ d YՅXT-@֏1^} E[D g5[D g9^rPU A gm` L ݠ؏> j Ap "ad͠ Ɯ8Ei9uіeIE%v-[H_ٞHᖍvW._rپQ\AZc^К!ZqE $şu*_$]ϽZ R Lj|(] 0 U]V`9D$! ؏2@N4 5`7AX#J5J! `#LU3tWY;F7zIa"}]WeW鞼`pu@pA͞B&We,9 oY>9d""d- =" UB@ZXfAQˍ PZ(P]X$R"X(/!YQҁ^5%TLX c1!#Dc<:##dYaQ6F5>„]_*`<#d b"f8&c]V&aJ۳|]FAF)-" |uAIFPEaA|)Tl+kAmF;]ٿETI 1l GZ}_uvܨQR*y~Ehl*\YeέZ\ϩgFexUA[.U4,[0e$Q&0e =J ] feD`ff!& c2gj(h#?nq(bZ!]LiVĒ!y-iH0@&A%\Nh#>67Z#6Jdq Eig# 7( 晆PDDzeh)g(:棍h&)5fϓDE4 1R`\DY~2b&pPrE]r P|gƩU xި!֨>B )^B7cv:4ZaX % @`f`I7b^ 5bqJ޾^f1!kg1&+.i72,a^f ݣJ^]J`@户,ukn+a @`@ƬЬ  gDa,m mRa$@::OjՂD\ۘ٢mڪڲmۺ-6"]mvm"i nD*BD*-nJnZ&9C@n\nRnnPZ ފn~Pߒl .V @C8 f|b.A3Eo4MDX@Ad@pƮ`.P (Y:.F <>dfDf*/E0Dj2@ _ @ P 8@Aԩ*֪֡@oG/z`nEpLp ci,oaY~>D[ahp 50ΣGJR0N tAR-UdpAiDN \a~CTwF?BTw.]Em\q@{[_1TA`4 F"O4%1NdSg&('1Gލ>qFKǜoj D t2/[19D W Or|pA ˯mr2/00nr4FR=  8 %쬊A 6  h$Ell }]UJ c e-1>[ޡ >/>B2M17BsVv8 /pxfJzDl52sL7r2/PF]sl (HA`,@&L`G= .b֣;;G(z[֛??ZO ,!DAp*΀耦EC;$Y"PŇ(H"3"qˉYG{`p 5ziRK6uz`SSVzkV[vlXȖ`kF=jLAgAKnĻs`ǏE4y^eƔMymKpX͛thѣI6}zٲhٶF.Ճ 2I 1Zd'c^,p↻{G@QWzv۹wj]MU.ݺ ;T1 '!8,0Oo0|o>$>{p* -C;+^C*6@( ;z@(C, GT /kME<ƑI HXi(#!-20 7$C q+5|L7a@h-4 0 %8 =D:MUDPVR;TSO+R eC&= ҬV5.A4tQ7xXT!bsP!dMGLheD&mO_%*[6R8r}X`rBt! *TS]U^)l2r_%_8 !2E٭z0zP@!>WNN<{|}YY3"n7 -8B hAXb O:ق(lf:[Ce+{>ڋn7ض}ep1H`@$@ ㎝` F)?S![,S]oܙrsanb?OBu0$/`.ס{ `"JG fH"PFePAg W 0m+|T {Ʒ6 -!#BCU}SAP}ב0Aͯu<1 B0QYC`I& qH<(χB"g$,( tЮ@{SA`  07}l p1m=[WM0dQdjmI _i捖ڡzK^64Z&hTԘYr`'o~(f )' IyNEJ>$ Tu0hTTkP5!ߠ>ԫzX0bftc4o,j5bT  T6 եDfL IPsm X R>-+:TŮy, ! O6SFv]WÚ;6V`@\7jT98[F-)кOu4(KPr@ L0l);OPĽq;K3Q6=/U_Yf5͆[_~_ \` Vkh Fq!,%8M0>R h4$CQK W @3_F*A @C}?lCMWpԣ`@_sR\-pIA\S ~ǍOKAyk m-g 0`k>ћ}-R%엀 — **obR&C,#0 nڨ$ZN0:'OP0#FcH.P- p.8N8f9 ` TOfvnzcp F.,ndp:x ,b`h\ ̎"  _CP8Vo-*PWo00Il/oe@"ͯ l3 `].=6B5Pq ߎj+ s)p. " k 6 ܐ",#P? uB 1( <&wpJo-1J@Bn-DEQw`1߮-!10 oB`\e6\EXtQƐVn)fWh51` [C")#%/]r-QQ(ۢKAN[)o 3)J)**.P)!1,a"ò"& y@b ԅ]^E$MR)Pnp[c &.%1Qo/@<|r(26ˑa-W4[2 b S6)4͒a!e5Os-B  Bc:c@FdBdE J }t"aᘢO<&C-D032 ɮg$p >c %:S@l~i4Anz Aq Aё \3WZ @%B*`C27bpUTB rj&kκt+imef"<+,oij YN^<$? 'uQ&sG&4h.1"q@1 DsُfI0W!oJدFNZyjP[4J’OdEE}QUO4y$0GsssBǬ.ɥ8WR,P-(9GmGxWXQ΄P߰[k)5UR Bb sG{JI4کWi( kmu')H)Q((^M&/[#Q$6+B :âV緐Jˁ|V̦੤_ ; ZGY$S_ @)bUi/+1 `#$L:\ e <fvf#+~t JsjfJQVUpZinC@6kʌj^AklʼnB JEKm1˴6hvhb:s?tCWtGtKtOwC z.ʘIxdveAjžk{qʼpvw666g2Zyh7c^btv44ft KW7w}Ȓɺ|q5 yLyUh%zzVnz" L@BhH޲W|}xhe mز`qqLz7V $s`F4,$#@aaBYBvٖٜ ڤ~:Vhx@RnR|M!9#y ce_d% @q~fGb(։ǘ"O[O`8*fGx ]atO(혈$ybX b3EZiK<8OSygඔ*&cYgy*sYw{ٗY٘YyuLN̔% o 9Yk;ؕYBY, S-(cˮyQYϭ,♞:w-%F;~ -+Y[3: ?t$:@ڨZy,(*zC."k#`z٣{ LL8Nf:!xΤ&Uz  @-Z-&zZ˺,0cm8`![<%@Zz8B꺊+uX!-,h+۲/3[7 @->;c9۴OS;%ڵ+[ ;B"&[;={K[[Y;`ٖۺ[ٙy뷥Lp{@[[U>,ܻכy׾5h[C%۾\\cڿ3|w)(`z{'\ŗ]X\OSlacУKN%k/u``bkx?DL!>)S^PϿ ] xyA5`WpKz{_P򑡂A*1g(6`B$(Ѓ8xoqV,bH<,ؓBSԠnadTVyUA|(2@`Ba@D% yPj|n~Bݨx0ĒpAb/ @P~cH4߇*a PĴ`娤J9aeA09^)y&Cj$`kv u"@4CM{A" 5c DB1)smBd~*8t u Q:vkAC R+,.R(3; Zkl( #Z)D:[n 2G A;|h9s%h3 C2Det D T-5BT3p@ UG 4S]\uhg p,{oA )Q Z0@BD mAm ǎ`7|_ tq'vlC/nemt*r{\NHCBD @ y aS= qC?Z/6qw]*E'}7 Bvn)2AsX=zHA@v:u%؋x-K)i!ΊQ2j[$,@C뗅J@NJ /H115B`ڀu)_'KYt aWDPNmT$`EjSTk3hT*̥vid+fjV|#Wo5&QL wD  5ͮJ 0\B8NGUHaaIޕu8фj%XٟvAX,`ey]ZN0%; JTc @0t߷$SUVlDuJj]d@7& fWHƐyLd$Uůb6@ҭ@c92.+L棔gY %I4[x$(0Iqm*6I-dDpU54 =:VfGMR VjV ԧgMZָεw^MbNf;ЎMj[4ZPO1`Mr/:;D)XAz1`zޕ3 R;!FLpS x+M=ȸ7~3! W4zk mBvcD`͖!y9K\xЇ.t]etwvȃ=HCu $LA4E:ҡu (@L\` (6׀eRJB ;R'G9n E(CD1^E4npc^L %zX+T҃9`8f?k`GTyGm=&_Ic ѤO&T@'wKQ n0f@l 3);8Uƀ~eAgs"psWx:@`xvI#pstWx{Gw|y7EwtBsW8S :pE` [ CXxd(\R(xZa0y %Yѐ )z( ߢ(ȴSFqN{;cH'B׀ ȄBFUD:ȉ8F uR:P;`Gf3YxZ#?Z-Aʇ(ArϗS`/3p舎8^tgC {7Gw~Hx}׆e#T~6xe ~N vЎCؐuV0v't~E 8W?  zXzZF5`FhGzq*!C"̈́ agFcFfgfC3V]aШxm9K%R5UYC5"wb*VqHgiU9\uw=J{IH`b`h5&&5ga$~o|'o;| P`明:G*Y~琾 (~Ȗ_wxIᐑx>(xFv=Z9~yN%9尞`yQ' 1ʼnV9U;fULNzW1Ag)!({NUXaP ?z,9P"ډi6f~n6bkzS.x3CIaf"b7D-1BY#ZIUYJV"F5ADSڤ=U3W*fj5`hfL*p>ppte ::u$)`)ٛzO~yӉDŽ:`smH@ꩍ*)Pٞ(P)! z(X2# .z^9 {ِ ېϣš  DbIբ˄|WPjd5?e38c`>y; 4;eTIEOV5;46e56_EFŅ;)alVt&$+jU\Ju*[.0鲁YEO:R*/`97 Z<{!b[?Uj]];11> }maQ3}: +lP z7*7M~혩 ڛZ al[DVZZs'H : ȁML,J:=H=@ǭ `5%ZX 𮨻)6kIfmƏl;*;Eu[UʋEUSTTӳS BTeJ6 0+U+%%昈Ʋ=+r++|EJLv\M+V C[uo 2qV{F l3@X٨}Y9ٶ, 7Õ8_ "u)z;y` @  #ʖ[ Nk{{8J.1Ƹ*|kD| -Sńǯ2YZ%Ta1`IBPɉTad5iOqi2`CJUzt |\cg&&.Oۤl+RZl˺%V1VSpG #(cAp"'& eJJSu~KȩYםP  ]Hw:|iG]TQ̩,Q ? _NuM9!#¸\ w s,٠ w̔"*[ ZA)FQ=)eotUJR;7%`./ DTTCZ]36S K9Yg*1q-5P̽l|ػj[po][]A,Q8<¨b 1ꄐT߰Ef#uKSXb(ۅWiwwy|[q[ ƈ:9(hL'şbƣ8ޥ g s0x ܭ-e9艐^ NH5VTYPuU 4iCUfh5aVu͗UCT,{.=D>p:z'6^؂ͿXh>l4a]`_vFP Aј>xsWy -) MՠIkMJ3 <ZVXJZ<؏ܤ ^9謾oNmANU®Ʈ_tBȐ ʰ ; ː e{^ LN ;Ya;J`ENmfW?<;Zb_,& ƦkI5)V^I9WaIWݤIF9 4xK+ H^N$TLi0/@:SE/%@  Pq=` QD-^ĘQF=~RH%MDReC+męSN=}TP,EZTRM>UTU^ŚUV]~VXe͞EVZmݾW\uśW^}X`… ԒXbƍ?Ydʕ-_ƜYfΝ=ZhҥMFZj֭9[lڵmƝ[n޽}\pōG\r͝?]tխ_Ǟ]vݽ^x͟G^zݿ_|ǟ_~WKx!kQ@"B@T JP@qPB/C ?j1@< ч+DX g1"v Q"I4E; pĕ"1oP6BX b2pJ$p#ɅX4A< B%Sr236&|N;F3o:P:3@EP 3JM#RɃT P3'LT.=lM Є`aU9AGDUBGaLW{UW2T$@bKղW[5GE7]%$q6Ѡ] \ZCU(B<"A(RO I\~1pWi7wI,Uc.ǕT=R2ٽ8L嘷fxDqu[BG4O?LwU3AvY`CUY`W )-]˂D$\.YBD,y㜟e9Kb;Z7`uUeks=DPM@D9rbwz`;!&zgPnTbUz\κlR\|Qf8kӥzQ>ʴ;T>YVBĻ&.ܻ̕`?ͯv]xkP]m6Ե\{3ʼn n$7unsAHG$,У\BR,`B|Vr @̙?Q;s{J?_#'!!{ A˾ LG85L1c@C@XW UHBDB,8='$ZaP̑㙶3"$9$4?ātqE E&|-t<Ź0 ADXA,B <ɫ@Cͣ=>\:JDUXHLHV0sDGutD(VpdĉPxǧ.ZD!2l Q\PR\B;飲U,EEI`>[,FQ7R'1La#9F8eȈySB?j-[pFC˛5I<,DLO@t|>xĊ; S`*~NX3AqTAIK!aC4?U#$˒6)#ˢ"|\9)L yHMk̗7GlE>t/pT@G92ÆL@ ڤJMެ(>ˈ)PJIĻNl Нd?r˒vPLDB^$W9.tOʗ;17\*yC1MT1CLJ2qM*@NM Q(M.8T#ȴ̿AV4gK @E9:C+K zZK(ͺB!"F4!hM2Y<T8jѺPlj S4*RS54X4 J -k#"!;.\ #0ܯI7D#/Z2 0$Uࢃ0;趍 RZe1x0l^eb] _<$Uǽㄸ`laia5C>DFn}f]\Ȣ(Em nVpqshh&0>qg+Vg6xf|v*Ik羮sƨF.ޭU8C6j aQcJd !a.&^ c.dYშFvjI&@j^nᤎA$j "pKk0x6Bvn58 ( gvhFljYohPlFʅQH]NQvR.݃i;6n]̆ dFj [䚆d`mW`q'qdnoblHep]^ `F&\qe*$黭dHe%j maaV- ؀:s oV 8g@xf@nChLƎIIkfnu^N+N7u6O T/ S/,TWW V',WZ Y?  )G^uF +ru_7vuaw`q*c` 1(+ gvR2uʊfv^v8f0x %\W'TG 5~'xVWgWo\5hXX)LjVtyh` |O'FؘVP`)Or6ؽ)(9׀ `w y̔ إ? q05xNܧ(,{,,Ȃ, (yg 'vG*v|y'p%n Q.fn>Q'o?y^g|tMgv nG'fh}#v/O@|gW|h"ݚL݋{(пo% gsvh^|kufPg|{YpŊ&Zd(,x@&2 < .(\!IA 8BA A&Μ:w'P@,jQm)ԨF}@j*֬ZrjĨbǒ-k,ڴj(@xjP%z. w7[EfNoʔN6' {r@"wXckZ&Ѱ0+KlX͵guͥwX'‡/hʗ3ozֽo_! 8a]0`^-.o&1S1Ԭy]fwmKt}9O SZo;gz(܅!8"  ER\DvmMDdQz1hc:j4_D ,g=hw㒕`G Va%A E"ӆ BUL!'X}'}UA{(t^D{Y֘5FQh%eEVk$GZ*^~Bmٙdkdgf@ kQ]*@t Z%$wx1õrEJgV{.9\Oe)zSI'JLQMȤ{}aG60L@i#"05Q/K)eڪ0jꕬd&AD4l02A,۱$ղv>Uut'44Kk~a#X}4[y)y+8yaBw #ư11bl]CJd'QA%CoihUc QkmKyP޲; C!&P&C59E+!D7U^ 4^g%HRg{GěR Eי`2!ZaQ~HD WА&D~Ɇ-UD E!@yHo!Yi&s|=$(2ԥ2UD Ĕ<@thQ{0_ǩ=,bI#˙9;Ҭe.aY:Gҭ®@HZe9O "K9L Rye>`ctP:%/v5A=GT3zR&b|X"?y*Q;w~(=c/Ӿ=s=/6|G%o}^;΄֝A>0LJ;p}I> $ l-xs]Wuy#UA< |L\Y =Hȸ]L5`5 N̠!e7]%M @@$ |@x ߠtKX(H, i(DQ aZai !!x`@hp@pPٟ  a !bcYHȝ#6 @!""f" b&v'J"(O`z"*'"+a(b~ "-`-ޢ+$" Z@HK$.p` A9 #D,<#2V.(zQ) @c5W(#X2QY4#9^"Dch9K17 7#3B[cL;"9 #$8BP,#؀x(# >^O@F6>2?:d£Mpx hc0#@P $>"2D#CG^:#`e4NB QQaKKvLvL$RP.%hT@V^QF9E0NA_B Q8%azxP fW %E]%`t@%[fc(m#=2]N8D_&G%^r%VrnޥEFm$ohA ,@r菟MEyH[ak.e\NP*tfԀqV T~-MA6D@rsƀs^n (uOXpj@&eN,R`TDjD'鱧jS%}F\f]g^'cV(!J&ѐ"EYC&hr &HZ VfJR(@UXL\di@D" S&UrFOn鈴)oJ>qʑ}~Nh0m) B"N%.'ER0F%~eX@:*t8jlvz] p͎lcp˲u͏8[\DA<@AChyD)y ɯͭ|H۲.G+hXx[rLe %m鄒$ii)96ck`Rtc?Ck[&K, ثYv%E\DcDXM5[Y\LiLHЅDjlydbL!\vۭ,ў> fAX *&]-*vEĉ,tlNבFحa,m)4V Ol-lL( ۮlI JBdüR:(G)RXْ&vi@(PUܢ안0HDl ؈,b 0 fGDtkN!H؝` 2I.y|.%jH ^E@@\\Nokʤ)h&0h xpFXTI$S1& BrapW֖@h.2//20031132'2/3373?34G4O353y88lxG+@ w+?@,@ {p2(s9փ3vW?M<>qr_6wG@(&=8?@9p`H 6aÅ 쨑@C0 +J$I^&IbK/aƌ 7o!D(LG&UiSOF @UW^m AKQU@Q;|qٮsp0n 5q:& e ] Wa; .|[=(PLq.\q)֜ <nʐYP1Pqg1jܞZ^e]rl  5` D A?&l>`>:tB )WIHA՛?c ?&\﹋@ BH?ʳh9B1+S?ij P@. x)<*AnÄXhqQy*ꭄjdȴ,ʻ4몯HrknPA4PKȶ́- -iaRI*ᯄj{t 08`xȸq@>*hH)uhR'C"%$J.M̃@QOE SC=]c0&T0=9:>@(XfytʉnL%[,FW\4"L8ܣj@]@ax7{7)7[ȁ34!V5%:7˷0ͼ0+-9vx`xRkZR3[^ρXb͐míгjM> $ o$\.Rc:ñv6%!BbB"m9#$>d8.ȦO&0`[%nO)>  %s)ؠXIj\xu_ )JAJͳ_~Rx3/}>D_8xR %7YL_ ȍ2@@9|C@\Ӑ"΀ 8A@,j uThMc/[*mbOWqv+`иnqӴ69CmuZR[Xo#XUgW_Hg q,w΍t6o ޯ#[Dq_PK[%rp:APAw_N7P s؀!\E:Vq:sT82* 3ũ~n d~k9V0}2aqO 77tC&6㏜kW,={;@`GY|WKBh; b/{GY;.sV!}wzۇJ 4mKHJr;]+?uπ{V&Uю(TRT2.H&,OM" o[B", ,\r 4& %0WN@:,=QEV"w""/$ h L-P"H0.K$lj&'\F@>prZb^Gnwp^&+#W .k 0D; $ AV / q0*C>D@L%H` <'2t uoqGp*P"/w(o r2·(**L-첎8.tO yp/۾R ƠFb\@mF>0n2 ۀ 2T`!#r@ HiNr`2 0332`wQh* 0K]@ V ?%%)&)\XCw0H|'u7c'YFL U@NHh0- J`n: ˮ$N9G O 햒;#=pJH,!A$0> ; rB `e‚sqvLIʊH ХN` V5]5_*6H-.S71~}zv*D1b paR dX7b8ca@{$E#CGI*|HGGyG-MΧI >Ѯ5b'TX@E[^)l];˱ŞI,kN9ԛ&oCf00rKFet'7E t@QWE%DW&2,GD0|JUJфS}8`T4 UFIHT-ԥ%Ku:Z %gXl^tJX"JlN:@*O׋O%`Mԅp$Ip*O=Ž%5Yeb؎`"g`hsCH Q}RbzX WHOE Wz7Juqu(B :'ovEӓЪ ٿ )f P. 89WVV| _Yxvr_dO@x}?d uII7PeOWwPan 2/(h).o.(Q?.Ĺ9 ]0۰颮`;sgD/yžoa.>YM m%MyI-gfyS* pW;ѠUZjUzs/ZnvQrz `OoP٨IvdࢹXABZ|MmQ,pBk oRZ0i:: m!KQm:/ZZ.[5zꫯqejGL ٰ gq}p] t y1_P1 [swѶRw;ٚۧ,[PWP*4;|M -E pIM?zڥZ"Yں/aKbw[:.0[;Y*/;/;wMѳO)%RVӛﻡNѰQ\ Zn>j?1 sM .=0e /ڛIϱ2<,\1Z ],K#N2, ۥ4]z@d]\ W4>($(;,^`)8w\[v ZƂrN%B<@ ! As`ؽ+C}`6>~P2>)XUY+>~빾"4A!v~ ZZ)>#<6^ "(^= ݗMu|3OKH^, ')D^">="2> (g B%9zZ͟J 8 AA 4`:(Bi_/|%q艿"_ <0…   ĉ'D  2ȑ$K8Ō +BBC4, `@J;8;@zH,Xcl=6om|!ji%>`C @0] _/”v'>!B:5^UM[ݥZnVwqgLq|TAZM7P ;0^yQ7hX' b \2ġR^@` w m &T!!%_ 1#ddB y5|wu-U9#M@Pq(ЀA MSpDX [~n5oa"gI8P_"Iw,\Y6 1{-w;ꢮ") A " A9@F$yqI^uAlv B 4^ @ qZgi`_ir ցQvF҃EFǡziOAp >a %pD$DF/!`0­BVh0\8Dʥ "by1!C2`h`T6B`K[5J3d=iEc5Vy  Zeem?3, 6-%~A*%}7G;tj;@|@J*'^\ 5`*RNⴜJ ::_j+SkѾ4*Es'=ڳ%DwxR`=䷏aTxQb,`yyE?/ãTsL.L%0W@Kr;&TMs ] IwAc6is](nd'S]wr:/\+Ki/z1ѐFj{P@U,(E?B,/R_X .#8grcm2Lv{ NA - mvFQC*&[̾ $y+| oK|/k|?O[ZK |` KB˱0m N! Y҂hPY耀 sK|ڬk}\׿`=d/ώk}uq Wx9 ] Y؀d Z<'ϥb{W跢7M@w{>My8Ac:E$zԫ~[~kD( `/!ހRx{wA⃾}#FxFoW|I}}xP((1}G*(!h~]XIȡv>tzd(20hvjlj5hgwRr8?HGgx},rrTXVx8ȅZ0q%01Y'C"0aP"ڈvXg6C#>@0eW!zFCBA1( ІxshHцxC(x6. x'RAs2!8@BKҌḍ%AxZ@vٸX2xv4)w)Af8S6(&gonfhwA((wI/ I~vP^HaȌ';̡2C$f1^;z"RAkÍ}(b*R<10ɗi)7 z<)qc,y56#rюXщʼn! p!34B3*()=<ٝ6L9i9ZScF!Ohiy5h?4Zr " 2s$0(@l uSI q4ߑ8Y2ɵ;ŗ[';9)ė*+AWy䍡CCl[ 01*:-꒽z쳏:?y٥,(/I#f9dڛF)5Sp=ȉcJ*E[?{UZqyT>1>Lg!*m@rpquNI vCwIy;:U٨:&٨Kjx9DEICJPڙ3*:`hJOS9zI=雝eטR3EEY)iJ`f3?*ҰxGɯˎy?YX3H')K myЄFĖO0JJg* 8K:@2;*%4J( SkV:9K=ٵ[P8zX IT+dTCڮ ɦ {E)Ztz멮m;L6ЯEDiG)ukI!;f3\з5hdXU`7눷й<۫>ˤD+*@TG 1$B;Q@ꬶ)+ڈ\CcS :)+LK*w˷h{kx۸tJ++53@\- ۦGQX( LK d 6[;k=24 :XQ۵KW2Zg;Yb)%<CZeyNYډ"![;ؾ pˮ_P)%)D {eq @ܝk^{Jz8uy !ؤVBY2.WDl1쌚<y"gpXʤ+A<zƋ^:Ɨ؝E!ŷS29ƒ:;!)[+ˍkj |ٌ>o ޣŧ]4lUP 8{؞s;I ѵ(VK;K7p; М)-Bb"ЦyV;зK0aͽB0ٜP3+m܉R4.dc+s bj6`:4dFf3ԙhc*_Mz%HW`J aظֲ֭~?)uAtz`]dbQh֎[WDyث~zzIyטz|mc&l~_R^б4z}ғ٬̗ٳMi#A% 2A)$ς-m/Hܓ"0 P8B A܍Xp!'Mm=(P$tH1.RrAu-&ZXjn $ pRQ'S.۽'+TQ}f]/*-=NZ`p%u0'(CbPt.yzp.Q L*!(< }`~We.(\Wa!z'>jnnV%F`\-a "aau%rro.S " rra@^'ꪞl7nWw1Ŏ$ @隡 U'tY!X\T.r(B'zP'9kPW2Y=TN/nD蠶PlP!S^. .t=YN!"2SR 9:}68]w5(a$Eh#N !YEO$X%|3+&?/!.xbQ. ^1Uy.G@#o A4&Kl\GOQoS/,XDz4_sK_qz A?APn8'r+傯la,2﷡$/NQ<36CS373͓cW#E4Cd+śM6]dTSh~CF^nZ3 k5q3SI7ڃ7@p D(8P~XG!E$YI$X҄ $-+¨ƑX@^ C #{$ *}bXҾ`~ɟ;*ZQ[" p/ccxF3kTcF5:E3bE&$~k%Aw1|cv 5`0Ŋ@%A v9B*(~_&GIKޯIJXƲG8F(Re/}K`S$fiL9qP W&LL@IOR<@Bi':}QD8i bWO|SicS%hA z/&s̴HY>[!s kg$uMnJ=$ɗ0*+yA((Jvr&IYST L |zҠC%jQ(tsD.#=_.9$$%EhQhZ( QNErSU\l0 ALBSKjT&&BoԥѩRVZ/|$X:RHVh5s-Y]V@ l`#V+.W(FإK S^" SSُT#́٩|VQ]9 NWP Z6o hv?: (puYSGynus6.s 62#L-<| S ";cai)@dA;i8ֱkiNHFdA`""eDA#aDb9a[(>nrK!%#1 ݙN{[dMg/Μcl!$6~L Y/|\>jR<^:[7c?3#h7r@6z{;;C;4 /a|A!2h=@”L4K1?4 =K747E<$@.y0q.{(W²]kqB4~h k R`򼓣CZCJÃIKC;!1dD4q3DI|{),A8C` ^R0*=L1@ DUl}+X8O"Z0Kɥ=Rܷ+,tEaEbe `TmܑiTZ@  KNUPm pOR|  ڶZYRbR._M*͉a[y1f  dUmyR'@[OalJLNR}`\P޴5Pi05U'\E}\ ] \%Y=NvUPx׈u8\/֨B.}: AQX :NZ'P2Զ`8t:x-R% =i|UUYOaLXUi'j %,%`౻e۸d.ܩʕwVp `Wn Xna= & 5N}$aP.a]6mSx]\]bm$?HD#sT )_)T Yu^Q) =m:X>&߯xcX߲u W*TK*%z zO^NW[V JDa oPɲa\b5rI S^Wf0b_V!e"|fa%XX8%al,S>DpQ3y~^g89:LmpHK+@An._8䣸DEuMuR ^ddVnem۵2++my !e(vƠ0a(u%QLP'evܤ&ўf[~jjM'&ݦoj8@Bhv#O-fh}#h4ǶhGQHFERY`h(/잢`Ni-i OOmϦ韤Vl&QЀ#5-Ykeumlꢆ']S>6ZnpK6>c-ȃ`hրPڊNm1Љ  lo4Uvh po~I4[FXv][6^F.tڦf38וmH>ae0EnaߔfuSP8P$X\$%j rA%j'rXqۍjفxr&Fy9L0Xё(>x>V\ 7dMY_&[nٴsOVFuWW6^-+)*v= 0qgFW3Xs60rҲ䲟 uD7Xd2" frlyvvfw0nX]ka񗉡qSќEL VLK>^ $ +8RwIS>\JPxnS1ȽYdz4})9G)@>~爁Oȗ}y)PdJviJnM]Ȗ-"6 a|Ozmy''GeyT`ʟ<όȓ\4&Zm{,{l.zNɉ7xfHɟ|ʯ|˿|||H"g__o|\T|a}O)(/҇| Wr|}IAG}ҟݷ%~~#x$w|Uwާ~$~b`'@ڷ}G?}Sl~8p"LXP†B(q"Ŋ/b|0B2@F 9RI%˔AV)K#QD 2#h"$Y0a *~Bzq2d W$VZ!Y+ ۶nߺ= AP7Jͫw/ߘx a`#MI1  eD'h7Kv!~E )-ߟA3W, S!b&F[R%ukW`(KlڵpKi/>)>.r1ݞyqY? ~}X 2[ m xQ GO/`# /Б+liWy☣wGQA5@DGG a'GXED:vdc9eK"9&HfCH9X!$䐀 &jGzƧxzv6fh } $) P }pEX(!J5fBRǕ@S'jR /TR 䂬ЊF kq lSz>꫻ʫ@&yjƒl+Եɦ Unlo׾0⛯u3^W#w7X_2(HBY Q&HXF}E"{ qdCRL)9d1f@Dar5lv aQÊG<-%Bt3Q+PA% 0@BQ !촁gxniA+͍B^xnДP nnSݫMm$1Ѯ gN*DnwmBr..X{0B1AsxY„m;p01J? rBL{ !GķG/auA&;_h# o*I!T4 L.!eSB ;Ww A pY`vP*X7K 쐆,^]~ Ivt!s.;NA"1-Iؗ7 RAdx7 hAӏj+QS Nxu|otc |wOۄF%$kZC TB4?@!$׆p z(*[y֬8Qp- )@&V ,@,xUe(_}Җ|.EK%AlH0dB3Y^8H)͌Ӣŏ5x453FFmtcFΓc;䏛>&lΏ" q$VIR244)7`5ΓAB9SŅ evCƢPI撇plҊT2 v*QB&*5c@O {B#0uz|*&hkU=y1shpgVIPGJh% BA:ЖSx:THp Y:saK\jV` ud>2)<ÁTHd(ņIqgyΎF$́K4<cv]`eOsťh:#uE ECL`^ݙ!a|ǰ]x7wE^$r(D <XS)4tucp@Xq i*˕+e nTh9~ĽJb-L1& v &̄>X򒡠$;' 6RIk(S 5.|?NzaY$=aL]S6rP{ e67-Ls3hE Qt(c=AD2NPH$Я9!`)r+\V 4**.Vuq(P4'b)֪}8l]qN}[;Y86h}j˧?2l9c!ɔq(m}勘|>CȺu`F~xΑ "D|`@ n%> rFt k%M6 j2 A6%Ӆwb>W6i%. 6V}$e&zNs6=ViNڪDѥo'DEx ` nwt@Pb8ҙyAmY"9D˙6n87mP_qz`-<Ё@6udyA^ ` BmQE]͛]`JRPel Fx"ԉ _ M^}^ ]a^^\_aVa!!"^\dE"DM^! !㱟)^&*!6ɡY`a B ULRIUH|DA.&/D,"v4bEl!$$jb='鰁ab(]Y9š5^J 4m3 $3*! c1!5>al/.ʇ-.qdhQYW0*P9FL DYN #L#ҥn_$٣ќL]ݛՁa4y1qFM2 "G|$DiQR~@^C0BR5$\#"by(ə aPAp\e`D|mILF 0{Xd řY JZ `.7@Iʙ|e`єʢELQUzx\eg DPR SHbzeը 4M@Q< uIGlU!bHSU& L,@&vrNk XLTLxAuvLUD\<O|f{UZLck:U{Xr<}cgsՑ\tS"_Q* @[5QU9r%V姚u(X5dؙAiH ,@@xP{&bhƅ|F$}hgA O FyArQ qPEPeƑ IhcY4u@Qw u;5ȋpi@gTh"2,)=SR)! 8qӒW^SJP$j8Y\=t8dVW)7R`D`Ab`AfdYD*H, k,)ߠ>p&ϳ>Ƣ>\́ZI,V]ejZ=(fVA6+wx(wFְp #DN nqpҹ hN%_V$ch qؒj)^(|^Zȸwl *oFOmjIX|{&@t0W*U~ALWza̫RɬtOmRvqg}oƀxRMװ@kIEݴ@xޠԭmITGZnf%>-൦ "o5I=ثf&!").#"NyMdqV P%o'q Qd߾En/FT$AcTABuCA VaM-P+A/cR/1 4Ep[xo'>0 ~/T^CֿVDUMSfSh EpoK \ hzpLDpxo.JoN31pSEWDX` oU\g50Ph1cQTMJ/c1 \>1J qq/ߨ1Q-q[`_s1۔-a՘͘X'خEa,FrKqܱCr))r**r++r,,r--r.-DŽ$*5|2Ǭ%jZ5ۮ%E!ER$ΰ ,-fmrFtq'1Gxs::s;;w/<%]kDFd3ed3^Ovf^O uK] i;uEkH\;6jcfG6LA=kL{^6agavpߴj6ȵ[@kImq ]G]_cθ%tt[s vCk禕@fxGrsv ff\qe( L76|o \ha5}Cs 8gunn_`ua/p[Lw[5kk\77ȴWrO$x~68&wwnxne&s댋8wO3\s6f8Ŏ[#ṵ5sOd zf_5`wloOoWEg~g9wc㹊w (׀78[(y[wC?:ۀi[̢_z[Oy9BЄMNĝBvP`#qiou;D;6QGzx79zz'z[<:'w铗:`vrzr|w?ʨ7kEp;EAhDjFklOYcGZo1p9;ӻW7{[zK{o;:mw<Å;E`\zd[T:߻ǚ>DH 8HsGOg?;ػ| ?W |[KlfkGwׄ؈MtJH-3þ$_f˰ W}AUD8p `bDTxcF9vdH#I4i"G 1,J1"5!͖/+jsf 7gCb 'PDd%L?iզOvY*ί:kUisJV(ˊBdzS܄צZ|oNA{S)Z hY"~PHh%, bɈ 0 M̶lP8 U rٺ Ѕy?.D۹w|x(}̞p!C䷧DL5oN=$ ""B143M+G(,*lmlby  jYZUt$5yяЕlXU&: $Mb5nEJ5(jOw7.[t<"rH67ns}+RSQdgΨ wyu ,;a֙7~~aV^KV0*݈kI\bO$m @7 L}P#@}5J[I* z}פ p6{s%׻:^"D_`^|\". ``mv Լߌ0f9fX'>=`+x~ =5vާEW?%:IZ؊d.ԑ=1uz3}ͥJkz!ڤFꗯ\+%LAY0۷[p^Gw\#5i6ڠ tX9]u gBwZ}0rܚ޷^5msy->S$a7W6xc$`jƿrE /C7/o`c(|jo-L<]o)E w}̤,wRF/yuš溦ŋTZn$m ؋{q]y(vIQA=^=<)PYx_ z{6;w5;Fz' E e/1>ðߊ`  Mt]Exg{BZMC½W^hZ~tb_ E"]Hw.0}h$Bdc(Fix)ttu˓ GN`JNiֆ d\I|H)Zjh<VO#"袜)11⚒Bg~p?+(OzB)~0jP)'/Ϡ c 4M Oî 20X"/"N@@ @ 02"aDXOdtl?K#$P-"N`=*!>@ J@c@x4 J/Q;8 >PbQK :)"Q$l1?J:,*"(c ! 2` E9C_Q #I|vX MNb2Z FGe>` \4pEp oiM ^ p2d6& 9ađljG?ڑ$Or@1#`3X4,5` \ffiDab$hc8 %if7x6#;[PR*O$*A,#I`&%DBQLe5O>EZCXH$`(gVJ`1D  F)#G $1J$0=*0!= `B²U^,cLh%-N6YN,{(V V_R//g 5}D\&ZsI ʱ "!VE,],eMf_~W3cr*aKP@MRRQ6Y.k<w#Ӟ@ *H.$K@h6e!@$`B7!^4LeN4_`g`-!aER@ * .@VsSŸsmd0vȪ 2b R_o,rJrpqEdXJ55>>BKL1BJnЯX³" bt'*kUΊX mXj">IY#S 9LճJg+0t2 x8@_(nj`KsKu'Vn@%bc 0Nv#" 3)HYGgsVgq6[gf`-*uad~5LQ6 Мb/ *͘ce` < čid+PeI FvbV=}bֶ~Vn7Vg1$WhihݒP5ޖjG l/[0qBl/'wmdVt.hQKskV*.%VøM3B|/[0OYd1jHd@ieB-fw1H(vtJthoU%YwKfd6R4bE '\hg&\~}~oZ"\-7@|/qcՍczzt7*w{S<*"qP|b ӜBpm бl T1z U j|5 v582uPq0.XḾ 6u%x$lmswhsDx\cOԊ;uхGX܏@wU!h،XocE@P;Cّ#Y'+ْ/3Y7;ٓ?CY?Y"pT4&? @_sGS;hzhY"l#JqO̗9`[Y?  0 6D#nĺ5f`4T D To2! J!;d #2PU'M\oUrn%M2n3431,r@krq2626#P~g`bg%6jD#!ftZ٩_qAD1)&1d- _j.{13eǸ:᚟DKdGaf)K2Ws39sCOYo8}Di{0{jFTNR@z8's2XrEy9 ;=:hnX[Q` ,nb`GBjXª#;&;t#œ֛<;jb#F(;4;"Z:F<֥]#@H -_Vr"4ߒҒXŶR|;(Dg;'>x `~;{;ZG"X(;< }ּW-T&ĥeGQ8 TflXtfN$g8h~I6Izh;k\BU3rǜŽT`h |! B,>[Bu ~<|\KK7P#-۲ ó)0 ]ҳ|&B]."&5}& 0<;VݜH&k=@]-P!~ՙB{RlfmnbT Bo,p.NV@U pU!4Iڞ]m{lJ'ܼCͭJ~x³*Bߓ;!ç˩* |!&E}7)n] +;<='(0pB~?X=4 9j9S|ڊ䟕wZ~hXIQ/pwgx5_gy V]#<b6>*[2ʿE@G_ _@F^qXc3!;_uR2%RdBGPY*W\$j?O\vߩ{^GNWM:fG%9Po5@czDP垽-@EVDu%&r8ۙi~WTj饘f馜v駠*ꨤj*U0Yge@Z: q,@ovHӤ`&6F+Vkת궾Y՟檠ݪDPn korn+fyKA+WUTlgw ,$lq{,6-DmH'L7م{3k4#l̛=kS–mhlے"\owlwb%Tv&܄n'g䰐\-0JvŤ].褗nA&{֬u7n6ꔞ*oȣG/_,g.h~,/?;PK1irVLPKN4zDOEBPS/img/deploy_preptarget.gifvyGIF87a(蹸pppLJJ]f]}{{eddMTMrrϫڵƥ܉FJFkwkݻyybbbҸź˺3937;7&*&S[SƵzxy󝜜𲱱@@@a``Ͽ`^^///RPQ\\\:<>yYVWjrzblu/5:V_gIPX$(,򗥲񉑙HEF# ;89AFK59<ąɽמs|MSXURR/+,mkkomnVSTJGG=9:WTUqoo[bi>CI27;'*-𣢢՗`ej0,-quzԦQV[daa}}UZ^7:=}FHKdgk٧Žꎌvtt̩dpdӷ׿?G??G?,(H*\ȰÇ#JHŋ3jȱǏ CIɓ(S\ɲ˗0cʜI͛8sɳ-\ꂆH*]ʴS>Xh ,OÊKي44t0piuxwfXW.-۷ǐ#+T!U6|qP 4$M4ӴUv9g-zh!۸sFBB˘-,׳>v`j:.6l\vr.GO|i{TS.\׈WB[mf* OjW`l&)D($@jYXz쵶]q"7 >tpW8樣E(vP+^מ{uf`r@ ;6U3Z?v#2"-@)%n UxYj |2"di'~l@e!ryq6ii#iZ n=f:(XF*" zNAb8\-ilO񰨫>Z<0B.rv!BhF+mONŨ@9 &gPk 5dw m 8 8̠7 -+ל&0KpjC /,2A 8R \ҹ,멅P\/ # 2 ɠ)C|9 dCɐkdLk*39l">0d50́ .7\FkGvim) ՐA(`[wv.-#.S A  8l.69a.>J3+B#U=@$ Ep @Kqۯ"@K #`2d &B.,tҟ!ḅ5ʩHAiCgP}d[*HB^y ̄&ajnTjH h%(8DlHD;-a7 T**9<v`4HF'~ZL E|& H'HvP5&@H'! J\T/p-dVqkd#}IzDp@2@0BVV%1Ia+mjK *-ĕtR `u|"0$A8G-:U>r>(7©H $X9 t!&ܹE l  &= 6BA JQ)@Rx?T H+bځ'0F*mLҔt8MMcӞf7P#Ԓ)JT(wRTJժZXͪVծz\)XJֲh%k$ֶpXJ׺<%$^׾u~ `T+`ƢudͺZS,f7Yv,hGʒ~-jW+XӲqU-lg[Wf-nwV[-pUR.rKU2}t+]F˥.vw{Wޥmw[mzk7}/r+vGn{_Ʒ/ x>j6pr+.3\\5z&?9ѣ]4;C\ i^T+=Ow6Ԣ.*NU{ѫ T"hjj΢:յ\kOG rp1F$SM6UKnBfInc&Gzv"rql~NO8+ 6fx<|ϸW1{ G(OWruǰ/KZ|88w@c^[y5;=P: s;B.V1\`oЭm>X[Cܬ >YK_Kv]D:~'MqM|\:_M.b)DƝnONA-F 7AkXySވ .Y87=;^)A:N Jxxzc/*JarT`䶘 Z_͛* P>TR]0aȷq7SPU  X W }q  P&t` (  P g+lZ6Lg7G ӧ W} Uq zr +PP+P w `r+&W m? +0UG%Ub gxȈ+Rg}W\z <І P P~ '4&7肥 iS%wq׈X?P U`Xxr< ~W&qr0﷍W(U(s WgV8qP~Un+ {S @'hFaHt莿(~0 0*PRۤ S@w'q<WpX~cyQwۃ-݋ڽ 0`O0OHUigqᩬp|ۨݟ ];PSRΞ 0fɌ5< ފ+u^ngGixzr0 WӍU}^Vk_qq @U@ }PH Zq@ 1X{%r+J-MTMYq[^zK`8-+~ NasN^ShU_W yP8}OЕwwfޤ*{F޸ ^UQumP ئe)V܃I76U |jn_ދq͵ήdTwnm٩ڔ,n݋p=Ok]k^_ݾqoZ"?s^EۯW ?`X) g qw a/LB`MHwͨ89q> '68:X}vyڭ}Cߕ 'nj}tjrR%Z^}" ^bq{羦=zzqkBf(eUW|l/mn^pq۝qͷߔ q<Е's]]So5?WWn|OsosK<[I71H@ \PB &D-^ĘQF=~H%'@RJ-]SL5WęSNTPEzPR>""OUyUF]~VeDVڤMݾwTuzwX}W`>+FXbƍW`YrZ@ _֛N=YxLFZj֭]lڵUX1ZUͻIܳoT+C\r͝?|ۏխ_g^s^<͗tz8^O_.?Ĭ?dP>@'4KP8 7KB?B2$3OCW _EMRqF/q=wF9sm A}qxfjsj` [l[694iZ EUB![NPZ[궩{<'SFV`AmSh_Q٥pk!*L!0@nELWG$Q8?'#$!_G+UAH!T$%S*lnT`H\ S@i4΃*G'3d! >QBYg J?8ZҖ6i<  `#Wȫ7lHq?|- 0V7=ȚMf83[(XA43 8+2%+haD؍ lC6]v^=;nwۦYQz=W);<#'hrd[Pm[hC9k Bs*y`x%K!$+Wm:QԧJNT'ջk1}.>tMlkRie<^Tb[O:S%4UhX3X7Ҙ?K-N L=5.xT>@SջGLUVLLaTcDQSV[?]ugV_-S=kQ|VC.Ȃ3WU]CuUTMO\Rk#UpKV{W}T[a$Xzupmm@]XO8(dX Sq%_pIsxj Y5NaW>\W^}٘ƙ]gI0hX_xItt*_x}\UPx_e[k[D؂m(5_TeN,x]a0Ox[HXΥII8܍F`-օ>`ȍE؄}shoF^LIc=a^ U=rPhmYaNM^_g>-&Zg%f`=IbJkH˞ >?;.b`VETL\c[c=ǥc#>/NbɵvUa5>ɇtGffOX0^xYGag]Fg^},>dyyb.DV䂅N6HU΁P`>|YޓYtd$\ɩ玖 `^aِb|.#dUGYH^Ņ8axș̵YhuvdFh>I9fQ (=@:^iL!=_035s`YgX=aXZxN磦kL\8>:S`N@i}gÚ8і>XYPG\8IߙuemPZC&<TMgÞ]qPPD gfOpfP8p^PZHf>{ CSUmPx׆݃Lf6HP(hf_levcxEndnbȵEmpWޖe\ oӖ*wdDWn}mUeaX^opp.07;_1#oFq_+7j M6l;&7r%.G ?mJa)X2,ri8F8@&n2K3 ^Cr,Or9'{ejצ?_qA=-/.W`Dwr‚Ur`mH+m~.T6Xxt.g;`m>sSOP}udHDE[߉Z]os"QDhp,/p?wNH"WyFpxFI؊ w_[D%y_yMu&tz7H&7Y/[_zzgi M{z?Ev񸿊٨%0g\L3g(˿C׊8sJ|7a*c] 'u>g&a g)qʜ-yNjb:\+mZϑ%ǂg%g>B(/6 cU#Y®h-?[BngQ.;WBob8*b KYZ>&?%" tp 'lqZ3NL1OkrYӷpX1lkI ,`:R>tD/нIW;5JM3@b_c_V;IZo}̓Ezcă #j|tf_C'#+q-z{717r], 是㐇0CgP<NY %~:~ǺB4. %9<~&#1ͧNII`ڄtiD^,J[hX#mSC{V6<ڈm4n۹;jcsqx!io !Ŧl͖[TJ7}22"S ~{gDOnqk^E/zQ؍:z'3+Ҵzٻ.wX0Y:Pq#^QKoڊuZ/YݐbilUX:WZш*S5;yΣ_9(C#AY<79H բ_;E ?V)U˱!V4Ƶ(i %:CNGԵh[QWTD*D#"pPDJve蠹ncd]"yMʵ x>[^QI 8 '%~G>. _</y 1jI*Sa]mcb=#zTE 3-Q  ƠF9!3 BJ "B0V-l؁I9Q[:YIAc:jQ WE8b""?2)QBDldAtJHBH$QG1"N"jѤ$$n@ˡ#W-KDG2*D56$"Y)HFdIQ-jBS #lX"BVFe!&dF&%pP͉I:?ΐPFC+4`C#>UAG~ԤQEa3\MmTDUW]f#>5_bY&)cJ=EN%3fHuQXX#N6U]1SjTIPz!Ա#Vޝ,NUEYVp^;rk DU]-\xNZ5@$@)Z7VXKpTqS[1S\UcUtjf% }"}Б^o-yR? PcUZ\1"_G&]1B)ԨK(0 D)# iƕO3I$=rq\EPN9VU2@)ua`-mVMKE?9Vmn}v0pQsrYiY5י FtQ`Eb&QBNڂT@)RRj6[QRZ&գzBR2Z\R.n٢bXoOMo f2nj3WiRE`jQ)U gOiyT vou)nX W\>N aazP)*uY\.ڭ*.p` …a~%  kS:W,qK}Y-Fb,Bc!@*bͪu2p&d*b/1^v0+&XX# p%b ܮҦw kyF@#xlU6pa],^+pNm*ҔSQDh#%*<&(s6Rr]iNptUb!0[`ֽI*160Y3_Mp.Kq2̂nD6X,^*33{kR`2cիcqU3<,/Q[8#yJ$"ĺlz=$* 3 M(R sق@p#t9 咙g_J97 !<]45st+/QpXJJJFY 9r<)A3 $B CqIU Y9ұlŞz11B$]aaJUz$ 7CU z]GbZkBQWD$¶sS-Oy 2_//TܝVdՍM!#"(\!`Ra#8SѴkHHz毵;\џĀ3IϻU{M _y2gQ[“mb&w"<Io˯]g[]o6*/EV(OU#Ba%ɕc~5!@;B\ԩ>#lzwI9w9 ?{?$?9-?[?~ǤKF87xC8xctwP?2Ynk; @8`A&TaC ڑ8bE1fXU@9dI'WTeK/aTYacMԹH?u9hMGm@ROF:aSWckW_ Xgz-zb-liZ \i bWRR)4Bp5dMB* ː8<1TKFXd1} q=Hڀ\!$*JԚ7( S.˒LxS;O7#:/3-M8\qJ<߬/:DN>ӳAB -FmG!TI)K14SR`@JEIPԄ TK%]ՠTcuV|V[cSU^CUK]v Z5VDa$v@e<*Z Y'5UYdk5Yc]2-sM7uk]MOy{W}omW`.߆ua Axb 1&⎏xc@yQ䖷mNi.qg iሖhOukZIjkCl^;as6ڞ8Zo‹D{ƝR| oʧ|0O7 1 J/ 6APu QP|*t B5_NhCpo8l!5pB4B$."E!*QU!EbQ]D!FQe ͘Qm QulQ}HR! H!R#ɴAR%-ɉaR<'==4%eSr,%+aAWZ0D)iiK] zKa"(4pc.3Ld36KeB˒f5idfCQt\vP Px,;6ZĀ14OTd9'}V$BUd1Q\BD1cG%5G˱?-uKSΔ4MqSԠD Q**u$pS ը6TUjjU]j"BjQԤ.UM}*!:ժ6Yݪ!հՓ?YњV"y+\:WxkXWMhUk ֧ƵW=@6,YiO ժvm-7` qvAmqAAle:XjgCXȚ X-k];ʖumˉB pJ\JճhI\>Wѕtk]VawZTNNab5^MJwԥ|q[_$Q IZ,UnX[b(xmk\2Lٝ+]GPN`D% &y"Xũ]_ _ږ5o @ N AH?vш8h#LFM* Z4h*jA>7Ep<F/z* 8,b9.rQ)//`*Q B :@)P$ eDPA!d޸k*6[􂴪 i4PFRe4Ө@/*029jNDתJ$yP $ lT\ߧV "4HJR C9o?7 ) *Q 4b-X͈SE:oBV _@#VL۵zQcu=\@RKᔃNp)DUhB1 [D*FPrVǘħъ)c 72_M_Y랾 \ %HQ |t?XH=#q F-UN F#lYb hLhf9y6_3]J / " paK4! uƄPq2lp Ԯp;$vkum,@@Lr'r_rb 4g9w` @ttUݤR6j.i@Q|wmfW@xۡxn;wyzFz7.v7G!j. \jGLĬ!}s$7~9,^x7y tKW]ugL>Z5f;8PuswyO8L{ƅisoIO9KOm8%lwCu "!\y ؈ xd\5 eKiԊq};afmxMx 57fxUiS(O-U5}s[8y ڠ Y`֘-v I-R#\)WW`2׏9>Y"vI9HhTcXyYҕ}ugmً7ww?Yy V  yٹ99WYyuᘏWumo57w{ٛy Z0:5z9=>zI3sZq9uA t+Z`y}:::{zb `VIxgk 7ק@Lځ z]aڪA!ǫ VZٺ:`z{J X}vZZa zIDU[xۗ#'+0;gwX[ZӚKQ{AY[y\Eu Aɚ=ڭw{;gCDa@~ڹ%Qߡ ٺ+m?;;Gۼ;ջ [wA gcMv}ƠZ[u[! Zic C|[K-] b\Yѣ@|u۶{ P+[YȣA[Gɳ\G|uyO;{<A|r: ր \Pu'mW@ Ƥk"h>l0u}yo'{C!^FCc+L^0p ` e[y})^UiQ>mu공s>0kc {~A=㇁aZ7?~!Cg8W>G ^;>!=h l? p b xaɡ h:=ؕȩ6¤@ ! 9tS&C*V4IrH JT崕,t9.f 4kڤI<{ 4СD=4ҥL:}JHýB&0kڴΜP9pEY(' 3@Bq1]808w c 9k sJʮQ7jwZ)F DxP XWA%* MhV H?bȧ V(X 8gM[ωtdҹpG< L\YC@:> D)0('>tЂ X8D8p-`9|Ĥ#"%*Jqla ,&K MG!)0xHQH v,P "pfVXl*A Tap¬`9aNuucggpNx3Y! y’>`x@b_%ŋ^,湿fIaNzRRv C`Ui Bju0(.a%hE;ˈ5&)LΨ3ʀR1/({ml_}CCIxU!7C0aé>3W{.7k} 跿<g ADe8-H91L vj@RPҗcN۽۳D)V*PxT # F#AMXuWݝ@}YDBk/g xN nHW: 7` taENf,! IcEolD/|q?bR~5ˌk!j;Qt HAL? j$E{CŒ\\bEz1 P\iy)ܔF'A?C +^zGp0|0sfu910P`8 H ° 1pp1p7} G }~0~PNKLND?m)K6RP P N 7@4I` a S<1pLa @ z` \ FP ե fMm7(W1pE? z{^Dn`g u/a `st`0gAX4x X D& o G1AA1p1K(}΀U~◅@gRCQFFPE MN`CuiXw0 6*QP ;  Y AST h@ nUs#A ڠ Ǡ ʐJ ekɁh;Y^B IPW&zX O p0maM@ 1 |֐ 0}ր nwXXh0(P R PPQ^X@ "rjH)r "` HS S$E0 QDֲʠh E xӐ<)F`ljyMiHEWggnp&|V k2{ XW 7|ƀ bwPHC}p7rdixf ƙ~<GK;!dK` F0)S "OZ AsYp M#= < ,P_)A> :9IZg˙IЊ;aEyO/|Pq9 4 tȈ 9 00px00Cb @ 0Z1zpXh k!DA@9p9pO@I<)  <@ y񙖰Q,T+0p z@ D`fw Aϲ?jM VlfJgDp 0?SځGtw Pzw\a'  @'  'X p* @qp@I " ɷuJDd GQPZ9p<G rP6p⪍YTP; \LU\@ j#MŠ%E[$:wʵ.AѭTJcHl8/ggBl^tvB6uTPжWwy˨  c 6pjN O;BO,[w>B!:#y7?K"[CĀ CPxG #Aj p % >f%F](ltmжnlpslVuvk|w;[[eIzFGFРGQj\e~`  wLan7sf{ɻ &9 Pߑnq  0 mpC 8, 0RP <=S UIP= M D _m]#z H\":o@c 1؝|`=hO }$W ߷hvf X mN'h`~|Y@ P D>4;; FT ` n`@\`cP 0\gw\ @1o l `@9 g!f00jQt 90=峐mtrjn`^ 힫;^ tx0#C+>TTD  j1>9pu0ؽlkGt`u@d/(^( f @zhP/WОɝZ B $ZI?ZEs ~4Dc0Q 9 X ]s_`o)= OhVoO{V O f O'a m4   TT U)G 1:Ui&P58b#R2Ԉc#T!U!УgU*VjK0WDM9uOA%ZQI.efLR.\Č!W4aӨQ 5ma ۷}UT"x#EʻHҞ԰O~,f ȱ%WIJ! $D%)*991hJ<"Ca!K.j)ŊC.Y̓ߚ4mT8b.gaѥO^PR5kWg΄EC+kҪm-\:sۥ_Q H+Z c ,3!')4 YB27-"B8IdDpE[tEn,*+. o<,k-+/Ƣp902d0i) /$DC49EtD8@&N<3 Б x쑬0[o-"H$L2 J),RLP$s3D3C5scs7G3NtVZk>k@%P4|4/EۈcDr4.Hu[w4D0-; UQK=TWUW_5%YUw]v)zW poYfmJݝv@M4[mCToM qA$7Ds3N];Nxw.+_ ^|c >`_14X) |څݖ2+fb2s㏛vJdsd|Rֈ#k4eiccmvm{nn{oo|p9W|qjA:R#:Q#68mJ7tSW}uW7uct`vs]o$dNFY9ݜ;k u磗~zCs%^xsRE2yͦEW}FGz{|r?~s cU'}$` 2K{ ܠ!X{-:`=<^Wc 2 O`?P3lZ}yC(5`xD[!0 \ xCX .DRXE,f1FU'(_pOZ*j(WTcH.NMd_^=qA o\#Gp"\z WPHHF'#!G b`$HORf5CPO@JXH?,2AЍdS\K?{oK}TWT|K׹|T ~zAQon -;?}L.-Od ޒ:yny>W XyR@^yCb{;qowmu'|W{n={^;>^O{Szoxû~ʍ#?ۿ?tΛI;c{9@C (@듼ӹks9cE >3h$㿅@ 7444{؀ ԷBہA{ h: { P+'>{DASA B"4xHȁ C3@>35dC|9zK@D;#)lCҳ®88H @BKTKKDNDAP}G~L@7FԱcFLHLI48{Ic$ɃIl;\ɐ,HǓdJyD5OHDJJ[Ԁ4ɭ{ʯ9q#KKOL˒dKq;9KkʠtʓK7 Aiڀdd˶KhLCJ KѤ=2DD?=+M;MdJl lM ؔټI\M ܲ @ȼM= X;KM>r  \CDA '+B[hxΜ8  0E@}PP P ;PKDXE{yvyPKN4zD"OEBPS/img/mon_configactivedata.pngPNG  IHDR9## pHYs+ IDATx\TU_-LGXqPIǺ*R0;mn}\A@'c\͕ZJaN[# dJàSޙ3sg~>Qs=}#=,  W_+@AуCA@l  2dA1![  :AA d! b CAAu  z:zF+ԫ/P{6zZc\\"ޒҩxDTJAD:z.֨K4DTy@gʹi=]~'W,! S\7Z'A =,Gd|,N5(䊨4ŶH+Z"ISk-lЫ yA(EZ Rh9-5QsƎZ㲍~z81e4kbO/Pw :6`l+e Ы}NAfK4_j =^yӦ9ޡA1`@|]`bd倣m<\-aS Qh%%8Rݼã$}\`Q~Q 9Ɋ,<ˉ&=˙sҟ>R*OX.wD# WLpL}uF]z9rIFr9:v+~7t2h\/^%sF89`6sNo4Lw4 b ud TC* @z-ιe9Kǘ?-2%l$IDŽ"M~QM]2#&r^8,L^\%_,HUBRYyntڼ(@BjVZQEK*b^K}}5WN B>oT]v'}JA_G]2rWENi.4ԕH86r27FF<٩&`΃\1O,eLr"Mw9Y*CR !cxӇ7b,Ɗ9U]7SziTmX򾢐1Nz~NAuXREz-QMSQѨOCr` (6kXKBv2Qe2$+9pUNyQД@s)'it %.{*yTTy#煔B~4ȁ(<\vҴ.3AAX:zuYVR<>§+6rn, '%I\-r4OΔ"PnJ-1Rz%(IW!ciQWMIǞG3AAcX>-˒Ng1}veE+Iq7{w YvdD-a!GjJJ]zAN(sݣWIi_3oxߞcm}AkNdB[rC6߿WRO_ wvg\%WDCQr|D[[ʷWQFɹ@==gB DNglGzs8T]<>gtcOnp6W̾7ی/ȑ#GU,k4W97:Wmfhl3wGrtX]W-Wy<ߑ#+<[OLtSۑ~d๊\0N{ c_kh2뾳CJ/ѸwBKcC=ufJQn+1 4GN%\GuF0}ort0\?D.ӫQOY[ٚ 'ڕ>:<;\vcV!ڼڍF֪VVWoWcgۍF. rW_mR<ʮ5b{[Y2O5v~ڷ~_:u˗+ʩSovii%jgӐ/vsw֌Z7nx7Vڲ,2m9~YevqKXCbRˏD.9RD.yF@ "&pKlz[ﯗ3yvQ5R%ﯗYձ]:m^ SY*߰w/. %%ꍊ1B*۸ o.HXȔ*hj N+I]) .bYaqQn * D*6.uj`x3rRatxSTFbsc\&6gl۶tؠ]9Gβ&>C "e/DzgNk|<ҍ]_^W]Wb[.<fgqmٲH|u~U7T?[mmOɽz9A~'dD@'FU\߲P~'`cTo;˟yhl(ʑ*6&>1!pG Y54AxYxG/i:eۄ OrʴڏyD0yrE|`#U)rgm½mPy7#/ISXJҽC{vvza1( 5ԕ|4iƒsvmiigzuݬv'n:xs.ppg3F?&<0isGW7i-֏c+;(bQfĜ{mte1) G4]oMg1tLV[[?,\ロ5k֑#G攔}vus}vQP{PɡN#aUx˾&FF|GH "1\伣{$"o4ei[+C}}z'^s4|g: RptVv]:DyOp1mCXqD{mI=vqr@Ô*P(ɖhdP#^*[0.Zl;C:m^$JJ5GNc7MٱSp<[;bgԦOO0ߟ0ϹQa|M׏`s_dzO4uPhh¢c3!#?>rD.Oc/eWל&yVQ _OH/}1bT'4[BBB E~~~}};۷ϒa\฀c+Ϝy뭷222/Xyx7jԵ44jv㐦ø;'_B/dbSe]+' &^r9O+2sD1Btn~iKgmP:9Q^-bF'>N)6/ h?T4.Ul|iO(8cijA%|hpak_W-/lKrj44hɁ9Gc\rZ#0Z̍ET\?i?olo7Ya^u_Vj#l20"lVМybO{x:}L&cWJJJ k>/|Æ ;˗6Ŷ Em͚m7i}G^.鏼#pPBDL"B,I ~ < Qpz.e/V׊̰d]^`>^ol_ufyGV~ 7HCn['`.]n0.QZg~M,˟RH8=c%ZMpYx]W@ nJ ("=T6n}HQN۩plZ~b5|)w:5Nsvùe[Nب.)Q[3%E8Edj(ten}9wٳgiii2ZvCėW\1 Keףp䐧Bn޼yê0|x㱺_޼y3^H&GYc9' e|ZtN6?nTxQ Dkf͇@_ܼy/(sƲкn7o#zB;P`4f{ņ ۛ9k̙'Ozɓ'gΜ``(*22 '[ƘY|^[^] u:T8{G!:4R^5Nfv $-܆CDYҹ٣Y{k)-FCmvbwZ?Ѡ{Α*UEq^%K+f?D1>#- { >@SRjn;?%w:h4y&5l'8 n}q=a{g[||o^¯[|cfLKЍ7ܗ쌶yzZa ~ @peꏼȻ^W緢Zgeb VҀP<6e7eZTBXtXh41]uɜgxtn޼_O4o5/c^.0QI* ;YzOn=o(U>Pr9`q˖e'%%E%cvF=mlsGX$بm'9\,nz뷨HF8C2SLn*'9RFB3i.讁Wi?[p17,a,%OپvkN0 ˲:Y>xe΋si wyl]"@4Gr191F?ʃ|#+Ee5;@R/ȋ[-phk!\_I-_DDh=7tD#ܣ{ N7``ks`7o~EŸ/8fLt {lTA l!k-l藺3O:k>|1xpx z#,txpX曫TK~!77H&FJ"/)N1(VXb …TAʂ&k-C6JT#4Dm0_'ش镾V)YNA vI]U+N='t]y9]CtNİ>|ɓ''M_Ϝ9XAq{_'nSMů?/#Ǝ;sL.j<1Y,'O2AĠ˗/wA"'?{,Y2tuA r<3GfzɦAA]318vȯCA܎t5D nS+  AAdA1![  :AA d! b ïַzDAgoA rubCA f(EA@l  2dA1![  ENٸTJj r%dݯVCN{"] j MDlp52``X m2i r,WQlӭJiK%BK WިhTI6sC3%kk^Q] 9HVVAŰ-cCt G.>=e#P^nuTu?)Uv[e%g@Ș4:=A 0!Wxx{{{{f^q~"ISDQQ?zu\}z@^($7/Dy@ O 7O>}}5X9]xizu9\-j}d,QL^r"Mwl#_oz^[(f!YUzjw& rکUE@lpE[̛z0tL6Zy)B_tS@+zf|#+9,%i)C¦bJO)^*'jD5)Uf*6Χ="I(kj3vzRG6<.yANrYSJLOٲE?%%84(^\Chni~]ݻ{oWsKMYF`*I_9,@b ,,@NV:&AZIXz}C],FU\qѶ&2yQ;GJ,تpVxCmy"P3WL bN oS/'O"1qG7C-`Lܯ&`!%q'kanW O@Nui O\΁H _%U(IL/0 T7VE jwF%)ƍkXO V[ǣ嵧N%3 99I=erb0IY{ʂ̉ˈlm@skx[唆p:ǛDid27"|9rӕH"5ynvpblLѤ*ឆo4՝##!NĀƯZGU%eLÉp"o>>k},7|Ҡia IDATXTpє([f%\*Z_"qW3WeJъkeqﯯ~"=Yqr@1Rn:axl*E!4Ӗ(VX[8*].t%ͱuL^rTjϓmezbssVHFC97)-Okk+𶎝_ԩ$MrgŎ採,w.Wu,70ya()1;Qvb([X{+9Ap1Cf1Z'_.cɺ ٳ$wo!qLJZT9ߝ۸5GSV̖N-ë ;o(݋c 7W,$,!*bQVa-c[=2Kcm< -LZaw12&kҶ @k@ϝjAq;cc޺HbaG8-Y6n:IFfI]KPI/&$A\*؜B5 Ps@y VbXހ}_tQ5+lPdJu\g~o@:.)\e!âSb(סQ&0jփ.MW.=WU\SM.9(#e \=+W.CA llnyusXkѱW`b ͩ;\m pF FHBBOƫ|A#0v.'DԱڍW1΅ⶂLRX4q„9Y!AEsVY"(c H|PB2f|tL-& #X^kDךIܳr u5f/.fOX][eYS2$➒bh?ؕ2;*1~nlq`pw2;u&D+3qH. y m1e[[Z[4X܊к}C0TW̉P)3T U\Dmyzţ,Ert3.[+NwZ7/bP^.s5(0@&HR߀j6"5cD!/ hG4:RA1pt蘱 ?sa(0L$ŊdܬuF@s2cq#h$L._yPxLNWNѕ6c2fK`+}H82k>bXNC hCA &kn+QNȚs;Qj5AΜ[ݮAADA^_ b0CA1![  :AA d:37sXVo99  鼭q-s:4>|!''g͝]J9,. 'K;ԓ  ]],`ˀan|.ѹtպ_̙cgŢ+}3f=Q AD{bXޭ`ft-g:{O04^p! ~Clow9n ʘܽ>pxę/hʊT9s:d(XTZ _ֲ-up?ޥb6mˈ8 Ku=a>¶-9tZt `Yvw awzsvG`Z:O֕!Htiu둘”q{ w ͸h( 6(2TY+T5G/Ύ}"/q`,S(3s){Bl{!Tj>3|BtJUǹ8=+W.n5겹Z1M[pH+Y5†toC///0 X6g0``LvC^F4ɹ'wW_Atini~]l̠٭jhȟ*8#h\ d:- FE-B1;V,v7*+cGP&Xw9RR( wy0 òF o#β>00aabwSk?y'vA}O7lcQ=>V;rʧd$H:rZݸ/D ʌh\,RGD|{:dA+Bawd9%=/IJ2L }21ܧp˲@P A_im^r ⑕# 9Z ÅǣQ-8#D 嵘}ӱ/*Ċ,7KPƌPw6[bNRPVtYkv7Ĭ ;NZ'"ܮ-v(9Tz򲝬c2zdPf eG2_o_bð ;GGu}?|> 1d{'ΐN  04ZoJcֽ*ً,-sB\)"B&DiYYS pm|}GZmK\p-\n\fjˈx" k2{aYP~a#G̚5 `˖Ru\铻-Ghj;Am#ɓ8zqR+SEOk= sΧ {3e/ F/0F ʘ#O?t̙0uY9Nς=Wʕ$K&M#˲Fd220z&ͪlv@eC 0>]7jԨQ$sШ޲hE!F۹sݺO1U;CmED"H^R_c9ggӨ~IҧiUiT$K0̵O׭ӝb\f]FZ51bP0 g_[ԩ$2.ý&M2p ^[KN_2yMzFxc.//I~HZ&1y1V|xc/-ڦns ~şy7]OyYso;-\^Ux?YY,˲'ΰ+(`0\[5Hݻj æ| |UШ~i8&W8RB+.%W*+eQb8Z c؋ Ž &[i/RNJ`qf!'')16l(u?FIρ`=G ܢnL4^Z7u2N_j&w<󸱢|)srWmd_"- Ī 9!~b &ʼn  :WYY Yf7gnۏU%eLMzN#8*hڄYf`Nm|pa Y[,0CAY`X\Q6[/kl[t?P.2vۿfe/wPL1Qa]v_.`pg|ƽ{QB;Gd?@oC 6ﺼW *B .6:08! $9z/'8Aay{{^+ )Ih\,*Rfk=!jCym%G}Pjq^^rw/Kl.Ie$ϒw_+eFd2'_ 0Wn mW mƊY-!$s Y`Y%Q(YEBF`rUUW!,^xXiu DGL ܾ2VH)+f,w/)w<">_m9 Tʘ.w˧;apӗLmV_006'PWϏaNZ?}u-)݋ŋNSk"1F)VcUO)]'W?@V᷶\L|doWmG5Wl{m|,kd1i޻?ѱ]VYq+=:_n d>xX?OMFO;\&J$u˲$s$)@⾊TK)d3, LU,B*j 581X&_"&$q MD{ߍkפ<Xс=3:$[6N L ~Da>ѢEؓUT,#:r\燸c8V6P[&"URV9SV6P\y4ŜyR md! ^w01?jCX p\ej;#۷H'pd:uA(ini~]fJqh(Mp*ቪW1ع| WC%(k5@b>WWcf< 5"{-o^Nנ \ӫN0&P>[V 1*H4pC&?1W/Bym] w9 =ۖA pS4 b`ѫ?[[Z[4469ݺCP[tj(o@]e$!ӯ+^~@ e'l& +jq3Tq ߀:~By ݶf e11)EAtHu{;,@rJ~O)+$@tJln:~W98~Bɹ?&t U\kEtVnxj`E|9A1菛Rm#ɓLhn&0)e0?_bdaKL(qk A;ӯ/z* AOu[C.NmFpB$ \mED֜5&y9לAt:a朱DlK~NM$S}A87 ѹɣh}M gu,D@'1˽Cܠ-_[g&[vg8u*i|y2w'^ADmk<ˀ{c2`X3_yt.]nim姈2l4W%関j$2KJA迶ㆁ.jL 0U:cb.%(ì3TUM+".Cn}p4ု|)#wٍg>;-3&4;hi|P׷~ 4jvTTZ=CVT *[<_ 477#'ٙK7F}Hu筷ZpE5_P?$gf.N3^"'c>Hޭ[3dRlf)'W4?Mrf&0ζR](! t'1qv'E 4Zh0ӯ&AAt -ː_  @9,;9[iF A&'q-N%f_jNeIxwvc{` wBE]74Z7P~ke,`0,͙e<:Z%9pbNm63# G+cj@x*z{mXTpє([f6 Ccۻ 2ٛ%Q2^pP(7;8U:%9ppnIr(0 .CxnPW "=.3`BtJlP`s UJlm)s ;T,gKOe]CWlpLe#2BenqNM6 ǎJ: IDAT1U{HDz%PZ,2:EX+ꉜ])%߅S-PaRtu.>Eg^Cfgd:QݬM(?7p;Q$8W{֞S"9-)?țBIwH;uhՂ1?JgP1AnO:0 x̅fUU!hJl fHfx_UU0>%67k"`htC qZeֺ}U`}Ȃv) g<rh,qnh?1vlwꏦ>;W65Bb^2ןernXu k=,PpE+ [Ȃ55^p lS95 7W28&MIĕ2kq_.2wԩ~CE0v3z;5\tMc𚇎V>App{c8nϤK|OVN0[QNsY9Ņ-Ǩ1Ps@uL?d0ekst21;S޿ks8n()+háL?^EC]VoX@}BCqu?~=Ma$T`/ R)Zv7VyTB}:5\+-aA7yGT#~ceܜ s]|a[㚇g9djqTxGq0%Zb \bV\ƉVytŚ >Usj85Cx:rǎJ2 3u̔)= ũ=6ugu~ۊVbm>TgսR?{#,0+;{޾ {!.;m d-׵f:9gp32ϰ >Q5mMwbSXa[.kOOCw3p"g Ζ2dz^DgaU`-ѯC)ۦrp +sO%.A븁mf󭻆7,`DX/ , a4 u%D~v9'^l70hd8`Κ|ス}.Cn6l`qf&AD3xcX7)ݲ[w13?p}h~cqm{z 8ȭ[^OpA|WBu],`ˀan|.۝t=5ꮯ[0]m?6꩔;{vma CqCdLb&ZMA?m$AћP"7n~OF0^Ǿ;_waI_3.b" };pqvw$3n(Negp-h!#GAA n[c6&Ï?~϶^ kFcG2jN\p-[l(?+ۛo!! vAsuS;ok׽>LAm޺5o~zc6ɨmԩ_V5Z ?#A-.״ᄑt0r  ?QqxZN㌖^<ȍk%Ǝ ;6`솒k}I?iqO>67R1^{ߝB t5*Ԥw광?OՆ>1Am44ޮv?jnivr:WGk/KhkqAwMRMqM1qcmh%8;MP$ '}z+W'vdCvBq!u CF 46SW@iui`sLW9G]%)~씄Fs |" |8]5}w'᝼&_={qny9:'Zb_}uƎ_c^=^o?U}_vl"Pgy>lS@7?( 6 aγZ\g?|kvɢz5=(XE˒*۷VYo(ac2u|y~#{^H]'8ԶNskSsKKs ߖ֖&l>~`% 6ܥ[Ɯx9v6$d6~B 3[g;zv*w?$K>ܻnr̛:ry GZ?k?Wz_Y|g| px]x\qgV{|wyqyQm\Y؆ƒ: _$:ؖvn5+x3MOyݙdM0Ӌ{.t:3 (J2`H#?1` ݒ `FJ `W9{sNTWu 02ᴗ Ev'_Yˤ' ' ήt<]͐nkpvT=MMiP߷z՗YlpZ+kϾN e^VI+؜eتgǽqY%hAk(/;dt4udFZ]TdZT5[+dIœ}] bٖ/Aq5)Ύ|= :/'a5NdMz}QXQ0 U˘Spn|"ϒt:]}I~ϐIy*զw rZ7m&<$ŗ1 WvsS"yl^Ξ4 >d"mqMk۝Z8UV 0y*;LYIX2/{iii' JH}`Uf^>כvJ7us^r/r-sLVH7yh3]_@ nݾ neݻcxWn5nݼO̓= +HΩaЕP5CQ5ܚbn]N+:o3" $.x:`:*&n'@U^"W~>WoeʰDk/(:X}֮ێL:fդҐ)@ P)&1'@;ë{iWE"vSv&(4 ^Y24-'Sa7MZR%u=i|+lɻꭦWk,dNa$.Vπ6ܸ}߽[[BS-ZtgA,8wl,׊C (G&c9eK2 zIC %&ҤHYcVei"-]H)0<(!SKWs]=t2^.yP%udRevҘn.afyEMGv{vy|Buejy$˷Sf/G.jajߤOOP-8:4$/ }ЌYpm^߼[ԼxSpq,&ԕ?ᅄp ;/x#YtX* };oRpYF]\'<*Qf7#Xg_'T|-Wn9e >-[j7׵t'Uu̦`EWȵJ§Tyd0;M$ @W%TeRb pkfػO_dyv8h*^_gpjs^13[N5 L71BN?9 G}TCdPY;CbiQZX;N2vcAYbqꋼBM`\̕2Cqrי,Ν+ΞJ^mxc|/GhstADB||hWi gCII\ lίG@;ilW,xDVݙ?N)|pMaJ9=5ěNg/AdA_' %R57?ȆNJr+|s|vhK+Gl[@fJBU_So3 oz @Oӫ}/z_<71!Jf5 1I |[|rnjǀ4;6+YyގÜANUIJm1:apsnݔ2C/`e8 gz b59ᖑ/?K|+mh0H??&/5~$j҅mkT8b Ǒ\hu@ 9$) 1A,`0؍7nqƍ7nܸq;疕&y#;_<«14it~ͫ #Е*Vj5+ ogR)LVjsZd*Ar.K ,5#_X:XA1krk4/ΰqMn-Hv* MEzF*&mb M6 Ȁte].qĊ:ap{1߱ޱ5\W{ ~u){N~Jp*p읦l,ﰽ6* 6GmB$js56WOs5tv;y n) aV~P,JtRa/m(f$m>EWQTwCi>b*(^:ߗ:eҕZ+*Z]EդZ &er:03(&ݔTMW2v95&r88{i^5&$oݝDt𰇜DYkXa- ,u`WZ7(V>gۈ|`>j݉מHHaPkΜB\i.uzt9*] *]M [f*WIĴUSTRT44TNr|?YƊ ބ\cgUNNP@F(Q,awҁ[(וt {Ԥ5L4 LAm4tsW3ĬRgbʷ ƿ0B7 =˜NP26SU.:@NZnb>,d<>H>~'}X#Sj˻dlyxZi 9%05LY @á%Z>xʇ_1,}yg_֟y\'u<[`\Ӗ~׬U~P+<? IDAT-_F.f >:ULJ>|aV4 5V88 ~BݟeoʙL>יy a".p>j L ť}yptߜ7\|fg О#k_N.PzNj OПy\:`ܵTLRev#T;iKPN4 !ǎ}]@;(|z_I0cp()I߇t)[DҜ}[{h~%۔wh]t%]6'm}F8!YBΗPg>LVY |jP~E'*]dl +ŭK+^s@ *|fY$fb(ۭ?,s盋5oV|ܛ@o虺Y=S0AG/WߖO'| JR1zn_ɫ,-[~簤x+E|Iy,pdva|p k{#nR4¬Gt|\м_/ o9 G/`ſ/zf?ɬ~yGOm;3:z.۟6(}o;~(jZA 9^<$<̶W$?=;*n' {^<itۏ2''i@ΜPfGnCuN/qfMVpERyFH(`D1.丄iJfD`י~ƽ=mvrCmyY_ȷݽ;?vؼ:`nG.%5?\Yѡe飏2<:w3Klw\AcH pEm @9;;ٺCGgCԑʆN!4CavJ߇d<\-ݔctAc$m@I׉Ms;c7o>=g{'|D{Ͻ˗??/(D1z]X_8.Cϟz6qGh虺E+ VоGa՗6AbVDtb*L#:RJ(vj@ hhDLW`HIu"6A䁾Wt 5ߎ=y?O9zhug e7h=rU?=LyT }OXQG&,Oe)1 %sϮ7MYF/hNcJGA4AfB#MHN/J%"'#u MS^N|<@݅[ŭ?p~n{ T+Su^2㛎~m_ݞ.nϷ\mϓ/fuVoǿlk:+4kO{v? 뷭xrk6JBZl[s6᱿?l~gޞw`ʀ﷭!co m^AFr?"A0cD9 EiEk+!1DIt2> fٔ#hL B4D|<}kA܂ywn-ו Խy(~|Nq)O: 0#9Gf5S0>"`\'3piy 꾅wq A1X4N ̃wAy}9hO>~ۊiAA:̿p,aQ=g> ,{?߿?}Zp8Ž@:w ep9] ^@)/qh%La []j%W:P H4KSx㑉VOna"9"HQnRB"12^d> /.cLdB :1;?z'ݍ;Վ?jOIOsae AsC ~mm$+|/'qt?pfةݝ{jRd@7\g=@P:`\Ab籭д] *CUTDj5A18롥+-42ʛǽqjVݙeDq}gdܺ5Jy4 Qo^WsCjU1ǿ n7Ǒ\hU"(DϹ:vw6q>Wj2&V_fhuޓѵ&jf9̚Zb:ĎBE^0^>Sn;2'*@xe T<߸FNi Db H8zv2?8fq:l/+T1݅{m_g*XN2F -iyZmQrv?PaN9-"C$P}NbygCw<~`PXnW.y N7\2י~w;##ԉV.%׫s&kr#lݑ%$ZB@o(7;JWKWᚆ _lM~fM.Ēh-za Wks1lW'8k1jt \%Ȋ:u4~ tqn ٵe GO Ps@y6-hʁQ0%4M}y~3D09^U2e-NmqVA)Qe3\|2Ur #2TWsT<]-n#;1 ȦZᩑFb v<G?5rM\Ħi)'xI"YxJjNyWԨ(e:N,ow'yO>i?3?>i#K]^y Р$5ѕPTwCl( EF)ݳI!d 6b&nMFbaΏq:""W[4oj/QM3BzMD d١lk"۝l'|(S$42$pqC I>LӨ2vp#9Jי~ja^򙮱۠=yB۱=::)Cm,B95Yf:㶚W>\`u` cWh\M`1a6;)Dm&ZT+zx6=d$);=]-{VLԅfmno"׮# *D z=6-o*'"XM<]-u~/KAfhEd9P`Y򞫯k!oTFL oȠɉ;+A9r򦌣֒/UYwIc TFh?XvM>bʈVʴB_gp.R,nu|U/;.^SpG-wr~떷)Q(.D2= M*GlvXm3~TWBxf)2@] S%\/.n'];=1mM:HxSe($|_{ zl]Ҧ)DU l 2 Ve3w>G$Mrak2^Om1V_n%k;hĻ݆ 0ތhX\37B#ˀ"v[L!5GZWaTU2kJ22-r{[# sN?co-[0c0>Xpu΍0v2>7o%P;Qm5*IaV #sQˇuB2%V[-{ (Om,Lי~n 8nÍݻE-8XܢEw$8Pxb{Q$J  &f^el"Ekɦ=3ӎy[pG03\?![0?0~ArUHdR~)Mq"M}v3j,)LbȾHd~g'}bkuPIz*{{kIoXbxycOT?uH{񪖷I:6xOxWOz+X h!Ek^\]1plaVĮWYˤ' ' ήq 4r@_A$HzbÝ;?;Y7yG> Ob6^^MeׯURd/%*dw(S$5`ZG 4[JtS4:i2#ɛeQ LE!/`AŰ*soWβqdeyHYΈ6W:DZ>RdqaxnVWԕkt zȆ S"P>ȠbL j` RNAMo)H f@NeyUޣK"/tY-[~bx -$Ig_J [ ^.L,"!8hjF~ZG6OA܄Q;UHKc)Nd dMm/ֆH5*߉ϲx$#pF[29"ُXQ{[w'̑gsDrVuD:2.c ȌqEtty=gYZGdneqd3:Ȍs"qAAf3  !ߙ+BŻpA_A$f(|X n suAb"▪"l}AXxE5G9: H7}A$܌ H17d΀ HL2A_A$VMA0G2HL9"d  uA2[ÚzKA'jdƱp2ZnzҖGK2뻂W L% s j"A2Ad.PLwWd&කLVwjBP(fdX=B!?Lu*8@o쁾2Ah` Çq3X p3VEQT'|bZ}D7c :Jn"wD#z`k%p kT44VwMmm$+*d6TLeSe{B -#ҁZh- I8Z: F :i3F! z#4wq$0RդAeE|VduW+fkdvU!p*`%ZNwfMn-f(-u_nmmF0!Xa/0fVvfܾsī@&d(T;Y!5~q` FtH࿈&` b/NGby+G5>)cF_'[ESLqd,_:&r8t%V=u_U9QKWQTwCi>Ey!k(6elnjs{&YKtSEZ ]BZTʺWkEE&ΩH4^BI:Ƌ#߷FC6.MV)}'K؍$okcSl&'GظW/NA⳥&GW-h b/N%*r ^ :}Ci&( ܘ?X3J#sZ XþsMz@LOC) IDATȚ~@or1@:BC+Zwo$S2V.IxRBΑN!4CA;e{I 'W C!1:}9W/ߑN 5@Mo1U |1y"GPBH\i kvV@3WltqS0L"k(JogzkپdMtu9dFe$W/պHQ-ߘ;宐@_AArJډۛPx!!ôbņ.d5kUp_' cz計A95;3Aw3[@L%A6N] Q&#`yAS$j~e.|gHf@WBZ`{, LmAD̓<8HԠ2.g 495ݐaTKGl;c}S'} _{")9D>Oh< ^NNN/ D\ 'liξTsvŏ|cRSx>]X@SLj Bp]]I7 ߂[ j}J]]"Xu4Dw| W tWbI %PoHK栰dUMc9[8=P@)%=1&Z _c"qB_+ s"/Gp{wݹ{|po~@;.||fOt G*GqΥFxưl Ut`;4-돓/aʻd|CP廝_֟y\)VoH=^h8D@ty\q㚶eUhC}!ЇTưm;.aj KY3IaOb|UlȼŌ } JQL03a}PU3IߦfEckvS|1L\ìAz*y;h ]UiPN TajIK)q&sKƖr\7 Yޑoygqxo'׷ּO= `m}i'uc.^ɾ#!ʮu ]KuD+U+d%^BO[UC-;}/?B bJ!sZM;:ì []%x]">l覂}dnp}NG~28 $םpD~< vYmGGInHUtUՇ5>B `m|l/1JY ] U~3J3x6 rw4I 3$X+p @zsN4j" 9 rR@RENg]]< $(w=) 儓:&zk.2Ct%U"| }d`ZSwFXlvſ S%co-Ƨ#yk]NkNq][uOTf GR' m 躖cXфA MF G\O~$APj6~S>4+=XT 툓}vX% K?_)+4R,upj8M"jWAX|rp^.x2^J=|fB "tt@zɔ ?C9 T5m 컲 =Ԓr>XI-i&]twAmR茎0E_iXgT+-|[nbdA ةa͖)?fL@:AAeRc:8>ۘ{/GӲl{kf/"ͬTkpʸap 5ʛ4 IǶBU-oFIv[s<A<$b{tIGeø HU~>N?YpsZdr,Nm7X"0b\ۄ*G&cF[%c,Oay_`~oX&$i1)PxZ$Q@N`$AS9kXu}"-8-{^ռ6xl9\X"_{,g[UNF{Y}!;$ˍA4)2m{lm5a*xl[^,GgT%uA4s^︷8 -T^?B_*_a4%B}FW^kq h(w@X *< RSɅkwީ>v' M#` e̔F9D_A$fOʛ+;Ajп\ꫫz݇ӊ%SV`JhڝSeThJ&l] -f4iA ɈUe敗ںP9ѝr)[cgDp@ >͂vS=9W/i{y AHV sAzʻ2%QBa!3DVBzabٶ9V^ ڢqw|S;{WGKd#6򹭄$jȟJN}.g;QeNW!ZEkR‘))))urA喃J=_1^,&Y*?4ٚ4~^xZ[%gv{vyZL5wM,6h xtֻYf{ZBJ8!!R;hь SN gKX#>\8fNU2QBϽ dfX%*PeCT/υ)Og=ޓ^ |,#_'d]FTv}"jT=L WTeK}*_VwwƂ5V ݐ9?(Տ3UM_lj>;Rs|j>kJ ~L' Ť*CeWwZ4=B,o`&pZ6Mh~xc|Hp̮vO\seU0`yx׀糦C|ڶ /+'piCd!7 X#jے/l?׮8[V']$b!2q*/ UʦݩƳqwZj\K0cH ! +]U^g~@+mk@XCVp%bٖ—W(ZnpbHub^&+n5MEhɒMkTh'QJN\}GR;?0<G 2Ƞk2v_\%&e"1$AMF Y֮я_ wz`#ڝIJq<oeZ^ok(L]WFdT?dX0L3:&2C@_Ax~ږiDI)x#YtP`/ξ"%)A喃mu,3}ڑ*2-+?[רrP),Ud=>puGꖃ-$i:aĚ=lBf?yK&aEveGWVH ǑBB۰dq81" Bftb&y 67|Y@pRlJ RႾ /xwg/*C윎&BgmL'.t|)KRl $: 2@_A$fG/֖-@*$CȬk3,u': A_A$V|%xB4ᄲ6pD@_A$f` ܊RCfm Ѕ$M)H)6!I : B!KH)[Q"a謍$ t$d92mϜ#3y|Zg' {`\Au#ʵ ; >0~0s( :GיzKA#suҖGK2뻂W L%_AA : fA0U9ܓWYfBP(̎DdNݕuSlshD_A>ZJrJ J0?p@ba_Ipd6QqHaR}9luQEѽW45'Jin)t M+QsFg!X8 R$=-ع\lTy_L?vXc}'VCtwf5֊V۸H R¿@SS#AT5cW44>7mm$+*|#JQVI4c15# ?ߐ#㡨}uNfG:X8̚bohc>,ȂO Eu76Z0krn߯@=Քt9E@SMqkqqs[1R^m.֢)6_MN1{6;#dg0fQN b3SV2,a:NK9ԍHyDӝ6N`|֞lk'аY@z] 7`>72QҐM>Q:^"+߆JȄ{co&4*C2*,ǶBU-Q3@ R9E?gچ "0 Pe x{*< hPpNIhmow}ڑ`gK6 $D^p!U)($\v3DVbh|E<px!T:@~"5Jutᶎ:ۈk6n[4% GW:)ub9]SRl0GW0 *X#.>xq&?S|.Ve.P' Kh$l:M eIO"ٞl{lc9Nҟ( K!6,4>H蛼 b"qnxZk5Np̲ԃ-yWMQ*hƽM5)W_&\iL{sn"ҌD$jifuhna}UhRs( ^WI'jۄ :ٛ*qA {={Ì0 Ewyy;vv*Zbuø*z68%[P0Kc6 :O #Džj'Īa,,Do<uEցbr)ŷvkuV&yȺE(BКl v(n:tS;ueO܄,$ G9w}y,[VXfTD0"B7C*DS@-#-{"Y d-1)^6>`ʻHH+$9+$/ ,?fFo]ֱ{;s-GWg)+-4gW~As(',ցAzZ񬦔PZ ~9 [IC**=njg}-,ΠLEl '6еpAUQTc#הuH^833=N J|l]mHṄ1޾$]~"Q)ᬢh\K84IbI!S7m̩0#(əK&1٩?{W\˟4ϝB?*jb7ojD -o%|dQ]PuAd\M>ȎDXA* eEeu   : T2  Rz[  [s^J6T6KK_Ղ [ a! R`  H% 2xz}M%lzMp` <^kuˡFd>zrC#o Ѹo[,FUV łvJ2{x;kEKLhcS0LVRf\JM L2.3K<ͶiA0A#o67#z0g..{Ştb|< F޾;#os\||H` ,|%s~sQ$究,<{ގ@k)c?9}2^6]<ҟyKD5yh4F.^~f؀Y>&3ؚܶd2}W"iژL&ɤ&eC 6О$2ϴ}z %OjԶ#Mu_ӑYbJj3Ë)8sbqH-BlR\z%mpz]Zij[ 2s=d*P:b3?x%i<=du2"wmBUEoX`gk$qWs rGߤsSW1J.bJ>f30yJlNR8(ۥz@cI$ }R`x1e3hz婆2LCji=UNJ4L%3#dLj2zGlQ)5 !_XI&Wb:"k)U98zg<;$LuLRP]=}0Ԣgq IGm)zd*#Wo&ɴd0zXLclzSL΅3:RGT/ӌwf-4H!` fXn,#B.B=L Q.>g5)r#Ϗ, ;LEnl0bvfx|VX2;P tj VvNGF#iWo&59(Xt+l+Xt@,&` SO14﯅H^iD$c$[CiN!0u=SsCpމc/Fr=xrxrqϋvm<<28Þ,/jORϛDJ彚 3}3hgyfX,X='ؔG%f\kX#Te0An8Xb0}lraӥ)Z$Ghz$3{ \FD)wPT>z{~Xȶa!uAA*uAdp |氶Ad)zqvΓ? jc Jp AAJsAA*uAʕD**wࢁQjrV6#:bY> c]\U6z:z:z-p;XnRjH{zdک l5**!Ic_:v"+Zk^fYBs@E]%+u6 ٟ$Y126n bR:0A2kw.k_x%~L$ ^@>y.^|a.)wChatV٫ _l?|8 Zǖ׽NVX`jGr5*gy~(^.zc<_ 'Ň17%ϯ 3GٚuL?xCT7ؿ՚I5kR}%nw{L,r]iP 3cU &i&mqħ@blq?6$ua 2rZX F}A5WQT v:pl4z 3T#>a?ꋝebe“E.IkDXLEyz`NiL-fd1Z:`bćLG:8%8=34ʑrb EJ*12cEg᳂\,H%1) HT?0lBQ7}n`^i:O_>򽮡 ;o>=@t.J{j텃̫U‘?*N;<ƻ6iHje/tB'\9Z:SGW|qv^`ҳ<['4~–VD-<0 G9Hu2gw= B:u>J-)y\t83 "ږsY2X mR`6w7sF^eN6"ٱĘkSQ"ΖY1D!'D/Xñ [w|ԭI)\A6.^d2b 1:b= ,437,,4 `nKr'[| '3[4%d6DRg}~PG IR KP}.F/H&&@.=\ 1e\N8{c-@-!_N+Ks5BF^QP">syř'+n׉d^c6t l^Lh|kuڝ v鑑Ӎ hAJ5g_,>d:ueEi ݌t#-Ŧ6Ū!!#-)!b}ȭMܴ6D3@6JM˞D7ík0fʘ|Ũ_]~o"Ųma%'-|VOg!C"Lw 6^dKVгB^LtDT>XAv19l1 ^  [Oɞkd@Jԟa!x V{& nsd76At=,d_)v HG#7+ Jn $b2\dJ %#X pK֋#qÞfoc ʶyP\t?R*ҳp2X=.y ޚm`2d2Ljm4Lwc`o6: eDzv:N2òd'>Ĥ#ۆlXe,Qs~xn\JMW"iE'[2DFjt${4WORؘ *:zdʩPX(# 'kDIeQ3OυlA X`P޸ /Cj`ڏX:1A)ҳqjMvґFJ1^s~r``2\:U`\ 㱾˭.{ME /Ky8LǪ9;_apbk&uBh&3J$\lc.)fg;4!>j{&Q^œE}|V! ʨИgqtQ@nV*w6IMBEFբ֞;+лD Fд H :RS.\b\N(<چo`.=+7TߘJ Ԟ"@0u@k`$=zc@p O(D!! ڨ3む#*@ȞS,Z3L*;+gx1e%.aƋ4"j=@8SL0,P}.̰Fʼ1":ڀ(:5τ zN9+HV*0Suw%ϚhkfcaiI9 қ{"Oݹ+-?h#.>6f?w?٢Kdl?@nRK^c]p 39BESmx4fZE w{扏Zb1N)ٸGl9g3}H|l9=z WbfO]"-S{!+*ʱfZl;yw(QKc|${x7ud;~J2 Q[{x<~8x~tS~2QzwX~4CDB?VϥKm&꽴%(ex]2z.m$ T.ٸ^A.>YD?ءˡKnA sVEg.h[GӓU[?y~t ˧ώ5S T" ;##k[6 vxrx5[X?ycX~]VpNc1b9zsX[o `]ٽ?PTҐ?jAsdEMA:nom {X Svha$.QڷP66 +UEu̳l0Av1 H)WQGET(WQTtTq-F -u]J G~̯[nԓv`-` `0[!(j0PJ\EQUׄ4SUj)0!POH T*HfIMOQh9X(=9JR_XVq+9GEvU ;/"^n}2Ln`!NQ,uahΛ0Co0$;AQ:eý#xAU Mp/[Ր`CX:'F|r/X l7ul#-SE9 PcPvm&3GE?݀ޟ|v¯WZ_5IDAT o˟Q56 %"l1^<CA @ .Z> 3¯@eR0BW$]l.VeEB56{D H߂;Z=t$ލ yݱ!!\_CeHOL3.~?p&Nϻ3bԯٓo칑=KHAv! HArr?X`,A6=mu<#~ e:`ƺ ^k{]Ze-ő:{ b;Jtsgσ {U6|;7OcDo<2R}yWo!vdEeYh/TWlS=k/A^s!vuzdtccX5#]v rG3v:z: ֛}ɜU3vspukk邾L ˣ{f,MRQJwL+r?<5PQ sXF}'hVG1jzRᢛvU;FT2w"/!eGe"RE ;w)DhvHtʾ ȟ\OIzz_a#I$.zV`W8n̛ʺM~&ɱ(EM]eJ}:AYΖAjiy$ +컩DWZ_"e\N8{dmH&h^ۛRgKؕ9L^-:  hRZZT%mzXJ%:N%RK޾BJu_oRo61~sA'M N,Z&)lMC-vt-,ۛڡSϤ$ Mv4@7u'@T]Ocܟ^I \41jךK_ʰ J/s'179 TuX6` RnF\3އL>ҒU\E6cAǙ~rBω**ҚDKXJBD[D~?I"pTb4.Aaฃ*DG ]h'drNGls6zSTziCwaa-75a9{"O{`OQQ?a AhMv Hd_p)1;:ĺR`])+J\A$č hIENDB`PKU1'PKN4zDOEBPS/img/gs_select_app.png>PNG  IHDR  pHYsttfx IDATx{TTW=uZ(")Ĩ1@1n$Q'dCLKIw̴ax2cdu!MJwGC6!I4^KA r9K*gN>{+c "G |A#@ X!@ (b2>v͚ePgǟDpU;BEB)ryaS?z_;`[~W_e zl>-c[~5.NV^?;񪯞KpW#?>v{|'?k1;w1N[.7=Xo#[x< ?6(뮺ֆOaj:Qxͅ˛KTsԲ9+ '/kEEz<>.|שF@;U4|lS3>i_-4xwUʼnei\H[=rֲ5sl+"[\:敼emԄf켬ծ4xý33 8=a?D/\|ć/tH{vˁw`Η,tL_¡fYp JZ|ZNٔv澹C#Sr=O:ټX!avfo,}X;W uU*K~ڬߤ_'_)qxHB%=@C5rxzg{. @躦<w.Y<רs!u5+bs*XGWΒkwpj|p[ yK^Iٻjx}4\fbΗ+ ^U$-i4v]߽vE|!=dv\ <`#_ְGӎQT_yW֩ a"ڜ=n|OTP J\XU/|TzbwJ+3-Omnymr] v~kǼ3 ;䲷\'I'"IOןp c'V?SoXieE 8n%3΋켪mV`2 OQn' Lp>ட ^ۖP_8%v!3_Oy'1X&]{b侴>xKp.aCԗ;;;;igE ұ_C.!!````````{{\%,U+PR,UKF { x[{j=//,—Pya츄 ZCB2t?fR~%sw~5 0!S1 pK*FԘ &TZ.-}mH9u6n) RsƬ6򨵏xU潻3)}H=hqsG'8ȖۥDsWbQxQEgԹ"_$iE /Y{pM3vfYBNG.-3@g+23qhsX`buoF89n4ŚiL3>+0\o,@Mtg nlkhD-igqV[w2/3!òё!kVξmf_7ٷfeZtdò qM CZʣOuty6 -})5k.=[lAkKӧLvUfJɮϽRk!@z?NVlnKgg ̶ +Hܯ v6[fiK6-.aY3欔z箜r31=gi[;KPa)ęd>{/| pDϲPX,1=%;;;;;;;;;ԟ?@ ^w1y;;;w>۽گnu14 1?#-{xa!b38"ȭ˺~:gWdi,K[-}hAlҽ;,sO ǣDBH$ ڻp+tde/EǷnZ!ž8#B#%|.I]#>R0,0 ˰O m2Q^[nsW*Kڏ6VP׈KfX۟N ZKt > bUo3ʣ9Ҭn9Q956'8ZJe7 )sk5J,]J'5r]/e*&݊e8R_^TU3TvԐmMj7kAU2(իJM6>a8( 6<9>ÂY7&'Z'ƛ[FG/L cY0 CqD\'nDF%TuolˬrubpukK3ΔrH W(`[tTT(߷˲Me {_l]Fn{[ PW*;-|c*Oh,XE7'f>4+s|0 c6mWaSeXbh0 8g)|75ڢ靮$]Ʈ#zRGӂB2]G dk .YB{kV~`z(/Ii^檶{ ]1\#[[Q:qqRIW?'nzxێ kqi|$fO ˰,E 28"]i~&! NrfnʊWyWW9ܞzl9#%)O[}0BvX9`>$i#:^:c| ÙCi+Ïmb wʖRg Z{s==5CSTeQț_Lhmwh:ouBS MéF cqum ׈+^445A/,TX(47=`Ya Csv0;IXI?rupӨhS>U|/Ti0pY>^nϾZi[y2X&HTS-j<&2HVʶM)E1`Er뤢k T\x@vs`!Q<@,3,łQE])d֢_ڶZ%-zu+nUDc;W]Vx4窔|Kyx+e-+6rFwYxP([lZW4mF9k0)- u#2 f^-+ޢJlUWN}r์̴&l6Lffhr#˂ey|^sYM1,veYḻIn;}5%/N4hM3f3,Ͱ̧Y˰<5Q>E(O^jņG@A'(Eey=K?O÷,˂Gϧ2$]\&pG 6vS}[a*[@~ԙϾ896>9c!*7 ֞p||nѕݑ_o}w6+&@gcˋs~֨rsj^9h}zJt)LOg.tTe"}x6C:od {5uV(dJpドf$ bD  *<8CmC?$RicەDEa[H3h6ӂzhqi !i:җUe9j1*Het?Pg_M0\pmozW׈KZ@\wnϾBl64ɹ', QDz|%Jc2f੆365}2R(ncWo0Kq^X/2 Ń 5A 1o$Q]z`d2j;Z\`=n]?mQ1Tjnp]ru t F9!UbntG0bhT9Tնtʍ܉tw?a45o'2ZSN!N/"2<11qCr[Ͽym׮7]FeKb,] &s'G;F;5ѶѶыF;:FF3">5fvo.25NQ\{\j;;u/aGSS%PYҾ;MZYYb]bUR}TK,Ɏe 䪶J ?VՙRCSij<-׭NNs]e]VW"66VHS+_ob <싯?蠈G](9I6֟_=hHBdadaaabe~k#ag#F" [/@$Ð%rтBˉ6g<(ƑիG4ew 8LkKͪ::sjo|.kGՙZ]ގFľs"2z"C7 /SOmx2+kիEfP<^tT"U(~$>J0   o @1401l|+)n=K%À԰洺 tvA@%?Ctt̅ MVX9V\8&mQ|7oMnLHd$ # 'Q, ^LoS%)- uls} 0ARn44m4;V$_upaږԤE+$&zKv`'pдLӜX`y2`i`YeYf Y/>P7*;͌%OJR=/K2Ӯq3}}y/r@ߡEKiP6V 3+ՙz=C'%e(8աC>|~mScy>]Qbۿw4Xj̄k`>IS{D󕉳g5g5c4c4gF[/3ze歩.ũM]#|էKڧ*& cs1z_EfIa K>. ~n,P'x:}3N<>LsSai,=BwC끯4&3mi3C4ðmӄэDYlXa`ʖ&ﶁGGHZv W<\Q4mY9j6]w]jP׈s(hW[ַ5*2wZ_ŀ'_Hn6VyaR`)cfxa9)eq_kꌺF\ z.Bv<. 0mbi EtWhh@(gfE`\]r\)h܊'P$ 9I8{tǢ^<Pf\eF&X]U⮠yυK#&uj(kf(+eƲR6%xM6„ԪJZ*e}I/1,K`'%7CmDo[ = BfH$9r߽2b 7m2ѧ)Y4*2*VW)^sO ǣDBH$ ڻpL}7Ci)=8V(stzvTf:93 +.]_تe&n||u=24*NNL#BWDI|m $&[?HJ\|C?4.7(?pE,eׯƺ z3UjFs*esw2h[LQ<>%=أ|78²P( y_zٟkˣRC*Uib{0T'%w*+F|`١c#&&=])nfn.b9Pfe-s>70<>MofwӮ*MHelOuIDAT wЇSB$V-h{cH_Q|jCVoF5VX@5a {X oO455-|piVכq:ϡq'PniȦ7pz3Mo,y7#jU$-~dB>~CK=VIJn͈D C((ĥ4b8hUT˼8RR-\ϟ;E,u:Z!=ͮ7׏`f fH!.y7#hڌLP'%"BE{=P#{]=Kq#GFFVp2ƇY,3YB+$̤7 fY M= PDop`{ #/Aev7Ff 큃|| ;= ߞ{s" [I+'eos\w wVqwHwUp E躆5t+z Gwg l]z\jl?lO|]܏CϵAh0uZB`J Q 12p3#Fxѩ]fNm<>]FB3SmXQI Oyr{p$?ϾF\sRc\oFnGK(VOkaF&HSaFid5QѢM.-lNROR$RK+ e1bCO1B~F=é>!to-+_M}yv!;c' #!e7|MR#),,!`Y <\l89ԂH.gc]3?SRVc 9e9Md;z}Ú\{CW>ixV耔oǀMEvfys޴2ޤ]V&[75{eCmt";eadȍ뺾ۆh?:,8 3 ̢0V$0 "#?$l@WW-w_g{b^}M@97%|dS_ϟThԡ~b~4@,MiFV} ~橓dMcaWy& ǩrf\SrƺrMs(\fDoS囼 @Oivp?CZrxpdhfN=91کhմnkmkrc̦kl)+_< oEdn5:ӍMN^X 74@t"4rNK3S+Gf;`D qHO \GڙhOVٺ29v|jާ`0$O-}"q0`1I4 J gKIӗ}}QRkJuamrCG1{n6j,,Rp ?)axuS"tG'ۓ=3Iܞ651!pa2&'+?i;3ٯ&[~U9Wa#X>XWE O0eY'ImNr7S8~%.;UFlYyܿ6fWEIldr,s%7DFFl#ߠYаH\0q,`fAfe'{pן~SyɘNh;5 2e]U|t NK3aͫ9ξ7[\&X%:ҳ՜8|;Ooӳo@5ä=_#gO7)?n=jXM`²S1}ƇϷާ6 BXŰcĻ;w6ܬ/|;0<^{g;'&0Ӭfh`fXew&(]{~)zzĮ ͟~2o`X׵6d}gDVgv~VMFu}oԍߝldÙ ߩى̔oI+d7D\ߕk0vcsWD^0 MO==+/,_|.a^p_K=v_2 Q00FM @gȊED5m4. PplXo2MlMEh{nm41$Ҽ2-2[&MNdQ6A50c0YRH]b¼m۶dHH`O&t/hh[{uM7͍4]CbF x"@ 4CƆCHF G<^,9w'*b rV_+I2ylřn8>>\1yEW׈>kXO'[g8`n?KE!!=]ΌMx#a!cyjlo~bI^,h?6, >ʐcwqΒ"ӶWhfU-tїjHbux1ifnu˻t*Vٳ&wiK7 \>=hF &qqlLH๋bq q$bQI~\O7t}a&flalШP891i_"W$շ6>pM EqB}=hqI+( ʖ&iT9GpՔ]uīt+fC]|badEk+sgE?,GDE+~أ٬:xLcMMߺ6D-Y@E͓͌FSDҘK ͡!!3d1CӍA_^ou{ 'αܞ ZsUm))7J[TSމ'*)zpwhjje,M[^70*iY  B "2<11qCr[Ͽym׮7]Fōq,Y}fI8?N EcA?AxpTѢ7p!?6=1I ]\#wh5\)D|jh{(i-i6!?EߡEzkt.hJ^E0YxEC}}V|UAU:Idc\=D5nLJ_&ʟdVիWB UQ窶ק:Un44mtcR<&832t ?ÙoOuk[R+koԴNN&xyvQANzJ|@%ih杻R`N@&o<~?t\AF<>pz3.uHb+25AL@W_LTZ{v.Q47H*}0Qۧ&PrriBB  ŧ !b^OW-Cin5EU^_$MPh7w`꼎= GJ+UF<ڴêF{y3JT1"EmV C""cHnܬz?>Q|aXDbv-"1dꚬL]^%TGKS œChfltshSi3#eI9V_cz3(~)z"Zl]FnEH3eƭ\]:\Q%EK7c};ћq);*7c}LmܮCC~`z3X?IEO !HR_c4KwhQxu Pۻ|O폊>5gn)@qEovFΧl͝V+i_}?R_cC"G٬X6Jf3nVz3s+KUZ~ ")"POU yLa9)eqrtyAIrp{ s]I_c"V'@@7T\kHa`k| { hC?f a^O{ 1D34`| \娴F| f`VE&EMI+9?[woN" a>kpxk @{߱ܽ _̧mmbUS]#>b6[@'usƂ͆)3 r 1+ފǸQX>vSsw1˭cמiYk㧶`V9+l8PUW+dg9|o|Kl= =:mUg+uMədMV_1.g,Zf/TRK+0-wQW_^Ľ_]n)U EpMy=eeQrr?0]r&4pۦU&x$fAN`3ߞ#5 {~"v0U3F$@B1D!.5cI ] 5ڌ EC]CI,JЍʊ^445'ZQ-[\Xu 瘻vGbτVRߡEne`FUZ\ _Vp< =v}/(b1Z]3َ񳚱ssѳmGf֌IoQ zVw%3+Om2%FiAE%,9X\g5 UjkmS#O"{U~zSv2C,hT{4P*-",9RYB)Rfc1[: (}/ɎZW2+K^]nZ TS$gd\{yEf[ed=oսz;9sUIEfUwC3r`a+Zn-Xz* `[[Dj՟M3'y?o%1?¼b|E9f a>@5;;_"z3Do@Cf;ތFOo7Шr9>zP׈@!f$U6\okfEcySئw}'#8U6EoAR2Û¸piNo&D, OLL\вo^۵MQz3KNohwhfT66:zhG4>u8}8۰r 0!AY_c򗓾Fc}}'4.rX^(Z MF;p-1N::3&LPko?T6?He8m-8]5búT>u\S.Kr{_ܵENM_>gѹn%Xfk} ג3R͝tW SPۻ|O폊>":-אfכIGa03kb`Ymf֛5\NRҵ0;)KuQSy^t`m:?H^WϠaaRof쥑`rUx}y?[ ݬ|!gfқ ,Ώ%?Do@} pi7b"m>NG^"3TBo&7C} Ap2>IENDB`PK>>PKN4zD OEBPS/img/adfdi_versionmatch.png:GŸPNG  IHDR, pHYs+ IDATx{|3%DK0`Z=畤6ZM zꅓ9'Bk@Zci<؈Z[) ۞֪U#Z5^PL[cfgygfg/fy.2y晙JS]]_A׾__j͛VUU\2bhN:L$ C6soųXD4 ;dka҇a5Mcn̤$o~O65H \R]_>裁@|}Owߍ7gLڂꠤt`3&Gfq!LuaҚ]$&T| 3Hu[QPG dY-y!q}L]oq5 ۍ֋΄٦- aZ>ʲ,̟J \1ZıNP \veJ(;}!zD@$ @C   IB D`J(xڵkÆ txqNu]\7wiPyG "1~z Vɖ>*R(˲t 5 }VaVU:T>YD֯+txٶ &[Zk!Tύ92mnh+:Sh!`*2 G8C1n9IR J0RN8qĉ뮻ﯩ緿*##o_Y3ɰV!%7؎FPP1iaU>B8EQtՕWGOhf U?Y "dTLoa 2ʴnZN²,,43-=,LU@t%(A#, ,&H ,OVT=g@RH`(AݰO>oO~b 7[>3o+bVa[VLGii>ZΘv f᮪*W TT!@+s3_}|d3܌G=i^@YY+,ĎQ=BŤwyfWA36,Yomn#Ծ A%0 i r8.j z='/9I__x!0ȫ@@@J(D'u]O<񄳯o|Pg6_fW8b'jLaGM DP::dZhPǙUU>s^DQE_X}mSq$ۧ%_sͰX*(9SX}*TaB\aH46jG$K^C$8:;*@6D *%~O ^$R>eTU !@A'O._vq1ujH*з, f!|,ipʨ:W$I 34~q EYZa S;L3G 7jaCvZ,ґuB^ڄgO%MDpUіDSSW=UL1}V/NM :A@!BJ"lفP ?n8PPk)-6+̔9c_R?bʟ|dxIyYcڑW&D5CҪJ $G#@(R$: N|ܾ6;u*/ЩH(@qׂ"츨 KL&0D4@+ 9J%6"i"5lzQZ^8+n5βiA:@@WUIUd"i[%RBAJX鿼ZԓǾN ڲ "Қ]NT54;JƑ\(J׋F<熚8@߱ZthV=OWz$0фl(,ۙ?JPYцɲlfϘm}oa:2?,Z:B=`@$+&V),Q:ա#jȷeҩ%:3TP"GA=Q[4U޹5(wKԳWus۷}~ћyl˶[:NxpsqYKt{|+.^g!=m޹i6]멐ѐ+.{~xp腥OjpKpNwG΁ÿ;,(I٥7Կo6-tk GR%8n1-;K_- 6Zª5 +`҃;_2S"@8%p:0.Ҧ DB~_ @ *Wc @$G}m^߿^`G$I <)|JSw\\+8׺g^xm[}Q2ll򲝇#t}Orw6,{z6n\9 ɇoaY>BAw#EK{/4@X"܏9@32 .=R ] @O`@d6 #u٠s#C@]b 7̶yk_ mika0LO6MCla?epbjx: 6ϼVS $MYnF0AX9\-IU n<ѴЬeۺZ_<ǼDZmzZOHz7&_W|Q]>i_`h8ڎ+ g6s4)>uKU%&J'7:$I I$ɒ,K dpOV홴-c榍wZՍMn˘gpjdE8d!)m*%4R:6Yܝͫ_ޥojl$ zἆ7B|>nOWWuópvt{G:u۽#w]kuѻwhw.\p…Z$I.=8fKKJkm}Z֝\rIc];5vKԵsц>Iwe^8+~ŋ/^c-0\߾޷Njm.]K.]tհJZûꫯ^lً!wRTnvfět&9̏ ]o̰&t|Y!Fi&NL&t0p:{S0.UHS4H22 9-R3 =e@z:-}Fk`0\{O޽Qݭy`M[ =&Iˀ H͐2 )=49=ST"8ze6I[KV(XmrDkXPl7a|p?Hϛ?Xx=6#a _T/k5гoZMm _hZպybCGGtݤ'^ZGa^^^v{[j]WoYۺzj[yۗۺeZ,BHwenow7wxz#/4{uͩݻ/_s]76l /^ dUHϽlBT;$$+ ޅoRԮ{>CԘ%kQ#$zE_?KsOՒJ܂Yc2: 3C,qw>D屎@,;t ;2,IREXc>T߳Y.r~C`8u[PKd";1otYv -7huA|RZaI._80ns`Edlt[k׊uw;vΝk 왵CX\aiڱv\>-YKx_`jKd3K7_ulWUY@Ȝ¯zo'Q+c WN sOH޹vApn7l=0kMTB!bۺ҇{3O!gۖb*=%S>OieږQUTX6F3HyG P9E?.`Pp I$=’)pJ P ' '&\o !0! $( $"I@PNy8Wtm:=ee6d!lǬ훏dQCB\闳bO͂^j޿">e֮к^xd,/w%hҪQ2d-y[; ~Y!Dj[ιG/9aH!!`o-ȫKlJ8w՘%I%Za2a]kႌΓ:h6itFO@jZd"XpMdL̘2=t$@XFd8LVV)QYvxH ~JV@Q4$"#c15q`zve-΃;ov_ >3Q߸և[z,6[4 j!հ$+++l]ql =vc{v.!dru_aAQs_ !Y9ee뿺Ǥ9e ou4yNn٥&z{CBgX2Kx_ٽm=~[Ϸq4@!/[~V/iVވ -;T]+p̣*Csc r31"2;3D ͪ)||d0"c6gr퇏LYt f\ 2&ffNL09!3eB3sRjDgD &Kv&83'fNtfNJ霐:abjĴ22]̘G\|Țphnپ],|&>RYgEmQ`oxHDιY2n{ŷ@3@gʖ}%\?X+ܹ5=z֒5ϔ->|SD&Y9eej m$xxnrm|in~ҭjMO9FD1IWlhi)ZYsso\Nq3 &!d Y?]/⢯o(~K_QTS.*~?7RUL3 C=Ls.j7km@wnmyLM 驫F3eWCBK,Ԭy9R{nͥW.^|az*fL[ EU_g3}|uٳg۷o߾}[k{%8\ə z5DyRdq#h- ̇VPu(J0TtWVUI= AG]$uY;0saadRa|]/MlF/4 1WztSN}wg$K$c$MrռWS ]rFTg,[T{zzN:Egx.z#G=z;hb>a| щ)G-D)62wXL %QZ4iU(hc$Z#IٹS}M#i8ng:5z1[h檌hkVMW룧NJKKͿ?ɓ<TaU~?6')qe،G):́WU~v&Wk%5к\}[MFF+#¯ځ}T3॓ߦ"t:%Q0GQyI%CH3kCL|aZ6 ܨc2%#}=k6IV;ZiBMШiKgfZUg960"F[}@"zsE^*ERNK'1#],g7fَr̤,'63WEa6a4~?lJO`!£|u,7Ҭ^6X"n_%BoFhG^jYY(1۰]নz.'hڪ'=zϯo0!욱+*f!z{Y3Y"kq.TvTfJmD`W=mB!gFvʬ΀ziMTx%Ǯ0O;2IhMdBN&j|tA6m_ 0gq#"^ذg bY'w6?UWrbGL ,٥۩#]#jy*f 0 9ڜtdH]ņ$3U7CH_yt*ZTN.S>j]u،N#Qŝ/#aL;BS֫f+Lم3*"I+Q6',y5+B?cښsΚ5+%%EXLLGEU6e4-jGmШ VΜqZWƮD~ vL`?YL3]0 GhjvȎvXЍ.><&͞=yCd 9CqqqQQ/)))w޶m۰ 2YreII n!  Gފ $[Aj+ H1A ڊ ~EA$tVA䣽eq1 b/, A$[A`Xཱུ" О6u"߼AYP}GQCI\[r»"W*8g/R!^$ \:)A7h(SPP$"ޞUghG vmV%;lfm"ϲ0I/ġChjmklSWiD HO*&nS}SxhT43cC|u~!zUܕ{:m5BZpC$41}~~QXDLQEyXZC2C3}}8%-ӇB|%%FqqWn ˘;ZZ::=CB K*Z:x4upW/6K$ц s?:;; L<{)==:|4$1_sc^I!blwZ>]\Ym7Q}uK`ʸY_/Pp&.nUuKKu1Wz˧2_4qmDdCU1 14KdkWO8Ӣ\U^?>Eu޺ ~a ;l-J]fb+e0#M N.);/A)OϚwT:sgjXJGD u3iO*fTvh mU^Q+6\Mmimn[^Q kѧ-%~jMWT]h+m\ rVp%4d\i3^+Ԣ$mPa޻E=V[bsI[~57Tt[Drm J: ͢V^L-&e*.ͪ++EV՛@hlBhEǤcI6TJlIԹc&C uNL>{fLR:w'_scK}6chk~Z]P këRO{O+Z[~+/-yV <5mn _(A\XS92A.s!Ԍ7I/w^ǐx^*j.-۠p,#Ēh g|f%q IDATV\y "GR^A8 t[ f1LMaMe\j_}bۺA1/HqDˠؘڤ^-`:NôW= =?7SbOhiUL=> omG~JenTH28T1qbI_޴bn^ptnH$˲*0*˲,'{K >rMK={Y`Zk~iR 57BD U(YŌ7mTCiq O(}͍"1'RO}SdF퐷e\H;Zǩr}͍9LVXVikťP]^]mb9(2^xdu;IX+ԩ,3fͫ;~};,I|Ssf_,,9q;K_!A?^{^p;u̙Dk (z%<z5c> RO8R~:'o0tƩO8y*ySH N>~ Y%{" 9e|RBn5.<0!Ӏ@쩞J !#炣}% }:PIϒx~uc~ ٩9H`@R&gΜ9iςsO;4CP'C!Hs!xV9 M":/&L'rަÀEc oSe6AF̼U tks,ڿsWapdN8{??%M61#53tdpp@>/;o=mڴ$]LpW3t^l+DjXp8,;?~<0H~=7l_O cЀr68 S:0Sis9g .U--%KCĮ VEV]D|p \i06CU&N7䖑DTW,67!/ @ǖeAqpasa| NIC8ojQ[Pww/9^rџO ON(SA`rVLIu 9Nw N>8jetm5OM[dICp;nnW'ަ ×bC՝fnDhrW ruEW:T[qv!`-vlZ%/댆w2O}w8&Gj<6GTtQ%T{K>*5O>Xuwv7 @@BW&83gI@@ĞwkXXn hDNZ쫬| PX/M `-; eXWD9@w W+Jj9oԗ=5m{di[,/#iچ&Wy5^e&\6LۜϟgZ^PyZ,N~ԱSXŌ|z9$I?1ub@ p{ʔYk/A !@2kn[Lxs8쀳gAQ(!)0eR#8$OoooVVVU(M~Mh7~[5^,nl+L?+B8{|Bv9ĉ mpe zť P&DFsQPB# 0N\Ӿo_ EOMS @ dHAQx`R( A 032C~;a) `w'fp6 K*M<Pn1m#+Ah7O@8$mn c,qUy'F!TXQg3NT,l +wXeŤN=~&Ԯi3JP 2uʴ}_A8Lr;ξ>9s}lװ1NA),\3gYngtx<{ ṾgkgQ~u^ɕ_QMpK_ȴyw;" P_53pe;'U<>YiWˁ=s\wyM_-zL 'w-Hytt IPB)HHw\-_nt_t""DSCxnƒ^4?55uZ`lqn'pY*cʕO=},Xм??uz)ufAŗ RSBH!iNeMrFJ͘K>yL縴A$@@ȜC]g䙷rh[*Դoe#XDOtI8ڒ Jʙ3ːqP ^ ;2&U'G̜q"333z {.{E( [^xᔌ nVIY%IRS3NA nP00O UBB2]D?p@~~~r 2[!ޟwMu޻g $$IAd d@rHun*ImB!RBUB$I"&⊘_tE) =o{M`5 0k֬A$$ -J(A/&ו* @WW 9q///Tm !vԩ#e" Ș̙3ǎ?x *\@ j*Na6 AdC'>BI^9e   qi+ + HB4; ؁VN}A%ʳ,5\ #>˒$ UA$n) $隀z ,A@d&A$>"$&z 7+5>]ۇg1n0Õ+fܜH cO>ٳ#mHrHKK +**bMȼ ;y򃾴/^5!s\G!;B Ċ[edu]SLi[nUl&Tuye[צON8},+:j+Xk].ӧGږ䐕}ӦM1b~歟Ǐ8#S}z|` A`VVs dee ƚOe> CsS?[W'/3➗̣Fr~s ԙ=R~,n0#vP{YU764m˗o5mp1h HIGqx@e6DJ|yeIfqoE#B(}v]OZv' IQb% Is6*.3yO~kٝtx7=Lvj nYVu !E9y>pB?"[eSx+?YaB+?6@E$ҏ^.Ao<7}":մ8Ԋޯ}ޤNX5lu; `h1 (Tbm{<رӷS_z'>}s_pؽjW˷߫Om~Ѷcŵ#O/#wPZ6IjtV(?Jc?=r y qt:Tbu_~ԟC@('^8_,N6fNyn\0x| CM)'#yݳƗ_[f&p?~|Ty% .qAЉ_/8wB|Gq7|;yZ ~@2ܺyռY8qE{rA6(B|Ep}*~sDGZ}zBsie^o}ckU [ B!=su}k$x#Bf?Z <$ߜ\yGmUТ1!#Vª0@!?w\?7}EQ`?^|1 (ڋn/U $(mݦZq, AlB=m3]E]t\4}wɶ~IZq+٫a5LV5Ծυe^Fc*P`H(@Q1xlCiE 8i/lC |5|Gf&@ <5Hsq[cAO:5 &;=ȸ a(d2N\0)} ANJJJ__̙392Ҷ$YfĔt~ Vy-|m/duFNL G/gΒ}%i;dcǎ珴-;vΎ)/IY!B~[N#f}UVO3IJJɓ_~}V*XoMpŤ|N %&:W"߼¹& 2 ~;wY -BLo . 9筨 g| "0*oY&z$Ag?ٱcǜNgjj,GCwWS%I$i`` 55f;Xo^[ؼysIAϲpA$n gY 觺ﲼU.:_J>zVԎF$42j*CzAz=1'n:g{9?0 ĝoa PѠnn-MVXν䞥q=rS堶V[M{9'Z`'nS{MvhCMP[*4@Ɛ[fHX5`.+tr'qWQ/?~mY\iYD;vwt[:֯Ua^ duM{S P( CP"X[HAc1{V}$E2խniΧsۂ|\.WU]HQOTnr)I|t>v57/TvOPbm[O{V_Qjz7RJ~bn_ݪjY]=fP W5Rkw% a֢7 1t}-A[B!BƍN>\ye $Sa=3Rr\mEdֿreƒ\" W@cO]Oiz]b*r\Q>Kc=Kew-wSd:LJPMTrA´Uotm~uKA>#ӦMsӧO U@I$ Ƅ'pBc,u}ӿ#왽"c'JFWւ_BD1$|ۚ^[mkQXW kvf49]agY HSSl>7ؾpb3+%w=ψ_>b*;D+.Pj_EvMbJ,t `d0!hLڻzܻ1b4]nSQR{TD1V6 nqަyG'jmn!(4y iAqf>=E>lȫ^UsPֈ.6~n];r)Σ%IeWcgλI.ve*|M&NFcsTt]hϭ*V85xAh? M N:h#|͍yN8[[ TouC`f(( ҭm5OM=X}r\kT-F2"VژOR,ZD芅v^zU -1o 32WZ BfCszrWnUG6A#|esةGI+6w6;agIHl3E­㧢T35,m[zFNk(B'8!rU Q酵 y?`0x-vH0=VV FIO`%2`vEzjD|mn>bDk,1 ;wڊ2.:,}Km1:j,6+ّ6ڼG(䋴Mdu`` ,Ʃ}z "){&"ǟ,kIщ1M4K '8L y=etb06vNx4\ CV|ݯè䞟1404;y-і M.W9xj'uzIS9 2j9Vn)w{\.T4+ٔxj,r+ZӘvҟ{Tq3^wUk6 bk4vGx w$7mjgz꛼Qn}|o d31E3..T3WA7mj{YgkgQ~u^ɕ_QcBfdzdncl+Ȍy͍&uZ]ꮧmOAsIP’&oma`64QtA1Ut|رC',[lÆ Iբ wdLx"AC{W+V(((5AhQAQ| a={0{pcs3xLB90 +w ~:ˬHXbfxW ϿA(h R K oSIDAT`. 2:]BX#B$B'PC(U CѽZ:a !, 9i5Ia3E &E Y;%ЌZxu bO¯&u5'o5$j!p !ߚ"N4ߦw$សGrh h%q'XO ^-8|%y9@BUT=[W״ {A[Ao  2$~wpA$oA;A% k( I[Aߊ |ϲP^AAs @BdYv: Zj$ C9 ?  qN}u%%M[5V\lE|@{ꩧRRR233MpBYNJ)"r>p8$I;Ǐ?})Sp8A[qAAstʲ|7ʲDaY. rnNWus:P(??֤' yeN2Q[9`G%AFY_JPXǡk֬I,AaC-͛AdA$w^WAk&MŇ"ѣG㠶"FFF,7ipYAG_ 0[y+ -\@IRŚj+ R $pȑ5|x b0qĢ"5ABO```kYr[ 2XtEQh}??0Q]dw|?+tSVCހLKcgVkl e,`/jl!l:P&9 Q ||AҒ%KoΘ1ϾیWӢT\Qj FJntl cZP5 \o{3 Æ?mLp:1#IיߦǛ31UE!`{&86O2O\p^zi Nc= jO$9 l:!"hWܰ6uL @Q886HE^{@ $\aÆ{ꫯ2eJL1Ջii =IS!m}̇yNGC^F+?F ZPl*sW Nzvvvnذaŋ@_|155[ah`ː2 3n֤q0U̮vDb;vz!͵}G}4,YdΝkmꫯ&HA󁼼ݻw>ܯIENDB`PKR~?G:GPKN4zDOEBPS/img/gs_adf_menu.pngPNG  IHDRL pHYsttfx IDATxw|TU?;3!!$ !jEZ MkEbQa]˪ZXXFv՟ *!" BH/$ԩwf2̄8}5<9'}9lؖp8B-R* \p8D4DP8s!DQ$sm p8Bȉøz7y#g \Mqp8!ŕ(0It}} 7tgގ҉ʈ;kr8YDA@H;.F|m~oX_htHϪoO3vbY1&Ƙє DRvi0w^9t@xPXLb ^byG᷻k 0Xs^'2>~sS>!%K?9;3M Guqc$Pg:uFٽFrPrrUJi紑7Jk^Vϕ@V Fw&(%,c{rوVb\dznHiu8G@5l9X+*dHpUDe=;\޸goyHbzFb ^Pwyrp8Z~q^iQsdzo7xKޢ'ߙnlZ0aU|֊>>8|߇8K?sY(YV8L~iSv:([sOyHz kŝ=uqxSUgYm[ح0u6l(=\Nm82FS÷[A7% T% X̖JIXPofٻ6+v⽟ܬp[4(}Y-)w ;\ڒqkI]Á/GIf Qnjw 4P#%W7|p8m!x,M}p'0((eQ J{ /m^ /{SeiXyr+A D6-<$qOgu}7[(`iv)^MPXTNScy?n-cYQc4{i:kq7¡dy3~aܓk7sW,,M}|Ж/@۾k[]IQy}?|0>:ipKeEv-l_cu!5jڪ"d|}q媦 6<4c[o6V`OO:4Kˬi޲CT5Z2,2CB@hiecu_X.[q^eؐ33ڭq s׾Q ٚ7uTWJGF7$?pW&Lz 6gb0y]F͌ԉIy?l-Lg4>^=yť(+)@r<iuS'&+*#(+qDń<>Xъ ̾#Q~jW:98_dkVf3g q\dSZ}.ъnIJGSxm1VݕϤ}F錦  l&t{<gPDD=A+2;vՊRPhؗV>?/(v¬Ϸ/s pg.]Q ŕiMV-h=A$ TIvN{Ss88+[$EyH"1%  ybq59#K|5i>{Fr@mZJ?7]]zSNLzͻFV猚> @> JJJ6!|{ݏ9ٔ 1.ǯ^HQ96A@\|2ђ%L㬬#͑rx>r-{qQgvھzrrс1IHV|'*P)r2Oms#FvZ<Ϗ~|픗 `@5޽*xL~wzݵjiX.o?Cc`8\3CH0Ey8Mut-%HvΕ#gJڄ" q^䈯+E0݃S {ˆ,&!D>ˬl-U~~)_hEPW/?F+< $EXXYn:6(1*9EӓRMŊ22F8h{o+듀RB=L\۾˹C7ck1E%}]o }?ux.uT[y@Z>qq|cG8u>3fGVQZqZܕЧ˺>}Cn-В@q\_m^fI)֊3PU qu{mju4=W.qo^. Wl-; -W73nM#7[ؑG.KN~_FҮ1xbEoM}w֒ZMKNƌO'^P[5^>wc\|?.,u:>đ>NZM5Hs^B:[7/} \Ș{ג=qdXc6AiaiъnElY|mҁE Z )Cg#w_76׃ƿ̐cn?~"z`TRxPprȘ3eqk/mm0%ҶE̻)ySqHK[x4evO|$>w> cypH`yg7vb7`'8&UOo}ӽw)XuNKYw{N⌻3k{?;gR >=eOϛqm7/bdBS +\ֵ̾'$8poEQ&jW[vǫwߌMl'gRZƓ0C զkH@uCx}Ӟ {kJC%YJH #c]Oa}s"<"ovrJ>7߼6Ms8dI։:A/AD҉EQcW8MY_Mj# 4C丛.I@LciT=835j c2?bmı_~Ŏ?p@ #cfۻeHG 6yA棦d݀'{bȉ1ùh)07]7r/<[ H{y{Nl3۽vUU` `M2%Adp8g895GzH@׫wlPPЙ5p8!'p8NW\#p8GD1Gbt3k+8Ŏ=a>;p8w''vw0p8+ ^MAq_q_I4c`'F~|#_xwrk c,8ݪJ56F qGMM5IQ,:/ p8yHCnHQD_5,nIW UUbUV,TDS~67ߋW5TTm8!R6sm޽N:;;<3 "@# :w&s8]NNtri5h'EFF%]Q%p=l_S`i]h!0(l~׶1g…W#o-mWNe(*SmUf  Ue Uc" L1^m0x9 z62^J$&LQ5UBeP0Fڠ):VHN!i&BHx$auz" #dRtAեKCHXG6>>m}Np "4zb: z{]Oen73kl$Rs=ǣN;~ַ[bDbc6BUS뭪[lvb 6o;uBvNSkO~>nOc:l,ߌMl{y۰y iC^{l+vman@Q KUGUb o[6mYsiV;}sDyE WI]dnuh>^ 44TonV"AA Y[HH:)Bz쯣:RPUٽ+N{]>-xv  9wrMtڑP"SYbY_ޝFdK FjClڈȨ?VW\TvI2h뗦] t坄RǥӁ8z)A `wFuLZkݛ2|&#s28~iiCݕvLCjK*k*Cj]!~=BB%W6CZP3*l }iHY\99ٷP*^c22&̅ }ԣrտf>(}_ޒC?z?2j߮޺(bݟegD)4v)' ^5sȇ6Up]?3[1)mیֵkDZ6D*$Ij6Kf+TJX!jrmMle6;l6* d<WLy2k+(x._e^vZlGLs/gM; G$lsϢ{b>P;ץ D%X,hj :;*U* /`6Ce$I؁6qR؅ZS8ûoƦor6,WoՆ5HCYIKoH;ɑuܱ+G\~i x,yݲ]O8ӄ'])Pf-R8*68 `IcD^d Uޠ7yS\1dߊo<V^ `?V㉧u!(@7n.~D׿4M9sO驑 zO|:5-Kzz/'h&s_Z9y$M{%5g&߷WɬOo 7\95ä c7\k^v/b}nFVxo=]9鉕Ow-KZ6MZ7@fY-jUbRMTTj:!+v;VfP¼i)9:Ly(s)ܻJ+69;r6,\-y46e;wV,t*Py] `FlC" ͆fZPU!mifؔ곏M)w2ϾιJy_RhM'c[Q%Tr dĸ yN񾳉p 0G+MPIca ~T1 L/=Ho i M[q\y{vc܀A8hS+ (2~ZAMSǡZrJAgw+# 12&U⠡CPpVu9 !}fxu&z>ULJD޻#ua@@Z1o>3FW hF>ii602G 0rZJ`TՉvjf6ec3g3}fmo~۬{/~lۦJߜ ŢZբMIRSŘFѬladUJk)5 +ƧƿWI1-ʔ5W:N%)׿Xyv$X,Zabd vbȭB[Mfp (ؾ-mMl``q5_He5&LJb5SƎPT_ 9q.z|DrǗĈncU~A~oVMqRZyl2ң`3R6@W J7 HzHPl|W]+>Q(p#{֕9.,U^za"W#S}-DhDS@x96-ORDQD;5mLnVGs7n8k0Cfkl+ WzXUUTwp-DfYbQ-"1*UEs ٘JTնz9g_+u}jk,B@Wwhs~W( P [,*VzE9.ɶGE9( :x R:Go?Cw x`1aQPދ(!nhRGk޴̿>z@vj]oI-Fݳ; Bh99`ں0 Q3QPбSO(d*T٬͊&$3=$jd"UA3a)6ݯ =·xaaY?9^$lB \ vnWoi4Zə3PZ" b9񳃥XSw$`8^u8lEbGΰi|OtfezD$P "(2E]+=_~/-/{hQ2#& BϨ>8RQ'zspH}Ku 9(4R@|ojt.j+wU(Tz-B9 7*;Ku{1/5mvI*V7>:86Er#^ۧ-R#wj̹ z}1HIuzvٙ X,lRvHnwSVeYlg6)87r1ᓟ=؋Wب"AG`l62,PիSaf BG{xo?ۖx$`$ޫ< 8Btf8gcr 7\96)(Zf &+,nV4Yl]bAZE]oߡgŻvՋDp7/H%D_r [%~r=_k *+>P" UG)G<5E\3تhQ (P*Tp+ 6N|HVkNP#DQ78mN-Ͼ)6Y683jDޮfϿ*(C 6i|jflafb6&;sϚ?iUeMTx s6,v-RLjk\x2Obk|k缅4`5o=z o,+Z_ ~ަk-knx!ʛ[w[n IDATGf7)Cg|6kc`Rk'2vw??I}ݒl2 n3sb|ɵ\OpIOT8z&U8?J  ?c_G/z-P l]W@.|/?r#Qkig{?c( q|摟\{_#g{KpUBD(} $}&u#g?^YګOcR$SrYa ݴ ol"h2~9o*ӘݦڬAٍٍB$ v*AE)Cg/|JVCbZtڣ_m' no1!eʓY_!$w =˟$i'܉s*SEʼ76VqR#W,t{oղo9!olzxxSGeɔ#}yNsV 6In%YIU`zbJ25CR@Һ+U0@f Vkc lX-پfuPu9uְj gKmVլXXӝ!w^Ňn^ C"YKc/z&pgp:vWUK IKdHvg E.`AzcǞ9 _Oo7 @(uuRʴvA!!Tx-6;]Sў=LaVjX6"1}SͺfDBeL%L(vlA뾵Ypx ]ۄ9]thJ@9Uڞ D Th'mw%ﺜtr_uOc:Ѫ#(E 1"Uj]T@c`"nua{Ǫ'gх [V]m6nWv&LkL2 Qۙ`p:ܗ#]U`5YTIadUQYe I% x#u;:#ﺜt.jPɡ?=ʪvcq@@@!A q=zS2MYKWqtaǏVʒƘs뮭` !#$+&ٓNǡ>f!6ܾ}ۯ u5ξv8O*ST&{@/=n=\v+2 v$I~~=c>x(ݏVRvEcNj9sѡCS]`(>RXX%z[,BUUU%p.r"{.&A|p.4|89}F߄}N,p8<‹7҃gpN/^5op-A]p8'hDDĉq8'퍽q8UU +p.Xp MMM ǂs8p't,lnnn pks8]sEW~.?2 o޽‚Pc8p'tI*)]VDY '; ePUUnÅ}sH2rr(NK+gcBk%,teTUUm0sE^~6/ 97!0Wq[]TާL9p "4 ꘍R{Nܶᓵ667Y#Ǎ7<%˶# Y 蟜lSFN5|HD?}aac5$x*B zUQԩ6]NWUU'Ӳ,+"B c`LsJ(!1@I@_ɞSpt×:DAq[Eҡ\L9p't*E"$XY82&nǶ#VVx[% w%ߠwEB1LQn!}{4~moXL^h0!D, :g0vJcLe`X]]]CwON(2vI.. ScurlکPgj~[9mNGޙ5yseƿ{U]׋Y۸_2X5_xRG?pJ4ykΛ.-r)e (cJ4Gn&\oys.QcWTWdM *1V*(>z PF&4<wbeIfs^N(u:U񞑁 y+xÇ d§u]~֍&$u`9257nsgi#[AET{/x}jL's*iQX쿷_-\I(s 7\yɋiQr}'of|r_R8`ÝӅЉ@NM CP=;JTY4.(<!a ?^KJvWR\Zvӟ&GFvol2K|(UeſS&źʻߨS1"( D-MS$~ɗ5s-zg~'UV@Lq89:|Ԩ-[w5%qw57%xQ^dڽ7ρ#2*:D8n D3uE`İQ݊]a E w8>N2R˜*1(*TƼ}[ѣ{a&vEUTI:T#R-xu57ȲRWl3""Bn @SM&1>u#k7c6_@:t:QAm4ɲte/\ګlɼ|PEOlZsL#.nO1b&E⌢6Oh < -,"༥** `?fQY82(DO!~u8^N2:JRAY@(l2π! =bYeX,՛DQ<^C.&2|e#:%'4̛z`IGEE3GDO?5u$D͜@^/R B(PQI''z( ЯMQ@ "< -t-ݕN])eYC=e0#%wжi8;9@AEAj!z?B^OU"XdH&؏ULjMCx ƌRrXhHj7*f2[%E&cb"%hj2 OA]⽗-M zDOwg mf{@AH PA=uu~/?0S+? u*c* N'GqXcؔX: 168*A0@eyQ2ADp L8sw-Hioz`ǫSW )spORz*_ &[⢂bm2Jj*/3.3٥^1Q݂~y^?zhmqɀĚC@@dTb37^SSug50Fi{T>((Pʼ9QJ"IvƘM~z!F*B|V Q GeM^^!!MUum/dHEU-%~$IdQڎ9* Et- qCܿ&>׿ڿF?y_qƻL d{{f ط<4sK3c@SwoTqBlJlY7LDZN$eY3`ײF%}zk;p%N߁|QϞ!!!j(wTuK iSIMEU I]ֿOM&++*rv1rԦAF1 (>1&֗RAnbd:Qʲ"+Jpg6lnDAiX7X&kK/Uek7_eUu⛯9g?r;i{YejIPwy9eoFOR(4~="U-hRK$j^%{=z^d2A{8+C{wU$)=IRftJ@YgNՆ)iWN M B N  DsYvr)˖ ^r|vo2˖_ GӠm@ffDRx`IS3v-.5eG3x!8g)йh=vbʲ 11bbb;e&((h𠁃 ;վA;}S걽rg=> 8^ߜ_pd$a%EAdP> LTќ ];-c句e-v,yѼ9ky9[PA酊?YW_P\|-p.ʴǖ-NJOOYw`B#Ƀs ߫_%yrkRp8(]poAڢssm\,!H֔ ݚtq8 M F7crQaW_}s!pN%^{kʁdiXW4g :O,3lʋcts36qc^i2r; /qSPfŒ/sX|8`KS59?;!bcx;$ZiTrRJXlT6s9eٲ tZq{tr㕳ID[b-Y8k"##CBBNpK0do슫Μ1_Q|Ԝuϋ3Sܖ:p8GI涟`Κf`+pJTGwn҂ky}!yiՓ&,uI%9WicLs=l9’VVրkK*98 h}%)VI:Kpd}R{B͜CaiJ~?{q8⼐t_Ɣ ?gk9?)n _?fZEJ?/\H_ќ~\L% Zkqi -AĩeƘs[ђ7i:P(Ntvdno޳o;9s>&: }RFHٚ θ|*zӏ[6%kΑEBH'3ToZ2EG*⸧d˦lqi/V@L^ǥnBRieeӒ){6l&~ܲI{uk4yE̼gN'$HIi 嗯KU9+1(/hmY'p8>Is{w=B=cDCXZ36E~QI) iBg.->w_Vhw395wvQ]ovWiCqyuꚛ  TL >;9P\q̢f90I/~BY'w>JO#L"Z`lwDsrt7rnɖ-rWIIs?X1÷wt)w [_K {ؿyn͉ xbEUǛU n3FͦF8.CB\Ϟ‚bpIV:zpq32jlV%G4ј<"1_TJ;Q-9eԪBr~^)/>5x&sKVMtP>~e}@@(pHbKծVe8cө#MS|nM&,[i3gjjK׼q̄伍ZO9 WOd;-]ԩw='HqÌ|/=*P~~", ݃Ű [ ҐH2(**ɲ] ,HP:#9؉m:觶$1!%[wƨ1|4i bghӖ,M[ϩq* IDATdkmH}bz63+8c7Z}H}@8`:Q(#RJݿ=]tVx/gTppP``.]9[O9sp.x$tTB!*!*!Tg_kPU88!h?@Zfd8WŶp qNp:RJ-vd0l͗3ǟk{O as!gMY\t( NföC); Dgӟ{0ɭCf,gh`i<\,[xܿL4:TB \ץݺIWߵ72ϵ ͙̳0q֭Χd:cㄛusT,[r, I" Ӿ$/<45ӑ׫6|dwnlz:mʄnvRUѺ%Ji޻](@1nޱSJ]NRJ_Õ}=wSidmε }e^7L J"s\)S3ӗ_u.K,Hr-cHsj(ܛG 1A>\]ƴWMJ._Z3rZo^[E7zuj+ ٓl_qMYWѭ[Ĺ6s!p3 3Se9#YR2;2:$^{kJΧzKYpckp7 BE߬y(jr,WA?.0t)! 7^Wg(Gps{YFSr8m8/fWɃs wҖ|jVr8gUQ$?=|Q^pԯbz3+{ jprbR 6R3E"դTT뚡P ʠ4*lpBhB cܣr\='<؟W4>Ʉq|xL-)d[݋g/]DMɹh8sY c}[QMY,O_̓+,|i5'p~}ܬ%ر**}oZ0%/z(WX_#޶P/{\Yb KYw(?ϻ!`uc[ Jr.f\;MC)&ﰵnNOӤ$SKjqZ'q8kFt$O0wDDIoͿ{s=VSbM^Kft~1k[wr{&[# 2\HaC/,LLUehCs8)Nb5!!A]TQ߉vr 8?{T}IZmzR+ަ'sIE#sl'8WTs0g2Pi\U90&N+dLS. X[sON4|.'y?Ϯk"`F]M?\zecl><᪱iGgj.u^g{c״mS_z]`ыK*~be,zq, lSg%yKo.+(M]G}0c?+A"xtƭ׍}Ǹ5̿+&hnOtutu -͠3D[o.u݃gyqqak7ÉgxǗ{L.4G4iq ls` n]%g496sWPKS\8d׶>r}C=Adf.k~>B]9Lzj!GGe2"*v-09ό;־+LW+9r f@ߞ wm Sn}mD`7掁1rܹ 8PЁK!2! j}}̇~rỸ;>Zs-|=Yޫ"  .ȵwNΚ{cǻN2`okgWPscsq^ x3@^cZG.̃6)lzssz xpNAN:;S'k o<› LT;tN˦ MC)>ֲm5~EOe- =us;gx/yXŷIȟ|1ּ޷6bH\AOA qaz pSDۉS]<~ Ԫ\VNj )Ƚp&@aoOǧkU߼|{MpwE|OAs/}W}6Ө48. m-_{~4u` GҺݾ8N'tp ٳF(r jYp-ygNp pÉ2O** f"9A'J2`kcL=mʨ`g87 2Vhg$ ?qM\R&F{y~N|LkX̷qII-Z4]FkD9(r4-s×SJ3zG =YukI$mYy9e~G!HҰUu08 x`ò%²y0GpZ/c?[G(ذd s_gزgj0/[K_ne/G0 IC{'hBò%uߖ-u4/-y!4OEw_ٲ>cw7nDžtX+!wu-;kERxzrFܤAl|ǰ>ND" =xq}yraHCyQrY 8BA9w Мo2~kɐj{W_}"JI0%_M-N&g뙎ȻɄooD1?-hf0ޔk֪G=D`0+!acteM&x(RnIR>׆ٰa:I[`i>fC!O=9!I`]&#ar5f`]&5\Bvr5f`]zD{7=/Xpۄ/!vy4"sظ11\\bb'kii,բ|S8sιb'Cw< ]: AWP7~tQ~va'-'vSZq:)wfG{k̡@58$?:>-]p˪xkӑrλa= b;s>^P:`;M{eҲeb*?xe֖/C%I߼|\W'?\6v{SH`O.EU " 32cX~r8(\/o{ӄGDʙ]+/ݲ|Y%_WXtGIx_rc(][*(^]nɣYEߛz&C3:'?e$<\CH{#gg]&a$tH uk[5??j3kp?m-Ƅk|a+$5 /?,\e!H?8(@ݘc_8rMGt F g^v.7?~' ; z{Ac&/? FÕf+ &xd$H{#q'嫫2yVn޼9GurѲ~j]•8 %[rǁ1ߛ~ۼWw;ؚa:.$A}i)6m@+Vb)w6 O>HPE;,+¤ @֤T u"HRZ{r{% YZ"jۜwO7|vk\Q0#r'sƏjot:";a/~߰{潼_&K|η ROÌ4T ?[89g]]c/HK3 ~ *YAK^?Xv48ĪǗwͅuL{E< U_~ke|x۪HKc~ˊ'*Uw}p& oO3\2_l 4p!zbP8^BSd' %c >G+'IWO4z`?ݶ,Co7Pg[w ^lL3W f&񍉊'Ex/7l=ZHzC`-\zK:cd+6V m]|=:pIÕa]汮j7U@IC@@WdWk뻆gf>ˊerk~ rQ]wג٠,3dП ̬xͧe74]ڨ.̇wUhVד?"}Ys^Ơ+y}ۤ65=IP8@ 9NƏ&N:WGgf3O?n 2j䪆La؋iaC1?NmW(& |۠]wXo~#y/U@" I_w7Ol7t:wo{_0goa{h |K<׼{|ǾKx_wlxg48߼4̀9_=s`Ep.&rU|rUJ*YCKԨϛIߘ:0F`h.>gP$i^xTv][Zyߏ4<d'70ʢ-]B5Ewl%:^oq ,7nu[|9|\? y{::Nӥ \=x𤾫3Hdl-vDikڴyœ8sr4GχO}bc qM*.\Y3nt6{\KyQSxk1odؒҮFepdVg]M4oǰ?k,RsmKW2ӞOOɗ-q6l8!H0o Á# _!&_QE,#4]5S/6eT3֛Aagfs/XxvA􀸊\؅ Hhxd)3goM1k4]F$*x H2r@3|VXzKK3)QM {+iKcxO34U![Z8 EA#x o]"]Z{M*k6*"K8$\] IοWa0t4ߏoXΙ{6߱Y0shr>~KJ6 Ķx4(Y m'OQ~фh I:}}̨h/ >7kQYY#233 3Ow:{6װu>H KAA $ wL Or[H ' 0)r0sCA$ȱ."酊u;vd=в)V HtQ'pÈ /k~+}&$퍜96FHal>c##KY!xuBc#K'm¹T`\Of]&>Q IVvh}cG?TjA99sFX;y"-L-JϏ~ acWVf[Uv~/Bw)(W|lP 8Qb7֘M{%7 ]Ty~;O=w_;V/vy˿wd=x樔u;z`G;f&9]Y+|+oZmϬZ+.~`ⷎh٤&#~ D/Z|ڙm/v-!$"'6Af.|;i HJb] 3!K(,3"͓gO"wp@ql,@3-pTăDQR_k%Uϱ`Pel q'$*Tʟ|!7Ѱ峳HHr_J`V8| $^Xl*3J38JB,U G2Y;,dŢ+*Th&ycֵ̆'^9VOeZd9lxtld0HOiVlA\ rO]9lQi3W:)耘Cbݙ>U R8}9W [YZg^ͫZ ܻѺvě0v~qAGEN1ůlTnpXWX*E^U\y CeUV3hb>-PR,~gV:qb{my/ϞQm wIӲ+WDoiY+LP} i8E+ml "`!J>s Մްy1s gVxo*2-NU^Ufu"ڂ c&`HH౟_UcM< HJ^t.< -d,y6GP^9ɯxԸq~#4Od䛦 o)blDuagŐaݺijApT #U`l7 !5`96ҳ`0NgL PT@W IDATd:N2xyeQ^zr@AR9A$eACAR9A$eACAR9A$eACAR9A$eACAR9A$e? |6IPt\u6IH Ip܄'7'be"ƄQ%Z U6! !~"g>u>7"x@[16(r"^Zdo z IWW )p{$(G{^T9Tش}19]ýbмr %"GQxTXHI[_JIxgamXEm Ejn*9|5fsR(nWɺL 1"U,n+fEKA>@ut$>>fhuueF; . 4e2j %'^xLc#,nOګ+TkWevWhU(0 Au;+xc_~u3gIP +2QW*I(-lfs8̬D$q~OlaVR]ϔ⓴}P&D$TrV8V Q%퍜ֳvT91':uЗgζz>jkÕƍ{ΎN #Gf|Gd ,;o௮v+tN=0[ip[&&0֭r/uƦZȬpTYZF-FawRhV;EpSۿ<~=#]f Az7q#G1"kxȿzr16Νk !/xb[5e,|n2\y vƏE*d C K(B57d$j2Z2ir;1'OnouÇ^4&;=#cX:\]=bsw6_pxr6?~'L㺺A0tVW ?sD[O+*`0fUG5` xSA`W ^bó'7u݁cՏ؎ f z>Mu@. tد X tðvЅ:j`0 N丠.]qAAA.Op^BO3ӯͩ;xCk9P5gٞmjə9|` fܷJ!gkYh}4g2?j ,{z?ǭEڿG_O4[Tۤԝ+އ}uk\}d X@CK!Hjc $ yƍ{#GL9ʭ7zAo0 A:׭'kxgxȲ/5^}ߚ` -ȁNf0>he?=|=0q%M^#'a+@^%C\8We13p[aemr'[~jӼs 8pazO&{NͼZ+W# i"vHe8*:t8J#k $ ]]; ہ_3 A ntNZAo':sߝ .|vb zm/_6sum  S&Z]u| w4>yWā&}e? (mZ(BC:8QӘ[OP$i v흝w@'K%3 K. r]D0SI/{'= ~/^ DW+ @Zh%0MZ܊*{ᝧV} 0J ~v U}PNOKoz@4~I>._~O<$Ԕ.^tDnˠW[(INZ99HWtX5EAζNCZN` `pag67yB1 rq#2rɓ_.wUmzS 4#-<1r~X?{y7l^oFnݰ彏tuzwqT#F=b/\ 8AHUJޠhEW$_a9z8(^:ޠElSPI"ܜ<-1؟ KAPG$ף zޠZ@WW+swWu缻W~N~u::;V#tz>G'yIa}w}`<|χr}qTNyֽp:zC]0@2Gkr]4Cz=bQڒzCʌuHb$ABH?&`0^Aϝo㠭#]Atsrӽ?U9P\{tՕ/NZ|/-%č%z,Ą)w/fp[yO}R3 u1A'4[4I//^{/^s߭k` 9`7\ JO-N?"[W0R'E4&I^xqǍ1*++sذ0g}K#\Ic'N9ۮq7jӄiiNwvc?u"oW^7` }=9I?zN#t3*O=w=+kO}&Ae HcH" I&'+OWt7o<@E :.<~WZ`0+1,##@L(X32TEABpwK<~g柾ʔ&8| >ܠ?ݼ{ϩ3:;:zޠ#Nj4CGP$ pѥ9 0)ϵ?ͦOċs&^h+$ uS^tbg~%W5?Ϸ|k 1(%nؐ!MD{42!clWúL};6#I̦m:bI(U=?Y05?6>@%FN(zsD`A3lSލI37֞ow8_Š$2N$fKZcȪtu۳\u\aY4ҲhS aY5-Q%%TI ULLkxO#WB 飽^WW/=3#,nhr.(|%]|22>95˚\,U5^Z˔J)2BZW(T#6l`gۑz{E EaYɒ:--[zOe аli=|[׼ T%"GQxTXHI[_JI`lOT0Jwyc]%?X멃ZGpR+VcX06Du9&le~'UziJ=ER{7:c2e>q홍k_{6IFE)ٲ|9g,-g4ƛ)eln.$g,-DǍ񸩲R,-D'S8rV b.^QZ̕NWWϲM~m\O)m, D7 huU)geZ'#"ICq^$i{_V[jm3`$ wNJ5:oO R@nn~}ڹd'eۡOUPZF9C`ֶkjIrvė0 z.գM_*1[iVJ0͙cOd@XN9v+'*+o4pF(g(gXYg3^'eu*lSZg/C944J CriH<(^X˷eiǶly,6!qCaݺ;vԨ9A!]cHtw %-Sm'%  }EAIYPAEAIYPAWW"HpԹD Ǩ̌m9OKFQ' +A>CCARcǎ! ӧQA(r Hʂ" &(r Hjى" dLL xODm)쫷ߞw"Hҳi[th;  L.6Ѧ M"Dmo~x A݃?W8(?߈28vCVL鉉bce"TGT!ŕUwoM{9d; 膅 ፍzrV_{O>N_~ FCGGȊ[{q=ꋒr8F:$%Grq/ĬslBc{ 䘭9shxEf, ׬YO>R72;c?_gqAz\ `EJk%K-H|22EpRьG/gU膅䖛F7/o{Ө#_űyAVQ$dp[bscV8|@[xܔRJ956vSZ1JkdahG)>Q$)TV|;!,-|u,o0핪'5QG/Y)rW^ْW>{oO{Lig8aW`snm|y?sO3/egWk]8_WcN5'PB̑ 1Ww7Mv@q Sd7-kN xdG{5Cv0ҾyIy&NK`ӹߛ`Zt? gB1P[v,nrlԢźźEj$u! t*IHȽ S ɜK^UQ :Gn,>OA{0m3pRUYSGl(@_V^kbT%M;E" #^"+0w1"_%K>w?x8 5$$.'a4x@-clE9?;Vą l(O\ >ig )I/YWu7Fs`٘ Jd37ּ{ AΖC juU=Vul)j p}7\ynR;@\ymdm:|EI0 $CH-:plQv!Hk\x 2-V΍5H (rЂW./ҳO u(#<I `//ouEcT@R.A=9dHG)@r㺺 G?%𳇞|j}]mE@C|8xJKm HD+O3dI 8ps{cͽyvmm$'q6lkH8;pp5V-Tpmc70D II\Enl\$i!X=jf8unjGO$P^8' (%_u3_wo~ /74#x (rHSxY53_u0cRGO?O?9ImPԇ7%3_?e>| Gᅀ ^esfθfD Ȁx ,!CoI! ! Is(r Hj5EAIY,rD(0j2 Lүl|#F m/l9FE^NKvq5Ag閭 U%78^xͅU*)Lq'4\Wx%QpRn Qcn dG̤QPcׅ'a@;/E T,-TuU7]]]'_v:#4(*кUI#N-* %Q5&OMOf+ h:/1ŧYR'uV͊רj V+^m8H񡴌L z|2D=sw$Y| @=0l^E uݜ?nm|y?sOF OSEɂ"R@U5CPDdV"m8 GT-aeogls JS i|wm#䌅@񡩾·Jd0{ݼys_oyS7n[,nrQ|P, $j>.ϨsuM8Ĭpy¬b\36o[ !Bjt*jevqvz"ڎ.:sQI)ˆS`V8ZZ{c7H9#+cgO컗xvK<Xie wxu7p^~6osP0NǪ\7dik$̞KF22\٪\;Ϻʻ (MTO1>j>*`ȶT }9t`x\ ѩ>1CJ؈€ֻ29q\_x%ɨUR?,n U"H`]&EĪ>$ MS5hdHЋC W"Hr J;C-\  -PAEAIYPAEAIYPAEAIM>n9A$5)(r Hʂ" ,(r`lFv; )rnv:ºLPy I}DuE޶>7Q-a]&4` ! Qɹ=ҍl ڝFYatyi8'W/۝7rq\)n !@dǝ4;5A֮޻=Smm͋՛ *)+ :tcQګީX*JTdߝox) hlq-& \L=R+vהּFktR)aOnclasISz> DMQLL&dP#er{ـ7 U9U8/sc1k6dU==2C;!+͕NpǠqR5 SYPԭcA~H-kqGgS c#, Nnikqm5TBBQ15pOG^Hq'4 DB@Q>_QUX pL:cꄕjLؔ$A`)EBޓ#K(ϬpSA K3[iоVZ-lGTbKm*$<68]qѮ-Tsr1pDŽGk_=eܐ\#?06"=06u+>Is9uL.l}ru;|t ^Eˮ#/83c4Rt) /鳩;:aC-;e7DS(8I7]WH{#9CO/(n8k h>-4֕I0(ҍ"o)sML(2)Hk FD*3) a:bwS$fq{/) ˱"1Z^a=1JU\ !ӆ `J/ !~EIQ΀SZpP%\ ʜk{t~Tm-/ĠߣU3&ZҭlLu--8/M{Cʑ)E"ޓKVXIrXW;+I2kj!c]c]9 1,6&QF"/Xʞ!tlQb _X1ĕ%U؈@OAozr1EP{0$Dۀ H jbˡ9Am2p% ! )  ! )  ! )  ! )  ! )9FGAq9Fhҋ[X1e곊.S _{$>]<~E|A~Ɩ"C߉șkmjTh'Ȑƾe#cۈ~Ax ګ4fqNByxͅ<5u;E,l k(s%\<:Ehar|tk=h>17PJ6HlT])=Qefn@uD͑mUhCq=E~NpwZ~Ւ#fGWB0 dI{s rMq~xo}V:šæqnhnp=xF^g) 8HkvFAfqSN~ݤQ#*w0£p**WºLJɑc}|1ghS9U8//`]nW*P h֬Q 2I{B9m!u 8)GEV=pU%J)g \5UPiZ* 7Ʈ q7PWew%?Q9A> Wp8YrW\haq+I%RUʜ;T@Hغh rR\L=N(# 4HXܔ6BB3n6&YZFex OS]GAsT>V^/VHf>b.e]68 a)dOczd9Pt0wwDcV8|QQ/l W(Eº3ʒA r`EbX(*ؤyH"i!6IFΙ2HooȘk8|XWXJ 5n;5Xa[zduL.hUKYWpTM116@$#8qkT&C.ʣ$lZ̕NJ`l6Fd!!O&A!Ȑaʐ()#,i, u:t~ճ0|rUr a\Vno,+jFaAŕr3D[Gg>>fr`QCAN:78>؈@RLO%G5ۍ~cժgCAuj7UV uAV>t1$ڀ(k8.6 B%\2xqΤ4Y $͈9\ @*+$`AIePAEAIYPAEAIY+ 86}h7jo9(ob9JA$5" ,(r Hʂ" ,q9eRuJC*·{{b@ 2䈧16~sl/}sxzBv *wg Ȑ""xܠ\՘YIG)5ccXa$dK"z? l.c1 QݎtҒ17MӚXH$aMT{bpVarJ_S=$ђcc5BIz wH{ ]e'-7'4Q{YwF쮃ZnߥVuUVm: ӚM*TE3.n4E+s=VE^B aeSJÆ`|H[ )A[Ggȿg+;Hrpgr*25JsZA ʴ+ ;V̈́Nzi>SIj0⸅ )ʕՓ3pǟan*#K(_]wl'K(>4!6%AVmtĽe{O#=6';}PT0NጅXN(4 V0!)Ax:dXeT*"el~*^F-Xp^51+ċDB kϱ>d*~v#>1$֗0YZF|EUѶc|80išP'(Z`ڪ<H{#q))&R74qYh%6e6țorye$YZ;JO9$=hE9/SL|)UP*d2i8=⦜FfkXW|˭"ʒKJKcY*9MExF[$*J' `]6VFJb)@ HdVRkP٪|u;Dl}_EnCxZ7$asI!!S HrQUOF*|*!jkH{4M-]1rV32l\/LE8J3q\P8diӘ,iwjB%65WXW} jfI{S4zj%s -(JȞJ8'<5FE GWs,M|{sSGM~PHw_-Pb0 HRl#I}79j\q5v*I{#gZ?LR(6R7`Vmwm\?ˇ(SdSJCe9e #Q,xf&xTЀTm=QN#KˍS3mXGcǕSR26e[%Z" {' w.=8w=ݰc0nxdPHs,Gl᤻LS)o̜h!;b MOX/TPv%4+OpJPlbxhcEF2@yX$N9w@~񥥗%j9尳aE [ gTd89v"I5|3Y|iLT?P*)eMޡuBC|Vh%6gȢMnw-'8B|C&U)Qu\Y;39[젨.L^,XN&KZDZdrPohgf^:uEU rqj^|JWqbqSET6*x2R%` dI AT e!0] +(_m+&prjWS89PڶX*ٕ,ʗ]c'1,U=;6m'WPCPxU/J]K/D-Q җ@J?Sd=1/otT,);׫MDK%x{B~:T/p0LϪfkGx>₴; TDwaa).Ո5Zh{Iv%<o,h燼t̟417LC@QnEWߝ׭a\0ћ |Oj0q*zNN%3,r@AK(z3^)$=eiVf_ ;*ŁcTDX'[((;6Ln~bjebɁT'$7,F % c\RJot4s,b{46,&*% (ڷ)40q ^Na\Rgr`:O"<T6MH :#AN=L%k0Lb쾘 S*fWf9&A1ٝ}\N9PdX;sA4}`:6&e(\0""vZ LUG%̶9 +U [| R%vck,,Le-|@-Q^Br."[ *A*D.\줲 o,m e  f (P H7(uYYG+ZA'9tω(j |$ȅ*}D%,^M^*V&D'ê"6CJ;,ߞk>dJOI$0G)q0>*R=!FbUq( pr7쾘KjGD(hUq0N: 8/獎VUY-889oO 87L\P1XmJ(R'@ S)M8vPL.Cw+bie>Ӿ$P,Lbp eZ @msQDrj895 N@m"5=?:[gޟ$ 4~6v3Er[i>v[MwM_9]r+T(wVPj5 $sr/\e}{n>`@ߚʪ'߱kbFAw"D58z=jFGj#,ɰG%OpD+w|qJ|\F%" PFtM_ 1qG۷=SWÙ564Xvu7T8 *iJZbTb@@ڥL@i51GSv0wΧ08Qk~uJ%8 ':KJxReW5OB2{qT|\By?UzFGKwyZ}J\KcÖ 3Mgo۝V{ON^YFugoOȯn|w|]\($ dyP+Fₒ`(&\b%(PlwJK7l9Pdij*QIZauRe:Lmi=E%EGB`j{T/ Y7JXi/i7ͧHȈ.ESl GIDAT= ?Ɣ(O>o ^CX5*YEEQ%h)بR\*1TA 2 1r/#q)LR嬯\gE3=5 %4^^h66Fv)HcSo[fp,i)>-&o\1p{ԙk>{˦=.SϿkn9}eŊmz{Br0#IeB;'F{1C-sGځ";(tKCӗ,<鰯գK7L+_Τ|([*3vVc!VFN8@fWsw}j}ֱwn]zjǡ*ٻ02oޭ46.wEu<3s]q䴯VVF˭&GG;yZBvks˽t"PdD2YF}˪'{ٲis׭wixB$T%)EՃ G1r'(zƽlu;7r^N\-|ϡGnseK)5m0M%5Stv@9w;'70W'7c?RQoNDߝuZŴ 쾘ѻ^oia|0P/,`,zP@P:z%B'r kBsU:E.V+VUЛoĦ m&E|%+Lk 8A B%l+-ʓ&ܮϋz /T/(8971Һ[FYܢڡv/ yj uuEmSGx0ʩDdW?Q֡l1JSSpr/-#Ldž b163lJ\U,iV!}.+~ us6#%@YrAhJ\'EbHdd-nJ<Ѷ#Mދ)L563Pi'egyrunm%.ѱ]yǻoώJtM`ц5 89('6'6ycP\N@Rb8ݿH\hjlˈ LCCCԔdL\;ޙ}ѱmH fϪ3s?_9samoZ~]30MMss y ;.\[(`fo;_}󉱓76=O mkw]߹{uW>}݁:=Tt1Hzz` xZ/,,45/aHd!Qrrͫ˖nm[ą~ݎVի0kur0Zgڜ[NnaJίmxǿ Getting Started with Managing Oracle ADF

2 Getting Started with Managing Oracle ADF

This chapter describes how to use Oracle Enterprise Fusion Middleware Control to perform ADF application configuration, monitor performance, and setting up logs. It also describes how to use the ADF-specific WebLogic Scripting Tool (WLST).

This chapter contains the following sections:

2.1 Overview of ADF Administration Tools

You can use Enterprise Manager Fusion Middleware Control, WLST commands, or Oracle WebLogic Administration Console to manage and configure ADF applications.

Oracle offers the following primary tools for managing your Oracle Fusion Middleware installations:

  • Oracle Enterprise Manager Fusion Middleware Control. See Section 2.2.

  • The Oracle Fusion Middleware command-line tools. See Section 2.3.

  • Oracle WebLogic Server Administration Console. See Section 2.4.

  • The Fusion Middleware Control MBean Browser. See Section 2.5.

2.2 Getting Started Using Fusion Middleware Control to Manage ADF

For information about navigating within Fusion Middleware Control and a description of its elements and main menus, see "Navigating Within Fusion Middleware Control" in the Administering Oracle Fusion Middleware.

Fusion Middleware Control is a Web browser-based, graphical user interface that you can use to monitor and administer Oracle Fusion Middleware.

To navigate to Oracle Application Development Framework pages in Fusion Middleware Control:

  1. Enter the Fusion Middleware Control URL, which includes the name of the host and the port number assigned to Fusion Middleware Control during the installation. The following shows the format of the URL

    http://hostname.domain:port/em
    

    The port number is the number of the Administration Server of Oracle WebLogic Server By default, the port number is 7001.

  2. Enter the Oracle Fusion Middleware administrator user name and password and click Login.

  3. From the navigation pane, expand the farm and then Application Deployments, and select the ADF application.

    Application Deployments selection tree.

    The ADF home page displays.

  4. Select the Application Deployment menu and then the ADF menu.

    Application Deployment dropdown menu.

    The ADF menu displays the following options.

    Menu OptionDescription

    ADF Performance

    Displays the Application Module Pool performance tab and the ADF Taskflows tab.

    For more information, see Section 3.2.4, "Viewing Application Module Pool Performance," and Section 3.2.5, "Viewing ADF Task Flow Performance."

    Configure ADF Business Components

    Configure the ADF Business Components. You can select configuration tabs for:

    • Pooling and Scalability - Application Pool Properties

    • Pooling and Scalability - Connection Pool Properties

    • Core

    • Database Properties

    • Security Properties

    For more information, see Section 3.3.1, "Modifying ADF Business Components Parameters."

    Configure ADF Connections

    Allows you create and edit connections that are available to ADF applications.

    For more information, see Section 3.3.2, "Modifying Connection Configurations."

    Configure ADF (adf-config)

    Allows you to configure ADF application properties using the System MBean Browser.

    For more information, see Section 3.4.1, "Modifying ADF Application Configurations Using MBeans."

    ADF Log Configuration

    Allows you to configure the logging levels for ADF Loggers.

    For more information, see "Managing Log Files and Diagnostic Data" chapter in Administering Oracle Fusion Middleware.

    Versions

    Allows you to find the version information of ADF runtime JAR files.

    For more information, see Section 3.2.2, "Finding Version Information of ADF Runtime JARs."

    ADF Resource Center

    Provides links to ADF resources such as documentation, knowledge base, forums, demos, samples, and software downloads.


2.3 Using the WebLogic Scripting Tool

You can also use Oracle WebLogic Scripting Tool (WLST) to create, manage, and monitor Oracle WebLogic Server domains. WLST is a command-line based on Jython. ADF provides a set of custom WLST commands that can use to perform functions specifically for ADF applications.

For more information about using WLST, see "Using the WebLogic Scripting Tool" in Understanding the WebLogic Scripting Tool and "Getting Started Using the Oracle WebLogic Scripting Tool (WLST)" in Administering Oracle Fusion Middleware.

For reference information about the ADF WLST commands, see Chapter 6, "WLST Command Reference for ADF Applications."

To access the ADF-specific WLST commands:

  1. Go to the Oracle Common home directory for your installation, for example /home/Oracle/Middleware/oracle_common.

    For information about the Oracle Common home directory and installing Oracle Fusion Middleware, see Planning an Installation of Oracle Fusion Middleware.

  2. Start Oracle WebLogic Server.

  3. Start WLST using the WLST.sh/cmd command located in the oracle_common/common/bin directory. For example:

    • /home/Oracle/Middleware/oracle_common/common/bin/wlst.sh (UNIX)

    • C:\Oracle\Middleware\oracle_common\common\bin\wlst.cmd (Windows)

  4. Connect to the running WebLogic Server instance using the connect() command. For example, the following command connects WLST to the Admin Server at the URL myAdminServer.example.com:7001 using the username/password credentials my_username/my_password:

    connect("my_username","my_password","t3://myAdminServer.example.com:7001")
    

For reference information about the ADF WLST commands, see Chapter 6, "WLST Command Reference for ADF Applications."

2.4 Using the Oracle WebLogic Administration Console

You can use the Oracle WebLogic Administration Console to manage Oracle WebLogic Server domains. The console runs in a Web browser and has a graphical user interface.

For more information, see "Getting Started Using Oracle WebLogic Server Administration Console" in Administering Oracle Fusion Middleware.

2.5 Using the Fusion Middleware Control MBean Browsers

Fusion Middleware Control provides a set of MBean browsers that allow to you view the MBeans for an application or for an Oracle WebLogic Server. You can also use the MBean browser to perform monitoring and configuration tasks.

For more information, see "Getting Started Using the Fusion Middleware Control MBean Browsers" in Administering Oracle Fusion Middleware.

PKbW.4)4PKN4zDOEBPS/ap_jdevlibs.htm ADF Runtime Libraries

B ADF Runtime Libraries

This appendix describes the contents of ADF runtime libraries (adf.oracle.domain.webapp.war, adf.oracle.domain.ear, adf.desktopintegration.war, adf.desktopintegration.model.ear, and system classpath) deployed into Oracle WebLogic Server to support ADF applications.

The following ADF runtime libraries are described:

B.1 Using JDeveloper to Find the ADF Runtime Library

In addition to the listings in this appendix, you can also use JDeveloper to find a JAR's corresponding ADF runtime library.

To find the JDeveloper library for a JAR:

  1. In JDeveloper, select Tools > Manage Libraries.

  2. In the Manage Libraries dialog Libraries tab, click the Search icon and select Jar name from the dropdown list.

  3. In the search field, enter the name of the JAR and click the search icon.

B.2 adf.oracle.domain.webapp.war Library

Table B-1 lists the JAR files that are packaged into the adf.oracle.domain.webapp.war file and their corresponding ADF runtime library.

Table B-1 adf.oracle.domain.webapp.war Library

JARADF Library

oracle.facesconfigdt_12.1.2/taglib.jar

ADF Faces Change Manager Runtime 11

oracle.facesconfigdt_12.1.2/facesconfigmodel.jar

ADF Faces Change Manager Runtime 11

org.apache.http.components.httpmime-4.1.2.jar

NA

oracle.adf.view_12.1.2/batik-anim.jar

ADF DVT Faces Runtime

oracle.adf.view_12.1.2/dvt-trinidad.jar

ADF DVT Core Runtime

ADF DVT Faces Runtime

oracle.adf.view_12.1.2/batik-transcoder.jar

ADF DVT Faces Runtime

oracle.adf.view_12.1.2/adf-faces-changemanager-rt.jar

ADF Faces Change Manager Runtime 11

oracle.adf.view_12.1.2/dvt-databinding-dt-core.jar

ADF Designtime API

oracle.adf.view_12.1.2/dvt-jclient-adf.jar

Oracle BI Graph

ADF Swing Runtime

oracle.adf.view_12.1.2/adf-faces-templating-dt-core.jar

ADF Designtime API

oracle.adf.view_12.1.2/adf-richclient-api-11.jar

Trinidad Databinding Runtime

ADF Faces Runtime 11

oracle.adf.view_12.1.2/dvt-shared-js.jar

ADF DVT Faces Runtime

oracle.adf.view_12.1.2/adf-faces-skin-dt-core.jar

NA

oracle.adf.view_12.1.2/inspect4.jar

Oracle JEWT

oracle.adf.view_12.1.2/batik-swing.jar

ADF DVT Faces Runtime

oracle.adf.view_12.1.2/batik-codec.jar

ADF DVT Faces Runtime

oracle.adf.view_12.1.2/adf-faces-databinding-rt.jar

Trinidad Databinding Runtime

ADF Faces Databinding Runtime

oracle.adf.view_12.1.2/prefuse.jar

ADF DVT Faces Runtime

oracle.adf.view_12.1.2/adf-dt-at-rt.jar

ADF Model Runtime

ADF Designtime API

oracle.adf.view_12.1.2/batik-script.jar

ADF DVT Faces Runtime

oracle.adf.view_12.1.2/jewt4.jar

BC4J Tester

Oracle Help for Java

Oracle JEWT

oracle.adf.view_12.1.2/adf-view-databinding-dt-core.jar

ADF Designtime API

oracle.adf.view_12.1.2/adf-richclient-impl-11.jar

ADF Faces Runtime 11

oracle.adf.view_12.1.2/dvt-faces.jar

ADF DVT Faces Runtime

oracle.adf.view_12.1.2/dvt-utils.jar

Oracle BI Graph

ADF DVT Core Runtime

ADF Swing Runtime

ADF DVT Faces Runtime

oracle.adf.view_12.1.2/trinidad-impl.jar

ADF Faces Runtime 11

Trinidad Runtime 11

oracle.adf.view_12.1.2/dvt-databindings.jar

ADF DVT Faces Databinding Runtime

oracle.adf.view_12.1.2/trinidad-api.jar

ADF Faces Runtime 11

Trinidad Runtime 11

oracle.adf.view_12.1.2/batik-xml.jar

ADF DVT Faces Runtime

oracle.adf.view_12.1.2/batik-css.jar

ADF DVT Faces Runtime

oracle.adf.view_12.1.2/batik-dom.jar

ADF DVT Faces Runtime

oracle.adf.view_12.1.2/dvt-as.jar

NA

oracle.adf.view_12.1.2/batik-parser.jar

ADF DVT Faces Runtime

oracle.adf.view_12.1.2/batik-util.jar

ADF DVT Faces Runtime

oracle.adf.view_12.1.2/batik-bridge.jar

ADF DVT Faces Runtime

oracle.adf.view_12.1.2/batik-ext.jar

ADF DVT Faces Runtime

oracle.adf.view_12.1.2/adf-share-web.jar

NA

oracle.adf.view_12.1.2/dvt-basemaps.jar

ADF DVT Faces Runtime

oracle.adf.view_12.1.2/adf-faces-templating-dtrt.jar

ADF Designtime API

oracle.adf.view_12.1.2/batik-gui-util.jar

ADF DVT Faces Runtime

oracle.adf.view_12.1.2/adf-dt-at-rt-wizards.jar

ADF Runtime Wizards

oracle.adf.view_12.1.2/xml-apis-ext.jar

ADF DVT Faces Runtime

oracle.adf.view_12.1.2/adf.constants.jar

NA

oracle.adf.view_12.1.2/batik-svggen.jar

ADF DVT Faces Runtime

oracle.adf.view_12.1.2/batik-svg-dom.jar

ADF DVT Faces Runtime

oracle.adf.view_12.1.2/adf-dynamic-faces.jar

ADF Faces Dynamic Components

oracle.adf.view_12.1.2/batik-extension.jar

ADF DVT Faces Runtime

oracle.adf.view_12.1.2/batik-awt-util.jar

ADF DVT Faces Runtime

oracle.adf.view_12.1.2/dvt-facesbindings.jar

ADF DVT Faces Databinding Runtime

oracle.adf.view_12.1.2/dvt-jclient.jar

Oracle BI Graph

ADF DVT Core Runtime

ADF Swing Runtime

ADF DVT Faces Runtime

oracle.adf.view_12.1.2/bundleresolver.jar

Resource Bundle Variable Resolver

oracle.adf.view_12.1.2/adf-view-unified-databinding-dt-core.jar

ADF Designtime API

oracle.adf.view_12.1.2/adf-richclient-jmx.jar

ADF Faces JMX Runtime 11

oracle.adf.view_12.1.2/adf-faces-databinding-dt-core.jar

ADF Designtime API

oracle.adf.view_12.1.2/adf-richclient-automation-11.jar

Oracle Extended Selenium

oracle.adf.view_12.1.2/batik-gvt.jar

ADF DVT Faces Runtime

oracle.adf.view_12.1.2/adf-customizationset-ui.jar

NA

oracle.adf.view_12.1.2/adf-customizationset-mig.jar

NA

oracle.xdk_12.1.2/xml.jar

MDS Runtime Dependencies

Oracle XML Parser v2

XSQL Runtime

oracle.adf.controller_12.1.2/adf-controller.jar

ADF Controller Runtime

oracle.adf.controller_12.1.2/adf-controller-rt-common.jar

ADF Controller Runtime

oracle.adf.controller_12.1.2/adf-controller-api.jar

ADF Controller Runtime

oracle.adf.share.ca_12.1.2/adf-share-ca.jar

MDS Runtime Dependencies

ADF Model Generic Runtime

BC4J Runtime

BC4J Security

ADF Common Runtime

velocity-dep-1.4.jar

ADF Designtime API

org.apache.http.components.httpclient-4.1.2.jar

NA

oracle.adf.pageflow_12.1.2/adf-pageflow-impl.jar

ADF Page Flow Runtime

oracle.adf.pageflow_12.1.2/adf-pageflow-rc.jar

ADF Page Flow Runtime

oracle.adf.pageflow_12.1.2/adf-pageflow-fwk.jar

ADF Page Flow Runtime

oracle.adf.pageflow_12.1.2/adf-pageflow-dtrt.jar

ADF Page Flow Runtime

ADF Designtime API

org.apache.http.components.httpclient-cache-4.1.2.jar

NA


B.3 adf.oracle.domain.ear Library

Table B-2 lists the JAR files that are packaged into the adf.oracle.domain.ear file and their corresponding ADF runtime library.

Table B-2 adf.oracle.domain.ear Library

JARADF Library

oracle.adf.model_12.1.2/ordim.jar

Oracle Intermedia ADF Swing

Oracle Intermedia

oracle.adf.model_12.1.2/adflibfilter.jar

ADF Common Web Runtime

oracle.adf.model_12.1.2/adf-faces-registration.ja

NA

oracle.adf.model_12.1.2/bc4jhtml.jar

BC4J Struts Runtime

oracle.adf.model_12.1.2/adfbcsvc-share.jar

BC4J Service Runtime

BC4J Service Client

BC4J System Catalog

oracle.adf.model_12.1.2/adfmportlet.jar

NA

oracle.adf.model_12.1.2/jmxdc.jar

JMX Data Control

oracle.adf.model_12.1.2/jr_dav.jar

Resource Catalog Service

oracle.adf.model_12.1.2/bc4j-mbeans.jar

BC4J Runtime

10 oracle.adf.model_12.1.2/bc4jimdomains.jar

Oracle Intermedia ADF Swing

Oracle Intermedia

oracle.adf.model_12.1.2/adfm.jar

BC4J EJB Client

ADF Model Runtime

BC4J Oracle Domains

ADF Model Generic Runtime

BC4J Runtime

ADF Swing Runtime

SR-227 API

BC4J EJB Runtime

BC4J Client

BC4J IAS Client

oracle.adf.model_12.1.2/rcs-adflib-rt.jar

NA

oracle.adf.model_12.1.2/adfbcsvc.jar

BC4J Service Runtime

oracle.adf.model_12.1.2/ordhttp.jar

Oracle Intermedia ADF Swing

Oracle Intermedia

15 oracle.adf.model_12.1.2/jdev-cm.jar

BC4J EJB Client

ADF Model Runtime

BC4J Tester

BC4J Runtime

BC4J Client

BC4J IAS Client

Connection Manager

BC4J Recorder

oracle.adf.model_12.1.2/dvt-databindings-mds.jar

ADF DVT Faces Databinding MDS Runtime

oracle.adf.model_12.1.2/adflibrary.jar

ADF Model Runtime

ADFm Designtime API

oracle.adf.model_12.1.2/adftransactionsdt.jar

ADF Model Runtime

ADFm Designtime API

ADF Designtime API;

oracle.adf.model_12.1.2/regexp.jar

BC4J Tester

BC4J Recordere

20 oracle.adf.model_12.1.2/adf-sec-idm-dc.jar

User and Role Data Control

oracle.adf.model_12.1.2/adfmweb.jar

ADF Web Runtime

oracle.adf.model_12.1.2/mds-dc.jar

NA

oracle.adf.model_12.1.2/adfbcsvc-client.jar

BC4J Service Client

oracle.adf.model_12.1.2/adf-controller-schema.jar

ADF Controller Schema

ADF Controller Schema

25 oracle.adf.model_12.1.2/adfdt_common.jar

ADF Model Runtime

ADFmB Designtime API

oracle.adf.model_12.1.2/db-ca.jar

BC4J EJB Client

ADF Model Runtime

BC4J Tester

BC4J Runtime

BC4J Client

BC4J IAS Client

BC4J Recorder

DB Runtime (db-tests)

oracle.adf.model_12.1.2/rcsrt.jar

Resource Catalog Service

oracle.adf.model_12.1.2/adfm-sqldc.jar

ADF SQL Data Control Runtimel

oracle.adf.model_12.1.2/adfm-debugger.jar

BC4J Tester

30 oracle.adf.model_12.1.2/bc4jsyscat.jar

BC4J System Catalog

oracle.adf.model_12.1.2/adfbcsvc-registration.jar

Kava SDO

oracle.adf.model_12.1.2/adftags.jar

Oracle ADF DataTag

oracle.adf.model_12.1.2/datatags.jar

NA

oracle.adf.businesseditor_12.1.2/adf-businesseditor-model.jar

ADFm Business Editor Runtime

35 oracle.adf.businesseditor_12.1.2/adf-businesseditor-objects.jar

ADFm Business Editor Runtime

oracle.adf.businesseditor_12.1.2/adf-businesseditor-settings.jar

ADFm Business Editor Settings

ADFm Business Editor Runtime

groovy-all-2.0.5.jar

ADF Model Runtime;ADF Model Generic Runtime;BC4J Runtime

oracle.xdk_12.1.2/oraclexsql.jar

NA

oracle.xdk_12.1.2/xsqlserializers.jar

XSQL Runtime


B.4 adf.desktopintegration.war Library

Table B-3 lists the JAR files that are packaged into the adf.desktopintegration.war file and their corresponding ADF runtime library.

Table B-3 adf.desktopintegration.war Library

JARADF Library

oracle.adf.desktopintegration_12.1.2/adf-desktop-integration.jar

ADF Desktop Integration Runtime

oracle.adf.desktopintegration_12.1.2/adf-desktop-integration-admin-tool.jar

NA


B.5 adf.desktopintegration.model.ear Library

Table B-4 lists the JAR files that are packaged into the adf.desktopintegration.model.ear file and their corresponding ADF runtime library.

Table B-4 adf.desktopintegration.model.ear Library

JARADF Library

oracle.adf.desktopintegration.model_12.1.2/adf-desktop-integration-model-api.jar

ADF Desktop Integration Model API


B.6 System Classpath

Table B-5 lists the JAR files that are loaded into the system classpath and their corresponding ADF runtime library.

Table B-5 System Classpath

JARADF Library

oracle.javatools_12.1.2/javatools-jndi-local.jar

NA

oracle.javatools_12.1.2/javamodel-rt.jar

JAX-RPC Client

oracle.javatools_12.1.2/javatools-nodeps.jar

ADF Common Web Runtime

MDS Runtime Dependencies

ADFm Desgntime API

JAX-RPC Client

DB Runtime (db-tests)

oracle.javatools_12.1.2/oicons.jar

ADFm Designtime API

oracle.javatools_12.1.2/resourcebundle.jar

ADF Desktop Integration Runtime

Resource Bundle Support

BC4J Runtime

oracle.adf.security_12.1.2/adf-share-security.jar

ADF Model Runtime

BC4J Security

ADF Common Runtime

oracle.adf.security_12.1.2/adf-controller-security.jar

ADF Model Runtime

ADF Common Runtime

oracle.adf.share.ca_12.1.2/adf-share-ca.jar

MDS Runtime Dependencies

ADF Model Generic Runtime

BC4J Runtime

BC4J Security

ADF Common Runtime

oracle.adf.share.ca_12.1.2/adf-share-base.jar

ADF Common Web Runtime

MDS Runtime Dependencies

ADF Model Generic Runtime

BC4J Runtime

ADF Swing Runtime

BC4J Security

ADF Common Runtime

features/adf.security_12.1.2.jar

NA

features/adf.share_12.1.2.jar

NA

features/adf.share.ca_12.1.2.jar

NA

oracle.mds_12.1.2/oramds.jar

MDS Runtime Dependencies

oracle.mds_12.1.2/mdsrt.jar

MDS Runtime

oracle.mds_12.1.2/mdslcm-client.jar

NA

oracle.mds_12.1.2/mdslcm.jar

NA

oracle.xmlef_12.1.2/xmlef.jar

MDS Runtime Dependencies

ADF Faces Change Manager Runtime 11

ADF Model Generic Runtime

oracle.adf.share_12.1.2/jsp-el-api.jar

ADF Model Runtime

MDS Runtime Dependencies

ADF Model Generic Runtime

BC4J Runtime

oracle.adf.share_12.1.2/adf-share-mbeans-wlst.jar

NA

oracle.adf.share_12.1.2/adflogginghandler.jar

MDS Runtime Dependencies

BC4J Tester

ADF Model Generic Runtime

BC4J Runtime

ADF Common Runtime

oracle.adf.share_12.1.2/adf-share-wls.jar

NA

oracle.adf.share_12.1.2/oracle-el.jar

ADF Model Runtime

MDS Runtime Dependencies

ADF Model Generic Runtime

BC4J Runtime

oracle.adf.share_12.1.2/adf-share-support.jar

MDS Runtime Dependencies

ADF Model Generic Runtime

BC4J Runtime

BC4J Security

ADF Common Runtime

oracle.adf.share_12.1.2/adfsharembean.jar

BC4J Runtime

ADF Common Runtime

oracle.adf.share_12.1.2/commons-el.jar

ADF Model Runtime

MDS Runtime Dependencies

ADF Model Generic Runtime

BC4J Runtime

oracle.adf.share_12.1.2/adfscripting.jar

NA

oracle.ons_12.1.2/ons.jar

NA

oracle.bali.share_12.1.2/share.jar

MDS Runtime Dependencies

BC4J Tester

ADF Model Generic Runtime

Oracle Help for Java

Oracle JEWT


PKgecPKN4zDOEBPS/partpage2.htmS Basic Administration PKJpPKN4zDOEBPS/adfdi_sysadmin.htm Administering ADF Desktop Integration

5 Administering ADF Desktop Integration

This chapter describes the actions the system administrator performs such as deploying the runtime edition client installer of ADF Desktop Integration to a shared location, and adjusting server configuration settings.

As the system administrator, you are responsible for deployment and maintenance of the Fusion web application using ADF Desktop Integration. Note that before an end user can use the integrated Excel workbook, the runtime edition of ADF Desktop Integration must be installed on the end user's system.

You can install the runtime edition of ADF Desktop Integration in any of the following ways:

This chapter includes the following sections:

5.1 Installing and Upgrading the Runtime Edition of ADF Desktop Integration From a Shared File Server and Web Server

Before end users can install the runtime edition, you must make the client installer files accessible to the end users, and provide them the complete path or the link to the setup.exe file.

When the ADF Desktop Integration client installer runs, it verifies whether the required software is installed on the system. For more information about the required software, see the following sections of Developing Applications with Oracle ADF Desktop Integration:

5.1.1 Making the Runtime Edition of ADF Desktop Integration Available to Multiple End Users

To install the runtime edition for multiple end users, the client installer must be hosted on a shared file server so that all end users use the same version of runtime edition on their systems, and continue to share the same version when the runtime edition is upgraded.

ADF Desktop Integration uses the Microsoft ClickOnce installer technology that enables users to install and run a Windows application with minimum interaction. For more information about Microsoft ClickOnce installer, see the following:

http://msdn.microsoft.com/en-us/library/71baz9ah.aspx

To make the Runtime edition of ADF Desktop Integration available to end users:

  1. Navigate to the MW_HOME\oracle_common\modules\oracle.adf.desktopintegration_12.1.2 directory, where MW_HOME is the Middleware Home directory.

  2. Extract the contents of adfdi-excel-runtime-client-installer.zip to a directory on the shared file server accessible to all end users (for example, \\test_system\Oracle\ADFDI_Client\).

    Note that the fully qualified path of the directory must be less than 248 characters.

  3. Provide the complete directory path, or the link, to the end user.

To install the Runtime edition of ADF Desktop Integration:

  1. From the end user's system, navigate to the directory on the shared file server, or use the provided link.

  2. Run setup.exe from the path provided in Step 3.

  3. Follow the instructions that appear in the dialog boxes launched by setup.exe to successfully install the required components.

  4. If prompted, click Yes to restart the system and complete the setup of ADF Desktop Integration.


WARNING:

After the runtime edition of ADF Desktop Integration is installed, do not delete the directory where the client installer files are copied.



Note:

JDeveloper includes the designer edition of ADF Desktop Integration, which is intended to be used by developers creating workbooks. Generally, the designer edition is not made available to the end users.


5.1.2 Upgrading the Runtime Edition of ADF Desktop Integration

You can upgrade the runtime edition of ADF Desktop Integration in two ways.

  • Uninstall the old version, and install the new version.

    For more information about installing and uninstalling the runtime edition, see the "Installing, Upgrading, and Removing the Runtime Edition of ADF Desktop Integration" section of Developing Applications with Oracle ADF Desktop Integration.

  • Upgrade automatically from a shared file server.

    If the runtime edition is installed on multiple end users' systems from a shared file server, they are not required to upgrade individually as they will be upgraded automatically when the files on the shared file server are upgraded.

Upgrading the runtime edition of ADF Desktop Integration is an easy process and can be done by copying the new version client installer files over the old version client installer files.


Note:

The client installer should be upgraded after the server patches are deployed.


To make the Runtime edition upgrade available to end users:

  1. If available, apply the Fusion Middleware patch as per the standard patching instructions.

    As the system administrator, you should complete the server patching deployment before making the client upgrade available to end users. For more information, see Patching with OPatch.

  2. Navigate to the MW_HOME\oracle_common\modules\oracle.adf.desktopintegration_12.1.2 directory of the upgraded or patched Fusion Middleware installation, where MW_HOME is the Middleware Home directory.

  3. Extract the contents of adfdi-excel-runtime-client-installer.zip to the exact same location on the shared file server that was used for previous installations. Some installation files will be overwritten and the new files will be added.

    Ensure that the fully qualified path to the folder to which adfdi-excel-runtime-client-installer.zip gets extracted remains the same.

End users will automatically get the updated ADF Desktop Integration client files copied from the shared location when they next launch Excel, provided 24 hours have elapsed since Excel was last launched. For more information, see Section 5.1.6.

5.1.3 Installing the Runtime Edition of ADF Desktop Integration From a Web Server

If you want to provide the runtime edition setup files from a web server instead of a shared file server, you must update the path recorded in the client installer setup.exe file before you run it. By default, the installation path in the setup.exe file is configured for local installation.

To make the installation files available from a web server:

  1. Copy the full set of installation files to the web server, as described in Step 1, 2, and 3 of Section 5.1.2.

  2. Run the setup.exe file on a Windows system using the following command syntax:

    setup.exe /url="URL of web server where installation files are copied"

    For example:

    setup.exe /url="http://www.myserver/adfdilocation"


    Note:

    The setup.exe command must be run on the Windows-based system, even though the web server that hosts the installer is based on other operating systems such as Linux. In such a case, after executing Step 2, copy setup.exe to the web server.


Changing the path recorded in the client installer setup.exe file invalidates its digital signature, and you may see the Unknown Publisher security warning message when you run it. To avoid the error message, acquire a digital certificate for the setup.exe file and re-sign it after updating the installation path. For more information, see "How to: Sign Application and Deployment Manifests" on Microsoft Developer Network at http://msdn.microsoft.com/en-us/library/default.aspx.


Note:

When you update the recorded installation path, only the digital signature of setup.exe is invalidated. The signatures of the remaining setup files are not affected.


5.1.4 Upgrading the Runtime Edition of ADF Desktop Integration From a Web Server

If the runtime edition is installed on multiple end users' systems from a web server, they are not required to upgrade individually as they will be upgraded automatically when the files on the web file server are upgraded.

As described in Section 5.1.3, copy the new version client installer files over the old version client installer files on the web server. Excel will check for updates when it is launched and if 24 hours have elapsed since the last check for updates. If a new version is found on the server, ADF Desktop Integration automatically upgrades itself. For more information, see Section 5.1.6.


Note:

Before upgrading, if available, apply the Fusion Middleware patch as per the standard patching instructions.


Alternatively, you can also upgrade by uninstalling the old version (see the "Installing, Upgrading, and Removing the Runtime Edition of ADF Desktop Integration" section of Developing Applications with Oracle ADF Desktop Integration), and then installing the latest version (see Section 5.1.3).

If an end user tries to upgrade the Runtime edition of ADF Desktop Integration manually, as described in the "How to Upgrade the Runtime Edition of ADF Desktop Integration On a Local System" section of Developing Applications with Oracle ADF Desktop Integration, the Update Information link might not run the installer but open as an XML file in the browser of the end user's desktop. To solve this issue, you should configure the MIME mapping setting of the web server that hosts the client and add the following mappings to allow the vsto, application, manifest, and deploy file extensions to run:

<mime-mapping>
  <extension>vsto</extension>
  <mime-type>application/x-ms-vsto</mime-type>
</mime-mapping>
<mime-mapping>
  <extension>application</extension>
  <mime-type>application/x-ms-application</mime-type>
</mime-mapping>
<mime-mapping>
  <extension>manifest</extension>
  <mime-type>application/x-ms-manifest</mime-type>
</mime-mapping>
<mime-mapping>
  <extension>deploy</extension>
  <mime-type>application/octet-stream</mime-type>
</mime-mapping>

After configuring the MIME mapping setting of the web server, provide instructions to the end user to open the Update Information link in Internet Explorer as other browsers are not supported.

5.1.5 Patching the Runtime Edition of ADF Desktop Integration

Patching involves copying a small collection of files over an existing installation. ADF Desktop Integration patch updates are delivered with Oracle Fusion Middleware patch updates. For more information, see Patching with OPatch.

To patch an existing ADF Desktop Integration framework of Oracle Fusion Middleware 11g Patch Set 1 (Release 11.1.1.2.0) or Patch Set 2 (Release 11.1.1.3.0) environment to make it a Release 12.1.2.0.0 environment, you must upgrade the JRF domains to accommodate changes to ADF shared libraries. For more information see the chapter on post-patching tasks for JRF Infrastructure and ADF shared libraries in Patching with OPatch.

5.1.6 What Happens When Runtime Edition of ADF Desktop Integration Is Installed and Upgraded

When the runtime edition of ADF Desktop Integration is installed on the end user's system, it records a link back to the original install directory. After the installation, each time Excel is launched, Excel periodically checks the original installation directory to see whether a new version is available before activating the ADF Desktop Integration add-in. If a new version is found, Excel automatically upgrades the ADF Desktop Integration add-in.


Note:

ADF Desktop Integration is configured to check for a new version once per day. Depending on when Excel is launched, it may take up to one day, or more, for ADF Desktop Integration add-in to upgrade. Remember that ADF Desktop Integration is upgraded only when Excel is launched.


5.2 ADF Desktop Integration Logs

Based on various client and server events, logs are generated by ADF Desktop Integration. For more information about client-side, see the "Generating Log Files for an Integrated Excel Workbook" section in Developing Applications with Oracle ADF Desktop Integration.

5.2.1 Server-Side Logging

You configure the generation of server-side log files for ADF Desktop Integration the same way as for other Oracle ADF modules. This involves setting values that specify the verbosity level and output location in a Administering Oracle ADF Applicationsconfiguration file named logging.xml. You can also use Oracle Diagnostic Logging Configuration of JDeveloper to configure the logging levels specified in the logging.xml file. For more information about using the JDeveloper debugging tools and ADF Logger, see the "Using the ADF Logger" section in Developing Fusion Web Applications with Oracle Application Development Framework.

Table 5-1 describes the package names that you supply as attribute parameters to the <logger> elements in the logging.xml file to configure log file generation in ADF Desktop Integration.

Table 5-1 Package Names for Log File Configuration

To generate log file entries for this component...Enter this package name...

All ADF Desktop Integration server logic

oracle.adf.desktopintegration

ADF Desktop Integration HTTP filter

oracle.adf.desktopintegration.filter


For more information about server-side logging levels, see the "Using the ADF Logger" section in Developing Fusion Web Applications with Oracle Application Development Framework.

5.3 Security in ADF Desktop Integration

If your Fusion web application enforces authentication, the integrated Excel workbooks also ensure that an authenticated user session is established before data transfer happens between the workbooks and application. For more information, see the "About Security In Your Integrated Excel Workbook" section in Developing Applications with Oracle ADF Desktop Integration.

5.3.1 End User Authentication

If end users are not prompted for user credentials while using integrated workbooks and interacting with a secure Fusion web application, you need to investigate the security configuration of the Fusion web application. For more information, see the "Verifying End-User Authentication for Integrated Excel Workbooks" section in Developing Applications with Oracle ADF Desktop Integration.

For more information about ADF Desktop Integration security, see the "Oracle ADF Desktop Integration Security whitepaper" on OTN at:

http://www.oracle.com/technetwork/developer-tools/adf/overview/index-085534.html

5.3.2 What You May Need to Know About Configuring Security in a Fusion Web Application

You should note the following points before you secure your application:

  • For applications running in an environment using Oracle Access Manager, the system administrator should ensure that the URL for the ADF Desktop Integration Remote servlet is configured as a protected resource for Oracle Access Manager.

    For more information, see the Administrator's Guide for Oracle Access Management.

  • For applications running in an environment using WebGate 11g, set the user-defined parameter filterOAMAuthnCookie to False.

    For more information, see the chapter on registering partners (agents and applications) remotely in the Administrator's Guide for Oracle Access Management.

  • Ensure that applications using ADF Desktop Integration have a security constraint configured in web.xml that protects the ADF Desktop Integration remote servlet.

    The following code extract from web.xml shows an example security constraint protecting the remote servlet:

    <security-constraint>
      <web-resource-collection>
        <web-resource-name>adfdiRemote</web-resource-name>
        <url-pattern>/adfdiRemoteServlet</url-pattern>
      </web-resource-collection>
      <auth-constraint>
        <role-name>valid-users</role-name>
      </auth-constraint>
    </security-constraint>
    
  • When using Oracle WebGate and a SSL URL to access the Fusion web application (such as https:// ...) it may be necessary to configure WebGate's mod_wl_ohs.conf configuration file as follows:

    <IfModule mod_weblogic.c>
            WLProxySSLPassThrough ON
            WLProxySSL ON
            MatchExpression /TestApp 
            WebLogicHost=test.host.com|WebLogicPort=7101|
    </IfModule>
    

    where /TestApp is the context root of your application, test.host.com is the host name and domain, and 7101 is the port number for the web application.

  • When opening the integrated Excel Workbook, or any Microsoft Office document, directly (without downloading the file) from a link in the Fusion web application, the Windows Login dialog may appear twice asking for user credentials. This happens because Microsoft Office send its own authentication request to the web server, making the Login dialog appear twice. End users may click Cancel and ignore the authentication request.

  • Applications secured via a digital certificate where clients use https URLs to access the application should ensure that the certificate is valid. Valid certificates have host names that match the host to which they are deployed, have not expired, and have a valid path to a trusted issuing authority. In the case where the certificate is not valid, the client will be prompted during login to accept the invalid certificate.

  • ADF uses chunked encoding for some requests to the server. If you have any network devices between Excel and the web application server configured to block requests that do not contain a content length header, you should configure them to allow chunked encoding (no content length header). Some network devices such as content caching servers may have a default configuration that blocks requests with no content length header.

For more information about securing integrated Excel workbooks, see the "What You May Need to Know About Securing an Integrated Excel Workbook" section in Developing Applications with Oracle ADF Desktop Integration.

5.3.3 What You May Need to Know About Resource Grants for Web Pages

In an integrated Excel workbook, each worksheet is bound to a specific page definition. Users' access to pages may be controlled by resource grants. If an end user is not authorized to work with a page definition, ADF Desktop Integration disallows all data transactions in worksheets bound to that page definition, displays a failure message, and disables those integrated worksheets. The end user can alter any existing data in the worksheet, but cannot download or upload it. The tracking of changes in ADF Table components is also disabled. The end user can continue to use ADF Desktop Integration features in other worksheets in the same workbook, provided those worksheets are bound to page definitions that the end user is authorized to work with.

The worksheet is re-enabled when the end user reopens the workbook and establishes a new session, provided the new session is authorized.

For more information about securing your Fusion web application, see the "Enabling ADF Security in a Fusion Web Application" chapter in Developing Fusion Web Applications with Oracle Application Development Framework.

5.4 Verifying the Client Version of ADF Desktop Integration

When an end user establishes a connection with the Fusion web application from the runtime integrated workbook, ADF Desktop Integration verifies whether the client and the server versions are same, and issues a warning dialog if they do not match (see Figure 5-1).

Figure 5-1 Client-Server Version Check Warning Dialog

Client-Server Version Check Warning Dialog

The client-server version check succeeds when the following components of the client version match the server version:

  • Oracle Release number: It consists of five version elements separated by a period character. For example: 12.1.2.0.0.

  • Build number: An integer assigned to the ADF Desktop Integration client and server components during the build process. For example, 33.

If the end user dismisses the warning dialog, ADF Desktop Integration attempts to continue to function notrmally and no ADF Desktop Integration features are disabled.


Notes:

  • The warning dialog appears once per Excel session for a given combination of Fusion web application and client-server mismatch, regardless of how many times the user session is established or re-established.

  • When the client version is newer than the server version, an error message (ADFDI-00127) might appear, instead of the warning dialog.

    For more information about the error message, see the "Common ADF Desktop Integration Error Messages and Problems" section of Developing Applications with Oracle ADF Desktop Integration.


5.4.1 Configuring Client-Server Version Precision

You can configure the precision at which the client-server versions are checked, or disable the feature, before deploying the Fusion web application.

To configure the client-server version precision in the Fusion web application:

  1. Open the web.xml file of your Fusion web application

  2. Add the following initialization parameter to configure the version precision.

    PropertyValue

    Name

    Enter the name of the initialization parameter as follows:

    ClientServerVersionCheck.Precision

    Note that the name is case-sensitive.

    Value

    Set the value of ClientServerVersionCheck.Precision to a number between 0 and 6. The default value is 3.

    • 0 – Do not verify client-server versions.

    • 1 through 5 – Verify the number of elements of the version from left to right. For example, a value of 4 verifies "12.1.2.0" portion from "12.1.2.0.0".

    • 6 – Verify complete version, including the build number.

    If the parameter is not specified, ADF Desktop Integration sets the default value for the parameter.


  3. Save the web.xml file.

    The web.xml file of your Fusion web application has the following entries:

    <servlet>
    <servlet-name>adfdiRemote</servlet-name>
      <servlet-class>
        oracle.adf.desktopintegration.servlet.DIRemoteServlet
      </servlet-class>
      <init-param>
        <param-name>ClientServerVersionCheck.Precision</param-name>
        <param-value>2</param-value>
      </init-param>
    </servlet>
    
  4. Rebuild and restart your Fusion web application.

5.4.2 What You May Need to Know About Client-Server Version Verification

Note the following points about client-server version verification in an ADF Desktop Integration project:

  • If enabled, the client-server version verification is performed every time when the integrated workbook establishes a session with the Fusion web application.

    The verification process is independent of the ADF security settings of the Fusion web application.

  • The client-server version verification is not performed in design mode.

  • When the client and server version components match, or the feature has been disabled for a particular application, there is no visible effect to end users.

  • The ADF Desktop Integration version running on the server can change at any time (for example, server upgrade), but the version verification is performed only when the user session is re-established.

5.5 Verifying Integrated Excel Workbook Metadata

To give end users the confidence that the workbook configuration has not been altered maliciously, ADF Desktop Integration verifies the integrity of the workbook metadata automatically using the Tamper-Check feature. For more information, see the "Checking the Integrity of an Integrated Excel Workbook's Metadata" section in Developing Applications with Oracle ADF Desktop Integration.

5.5.1 Disabling the Metadata Tamper-Check in the Fusion Web Application

By default, ADF Desktop Integration verifies that the workbook configuration metadata is not tampered with after the workbook developers publish the Excel workbook for end users. You can disable the metadata tamper-check by configuring a parameter in the deployment descriptor file (web.xml) of the Fusion web application.

To disable the metadata tamper-check in the Fusion web application:

  1. Open the web.xml file of your Fusion web application.

  2. Add an initialization parameter to the adfdiRemote servlet to disable the metadata tamper-check.

    Shows how to disable the metadata tamper-check in JDev

    Configure the following options to disable metadata tamper-check.

    PropertyValue

    Name

    Enter the name of the initialization parameter as follows:

    TamperingCheck.Enabled

    Note that the name is case-sensitive.

    Value

    Set the value of TamperingCheck.Enabled to False.

    Note that any value other than False will be interpreted as True.


  3. Save the web.xml file.

    The web.xml file of your Fusion web application has the following entries:

    <servlet>
            <servlet-name>adfdiRemote</servlet-name>
            <servlet-class>...</servlet-class>
            <init-param>
                <param-name>TamperingCheck.Enabled</param-name>
                <param-value>False</param-value>
            </init-param>
    </servlet>
    
  4. Rebuild and restart your Fusion web application.

If the TamperingCheck.Enabled parameter is not present in web.xml, tamper check is enabled. For more information about the web.xml file, see the "ADF Desktop Integration Settings in the Web Application Deployment Descriptor" appendix in Developing Applications with Oracle ADF Desktop Integration.

5.5.2 Allowing Missing Entries in the ADF Desktop Integration Client Registry

You can configure the metadata tamper-check so that a missing entry for the WorkbookID workbook property is allowed in the adfdi-client-registry.xml file.

To allow missing entries in the metadata of the Fusion web application:

  1. Open the web.xml file of your Fusion web application.

  2. Add an initialization parameter to the adfdiRemote servlet to allow missing entries in the metadata.

    Shows how to enable missing metadata entries In JDev

    Configure the following options to allow missing entries in the metadata.

    PropertyValue

    Name

    Enter the name of the initialization parameter as follows:

    TamperingCheck.AllowMissingEntries

    Note that the name is case-sensitive.

    Value

    Set the value of TamperingCheck.AllowMissingEntries to True. Any value other than True will be interpreted as False.


  3. Save the web.xml file.

    The web.xml file of your Fusion web application has the following entries:

    <servlet>
            <servlet-name>adfdiRemote</servlet-name>
            <servlet-class>...</servlet-class>
            <init-param>
                <param-name>TamperingCheck.AllowMissingEntries</param-name>
                <param-value>True</param-value>
            </init-param>
    </servlet>
    
  4. Rebuild and restart your Fusion web application.

If the TamperingCheck.AllowMissingEntries parameter is not present in web.xml, missing entries are not allowed. For more information about the web.xml file, see the "ADF Desktop Integration Settings in the Web Application Deployment Descriptor" appendix in Developing Applications with Oracle ADF Desktop Integration.

5.6 Common ADF Desktop Integration Error Messages and Problems

While using or configuring the ADF Desktop Integration enabled Fusion web application or workbooks, you might see error messages or have some problems. The following list describes the most common error messages, their cause, and solutions.

If you are a system administrator, you should also see the "Common ADF Desktop Integration Error Messages and Problems" section in Developing Applications with Oracle ADF Desktop Integration.

Error message: Access to this web server is disabled because it is controlled by basic authentication and does not use Secure Socket Layer (SSL).
Cause: The user downloads and opens a workbook, published using Microsoft Office 2010, from the Fusion web application secured using basic authentication.
Action: By default, Microsoft Office 2010 applications disable basic authentication over a non-SSL connection. Use any of the following methods to resolve the error:
  • Use form based authentication instead of basic authentication in the Fusion web application.

  • Download and save the workbook before opening it.

  • Enable SSL encryption.

If you want to use basic authentication without SSL, see Microsoft Support solution at http://support.microsoft.com/kb/2123563.

Error message: UnableToEstablishUnauthenticatedSessionException: ADFDI-00502: The client was unable to establish an unauthenticated session with the web application
Cause: Incorrect security configuration in the Fusion web application.
Action: Review and correct the security configuration. Ensure that the /adfdiRemoteServlet URL is protected by a <security-constraint> in web.xml.

If SSL is used with Oracle WebGate, you might also need to verify the settings in the mod_wl_ohs.conf file.

For example:

<IfModule mod_weblogic.c>
 WLProxySSLPassThrough ON
 WLProxySSL ON
 MatchExpression /DepthTestingROT WebLogicHost=test.host.com|WebLogicPort=7101|
</IfModule>

where /TestApp is the context root of your application, test.host.com is the host name and domain, and 7101 is the port number for the web application.

Problem: Edit Options dialog appears prompting for WebAppRoot when downloading an integrated Excel workbook from a Fusion web application
Cause: The adfdiExcelDownload filter is not properly configured in web.xml, and so the filter is not able to set the WebAppRoot property on the downloaded workbook.
Action: Ensure that the adfdiExcelDownload filter is properly configured in web.xml. Verify that the filter is listed in the correct order with respect to the ADF Library Web Application Support, if it is in use. Also verify that the filter mappings for the adfdiExcelDownload filter are correct (see the "Configuring the ADF Desktop Integration Excel Download Filter" section in Developing Applications with Oracle ADF Desktop Integration.) You should also clear the directory into which browser downloads files.
Problem: Login window does not close after submitting valid credentials in Oracle Access Manager environment
Cause: The /myApp/adfdiRemoteServlet was not properly added as a protected resource to the Oracle Access Manager configuration.
Action: Add /myApp/adfdiRemoteServlet as a protected resource to the Oracle Access Manager configuration.

For more information, see the chapter on managing policies to protect resources and enable SSO in the Administrator's Guide for Oracle Access Management.

Problem: UserSessionRequiredException on login in Oracle Access Manager environment with WebGate 11g
Cause: The user defined parameter filterOAMAuthnCookie is not set in the WebGate 11g configuration.
Action: Set filterOAMAuthnCookie to false in the WebGate 11g configuration.

For more information, see the chapter on registering partners (agents and applications) remotely in the Administrator's Guide for Oracle Access Management.

Problem: The DIRemoteServlet returns Invalid XML: unexpected end of response error message
Cause: An exception has occurred in the ADF Model code, custom application module, or in the view object.
Action: Check the server logs for more information.

5.7 Using the Workbook Administration Tool

Use the workbook administration tool to set values for a number of workbook properties, such as WebAppRoot. You can also use the workbook administration tool when you want to set the WebAppRoot, but cannot, or do not want to, use the Excel Download Filter as described in the "Configuring the ADF Desktop Integration Excel Download Filter" section of Developing Applications with Oracle ADF Desktop Integration.

The workbook administration tool is a Java-based program that can be executed on operating systems that support the version of Java used by Oracle ADF. It also requires access to the adf-desktop-integration-admin-tool.jar file, which is located in the following directory:

MW_HOME\oracle_common\modules\oracle.adf.desktopintegration_12.1.2\

The other requirements for components or utilities in ADF Desktop Integration, as outlined in the "Setting Up Your Development Environment" section of Developing Applications with Oracle ADF Desktop Integration, do not apply to the workbook administration tool.

To change workbook settings using the workbook administration tool, open a command line console and execute the following command:

java -cp adf-desktop-integration-admin-tool.jar oracle.adf.desktopintegration.admintool.WorkbookAdminTool <arg(s)>

where <arg(s)> is one or more of the required or optional arguments that are described in Table 5-2.

Table 5-2 Command-line Options for the Workbook Administration Tool

Provide a value for this argument...To...Is a value for this argument required?

-workbook

Specify the directory path to the workbook to update.

Yes

-root

Set the value for this property to the fully qualified URL for the web application to integrate your workbook with.

No

-mode

Change the workbook mode to one of the following:

  • RT

    where RT specifies runtime mode.

  • DT

    where DT specifies design mode.

  • TST

    where TST specifies test mode.

For more information about workbook modes, see the "About Development Tools" section of Developing Applications with Oracle ADF Desktop Integration.

Note: Changing mode from DT to RT using the workbook administration tool does not perform the same steps as described in the "Publishing Your Integrated Excel Workbook" section of Developing Applications with Oracle ADF Desktop Integration.

No

-out

Specify the directory path and file name for the output file.

Yes

-quiet

Specify this argument if you do not want to generate verbose output.

No

-help

Print help information.

No


The following command creates a copy of the workbook (text.xlsx) in runtime mode (RT) for a Fusion web application (http://hostname:7101/test_app) and writes it to a directory with a new file name (myresult.xlsx):

java -cp adf-desktop-integration-admin-tool.jar oracle.adf.desktopintegration.admintool.WorkbookAdminTool -workbook test.xlsx -mode RT -root http://hostname:7101/test_app -out myresult.xlsx

5.8 Localizing the ADF Desktop Integration Installer

ADF Desktop Integration uses Microsoft ClickOnce and Visual Studio Tools for Office technologies for installing the client. By default, the installer described in the "Installing ADF Desktop Integration" section of the Developing Applications with Oracle ADF Desktop Integration, runs in English. To make the installer run in a different language, you should install the respective Visual Studio Tools for Office language pack on all end-users' systems. The language pack can be downloaded and installed from the Microsoft Download Center.

This section assumes that no instance of ADF Desktop Integration is present on the end users system and that the system uses a non-English version of the operating system. If ADF Desktop Integration is present, remove it as described in the "Removing ADF Desktop Integration" section of the Developing Applications with Oracle ADF Desktop Integration.

For information about supported operating systems, see the "Required Oracle ADF Modules and Third-Party Software" section of the Developing Applications with Oracle ADF Desktop Integration.

To localize the ADF Desktop Integration installer:

  1. Download the appropriate language pack (for example, French) for Microsoft Visual Studio 2010 Tools for the Microsoft Office System (Version 4.0 Runtime) Language Pack from the Microsoft Download Center at:

    http://www.microsoft.com/downloads/

  2. Install the language pack that you downloaded in Step 1.

  3. Set up ADF Desktop Integration, as described in the "Installing, Upgrading, and Removing the Runtime Edition of ADF Desktop Integration" section of the Developing Applications with Oracle ADF Desktop Integration.

PKPKN4zD OEBPS/toc.ncx % Oracle® Fusion Middleware Administering Oracle ADF Applications, 12c (12.1.2) Cover Title and Copyright Information Contents Preface What's New in This Guide Part I Understanding Oracle ADF 1 Introduction to Oracle ADF Administration Part II Basic Administration 2 Getting Started with Managing Oracle ADF 3 Monitoring and Configuring ADF Applications 4 Deploying ADF Applications 5 Administering ADF Desktop Integration 6 WLST Command Reference for ADF Applications Part III Appendices A Configuring GlassFish Server B ADF Runtime Libraries C Audit Reference for Oracle Application Development Framework Copyright PK~ PKN4zDOEBPS/content.opf@ Oracle® Fusion Middleware Administering Oracle ADF Applications, 12c (12.1.2) en-US E23431-01 Oracle Corporation Oracle Corporation Oracle® Fusion Middleware Administering Oracle ADF Applications, 12c (12.1.2) 2013-06-06T21:23:47Z Describes how to administer Oracle Application Development Framework (Oracle ADF) applications using commands, scripts, and Fusion Middleware Control and how to prepare the application server for deployment. PKvPKN4zDOEBPS/dcommon/oracle-logo.jpg}tJFIFC    $.' ",#(7),01444'9=82<.342C  2!!22222222222222222222222222222222222222222222222222'7" }!1AQa"q2#BR$3br %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz w!1AQaq"2B #3Rbr $4%&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz ?( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( (QEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQE!KEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEzE7V%ȣOΏ9??:a"\fSrğjAsKJ:nOzO=}E1-I)3(QEQEQEQEQEQEQE֝Hza<["2"pO#f8M[RL(,?g93QSZ uy"lx4h`O!LŏʨXZvq& c՚]+: ǵ@+J]tQ]~[[eϸ (]6A&>ܫ~+כzmZ^(<57KsHf妬Ϧmnẁ&F!:-`b\/(tF*Bֳ ~V{WxxfCnMvF=;5_,6%S>}cQQjsOO5=)Ot [W9 /{^tyNg#ЄGsֿ1-4ooTZ?K Gc+oyڙoNuh^iSo5{\ܹ3Yos}$.nQ-~n,-zr~-|K4R"8a{]^;I<ȤL5"EԤP7_j>OoK;*U.at*K[fym3ii^#wcC'IIkIp$󿉵|CtĈpW¹l{9>⪦׺*ͯj.LfGߍԁw] |WW18>w.ӯ! VӃ :#1~ +މ=;5c__b@W@ +^]ևՃ7 n&g2I8Lw7uҭ$"&"b eZ":8)D'%{}5{; w]iu;_dLʳ4R-,2H6>½HLKܹR ~foZKZ࿷1[oZ7׫Z7R¢?«'y?A}C_iG5s_~^ J5?œ tp]X/c'r%eܺA|4ծ-Ե+ْe1M38Ǯ `|Kյ OVڅu;"d56, X5kYR<̭CiطXԮ];Oy)OcWj֩}=܅s۸QZ*<~%뺃ȶp f~Bðzb\ݳzW*y{=[ C/Ak oXCkt_s}{'y?AmCjޓ{ WRV7r. g~Q"7&͹+c<=,dJ1V߁=T)TR՜*N4 ^Bڥ%B+=@fE5ka}ędܤFH^i1k\Sgdk> ֤aOM\_\T)8靠㡮3ģR: jj,pk/K!t,=ϯZ6(((((((49 xn_kLk&f9sK`zx{{y8H 8b4>ÇНE|7v(z/]k7IxM}8!ycZRQ pKVr(RPEr?^}'ðh{x+ՀLW154cK@Ng C)rr9+c:׹b Жf*s^ fKS7^} *{zq_@8# pF~ [VPe(nw0MW=3#kȵz晨cy PpG#W:%drMh]3HH<\]ԁ|_W HHҡb}P>k {ZErxMX@8C&qskLۙOnO^sCk7ql2XCw5VG.S~H8=(s1~cV5z %v|U2QF=NoW]ո?<`~׮}=ӬfԵ,=;"~Iy7K#g{ñJ?5$y` zz@-~m7mG宝Gٱ>G&K#]؃y1$$t>wqjstX.b̐{Wej)Dxfc:8)=$y|L`xV8ߙ~E)HkwW$J0uʟk>6Sgp~;4֌W+חc"=|ř9bc5> *rg {~cj1rnI#G|8v4wĿhFb><^ pJLm[Dl1;Vx5IZ:1*p)إ1ZbAK(1ׅ|S&5{^ KG^5r>;X׻K^? s fk^8O/"J)3K]N)iL?5!ƾq:G_=X- i,vi2N3 |03Qas ! 7}kZU781M,->e;@Qz T(GK(ah(((((((Y[×j2F}o־oYYq $+]%$ v^rϭ`nax,ZEuWSܽ,g%~"MrsrY~Ҿ"Fت;8{ѰxYEfP^;WPwqbB:c?zp<7;SBfZ)dϛ; 7s^>}⍱x?Bix^#hf,*P9S{w[]GF?1Z_nG~]kk)9Sc5Ո<<6J-ϛ}xUi>ux#ţc'{ᛲq?Oo?x&mѱ'#^t)ϲbb0 F«kIVmVsv@}kҡ!ˍUTtxO̧]ORb|2yԵk܊{sPIc_?ħ:Ig)=Z~' "\M2VSSMyLsl⺿U~"C7\hz_ Rs$~? TAi<lO*>U}+'f>7_K N s8g1^CeКÿE ;{+Y\ O5|Y{/o+ LVcO;7Zx-Ek&dpzbӱ+TaB0gNy׭ 3^c T\$⫫?F33?t._Q~Nln:U/Ceb1-im WʸQM+VpafR3d׫é|Aү-q*I P7:y&]hX^Fbtpܩ?|Wu󭏤ʫxJ3ߴm"(uqA}j.+?S wV ~ [B&<^U?rϜ_OH\'.;|.%pw/ZZG'1j(#0UT` Wzw}>_*9m>󑓀F?EL3"zpubzΕ$+0܉&3zڶ+jyr1QE ( ( ( ( ( ( ( (UIdC0EZm+]Y6^![ ԯsmܶ捆?+me+ZE29)B[;я*wGxsK7;5w)}gH~.Ɣx?X\ߚ}A@tQ(:ͧ|Iq(CT?v[sKG+*רqҍck <#Ljα5݈`8cXP6T5i.K!xX*p&ќZǓϘ7 *oƽ:wlຈ:Q5yIEA/2*2jAҐe}k%K$N9R2?7ýKMV!{W9\PA+c4w` Wx=Ze\X{}yXI Ү!aOÎ{]Qx)#D@9E:*NJ}b|Z>_k7:d$z >&Vv󃏽WlR:RqJfGإd9Tm(ҝEtO}1O[xxEYt8,3v bFF )ǙrPNE8=O#V*Cc𹾾&l&cmCh<.P{ʦ&ۣY+Gxs~k5$> ӥPquŽўZt~Tl>Q.g> %k#ú:Kn'&{[yWQGqF}AЅ׮/}<;VYZa$wQg!$;_ $NKS}“_{MY|w7G!"\JtRy+贾d|o/;5jz_6fHwk<ѰJ#]kAȎ J =YNu%dxRwwbEQEQEQEQEQEQEQEQEQE'fLQZ(1F)hQ@X1KEQE-Q@ 1KE3h=iPb(((1GjZ(-ʹRPbR@ 1KE7`bڒyS0(-&)P+ ڎԴP11F)h&:LRmQ@Q@Š(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((?l:ϊw "{{-3j3%{+Zoi.{YUڪ1kcMմfݮ4Br%*8%I.QT-[MѭT-,`g]L)lXqjV4Ķ%ѡ')$r_Ĭ AVuoż9#`FApA+麶۵ƗZ_@QeP#8 Uh燮,/jXJ}9Q]рN:]dko-ıH^I$`I$$:[zޛ}:v%`$)' gVko-ıH^I$`I$$..3D ?+pcV4[MmK-/W(Z̲lTq(Q@'94 >SJJFCI'L~yᵷX$/$0UE$xs@U{=2K--cFI,٬|Cό<)a-8nQǰ_VBNM>rE+/uoż9#`FApA椬 eq-"mV89 Wcag]E7dt&i5j K%-p 3N=\o?:evjh$#b9#hɫirLiJ*+rcTY2K;iVQ|3@#*NFA7'u@yi}ŭim=춎if@NXr???6޽ +/R.\-3X&+2qF}\㼰L $0? ESVf&-P7h)Y3>e֍KVtku5 K,S,J[ g{EG[qo,sA*H2AG9z\][j3>˘]lNTC@(O]O+[U"ߌg2:zMմfݮ4Br%*8%I.QU9//വA.H,x$ƩxAn/u6 m$H2' 0zZԢxn⸷9$l]H #<4Ķ%ѡ')$r_Ĭ APQ@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@Q@'K|U].VCyCO#GUH~9Й>/CcaSm(߇-'-ZoDQ03u]W?O5 `!ºv__Avڄ3Agw?±kc+[O?o?DA9Oz炼+OF$}_FZQ*a6OOY?u98we2٬32xvwt'S-@䯖xl9qyVOeX{Mw:!Udf_wYߝFv()9OIaY?TU1?\8wjiP:ʹ4ږEHKH|TW7gnזZeݕď@H|I%Y 'mcxⷆ|?᫻ kM/g-)nNGs^yi0>Dx0sEn݂2(/ľ|M߬lVviuCpCo+2x[ŧq9ݑTh6>``8d;ς_Ht/x҉+%O`(x]|Y=c9o-hX YK'kdzjok$ZvdfCb +89?g'dQU}|OX)oVWo{ab]!۴NҩKyK55oP_yf.$s8⻏Huw҈%Oow:֥H.FBER 3+|8ߎd~&,rȉW*I!qjH RFHдzfy?nVn7ۅ݌9EpwHݻw@8ɠ#'h%ԮoIjڅ<1\DY@FFPT\fx?ڤq +0,. 9fʧR9+o\kSi2^ ^0-+0eh|,V4+Jj|1"d>wpp0';@=ow:oú_Ϫ_E(w Hc]O`HpzHuw҈' *E-yW췚=/T@n/n_ rF ݆j|K6NQ6dg cՠC񆯥Ϫz(Ǩ Cs}qe,7cᯀwPiI}Zh\`fB `(vqQ@{,Kk`@+(I"q+䳿LoxĈ  Eps}sq,Gs2($WGXYqZAikvCb4\Np2I?X17m:t-d漙r'.I·N{ ^ V2gi z`0օ <j)h%`$l DX0Ñ]E\^GZD̛܌a'X3MN \[bǖ$I[}d[7m`Õ @<Т+Xu~]I )<:?^U4H'fFxd 7g]Eǿ7 b+KH{Hn' (u . #" d"0QӰZ؋,5m" {Vi6@HNLztP>m^tNϺu*s QzlQEq:t.$;$a(f$֦xYt]7J[q #egzA[P{}ON̵7#OJ߅oXhvdS3'e'ʶ(UOukjv>_]1'kFڞ= Ff"tݱ'd@*7YFlVQ1TEwq)io|  ashYE,e$S<,wvJ+? |H:KeYo-=I 9נY|2|?Su+><3-*c1ĥ ,trp5Լy[ST{u[TeRw3J+O xVT.(gmdERw#J?xgX^~%QXX%'p]GeVcsEwW|2k|@sN6&-70`G8@p5k|#u<+nWw.ڈ8m,y@=Š?#Bkwv6}cmuwVkV5̒(YZ6 @i [Ɵ>g}Ǘݿw?m{۞¼t>,T g}\c|{xpnMmռOkR! {#)Vla F c8j O]GR^żS [`0'T| ?J fRXi=wAnp R@Hn~\nĝn#k鶓kd\ g qՍ;&diK,Y@qm 4jyJ%-2 Ȑk.aGA<7V\[J6 dGkco|57Q4n#ʧ\5ٖy$]vK=T{h(>2,C%jȪpI;w2Oƚhn2l'ļ%I!@W\iWws^iWhu pC)T<C_-j;B1*UB=FA:@_k^ɭ_ }PiR39ss^G+RYW RdX/obd0WyFp}MjX> yoc\ #DVt x Gni&uՕe(#XTmQpgmka\$s$EQ 1+ld'|5IJ޳;X~89$^xsH𶖺ncr,ǩfbK$/煼 ۬Sgx ʭaI@%XiO5եO3>/&@ cWF zo sX犓?!f}QRIv#1fsXI ^5n4VX(PN?:Z_0(,,m<ʷA#ر?xFE׵/p6r\!tg۞HMg}E"[7~KCc*e$0P/~eWu c.UAGsO???6޽x+MFj>qe+l>T3GS]%x|Y`Z>/CcaSm뼲VcGOvu qo,l1sݯRz'k:{=shX]BnFI#1u4W ;£FWW7iuR{'֮>r:F‚d=I(}oό0>q]֟)R"3HC|;F\xⷉ,Py!HC/^}=<kos]QEQEQEQEQEW;?_Z^-). u> xYwo/ϵG<*RG@:(vڝo-% U99 My=Tet#tdQr|nbs@=? /m+O!k-FEp 6ݫVPT(((((((((((((4<`tUb a 3)9zWG~zIk> Sh="A9ڟy5?xa{QcEv#U&|é ?4?@׾X#O;X2qNA_§F?^xW^&Ko D<ۃ1UL<%O`/Y u+M9mdou3*J=4WHE- ax0WwN u<˫ <>7;[OJ7i%կ2tF3ާw|?-nwc'qY_P YK5(gݮERp6oZ( os7̾y Q`O,y'}WH.(ʪl5q:u_?|9ixGJ~Ǟ2s8X o|sM6>y 8 x=3nyaw=~Fɠ 9ƼO=v bɾ2dgPGAӐyW$](8 wOYZo 8DH˄!wm f *O k~+GJMCLFV8pwdc(ňc_{zA{ Pͷrj:# \?Ĺ־/|?Ѵc,/M 1G)2񝑻mp0:5;L~ ۦVj:!$wGzĝcN~#_YjE`.aPNt$nOg_I4ϴ[8zWA<7V\[J6 dGhxY?|;J2+FD8l7( 9;q='CG~{񆽥֖Qm2w`L2|#̞gmh=[RuPS)s32,00}k,{j<+ 41¨''!Cb???6ެ~7 ciE4p=~gQǯhIğY-WpDZ"b7*:R .1^_ßoGbxp3˘-c|~f2 ;U\( *mXn.4Pi6!WzΣ_L^~=GC7Yi( scn[< o|'P,麓Y%#wpC9r9`AP?vZﵻeLJ窶 #<Ey?ī3x Aǟ}]pZ92pܒOFҵhd}?L\4eKgtnFIXێHȠI:Li6E 8!6rPGz'4^$#էW m¨M!c5A<7V\[J6 dGjJ((((((((((((g|EּesQ[pyi c`b͈ӟ}9vQ@| njPj?b.x<ߕby 8Ϩ"o3xFdgGH21f(A: sQ@? Vuo?]G[7n{%5` :qaWqEgg߇='~i-vWv23  l/+ݺFn^Q@Q@< O|9\>M)8>ydܭ̅(m瑎Š(g.@%X:r23\?ĝ*m|gm:*h瓓Aꕏ ×zku{8:@O|{ ڷ|[zmCO8%sr\[qq]&UQ5d .I!rYi:l:6c۴v*p=\coՅ~e̛֠܍%a'I?J+yt'g[ HX|%6x+MFj>qe+l>T3GS]%sv}'IIs'Q=rN~_|PռihZ-yx s(?>տ~w+8=}n巸9 I]H#TP-Fo xU-n0ds J'5x}[5=G]^V,1һ (_ -ƱO]h\&$&$傕 G>[zq{_]kʯ>wr(eFANYX"4k?wEo|J.A yXd5T-.d FIؐ) 9'(?>տ~w+8=} [q 29PJU5O̭e;rz'Br~^X<HeڊOw\-֡u)-&\˻',k8GoGϴko2%oMQEq< O붹|+D]s޹9.q,~Or3 6.X|ŏ=z(3:watS݌*+Ku-* S$? BoL"ދe*h6xשb(8&;NͳeMaN1*H'\ޛ+^ѭKX]x 0>½ß@rQi )fv1l2[$c?z3y?/@y|aؼGwxSj6x` )`ػ09ǧQ@o^<֩Ai ^2P;r翥wC²訫(+WOYjRѯx _`nj+CaQn+"Y_Mn$WQc. m*:gs<#2)Qϥr)Ѿ+] xJg5.E an= jEE^^ῆ#IaCS3& r'/=~ULw1jG>Ա+oaOArO}/:ھ?o $#ƁOxzݴ7dle r>BS/]bWNvH vcd2dA@xc-r+G#FnP;N~*h{z_GH𵾻iHǰWF߆tiqQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEU;='M.,Ki}̐¨6Iː2,NOPEPEPEPEPEPEPEP=7ItkvK˴vJ[dg EQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEPKyNt}tPKN4zDOEBPS/dcommon/cpyr.htmD Oracle Legal Notices

Oracle Legal Notices

Copyright Notice

Copyright © 1994-2014, Oracle and/or its affiliates. All rights reserved.

Trademark Notice

Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners.

Intel and Intel Xeon are trademarks or registered trademarks of Intel Corporation. All SPARC trademarks are used under license and are trademarks or registered trademarks of SPARC International, Inc. AMD, Opteron, the AMD logo, and the AMD Opteron logo are trademarks or registered trademarks of Advanced Micro Devices. UNIX is a registered trademark of The Open Group.

License Restrictions Warranty/Consequential Damages Disclaimer

This software and related documentation are provided under a license agreement containing restrictions on use and disclosure and are protected by intellectual property laws. Except as expressly permitted in your license agreement or allowed by law, you may not use, copy, reproduce, translate, broadcast, modify, license, transmit, distribute, exhibit, perform, publish, or display any part, in any form, or by any means. Reverse engineering, disassembly, or decompilation of this software, unless required by law for interoperability, is prohibited.

Warranty Disclaimer

The information contained herein is subject to change without notice and is not warranted to be error-free. If you find any errors, please report them to us in writing.

Restricted Rights Notice

If this is software or related documentation that is delivered to the U.S. Government or anyone licensing it on behalf of the U.S. Government, the following notice is applicable:

U.S. GOVERNMENT END USERS: Oracle programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, delivered to U.S. Government end users are "commercial computer software" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations. As such, use, duplication, disclosure, modification, and adaptation of the programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, shall be subject to license terms and license restrictions applicable to the programs. No other rights are granted to the U.S. Government.

Hazardous Applications Notice

This software or hardware is developed for general use in a variety of information management applications. It is not developed or intended for use in any inherently dangerous applications, including applications that may create a risk of personal injury. If you use this software or hardware in dangerous applications, then you shall be responsible to take all appropriate fail-safe, backup, redundancy, and other measures to ensure its safe use. Oracle Corporation and its affiliates disclaim any liability for any damages caused by use of this software or hardware in dangerous applications.

Third-Party Content, Products, and Services Disclaimer

This software or hardware and documentation may provide access to or information on content, products, and services from third parties. Oracle Corporation and its affiliates are not responsible for and expressly disclaim all warranties of any kind with respect to third-party content, products, and services. Oracle Corporation and its affiliates will not be responsible for any loss, costs, or damages incurred due to your access to or use of third-party content, products, or services.

Alpha and Beta Draft Documentation Notice

If this document is in preproduction status:

This documentation is in preproduction status and is intended for demonstration and preliminary use only. It may not be specific to the hardware on which you are using the software. Oracle Corporation and its affiliates are not responsible for and expressly disclaim all warranties of any kind with respect to this documentation and will not be responsible for any loss, costs, or damages incurred due to the use of this documentation.

Oracle Logo

PK0hPKN4zDOEBPS/dcommon/oracle.gifJGIF87aiyDT2F'G;Q_oKTC[ 3-Bq{ttsoGc4I)GvmLZ).1)!ꑈ53=Z]'yuLG*)g^!8C?-6(29K"Ĩ0Яl;U+K9^u2,@@ (\Ȱ Ë $P`lj 8x I$4H *(@͉0dа8tA  DсSP v"TUH PhP"Y1bxDǕ̧_=$I /& .)+ 60D)bB~=0#'& *D+l1MG CL1&+D`.1qVG ( "D2QL,p.;u. |r$p+5qBNl<TzB"\9e0u )@D,¹ 2@C~KU 'L6a9 /;<`P!D#Tal6XTYhn[p]݅ 7}B a&AƮe{EɲƮiEp#G}D#xTIzGFǂEc^q}) Y# (tۮNeGL*@/%UB:&k0{ &SdDnBQ^("@q #` @1B4i@ aNȅ@[\B >e007V[N(vpyFe Gb/&|aHZj@""~ӎ)t ? $ EQ.սJ$C,l]A `8A o B C?8cyA @Nz|`:`~7-G|yQ AqA6OzPbZ`>~#8=./edGA2nrBYR@ W h'j4p'!k 00 MT RNF6̙ m` (7%ꑀ;PKl-OJPKN4zDOEBPS/dcommon/doccd_epub.jsM /* Copyright 2006, 2012, Oracle and/or its affiliates. All rights reserved. Author: Robert Crews Version: 2012.3.17 */ function addLoadEvent(func) { var oldOnload = window.onload; if (typeof(window.onload) != "function") window.onload = func; else window.onload = function() { oldOnload(); func(); } } function compactLists() { var lists = []; var ul = document.getElementsByTagName("ul"); for (var i = 0; i < ul.length; i++) lists.push(ul[i]); var ol = document.getElementsByTagName("ol"); for (var i = 0; i < ol.length; i++) lists.push(ol[i]); for (var i = 0; i < lists.length; i++) { var collapsible = true, c = []; var li = lists[i].getElementsByTagName("li"); for (var j = 0; j < li.length; j++) { var p = li[j].getElementsByTagName("p"); if (p.length > 1) collapsible = false; for (var k = 0; k < p.length; k++) { if ( getTextContent(p[k]).split(" ").length > 12 ) collapsible = false; c.push(p[k]); } } if (collapsible) { for (var j = 0; j < c.length; j++) { c[j].style.margin = "0"; } } } function getTextContent(e) { if (e.textContent) return e.textContent; if (e.innerText) return e.innerText; } } addLoadEvent(compactLists); function processIndex() { try { if (!/\/index.htm(?:|#.*)$/.test(window.location.href)) return false; } catch(e) {} var shortcut = []; lastPrefix = ""; var dd = document.getElementsByTagName("dd"); for (var i = 0; i < dd.length; i++) { if (dd[i].className != 'l1ix') continue; var prefix = getTextContent(dd[i]).substring(0, 2).toUpperCase(); if (!prefix.match(/^([A-Z0-9]{2})/)) continue; if (prefix == lastPrefix) continue; dd[i].id = prefix; var s = document.createElement("a"); s.href = "#" + prefix; s.appendChild(document.createTextNode(prefix)); shortcut.push(s); lastPrefix = prefix; } var h2 = document.getElementsByTagName("h2"); for (var i = 0; i < h2.length; i++) { var nav = document.createElement("div"); nav.style.position = "relative"; nav.style.top = "-1.5ex"; nav.style.left = "1.5em"; nav.style.width = "90%"; while (shortcut[0] && shortcut[0].toString().charAt(shortcut[0].toString().length - 2) == getTextContent(h2[i])) { nav.appendChild(shortcut.shift()); nav.appendChild(document.createTextNode("\u00A0 ")); } h2[i].parentNode.insertBefore(nav, h2[i].nextSibling); } function getTextContent(e) { if (e.textContent) return e.textContent; if (e.innerText) return e.innerText; } } addLoadEvent(processIndex); PKo"nR M PKN4zDOEBPS/dcommon/blafdoc.cssc@charset "utf-8"; /* Copyright 2002, 2011, Oracle and/or its affiliates. All rights reserved. Author: Robert Crews Version: 2011.10.7 */ body { font-family: Tahoma, sans-serif; /* line-height: 125%; */ color: black; background-color: white; font-size: small; } * html body { /* http://www.info.com.ph/~etan/w3pantheon/style/modifiedsbmh.html */ font-size: x-small; /* for IE5.x/win */ f\ont-size: small; /* for other IE versions */ } h1 { font-size: 165%; font-weight: bold; border-bottom: 1px solid #ddd; width: 100%; text-align: left; } h2 { font-size: 152%; font-weight: bold; text-align: left; } h3 { font-size: 139%; font-weight: bold; text-align: left; } h4 { font-size: 126%; font-weight: bold; text-align: left; } h5 { font-size: 113%; font-weight: bold; display: inline; text-align: left; } h6 { font-size: 100%; font-weight: bold; font-style: italic; display: inline; text-align: left; } a:link { color: #039; background: inherit; } a:visited { color: #72007C; background: inherit; } a:hover { text-decoration: underline; } a img, img[usemap] { border-style: none; } code, pre, samp, tt { font-family: monospace; font-size: 110%; } caption { text-align: center; font-weight: bold; width: auto; } dt { font-weight: bold; } table { font-size: small; /* for ICEBrowser */ } td { vertical-align: top; } th { font-weight: bold; text-align: left; vertical-align: bottom; } ol ol { list-style-type: lower-alpha; } ol ol ol { list-style-type: lower-roman; } li { text-align: left; } dd { text-align: left; } td p:first-child, td pre:first-child { margin-top: 0px; margin-bottom: 0px; } table.table-border { border-collapse: collapse; border-top: 1px solid #ccc; border-left: 1px solid #ccc; } table.table-border th { padding: 0.5ex 0.25em; color: black; background-color: #f7f7ea; border-right: 1px solid #ccc; border-bottom: 1px solid #ccc; } table.table-border td { padding: 0.5ex 0.25em; border-right: 1px solid #ccc; border-bottom: 1px solid #ccc; } span.gui-object, span.gui-object-action { font-weight: bold; } span.gui-object-title { } p.horizontal-rule { width: 100%; border: solid #cc9; border-width: 0px 0px 1px 0px; margin-bottom: 4ex; } div.zz-skip-header { display: none; } td.zz-nav-header-cell { text-align: left; font-size: 95%; width: 99%; color: black; background: inherit; font-weight: normal; vertical-align: top; margin-top: 0ex; padding-top: 0ex; } a.zz-nav-header-link { font-size: 95%; } td.zz-nav-button-cell { white-space: nowrap; text-align: center; width: 1%; vertical-align: top; padding-left: 4px; padding-right: 4px; margin-top: 0ex; padding-top: 0ex; } a.zz-nav-button-link { font-size: 90%; } div.zz-nav-footer-menu { width: 100%; text-align: center; margin-top: 2ex; margin-bottom: 4ex; } p.zz-legal-notice, a.zz-legal-notice-link { font-size: 85%; /* display: none; */ /* Uncomment to hide legal notice */ } /*************************************/ /* Begin DARB Formats */ /*************************************/ .bold, .codeinlinebold, .syntaxinlinebold, .term, .glossterm, .seghead, .glossaryterm, .keyword, .msg, .msgexplankw, .msgactionkw, .notep1, .xreftitlebold { font-weight: bold; } .italic, .codeinlineitalic, .syntaxinlineitalic, .variable, .xreftitleitalic { font-style: italic; } .bolditalic, .codeinlineboldital, .syntaxinlineboldital, .titleinfigure, .titleinexample, .titleintable, .titleinequation, .xreftitleboldital { font-weight: bold; font-style: italic; } .itemizedlisttitle, .orderedlisttitle, .segmentedlisttitle, .variablelisttitle { font-weight: bold; } .bridgehead, .titleinrefsubsect3 { font-weight: bold; } .titleinrefsubsect { font-size: 126%; font-weight: bold; } .titleinrefsubsect2 { font-size: 113%; font-weight: bold; } .subhead1 { display: block; font-size: 139%; font-weight: bold; } .subhead2 { display: block; font-weight: bold; } .subhead3 { font-weight: bold; } .underline { text-decoration: underline; } .superscript { vertical-align: super; } .subscript { vertical-align: sub; } .listofeft { border: none; } .betadraft, .alphabetanotice, .revenuerecognitionnotice { color: #e00; background: inherit; } .betadraftsubtitle { text-align: center; font-weight: bold; color: #e00; background: inherit; } .comment { color: #080; background: inherit; font-weight: bold; } .copyrightlogo { text-align: center; font-size: 85%; } .tocsubheader { list-style-type: none; } table.icons td { padding-left: 6px; padding-right: 6px; } .l1ix dd, dd dl.l2ix, dd dl.l3ix { margin-top: 0ex; margin-bottom: 0ex; } div.infoboxnote, div.infoboxnotewarn, div.infoboxnotealso { margin-top: 4ex; margin-right: 10%; margin-left: 10%; margin-bottom: 4ex; padding: 0.25em; border-top: 1pt solid gray; border-bottom: 1pt solid gray; } p.notep1 { margin-top: 0px; margin-bottom: 0px; } .tahiti-highlight-example { background: #ff9; text-decoration: inherit; } .tahiti-highlight-search { background: #9cf; text-decoration: inherit; } .tahiti-sidebar-heading { font-size: 110%; margin-bottom: 0px; padding-bottom: 0px; } /*************************************/ /* End DARB Formats */ /*************************************/ @media all { /* * * { line-height: 120%; } */ dd { margin-bottom: 2ex; } dl:first-child { margin-top: 2ex; } } @media print { body { font-size: 11pt; padding: 0px !important; } a:link, a:visited { color: black; background: inherit; } code, pre, samp, tt { font-size: 10pt; } #nav, #search_this_book, #comment_form, #comment_announcement, #flipNav, .noprint { display: none !important; } body#left-nav-present { overflow: visible !important; } } PKT' hcPKN4zD OEBPS/toc.htmkK Table of Contents

Contents

Preface

What's New in This Guide

Part I Understanding Oracle ADF

1 Introduction to Oracle ADF Administration

Part II Basic Administration

2 Getting Started with Managing Oracle ADF

3 Monitoring and Configuring ADF Applications

4 Deploying ADF Applications

5 Administering ADF Desktop Integration

6 WLST Command Reference for ADF Applications

Part III Appendices

A Configuring GlassFish Server

B ADF Runtime Libraries

C Audit Reference for Oracle Application Development Framework

PKqpKkKPKN4zDOEBPS/partpage3.htmC Appendices PK#PKN4zDOEBPS/wlst.htm WLST Command Reference for ADF Applications

6 WLST Command Reference for ADF Applications

This chapter describes the WLST commands you can use to deploy, manage, and configure Oracle ADF applications to Oracle WebLogic Server.

This chapter includes the following sections:

6.1 Overview of Custom WSLT Commands for Oracle ADF

Use the ADF-based URL Connections WLST commands to navigate the hierarchy of configuration or runtime beans and control the prompt display. Use the getADFMArchiveConfig commands to manage the ADFMArchiveConfig object.

To use the custom WLST commands for Oracle ADF, you must invoke the WLST script from the Oracle Common home. For more information about other WLST commands, such as custom Metadata Services (MDS) commands, see the WLST Command Reference for WebLogic Server.

6.2 ADF-Specific WLST Commands

Use the commands in Table 6-1 for ADF applications.

Table 6-1 Browse Commands for WLST Configuration

Use this command...To...Use with WLST...

adf_createFileUrlConnection


Create a new ADF file connection.

Online or Offline

adf_createHttpUrlConnection


Create a new ADF URL connection.

Online or Offline

adf_setURLConnectionAttributes


Set or edit the attributes of a newly created or existing ADF connection.

Online or Offline

adf_listUrlConnection


List a new URL connection.

Online or Offline

getADFMArchiveConfig


Return a handle to the ADFMArchiveConfig object for the specified archive.

Online or Offline

exportJarVersions


Export CSV format of JARs versions from current ORACLE_HOME at a specified location.

Offline

exportApplicationJarVersions


Export CSV format of runtime JARs versions of a specified application at a specified location.

Online

exportApplicationSelectedJarVersions


Export CSV format of JARs versions of selected JARs at a specified location in coordination with the Versions.xml file.

Online


6.2.1 adf_createFileUrlConnection

Use with WLST: Online or Offline.

6.2.1.1 Description

Use this command to creates a new connection based on the oracle.adf.model.connection.url.FileURLConnection connection class.

6.2.1.2 Syntax

adf_createFileURLConnection(appName, name, URL)
ArgumentDefinition
appName

Application name for which the connection will be created.

name

The name of the new connection.

URL

The URL associated with this connection.


6.2.1.3 Example

adf_createFileURLConnection('myapp','tempDir','/scratch/tmp')

6.2.2 adf_createHttpUrlConnection

Use with WLST: Online or Offline.

6.2.2.1 Description

Use this command to create a new connection based on the oracle.adf.model.connection.url.HttpURLConnection connection type class.

6.2.2.2 Syntax

adf_createHttpURLConnection (appName, name, [URL], [authenticationType], [realm], [user], [password])
ArgumentDefinition
appName

Application name for which the connection will be created.

name

The name of the new connection.

url

(Optional) The URL associated with this connection.

authenticationType

(Optional) The default is basic.

realm

(Optional) If this connection deals with authentication, then this should be set. The default is basic.

user

(Optional)

password

(Optional)


6.2.2.3 Example

adf_createHttpURLConnection('myapp','cnn','http://www.cnn.com') 

6.2.3 adf_setURLConnectionAttributes

Use with WLST: Online or Offline.

6.2.3.1 Description

Use this command to set or edit the attributes of a newly created or existing ADF connection.

6.2.3.2 Syntax

adf_setURLConnectionAttributes(appname, connectionname, attributes)
ArgumentDefinition
appname

Application name.

connectionname

The name of the connection.

attributes

The array containing attributes to set in key/value pairs.


6.2.3.3 Example

adf_setURLConnectionAttributes ('myapp','cnn','ChallengeAuthenticationType:digest',
'AuthenticationRealm:XMLRealm'

6.2.4 adf_listUrlConnection

Use with WLST: Online or Offline.

6.2.4.1 Description

Use this command to list the connections of the application.

6.2.4.2 Syntax

adf_listURLConnection(appname)
ArgumentDefinition
appname

Application name.


6.2.4.3 Example

adf_listURLConnection ('myapp')

6.2.5 getADFMArchiveConfig

Use with WLST: Online or Offline.

6.2.5.1 Description

Returns a handle to the ADFMArchiveConfig object for the specified archive. The returned ADFMArchiveConfig object's methods can be used to change application configuration in an archive.

The ADFMArchiveConfig object provides the following methods:

  • setDatabaseJboSQLBuilder([value]) - Sets the Database jbo.SQLBuilder attribute.

  • getDatabaseJboSQLBuilder() - Returns the current value of the jbo.SQLBuilder attribute.

  • setDatabaseJboSQLBuilderClass([value]) - Sets the Database jbo.SQLBuilderClass attribute. Value is the full name of the custom builder class.

  • getDatabaseJboSQLBuilderClass() - Returns the current value of the jbo.SQLBuilderClass attribute.

  • setDefaultRowLimit([value]) - Sets the defaults rowLimit attribute. Value is a long specifying the row limit (Default -1).

  • getDefaultRowLimit() - Returns the current value of the rowLimit attribute.

  • save([toLocation]) - If you specify the toLocation, then the changes will be stored in the target archive file and the original file will remain unchanged. Otherwise, the changes will be saved in the original file itself.

6.2.5.2 Syntax

archiveConfigObject = ADFMAdmin.getADFMArchiveConfig(fromLocation)
ArgumentDefinition
fromLocation 

The name of the ear file, including its complete path.


The syntax for setDatabaseJboSQLBuilder([value]) is:

archiveConfigObject.setDatabaseJboSQLBuilder([value])
ArgumentDefinition
value 

The value of the jbo.SQLBuilder attribute. Valid values are: 'Oracle' (Default), 'OLite', 'DB2', 'SQL92', 'SQLServer', or 'Custom. If 'Custom' is specified, then the jbo.SQLBuilderClass attribute should also be set.


The syntax for getDatabaseJboSQLBuilder() is:

archiveConfigObject.getDatabaseJboSQLBuilder()

The syntax for setDatabaseJboSQLBuilderClass([value]) is:

archiveConfigObject.setDatabaseJboSQLBuilderClass([value])
ArgumentDefinition
value 

The value of the jbo.SQLBuilderClass attribute.


The syntax for getDatabaseJboSQLBuilderClass) is:

archiveConfigObject.getDatabaseJboSQLBuilderClass()

The syntax for setDefaultRowLimit([value]) is:

archiveConfigObject.setDefaultRowLimit([value])
ArgumentDefinition
value 

The value of the rowLimit attribute.


The syntax for getDefaultRowLimit() is:

archiveConfigObject.getDefaultRowLimit([value])

The syntax for save([toLocation]) is:

archiveConfigObject.save([toLocation])
ArgumentDefinition
toLocation 

The file name along with the absolute path to store the changes.


6.2.5.3 Example

In the following example. the jbo.SQLBuilder attribute is set to 'DB2'.

wls:/offline> archive =
               ADFMAdmin.getADFMArchiveConfig(fromLocation='/tmp/testArchive.ear')
wls:/offline> archive.setDatabaseJboSQLBuilder(value='DB2') 
wls:/offline> archive.save() 

In the following example, the jbo.SQLBuilder attribute is removed so that application default is used.

wls:/offline> archive =
              ADFMAdmin.getADFMArchiveConfig(fromLocation='/tmp/testArchive.ear')
wls:/offline> archive.setDatabaseJboSQLBuilder()
wls:/offline> archive.save(toLocation='/tmp/targetArchive.ear')

In the following example, the jbo.SQLBuilder attribute is set to 'Custom', and the jbo.SQLBuilderClass attribute is set to the class 'com.example.CustomBuilder'.

wls:/offline> archive =
              ADFMAdmin.getADFMArchiveConfig(fromLocation='/tmp/testArchive.ear')
wls:/offline> archive.setDatabaseJboSQLBuilder('Custom') 
wls:/offline> archive.setDatabaseJboSQLBuilderClass('com.example.CustomBuilder') 
wls:/offline> archive.save(toLocation='/tmp/targetArchive.ear')

In the following example, the rowLimit attribute is set to 100.

wls:/offline> archive = getADFMArchiveConfig(fromLocation='/tmp/testArchive.ear')
wls:/offline> archive.setDefaultRowLimit(100)
wls:/offline> archive.save(toLocation='/tmp/targetArchive.ear')

6.2.6 exportJarVersions

Use with WLST: Offline.

6.2.6.1 Description

Use to export CSV format of JARs versions from current ORACLE_HOME at a specified location. Exported JARs versions information can be opened in Oracle OpenOffice or MicroSoft Excel.

6.2.6.2 Syntax

exportJarVersions(path)
ArgumentDefinition
path

Location to extract JARs versions.


6.2.6.3 Example

This example shows how JARs versions are exported to /tmp/export-MyApp-Versions.csv. R/W privileges for the CSV file need to be verified.

wls:/offline>exportJarVersions('/tmp/export-MyApp-Versions.csv')

6.2.7 exportApplicationJarVersions

Use with WLST: Online.

6.2.7.1 Description

Used to export CSV format of runtime JARs versions of a specified application at a specified location.

6.2.7.2 Syntax

exportApplicationJarVersions(applicationName, path)
ArgumentDefinition
applicationName

Application name to export JARs versions

path

Location to export JARs versions.


6.2.7.3 Example

This example shows how MyApp runtime JARs versions are exported to /tmp/export-MyApp-Versions.csv. R/W privileges for the CSV file need to be verified.

wls:/DefaultDomain/serverConfig>exportApplicationJarVersions('MyApp',
'/tmp/export-MyApp-Versions.csv')

6.2.8 exportApplicationSelectedJarVersions

Use with WLST: Online.

6.2.8.1 Description

Used to export CSV format of JARs versions of selected JARs at a specified location.

6.2.8.2 Syntax

exportApplicationSelectedJarVersions(applicationName, path, jarsLocation)
ArgumentDefinition
applicationName

Application name to export JARs versions.

path

Location to extract JARs versions.

jarsLocation

Optional list of selected JARs. If not specified, default JARs runtime version list from %WLSDOMAIN%/config/fmwconfig/Versions.xml will be exported.

If the selectedJars property in Versions.xml is empty, version information of adfm.jar, adf-richclient-impl-11.jar, adf-controller.jar, adf-pageflow-impl.jar, adf-share-support.jar and mdsrt.jar will be exported.


6.2.8.3 Example

This example shows how JARs versions are exported to /tmp/export-MyApp-Versions.csv using the selectedJars property of the Versions.xml file. In this case, since the jarsLocation parameter is not specified, the libraries listed in the selectedJars property of the Versions.xml file will be exported. R/W privileges for the CSV file need to be verified.

wls:/offline>exportApplicationSelectedJarVersions('MyApp',
'/tmp/export-MyApp-Versions.csv') 

Versions.xml
<Diagnostics xmlns="xmlns.oracle.com/adf/diagnostics">
  <Versions xmlns="xmlns.oracle.com/adf/diagnostics/versions"
    exportVersionsOnApplicationStartup="true" 
    selectedJars="$ORACLE_HOME$/modules/oracle.adf.model_11.1.1/adfm.jar;
      $ORACLE_HOME$/modules/oracle.adf.view_11.1.1/adf-richclient-impl-11.jar;
      $ORACLE_HOME$/modules/oracle.adf.controller_11.1.1/adf-controller.jar;
      $ORACLE_HOME$/modules/oracle.adf.pageflow_11.1.1/adf-pageflow-impl.jar;
      $ORACLE_HOME$/modules/oracle.adf.share_11.1.1/adf-share-support.jar;
      $ORACLE_HOME$/modules/oracle.mds_11.1.1/mdsrt.jar" />
</Diagnostics>

This example shows how JARs versions are exported to /tmp/export-MyApp-Versions.csv using the jarsLocation parameter. In this case, the libraries passed explicitly in the jarsLocation parameter will be exported. R/W privileges for the CSV file need to be verified.

wls:/offline>exportApplicationSelectedJarVersions('MyApp',
'/tmp/export-MyApp-Versions.csv',
'$ORACLE_HOME$/modules/oracle.adf.model_11.1.1/adfm.jar;$ORACLE_HOME$/modules/oracle.adf.view_11.1.1/adf-richclient-impl-11.jar') 
PK>|PKN4zDOEBPS/ap_glassfish.htmI: Configuring GlassFish Server

A Configuring GlassFish Server

This appendix describes how to configure GlassFish Server for Oracle ADF Essentials. It describes how to obtain the Oracle ADF Runtime and how to install these files into the GlassFish Server

This appendix contains the following sections:

A.1 About Configuring GlassFish

GlassFish Server is an application server that can be configured to run Oracle ADF applications. If you do not have a GlassFish Server installation, you can download GlassFish Server from the GlassFish website. Before you can run ADF applications in a GlassFish Server, you need to configure GlassFish with the Oracle ADF Runtime libraries.

For a list of the supported Oracle ADF features for GlassFish, go to the OTN site at http://www.oracle.com/technetwork/developer-tools/adf/overview/adfessentials-1719844.html

For instructions on obtaining and installing GlassFish, see http://glassfish.java.net/downloads/3.1.2-final.html

For information about developing ADF applications for GlassFish, see the "Deploying ADF Applications to GlassFish" appendix in the Developing Fusion Web Applications with Oracle Application Development Framework.

A.2 Obtaining GlassFish Server and Oracle ADF Runtime

Oracle ADF Essentials supports the Open Source and commercial versions of GlassFish Server. With either version, you will need the Full Platform distribution. The Web Profile distribution is not supported. After you have installed the GlassFish Server, you need to obtain the ADF Essentials adf-essentials.zip file from OTN and follow the instructions in this appendix to install the ADF Runtime libraries.

For information on how to start and stop the server and other application server tasks, see GlassFish documentation at the GlassFish website.

You will need to perform the following tasks, as described in the following topics:

A.2.1 Obtaining GlassFish Server

You can download the open source version of the GlassFish Server from the GlassFish website:

http://glassfish.java.net/downloads/3.1.2-final.html

Follow the instructions and documentation at the GlassFish site to install and configure a GlassFish Server.

A.2.2 Obtaining Oracle ADF Runtime

In order for a GlassFish Server to run Oracle ADF applications, you must install the ADF Runtime library files into the GlassFish installation directory.

You can download the Oracle ADF Essentials adf-essentials.zip file from the Oracle Technology Network at http://www.oracle.com/go/?&Src=7578263&Act=4&pcode=WWMK12022244MPP044.

After you have downloaded the adf-essentials.zip file, you can extract the files to a flat-structured temporary directory which you can use to copy the required files into the GlassFish installation directories.

For instance, if you are using unzip, you can add the -j option to create a flat directory structure that has no hierarchical folders.

unzip -j <file> -d <destination>

A.3 Configuring GlassFish with ADF Runtime Libraries

The ADF Runtime libraries consists of the following:

  • ADF Share libraries

  • ADF Model libraries

  • ADF Controller libraries

  • ADF View libraries

The ADF Share libraries must be manually installed into the GlassFish installation. You use your operating system commands or tools to copy the files into GlassFish. For instructions, see Section A.3.1

The ADF Model, ADF Controller, and ADF View libraries are loaded into GlassFish with the deployed application. When you use JDeveloper to develop the application, you will reference the required libraries before you package the application into an EAR file for deployment.

The steps for installing the ADF Runtime libraries are:

  1. Configure ADF Share libraries.

    • Copy the ADF Share libraries from adf-essentials.zip into the GlassFish installation.

  2. Deploy the application as an EAR file to GlassFish Server.

A.3.1 Installing ADF Share Libraries Manually

It may be helpful to have an understanding of the options that are available to you when you are mapping ADF Share for GlassFish. For more information, see Section A.3

You will need to complete these tasks:

  • Install the GlassFish Server

  • Obtain the adf-essentials.zip file and unzip it to a temporary directory

To install the ADF Share Runtime libraries:

  1. Copy or move the ADF Share library files from the temporary directory to the <glassfish>/domains/domain1/lib/applibs folder:

    The ADF Share files should be in the temporary directory where you had unzip the adf-essentials.zip file as described in Section A.2.2 This directory should be <temp>/oracle_common/modules.

    You must copy the following JAR files into the <glassfish>/domains/domain1/lib/applibs directory:

    oracle.adf.share.ca_11.1.1/adf-share-base.jar
    oracle.adf.share.ca_11.1.1/adf-share-ca.jar
    oracle.adf.share_11.1.1/commons-el.jar
    oracle.adf.share_11.1.1/adf-share-support.jar
    oracle.adf.share_11.1.1/adfsharembean.jar
    oracle.adf.share_11.1.1/jsp-el-api.jar
    oracle.adf.share_11.1.1/adflogginghandler.jar
    oracle.adf.share_11.1.1/oracle-el.jar
    oracle.mds_11.1.1/mdsrt.jar
    oracle.bali.share_11.1.1/share.jar
    oracle.xmlef_11.1.1/xmlef.jar
    oracle.javatools_11.1.1/resourcebundle.jar
    oracle.javatools_11.1.1/javamodel-rt.jar
    oracle.javatools_11.1.1/javatools-nodeps.jar
    oracle.adf.security_11.1.1/adf-share-security.jar
    oracle.adf.security_11.1.1/adf-controller-security.jar
    oracle.xdk_11.1.0/xmlparserv2_sans_jaxp_services.jar
    oracle.xdb_11.1.0.jar
    oracle.jrf_11.1.1/jrf-api.jar
    oracle.jdbc_11.1.1/ojdbc6dms.jar
    oracle.dms_11.1.1/dms.jar
    oracle.odl_11.1.1/ojdl.jar
    oracle.odl_11.1.1/ojdl2.jar
    oracle.jmx_11.1.1/jmxframework.jar
    oracle.jmx_11.1.1/jmxspi.jar
    oracle.classloader_11.1.1.jar
    oracle.logging-utils_11.1.1.jar
    oracle.web-common_11.1.1.jar
    oracle.webservices_11.1.1/oc4j-ws-support.jar
    org.apache.bcel_5.1.jar
    oracle.nlsrtl_11.2.0/orai18n-mapping.jar
    
  2. Verify the libraries.

A.4 Additional Configuration Tasks

After you have installed the ADF Runtime into the GlassFish Server, you need to perform additional configuration tasks on GlassFish.

The configuration tasks are:

A.4.1 Using the GlassFish Administration Console

You can use the GlassFish Administration Console to configure the GlassFish Server including managing applications, JDBC pools, and other resources. If you are using GlassFish 3.1.2, the secure console is disabled by default. You would need to enable secure console to access the admin page remotely or only access the page from the same machine where the GlassFish server is running.

The GlassFish Administration Console is at:

http://<machine_name>:4848/

A.4.2 Creating a Datasource for GlassFish

It may be helpful to have an understanding of the options that are available to you when you are creating a datasource for GlassFish. For more information, see Section A.4.

You can use the GlassFish console or use asadmin commands to create the datasource. For using the GlassFish console to create a datasource, see GlassFish documentation.

To create a datasource for GlassFish using asadmin commands:

  1. Open a command line window.

  2. Invoke the asadmin command to create a datasource for GlassFish.

    For instance, the following command creates a datasource for an application:

    asadmin> create-jdbc-connection-pool --datasourceclassname
      oracle.jdbc.pool.SampleDataSource
      --restype javax.sql.XADataSource
      --property user=xyz
      :password=xyz:url=jdbc:oracle:thin:@machine.com:1521:machine
      --target=server SampleDSPool
     
    asadmin> ping-connection-pool sampleDSPool
     
    asadmin> create-jdbc-resource --connectionpoolid SampleDSPool jdbc/OracleDS
    
    

A.4.3 Configuring the JVM Cache

You need to configure the JVM settings to simple and increase the memory size from 192 Mb to 512 Mb.

It may be helpful to have an understanding of the options that are available to you when you are configuring JVM for GlassFish. For more information, see Section A.4

To configure JVM Cache for MDS:

  1. Start the GlassFish Administration Console.

  2. Choose Configurations > server-config > JVM Settings.

  3. Select JVM Options and specify -Doracle.mds.cache=simple and XX:MaxPermSize=512m.

  4. Click Save.

  5. Or, open the <glassfish>/domains/domain1/config/domain.xml file and edit the following entries:

    <jvm-options>-XX:MaxPermSize=512m</jvm-options>
    <jvm-options>-Doracle.mds.cache=simple</jvm-options>
    

A.5 Deploying an ADF Application to GlassFish

After you have referenced the libraries in the application, you can proceed to deploy the application to GlassFish Server. For more information, see the "Deploying ADF Applications to GlassFish" appendix in the Developing Fusion Web Applications with Oracle Application Development Framework.

PKE+N:I:PK N4zDoa,mimetypePKN4zD`$`[:iTunesMetadata.plistPKN4zDYuMETA-INF/container.xmlPKN4zD@t` OEBPS/cover.htmPKN4zD{{TOEBPS/ap_aud_adf.htmPKN4zDoN3OEBPS/title.htmPKN4zDPG%% OEBPS/intro.htmPKN4zDȶOEBPS/monitor.htmPKN4zDv o@|;|[OEBPS/deploy.htmPKN4zD OEBPS/partpage1.htmPKN4zDX΀5k f OEBPS/whatsnew_adfag.htmPKN4zD'w#r#OEBPS/preface.htmPKN4zDAss"SOEBPS/img/metadata_tampercheck.pngPKN4zD!x"OEBPS/img/mon_connectionsmbean.gifPKN4zDDYtTt%3OEBPS/img/metadata_missingentries.pngPKN4zDFԬʬ]OEBPS/img/mon_configmbean.gifPKN4zD1irVL|UOEBPS/img/mon_mdsmbean.gifPKN4zDDXE{yvyOEBPS/img/deploy_preptarget.gifPKN4zDU1'"OEBPS/img/mon_configactivedata.pngPKN4zD>>cGOEBPS/img/gs_select_app.pngPKN4zDR~?G:G OEBPS/img/adfdi_versionmatch.pngPKN4zDЋ۩ѩ-OEBPS/img/gs_adf_menu.pngPKN4zDbW.4)4OxOEBPS/get_started_adf.htmPKN4zDgecĬOEBPS/ap_jdevlibs.htmPKN4zDJp pOEBPS/partpage2.htmPKN4zDvOEBPS/adfdi_sysadmin.htmPKN4zD~ 4l OEBPS/toc.ncxPKN4zDvNz OEBPS/content.opfPKN4zDyNt}tQ OEBPS/dcommon/oracle-logo.jpgPKN4zD0h OEBPS/dcommon/cpyr.htmPKN4zDl-OJ" OEBPS/dcommon/oracle.gifPKN4zDo"nR M  OEBPS/dcommon/doccd_epub.jsPKN4zDT' hcR) OEBPS/dcommon/blafdoc.cssPKN4zDqpKkK A OEBPS/toc.htmPKN4zD# OEBPS/partpage3.htmPKN4zD>| OEBPS/wlst.htmPKN4zDE+N:I:p& OEBPS/ap_glassfish.htmPK%% a