PK .Aoa,mimetypeapplication/epub+zipPK.AiTunesMetadata.plistV artistName Oracle Corporation book-info cover-image-hash 26260627 cover-image-path OEBPS/dcommon/oracle-logo.jpg package-file-hash 24748910 publisher-unique-id E12511-01 unique-id 622334371 genre Oracle Documentation itemName Oracle® Application Express SQL Workshop and Utilities Guide, Release 3.2 releaseDate 2009-07-28T18:38:44Z year 2009 PKW ^[VPK.AMETA-INF/container.xml PKYuPK.AOEBPS/obj_brows.htm Managing Database Objects with Object Browser

1 Managing Database Objects with Object Browser

Object Browser enables developers to browse, create, and edit objects in a database.

This section contains the following topics:

About Object Browser

The Object Browser page is divided into two sections:

Description of o_brws.gif follows
Description of the illustration o_brws.gif

Selecting a Schema

A schema is a logical container for database objects. To access objects in another schema, make a selection from the Schema list in the upper right side of the page.

Switching to Another SQL Workshop Component

You can navigate to another SQL Workshop component by selecting from the Component list located on the upper right side of the page:

Accessing Object Browser

To access Object Browser:

  1. Log in to the Workspace home page.

  2. Click SQL Workshop.

  3. To view Object Browser you can either:

    • Click SQL Workshop and then Object Browser to drill-down to the Object Browser.

    • Click the down arrow on the right side of the SQL Workshop icon to view a drop down menu. Then select the Object Browser menu option.

Description of o_brws_menu_apex.gif follows
Description of the illustration o_brws_menu_apex.gif


Note:

For the purposes of consistency, this document uses the primary navigation path (or drill-down approach) when explaining navigation.

Searching For and Browsing Database Objects

The Object Selection pane displays on the left side of the Object Browser page and lists database objects by type with the current schema. You can filter the view by selecting an object type or entering a case insensitive search term.

Topics in this section include:

Searching For and Selecting Database Objects

To search for a database object in the Object Selection pane:

  1. On the Workspace home page, click SQL Workshop and then Object Browser.

    Object Browser appears.

  2. Select an object type from the Object list.

    The list of objects that appears depends upon the available objects in the current schema. Note that any object having a red bar adjacent to it is invalid.

    Description of o_brws_srch.gif follows
    Description of the illustration o_brws_srch.gif

  3. To search for an object name, enter a case insensitive search term in the Search field.

  4. To view all objects, leave the search field blank.

Once you locate the database object you want to view, simply select it. The selected object displays in the Detail pane. If no object is selected, the Detail pane is blank.

Hiding the Object Selection Pane

You can hide the Object Selection pane by selecting the Hide Objects control. This control displays on the right side of the Object Selection pane. If the Object Selection pane appears, selecting this control hides it. Similarly, if the Object Selection pane is hidden, selecting this control causes the pane to reappear.

Description of o_brws_hide.gif follows
Description of the illustration o_brws_hide.gif

Using the Find Tables Icon

The Find Tables icon resembles a flashlight. Click this icon to view tables within the currently selected schema.

Description of wrkshp_find_tables.gif follows
Description of the illustration wrkshp_find_tables.gif

To view tables within the current schema:

  1. Navigate to either Object Browser or SQL Commands.

  2. From the Schema list, select a schema (optional).

  3. Click the Find Tables icon.

    The Table Finder appears. A search bar displaying the selected schema displays at the top of the page and contains the following controls:

    • Search. Search for a table name. Enter case insensitive keywords in the Search field and click Go. To view all tables, leave the Search field blank and click Go.

    • Rows. Determine how many rows display in the resulting report. To change the number of rows that display, make a selection from the list and click Go.

    • Views. Select the Views check box and click Go to include views in the resulting report.

    The Table Finder report appears displaying the table name, the number of rows, last analyzed date, and the object type.

  4. Select a table name.

    Description of wrkshp_view_table.gif follows
    Description of the illustration wrkshp_view_table.gif

    A table definition appears on the right side of the page.

    This report displays the column names, data type, length, precision, scale and the SQL necessary to re-create the table that appears at the bottom of the page.

About Creating Database Objects

You can create database objects using the Create Database Object Wizard. Once you select an object, a set of tabs and buttons appears at the top of the Detail pane. Use the tabs to view different aspects of the current items (for example, a tables indexes). Use the buttons to modify the current object.

To create an object:

  1. On the Workspace home page, click SQL Workshop and then Object Browser.

    Object Browser appears.

  2. Click Create, located in the upper right corner of the Detail pane.

  3. From the list of object types, select the type of object you want to create.

  4. Follow the on-screen instructions.

Managing Tables

A table is a unit of data storage in an Oracle database, containing rows and columns. When you view a table in Object Browser, a table description appears that describes each column in the table.

Topics in this section include:


See Also:


Creating a Table

To create a table:

  1. On the Workspace home page, click SQL Workshop and then Object Browser.

    Object Browser appears.

  2. Click Create.

  3. From the list of object types, select Table.

  4. Enter a table name.

    Table names must conform to Oracle naming conventions and not contain spaces or start with a number or underscore.

  5. To have the final table name match the case entered in the Table Name field, click Preserve Case.

  6. Enter details for each column. For each column:

    1. Enter the column name.

    2. Select the column type. Available types include NUMBER, VARCHAR2, DATE, TIMESTAMP, CHAR, CLOB, BLOB, NVARCHAR2, BINARY_FLOAT, and BINARY_DOUBLE

    3. Enter the following additional information as appropriate:

      • Precision

      • Scale

    4. To specify a column should not be NULL, select the check box in the Not Null column.

      To change the order of previously entered columns, click the Up and Down arrows in the Move column. To add additional columns, click Add Column.

    5. Click Next.

    Next, define the primary key for this table (optional). A primary key is a single field or combination of fields that uniquely identifies a record.

  7. For Primary Key, select the appropriate option and click Next:

    • No Primary Key - No primary key is created.

    • Populated from a new sequence - Creates a primary key and creates a trigger and a sequence. The sequence is used in the trigger to populated the selected primary key column. The primary key can only be a single column.

    • Populated from an existing sequence - Creates a primary key and creates a trigger. The selected sequence is used in the trigger to populate the selected primary key column. The primary key can only be a single column.

    • Not populated - Defines a primary key but does not have the value automatically populated with a sequence within a trigger. You can also select this option to define a composite primary key (that is, a primary key made up of multiple columns).

    Next, add foreign keys (optional). A foreign key establishes a relationship between a column (or columns) in one table and a primary or unique key in another table.

  8. To add a foreign key:

    1. Name - Enter a name of the foreign key constraint that you are defining.

    2. Select Key Column(s) - Select the columns that are part of the foreign key, then click the Add icon to move them to Key Column(s).

    3. References Table - Select the table which is referenced by this foreign key. Then, select the columns referenced by this foreign key. Once selected, click the Add icon to move the selected columns to Referenced Column(s).

    4. Select the appropriate option:

      • Disallow Delete - Blocks the delete of rows from the referenced table when there are dependent rows in this table.

      • Cascade Delete - Deletes the dependent rows from this table when the corresponding parent table row is deleted.

      • Set to Null on Delete - Sets the foreign key column values in this table to null when the corresponding parent table row is deleted.

    5. Click Add.

    6. Click Next.

    Next, add a constraint (optional). You can create multiple constraints, but you must add each constraint separately.

  9. To add a constraint:

    1. Specify the type of constraint (Check or Unique).

      A check constraint is a validation check on one or more columns within the table. No records can be inserted or updated in a table which violates an enabled check constraint. A unique constraint designates a column or a combination of columns as a unique key. To satisfy a unique constraint, no two rows in the table can have the same values for the specified columns.

    2. Enter the constraint in the field provided. For unique constraints, select the column(s) that are to be unique. For check constraints, enter the expression that should be checked such as flag in ('Y','N').

    3. Click Add.

  10. Click Finish.

    A confirmation page appears. To view the SQL used to create the table, click SQL Syntax.

  11. Click Create.

    Note that it is not necessary to follow the steps for creating a table in the order described in the previous procedure. Instead of navigating through the wizard by clicking the Next and Previous button, you can also access a specific step by selecting it in the progress indicator on the left side of the page.


See Also:

"Using the Table Finder" in Oracle Application Express Application Builder User's Guide and "Overview of Tables" in Oracle Database Concepts for information about tables.

Browsing a Table

When you view a table in Object Browser, the table description appears. While viewing this description, you can add a column, modify a column, rename a column, drop a column, rename the table, copy the table, drop the table, truncate the table, or create a lookup table based upon a column in the current table. Additionally, you have access other reports that offer related information including the table data, indexes, data model, constraints, grants, statistics, user interface defaults, triggers, dependencies, and SQL to produce the selected table.

To view a table description:

  1. On the Workspace home page, click SQL Workshop and then Object Browser.

    Object Browser appears.

  2. From the Object list, select Tables.

  3. From the Object Selection pane, select a table.

    The table description appears.

Summary of Available Views

Click the tabs at the top of the page to view different reports about the table. Table 1-1 describes all available views.

Table 1-1 Available Views for Tables

ViewDescription

Table

Displays details of the first 31 columns including the column name, data type, nullable status, default value, and primary key. While viewing table details you can add, modify, delete, or rename a column. Additionally, you can drop, rename, copy, or truncate the table only if the referencing table has no records and create a lookup table.

To export the data as a comma-delimited file (.csv) file, click the Download link.

See Also: "Editing a Table"

Data

Displays a report of the data in the current table. Actions you can perform include:

  • Query - Enables you to sort by column. To restrict specific rows, enter a condition in the Column Condition field. Use the percent sign (%) for wildcards. From Order by, select the columns you want to review and click Query.

  • Count Rows - Displays a report of the number of rows in the current table.

  • Insert Row - Enables you to insert a row into the table.

  • Download - Exports all data in the table to a spreadsheet. Click the download link at the bottom of the page to export all data in the selected table.

Indexes

Displays indexes associated with this table. Actions you can perform include Create and Drop.

See Also: "Managing Indexes"

Model

Displays a graphical representation of the selected table along with all related tables. Related tables are those that reference the current table in a foreign key and those tables referenced by foreign keys within the current table.

You can position the cursor over an underlined table name to view the relationship between that table and the current table. Click an underlined table name to view the model of the related table.

Constraints

Displays a list of constraints for the current table. Actions you can perform include Create, Drop, Enable, and Disable.

Grants

Displays a list of grants on the current table, including the grantee, the privilege, and grant options. Actions you can perform in this view include Grant and Revoke.

Statistics

Displays collected statistics about the current table, including the number of rows and blocks, the average row length, sample size, when the data was last analyzed, and the compression status (enabled or disabled). Click Analyze to access the Analyze Table Wizard.

UI Defaults

Displays user interface defaults for forms and reports. User interface defaults enable developers to assign default user interface properties to a table, column, or view within a specified schema.

Click Edit to edit defined user interface defaults. Click Create to initialize user interface defaults for tables that do not currently have user interface defaults defined.

See Also: "Managing User Interface Defaults" in Oracle Application Express Application Builder User's Guide.

Triggers

Displays a list of triggers associated with the current table. Actions you can perform include Create, Drop, Enable, and Disable.

To view trigger details, click the trigger name.

See Also: "Managing Triggers"

Dependencies

Displays report showing objects referenced by this table, objects this table references, and synonyms for this table.

SQL

Displays the SQL necessary to re-create this table, including keys, indexes, triggers and table definition.


Editing a Table

While viewing a table description, you can edit it by clicking the buttons above the table description.

To edit a table:

  1. On the Workspace home page, click SQL Workshop and then Object Browser.

    Object Browser appears.

  2. From the Object list, select Tables.

  3. From the Object Selection pane, select a table.

    The table description appears.

  4. Click the appropriate button described in Table 1-2.

    Table 1-2 Edit Table Buttons

    ButtonDescription

    Add Column

    Adds a column to the table. Enter a column name and select a type. Depending upon the column type, specify whether the column requires a value, the column length, precision, and scale.

    Modify Column

    Modifies the selected column.

    Rename Column

    Renames the selected column.

    Drop Column

    Drops the selected column.

    Rename

    Renames the selected table.

    Copy

    Copies the selected table.

    Drop

    Drops the selected table.

    See Also: "Using the Recycle Bin to View and Restore Dropped Objects"

    Truncate

    Removes all rows from the selected table. Truncating a table can be more efficient than dropping and re-creating a table. Dropping and re-creating a table may invalidate dependent objects, requiring you to regrant object privileges or re-create indexes, integrity constraints, and triggers.

    Create Lookup Table

    Creates a lookup table based on the column you select. That column becomes a foreign key to the lookup table.


Dropping a Table

To drop a table:

  1. On the Workspace home page, click SQL Workshop and then Object Browser.

    Object Browser appears.

  2. From the Object list, select Tables.

  3. From the Object Selection pane, select a table.

    The table description appears.

  4. Click Drop.

Managing Views

A view is a logical representation of another table or combination of tables. A view derives its data from the tables on which it is based. These tables are called base tables. Base tables might in turn be actual tables or might be views themselves. All operations performed on a view actually affect the base table of the view. You can use views in almost the same way as tables. You can query, update, insert into, and delete from views, just as you can standard tables.

Topics in this section include:

Creating a View

To create a view:

  1. On the Workspace home page, click SQL Workshop and then Object Browser.

    Object Browser appears.

  2. Click Create.

  3. From the list of object types, select View.

  4. Define the view:

    • View Name - Enter a name for the View.

    • Query - Specify a query to define the view.

      To access Query Builder or SQL Command Processor, click the appropriate link at the bottom of the page. The selected tool appears in a pop-up window. Once you create the appropriate SQL, click Return to automatically close the popup window and return to the wizard with the SQL.

  5. Click Next.

    A confirmation page appears. To view the SQL used to create the view, click SQL.

  6. Click Create.

Browsing a View

When you access a view in Object Browser, the Detail pane displays a report listing the columns in that view.

To browse a view:

  1. On the Workspace home page, click SQL Workshop and then Object Browser.

    Object Browser appears.

  2. From the Object list, select Views.

  3. From the Object Selection pane, select a view.

    The view definition appears displaying the appropriate columns.

Summary of Available Views

Click the tabs at the top of the page to view different reports. Table 1-3 describes all available views.

Table 1-3 Available Views for Views

ViewDescription

View

(Default) Displays the columns in the current view. Actions you can perform include:

  • Compile

  • Drop

See Also: "Editing a View", "Compiling a View", and "Dropping a View"

Data

Displays a report of the data in the columns in the view. Actions you can perform include:

  • Query - Enables you to sort by column. To restrict specific rows, enter a condition in the Column Condition field. Use the percent sign (%) for wildcards. From Order by, select the columns you want to review and click Query.

  • Count Rows - Enables you to count rows in the table.

  • Insert Row - Enables you to insert a row into the table.

Grants

Displays a list of grants associated with the columns in the view. Grant details include grantee, privilege, and grant options. Actions you can perform include Grant and Revoke.

UI Defaults

Displays user interface defaults for forms and reports. User interface defaults enable developers to assign default user interface properties to a table, column, or view within a specified schema.

Click Edit to edit existing user interface defaults. Click Create to initialize user interface defaults for views that do not currently have user interface defaults defined.

See Also: "Managing User Interface Defaults" in Oracle Application Express Application Builder User's Guide..

Dependencies

Displays a report showing objects referenced by this view, objects this view references, and synonyms for this view.

SQL

Displays the SQL necessary to re-create this view.


Editing a View

When you edit a view you can edit the code manually, perform a search and replace, and compile the view. Additionally, you can save the view as a file or drop it.

Editing a View Manually

To edit a view manually:

  1. On the Workspace home page, click SQL Workshop and then Object Browser.

    Object Browser appears.

  2. From the Object list, select Views.

  3. From the Object Selection pane, select a view.

  4. Select the Code tab.

  5. Click Edit to activate manual edit mode.

    If you edit and make changes to a view, you must compile. See "Compiling a View".


Note:

You can expand the Edit pane by clicking the Full Screen icon in the upper right of the pane, beneath the Create button.

Using Find and Replace

Click Find to perform a basic search and replace.

Downloading a View

Click Download to save the current view as a file.

Compiling a View

If you edit and make changes to a view, you must compile to save your changes. Note that there is no save function since this is just a view of the object within the database.

Click Compile to re-create the current view.

Dropping a View

To drop a view:

  1. On the Workspace home page, click SQL Workshop and then Object Browser.

    Object Browser appears.

  2. From the Object list, select Views.

  3. From the Object Selection pane, select a view.

  4. Select the View tab or the Code tab.

  5. Click Drop to delete the current view.

Managing Indexes

An index is an optional structure associated with tables and clusters. You can create indexes on one or more columns of a table to speed access to data on that table.

When you view an index in Object Browser, the Detail pane displays a report containing the index name, index type, table owner, table type, and a listing of the indexed columns.

Topics in this section include:

Creating an Index

To create an index:

  1. On the Workspace home page, click SQL Workshop and then Object Browser.

    Object Browser appears.

  2. Click Create.

  3. From the list of object types, select Index.

  4. Select a table and select the type of index you want to create. Available index types include:

    • Normal - Indexes one or more scalar typed object attributes of a table

    • Text - Creates a text index (Oracle Text)

  5. Click Next.

  6. Create the index definition. Specify an index name, select one or more columns to be indexed, and click Next.

    A confirmation page appears. To view the SQL used to create the index, click SQL.

  7. Click Finish.

Browsing an Index

To browse an index:

  1. On the Workspace home page, click SQL Workshop and then Object Browser.

    Object Browser appears.

  2. From the Object list, select Indexes.

  3. From the Object Selection pane, select an index.

    The index appears displaying the index name, type, table owner, table type and a listing of indexed columns.

Summary of Available Views

Click the tabs at the top of the page to view different reports about the index. Table 1-4 describes all available views.

Table 1-4 Available Views for Indexes

ViewDescription

Object Details

(Default) Displays the index name, index type, table owner, and table type and also a listing of the indexed columns. Actions you can perform while viewing Object Details include:

  • Disable - Disables the current index

  • Drop - Drops the current index.x

  • Rebuild - Rebuilds the current index

Statistics

Displays collected statistics about the current view, including the number of rows, sample size, when the data was last analyzed, and the compression status (enabled or disabled). Click Analyze to refresh the displayed statistics.

SQL

Displays the SQL necessary to re-create this index.


Dropping an Index

To drop an index:

  1. On the Workspace home page, click SQL Workshop and then Object Browser.

    Object Browser appears.

  2. From the Object list, select Indexes.

  3. From the Object Selection pane, select an index.

  4. Under Object Details, click the Drop tab.

Managing Sequences

A sequence generates a serial list of unique numbers for numeric columns of a database table. Database sequences are generally used to populate table primary keys.

Topics in this section include:

Creating a Sequence

To create a sequence:

  1. On the Workspace home page, click SQL Workshop and then Object Browser.

    Object Browser appears.

  2. Click Create.

  3. From the list of object types, select Sequence.

  4. Define the sequence, specify a sequence name, and click Next.

    A confirmation page appears. To view the SQL used to create the sequence, click Show SQL.

  5. Click Create.

Browsing a Sequence

To browse a sequence:

  1. On the Workspace home page, click SQL Workshop and then Object Browser.

    Object Browser appears.

  2. From the Object list, select Sequences.

  3. From the Object Selection pane, select a sequence.

    The Object Details view appears.

Summary of Available Views

Click the tabs at the top of the page to view different reports about the sequence. Table 1-5 describes all available views.

Table 1-5 Available Views for Sequences

ViewDescription

Object Details

(Default) Displays details about the current sequence. Actions you can perform in this view include Alter and Drop.

Grant

Displays a list of grants associated with the sequence. Grant details include grantee, privilege, and grant options. Actions you can perform include Grant and Revoke.

Dependencies

Displays a list of objects that use (or depend) upon this sequence.

SQL

Displays the SQL necessary to re-create this sequence.


Dropping a Sequence

To drop a sequence:

  1. On the Workspace home page, click SQL Workshop and then Object Browser.

    Object Browser appears.

  2. From the Object list, select Sequences.

  3. From the Object Selection pane, select a sequence.

    The Object Details view appears.

  4. Click Drop.

Managing Types

A type is a user-specified object or collection definition. Oracle Application Express currently only supports collection definitions. There are two categories of Oracle collections (SQL collections):

VARRAY types are used for one-dimensional arrays, while nested table types are used for single-column tables within an outer table.

Topics in this section include:


See Also:

Oracle Database Concepts and Oracle Database PL/SQL Language Reference for information about collection types

Creating a Type

To create a collection type:

  1. On the Workspace home page, click SQL Workshop and then Object Browser.

    Object Browser appears.

  2. Click Create.

  3. From the list of object types, select Type.

  4. Specify a name and click Next.

  5. Select a type, data type, limit, and click Next.

    A confirmation page appears. To view the SQL used to create the collection type, click Show SQL.

  6. Click Finish.

Browsing a Type

To browse a collection type:

  1. On the Workspace home page, click SQL Workshop and then Object Browser.

    Object Browser appears.

  2. From the Object list, select Type.

  3. From the Object Selection pane, select a type.

    The Object Details view appears.

Summary of Available Views

Click the tabs at the top of the page to view different reports. Table 1-6 describes all available views.

Table 1-6 Available Views for Types

ViewDescription

Object Details

(Default) Displays details about the selected type. To drop a type, click Drop.

Synonyms

Displays a list of synonyms for the current type.

Grants

Displays a list of grants associated with the type. Grant details include grantee, privilege, and grant options. Actions you can perform include Grant and Revoke.

SQL

Displays the SQL necessary to re-create this type.


Dropping a Type

To drop a collection type:

  1. On the Workspace home page, click SQL Workshop and then Object Browser.

    Object Browser appears.

  2. From the Object list, select Type.

  3. From the Object Selection pane, select a type.

    The Object Details view appears.

  4. Click Drop.

Managing Packages

A package is a database object that groups logically related PL/SQL types, items, functions and procedures. Packages usually have two parts, a specification and a body. The specification is the interface to your application. The body implements the specification.

Topics in this section include:


See Also:


Creating a Package

To create a package:

  1. On the Workspace home page, click SQL Workshop and then Object Browser.

    Object Browser appears.

  2. Click Create.

  3. From the list of object types, select Package.

  4. Select the type of package you want to create:

    • Specification

    • Body

    • Package with methods on database tables

  5. If you select Specification:

    1. Enter a name and click Next.

      The wizard creates a dummy package specification and displays it for editing.

    2. Edit the specification and click Finish.

  6. If you select Body:

    1. Select the package you want to create the body for and click Next

      The wizard creates a package body with stubbed out calls identified in the specification and displays it for editing.

    2. Edit the package body and click Finish.

  7. If you select Package with methods on database tables:

    1. Enter a name and click Next.

    2. Select up to ten tables and click Next.

      The wizard creates a specification and body with insert, update, delete, and GET APIs for the selected tables. Note that you have the option to show or download the specification or body.

    3. Click Finish.

Viewing a Package

When you access a package in Object Browser the specification appears.

To view a specification:

  1. On the Workspace home page, click SQL Workshop and then Object Browser.

    Object Browser appears.

  2. From the Object list, select Packages.

  3. From the Object Selection pane, select a package.

    The Specification appears. You can copy the code in this view for use in other tools.

Summary of Available Views

Click the tabs at the top of the page to view different reports about the package. Table 1-7 describes all available views.

Table 1-7 Available Views for Packages

ViewDescription

Specification

(Default) Displays the package specification. This define the interface to your application. Actions you can perform include:

  • Edit

  • Compile

  • Download

  • Drop

  • Find

Body

Displays the package body, if one exists, for the selected package. Actions you can perform include:

  • Edit

  • Compile

  • Download

  • Drop

  • Find

Dependencies

Displays objects that use (or depend on) on the current package and objects the package depends on.

Errors

Displays errors related to the current package.

Grants

Lists details of grants for the current package, including privilege, grantee, grantable, grantor, and object name.


Editing a Package

When you edit a package, you can edit the code manually, perform a search and replace, and compile the package.

Editing a Package Manually

To edit a package manually:

  1. On the Workspace home page, click SQL Workshop and then Object Browser.

    Object Browser appears.

  2. From the Object list, select Packages.

  3. From the Object Selection pane, select a package.

    The Specification appears. You can copy the code in this view for use in other tools. Note you can edit both the specification and the body fromObject Browser.

  4. Click Edit to activate edit mode.

  5. Click Find to perform a basic search and replace.


Note:

You can expand the Edit pane by clicking the Full Screen icon in the upper right of the pane, beneath the Create button.

Compiling a Package

If you edit and make changes to a package, you must compile to save your changes. There is no save function because this is just a view of the object within the database.

To compile a package:

  1. On the Workspace home page, click SQL Workshop and then Object Browser.

    Object Browser appears.

  2. From the Object list, select Packages.

  3. From the Object Selection pane, select a package.

    The Specification appears.

  4. Click Compile to compile the current package.

    Compiling re-creates the object in the database. If the compile fails, an error message display above the code.

Downloading a Package

To download a package:

  1. On the Workspace home page, click SQL Workshop and then Object Browser.

    Object Browser appears.

  2. From the Object list, select Packages.

  3. From the Object Selection pane, select a package.

    The Specification appears.

  4. Click Download to save the current package as a file.

Dropping a Package

To drop a package while viewing the Specification:

  1. On the Workspace home page, click SQL Workshop and then Object Browser.

    Object Browser appears.

  2. From the Object list, select Packages.

  3. From the Object Selection pane, select a package.

    The Specification appears.

  4. Click Drop to delete the current package.

To drop a package while viewing the Body:

  1. On the Workspace home page, click SQL Workshop and then Object Browser.

    Object Browser appears.

  2. From the Object list, select Packages.

  3. From the Object Selection pane, select a package.

    The Specification appears.

  4. Click the Body tab.

  5. Click Drop.

Managing Procedures

A procedure is a subprogram that performs a specific action. You can use Object Browser to view, create, edit, download, and drop procedures.

Topics in this section include:

Creating a Procedure

To create a procedure:

  1. On the Workspace home page, click SQL Workshop and then Object Browser.

    Object Browser appears.

  2. Click Create.

  3. From the list of object types, select Procedures.

  4. Enter a procedure name and click Next.

  5. Define the arguments by specifying the following information (optional):

    • Argument Name

    • In/Out (the parameter mode)

    • Argument Type (datatype)

    • Default (value)

    To add additional arguments, click Add Argument.

  6. Click Next.

  7. Enter PL/SQL block you want to use as the procedure body and click Next.

    To view the previously defined arguments, click Defined Arguments.

    A confirmation page appears. To view the SQL used to create the procedure, click Show SQL.

  8. Click Finish.

Browsing a Procedure

To browse a procedure:

  1. On the Workspace home page, click SQL Workshop and then Object Browser.

    Object Browser appears.

  2. From the Object list, select Procedures.

  3. From the Object Selection pane, select a procedure.

    The Code view appears, displaying the source code for the procedure. You can copy the code in this view for use in other tools.

Summary of Available Views

Click the tabs at the top of the page to view different reports about the procedure. Table 1-8 describes all available views.

Table 1-8 Available Views for Procedures

ViewDescription

Code

(Default) Displays the source code for the procedure. You can copy the code in this view for use in other tools. Actions you can perform in this view include:

  • Edit

  • Compile

  • Download

  • Drop

  • Find

See Also: "Editing a Procedure", "Compiling a Procedure", "Downloading a Procedure", and "Dropping a Procedure"

Dependencies

Displays objects that use (or depend) on the current procedure and objects the procedure depends on.

Errors

Lists errors related to the current procedure.

Grants

Lists details of grants for the current procedure, including privilege, grantee, grantable, grantor, and object name.


Editing a Procedure

When you edit a procedure you can edit the code manually or perform a search and replace.

Editing a Procedure Manually

To edit a procedure manually:

  1. On the Workspace home page, click SQL Workshop and then Object Browser.

    Object Browser appears.

  2. From the Object list, select Procedures.

  3. From the Object Selection pane, select a procedure.

    The Code view appears. Be default, you can copy the code in this view for use in other tools.

  4. Click Edit to activate edit mode.

  5. Click Find to perform a basic search and replace.


Note:

You can expand the Edit pane by clicking the Full Screen icon in the upper right of the pane, beneath the Create button.

Compiling a Procedure

If you edit and make changes to a procedure, you must compile to save your changes. There is no save function because this is just a view of the object within the database.

To compile a procedure:

  1. On the Workspace home page, click SQL Workshop and then Object Browser.

    Object Browser appears.

  2. From the Object list, select Procedures.

  3. From the Object Selection pane, select a procedure.

  4. Click Compile to compile the current procedure.

    Compiling re-creates the object in the database. If the compile fails, an error message display above the code.

Downloading a Procedure

To download a procedure:

  1. On the Workspace home page, click SQL Workshop and then Object Browser.

    Object Browser appears.

  2. From the Object list, select Procedures.

  3. From the Object Selection pane, select a procedure.

  4. Click Download to save the current procedure as a file.

Dropping a Procedure

To drop a procedure:

  1. On the Workspace home page, click SQL Workshop and then Object Browser.

    Object Browser appears.

  2. From the Object list, select Procedures.

  3. From the Object Selection pane, select a procedure.

  4. Click Drop to delete the current procedure.

Managing Functions

A function is a subprogram that can take parameters and return a single value.

Topics in this section include:


See Also:

Oracle Database SQL Language Reference for information about PL/SQL functions and Oracle Database PL/SQL Language Reference

Creating a Function

To create a function:

  1. On the Workspace home page, click SQL Workshop and then Object Browser.

    Object Browser appears.

  2. Click Create.

  3. From the list of object types, select Functions.

  4. Enter a function name, specify the return datatype, and click Next.

  5. Define the arguments and click Next (optional):

    • Argument Name

    • Argument Type (datatype)

    • Default (value)

    To add additional arguments, click Add Argument.

  6. Enter P/LSQL block you want to use as the function body and click Next.

    To link to SQL Commands, click Command Processor. To view the previously defined arguments, click Defined Arguments.

    A confirmation page appears. To view the SQL used to create the function, click Show SQL.

  7. Click Finish.

Browsing a Function

To view a function in Object Browser:

  1. On the Workspace home page, click SQL Workshop and then Object Browser.

    Object Browser appears.

  2. From the Object list, select Functions.

  3. From the Object Selection pane, select a function.

    The Code view appears. You can copy the code in this view for use in other tools.

Summary of Available Views

Click the tabs at the top of the page to view different reports about the function. Table 1-9 describes all available views.

Table 1-9 Available Views for Functions

ViewDescription

Code

(Default) Displays the source code for the function. You can copy the code in this view for use in other tools. Actions you can perform in this view include:

  • Edit

  • Compile

  • Download

  • Drop

  • Find

See Also: "Editing a Function", "Compiling a Function", "Downloading a Function", and "Dropping a Function"

Dependencies

Displays objects that use (or depend) on the current function and objects the function depends on.

Errors

Displays errors related to the current function.

Grants

Lists details of grants for the current function, including privilege, grantee, grantable, grantor, and object name.


Editing a Function

When you edit a function you can edit the code manually, perform a search and replace, and compile the function.

Editing a Function Manually

To edit a function manually:

  1. On the Workspace home page, click SQL Workshop and then Object Browser.

    Object Browser appears.

  2. From the Object list, select Functions.

  3. From the Object Selection pane, select a function.

    The Code view appears. Be default, you can copy code from this view for use in other tools.

  4. Click Edit to activate manual edit mode.

  5. Click Find to perform a basic search and replace.


Note:

You can expand the Edit pane by clicking the Full Screen icon in the upper right of the pane, beneath the Create button.

Compiling a Function

If you edit and make changes to a function, you must compile to save your changes. There is no save function because this is just a view of the object within the database.

To compile a function in Object Browser:

  1. On the Workspace home page, click SQL Workshop and then Object Browser.

    Object Browser appears.

  2. From the Object list, select Functions.

  3. From the Object Selection pane, select a function.

    The Code view appears.

  4. Click Compile to compile the current function.

    Compiling re-creates the object in the database. If the compile fails, an error message display above the code.

Downloading a Function

To save a function to a file in Object Browser:

  1. On the Workspace home page, click SQL Workshop and then Object Browser.

    Object Browser appears.

  2. From the Object list, select Functions.

  3. From the Object Selection pane, select a function.

    The Code view appears.

  4. Click Download to save the current function as a file.

Dropping a Function

To drop a function in Object Browser:

  1. On the Workspace home page, click SQL Workshop and then Object Browser.

    Object Browser appears.

  2. From the Object list, select Functions.

  3. From the Object Selection pane, select a function.

    The Code view appears.

  4. Click Drop to delete the current function.

Managing Triggers

A database trigger is a stored subprogram associated with a database table, view, or event. The trigger can be called once, for example when an event occurs, or many times, for example for each row affected by an INSERT, UPDATE, or DELETE statement.

Topics in this section include:

eSCreating Triggers

To create a trigger in Object Browser:

  1. On the Workspace home page, click SQL Workshop and then Object Browser.

    Object Browser appears.

  2. Click Create.

  3. From the list of object types, select Trigger.

  4. Select a table name and click Next.

  5. Select the appropriate trigger attributes, enter the trigger body, and click Next.

    A confirmation page appears. To view the SQL used to create the trigger, click SQL.

  6. Click Finish.

Browsing a Trigger

To browse a trigger in Object Browser:

  1. On the Workspace home page, click SQL Workshop and then Object Browser.

    Object Browser appears.

  2. From the Object list, select Triggers.

  3. From the Object Selection pane, select a trigger.

    The Details view appears.

Summary of Available Views

Click the tabs at the top of the page to view different reports about the trigger. Table 1-10 describes all available views.

Table 1-10 Available Views for Triggers

ViewDescription

Object Details

(Default) Lists of the details about the current trigger. Actions you can perform include:

  • Compile

  • Disable

  • Download

  • Drop

  • Code

See Also: "Editing a Trigger", "Compiling a Trigger", "Downloading a Trigger", and "Dropping a Trigger"

Errors

Displays errors related to the current trigger.

SQL

Displays the SQL necessary to re-create the trigger.


Editing a Trigger

When you edit a trigger you can edit the code manually, perform a search and replace, and compile the trigger.

Editing a Trigger Manually

To edit a trigger manually:

  1. On the Workspace home page, click SQL Workshop and then Object Browser.

    Object Browser appears.

  2. From the Object list, select Triggers.

  3. From the Object Selection pane, select a trigger.

  4. Select the Code tab and then click Edit to activate manual edit mode.

  5. Click Find to perform a basic search and replace.


Note:

You can expand the Edit pane by clicking the Full Screen icon in the upper right of the pane, beneath the Create button.

Compiling a Trigger

If you edit and make changes to a function, you must compile to save your changes. There is no save function because this is just a view of the object within the database.

To compile a trigger in Object Browser:

  1. On the Workspace home page, click SQL Workshop and then Object Browser.

    Object Browser appears.

  2. From the Object list, select Triggers.

  3. From the Object Selection pane, select a trigger.

    The Details view appears.

  4. Click Compile to compile the current trigger.

    Compiling re-creates the object in the database. If the compile fails, an error message display above the code.

Downloading a Trigger

To save the current trigger as a file:

  1. On the Workspace home page, click SQL Workshop and then Object Browser.

    Object Browser appears.

  2. From the Object list, select Triggers.

  3. From the Object Selection pane, select a trigger.

    The Details view appears.

  4. Click Download to save the current trigger as a file.

Dropping a Trigger

To save drop a trigger in Object Browser:

  1. On the Workspace home page, click SQL Workshop and then Object Browser.

    Object Browser appears.

  2. From the Object list, select Triggers.

  3. From the Object Selection pane, select a trigger.

    The Details view appears.

  4. Click Drop to delete the current trigger.

Managing Database Links

A database link is a schema object in one database that enables you to access objects in another database. Once you create a database link, you can access the remote objects by appending @dblink to the table or view name, where dblink is the name of the database link.

Topics in this section include:

Creating a Database Link

To create a database link:

  1. On the Workspace home page, click SQL Workshop and then Object Browser.

    Object Browser appears.

  2. Click Create.

  3. From the list of object types, select Database Link.

  4. Specify the following information and click Next.

    • Database Link Name

    • Connect To Schema

    • Password

    • Remote Hostname or IP

    • Remove Host Port

    • SID or Service Name

    A confirmation page appears.

  5. To view the SQL used to create the database link, click Show SQL.

  6. Click Create.

Browsing a Database Link

To browse a database link:

  1. On the Workspace home page, click SQL Workshop and then Object Browser.

    Object Browser appears.

  2. From the Object list, select Database Links.

  3. From the Object Selection pane, select a database link.

    The Object Details view appears.

Summary of Available Views

Click the tabs at the top of the page to view different reports about the database link. Table 1-11 describes all available views.

Table 1-11 Available Views for Database Links

ViewDescription

Object Details

(Default) Displays details about the database link. Actions you can perform include:

  • Drop - Deletes the database link

  • Test - Tests the database link

Dependencies

Displays a list of objects that use (or depend) upon this database link.

SQL

Displays the SQL necessary to re-create this database link.


Dropping a Database Link

To drop a database link in Object Browser:

  1. On the Workspace home page, click SQL Workshop and then Object Browser.

    Object Browser appears.

  2. From the Object list, select Database Links.

  3. From the Object Selection pane, select a database link.

    The Object Details View appears.

  4. Click Drop.

Managing Materialized Views

A materialized view provides indirect access to table data by storing the results of a query in a separate schema object. Unlike an ordinary view, which does not take up any storage space or contain any data, a materialized view contains the rows resulting from a query against one or more base tables or views. A materialized view can be stored in the same database as its base tables or in a different database.

Topics in this section include:


See Also:

Oracle Database Concepts for information about materialized views

Creating a Materialized View

To create a materialized view:

  1. On the Workspace home page, click SQL Workshop and then Object Browser.

    Object Browser appears.

  2. Click Create.

  3. From the list of object types, select Materialized View.

  4. Define the materialized view:

    1. Materialized View Name - Enter a name.

    2. Query - Specify a query to define the view.

      To access Query Builder or SQL Command Processor, click the appropriate link at the bottom of the page. The selected tool appears in a pop-up window. Once you generate the appropriate SQL, click Return to automatically close the popup window and return to the wizard with the SQL.

    3. Click Next.

      A confirmation page appears. To view the SQL used to create the materialized view, click SQL.

  5. Click Create.

Browsing a Materialized View

To view a materialized view:

  1. On the Workspace home page, click SQL Workshop and then Object Browser.

    Object Browser appears.

  2. From the Object list, select Materialized Views.

  3. From the Object Selection pane, select a view.

    The Materialized View appears.

Summary of Available Views

Click the tabs at the top of the page to view different reports about the materialized view. Table 1-12 describes all available views.

Table 1-12 Available Views for Materialized View

ViewDescription

Materialized View

(Default) Displays details about the columns in the materialized view, including:

  • Column Name

  • Data type

  • Nullable flag

  • Default value

  • Primary key

Click Drop to delete the current materialized view.

Data

Displays a report of the data in the columns. Actions you can perform include:

  • Query - Enables you to sort by column. To restrict specific rows, enter a condition in the Column Condition field. Use the percent sign (%) for wildcards. From Order by, select the columns you want to review and click Query.

  • Count Rows - Displays a report of the data in the current table.

  • Download - Click this link to export the data as a comma-delimited file (.csv) file.

Details

Displays object details stored in DBA_SNAPSHOTS such as updatable and status.

Grants

Displays a list of grants on the current view, including grantee, privilege, and grant options. Actions you can perform in this view include Grant and Revoke.

Dependencies

Displays a list of objects that use (or depend) upon this materialized view.

SQL

Displays the SQL necessary to re-create this materialized view.


Dropping a Materialized View

To drop a materialized view in Object Browser:

  1. On the Workspace home page, click SQL Workshop and then Object Browser.

    Object Browser appears.

  2. From the Object list, select Materialized Views.

  3. From the Object Selection pane, select a view.

    The Materialized View appears.

  4. Click Drop.

Managing Synonyms

A synonym is an alias for a schema object. Synonyms can provide a level of security by masking the name and owner of an object and by providing location transparency for remote objects of a distributed database. Also, they are convenient to use and reduce the complexity of SQL statements for database users.

Topics in this section include:


See Also:

Oracle Database Administrator's Guide for information about synonyms

Creating Synonyms

To create a synonym:

  1. On the Workspace home page, click SQL Workshop and then Object Browser.

    Object Browser appears.

  2. Click Create.

  3. From the list of object types, select Synonym.

  4. Define the synonym:

    1. Synonym Name - Enter a name.

    2. Public or Private - Specify whether the synonym should be public or private.

    3. Schema - Select the database schema (or user name) which owns the object upon which you want to create your synonym.

    4. Object - Enter the name of the object upon which you want to create a synonym.

    5. Database Link - Enter the name of the database link to use if the synonym is to be create on a remote object.

    6. Click Next.

    A confirmation page appears. To view the SQL used to create the synonym, click Show SQL.

  5. Click Finish.

Viewing a Synonym

To view a synonym:

  1. On the Workspace home page, click SQL Workshop and then Object Browser.

    Object Browser appears.

  2. From the Object list, select Synonyms.

  3. From the Object Selection pane, select a synonym.

    The Object Details view appears displaying the following:

    • Synonym owner

    • Synonym name

    • Object owner

    • Object Name

    • Object Status

    • Status

Dropping a Synonym

To drop a synonym in Object Browser:

  1. On the Workspace home page, click SQL Workshop and then Object Browser.

    Object Browser appears.

  2. From the Object list, select Synonyms.

  3. From the Object Selection pane, select a synonym and click Drop.

PK*WPK.AOEBPS/cover.htmO Cover

Oracle Corporation

PK[pTOPK.AOEBPS/title.htm Oracle Application Express SQL Workshop and Utilities Guide, Release 3.2

Oracle® Application Express

SQL Workshop and Utilities Guide

Release 3.2

E12511-01

July 2009


Oracle Application Express SQL Workshop and Utilities Guide, Release 3.2

E12511-01

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

Primary Author: Drue Baker

Contributors: Marco Adelfio, Drue Baker, Carl Backstrom, Christina Cho, Steve Fogel, Michael Hichwa, Christopher Jones, Joel Kallman, Sharon Kennedy, Syme Kutz, Sergio Leunissen, Anne Romano, Kris Rice, Marc Sewtz, Scott Spadafore, Scott Spendolini, Jason Straub, Simon Watt, and Terri Jennings

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 software or related documentation 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 USA, Inc., 500 Oracle Parkway, Redwood City, CA 94065.

This software 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 which may create a risk of personal injury. If you use this software in dangerous applications, then you shall be responsible to take all appropriate fail-safe, backup, redundancy, and other measures to ensure the safe use of this software. Oracle Corporation and its affiliates disclaim any liability for any damages caused by use of this software in dangerous applications.

Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners.

This software 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.

PK@QNPK.AOEBPS/preface.htm7R Preface

Preface

Oracle Application Express SQL Workshop and Utilities Guide describes how to use Oracle Application Express SQL Workshop and utilities to load and unload data from an Oracle database, generate DDL, view object reports, and restore dropped database objects.

This preface contains these topics:

Topic Overview

This document contains the following chapters:

TitleDescription
Managing Database Objects with Object Browser
Explains how Object Browser enables developers to browse, create, and edit objects in a database.
Using SQL Scripts
Describes how to use SQL Scripts to create, edit, view, run and delete script files.
Using SQL Commands
Provides information on how to use SQL Commands to create, edit, view, run, and delete SQL commands.
Using Oracle Application Express Utilities
Describes how to use Oracle Application Express utilities to load and unload data from an Oracle database, generate DDL, view object reports and restore dropped database objects.
Building Queries with Query Builder
Explains how Query Builder's graphical user interface enables database developers to build queries without the need for manual SQL coding.

Audience

Oracle Application Express SQL Workshop and Utilities Guide is intended for application developers who are building database-centric Web applications using Oracle Application Express. The guide describes how to use Oracle Application Express SQL Workshop and utilities to load and unload data from an Oracle database, generate DDL, view object reports, and restore dropped database objects.

To use this guide, you must have a general understanding of relational database concepts and the operating system environment under which Oracle Application Express is running.

Documentation Accessibility

Our goal is to make Oracle products, services, and supporting documentation accessible to all users, including users that are disabled. To that end, our documentation includes features that make information available to users of assistive technology. This documentation is available in HTML format, and contains markup to facilitate access by the disabled community. Accessibility standards will continue to evolve over time, and Oracle is actively engaged with other market-leading technology vendors to address technical obstacles so that our documentation can be accessible to all of our customers. For more information, visit the Oracle Accessibility Program Web site at http://www.oracle.com/accessibility/.

Accessibility of Code Examples in Documentation

Screen readers may not always correctly read the code examples in this document. The conventions for writing code require that closing braces should appear on an otherwise empty line; however, some screen readers may not always read a line of text that consists solely of a bracket or brace.

Accessibility of Links to External Web Sites in Documentation

This documentation may contain links to Web sites of other companies or organizations that Oracle does not own or control. Oracle neither evaluates nor makes any representations regarding the accessibility of these Web sites.

Deaf/Hard of Hearing Access to Oracle Support Services

To reach Oracle Support Services, use a telecommunications relay service (TRS) to call Oracle Support at 1.800.223.1711. An Oracle Support Services engineer will handle technical issues and provide customer support according to the Oracle service request process. Information about TRS is available at http://www.fcc.gov/cgb/consumerfacts/trs.html, and a list of phone numbers is available at http://www.fcc.gov/cgb/dro/trsphonebk.html.

Related Documents

For more information, see these Oracle resources:

For additional documentation available on Oracle's Technology Network, visit the Oracle Application Express Web site located at

http://www.oracle.com/technology/products/database/application_express/

For additional application examples, visit the Oracle by Examples (OBEs) Application Express page, located on Oracle's Technology Network. The OBEs provide step-by-step examples with screenshots on how to perform various tasks within Application Express.

http://www.oracle.com/technology/products/database/application_express/html/obes.html

For information about Oracle error messages, see Oracle Database Error Messages. Oracle error message documentation is available only in HTML. If you have access to the Oracle Database Documentation Library, you can browse the error messages by range. Once you find the specific range, use your browser's "find in page" feature to locate the specific message. When connected to the Internet, you can search for a specific error message using the error message search feature of the Oracle online documentation.

Many books in the documentation set use the sample schemas of the seed database, which is installed by default when you install Oracle. Refer to Oracle Database Sample Schemas for information on how these schemas were created and how you can use them yourself

Printed documentation is available for sale in the Oracle Store at

http://oraclestore.oracle.com/

To download free release notes, installation documentation, white papers, or other collateral, visit the Oracle Technology Network (OTN). You must register online before using OTN; registration is free and can be done at

http://www.oracle.com/technology/membership/

If you have a user name and password for OTN, then you can go directly to the documentation section of the OTN Web site at

http://www.oracle.com/technology/documentation/

Conventions

The following text conventions are used in this document:

ConventionMeaning
boldfaceBoldface type indicates graphical user interface elements associated with an action, or terms defined in text or the glossary.
italicItalic type indicates book titles, emphasis, or placeholder variables for which you supply particular values.
monospaceMonospace type indicates commands within a paragraph, URLs, code in examples, text that appears on the screen, or text that you enter.

PKSS77PK.AOEBPS/index.html Index

Index

C  D  E  F  I  L  M  O  P  Q  R  S  T  U  V  W  X 

C

command termination
in SQL Commands, 3.4.4
Create Lookup Table, 1.4.3

D

data
exporting from database, 4.2.3
loading, 4.2
loading into database, 4.2.2
unloading, 4.2, 4.2.3
data dictionary
browsing, 4.4.5
database
loading data into, 4.2
monitoring, 4.8
unloading data from, 4.2
database definition language
generating DDL statements, 4.3
database link
browsing, 1.13.2
creating, 1.13.1
testing, 1.13.2.1
Database Monitor
I/O, 4.8.1.4
Locks, 4.8.1.2
Long Operations, 4.8.4
Open Cursors, 4.8.1.6
Sessions, 4.8.1, 4.8.1.1
SQL, 4.8.1.5
Top SQL, 4.8.3
Waits, 4.8.1.3
database monitoring
system statistics, 4.8.2
database objects
purging, 4.5
restoring, 4.5
database security
Column Privileges report, 4.4.2
Role Privileges report, 4.4.2
System Privileges report, 4.4.2
DDL
generating, 4.3

E

Excel
importing, 4.2.2.2
Explain Plan
using, 3.10, 3.10.2
Export XML Wizard, 4.2.3.2
exporting data
summary of available methods, 4.1.1

F

function
browsing, 1.11.2
compiling, 1.11.4
creating, 1.11.1
downloading, 1.11.5
dropping, 1.11.6
editing, 1.11.3

I

imported text data
viewing, 4.2.4
importing data
summary of available methods, 4.1.1
index
browsing, 1.6.2
creating, 1.6.1
disabling, 1.6.2, 1.6.2.1
dropping, 1.6.3
rebuilding, 1.6.2, 1.6.2.1
statistics about, 1.6.2.1
I/O report, 4.8.1.4

L

Load Data Wizard, 4.2.2.1
Load XML Wizard, 4.2.2.3
loaded text data
deleting, 4.2.4
Locks report, 4.8.1.2

M

materialized view
browsing, 1.14.2
creating, 1.14.1
dependent objects, 1.14.2.1
dropping, 1.14.3
list of grants, 1.14.2.1
report of data, 1.14.2.1
sort by column, 1.14.2.1
viewing object details, 1.14.2.1

O

Object Browser
about, 1.1
accessing, 1.1.1
creating objects, 1.3
Detail pane, 1.1
Hide Objects control, 1.2.2
hiding Object Selection pane, 1.2.2
managing database links, 1.13
managing functions, 1.11
managing indexes, 1.6
managing materialized views, 1.14
managing packages, 1.9
managing procedures, 1.10
managing sequences, 1.7
managing tables, 1.4
managing triggers, 1.12
managing types, 1.8
managing views, 1.5
Object Selection pane, 1.1
searching for objects, 1.2
synonyms, 1.15
Object Reports
All Objects, 4.4.5
All Objects report, 4.4.5
Column Privileges report, 4.4.2
Data Dictionary, 4.4.5
Exception Reports, 4.4.4
Invalid Objects, 4.4.5
Object Calendar, 4.4.5
Object Counts by Type, 4.4.5
PL/SQL Source Code report, 4.4.3.3
Program Unit Arguments report, 4.4.3.1
Role Privileges report, 4.4.2
System Privileges report, 4.4.2
Unit Line Counts report, 4.4.3.2
objects
purging, 4.5
restoring, 4.5
Open Cursors report, 4.8.1.6
Oracle Optimizer
Explain Plan, 3.10, 3.10.2

P

package
compiling, 1.9.4
creating, 1.9.1
downloading, 1.9.2.1, 1.9.5
dropping, 1.9.6
editing, 1.9.2.1, 1.9.3
finding, 1.9.2.1
grants for, 1.9.2.1
object dependencies, 1.9.2.1
package body, 1.9.2.1
related errors, 1.9.2.1
viewing, 1.9.2
procedure
browsing, 1.10.2
compiling, 1.10.4
creating, 1.10.1
downloading, 1.10.5
dropping, 1.10.6
editing, 1.10.3
editing manually, 1.10.3.1
finding, 1.10.2.1

Q

Query Builder, 5
about, 5.1
accessing, 5.1.1
Conditions tab, 5.4
creating joins automatically, 5.5.3
creating joins manually, 5.5.2
creating relationships between objects, 5.5
filtering objects, 5.2.1
hiding objects in Design Pane, 5.3.3
Object Selection pane, 5.2, 5.2.2
removing objects in Design Pane, 5.3.3
resizing panes, 5.3.2.1
Results tab, 5.8
Saved SQL tab, 5.6.2
saving queries, 5.6
searching for objects, 5.2.1
specifying query conditions, 5.4
supported column types, 5.3, 5.3.1
Table Actions, 5.5.3
View Actions, 5.5.3
viewing generated SQL, 5.7
viewing query results, 5.8

R

Recycle Bin
purging, 4.5
searching, 4.5
using, 4.5
viewing objects, 4.5
reports
Data Dictionary, 4.4.5
database objects, 4.4.5
exception reports, 4.4.4
PL/SQL Source Code, 4.4.3.3
Program Unit Arguments, 4.4.3.1
Unit Line Counts report, 4.4.3.2
results, 2.2.1

S

scripts
creating in editor, 2.3.1
deleting from editor, 2.5.2
deleting from SQL Scripts page, 2.5.1
executing, 2.7
executing from SQL Scripts page, 2.7.2
executing in editor, 2.7.1
export, 2.2.1
exporting, 2.9
importing, 2.9
results, 2.2.1
SQL Script editor, 2.4
uploading to another account, 2.2.1
uploading to SQL Scripts, 2.3.2
viewing repository quotas, 2.10
Security reports
Column Privileges report, 4.4.2
sequence
altering, 1.7.2.1
browsing, 1.7.2
creating, 1.7.1
dependent objects, 1.7.2.1
dropping, 1.7.3
grants associated with, 1.7.2.1
session
killing, 4.8.1.1
Session report, 4.8.1.1
spreadsheets
importing, 4.2.2.2
SQL Commands
command termination, 3.4.4
Explain Plan, running, 3.10, 3.10.2
home page, 3.3
transaction support, 3.4.2
SQL report, 4.8.1.5
SQL Scripts
accessing, 2.2
creating script in editor, 2.3.1
deleting script from editor, 2.5.2
deleting script from SQL Scripts home page, 2.5.1
executing script from SQL Scripts page, 2.7.2
executing script in editor, 2.7.1
exporting scripts, 2.9
importing scripts, 2.9
script editor, 2.4
SQL Scripts page, 2.2.1
uploading script, 2.3.2
viewing quotas, 2.10
viewing script results, 2.8.1
SQL Scripts page
accessing Manage Script Results, 2.2.1
Show Quotas, 2.2.1
Task list, 2.2.1
SQL Scripts page Task list
export scripts, 2.2.1
uploading scripts, 2.2.1
SQL*Plus command support, 3.4.3
SQL*Plus commands
unsupported, 3.4.3
synonym
creating, 1.15.1
dropping, 1.15.3
viewing, 1.15.2

T

tab-delimited file
loading, 4.2.2.1
tables
add column, 1.4.3
browsing, 1.4.2
constraints, 1.4.2.1
copy, 1.4.3
creating, 1.4.1
drop column, 1.4.3
dropping, 1.4.4
editing, 1.4.3
exports data to spreadsheet, 1.4.2.1
grants on, 1.4.2.1
indexes associated, 1.4.2.1
insert row, 1.4.2.1
modify column, 1.4.3
remove all rows, 1.4.3
rename, 1.4.3
rename column, 1.4.3
report of number of rows, 1.4.2.1
sort by column, 1.4.2.1
statistics about, 1.4.2.1
user interface defaults, 1.4.2.1
viewing data, 1.4.2.1
Text Data Load Repository, 4.2.4
text file
loading, 4.2.2.1
transaction support, 3.4.2
trigger
browsing, 1.12.2
compiling, 1.12.4
creating, 1.12.1
downloading, 1.12.5
dropping, 1.12.6
editing, 1.12.3
type
browsing, 1.8.2
creating, 1.8.1
dropping, 1.8.3
grants associated with, 1.8.2.1
list of synonyms, 1.8.2.1

U

Unload to Text Wizard, 4.2.3.1
Unload to XML Wizard, 4.2.3.2
Utilities
Data Dictionary, 4.4.5
utilities
about, 4
comparing schemas, 4
generating DDL, 4
loading data, 4
monitoring the database, 4
restoring dropped objects, 4
unloading data, 4
viewing database details, 4
viewing object reports, 4

V

view
browsing, 1.5.2
compiling, 1.5.4
creating, 1.5.1
dropping, 1.5.5
editing, 1.5.3
grants associated with, 1.5.2.1
objects referenced by, 1.5.2.1
report of data, 1.5.2.1
user interface defaults, 1.5.2.1

W

Waits report, 4.8.1.3
wizards
copying and pasting tab-delimited data, 4.2.2.1
exporting contents of table, 4.2.3.1
exporting text file, 4.2.3.1
exporting XML, 4.2.3.2
importing text, 4.2.2.1
importing XML, 4.2.2.3

X

XML document
exporting to, 4.2.3.2
loading, 4.2.2.3
PK_llPK.AOEBPS/img/o_brws.gifTkGIF89al>tTN|$V424<cԊׯ`ÊKٳhӪ]˶+"/ᶝKݻx˷߲r[KÈ4ǐ#K yOƔ3k̹ϓ-/MҢ{b>qoiVL۸nD N<$rv]УKNxr I½Oܭ+M=t.M}-}Rm$ 6ʡd fvJHCTF(,0((E#t!y$/U9%T F`6(iaiYMQtivě5柉)lOiyOF21e[FJw:y(iJ,J`(IMz4J檫_j9k2WTWbdDziV .k-*묳vZj Y)M[L \QSno0pƛf.").T؋("/Ra /2r ȻȄ4k`j",SFn*Iiϛ+tϮktX.9-nlQRJ&4Qmri;XuC|oWX| DZG,FKpp%`4R#`T )777yWw\5 rknMl\47:7L+m:@7F-Wz; ︻{b| |CW/G3 _|G߽<Ƌ߼΃o{O>_~4WK_\ыGBK?ő pI@ь-E,؋+x,c  O؋ 2VBǽO|!7?Q{ǻLՔ [OЀDM-hHYGEh3mBC H1 8cɨƀfd#!bc՘F81k 8H@ ҏrL$!9HDz D(&@ᒘbQL$d&/IAo ){AVBqBKqɖPJ Y.+aKR8pt_HBR&4HJROehR]8E(nI:-Oi g+Ӹ*b ciHG*2֔2[r|:,d5EVtCЊZ}=z~X;ڒhK;#)/R$NsӘt(iJ=j~ DcC)OC^tYulMRКEk=+X gIֲj{HZ oU+\״unkּu+]jº lbkXֱ״ujC0f7Y#-n;W慯{׾%HxwUz{]N0֋0,~/?`  0+GB4 1C @^◿80}lGb@^x1HN`d&/Nve(+jX&|e+'2Ͽ͏cDdg~NBhKs Xx7'+ v؁ u7XiM!*,؂.0284P8:<؃>@B8DXF7xJL؄NPR8TXTkłZ\؅^`b8dPhjl؆npr8tXvgxz|؇~8Xvo؈8x؉8XhpЊ8XxXn8XxȘ،8XxؘڸȌ8Xx蘎꘎k8X8x؏؋ay ِYyّ "i9&yy*,ɒ(0294Y6yv<ٓ>@9DYFyHJLٔN?)P9TI#TyXZ\ٕ^IIaddyhjlfٖpr9tYvy/v|ٗ~9Y ٘9Yy{ɗٙYy)b Yy9ɚٛ9YyYٜI ՙ9ݩYYyy|yɟښɗ@W p)@@RPJ!ʙ` {y~ɢ Т'zz韣>@ʘ9#ZUd [[ Z| Сq :VʘG 0 0 *ꢏ +* { @ Aɣ:Zz ɨ:*򑠚 s 0{y0{*Bzڗ`m~)Le @a_Jک@QjOJJUJxJ*Pꗭ~y { ( ' J ' | 3sʗ,zJ p JP j* ɧ駟 ۱ "˱pډ#*,[{9cj:F;5ʗ A`}^ڗ*ڳXJ: 57[P^N^T]{bī}9E{}}) ` k P@1*} v' ~+ ` `۸KK {к0{+ZƺJ!:  ` MJQNϫ«Q[ڷ.j}K䊧뛮3Z +&w+@{ w랥 J;[%;[nKڗl|2+,lkDkH뗂мXk+j I+̽B XZ:M1,|9ꚯtZX,\ ⊧pھt* +p jY\ l  ILY9cQ ' JEDŽȁ캃K-8ɵJLcꗜ,̽MX*O*|̗zk\T{ɿ zŐ˗Pw;̈9Y?Iz{9jJL˗ l ^<ۤ[P;k;-_:". ܺ|{7ksӼʵ*\z*?},؄DM"ȏ̻8*,͊FB+K+^0z0=۴-K}ʵ#m):j̯.  ;iܹ;-: Jh* _]j͝lnм<~ƻ0Ф]؊m(mڌحίeJ˴µLܡZ.].ϳ3V$,ڲU%U(.LᎬ1yߒǓ 5V⻫:}D3MTL8NOZ[>ODN3Er؝O$.qi ~x^C0]O.,^UlMp}d>k!n"宓g.}-ذ{t6Ο.'f^NhJb n:`]wޝ̭]۞zǎIJnNldbϕZQ+ԜZ-+QOWNiUӞ2?4_68:<>@B?D_FHJLNƩa)T?{㗀b-cΙZ V?X_i ws_z{ogq,z1z}>_ߺ&[5^_>Ayxo_`ŸpS?Oٿܟz^$%m?/_c/$K`1 DPB >,D-^ĘQF=~RH%MDRJ-]vSLмs(=}TPEpTRM>]TU^ŚUV]~VXeBVZmݾ-)|7&^9e,٤ zXbƍ?YdGѲ( @fΝ=Zh4нWu/8e [ijmƝ[n޽Ŷbjō ="׵Nխ}]vݽU;͟7@sͷ `xǟ_~mE$P/^`QC/6pB /0C 7C?1D?űC1EWdzyFo1GwGaa%΃׆%dI'2J)J+rJLl˰$I'1,LL3DLR'0$s3O()3O/A$F%QEeQG4RIm!#R*?5TQeBTSOE-;PW$2D0̕8b[}-,&DFW{ =KX7\q%\sEwJ/m"cIF^{㋸$WeUj-j )8u8&ZƸ>k VС,tGsdյTAsp${g^P}Kd5ce-UׅnX8U8M, jŶcn%o8\>O]05}Yޚ߆s>ug.4β*-uO_51ՙP5CԐEhB!PdBrE 9J-`*ٹw3,F63DKgEBe:S*ƉPCe4΍ԧ?;2u-O}o`jojVD2c<jXږ'Ϧ3vm}*T[aNwk^Φl`;XְE`1q eչr4iI/Wvu^E;ZB%TZֵֶmle;F 0k@6rַTAK׸=C4׹υnt;]V׺U6=0I;^2zVg-(rջ^Ѣ!M|;@+ ޞ->ޘX`ԅQE ` K 4awqE)C>@|@{?^g2I߄"rPI! e{ ב:׭9@pKhP#٩> gО8BPף4)z8R 8c œ %hMxK &!<,[:⠽#s?+AQփ[ L(^#4,@T 48#|?% !<;>$A?&<'t<-"4R ,0;Ⴣ;?\VWEpŘ F\dFTTE]L=4AݻF #$LTd ]p&D?nRL=q$G+s|FH=H Do+F^GWskGBp\^XnDˆ,mTHd=eLB4ƋTMAw<ÁxiGHhpFSFis=|+EHQ؃+˃ыP- ^eS\,(MKK=C^ȃ=C0d4^PLHP|LES$E{l;<>B\*=UTHͽRRM}T2 $TSջ>,J8Jl6Հ)xP U20;=t[PkDKet#zKNKF8FiLN;ImKDS,B,;E$ H,VNCjwpWxVV|V}W0kVmӁ؁WqT7 @Vڳtш׉SluX؋ Y5ؓ]XH؂ՋAP׍# 8P'M 0]9=p=Ȁ ,\ZՉ֙Qd0}tuTP#5C[˲R2<l"%ԊAC]Y{$*DT=ܘ(ܸ5nׅu[T%l|Tٔѿ5\ UN[u-IEK܊THmEݶ]-^ zYբ YmE0QH ,V  \-=@KJ,ݝR\;_Ƚ@MŤNDMa)- &]pP =Pd>>-%@map# =4#nuXv eU}⥹6t$DDJPKmte^O WV[VGcehsfȿUFe JSueh=ҀbcSVy`N;AoY![JPecDk ^HMJ0?1c蘀6f隞Nsi짓6mUC:4Vfj+[釆3 ʣj@jOs&6kSVfk-٠hH{뺶k74!=&~jj6 Vf^ƶF6.VlϮ긾lwlFmfI$lN3Ѯؖmk&6FVfv&&m;&6FVfvn2rom{8IG\!32/{.ߕ7$:|Y$i0_ppÎXmخpIp.gpnn  &wr0q7@R`'-2)$p.73(/q0(a*s9;'1;=?1=?@1B1CADg>|c#o`ʣ8?A:$orNt&s(Huor4)XYZ[\]^_v]#ЩtL?Y.YvhxnJvUvVtˎr87KGMWkgvrwvsvtvuvqvw vb_rww(x8xHiz{,K7} 5J"׃x؊Tx߼'xIޠH Oy2 yz(vtU_z zȄ yo7O{O(w3QMHy?!z{Ib 7jO`U/ W|9!|G?y7y||Qx|o/w|Hu/ӷ}xɷ ٯ|w }}Pv߮{+,vAyg~:=xsyׂDЂ2Az{' ڭQ$=0`pC0$ԒH -$ ʸ^"Q! =at8j3^pJ "pD +tG!G E5Q6&{ġ41eiS^$L2Z$eNiړʎX fC*ZlFЫY1X.7ɹZ8ƅ'qwÈ Z㔩 yJFY{Ik8^zIN`Գ=wsx<ӯo| :W[$7^iaZY&<ĠNBWNe8a%(MV``au4QaAFRGI]vP!z(B!*bAB&J;*X蘅6a>&)"-vc&TP0 m0TB5evCCd[*q$ xmQ0)Nj8'A)䄓^g[P Myg&RPlD6:$qs+۵wxa9k,wl1yuzkr*7"$,n8Uf&C"mi?% k$JВ[ iĮN1hZzO|;,qӺI'鲾<p |iJx30[)̈́YOdI3ĊMŌDræ%V ^{BȲ-ItMym}\ILu\mo xȒ{JMYLҚ0W_®T%~_~z<袗L\ê\O;Лc;_B3s=}ԥ΃{ׄ"-{nk;Ǻ7w}RֳoWF18L F&ѮDpQlE$DYI 箧 wlHdLM0_^D ("J(J To&~Px"P0Cp!pP^FqQ$8ko2萇>tC8 3zbO(+ʆYQ(G+bhkfXCx1 IS8(7;"%HD{Rbn&AfY"=9o\cq-nfC,ӆXMnVy-~e@­%/9\N(!XHƒT㽠~Mq4K iFmiJPr\ȉY$9)ǤӚ̦;Ehf93NfDyʫ(0UN33ypABÅ TB)=r6eEqA3A9 jNr23hhV] Q5zGT8,N)>nJ->F]֯f(̨nVފɕq+^zom,ګ_Xl~$`_ؼ vMHQ:VuVZVY_~ֱ~&0?V+ĒZ4vOm{-f[䖰LSodOҖ|jwYZF`wVZRv{M[|[߽o[~ș`րe5//Oجχb ˕nU{?ĦMLLAи61s;ދ,!5%'L~2u(CyTl-k9\2}l_XX)v1]`ɘn~3,9ӹv3=~3-A#lϜEG}k3#-ISҖ43Ms1t)l3^s Uծ~5c-YW5#]׾5-a>6eRu-iS־6}k‰zl65ϋjrA;>7ӭuvӒp{Fx}7nuu}߮7M;`;8#.y7\ 8C.\UQiٍ/w* Ӽ69s>9Ѓ.F?:ғ3%:OrZ/,#@Z߮y#˯bݫV7oߎW=@:.}vSNvm1{ٳq kivK.p !S<3s/Sݯ>^޻?$?Z^Go˻?>JթwufAx%%=Dm v~ vhiUuQM9`- j Z  V ! *^g^.Ea!5Kn!v~ ! r^w\ɒgz~h Dh : !v h5b#n`""b"fqyQ#jH-b$%@!^(2"A `b]] B^   &.##.#("4N5 :c,N&fcb7!Nc5Z}#+.# #b."zU-Z?қe!qd\"x#43d A<<>Ev3JbF>$FJ$FV!$d1&&!|dI>"dHjd!FZ$2"JFA "G:PBLV#'^cO'I O$QQ6UJ%9^CrdGdDNdEeRGdK$ P#-!%Nrգ=F.V^0Ҥ%$BvPN$N@R*&Fj,"&:3B&cFSNb9erf&&f !#^< "#*&g"9"e"V.i&kfWgfeRJpfi*"fp g;k2c.&dbn>#Hjkc#:#qlJbvn'e]>\^s_]ŢrrΧ8Edn'%V~:dK(8B@2@rg%gh}:8*cgW(Vf Z' hj$-:%%.bhy]&>G_ |b^A$w~b;dChrJZ2h,ipbs5Ni^()'a%~cN^\h'^ **dJ`V41$abiW#}ZZmg2m, Ώʭ-ҭzr] u!^|mfn..ᢛ\* N@+ *Pr.r~Ҋ핖t-UYZnԾ]-/6>/FN/V/.ԅn>`E塴o+ ץnv/xM!Π> ^XoB^ůJ]- ߩ ^!0w//pѯ-/!V+m~0 װ M5p]U *0{j 07 Dp>10.o1pKv[)11{~1;0o$.ap ݐޘ񪉱 '2q ,29V0zr Kb!m5#wZ)GXo} "M#.urޡ.r%s2U`k*o$*63?34GQ3'ӛ.!7nbڱ/ 21&p2;\+9'X,khcp0?d^,1s`!:c2-A7l5-cr V?h@07AB's$7}s'k4!r&S :ath4KMII4-{Q3J`q4>w`-xRPUQ~5}t%mtX55YnBwơvo 2*oS\#\ &6\ Y34Ap4q4y4e+v©uD36hv8cR_G_CKmvOviYdsp?0| g75n77nni8 rWکw[3ZaOshCwtYo6 W6qvsg pa7~~77ywJ%n[' {h o5ag _xazuNW`s5Xq-a7kMwVxڌxP8b79Sx}׶?UC9ѷ ;oKRsy1y {H3ǹyv1yWV빀qyE?w43]/:zykUbyt.G tr;V;:̞sq@y4X.v4UWuyUx# ۱+[6zu 36w3^tt|ϳ-P{&sE?{ukW?>z_t-{/C; dRC8'"gF>Oϖ<܋/kUϡw4wV;oZ;~N#/|K!{ջ?ž~g _WJ ?k:k}]{8usc~W?';Kǿ?׿?y[5@ %@njRpԖ^!F8FbE1fԸcGA9dI'QT%E/aƔ9F 걨3bB?:hQG&U҃O aǩMfպkW_;lY7kUmۇh?")q[wջ0*ԧWVxoaÇ'VqYn!G<٦Ȝ;'6ּ߾R HsiӧQVm1eׯalQ.Rpֽwo߿>xqǑ ϡmsuuױg>;vwCrxbџfٹDI?~}AŃ׿~ZnI"!P1B(<Cփ Al(~BQEP [\(QfdE[Ff\QFSGpTqF"y ')m$9 -2Я,qc|H3t4ls/4ϴN373&RлCS* #2/A! 1*0.G\TSN}O$TT#e =OsI"֥ET]Ҽj$H5HP HbsC/TLꄭSQ]TVO3gEVݩ[[hZuYЈZi+bud;vl79^8PcxޘAWIf`#OadL!O"W=U4MY[X^x̓d֭1SCtұ/2}XsU}&ݢGLc㯟m49'} |]& ZPfeg b? Jf{~W,1ko a8HA4!HE.t#!IIN%1H8ʑ$cxGъ)QʵlRy؜̒-q |(LհҕCazMiNȘl ,yi6NX(d(4i|:O`,(tәL>֓A&()°SAB!Pzf|7c`2e·'~%cL ZY]ؽOcki$Չ|GRr D ڃyh /Vյ0EBl3xpjLCea2YR:Ϋk`]Xk+џuef-sg.cUMEyҲ~ʵ,SGﺮkm,{? `Bu>Uw-oѥ pk ;ݥkl^Q8}mmQ$cQ=K`I] WV]BTp`X08c836O3wd%,+ҐZnrQT*wo cخ F![:x,)HF(\rcHҝbW`%t=9uaW@[+_%wKMD+f|rB3ݕZUq657i}1z^ I@WچV5wӡq=L/񯏞u %]ysԍp(ЎvC}h;ov]d7PhܣOC9ֵxqazm`X8~n]~ .y[/!@8nxI}x?wy dܛwAoBxO_곧xO;|>G?.cAԷ?aq'̈#;n O.o> J4PE05pm*0Ԏ`O7pݭ.6FpOM5 0D.naJo In@&|Do0  {o Ʈ0^0 A   ǰꈮLʤِxŚ11-Oh1@ pQIT05?8.L;) ]Wzl5$Q}y=1Z z*|qf kkM#Q-PQ170Qq;ֱQb.  "Br& p#R"A+02#c9 =C%b$I%6R#R%qWb2L[PHƪ'/L F %c/r2*&wR%fRt <촖ꀬ\J)O%Ϥ2-*Ҝ r|xJqά L;j,R-StRt*p.#6%g< =:/ 20--$zR}ll"S2-s533s$ ,}BӀ2+/U5Y5_Ӡ +i+r<~@&7}2{b)LN23,4  =s=ٳ==3>s>>>3?s???4@t@:-"i7 @A!- xd1(:4B9C=S22?DQ4ED2!4pDl{@EmFg3OCFqGQHH7Jt%GItT׺A{4J4K:oG;dBLKL#I"L"֔MMt0tnI)LT%$M{OIbOtPK_<Q9bML#P"QQ+MO%RS#5MTR-PIP*IFwM%U?SŔL9VaSqV5RcuTsVTH 5S0y3JHY}ѦEU꾔WUgWu[uT9"tRoWuX5Ju9g4sDʐFZ;QQ7Q[;_ɵ_u\"\]5_\ F37#6k|LPtQ[ _UWaWvS6c`ECs8]kp["Ri`mUT15[EU[;Zc4XGh3a{la Lej^V>&Fjdu ays7c)PMl6mvm6TtS6nj54s5ɰF^QuJpd;C,+hٱ%РPxӧf &ͫVNJEQ8SҋUV =4 d~H-W6Zqڳ^^֦hg*VĀ/?xpe"K#ѾtodmEof.u,;R̢=g3}|*ins~u֮sYq~-6Ɔsf^fۚ{ge83|Zou@]YUVwug?dAu\WsW~_k% xpEzr\whdm/18uvTZ!؎aU㍷`6UE^qhArWD^3Dck!'4u矀g砆&h\.4 餔z# d馜vi:ƥj**j문*+k&6 Vkfvk륺+.H1vnĺ+ kޫoo+lvG,Wlgw ,$l(10|AUh{)h ~t23p:rpIP{˻Bx4Lbà>aDt"v)Cˠ Ƿ"p#aň3 J}y "0xj+&2|b/&1EB?~Db!HT\bqF1$ (ɜ1($y񃝳/2$eM9"PH [vt"9QVύ%&;y7|C&I2ƤfL%2Lc,B-n\e3J#|24MMӞ&:m8IZQף31Y˩MixPQFHFd,i,XC>TRLVMz| \b%X M1EWt~-JM6O!g*QթBYM0iЬUhMZJV9*\vιrvdAVS4 `۵Mbqd'Vîᯔͬf7{8Πa* hGKҚMjW쵉 ͭnw pKMr:El@ZͮvztMzn퍯|K}pr2NK`ǂ aVy[ Om0kضG=P78k M]{X̽i<; 0 GB^C<wx2e_<ֲd13M0Lf;Yb<E1L8ǜm~s|g=`&2LJ=_Vr7?ZP3GhMzƒ7L<mI\ACZDYMa:n5f+u^Vvl.ƴPMY;{vcv]7Mz[η`|x|-%8Ɉ'Nɰx{ 8GN򀋼(OO\,g8/G\bѢye;֑NpO/MG֚>C}^5^eY^:lyS갟rtSn-pp9f2ɌvV=̉>mwoύxx:ܐqMk[F3mGߦ{Oo2eg6uQt~s^39{[ҿspO/Om qqO_ɟ}8xsx r Xr;t W}E|k?wn7iܖx6~{s'QWrEWtU'{C_,w>ut{Sf|TvfyGyl+ȃ^"n:zxi5jyzvZxcns7(x-hnQ_/x^gzZȂfwYndH}Whes ltm_kX.xsixm3HnlxE8 l6tr rxg抰8~w8 w!HXm8fxhbɸΘ`8yTcxvrX\wXnGۈ|Ԩ|aHȍ荕|2&khyXIdpfgDwxj{HKXnx_0؎ fw_;'v YoG!l&y|XX_{}mkHzt{^Hx{W&|b]H}x8X6no.|{n54hyH`OIj?9gׇmxf'yy%8֐xpm6tItOx^0yaF娈8ؗ~YH6𥘎a]yЋؙ=YEƗٚ򅚮Y8uY8uB`vȚlS[HdmwHga):ֈ;utӹ9kHm\YɁlu=yyYy;֍ a9_ɛ#hg'plǘWyȩwʹYg((*_Ǡi7vDhx*k)Y:#9i'VhF6:a8ڣ@*B:YFLڤNʤR*HYV*X\^bji|hj.J)8Js-e&h9ɍkwkW:pY}ʣ8^Әʢ3W~*`fi`uZ {z*s^g:9lڟ9 sZ*\d~̊Z˸OڭSpzZxJ꺮خʊh{T/ߨ6v>!k%٫9Iʡ x}*; Inj\ɫ{[|0*: ;G臯vIhN٪)[Dzfȉuywg+kvk_}!ٲ:yH9;5{X"1nYuז+=^Rkc^a&ʕN{WPk]uȒAZ:X {Z{⺺~[w[~ᷫH\s?ȅ*mh+u@ᖸǧ`9g2J+zԹ|Et`# y;jۼsew&ص{Bڰ4JkT[ ۄʖzZ ؛"jbr9^qZ@ڻ,}.2l}4\8,>@|qźD\79wH:ĉN,sP T۾%\^^nVu_xl|<2ۜh״s,F'ʻ̋縂z̽zJIiƁXyeEظ. >^Ǟ~I 6$4`zAЁ5>^ۮC5`|!~3P^E xS8^>O>N~^PN"w o>"/'rA'V0/ *_u1_Ӟ_S?&rFZKN?QRO7C/ O:/l^[o^7@_O|Po-n`/z9 =oi>NG~??uH2oU8o_Do.y]b_odY iFO"?\oͯΟ/C.r^0G0 V\]'Xߕ]+XVL99Eڤ$l6#v_pX5gtZf+ox\>wn[}@ABCĮDFGHIIKLJOPMOST0SWXYTY[\Z^_,`b`defghijklmnopq;PK.D*%PK.AOEBPS/img/qry_bldr.gif=ZGIF87au܄||Ԕܜܬ<<̤μʴƴƬҼ̌䌦ԬԴLbԼ|||tt|$V>tN|lԔdLrĴLnlδ̴|z|trtܼܔ䌎|T~d|dfdf424¬ƴʴҼ,uH*\ȰÇ#JHŋ3jȱǏ CIɓ(Sf ˗0cʜI͛8sɳϟ@ JѣH*]ʴӧPJs@Xjʵׯ`ÊKٳK]˶۷pʝKݧj˷߿ 4/È+^̸/ CL˘3k)yϠCM0 RdM.S گe+mw Nxgo]w0L^|+u׫kq̟?W>>jݫiϾ={ó?A7O|y~hf}_k'uFEH`9grt E)Txbz矍nx㏱8]l'nDgTVy?Ѹ$MF#H ikHB܈g)Xfzozg>9'n⢃6huf^MsBy)GnhzZ_]6n*⫚J뭸+v+Zk&[Ӱg,[>+z1kVԒmvemWkZ-m*%Pk/,l' G,WlgwqV$l(,@0,4l8/@-DmH'L7 tȐD-TWmXg l`-dmhulp-tmxn߀.n@7G.Wn_w砇.褗n騧ιߪy.쉿Ngo''@G/Wogo/o觯~ȍ/o HL`:'H Z̠7}bGH+&L W0 CV8̡wp H"HL&PH*ZX̢.zR!1hL˨6pH:Qv$">q~ IBp#"kE:z$'IJZ_T"N (GIRP STTe YCв,{xK"(La0E@ iJЌ4I!rl"#|MY򛻴-f3$69dsdj2Ҟ̧~ @JЂMBІ&\7sW28dFu^V4E' ΏR%9'Ҍn4D2gjLwӆ|L۹z֓@}'ϢK"z!'MHUiҖth8z ,(UYґZUVFZØ>OӸ?\GIԣ9LKMb˒ B0 d TC v hGKZ6le/n֩׌XJ֪YMD*βֶE)9aTk^ۊ2Wńrܽ.e+~ Xˁx ,qp~Woik^@u/|T얶>X1zbT o'`µ .psVծ65f]?\Un(Q%^z96Nrqc@2KU5m[Z4*W|e+SsK><+uULϡy<'L5@XBІ6ݛEЏ.!ACi);U}pZf"4Dv٫NszȰ5qa^apxPwy{VuMӌS9Vm9+z"ЅNw]vt>*p@ #7i\h57(a߅/ }|`LRa+6w1LKb:3\j"̕n|S9okwǑԽ&.ύnD/vq aR:[ ;>SiEWYMvGGNԩoOCt~=r+W>|+Lt;FWvH8`oԥ̓vpGě__zWoKgw]Zd^<]`Hr]{kZxȗGa<}; @:l><2puk̤? }Ƿdt׎'}kIǗ|TCcw~ʆp֧z'{k,qyK͗~Up\׀~6'7}v}qHԃ>!WlVRgoK*hyJ?fQXL(gjEVeBx&jv jth2w0U}RpY:8h|؇~8Xx؈8XxudJ_RT(YOZxDE7c'8Z(({.v_RiL8EE^7Uɸ{⍍Y(qpZupD83税Z:؍(q!XTwYdzy풉UPuyPؐ"&F!$i+9y0D) -#Ycq:<ٓ>@)3y7;QF2SN”uR)VyZ*TIYb-]9_)g9jI%T)npr9tYvyox|ٗ~9Y٘9Yy9>іؙ-虠IYhٚiX!YZ_ٛ9YyșY=ʉ}ҩdYؙٝɜ@B:DZb05pX:ʣFPHŢ88ʠ24^`:X30P[a0*ZXcZMjZy.xz|ڧ~:ZJ٥aڨʠ3ZXVzXz9b pbOѪ*y"I bZzȚʺzP:j Щ6:ZZz6ڮP5U:h +:/a51{}k} « :Kz˱ "+*b {)+,$ u6xoP9}-Ⱞ )[F˲+۲L˴/')MOJ-!E21xP)IGp+ITSx{"P0{[v{ ت54~@5tzPuаJn۹(R˷x۱zK[0  K{z5zp9y[ƫI[ʻ[ ʛ;ϫ;hk;˼ۻ24K}л6DXE`z{ۼk {k.כ|o໓z ɶﹹ"`ԛ'l[+% XZ\KX^kupk+N४-<7LŲ*2нbpW\0˸431y54kEkP\v|]<6¿a, 50,[7lÈY+nvkoPwrt|Ǡldž<Ť\ʦȅǦ',ܵ3o`]Pu`w` ? ¡<:ʬ|̦<Ǭ̄-@,ɵ^`%L䜽< l٬ܨZ=<r < qͪyY cr"=$]&}(-80t0pX )=4,|^~-ޤēk9ᢱ..ZNᠵ,і0㎉X&(8,.@q9^䊱=.?%B@YZZ nX^ H~?,?_^VY۱=nc;6Q6dXp'zNl]?nifuW6^}^vjqӨj~v,} ׆NJfoVwW[cwvxބ6j.(׷Ⱦ?tWu'eSA^mA>؂,)ynvn}z>N?~{}7`N A֞fnN7jw~jQyQyUU㰮渞묨>}t')5&'G~"`?]~v9+~G#}QR>!DXa τktp&gXL(O~sH5xcC?jHe'~}-GNs@X剿~J`__?~dfOp7AhP` 0P0PkZ.F/C@@ DPB >,HD @@c r%MDRJ-]SL5męSN=}TP5\ID>UTU^ŚUV[%RQc,VZmݾW\u8J3ҒMX`…A~-Pbƍ>E{Wdʕ-_ƜYfygehҥMXYlڵmƝۮgF\pOUeLqغ?]tsyoqݽ >xlY͟G^af*!@>{ t@A#аXSε1DG$D{ >KB[t1|QOFQqĐllHu6LL2J):]RQ>%%-gA13Wp'|(K;o7OS;rG'];ʜs_=vmu9omw]9JvwޏG~x+>䧧^3WR1OŖ0Q5g:?_x͵P7ݟƀФ)j}#_.,>7kcԺf~[`EاKاdB6v>\pWjȵ2!p?Jh?`{XL5^*C>3^ f04bY(M Uj=KgbH6}~[XViפ|1ZT^Hxh ||$5!q{Q$!նD2Ҕ܌#W9пU@ ЬB:Q85D-T&~r#.v6rr(FU*Gr,ZFڿ#эLJuDQn7GW]NžjOe|Z-iqr:*϶-ի#ljIӭ}_+XoJ^e*j~Ik`{?t2-.,4 ҫliAulhE7٬fEJL[;mje7ҾvmnV[:|n+9E=\υnt 2׺[3^׻ +v7]o6k^ z;RƔ/}KBa:ÍbrP(A_SS4$%rlLv="[_yHR*FVX7V~10Wl./c`A^BPppa%{B"Wfp-Z1QNgӃJ$O2o+bwvd{l1R :gK4R*"޷v^te譸Dt7%ea δ8=Pƒ4UO.eNַ9S=k^Ԯ^`b^66p@B1p" EHmKώkx< vYm @Ft@vFx\}o#跿-pd t5=p=>MΘx.pv_93[?-x'6UswmZ^n5Ǹs>uۄE\q_^䫂>ü4/ͩvܬ4,E3Vk9"yU\Lu71M,H)xvwD1KyggGۧjY +dg?N؃ϼnsσs#fkqS)<g<~{3՞{Iڥ1 'Q'|?,js5?/?`YyX3:":?:=0T@?@ʷ}8ͣ3`@@ oå 7< << \6}+A l|A@;dA B"̙@t:D@%\A&l|>( 6<*LB-$'BC*+d(C3l>4LcZC1<C C)+K2W9B㾑*CB#d<=8CS3y!=:D:)A D7DKK˖۫ss"/#@HC+TVWTE9C,Z!ZETE,A`C*;,Y ? >0kg],Cj9aܺ1,ưcCh,iDGL̽Ny SpGG$%<|L@DF+웳륃ITBVdȜ:$S 6Ǐ.$ I HF2\Hܶ|IHI46ӈIrLHHD8%TEsTʵʫGʩ:lʂyʙÔʍ˰,| 8UʳDKTK ̀84K\JKK<ɿxK 4̽L̄Ɣ7,;39Mܨ#Bt,LL7Il}LM$#QC1~03MDL 2\NMUDʟE >+÷tΤQD#0b,2K 5ͬ>Ȏ—10DMKT oL+@=3t ͋Q|NݴQ|QCP x &-_! {$еpRҕ-(e)R)R,M0ҎR&S%;9S=S2@TRܿdӢpS1}Ci g:"balXՙQEWi..頶 ji>n a#>iN%D,`fnMםS6Nk@먦 ^j긮nkV뼖jjl~՗ -kTpWDqT:Mvkvkk~j^kVNmжk^mklV lM5lò>i^m/=vm@m^nnPf^ֆ~픈m.肾>r߆oe%ٜ֮jVmklnp>pm^ a:) 7H a.ǮW.olovqoF?mwopo ' mM~rpqnSnqoVq?pllrG ap ?`Jr=ťgq(o>s/2lxD't-olftg0h9z:'ʃ]SU=nrNS%WA/^JlGAu]CuIqtm6rō^$ ttbc/ WeGrQ g'Kԕ V60hV9׮9\dh(wOr^_hvM3YeFQ|o w~v6#踝hAXa`'P`pWh8wΞ}cNElF˫gNÜ?ѝpN6D {gqz-ƄУ'uz /9HOy爻w|g D`ow]. v'РB-j(ҤJ% C#:P  DХˋ`ǒ-k,ڴjײm"̌2i)`޼z/.l0NJjց&&S˚7s3ТƜ͆9n5ز.:լZ1‡/nxٸ瞮ҧSvcܐwM1'Ǔ/o|N׳o=ӯo>?Ƨ\Eu]) mUopi!zeu!G> )u0!w{y7$x#9#=ȀA 9$Ey$I*$M:$QJ9%UZy%<8%:j}10f^c9zi&יpכp)gl'sީ9RWAz(QY& Zz)j)z)An)Q&t{i'e*Y竭ڹZ묮*ݠrph ,h^Fi8R,J;-Z{-FWjEʫk+뫹믳khz("T>- <0ѩ ns깦bg'ݼ[vg!21<3& 51ưZ.B#V2 5k5]{7?3F;B_4D' p7Nڋ/x) N0x AcW$47>.yGV$c^OneHjNy蚖nRz9啞9b;DvEfqt+Ȳ?vR\uE386f8gO.Cb_>ữK!ԱmBڞ*L\ LdMoC9n~+dW%~;!T,7n9xB%&Qs o'I$BݮڳF'@І&#JU$mT@p" H2 +j|SX֍фK!9B7bϊB#=F$&' Bf29d:MZ|# PR[d+7E5ʐ-+I$U2RGܱ:K1Qo(%^)*[UoHz[Xf3|3ҷ#.~sdk03a #K]C4{7[E .~1:M6v%bv01,Mɘa llǀ o;)SV>RuvdL;!e5uLm_s¬dff%v2#gv3=~3,mbz4 ^i+4/L.&yӞ4C-QԦ &yG7]_.mL'C 5-aн34)vm!]I׀5/kbs65cl"[̽hjڭ.۸FO|}7R`3솴a-fcbt2U73s|CchMnޮRE`/{Sd( p  x|C~Y< 8?>p*ճڼC:ٻP<yHʔw=/!CGpT?Ss~O{~!ﭯ%gy3{ۯ#_H___. ت  9A_pH_n @J`Q`m[  "`ꭠ ޠ嵠MI=۠6ݬTӅ H Y I1!`X v %ӑ5<ܻ\EZ bohFEݬMEPܡ  &n$ F" *"*V)!NX`q."y"![b@!2ʚ9P1,b "/^#6/ʗ1b2"""[$3R8.#2b4 5! f<Σm#"::Fʱ!>>F dء_ "&#DF$#!#3!~3^*zܸa5EJ!+!@FIBfILΤQ$ս#LZMOM*!"APXKKO6SvY$S>%Vf%U_RV%V%YneTjTv~eCVC%\p$ե]%^Uƣ\_YZZeN £5b.& &aF^&&cVecdFM[^&hIp%gJa.%_j\d&mfig%k֦m\ T "J")I@aH$.q2ͦ&tFft}@ jgv!:ݹegD9gLJy&i72zJ"=bs&ygmg>22'8#UM4R!xFy~6\gaFvRϴcqr$T-~eB($c8@8b}s%"}vadH]g⑇(eJpZ#dr&䙱!ѐ)j]i~iSnilV)ދ:$m)ʤyi)D)җҩbީc*'e^u.j*h2*r>S)jnj ^*Br2~cE*b~樮Qߑ:&)FH^$,9>qj?h#ARGaRU"+(#Q!Nd*~vV߷(`єk~@c(dЧlMm戞{F."z*n+^lkcZ8"BDzVljbl.N:%Z1ZF۫,vg*!%)ɡ6I,RV-йe+~mamaE ,ئmmJm϶eN-m>Ԫ*-TRYi-. l..6nPF!.`RfJ.^@nnp|.覈蒮ꂆ. .Ю%ƞ庮®.+%G2m$jaf.jRm>f(Nk8Zʦ2(~Zhhl:~v//gv,c*rZ2X> c .?Ipx6"" /wYH/lKR fdr0f&H"/Fްpژ0Dnp'qInO 1.pn'vӑ qH+1ڄ111  2!!2"'"/2#7#?2$G$O2%W%_2&g&o2'/r@;PKhk==PK.A#OEBPS/img/script_manage_results.gif7%GIF89ab??@@@bbbccceeefffjjjİ!,b!H*\ȰÇ#JHŋ3jȱǏ CIɓ(S\˗0cʜI͛8sɳϟ@ JѣH*]ʴӧPJR իXjʵׯ`ÊKYVϪ]˶۷pʝK.ϴv˷߿ ΉwÈ+^̸Ž#KL˔!c̹ϠC',ӨS+% b˞M۸sͻ >+ȅ?M{Km͕سkνO|ꯥ˟OϿ߀S}v Lw^Wfvv^T!&لZx.GV,Y8Ӈ٩X#<8"T:ȘX0QJFKN>G#7U)ӏQN`١pեMޕkd)i頜^\饘*(蕹ՙh&~Ewv2hSv額BU)w'< XgjdT+N& ؄TΤ"Dl.Ҧ,K^Ӱ䬳7Y'꒶-mR'wĒS=vfR@jGpd,21|nK 4Kv̱/yS~R9m13,' )+܊NӤc032vNݪ *H|B]IWu<&:q؎]q 8 >M;&S/ZNc P?N~rXײu`2u|I%#hz4٣u}0ԠBXBrOx5nw`>P{HYa__uN%p:.Bm^Ԣ0_0(X]vi}5o{F$a8Qn:Bp#Y qǹmj.T(kϐ L_ IJqz\(ŭLeUAъ|$XH1lC#ri6%wΫd)A6R$MD%Ԡ5`] I-0C;E7AiW-d#hEQJ t'>_E'GdϸK!NЗi$ bZyNω)CQ4 *==!#̺Nd(C?zN ehW>O&ʓR_is:wt 1R 椅\B%hLKn'zPݐ# K 8`>0%赊t֮vwZJL`%VYTZFqX d$%^:-'Mc\ 7R mXDK]MeYe=bڴGbմZrd+i2bC cB6^-JJpo6(})^cdjo$]J.oE@T׽U^,}5N~Uq[ƞIp?5E::vj*p[B 썇q28:"+@A|JXlaoύߠJ\\YӥJ&8NrP;Q_z.)5*:hN, ps\LcDxγ@9π˞!ЈNScE;ѐtb-J[Ҙ.t}[ҀN{ӠGMRԨNWVհgMZָεw^CdNvjݘbOЎMj[ζn{MrNv=nf3η~N߶b;'N[Vb{ GN[4K`0gNw1w@HOҗ N[XϺ>OA N#`..p/;Nwxh}y< @O;'sW7j;/ۥnԏ_wm^ Pēv=C;F~|[nỞ▾?F+`yGS_{pOgng'~g{ }}z@~|w| W~ &&h}Xm|)8{0(~ P@ Ѐ*8@Hm/G.x{3?ȂG|MxO؂=zPhRHwz,?| 8m_8c8f|sA[xtH(%F'Hww(mPg|dǷ8bXyx{ha8Xxhln'oGz"Ȅh388um Pǃ胸Ȍ|}|H8QȊ`؇ȉ8DHȌׁ}hHztutȍ'x({(WYHWYh(X$)E~mKG,)/%I\XxmD<ɓ@Jي ٔȑ# X:iI'\ɏ 9&y7z~xhиfxsHEȐ8|+ɐCh8ZؕϸiPؖ G)bW1{ q whiuQ9 Wٛnɛ)eWIvYM0!yؙYqI͹9֝s䙞깞l)&l9Yyٟjlzj :Zzڡ ":$Z&z(*,ڢ.02*  :8:<ڣ>@B:DZF57zLڤNPR:TZVIKz\ڥ^`b:W hgz=ldr:tZvz]0qni:ZzZڨ@;jzfj'":Jga*u:y(z:. v ZzȚ-ʨ&Ѻ#j*ڭ' J  *ڡJ :ڮ:j* @%P%ՊZ ڡ#J$'{,./ -;qZ0 :;7Lڲ=+3˳BˣEҚzgRki*+:(ۭ#&+(d۵ߚ` *7A+ZA@{2;~ ,K =Kx kr;˷긁[ w?ۣK` UWrY.\gk f[g{skz+y{[++8j+D˼ѻ~;5+[;=Skp3dѱ^;ab;cܻdK KtLƫ {w +[?+2<;6 2JcaۻEE, [k2|F[;\˽[B0UܼK:/K1[0z:[x1b*"F; q|[a̡k_ʜ; ɿ `\%ܽ+,,+˰t8~  ̡e Nlf]붍Z`qj]v}YMz?*_Ax؂=؄M~]؊،؇ؒ=ٔՏ&ٜٞ٠ڢ=ڤ]ڦ}ڨڪڬڮڰ۲=۴]۶}۸ۺۼ۾ڗŖ]]νɝ]ݩэ}m}]}lkJW]/~Zڬ*^םޡ: +^|~o&z&~ߎ &0V X}ɼL' I s{ϑHnӜ"C[)[MNKƫlʚ>^ǫμLNL3:3!k-Sek |m|L ^Y\>n޸²~.4L6 X+ >n?.錜//;ř|*_ʴ~>+l !\9ǥ|l,ROOJ|̓ 玟m_®s>)_"_|i~[o¾ xz|"*L<| iN ,ꯚ4q7ثҿ=|R Z'jP:*:PQ1Q&Z*(n/ @  jxPAa#@<QD%6XQF=~RH+ @b\IaJlęSN=}'MEETRM6SU"zUV]~X ebxANXR\uELY[}X`… F >`ɂŜYGU*ZhҥMFZu ]/lhfڵvyn޽}\ԮEvA[ٶ?3qխ_Ǟ]{?<x7^zݿ_/|5_~_J>˾0AdAO@ K2p$0C 7C?1DG$DOD1EWdE_1FgFo1Gw'  H#D2I%dI'2J) H*A-K/4+kL3D3M5s\3N9Nt338O?θ:0<,PeQGEmNDRM7SP!TQ ;ҹ2UW_}UPMVIE02Uc~6_gXcuPR(EAuz(6[[oUPI5s͍ TZi[h^p"ޚ$·"}*+` ^aJ` H`a$8ذ{VSV.Ae7$wY ^b7y^~O&z>9*ଢX+&鍱Vj8YgR+CpYݘm"x?nצAhzn:6N.魭<"jꩣs/gb9GkN NI_=uyu#?LX>7>ym~mV*g zֻ^\qKZrI:͓Vu'Kt߿O|Y^_gcYzw~ 8B<#Ϥ ql." QN71La0<xu!h>ݰa#[MБπ;[*n}5BA rHQB(=21{+#HqN+lBJC=->iҹ-qc>;NY {7|ɢMQ9z$<I=r)<dIGD.ҏa ?)s `a K.X2!YVg[2E. n7K^7BWp=^zd#26OfNvc#9p|\ o)uNyπ7#\)̉. UĨXMlSݴo`: 4A&%)hB$!q 4'NǓ1)8u&ԧ?WJ?/TyY̒0Gm3MT^VժW% c|'ZPMMUլik\.K5R=k\:W*9M)կ,X3uUbP`Xbǣ£`c%;Y"kle5Yv1RD;ZҖִEmjUZֵֶm>ˮ!ֶmnu[v@Vf;;\7Lp\Rns;>WUѥnvk&2PmE׼iRF(no|.qT_m/v_j puߧ׽}>Mz5¬1f4Jw׸JŁܙ4pF@zs+) 22sScr1z6=+*C3;-(%?4 -gT00%;2q+ֽԊ`Q#)Nu"&W2K]ֹgİLC"t23wER`f.=gW(1_F)m O=ŭ4aξš)8Qy&bS4Ɣ܏La&:0]MLɼb1^Q>%b13U:~jus^{[ilrqkMʅ6$8b03Gg 1Sx eC.j8q<: 5oWڋ6wѭA|ҝ!Q=o;'& WsWΫfwDۖ/4(89A3m -b x*kci@1fb#ٖדsd>t|}]U Bzӝgyk nL浡^gf3کM%d*iseyr9(a ">UIοݔO;-o5~:9{z p۹o}Ws>W&?;s]Oj2K]6^;#ΗO㙠2#t96C@T7{K{%۷ |Y7Zs11 '<{"c28AAs:,$S; 6f2$ !c(*ҨzC/5RxBZ h)Z(" éؽ01$243TG)2. B* b ,2-줩=ư*/>4CR+8 CBDHDAq*0MD,jBN$R܏sH4Ud@1QVYWЊ\]^_`a[XdTFE[gZCjF˚ƱmFj"pǫ0)AqDGq,G)9ttk\(iwgG(zY'}HSG'ǀ4M&)ȃd@c:@ =HH&YȆH(%2ʡը%Ȍ$I!ۧ_cI%ɒI9!"Z"(۵DZIĪɡ|:<)PgHhPv%U&jYv)飢-AfYiz)LdsQph&n薍.hy折 Yd^0bP|j0%:TH\BFJ&P˞Di-h*ڭ9ꥹp0 B\obc%y$KYҚ0.[߻y^x.ޒZ]'7Z4_|}M/1 whX觯ǿ@[G_A:HP~9JĂz  z/ 3 ~08ЄCg BPHLC8ԡL(!#Bb8Q` /6p#Ghч[M gAcxX:y&JZ & @8aOؿv##).~3I&7IurE$K(G5气Sd$LPIL,B?d,K2ˇe< h3IMg&7|0ID,sL+?KL8MiJ3'6>L44WNslcnX5U>q9/USSU4s*WӫfP kڏ `Ӛuu5'MJMε~ +d#TtEYtg K䭵L-׿0-SQT҂E8FU ?9"t- aK\$W&:W}efW6&Ir[z]t[֔$4lG^v{K%n}aEx${ ?,[p$ -L`a~K6SgL8αwxϻKyaMr"uNɑ'NW6F#S~eL2Y&V2{v-vɗ4ٻl s=ϰ,!M:s.$ Miz>.vtÛ&7)o ͇i_>C, 3=s1ax? v`tz!p-ZԹJx;jʈ(cRVю!kekӶJ 0A)ck;_`E3pe;|r8q*QuE!iIIZR%H\KЄ5MqS5\|oZ6g]Wz{pAnB|OP)ᶟijYn3weJY1;ஈ & =ZR՚z6* E~u/F>}t5/)lXfU+Yer;c~NϠ/6}%^Լ!UNӿ--{Z7˵F.a 6/yIb6B袧,eSУMAOVo*Qm9_G̳&o]=*v1 ;ƅ^KWXwfMUwk7~'m#c% 2`1/rg&3F#73ACS4nl|r|wU%WWwhPUm7xhxaM6P+bp{5#6' fchÂ/w!1w3X7zWtgWxf?xo'~BF7{# 7&q7r)y1qIB^hY ؀G[hk9388(Wq|&/[$IM:5A=c:h.\)ᇿEkgrdy H?~ihkȋ&y^8\Ę/afX،ϵiTNň\XsVL66\xU$~ZhCqqH@xD`8o)c>6Yi@vm(gDX@^(g6h VAؑ8:y46wV? = F2JA QCmAnwa.ɓMFOiNQRSo'UIT^Xo_I9јTWYkhy ow-ɎBIfihW:'ezK|f_)ug9tzIC^VyG9Y[9@䷙w;Q5Jقiw5Uٍ^M&}HvgaDu}cՕƇY(RzQ}5UxۧtR皤) fX"0x ۹EW}y`9(hh 9hӖY@IItgIzzd}Y䉈XRɛ雇 W\Hm"%W9xGdG #zLɠ'*bŢP ȣY\i"9 W4蠋.WԖ7 edԉمGZ)ȥ}fJh`TDlڠxq s٧uY袦d9DxexELRi5KeH3 YZVi a )*k*] ʪ =yȚ< d,U ;%?>(ɨIz蚮ꊮ~٭@4⪙Zzڮ_ҚT֪jZˣ [cڬizJC{:ەvZة+{ai[z(D,[}vDk7 ]J*QS EʭG9 K SMkךT[V{g Z득p>*FPwz(6jf h+|:굳zx~l7+դLѶW[ڙԷz{P+R x{:;T}[pY{j@a;zMXAT[Ew[;ktSkL_YYăzw:uܻ9\):3{cx{+ۢQ+˺`+vh)̛ZYtri۾!jtDwTLk9齊YbJE$˿*Lse؞Ջ< <[t0g;;M i:kG+!Zybֻf|g3~_N1jV{z |Ƶ+ȃlbdlӰ hQܪؚ=꿛J,B=V|}}[ g+Gȷ,z\Ɯc rl˼$ dEk˺ˬ[˫DvV*ʇ/(S >ڛaLd˫"ɛ7:*[,q}n*|ojTzU+ЍLLzEʒZ  H٦)ЛҲ샯N;Xz˴&ڋRNgWDFm3ږ] ;eJ=]k}t2l}QOH}׭)ΛR}< >|lauUԳ?z?͟8xl-R>uo< ,m.LR {" ܌NS~\z8+=]:ץmnRMUF:ݭ-G͖fmA}ݴdv}T3XXE ܶ WXMƽ'.x܌$bt},MխBbʤmѝ-uߘܽL}} ,̤j`܃ͭ-I=% H=I ?%VZ&Ni&=/}<-LމZ^SzU^|l~cɬ=cN_m[@m>Z|pu{M}+Y^FǓmf;Y$)`NH^ls榮?~K}NȆ>n ]쾊躬a,glU&!҃lӎ>3^mnη΀ZչKZ=ޥ>N= P6vK7٤׽Ǯ=KQt mw^qٗ)ɭtIjy-Z3^Mtt7nj<%z>_(eOMS[dﺀ=ttmo_C_t'/20=];qz }g_k/u?!=iHn@ikz=?@ ~XAB >a-^ĘQF=~8$#9&(1B%/Ś&GNEVT(.{V,A)>hTU/)hS WXcsҤ\M\W{ +KxI&ٮeWq kۯ}_q FXtMF֭][lڵeOP[nޥEWYpAvz7]Zw 9qVg%G˫<|;ר\{̾$-D0Ȫ-#-AtŴ76C? G$4zB$B(ESFUN1#jp!EDž2I\h 2J)Ă4/H%b$ CrK172F*D3ۺ 3N9`L. ´J3*L͸02@Ee&?m*(ԋG,"'PMxґ"((RS̴(NPCCtTHU,_H'`XcUu3Uq*=]}UX)tV4=TD%U#hSVcETereKi \Ѣ95j[o&MVm]-vr]s=z w VKl%FGNҁ >nUp3xWXe+BUYx}i uQWXfL-@x42⚝6f8^%;%Uʐyሁd68WZJjvlpbSZ࢏ηDY+GR;o(滺Ɯ^f!y\7AOr]fx`'tauk^GջկlXְ*iNji^ini~*jjjj@(묲J뭶뮺믾 K&6F VKfv6+k覫+k,̮@!$ 7G,Wlgw ,$l(r0,4l8s-@-Dm(L7PG-=PVl o}uYg`s]6cWdkLp{v$LmxUva?gw׃{É;<7us<{w7ք5׋p}mz¬Wyˮ^嶺N{ s~9ܙ<#|ܡG/_<ٌ|Oz_=y>k{ΰu?|__ `앎}c|8ҽOb T> &3 h;y (LӮ6PvS`'U0s(8;Ёl! )AoyGWBPX*9XH5Ġx pُ H:dE q#^8Aܵ< #!1$t#hJZ#HM,m4,] )Jғaτ#!b򖸼ҎÑd̥0ILb%2fΌ4I͔ ̦6nz 8IrL:v=RԦ:PmiRJժZXjQծz` XձhMZZֵp\1ֹx+\׾u*_K.,b:V}d'KYFͬfzMV{(6+:ZvgKZv-lgZ %mڈhikڇ-DOKύt:gsNwu\ϖ7nxQހwju&P6n{jS0p;~wÍ.x+8&p}k_}[^o `MV09av1!,'x?Ic"Yp%XpC][؄5 mi,^M;]n| nukm<[~{Ӽ^I,Ú' GJ(7_і9ws@zc.D?җN]3PlңNcuVϺ֙`NhOJJ]G@xϻO;B;񐏼x;]:J%Ot|AAOқ=y7(cPSw>oF_R?~;_w*vV77?}Ox|bnwwwQ$8/w_Mg~Tzdx$x xy |rw^QOuWP P FPOR6suzUowx|G ȃHzr5f_}%@{]PzLX\N8SVm(({fUQ.x{SX>hzEhB(gc|@Xo%3}aXd6lP8PwZw\T(Sf}~yQM᷆9؆P׆ MljȃH/^*XYV:Y_zc*]:ڦbnr:tSڡb|wէ:zwj@ڨ Q:uYpک:Zzڪ:Zz yO@꫽PZzȚʺڬ:Zzؚںڭ:䚬PZ꺮ڮ:ZjJVOp;[{ʚ ۰; P P۱ z "*,K e{p.{8: %*@BE[BD;z@B=D]F;GLNPRIS}XZ\]b=d]f}2 M  r}r z{m}="p׃=؁m؄ ؂vM҉؅M֒Mӕђؗ=ћ>"z}בڍm~-؄ ګڪٶًm0 ڦ-ӥї ҿТ]Pа۬=u]y=}ݷЏ]ٍי ب۵s}m}ݥވ}=ڈ]݇=ۍ]}֍mݪ-}6-)}ѵ }-۹ ؕ,./n>>80:nM/>2B4M?ܤm^%@6bN8S=l|'C^qm~؋=Q>|ҽo oL>M^mގ5^Ӡm̭j>KpN>>-I.衎m;(niNᰮҚ=M^n=]~峮h).;.hum}aq6nm^N-?Y~ .GOrNf]" і.P:o^]씝;_~C,.#NH7P9^`bhjdOfpr?1Jxz_]8?_?__vϯ]:?GmX?_A-Ɵʿ-H.}(O~Mzntn*OҸ/?O>T˞Џ..^.~@@ D@ >QD2xƌ 7&Q$A!N(RJ-5hh3&GĉƝ"ڬSАys`ϥ cԝRj)UVbTTb^lϟkfm:vS]~M;R.ҳ^ƽxoYuM hN{YK,i>\XLܙ߼X^tg]-߭ޖ];u_س_wQEM|,nۻ?Lzy^CC,rGQ7_\u잃&˓itI믭-ᅨ|˦Ķ{-9Ԟ >䏱=oB ,ҋ;ă#c/#.l=SN0˱:yQ>s(: lnH[C©bP' sć;q[. F -m/Ԥtk2 }9Ls;\I @ 2R5[J<4!0Lit 5LGmo2KD5 kUBOb=B4n˾nVSCFXuUGZ, >fQDNLLR7\q rmCteq]w ڔSO+]{7 [<}t_~yP`pxÜWz8b'b/wa?9dG&35&c<6e_9fE9lDe<GJV~ )l^:CЅN,ЃsTesuzWjPKuIa%$hLAY$,D˜<*Uzथ[oZۥÙҙS* 1VP #oE}7Bٜ>RW:5lqMhSqwAs[hPUVy9!5a0YPx62`6*KH eVXQ^I3߀҈ V ?eϦi 3E.xn:P:1NT$L.StWjV+GUjի_̸TլgE+Zʴխo]ZUt6ծwk^WկlJ&ְElbX6ֱ{:Vֲ%dYvֳ?;ZҖ iUZˢVmlڲֶ*mf $\FO ͞whTe`1{ͣ ]2eYw[s4ygs ?ϋXGGzҕt7m'ld>uWWzֵ7_7Y>v[LeG{uvb>ĝwM0n/R#5/9ci$W I߻P g{nkFǵGxH88\ ėb)s(}L1KMD$RMlLLgRļ=4 9KBK*9UL/_E`iEjilƼnG:#r4sDtTuۺwxyzǕ }o;ȁ9$ȃ9Dȅd9dȇodF:-c }7!B>\.v٩S˓ӡ2D̼k@:#H"2=4!I^*8e\Eg*0,!@/T /0"BC3C3 7$k) ã>#Q.@*@B-8=1CUԴ"EuTiGT! rC 4s<-4O##Kk-ɐJ8=T=U}K1JλԤ;B[  0 P K|c(|llV$>0en la-XENę+ż%zJ_3L髿~C"̎?L`1)X^k'36YND]9c=; /VX@@ \ 3f0 Y@_U(MX*dEA>U<26<[@a:B~L6DY43BMz2P,LU1m=5ܵ|, XODC(KQ\JWk[gmQKh%v}b:N!Kx1|#^XpWL=KLJukXÿTU^ޒ RAl 8%]<}?n~6ΘhD &dh>?e^EҔf陦ePO\c5(}+6+SI0DcEJ],Vn֏55]7~b*1tet`0RSsUQ2NbpvOucFZr=h&ܹ#?%u2^+@<@mLG\Va\f_NZFN5dU4RiٓiVF&Wf4 娊^nml NdoN+cffOf+pd.}G[洍pFqpиLaCVd~*Cy[[oV]gާ&۾SИؗMhH(~h-muNE/Xs]Q̮pˎk{R$%ޝ6^etKfKtF9TguVWuꭶ[\u_`Yb7Fd_egvghGC5HU qt&aK'aFY4Lf&tY!'"q)$swTۃK^?gmܾphGNt6&>F!om=nA!WC`E'Vw4oFtemJMccxFL?NA^X!|%Eg%VWoچyN{ )G WemY'NS$Q?lWW e!δnI^KgfgVD&,.f{/Yy~{#V)j& xP"h N>&G`r^o,gЯd0}11~B?5c7罅N7DN`F]8h7@smto%x~vҳtw]ѡv tc_uot,h „ 2l!Ĉ'Rh"ƌ7r#ȌJ,i$J P$9!$̘2gҬi&Μ:w)pdˠ%U ='ҤJ2m)ԨmIKZr+ذ1b=yjײm-ܸrҭk.޼z/.l0Ċߒ-;teƎ'Sl2̚7s3ТG.miɎV=*5زgӮQuYE]7yƪ[(ʗ3o|yǃ&n:}F/:eǓ/o~awY?=]@ߠ $D_&(B H2wAGj8`p$bE"~HC(淔?afQ YXa+ ( z(!#8$N-v|͈LB3=}VAVB=87FX%8"hhyHy;X! g'g~v~@W梏%2ZhR:Xȼfۻ :N& n /n|0מ*6KFC}(ɱEޛsR(2r-窝\&5_=Z\1j 3Ҩ ]+vS4,ϴ\Ǭ8{7:y}٪%)MgQ)O춭!:$jj u2.Ȱϸ/n|fg_;vy՛Q \էlRYY?ÔQ/GF>L?6=(0zu 2#IJ@RTK, C(&i:" 1cغt V.V 6J2QU\%#YmKJW)P/Jvב(ĉ3M_ә r (ѸXJsg=yvQ©TM;ٴkB Q= fX́my525VKy S'bXlZ$` 9ʖ5!LCGבntPO9̭ۥXw%f֧ܧr$ۻ Oc<;FK{ꮶ[ *zF2 ~ӽ&}ևԵMHεD%w^Lҏ=w+#v=/~-X䷿~czf 3~0#,ar:03 sp+,Mcd1c ˸6 o{%<1cr;uل;ffR! ';ц%ӧQT5-d^{3̺xdEI"wΦ6{h;4 325-ֲILVtt-h^4&sLV &K\>ɱI2d-e=& 0&+X>.YkXT-XVwmxSqgb-ؘ=vX/,jj޵ikmsw\3}#>E0_+M)MGN̠|]RڭwLqENIo]P7?GfNRTe=LWY=o[ Eq]ciWMu箍vyt$\7-sV]Af%xd]YY{:qLX5"!e1ڞ6ho^dV7ZSz45wwzbnaemh/Ws؛qjΪ ;.i]\/ - Y|G/l=vƾoC$= ?> ~>/Sg޷}/~χqϯ_q5"״D9붪_WauRYCI唏@[Ͻk\H % 'l!arifkgmmf&R&B>h0.&0VGJg sB'(F(Jb=v(AտER&af# #뵦T&deׅaǑcjYk!c92S/ZeAc$PcZJhK(d-z!^1U8 9-;h:z}=j"I‰]N~@nAiBkyE ](Vwʝ"<:D]H w"gs![h`M JW$|JyPZ,Yl֪ܳN~EQ+RPf+U~%+kmku+skp֫mЫkl૾+XVS&@0N lh@8@D<>`vF,T,zl,hM,˺k,r@` 8lMlnQ!"$*kEh-D-I@ƪRdC@QD@jЋmvm=$Κ4.!PM!Qmڪm-Mĭt.+"F8@Nmlm}LT$#Tb:]~m` tq|ynȟMd n.@.Ib w)bj-D8JV@/K&.9 !GIX/~}p TmGį Q*T@h/coGpH,K0Wp_0ov.0 w pΦ {, pĺ0 װ 00011'/17?1GOqknZ^1go1O_u1111_1DZ1{1111  !2"' "7#?2$n$O2%W%%g&o2$32'2(2{()2*2+򅩲+Dz,ri2-2.22//o-0s+31321'337s$/"3O31Cs"K35gs/[3"c6-D99F:93Ixs HI38߳2c!<3NNO4?sOOOtQIKȴTw24RNw4PV+5GtFQ3DuJY3JK4LO5\#QIU 5YJ4Z{]3Hu^5J[/t\/v ?4O?a'a/5`GX5e^Wf[Z['6c6sMXV_j[`5_`I6a4h'T5i6s!;o! 7q'7 #r?w3 ;7tWKw Suo7c7 k7ww{7 it`6JfYtB)bR9+iwYvfv)Dhk駠*ꨠiS蟋*J-W:j\jHJ)_Vj** 驒 In)mډ:;Ŏ)GR r޺#bkR镍jʰ)3»*T*"9|ަ4*M/#q2\b[%nlrCٌ톇3A+A84? gt 3~@G`-dmvƫ3׎Yk3trj| w\z- ׀$7G.Wnmx[}-Sd.p mVKuc-l 0A H4Ա[lN $|";N7F H0Hp@-4 H-xP / * A7 83o1&3c*ZQ!L v! (? <@nY᪖816Z5bG8*V1cK'8 (21J"1bБK91l>{`c @st)iPʔ ]h%:=)O}hQEt=TŘb5pid[{ X!p\#֭px ژ%p| leW &;,X:2+$]uLc7u:lz!e: iCX:ֳJBҲ-k* oI4ڐATjbx:W sU\x,KUHkݺVereIzl Zc>LNxl0aEIujvåH#aсĵ1",_ŪQqX|7!6Hǜ1kc 2J\#;Y2͘l'[y2hl!_HѸ g>sg;fO{ugf*}Y3hȊl 3#1p3,A͑\DHֱ׆\Ё>t N+Л^3a}iHcF4th;hsaMgW/Ո6ufPgqp iZѡ4umq'Տ+XbӸvMaK~~zj5I=je{լ7 Fo՛.-tWnwg}myON/ܵ 8{\_p?V߸h:qf<"W KWc<,fN8Ϲw@ЇGy ;PԧN[XϺַ^u+S:NhOҍpNjN7v;nw:=OɎw{~-uy&?yP闧|-?_~雯;?z~xM?};Ǟ=o{اgo<#Dgozc}{[x9{;_~ ? ȢSC?|~8uٷp+'{7|7N~2V# {x)7W~'Xz'~@xw( HAxHu0H)gIIȁDNX1RgW\8H hOXNd煒`r8tXvxx_fiXq,bn8MݵbXe:և]\Y hihfo扵iiDŽjhnviiXxjˆkmxjCxfkmߦjrT6(hnvg؉fnȋXJ&p؋xnݸahj8XVg6'؈WXf!E}ӨI8}i7ؑq*,ْ. `XӐ9Itc"k9L‘7@W!ISrE '9kff鉫mvmv]W1kXl芭Hpe=p֌[9ln mXjWw坦Gj9rfZQ<7UrW*i[ 0:]o(le**mb@:jLyz]fRwJ1_ڨu~j%Juʧtj(zg**9㙪\Znnih ɋɫ,ꜝx`ɉP:Qɦr$cܘ83 Jxmyj8ɺTzI%pZDi: cV  zvpKڄk t[q#K,k)v+nʰlꕶvZx$˭YnJXy9Cڣi0 XknI)Y5vIniM˪[)z1IaX+iyHwklBDKx[aD汔I*󚹕;˳ {$;ۺ v7RJjKf{wGk;6&^Lkx[[] !֪zakʫ ~٢KY}ex庚۶xiəkY$+j oЫҫ{:\Z;S Q-{\ L",>./y| Yޝe*YWI(ԁphzp騤vZj**8Y(JH K>G>nY젆6M뮍fumNjjͷ^#\̹<3̰ 3 ̼S/ؒ/0/*lވCkbӳFJޜkjJ|JL[a&1-Vr)#:ߴB/xbpd*eGC5ƳBW5=t2[ e=10Aq{gVw(Im`u  g6!^}Nw>Vfo>[5[.nu8vkIyI:]k5̣M,:}ƫzRއh`a>z聾O#tbB -`/ epCtCrCHRiyr@׼ zӒ7AE{zkGB=o|[_o~&? 4a=,pw{g<A+gw2^L&,QQB렠҅Љ&4FE! 6O}3ll8?~UDUBD7E$>PX#l!s8I.9^ƧЌ^T6P ިosu H)@b4AHVRra5$P*THǬujRu':4CP+ Eٰ>q'H[69h7GFr`pEwR)j\Ң,ӚRiM.r8redT'32l` oibɼXz.hQWB 0Հ4P:3}rn5AO6cp{S0 CoxM^ 6VMt Q .\G.!8ưii$I{Kc#KF $)\IWWxu!\*x l)[0.腭\nNiEq@h>N+snrcǹ{+qiR5\kxW%PoUqq6l,VNH3AiA2 ŗ?RJY ɖ|Fu}Aɸ-0xK6q6iqD>c=)Q#9z=0SVCW챟#W9x7{qX5'|2| ė h|W `g@ &"8 ~lbw}@~7{r:puSyZFkz+drSdH΁ڧ0!{+lGvs|`H|X|w@| `j Іnjf YH#OxRm1ynXp :uk\~rGKf UH Ր4hRTEY{^؀a8|8em@@P((P(f]-ȇ9qA~7xw~gr\z(zD=K=z؂P脹" ( {QX]_xx؊85`ط+1IHƈwcnjHryF)~TGyo1G  0Q; h(x(u |hTS'ø7"Y!錷u CfdCXbWQhhGY.x֔q'Hs^ XH mv;9؏?9A) @G fJ mYߐPQɌ:Pyy('`G`2UKTSf7L%IH3lIQn))@Ct b73 犰X@Io؆Fc'Yyp 7 ȃFFF8Tp nny阊oyjyX›BR(daP&С 7 К* Lp}ٙ胟ӈo!@]` y /oY5*EٹZ90 57XiIj`1Pvzuʌ]a*-/ڇ'єYUJX(:TZ~m$v[ pEKz0 .`J4*8G1ɀ 0Jʓp1`L?gt `)a#]:.񝩚Juz/pSi~փ9Aj7 !^P, 3ʢz؀'Z4rɀ**xi|`<{(  P P $[ ސ4¯ڪj9!''hO0 p 0@*{ 6w)I"| '_ W@ؓL@  ِ P0Z+ ڵ3Kg{+p ?zyZ7KQKp b) 1{PV(p|~_ rPrq]` Ġ *ں K/મ⪞A(Cp>z ` )ڿK`P IZW [ِ@ K|ʔ_8?=hk ! K.{@.쿪 ܵT P XAri _,ωf@ #pl*L,̿q+J z~kԞ3 \R m @{ǻBQ,#1&LŋZ{(`2p!k", ҫv|*{\1#;3:zFp p׼*@<D pl0,ź{|XsȰ,[b+@A0 0 {sL,(q }͸૙[>: -P` >zϷZߨ PLkm\~՘:~>>ie{ AԌ  R, Հ\Nģ+`-m~bEmy MQƵ]W~a]~وIQn毓ɬ撻ڣl} < )ΙP T0 RT 9^^ه>ыXuh;i {Pl,T^ +iё.; .ؒ>Ѥpꡬ+GD OS\- zbN!Mג}/p] P 8Kˎg] dNw Ѱ __PgO A M&d.s ~3E r݉PS4 ?eXo)oc@ `  o7 'z..<>:y: `$ ES _̾T?ߵ | ǧr~pZC- +PoA >7P8DP8lQD-^ĘQF=vV $l Lx:{SL0PsJN0/xu g۴i݌ ݼ~kڴ^-L2N4[VZyڲ]M,^CFK#FBb!݃^6aYnaA=kuQhҥMr$4WKU lpi_vMv۽]φ sRQBu:E6 ^|az#^7=Tk[qǏW/T~9 3$ $rD0bhڑ l =zQO=q ^+5G$T$lcQpfm#}e"8&:2gyR^XP![Q׺\˯: [/M Q-? 3/v"gʄ,L/u4MRKGDѢ FQgM7W&H PrbʟzB@ ^{(R0<D64=s=o'9ҫp/@G4BC =^&4_}(ӊJ [QG-Gv.V UT! ~r"0 E^ut^dOFY|1jvQ5{i\ [v:7=5%A![AjaeMN9jIj" 67oF;mQed Un 'g\y0La/jq o_hVY5e\iӔO7mfIm݋oCq!l4%l֡,_j‘pį=ҲhkQA[PiH`~V!9MIΙs'6{ÔgOv߫=j[˷ٝ$.(0I!J4ǸAvR4$E̤`'Da U8*\! e(v;4.ح)! ȾaᨖQpsܴ59OgO Ή@U8EQAA g,C$I}F\A:#y7B!N+x!9HBҐHCA!p;A Dx8 H`e8oEs4OBY=>=5.gO>NE"h@  F" \+J;6x]9Aef6Mnvӛ&!^PYp0E/La`!"pF0$<(a鿜[[\ L3(5Fq'?Q:B"(E$*#-Pҕ,EiLS*SƴA` A8x=)՗NBDxԊt"nYIkĜ+7T-u}M}*Gժ;"Uq\Ԁ3k] U@2h12&se= {xcjiIpmLfI˾.jd)KYVִ"R{-kUpmnu[ކI$*ue-+u>3!%fuJ6Ímx5[yB Yoջ^YX$nzFvQkW~-e'U~`I x%|B=/5awqErd&7Or\d*縩V}K!K_F1 *Wr\KH:✎9Y͍g>{sgBZЇ,Ec%Gs\gEOΔf+-N6HV6֑~n[dEY>oTNull:ܳ.w(þw}X~ ng?|2r||.}l|_=Uz֋_K3?O xԿ]}?|^}-b~K䑯|G=W|_ԯ/~Ϳ~o>>/>~HwK3+@;@L @<| | @@ @ ܼ<tADv A<A#$B Ĺ!,%d#D”SB&€s'(,*BB-w.Է/ 0rC2T73V6=CX}I|D=AE^4@TUFlÙ3c\dEhg<#DOVK$O"@?BFuG84TDT)Tԋ6FMTN+=JMKT(E'&=UU]*mU~N/M* Usυ]I9])BeTc%VUYfRKUJS?˿H$U3dEoX]U&%WYUrseVgeWWMW*UEDý>֖Vb-Vpw5WV=WMr-؅m׆EUSi@̽ѣ? >VLׁEVe]׃e؅UXs=֑uXg؈uA؆٦clЎ-UyPYerٓ5XuR-ٕu؞S@?aKϥaeTtdI6夻T\<V``OME\Tb)fKbכN߬'vNff NzNV~ƃlc%c/taմO?vWc|LcL cT$Ob>F#Nl㹛΄a^Ob> ,=Ma`c<&aVn&^X]e_~^;afGW`ceev8aff+gPiYxslflfw q&gkF-ufvֵsB[Pfxcyg~g{tgzf~.Fg}hVd+ g~ޅ$NM".\~hleh\ia}b`FFg&KG&hVijj}b_.\hej Fh\di&6@kxVވ>緆댐o뺖ݱ돸kn_G&llVa>lvlXlknɮlilg^i&оj.k`%)df&dd_dVeܿe@EFm`3i67lnNfFaWnsnlؾ>n6okg~o`Vooam^khWme7k ge k d jOd7^pp̎oq1~qq'^qnqqq  r.>rN^rnrq~F%ߖ-na66m+>lb&Fj66?s&~d0_1<=7sc3(n/ts45/G>W_?ۥtsٮrMNlK,;_oQ7lRPS_VPW_XoPYhPnUm\o]kZ?P[s^p_j`PasbpcGhdOeg_hOlF?/g:cͨE0 W%JNtӂ-E5ϋ!cQOWl 姼1l} *,9g?T3-Q3]) &|ARW$Q%:6#@F,hDK. !OBO%82凐_z%,%Yz+9.s˖җ409`L&0YLf"әl49h$ ;PKPK.AOEBPS/img/proc_savedsql.gifX*GIF89a99B99BBBRRRccckkkkkssk{{{{{{{ƥƭέενֽƽƽ!,AH*\ȰÇ#JHŋ3jȱǏ CIɏ'^\ɲ˗0cʜI͛8sɳϟ@ JѣH*]ʴӢ R>JիXjʵׯ`*ٳhӪ]˶۷WKݻxV.߿ L~+^̸ǐ&L˘3+ϠCnyӨS\zװc uY${ N|ȏ+4ПKN}دkώܥ[=a"ʼnϧGoM0-LJ~h` .@Ma @Vxan衆 v"$~(%hR501(c4ި<#@5ՋBcLZhS'%{SVI%{dWre`~)fdifhi YU ̖}ٗy) $Qm؞X}i'UV&}ށ Rf馕rziUKМ~2vUqn*KΚ{)_Қj [l| +w蔈֚TYI{%~:{{S^k[, oƋʫo`MVm/z&nOTq.ZU9 8p߽xwKԢ 8 1 X<)S msKC,M-P@$T,JԵK_{-s-MԢ:+Mv*Mm*aMaFm m}8uc#(Z[0B @6 ?o&#3 o&98yږ{;2A.A.,/|<[{MR*.}M3{7,yV`~rWo gw L &WZKJ'lY,%`(!2I7=Tfl#@挞0 ]J6i2+ROy,Dxy Ҷ{y}dvv%ԪUd^JXX|eUN8PjV l30$snNI Vlfƪq-ܭw6^s{Qte{dsHt@?˾'^-*|~.&obWM*Bus [YnH@`u}&# +Vn`}x*0T!^sCkg"xkL h7!)!2&!h#LKMJUB)"R"`b9Tdyhj[bprt9vYxyz|~ٗ9Yy٘9Yyٙb)eI9Yyٛ9Yyșʹٜ9Y֙Ҵp9Yy虞깞i))0'0)Iɟ ((* J  :jʠڡZ !ʡ%$ʢ#"&-Z/j20:;8ʣ?7:9zFJD I*EMڣG NO ٞ\ڥ^`b:dZfj)𞘴,1joqjsJu wjy {j}J *Jjʧꧏ ʨꨙ *Ijʩꩪک  *JjZɦ+ˊzϚ:IɪتzsڭJ֚Zꪬ::jZJz꯴e*ᦃ * 갢ʰ+˫Kڱ۰$%(;&)+. 2˱05k/ˠ y+\Zْ-[گGkI۴KOQSUW˴ZXP R\+VKac+k[mZ#س/4;۷16˷+8{jK˸+븗 kK[*ԳʡB[z۵l{+nKkpk˭ +K;[{ ;ͫpzZĺ㺷 K۹{*۲[k[{;{ ̾96Sclij;DTk+\|ڻ#%') +,j/1352ðK<) {["z |%W W|ŷz!iƁ,۾p|r!WY\OfLULjƁl"p<ȴƳȎŞiL,o*;B*! !:WL;W|۵Ԋɾܮ~|ù %PQ,<˵|ˠ > 6L͗<̽Y̼\|0\|l|,iᶼ(6zKskZ P}ޡttZ^}>]-5lȻݽ>Oml,Smڨm>lAN}X=6mde% \nKܟ:Ѫυ*؇>}}a.i.f撍f̒X.DL<:9ڶ] naz^(&.:>P\)}&=ǎ!pP1(ܺ^캎 8,n M|,˽팾N妽N9N (.|m)h Ͷ؇I+=[_ڵ)ܩ5}U/o'~0˽l.cO-% z,i{<ΝԈ0ݼ2= k?Ԫ%[pK.Ï=3]yq,_?o:mLa\2m贿ǿO * q!(PP@`P@x01.1EG#I, -]ҥ(Mifʜ'M4rdHDY'ΝK;5`ԩ$i Yb5QRm<:$шdUTSamzݲ[E]t b}Cp:1ؽ2֋W)k6hPmJU붬۠g%[} 㜩QU:I]w^ʺjY3Ȕ 9 {lkDխ_ǞV_]`Ky?y~|z/=~Μ[>/?dAA 'iXRn9̋.3 <鵐LE#KA^cqER?llL 4<qn Ύ\R"I40G ,'1LBq2WL* F1$S339kҧ6|C䚃pJDQPC#CȄ!޷C?QM=w9Znmc4^L>&gyyu^gViv:jj:kֺk:ll6;mVmvnݦ{nn{o3?'pGx'xG>yw}tn)槧z>{{?Ջ~G?}g}߇?~{w>9?`G>mD`@6Ё]^r?@Ђ`5A4`t%$a L:P)|a Yx<v6auC J%Ы g8T!\D$k8E*χ X1ш_!CIDRXD2pd\ݨDrюwc I/﫣x4FыIӘ&w1@793#2OJh*YHN|%ϹO~Bp]r.dgI{BAV UEvrTg*=O[lI)evUFw4m?Ey愢?Qxx eC]>T8!*tғ*TgiU}:I/_'ПF E&Wڻ_:ԭm}+0#LtmETg2.c=8ֲD,¢ѦtlGC/U%5I YwtWWuSejUYVZvwM*\׻ m:[ZϚ&p)YiS.B;Jjbָj2)Z-%fZV\Ui;n'wޣUC{[غ`9Zu^4s[vֻ 0HIEVeY[[H gT2ܮk}'^u>5/Pѩ^ mkWJYkXM 0X|MtpL /z~X]W7ŝ>:4[q˰rkO6Ȇ\!u |Oϖ"]2c]BuyP@\eYn#:b/\OSϷ}c?~??oG??w??d 4DTdtֳ I @y=>$4TcK\<=5l34y<* l !dA̫$|9i#8,'D <*X;G, cÂ;':;T7&"8S3C;Ci2?{> %6*ăK:0dӃ817s:IҮ&3 Lgz5[.Q49J4[;/rGD`[:W#_T099PL;9.깚9EcE8N9,StF&тDA]ܮl:FD1"/m{Ųk)CG,[2%L]^RtF%FĘ3ǒ[(sr7w.A3H08HKƉ#À[\4""CCcǫ4Fd{CTS5H뻘)63;as&Ic2ĐӬz6䝁JӞ (J?o)4˳<'D˵d*An)aK`Z˻+pqKp2 K1-8<ƨ+ʝg;&3rB&3)"B3#LdD9X{LC̬դN8|OL+ԬI4,CN1V2Fc3v65Nc678<=c=c>c@Ac8/FdmDfdEFd HdGFHMNIFWN=P&'dP*TnQVVVSdW'dY [eR`_Z]&fT.T2#E.g̖^'^ efh淳V~3MfqnFg|$RnBr>}tYv\Zjs瀶p"-^]\FffhSf=G\^{Ɯ a;ZTfͻ&Fifi;閆\Z阦i{\M_ n=1~^v1zܩv.qyǽ}[tS)KVc}Rh;?^943捗ytC#l7 w~ue|9)ŠM^*}v'|S^WoN;JԆ#>{õ79԰(ԞBg)L rOyc6Epl jz@H}d I2>P.`w?e0̡l&Uf2Tƿag;Lbh?A.Z a"A%ˠŒ@-Bl7Bao#C_Ay o"F=|<HC;g+ Geq}yLrCY9 I,rbdLĸyЍ!)k2TaX4B 0#"' HQ2VCH[~t2#Xv:PzW$*JR4X&+l͚fٓr<<'̘1R $ H~Cf2?su¤CB>>"xEʁ׾)R=41jt)CV4M,CGЈ T6ĤPĥ40\P:ѩ)BŪ*7=5&J Sԯ%JjO֭4\Vjֈ-)cJY&|+`2UWڏe_2X5E,O;)bs^Қ= j/z~6a,d;N-]ȷ q$↸-r{\΍jDҧ&ͮvzw?.+^Jw=z2|K_ͯ~˗NP ; f0'L Wΰ7W s <,Į!1W?F.g8qb`U1L"KFN !3P.L*xVβO-{9L2hNsL6yn3L:#Fȳ>XMh?&(mF;/x^I[Zχ~I/]L?Ӡ~K9-iOdӤ^TS:԰uYFjBյsjYjALP=؊F}b+5ldG^5Zsf^vmlwVʷmjv6 |?;vns<)a;78S8zK6GNr:|8?<[[*׸Kd,ǹ ^s3OMS|>:Ɂ;7zƭrMi.rشs/]q3F9{}5 3~߂|O:/|>W[<3yO=,֫Ѯ},8_2w&/?O L; /S؟}oGO~/~O[;eXeXd (e׀k cXcb؁ b$arR{(*,؂.0284X6x8:<؃>@B8g\w6`1,'0"`@  `Pp@Іpr8tXvxxz|؇~8Xx؈8Xx zeHLP(ThX\`(dhhl膖Xx؋8Ƙk'Ќ ݠ x H Π ɀ p `  P@Ў8Xx؏9Yy ِ9Y@860  ܰ Ԉ Ԁ ȍp 4i ( @p<@B9DYFyHJLٔNPR9TYVyXZ\ٕ^`b9dyɑhEhGh' ٠ 3I89 ) P 0٘9Yyٙ9Yyٚ9g6 sY `Ϡ P @ { p ʩ 0 ` P P @pٝ9Yy虞깞ٞ9Yyٟ9ّhP  ˰  0 ҉ԙ"@p*,ڢ.02:4Z6z8:<ڣ>@B:DZFzHJLڤN2*o5і Z  : b yxq7Pxz|ڧ~:Zzڨ:Zzک*pȑy p P f  0y0*j0cƚʺڬ:Zzؚںڭ:Zz蚮꺮ڮ)Yy Pp *r i@b\A0{۱ ";$[&{(*,.02;4[6{8:{t\@ FPp mpiUPG`)] ];d[f{hjl۶npr;t[v{xz|۷~;[{+wpJK{   ;b\[IApۺ;[{ۻ;[{țʻۼT z0lk@V`PKC;ۿ<\| <\| <+Jlp @+ z@s kd:l=<C :9FJLNPR@B=D]F}HJLNܸtl~w`og@`X@NE=4/&Ppvz|~׀؂=؄]؆}؈؊،؎ْؐ=ٔ]ٖ}ٜ٘ٚٞQm+ )MQ8UxY]cXgk؆oHۼ۾=]w@;դ}M}݊ =mڽ=p4і͍ڦکڬۮH۱x۴Hm@0&G]-ۯX۲>^~-^ .A-h)s'z((~8:] `~+4QSnUWY\^`>3C J݃Q4>{w|8tnyކ}~}0.Nrzn昞难= *ᣈ#- (p.x.YuN耎>uN~.>8m,n问˞^嵾^̾>1NN^6N?Ong.~  onWx^tx?V_^,._nkI>K.Mn(nL?K?'~ƾ"Z\1oؾ5%0=2~t^l~_w(郞po]6_{T 4_dꕏ*3OiN?ߨ䯿߱ /?._O(ld>l _lf?>qO@ DPB >QD-^ĘQF=~RHLD~-]tiLذ#'Fa ,T0AB:h`0P@ $~VXe͞EVZmvT$K4e}iN> %jRN8pI*V\>Ydʕ-_ƜYZr9t?9wthѣI6u/~Ufzf޽}\pŽvyѥZOg^۱qݽ^xT9hܚ0 Z*Xwy0@輔k=+5X5à r 7hC 1DG$D2%R.B裐6DwG.ŹF {p H)J+HHVK4n2⋰{RݰdM7߄3D-W"k9$OB$PCE9Nt2i-P(L4SM7SGӽHɜqJSW_5MAsT S%Ae6XaݑV"mm >@}XiZ]Ks>ͬR5%\sϥ [u[g]{7ߒd%dIswOTwuWz[7af!udϽL͕Ypj ڮ<?9C98!AO~1aoƙYрOյYAcYdOe0U&(锯ij:g4㝰'i>傴!ᮻk ji2dfp&t͓>֑Nz \>e~_5("ى{t,p}L1z2ȪB wz;`ȟݻDUpObRDȅp`Bk%E.vы!#D,KbոFlIX.fQG. pe3ѐTȳ`B"%9 *r[å1Jvғd0 2De*JIW q${!DlyǴ#t*Vld% HKSqμ0ybΕq$LLxa Gq- u(o 5t7)C%Neg:7^9iiR;&,iN~`fr}h7: [Gk>]btM͔!KA5ԐaD8HÉݔi@ S 3!msR¤}+U道I%HRէ|*HG%ZW3^iOX%PYGX^)IqLΏt{!:F2RF%RY̯Dd]؜~Ya Xٴ;eiU;SVi/[@f8ԴVMժֹOֺ&QҲ2+mH8^텯T*_K5Ռ.7v}.t3QGŕk p^7`G ϵ)7@'GOb؏I_nޢJ+K8:G\#uv޳tu~g}ź7zpXSɄܞ˜󊢛Z?44,z?$?ƩHɐ͔ߜ@Hv"/yB,MEԴ :Č>$iFDB$OjtDB W,A]LO#DdEx|GhTOJHꬭNkbMH#9FOzC Ò+dKlt,* ANuK*-NB>LPPJؤPTFo0DG;\Q\EqMЬPOҤƬf<Oeb7R;',ER\G)mGtϢR6R<$tG*6R,.ό(?;|Jɘ\9tTN PðșG6$MuTtIj*LȮ۪H(=EMJDC0%ʝ "_=:[P.kl¾|kbLqV6VlmeJq5WR}$F,sןJW֟2]|"rP}4JT;4(lUX`Ґ5m4ЅXNiXV!mň}؏Քw]3ҡ1HfٕЁ-DC8˗˘e5}Q٠؝*e3lSebW#ײ۝L/E=|Z)Wڰ]5Z5[|![H<۵Eۧ"/S[[kI[aۼ۾%eX}<\ӳ~]]:NR"DV}ܽ_ZN˽$<Aܨ!5VYWt@Cԫu'%Ե:-=]m R6@,]eUdH@b;sN$X=NXSQd,d-B{ψ<|ɯ:_QôEރ߰JV٤_ P=R7iĒOy &^坭dQ>s3]>Oh|OGF4},Y,CBikBI<'$'Sӡ ȭD[ET\Rrؘ`qS Á3rV<Sb/4Q0c37|+b76OPY9GkR/ޅIb~[b2j] ] n$y8E߇aGn %6_-#.-d7eM 7V^/fSBO7ߴ~^Fc`;b;fR])K~3nOVcmdC.J=FKph^hSWوdof¤emLA⃉8LFT$Q||n@NUEɀ.m/g7sȬSQh D|&uWͧKEHH0nT^eB^CnD-۫]Åw ` s闎;SbWC騦jiQbѣi~F7z]k׭[fkV鴎Kn]|׍ j_-^맴릅h\O5lk+ݾnHV-jl>t~llG G>925a?l ml,CfUf^fĦgE8EtlfY^NnLk`tѿiv6nx>ևvͦ&վfo)nxaT솳 onkkg' (DF oib0AidlFoj*墥k_FAcq@N#`N q:>m>c,~lf/_o Lnf~hqu' l.^>t8$flf5NmQ\9񤶵L*>(.^,N5V.3rR~?9quAVV6 mt_tX3%(>FOQGOt'ENuq]2Rg#&Gz|ufsyg;ucrΒVI<7=7u5hɂrwwI.'vw}7'bsno L6s'xvR_ $;TxO  [xg Cy:7v<֝߈U'Ճչ܍Gzx&WC'֙rq' Huܮ?]!娗z\z*zN^Nwiw-n}ru/^X%hwxw}lVwjKf?z䜻Úa5Ntԩ vI].y$I*$M:d0&%#4g\ h]rGPy&i&mHQYa\!] >(޽9(z(*bߣw<2bN(袝z):*n:h?u 'z襟aniz+렦5pRex% DJ;-ZJW{c:v)A?_ɔΆw-.f pmy{VS6Kfy|0 + "c {1!0J<'<35ۜ0ɏTV]jMq7}4I_򤮎IJk5]tN\>L5/]d^6q6bC ufSkѶ܁ >8='+v^8[~F?)z9饛^zOT*lڀ~;ש;:F>:<ȺCZ;Dӎ<[_LE={=?>>髿>>?????(@;PK>191PK.AOEBPS/img/script_import.gifXGIF89a\B99BBBRRRccccssk{{ƽνƽccƽ,\@KH*\ȰÇ#JHŋ3jȱǏ C\8!&ET$˗+SlIK7i|i&N9{shТ?T)ϤG 4SFjʕjW^Â;,R# (;5ǵ;',i@v38HpBȐ  P8ivouɒB8~ D伅GfV:U׫]ǖ:6۶s;mVu#FH\s XXޜיgw^ۗu&Ͻ0;vݿ7Wn`:|#;nqe5o`pզ`kl `7~ qVH`{$jgxYwb(w,҈b."~7 aCH$U yKFdPR(%S>Y%I~h~9PIU&F&Y,Y$ix|矀*蠄j衈&袌6裐F*餔Vjgs 靟~j)ک^Jh**무j뭸z'izޙ lJ,&[,&K:k,Vkт+N{mvJ+o9ᅧ;'l'ӹG,WLB:i}Gz`n0#WB帩wݗ831@ EnJ.MK@"[]5[w\w%\-6d1-03 qcz'_{-s)w9 tG.Wny_)tw ٭x9ݚ.ФjBv+u2k휗]ܾrn+267$:Oz6'_o6leEr![~陋 _? `9 )JMRUIAA.p~ Gh"шq7BzBG902SONЅ;z a8)`s "` !@+9I"s(QM q}`Ġ 1J0K(B66)38pp~iǽ0FbT tq#@8H@7((? e&RdLd*x2q<#,HB‘%<s9t.NԙÞ80f4'0jVSؤ5 lzദ4IoN<:u|}@JЁ=BЅ:CD'JъZN|ږj;v(D RV}&-WƮ⎤۝J7zҕzԢ80Ӟ@OJԢ*RԦU:]JժZ-vs::ujX*ֲq"io)\CJډjf[^6}g ,B<կ!+^ـw:!Y@r9~[g8$X}Vf^ݤ:F䯃t-Cd>"sB`E .`tځu<\.7m.tKZW؍v]n.xKW z˛^s|U]74K)\exc#bתe k +ےw2 vnvewz *k/L>T0NJL8α1B7%?2,"FN2&3N2,*SV2.s^3,2o %+g[ڲlq9:w3Lg>yπ`7AOj`35φ'B ҄i֯zz4IVruG-ja? О2vi"Zk*-86Ҙ^㟓-JkZ'U(ʼ#EFa_md{GN X%ۉ_T"c(k(JlI+1H PbXخdmp9̶t!~+t>G@8GK9nw証pHʡ I>  vO'L)%]/@[ ӥXt@3\ W#le#;֑ހ$5q(r~1PqGG.{t<Fn N}Wd$eyLzTlevÞv#d򬲼eXK^{ã^J)}c{ǽ+p?ӏ~w?y./~gWjtї%7Wb{w}Dqszb}(A;c&x(H0-,؂.8*+284h(JE,r;5.-ڂ-_뒃ղ)98S4QKÃ-4Rs?_RZ97S^xS&R3`B(fRQc_eHStR6%W2Q%5g_[xbe+e0}:1X06T?Ո8(QXs88Xx7HXxhwc0E5b˜ʸa%|FZ4m/()Es4n;d'x;a[%.9>ȸ~)vYy:;0ل1r`` WxI'Vz1_Y9:oh_RrR{5552yXɐYiEai)\x__:xBHi` a2i5;ۉ )I|)iD՗ṞQ]iY9/yJ) PPZz ڠ:Zl}:q*q8J"Z(z*Zw)ʢ!f&+{-j5.8ʣ:ڣ@BJ]}pRl JAʤCP:QSj>XZYb$]VڤZY*hJiUdTjҦpZY|6i$Ƨ槎d7je wXnQ|Z3} {ʩp1 G*:1y-dz CJDWSD1dSaoث {:Zg37Q!w[EzzL7'՚3yLa&gn"At`L$p!{h0jkv&D"ozuجرvϚ:qFCt7Tmq˱f pޱYH-rH#( nxdz{x @t{@Xt\kDLE-&Bt[K[ ۶zWjA&qa @tTx 7f8*%4PG!\z;bu3CTPf0E[NI4u!Eoj!DJI o+[}vK:z#'nS7qAmQ*,?[8{prAmU)B-"05!.1*+l!nq[;s,Qrr\#reG:87ʙKH%GwWx!H}S<Ί$ \L0gN2?m>3ء1 d?z<= 9| lˮE̮ȗ#'#cܭ>{tR75\3[^Ş:h [Bn[ f*|rnrtgzwŚ}|< *\Uʦ,]]LʫLʨF˲잨ʭ^L?1聙Zɝ`I*_jǕ ̟l،Ó͟L<Ǣ̿ˁ8L(%<(\ϻBl=}݅v8 . -YWq8y;E8-9Wa!,8`&4$ P# AXP9!}-Ih SmxRйt(.0-hu2PQ K=i[}>͘M /d(i/k]Nn3 r]yvׅzw~3؂],H؆1؊*؎Nْ]GEٖOEך&\Uڤ}ڣڸڦힷڶ۬,۳ ۳}۵ںM۪۸ۼm۹ _4mW4uZ82Y܏l}-Ӎ7gݷj"F/m'Ѯyߘ[DK1-~RX5;6'7Y5gN+V¥E-R!.v 6#^I℅`6a([R+㠵YU+{X+-y~:Gn|-8̒CI.ą|]g^T.u]ۥ۾ނq>18X O.z0(1N*# ?1H`8< (ia8P6`.&/3 '#-)kdx&5yy]>EoAMҢN.bt2Ѫ 5XZ~XeaU3!<-덳^o`/5=j?,cӀ3YX6v6<_SSUDMnIS1_c RWN}9_ѾL+TD>Q%7G(#156\~á/QJ]֟]{R c?2&$8`A&daC%F8bE5fcGE$9dIKdK1eΤYM9uOA%ZQI.;PK)^PK.AOEBPS/img/wrkshp_view_table.gifx=GIF87aa쬪ĴԤ̔|~|f<tN|l􄞴Ԕt~tdLrLnl̴¬tzt̴ƼĬ||´ttRμʼtt$$dnd||||LbܜܬԔ䤶܄̼Ĵ܌|T~섚¼d|,aH*\ȰÇ#JHŋ3jȱǏ CIɓ(S ˗0cʜI͛8sɳϟ@ JѣH*]ʴӧPJ@Xjʵׯ`ÊKٳ6@˶۷pʝKݻ;˷߿ L8ˆ+^̸ǀCL˘3˝L5%kMӨS͒u盢U˞M`]gνaMȓ~տ_UN|s/gOXuݷ˟OM]FR( n~M7 6`eAg t1faa$($݉( 0Շɔ<@)DiH&L6PF)TViX2),(S DAihlp)tix|矀*p0%h0裐F*餔Vj饘fi#.)ʀjꩨꪬʩIl+~v vs"~!L,Ifj@+0+zXP&+Kƽd[E(V*g  G(`} H0T GMD(Bj?@j qX48P|8)%b^$/xq< 8FdLP2M HGьeDcG5э4_'Ed!W @ \i2@IJɒim(4ؙ39M<%*I5rPw)8KZҲLbJ]RdeA$L"/zAPf߸I34#5)Npf b8m L4p Pv @܄$WɟeҤm8IpRK@)qJIs-oK򌿜Fd^nMxL"#Vg 9>8zմ&8ˉӞK;y 0= Ai%Jb+Z4ePUU%ZK Yj\jUjT?;\V4 _9V)q]Z3YϘlId"{_$\qD%i i_Pg4 P@ݖ[Uj5t50Jƫ ƚҔg.[ݷʕser:{-_K %|Rņ hL&;YzLΚ:5gPT!L괜估51\k6xPāH#T@ ^^Jgʯ;Rҝ.]b$LC:zIk[1Zů_Miea<4s`Җ)OߜLh3:φs }B/·ebMHDrP@~XDl[UaɕrTy,abr `]$ٗY^2F,^2Uu Q,[D݊l8ǽ1q_ɖt)NX)#L`; ,!ho AMhVgdp>g޴zRGFotX{&@Wu``C*ЗP `wGE.(Wg]ys:aƀJGFx@Xx&oq crAP`'X5x<;؃"l8s糄XфUf@FPGHW(qgEDa|2J_`:`LlhzMQt@xu&VpWY[ *X)]-a M22QDʸ̨hzXFGIr1FL蘎:L4Q0X8R0T@ 0SQx9Y"P6i$:@;=u3ؑ{BX6?Ap(*B`C@hSYDP+y8:-95QA08e*,. ,+PRY4X2As46C5()`7 4^j454@g#@%`ph~[C-A0`[P! yסҘipp|y/Y9+7-ȧyI,ٚY,ɛ,%9YyؙN9[y虞Gaٞ69Yyٟ9:Az +9| ڠ:Zzڡ ":$ z3(". Z2:4Z6z8:<ڣ>@B:DZFzHJ<ڢ/1ʤR:TZVzXZJOQʥb:dZfzh_apr:tZSʦ/aj2AIy9f2f$%K3aL5::jf m`Wz:Zx |:ZYJzGjzf ꫺ʫzyA)+zK*g}|ZI꧸Z/1_ZYZ ʮ늬N*pگjK~ *:;ڰJڰZʚ0$+`#)[+[KJ-k3+'%k752V:z k$eꊩj* ۩&=۳8{hۥ@0k+[JK<۪ ˭K Kĺ;'lJK IѾ59{ͻ ۶DC|Dܷ˻ϫR 8D+LKJzfʽ1órnzьs u{ʩ[} M=]i{ݤ "=Z&}(*,.0 ;6}8}%oy@B1C}Ht5N#]P=T]Rb+Z\^`Emd]fm4^Wiʲ\Q~ቼY\-l!]i~߯CD^vjv@>yw^瀞^xwn ~ n~ɔ-L]]ʥP.n+ꂬ] :h㈾繾뾞C輮N.EFwrBf.Vɛn\,.ʡlKNNv+綮9:.<*^1xnWWt]fɫ ln~ k ߛ&^uz>>n=25ܥ]?ֈ=]}C4>~®R?Wrsw07FR m4.xONVO=o:}0E?pr^\AO<~NT/VIdsb8"ݯ/?wȏ%ƿkޯ%?@rΝ?#rq!@@ DPB >,8 D' b=~RH%MDRJ%nRL5męSN/7VĨbLEETR>+eUTU^%g0~VXZ'B=@mAվv@nƕKmZw[]+pͺ}6&/ŋuhdΝ=^^I58XuҥW}wuaEٻ [f ZrKNhٴQW[8k2o_}7qob*=vC٢ǟ:B}+65 /3ocp'[M;N āB$Q :D*Q O4K|UQDGtQzO< ;L+k2Il+RÔk;4ᨋ˱,0&8h4y4s;]aσsASG2n$H.S3)0-ӥA&N;;Ӻk 3UT` ͜'Dn3̳Q>MPCDEq`uHVZʒ.< ת6ET6Kr $R5KwI֥+F]/C}$vű͑Q{Z%'*n?l B,( WvsH9nW:MDUۙ\Rӗ;((i_E5a ٤QfTш5U^N^3_m9=Y=7F;mHh:2NUV٪zػN{ҲDv\uMfS;&Sm/moaޛoџ%T_GdztC/^8M\ K\J1wâA\gǩ VFbQ8PB f[eCz⹸mzwG29߇ѳ㧿~ >C`8@π_@W `"TЂ`5AvЃaE8BЄ'Da UBЅ// ІtCЇ?b8D"шGDbD&6,:|Gn8E*$Ub#3iы_T8F2o}Q@ ոF6эoc8G wcθ98яd 9HBҐGcHp}IJVr!%5Inғ$>9ʵٱZ)K("1>VmB H%LY;-RZ2Y.=꘵qT9. GQ^ӛιbgvl]5#Ūu[m7A!Q$g>#S3q\hki ˛R[˗rO/zQ5oySFPqrlJ`CPtFIs,={w2oP.`H(0o{C꘵T-˨=-iLq%Qteڋ)ƖUZk9(pN}*!4{l_&tAUm*Nb´b&׬w5<(YձWQ2-`ټi1,bW ֪9uiHK؅mMcu)dEBךZTݬZZU-t9ݎw=oĽD7Kdrܽ6tsjuWֆ4p{]l8_+C%o>w޹LM]z߈|$%6/͢ c.RO(Gnu'lvSU̶ ,e 7quMkWj5̮%{blUHcXֈUt$1^Ә{1R교 [娞ZwoOp zsRES(9kAo\tiiۖ+Q\W . `- }Z7֖JLUj fiVsͺ@W<}ڨTm՗מQv)F5dSE[+ah3wpmLנy+eoP ZM}qvU.IlgWq5!%ě[Z\?;=^==wwVnQT;j!*{iG ImJwc 3>rc* 33@)P囙)&ɭ:ģ/(KKy;9SgQ=K?˕:i3k;=;9SJ5>4A O{T6L#C3̴ӱ6t78ÀSCH:43C} ;?@AL!=Cy BSEdFtG!C 5 5ils1{+6`'aT& \s4av:# ZDs;;t)v Æ|+lY:+9@Gj9\A[4/>JgI@ ۣZI³ëJe{zȰ ʮsgl@,=;KiC3LȬG=ڱGpd ܳiRۻˋF{4ڬMM[L3b8ʾ̮T3I-/ L˚ݻ@*kKwP>]If\rH >lK>$8̰,N9߬|6!GB5CED@T/F.FT,zIM-I)L F\TOP:EN%2TlTUUe%TS}(LzYED&UE\&Y_%_V b$bEjeU1eu9hUllVVnVlVoWpWsMomWqeׂ8Wu}WweWxyC8D$UymWo5vW5x Wp׃u؈؃eXlUX׌X=CMzր}i)>mVQZX]م}XؗؖXXXٌَYE)2%? !Y|pׄey]ڛ؆MםErM=EТZAڨPZٙXr׋ڪZmXm[YwLjV YVK٫U[ٜmۻ]ܹ[YٍYPK=:%Z+NI*m\[ډXEmȅݍeȽ:oZ])-\]sEץۚuڧ-؅|R]hM^#mEUV`}e_"h^- _ ^-%k6e``p~`u Ŕ aQ_ !T]DFahfޡ&aZM᩻&%F5!ɸb 6b&$N@a(nO-./01&263F4V5f6v789:c1F* aq@A&d-macBvGHC(·D8'`> hB7P*EY]}I|켸(IJCI[\̦|PĤ`>ʢM0PcnMy*lYІhd]mU%,f+.f˔Rc uɴfdn}GtѤʾXddQ֣CM!OUڛg,_ElnQ+N)=Q?ɤDMx) P|#Rf?"cg$Zi nSAef-w׆mn.=ڶGNV&TmরVfFn6d|މn$4 6$Vo&v뾜eVooo&/gGPpv_ mÞgFNWr_psgwGۆ8q[kP::lqƭ=davzWg6q!?|A*-%'=ofzO}W_{t/tǗ2:[Y~.uz]fm[Vgм;5Y^CƖ x6 _;Ov%vuOZ(x0qP[;23[h8qa_ 7®.;3MCŀ[9p?[Wh,i-pZ )| uw.*XӢY|aj<ŇA$0Hy؈@% _'Z"" )jX|]EvQp$n'Bh,}h)ȡҔ`{ Gq/"4FO MTN^qfhf>|_N_9865amJdqHg=$Rd+b'.xyu:ϔL,$=$겐=:'}(D#*щRt=] YԠ*R(T&>1ҕ~K} .B lԻޔt I)K*0id<)Rԡ2=**/oY#RI*cԭr>P*X*bŪf=+ZӪֵnW*׹Xtk׽"U]+`WV~ ,b{2h_%No=I]X0r6\4d_*Eu =mղ"F)K21m2[ay-L&W-wS&a5k,e0=&g93%t2<VtgY]j`X@OCgxd,E7*gҚWbzb$tGmBwihzY8>$o-&qsآ;6]Zm[7:U~7'Z;ҸoA\c3u#kQ֦Nw;(qI -_YYJ=]9VeqT :]@`߄]aй!}`$%! YT&!\^|M)`L[")V!"""vti!E#d 'V"3f F#EE@A6a/jcMYFwLdE$LK֤u4a,xdL&PP%QYdOa%e!%SKڤTSVMDTf%Y%WU?j%XZWK`eXڤS%YdZe[V[eہ9 N2)4c>qQM9d_"ha]%ZyRmpR&b-R%f%⟵P Raqh6iO񄎆I rQmmO1 _ Ft$Iq'K gYqxFfl.lXsetʚ  , f"'!yvHՑ+e˽g fBaDb}[P&"vf>ofn&E hk('RkbV%^v1fAJ'Fpb*Ď&ged^D\cz)-9)ZTj̘i6cH)miL)iiߟ*Q&.*6jƙAj&٤R*Y꥖Xjqjا߉fWjܡj"תعVj֭jZVjY$@+kkְXD@44@j)U:F 2@$(D@mf]m+^@U @rV\kRD,@D+Zb+xD(@Fl,W%-*\L,,47 brk4͚B@G(ulRլ,ĚX+ql}:Ɏ,,¬"`m֞+,<lDЂB·ڮa}%^G@(@@Ԧh,-^:k(nJ NmxVS:,0r.ߕ. ʢ+ޥ..^f!N*/6=/&J/PobohUzoroݘ:Uܰo2 Uگ$o/0'/07?0GO0W_0go0wCL0 pJP p p° Ұ q'1"7q2G1fBW1tgo1w11111DZ1ױ11oq@;PKK}=x=PK.A!OEBPS/img/qry_bldr_remove_ico.gifGIF89a99BBBkkksss{{{ƭƵν!,AH*\ȰÇ#JH3jȱǏ CIɓ(OZ\9q˗0cʜ%͛Tɳϟ@ JѣH*]&N:JJիX}:}*3j֯`.РҦ}P6QfѪ[[Ӏ߿L8:xXxq .=qǑɗCm@*|nQլ[?ۛvic&4ȑWHΓyreұW>5rլ.Gp@|   d``ƒ ]v!v t]e A8!S \tС^pVnhL0@!XA^ 7 $m6B4@@FF AV݃2d BHTV@ve.e`& B?ni;&AA`0Yv=)RP&j՘z]j 0tۦv#tYy#?HY~I-vY:ၴ*(U~'D:ԤI@" 'hP N듷:%Ӕzh,^vplW>됎Ңzr&^ipT:7躾F.ԘXpb@k*pj4ɭLjeJ.JL]* <&)t172Y#d΁&6jvydim}--F=f Fx#wT7݈'ޓQ;O^=砟6yc5: .{zE߮;KPC/ -7G/'\)}4dwo>c>o_ËJ׿[ Z| 8BP\.HB/lC>Za /i&̡P=m'zH=:|T*{TgD{ iLj>a5yJxE"FƋSAoc;z;4 H*1 (!bTyE^@dG J艒S)FG"$(Y9~Qud9)J@'5ټ^z/)VsX~#(ٿn.s f8ljGBrMRrЙϔ4cHZd)K^8uD^#s2~6K=i͝20P]* =s ҖN4>7Mw<(NsBBTJꩢHMR)K2dx( yjNЈNR|943U͓/$Y/h]ѤO?ZC'QYi,RtL 4tAWmFڹ\^!)Yo*1춊ԘuH A=qԻ=dc[ԿvY?mOv L_y{<7jojoLQ2}@7H^ݯpZ+< ׷Mtx05Aj %<]>͍f-ZEC?݄ef9xNOx#W'aֳ'uY.a;v_Ѻ7g>>?wս찦zg;k+~;.,{|g þ#^'IoG6x^kk~m/˧sd“B=6gМN|ǽ3>W[U<]?BsTZ{{JH'Om˶Q7mpLfxjx8,perr+7L qXl{'GrrUr&qvANg{f{vqPp&qu)5{7}p~ǃցWn (h#ng(q(NT6tsF~-T|Vr~Tq4sh|&EAWACbEgDnXp\ttY˗oHHw<׆Wa dz}hTpXz[x|yxGy&Q{yHX~I˘?h(јj茷h(|(ȍݨ|Q'H=hiwWCҗrgDHag7~秃Ȋ揎h(ip>Ix8oK}uj xXirZ3x 8qXsnGS&Fy5UD׃HvHܨM9hl/HQAɐ If=VɆX x&)bGxz(ԇj6I옕0/jx)k"yI8oXY1iNYyfI闝IQ؋yHɈXKךZXԸhXɛ盢 )ӗ6y쇛!CiFɉz.5؏ $l|ق I YN*q'j+wy9Yo#o oRx(lٔgnp֓npiQ6ES(4w6zNPɢẒJF%IyMʣ'gŢ^)Gz焞Lj#LLA(t9E 'Yh)zkIJ)稣rCIf"Gy{9ʙmru)h>R:=;>کPOqh橦=J7٪;**=z Z)YIY:0٫Iڬ][գ:jJjΉ#ʭ5᭽ ;{!ij탯/}6~zj{}xTmi> Y嗰^xJ4K%۟ u63Ա+)FZRdNv[bjJfpv֟=@H)yL PlC:;ik0{[ EA*Xkjb㲟i6=U⤓M(;itv9r[xKR+N-۴oPl+~˧Dx˵_;Mɮø {jꊜ{w.6 ˸[z亮v{j ;EĻ<+ý⫯䫗+Ây;< s+뻰˕ׇ^ 5dsN#&%e{; eoG)O*UZ*צՒɶgK fK [4 =ܤ(Y:/́\$۷ q<6\FX`Ïk@x|⃖ ܞfJ[ ܧ棹[ņJY+9M8 fc`񩘨魫ZgH&荲Ebj":扰2l>njt,6\r N˾R(@ȁbw:"ڤߧdj' 7pdf7fƒ ,p(<[l x0,4l8<,rT]4Ə]@TFK '\j tTM? gY= $|"pMY7F H0Hp@-4 m!A *`vMqÀ 0`X0PBbcJ/C 0(ۏ7ݘ ԭ Κe % 1`W?zd!$8@B7VzHી/݂"`W/P@{0l-xcR"Px1x_'0%m$PP-5 Ex@&|\BA 8ϋ B>ͯG^dU/ KFPφ h[d} !(Q 㔸`]8p$ȑx( | d,c>WD`ws !XP;qIV dh ,Lj2%F_A!+1ʙDi*0nK+3V̭P\P U,Ѩ4y 8imZ1*K:sCuiXzs2u+@QϫtXArЄ:T_jC'g!ͨF7юcHGJҒ(MJWҖ0LY0sS(Ewz d=7m'Ow1*$Rʭ+I]T-c<=528NJԪ X+3XjZza^a0XJϏs' 1@a XvmLb 3GW8F,aGYNJV,d,{ZÎWQd5*ulh]Zնec+Zv%kST[E5q{޺Vmi Ff@l` ]Vvmp^ּdŝ6P-iWʢw5qkZBF?5~[`0Q;]1%J3 >nwKb׸וnQ+ ;f0pπMh?_Yqל F;ѐ'z^7N{·?OԨN+QԪgPwX 5 k^t<=`О47nvlm۹7nrG܎ߪ\n-ox7=nt8v3.xfvz x=[W#/߷wF1q|8q{\zˇoVss;=7ПNt<GCtC}vphseuo=p{ 5ONӝ x}9O[oL7{H#eUVϫz~=$Y>~G"X6ĕpqb^FyOS֭l_f>ZȻԮw2߯FW~쯿p%Sϟ|`ť}{\^U~ȗQ{{Y&a׀x~~Vw\*ƁQbb'|~j#{vWww4׃@BNXNG(26$zR8TXVhRA؄*c(+^b,2R+f%#z\?R'!+B,rXu#TBnaH)l(tb"'(2(zI؇\b*R*8-,r+ĂL؈7%"c"w|#"Z[ʧX]-NY~th-x,?R"!beY*HWZ`` ^O^`Rƈ}5\ѨӸ~^ȕ7Ș戉(){hȩɜAg-Y,XF&eI֙)Tȃy{YٓٞiZVIC_3yɟ~iR^2abbi 99ȡa 1Ia3'ʢq74Z6y0Z";:E?j*E.:I2ʤl}*GF%|b*d=ڥI?FI`gy.fP'\nXYeG: &fbcjx{K饦/97Q9JZ/I$){gM |9eDy }j\ꩻ*L7ZzvZys{ǬrZъ:_*֌)i|b^}kڂgZcꚖ0\8JA9ׯpKc*鰳g*ʋBɠwxqʳ;iH ;L۴:F;zX{O* htU;^{:P۵h6eڶS;m&4Wz\Z[k[^O*{kˀE+5j%ٸUʜԅw\.;=ꙩg~ۺ|zb{a}[j;*N+˶h˺8^[kc&NY{+c[ݫR ۴K++G븱KZ+{jۄ뾋e|,G,FPry:K :˾ {*+,::dJr +sju[5 ܼq+)ܳ42A\ÕveCJLNPRIєrJ:I:hюNQ)Z`̧=@(LҥÄ)11t.GM:5 h5ui,Rb.>EKդQ`􈡽ū=";3d_˚!~8w/9/?U>LLj9 P4h):~@q=-SM[p3,@Ɨ@fŗVS@ِQԺ0ދKX|OqkIZQO/ݙNRGlwNNvQU*5L=򭫵L3JU08= ZxTqbN66zN rMb$f|9_E؁zG"j|Cd]kB;TP=ߵh/p=+0^GW\ aRBxx4WdE(b{S[J~KD耎~L*KK [w4rg YOc8kdׁX6~oQHS=سVHYfs7;fa,xy8akY,ZɅR(T!q r{Hn aL45k:aw'yH3u@UzGr @5@[`4([6dڴ{rd^E9؍|Jqo١fWv7zQ;n'n,5XKBbHszz,H3fDx0m?t#w4 aE[mH[kGLf!q6Y197=?@:9IKyM _n C#}H yY7Mn%jY#u` Z[ڋ70 Ѣb#7Zdʢcjlzi8|b)i$F:`#ŅWk(VYzM4Lh/a*7ZmJiJ8: fꦨz婣@v觭A˄M *zIR>u[\GHʬzөʪںڭzpkZsFڧ PzJ Я˯ڤ-#*+[{{[۱ʱj#  ⪲.۪/ꪪ3k#oɧ>ۮ2B;B+DkGKECK˴M OSXOS\R`Y[d۵fh+j+[Pt+˲& 7.j3kW)zʮz= eOdb"롨#B;4E)u|{yk0[zK+Q]@,{ӡBmMO-x;7+*+l<@ ȼp"h P-m (u[V{…-ܷ};؈ݲ|Kؖ=ً΍-3j}Mͧ r\%l{ڪ{ը=w ӹyۡ]4Pؘ}ّ=Ӓ؜ ;-Mݹ|*1/s]0-hkڇmόt ]܆9ܥݜ}ݼ،֝H-ٍ[ ҉ۉ}}]̨]plM y ,u\rm<~ʪ\ }}E HNOnQc, }ۯ!iӉb}LѸRԼѭ}>О~g^۾ޞ~݄^n^I-.>L~n(j* m}K>ފBNi0 Y^񆾪.^$}M5]:^>M~$?&/)̼#zz]o̢MîdҌ!lpt];0mFovxe_ ye-`mׁO?1temG uKBo\/~?fzߛ޼㵽}߸ ߡm=ڼz}&=}Пį؟4͟o^MR?e(U?NةcQ DH5"PÉ!ĊZdH" , qaʏ$GBD&G.ʚ6[̘eL@e,*R Yshψ>ljV9ȁ+F'˂e/4Vٴ7^t2oQ[ߣ  '(,/Rt6*ǵ[Yf^ .U{n4h"%NjΚG6:6Fwĭ5{ul\È_?8ģmN NI)l냻W_k{kr~ObU<μ\+[97~j@ <b*5ATmC' (B+*,`EEDGX"4ʪO$LNĩk<},+JZܐ-K qζtL 1dO۰rD#-=CْNr%?*?"S:.⌳OF#:٦9l0E{rVa{յ/>|T|v&b=ޠC3:36J5[gTSKŔIN[$\$E5K)mtM/ʹr` lx,އtbr tbb v?6eEfC%O7iՔ5Sg2T@&(f%t^:1ZII&YkZm/;l嶷SK5dvp3瘳;|;1P&bɁzǼt5~7柟~vz㩗^zw}틛ͷ|쑇Gz_}E't_GOW3 @ F|A /XA0 Aw@Zl Sx?2t Kn2laG@֐<)E DOy&JLlbs#ЉQhRbϗcxNэUL C:/vr#h,s8@2ol<i>6Ҏk%H=Q| )E86Ҍ܎I9r,%#eV.Qte%gYre.I!r0QP}\.8U.u#if- vJdR<()Iaz⤢:cNٙL;f3"*H}s|5IHgr u4 O~Ec3BNB'*ѐVd4-IRzЗ-A?*RS0iNRw|(K#MEjOeSpT\NӢ&udfPZGjUaTjU̦h,UǪT^0l(JWՄvTTɪ׷*ΩkXVְWUT0/-l_:Y5`P=ld5KYJp]n稞fZ*R,acҞlVvEL,4ָ=oZbv=h^;]Vws_kŭb8W.x;uo|XƎi\|w.sU-{Si[ Ҿ;9c'qq<_\3z<69qng |eB@4Ehb.` -GSzҗ43HkӜ41=jKӧ6uG-7pEYի5smkUZowjR{ؚ>30` ZgSҾvmm0@j`{m4|w=ozS-7|C;ph{7[nwaoO{- ~\;yEr; 6ܑ-+7E U͊Zy/$xÅ>tvz!Oe ŠCGs.gg{NmGk:6.*Tִ0)d˚L6ܝNgy0myv>OP/zǩ|h^=?kS_~)XsgWFUIMrJR3 PSwc1??7ȁ<“:c@(;,# \@8 d@ 3껾k㽍i9<;4q0&#iC=PDinx&r ~XHVCK 4{8[["\ȍ:dXEe?@,D]$:Aɭ;:($D,پB%ڱ١_"O=t08$ ȇPpE`HCJL@ŜtɎJ̌m,ˬ˿,<8̾#̤Iǡ +8@M 8K C$xis>̲AJ D D[# )*d?-"%T\ѴּMA1MQI|ADD^Ru꽺T(<*,۴ˆ\qQbG]aG0/qix bi*Ekqd=Z ٥_Ӝ/#>@:g <1$-òek>Lk$ǟB+;p;Ps'Ɠ*i&“aK6U 8c2t'P 5S4-Et-kʳy )E%4x9ݿ(_7ۼIL^M^NMeO.k8j~a]bRnNNdQWeWeKe$UZ^6m76:$C@#<HIQ?Nl;AGibz!}W5+Ls.:4fD\f;d=8Ur1uIB~N}&Eqv;!/.,!uhiMͽ~hh.+Ci)2+kafFt NDd T )?wtdE>Hi1j> N0*jvyjꪦ.9F6O㵭4pigD~9Y``yT¹& j+i"Z<ѭ%ܟߣԩc>F[%n&GQg #ڂv.쩎6&j:%$$>Wj%c+fmFmI&6n&n Ie1gkܖ&6FV=0 f*N%N]o Ђmt/h &nږ/ '7Gmkw!CmQq#[]u%T !n' _%wm34q: m",-p?&tyl mA9z`g[)q+>?tG_RCD.)v+¶KPbEo23@OuGrE 7 BihU/sd?luim>?o+6 _`'QW/0'vki6_NWIifB8wn&M_owƀ rtRYdm$. w<)=O&"p7xo@3-72CiLmGm~fIbJUi*#+TN?wHxt"?tz1Tw`||u\k9V`.Aq]u^pvoЀ znnK/絛zx&l[hv 1)nߎFʾqtn7yD7P|̗|5LW6oBG=Bu&  (xX?}?/owWw~W~/?p̯zwܸAA.n Xƈ  pĐ#ȐkpcBl0b_Ԡ2Ck3#ϟIѡFmS 9rp*ԧNruWa^-UP`&m{vڮRҝZDݩ`@޺-r-\adyÁIdHX0bʑ0w,Y$\ز=#H! \WH\PqoƇo /^;#Gq6 7<:_ٴp㯥O67V~\8o_ hمW^UWH  TmQm $CC$u⇉pP'p"]㌍C;fd4b؋=ݑMfh9$1c59ۂ yߘdWV9f٠q`}g9gRsvW`aX_a(DR{$h s bC="4CD~FG6 ])$Mi:9dFtBbj{o‰'ŞylQWwkYn,h)'u%N  ,Ђ@X$ C [K7e ӡ*C*D:hzoz#Ri[NQtm(2E'(t1HYPP;øi'ղI-fP6[3N NFF;-O` `볃uuH?BM/ -:ZAd2 "K7G4 W1^PE07Ȁ}K:w/i~xi^dtٺ>OL,A0]t 1A%<Ӽu]]{ן{Ω{}H܃Oȭ^>Y?m:o??t#Ͽޠ`*`x=c; b$ R0j2<(5iE~bGoR!sC鰇>l|(!Cֽoj]e]Y=cť.by@;50` 34Q+B0,xp b 7:ғK 5C|$$ydDIyP̓^:Q1_T,+Kaph0# p[L;ǣ( mqMz&)iRBNz~âb +$)ش7@(@,BHhAB46 E5Ѕ2K@sM'Bqv8:)NS# Y|1wKyfd@g9L\虘Y=gRk)P*ԡf37_7Nn(YT"$c5qn @G$)HFUS5)NO׼u~+`*v-,b2vm,d+Rv,f/5S&'PiNͩ<5oLH}Ef(HD`8*=ІGB*k Jֽ.vr.x+񒷼,z}PRԛa_. k!{ݛͷrEN S g>0ЛvwM~B/ZWͭA5*&>1C7oVHbkqz ;4AW4|a,!tFůHd~);|Lb"s^s$C2'UVSBv3696^\5KŁ>4ю~4NLe1N<3^Bc͙~({LgBԦ~ `+xLs?NWx҈>e,ͮSTl~5 mX/H~p `@(cܗDA]'̱7=kVɶ]kph9HER{+LqC?sfg #u+ofk.^r=bRECw;|;N$,'j <w.oxD]!}NyNR*Շp]?)W*z&m[W:x;vslȯGoO]oɹuB=h0ow?|*o>7]/~᷄T)My։<?1^M^_霭AAūi: )SسGX_]9֥YPu"HH͝_ќaH_>a`XKK rᝅ:aa߻ "QY !^NŐ Ba\V%"""z"V!#`&bٞ`!]*"p 'm-f-".ޢ.bAb"0Ţ+¢&Zy%2.#36y@$20N#5J+b9#7v7~2Bcda59"1R[:8;#dbQ@ E^EVdFZdEjdGr$F~FHdHG$H$KKJdKKLdM$N$OO$PdPP%Q%O >ƢBvA$TFe< ށT^%VfVn$1jc>"Sr%YvQ"IA0&A~e:C%]֥<.[%5 ]Xa)j]`fY$^&%BeX&dn%Z>!eRb.b[)DȊEƋh^~_b❩. Flenf5injuiN& *N]U]`Z(*_褦ߥ)Zs@ ^`"\)*VFB2"v*zlx:͏ʞ)e}Sk+jf귦z`9 gjn^lҙZ0,\^,#Ʈ%Py5Il͆+)²쁝,͢Wl>ͧ&CmڬVlў=VB1Ӯ'F~PmQA-.~*خ4-R,XlԲR6-Z-wz-V eO On"e"6.NV.^R6vG..nv.NfƮ#۪.(nr.~.o.F/e&vojZ/kfj,z/͒o#զl+~ tBg/غ-寓/=fxx20y/gތK%,)ث ٺnG63ʆ .l&zT ]vpū. Wp@o %ưŞzF"`˕B1kTa?NS`os%g )7Bj_鋢**2111_41"o_+& ^ ܣ߆뚪1֊ g3 K("\*v)Ϫ05mk&o w'g0*,/2 kr0&2/'rh2up2꿾2,{0R i.Ss5k/op30Np443Dul=8W mƳ?53g>n~2Ew~>óF./{I7&q2tHfD#Ict9tK4=ǴNtH#KT4L4H#MuP#Q{ER'[nF.bUSnVsV[VW5XY7;kTkPD[ǵYcOTu7pSw4Ҵ&5^wI5T]v34a_vbK7v?a/ebO2re0f?rkgozBLo6i^6jm]dv21[2Av^lc4k۶x1vl,peQCvm7yol$qvrsוvK7Kkc]K7Vzac1i +wj>R%0+6+jz_e#/r"2 b'){]y_A9oq~OE:wwkw688kiiKz)i$(Sr1,c _ffgtx@X7#?}ϱm)s$ 3$!.j_8,GxGh# Y u@{'}iT=η#Qy2Ǹz-yqf9su{/a7}ᆻ8yxm2{3ۘu7Ǣu׫7r3J:7\= :ڨ/t4;o-#XYh{C8Ȣwb;@Ju1w6{Z;{"v {2{g;7SN'?7Rlw&?<˩}Ww*0C/ {z*aqu7֬~o)2kCxoyO#3s1r#iޟ,'i3z9@ܸ@`A$XpA  $1aE1ZlHq@>BIn2cK/a: šo̩>s(OG&OF:jUWfպkW_QT?bd j1"qDw`p:/glv?R9Xvc#E2=x?w+>t#ФϿ1ꭥ ) ,h8O;/k)LQYlQ0aTq 1I; q  2H:b@``b+,Fu1o S LS5S#Ӫ9;]L0L1dG6 -Ы́DlG!4?s@1 4SB5III-SK5TUVTY? U=TqU]{L]vUNi-XBemY=[]hY c6IJ{mTg W:\iMmݮlWyRiUWic}JvZHF`6xaNb)b1~85+8dGbO6YKnWeUqn>]7ߞ$M:NZO%,M~xW뭹tϨh.MN[L쟥(ͮ{HnGNշ;].Vgh!B <3k\Q}\r=4ZqQOtk)']mͺUqϒ]o3g4cZ?^y*so=_1v᱇7hwowg~{EOĪo=L2,@EJQ6%D} ܝOY aDg P?H)GP-%a(~TB%1 !GI9ƁHG WnӶzbCe"aar@>MD!dD< CF"p(IɖNFK2m?Z¢ 7C.&-4"O3cHXQrrlθϱ~|!*#d(4#.QhhV8aN7Y=o)= ^ 8Z2 넘=>x b⨠8,9i2Q*fj ,/r^zmr STK A1W걠P2yfL(̞9캳-Cr=>(m'/?Ue/NO8SjQPv|iZM{{>qxXLNM1sw!4rhӺ4 u4j|sn}%GL6Wvu/QRn-#EQq&?M"v׸@K,&2e^n{sN=i{ IE$tJ?jKsw܊C%T1 ӑ>r*lBg=0oQI3տTcv\7{ץ.JcOw+}ݓ˝K;؋lh7Y+>?7|ww/ y{|G- 1O/tWn6þ3}y{?޼Of{}wc;+_~73ኟ>惆Oi#.onς,:D Rlpc\!7y KOl/kP_$m8$I`l܂M7iS4FlDmюߞP?&žBMΠG>,@,h4VO\B̭N 9ɎhMRHp0 ci .b p\[" HI\,oА"Y wPؖ =նoiN푠~zDmeq %6) čE̖8MBԴiQ m QMo=|-C⾰L8߰ rLNƖEޑLqY"Е0@n&,n\c߼VNJ$kȨ`f#,$ cB64Ϫ;dr&]Cn2(g&w"{QQ(p'pʎ22E)k'2(s*2+$_r,-e-ٲ[&//%o/#////O/02ZQ..h(K0.}*#3*-S12O+53m2As, FsJ3g(/Z~415Wkn6J6#z(sP438[8O8//%Β(O/9gs5S9K7U6-s@,ͳ}.s=!ӬAu / DR1 1Ȍ$1>KBE@p4:i @6 I)41IQK ~ nKe23=1?CE#Ip"T19) K2PR.Cl1?mQ!TQ[E9PA3ҬQL^4"KI;nLQC=L3M ܚTR1qFVSݶTB qvԏ@Uz u-ysHDYGiZQ5J<Ap4GN<,XALTG5)7N#9(tk?̕vvHJX%Dsq(.Lp^L[&޵Rȕ'V~F(d`7X4b%v c6V-;Vd}3^rXr9Q6KcEe.a3X+000gvhVh60Vc\qPG}fd5!&Se}jXmV83gV{Nk.fuvl/-lwmb[`ݖpiUmb nowGnybo5lv.+p C);~:Wpoqe'H1Y 3 /UKO4SSSw`7wXx˼tش> R-qAz聭iO3qSrj nr)H XѴVeQkAgu liTWU y!#q3u*ZT7UuyqUz{UxuT,y6_YP5vsvw7[|Y #CNmU[a[٬!P-{~{ե5K_D_Ug%xm|u&6r1]s.+L׫)a*@Kd)S{e2}ocAyOCҒ((9Ey߫-r4w9-h6hhy噝1φ7Xy9$Y5WH6.p uҕMsy9 򚿙9!ZrIV{2ZuBr/Υ+00ZN|z1Z=%fp z?V*TZ@f-RYګky%̺=!p*֚{ߺ@Zy_oEQ~#8`[౟غ:zDXs4!?p 5b"p:R@XK֩v5zۏ~K 3IG .$`U[{gJ:Te980Wit8*#C{V{M}RnPu%N;b%;;J@̣jů[ި]=)j:{8W,[ZeX8* r#Cܓ=: o UFЄ\8f:*`ܵSVk=f|b * kzۅ@\Qw]{mp`J B jD;/?!ܞ=-S^vi~goxW^_^YX>y>S7|ၾ-^>髞Öi}9>x>~}>۞mO?;>7^^/T0?!%)-?159=?AEIM?QUY]?aeaO:ug}A*C%?Vw,??&ɿ?ٿ??? ;PKPWWPK.AOEBPS/img/qry_bldr_results.gifGIF89a99!,I8ͻ`(dihlp,tx|pH,Ȥrl:ШtJZجv+%pxL.zn|N~p'"$1'&Ǿ)׹ḝ0!%#[Zݽt̡c<]ƌ:TϠB}&(˗t&Em鎃I'mp⅟֒' GBoǙb0NvSݩ+w7}_-;+9ܝnκx;zRO:ߦ=0no_<+~K˞~D_~䟫l#xBpzc4ʡѫ,H?50{8a7=20~|{DQ1`ŹχG/ڰala"̌Cc ٧9uy 1Hw%(xёr hu%0;d@F r^[$%!&w.$.8ы)ɾSQaJ/(Hqe,B^ʲ8!*JگD:f^4BR2kf3y>vs|+y泜ٌ Ǚv^ _.Xς,d3KeEW˚rfԆ.tլ3Cۙԧu7}%Wţ^GϚר0WfQ;; l/ڄ5u};Џ/[~v{>OO9-m8x ^ՀXxH؁٧"8$x((S7bmIt,he)X68%nwtE7B~t#Gh6lwptlLjzaCXV(}8'mT'vy9x&xFWXf{ts lgx'PXu#edxvxVtjlUqVGm(PxxrxWmp]hi_r-[djuy点g^ef twUvdքa&ywǧnzvFhv]nMfrv0 7"+ֆg։|5rbrxpsvu/;u(rrgqyl؎igv(y荄H\XqkrW]ZBntx~HiHx_XX68xsȊWx\9vuDǐ(p )Y|p'y'm(zx u(/ nwƔojqTVb|_iȍ9YVzRzfrW=FyȒ襇ZYx؂xxs{{yIw)Y\P8hfkyeb(q_9Jٖ6~iw)lA8ȃp'. oW)h7VWלyڗ| 3N^y))gY`x9*ّUٟ hbymQyii  wxfşڡ|":$z(Ja&,ڢ.2_0:6z<ڣ>@B:BwH*5Lڤ䵤NR]P:VzUX\:٥`⥥bZ\Jfאy uq\ht}9ƹ.h\sZ~j}EJP8JoQէکW1tD)9C֨ꩬZog涅cYڪq:[kyeǒ^\`hdRsXw]FVz^ح rZx)ٚj빬 ai6>(VyVnvݘ wm: xʚjmznBIw*s4 ~I%+[^Y똩(`ʭ퉩쥱<Ɲ:pI)k6i-wIRٓ1ت ۈպT:)iܖc[+l\+㈖9KLZtuNˋ`{DW}9&g;Zf궞ٵW HKwkz2Kz!xQn+ LƓ*Uxk9\:^[ߪ8hڼ+ip8_z˜z{~6\Zr"dIyk^{`9 u28+ }ˮ'ֻ\L܁ $,\(B,.02 F6|÷p)<@<'D|gHѧL :¦M뫷;dy>((S[eS6guΨxuw+p0fEuyZ̰FY֘ƌŎLu,A9t^ȮȦ % y;kVn5 ɕ,lܔiLui:R<`6ˎۑo[lxөg6̗lI,lɆKǀ Řę-_٦~}ڪͲڮڲ}!6ö}۸ۺۼ}5ܫ۳]/ƝG]k]}k[ƒˬ˗Oط=Ӌgƣ\$l8߁ f]* Ҫsqyg1zI Ջ,8Ζŕ犡M"};ֽm;PXˎx+<#cGM mFȯLgnܫ,-ع8ihǷfœd-8&`ᕜE,WΞIձ+7޻Nd7ϖ; ? gyUmؖ;>Rm<َ. K,qrf)oTmt~rM_MЦXkK+R/MK*I-akfn\~r\ŷm'ٝ.=~ܒN!x> o-?=G֥ѵ½=$_&(-, ~2_ 6Å:>(B_-:K/]N컶Vm9 [Тy_cݞRì{y$WxlsNۼvミ6?} yXi _R}* o?<.&)!O tl{n{^\?lm&{H>Ps^T/#f߹^]OHΑ^ 0ǐ 4U~]o3-,7$67 YuVJ29vH^wZ bwMʳ(+EBǼ: ? G˷,?KH0JHFО=RI>׹AT$[XЩܯVMԳcbrT' tp v¼B5fP)(Ѥ+"n(O94?Ap ~FϔE43"JLrM6Y!:s* =T-J*2=u?/XJdVWpԛcF2 6`{T`$Ө*R&^rFD'UX^qUP+IY̵PgWwY@s`-I*.CHE=mɁHv7ϕX{I}MXxJV ڃ"O;Z#P#sb !amDeC"hY[7LsASU@I'YWh6T'\{N+$|2i"u_(3kSU!npm[g6玻#2]sx+rfcNDϹnݥOuzCkEľ,1"aONn瞭ۜ8w v#]򽀩$<@ ZL7zG(BaZmX29;Nj𗼐Qls7@!` 2V HC^-( ,XA  ȢȀ.2` H1VHcq5&d Xa _D1}ӺWy+"="Q,H9(?[J$H|=#  Rr*WV"e,rժBy ]8aH $^7[=,翔Б$Kb)+_LP2"DtS<قzt"-Bx*DEqOWt`8'/9lH]S(:цVdJ8'L|R} xiX~6d?Jv5NyWv q|tP'z0B\s ;dax.Z  uP\ІPp/%P|@'wb (*w x!r XS yPrEbdJ9eOGOۀMxPKs*/4ðqvh%FuZXbx #rP2[`mo/PsBG*TڰNԇ6 G@N!JwN  N(t:Y p jh!ttBzH]xax*c(jȆnrXPWv8$ivW8  ~T 8$OvE8ihDOtTM@ 3H"pW( 8-+B0ؐHy'h{Xt˸GjIє(w)./0Y3I9O!0xF>ٓ>.CYx-|؊Oc%T\hX)7_IyI )z"&'V e1zٛٓ?&@`ʹٜyBC@ ) ҙd)aYHyn )("&#)ww);I'O #@DȚyxG 8 y^؝bPq(iIfyaٖI7(ʒyYzXO,3pSF" <0 Pm |9-?nn,9X1i.NP.J0z9ɞLcf:<>ʦ-DZHz"p ,`p0Y lJyġ++p p&ZɋROp)ˬ>@[3: L#;% '+O<2]כ} +[8΋0,4?P C|\~nMܫ p mP| ~Prݥ|Jm n@-u>t^eY{^5 u bfPz][p^  ` P Po^nN>ʡB ױ޶ 0J x;P Q`$.wʮߡT )+P2 nԐD~~B 1cݶP`ГE v0pN<笀yC_e'$[2 'pXoYMo|O?[m)p2[j RpZFmJQ,^Ę#+>}RH%MDRJ-]~Ek4:&dՆ'Nm0PETiңECpœqUUw͎!F@Y1euC^5K6o1[z#&M6I#6-TNTќ9r#fKv}nxqǜ"O6+H+M BH!֚1C^k=c.6CmMi'N2i#EWdE_d Nњ+`;くRڲI.rODO9L0>2 1s 2( 3)4H3md >\2&C?Sx0EeQGetTkrԑDz@; |RISKEU( ʼPYKK?2<T5T{PyNe6'W 4Zi5iP [o7\J!g{yD  4 fNlrK""T#$l]K!>.?1,sFYs6m0bOXYm dOnOjWfyZk nmťfqKdNa]M"OC2Y"Px 6k^XaZm8L Apce%ln[;^f%+fSG/xC`{#%D%8A VЂ`&6q>! Yxĩ rsDu 񂀿I'@Zjb21G>FFwo ]h>PWd7‹_c8F2񋥀`) 4nv@a*da Cg@p5LDEܢx%- !r HL0x)R|b(őDex[6I|c']ˏ`'H p@"9 E]XC]e8FJD'+xВ3!p8x"+z$DxQ>,L'PBdƑ9@hB')8(4<&Mr'?)N!9GPr 7Ct"|X~D{mڢ5V,"`IHGZRmPyS6>jG2,jVvҗZ3A8A&Ԭ4kj\UuzZ4n*שC"$@22V+ּHV>;cӊr}KΡ؇#dk(G\?ZU#ѷnp' NMlчN,mo;]7ǭgֻAHKEozջ^׽{ۉ>ah׿p;7Em;mC%FF)/}}ǿ~ݯձ789S>"9=<>Pc93>>s7c4s; s@l;8 ?k;;  ĿBAӾ!dBJ3@3#l*d(…B+B(Կ,l-18,tC2Tv33E89:;<=>?@s0LBX5T24FtGDP`_`a$b4cDdTedftgFvE\FbŐX4_mnopir̵k?JkFqtwxa$GsGVCGPǏ`yylGd{4HBƀdȆtgEe,ȃHNXȇȍHvdȊIcKȔb_HTƕ,Ŏ$E;#SA4i= IJȓvƕ\F FɦƗ4Ɛ6<"ܴ JI}~$FňdI$K˳,Kdɣ$KF4ʷ\Kdșd?/Dˢ՜NβNϻ\FF+?L#L(<囼JӠcF=>A'FBH2:s)uFB5IuHDۻE5@E HOU`TM=HN= O T5Q%{4U@UUUdV5WP]^_`Zjb-kfughiCBl4TV{$lcUdVMpUDoEDp%נt%CsDte׊\xBw]GxW2x|-FGWBQ$IJ{ǁEX&EK׆-}4J]O:'S[V%]cX>4 IRʑ%Y{X~N؏Q蓴=s@8ٛL>NښM%ɜ=UUYG˃<ڬmYP]T]Z%[L{Z=5Xm8 Җںڕ [5ZۜTY'ZmZ=e[SڷZXټ;[\[ɵ[ \~% \]\N3[}\ ]eٵܽ5ٕݮܿה-8P-5kؔSܠ%ZSuM}ޠ%Xݭܞ\4m‚][֑e^E`;-_mW_$^^1F% l[v`F]]dM V . `mAb 8F#04}[_~+^6=[a\KV# 4YT=Lsٻ="6bJaUbm]\M[ۆu*[sb][DZb"X(>c,Nc"^w5^˵\ؽڰ\9^;OYAJ+{ѽ^u1Ef.YܗR;V-LP0NucE㦥̝]M>>cU\PY޿ZD&^}9X*e 9A=Fe~cRve^^8N`qDff7wߔm.dlha{~aSb_6a+VhOTt拝hNbbh.hi~hNNTfi=FiFn陦finSBZv\Bv#jIj#㣦¥?;PK#T+O+PK.AOEBPS/img/script_home.gif*!GIF87atndR̼Ĕ|ƴ|||~|μԼʴtt||$V>tN|l􄞴Ԕt~tdLrĴLnl̴¬tzt̴ƼĬ||´ttμdfdʼttdnd||||LbܜܬԔ䤶܄̼Ĵ܌|T~섚¼d|f424¬ʴ,H*\ȰÇ#JHŋ3jȱǏ CIɓ(S˗0cʜI͛8sɳϟ@ JѣH*]ʴӧPJJ՟|ʵׯ`ÊKٳhӪ]˶۷pʝKݻx˷߿ 6+È+^̸ǐ#KLeYi̹ϠCMӨS^ͺװc˞M۸sͻ _ȓ+_μУKNسkνOӫ_ϾY]ɟOϿ(h& 6F(VhfY5 ($h(,0(4h8<@)DiL6PF)TViXfIeZv`)dihzelp)tv|矀#jaD(!"B:j%bc/r b|)#*説HK: 鮖2k(i.J&k*!*V fv+z8롺R袒6/X+򪯡VoK,6{ p (.lgq* ,$l(< 3l3.3۳5 lB lsF#t3ͬP; g\w dmhl*$rIa(HJ*r6tK:]s?3s7=QKMYS]פnz;Skm및1&|${"kE~r̕n,/͋ K 0<cmusn#oDn 'G{bF<&"]jp#e:_֋``i{޳彪m0 Gx#a i^=~uc3&͆gpX6OvvB/ HUqk+ɥpNbѠhAis"`<ūu$LآyEO`^86c o6=·?_(QDD"ؿ1zTϪH qVtIKZDܲB)JkbVэM%(Ѱ{c{Gҗ:c01EL"F LjĽҕf+aI'r̳#hr~9uG?cI2 yjA Jt$G8,]S Ynj1hXdsNv<\9PyL k0S JX>JҒAeAQMCwL ݉K]Q{aE]1$AEGsx(MRΓW^E-t¤(VgCwY}ilZɰ>p\hhii]! e:- " @ :d'KZͬf7z hGKҚMjW>G^6 XHb?-pGUpKMr:ЍtKZͮv;\i op0 X Nf;Ўm`[u&=n{M^Wo%5Pzηs{(0O;xL u(`]bGN|hV򖷜0]n{ @$v@@HOҋs (˹ЧN/XWzӟ.XNyۂ@Z{Ep\<`λ-^ϻOxq)X'Oyɿ@`@}@GOқygO{ճ^e0w3| [VȧPwuu~k+ds,b! "P{8o2->? N~X?| p:@ P #` ` 0}7~f7rC7v7z7~3xŁsS7w^{7k_&),x6\~%8b;HAbC2J(S> p  01c-hk/ac;CD;#}u ;k9%9Fy> h2ؔ 2'Q)T{.#2j#SoPo w0'8S(idSbH6 X!c`Ȋ}XX`Hc$C}ri>ǗڥEđԆn)6p:ȗ)]ɘ9ɨ C隬,ysi ɛYIhĩٜJNYSiWyUyVyXPp60eYs! 8 ləٙC@86i 闁 Y"C%3HHI; _ ZD:6(Cz]ꠄY-y+٢i҉~3Z8*,I٣)cJR1N[2]II pcdz y6wIw f*czydڡgʙaɡ}#*k!cLǤ;I󉦏9bSEdm:ʨZڧE|`Y7j̉6.925J٢ŚJ5$!s4j::̪:JJP!s)SgN6 5 *6))mjql*gJcck|j~ J&CLLZ :y){*2L˴HkʯJ:j69 - 0j)ɺÊʜ)z;k @IGkiAʬ<ڴzںb 7mS` `_^ KrbZz* ;~ʸX[2tLTOBO)*;{)St-Xe󄹈Nt25ۻ0'IK;ۻE՛kN1ʽ㻽ҫ˽+]뵓Jca6h@`^꺯k.zkd e#{K{O~*4L\&H(*{Kj3$\7L9cL[NlŋIZ60p@'Pvpxz{ ̌J\*}yy۹ L$ ; ,X,szCџ|2&Q(<І[}U|pͼ|6|.@+V],(_ IJZ[hcm5q 00 \x=ͩ<챤#$S@Ql0TE ɴ\] 2]ٗ[L̫Ms "-] T}OmG=oܻ TՌaQ o8oM-5 ҇)}5d2deVVkV^}.\SMXl˱hß,Եͼ,N#^X]m*͋t0>vn]6lfph`ip&M.8bi_Cnnzq9]I>>+N^?&~,>\>:hneYnq3]  lc8kQ`XEX3jU~~XX* "ʝؽ).բ2'lq.6P0Q S@U`l{c} [[뿅嫈UYDMfO Ҿnt܈^H̶A +0DPF0mžb!V^^*^H^] ^~_Hch/MpN/^2P(*,g-?4_5/lGg634P`7~zc L`c9;Z\^=?"*@_lnpa0p2hqzz?u;10$P&p(,mw_7xxo6G{0 0'1 'Og2_zkl>6! #Pソj爍~aVgP P>{ k}&o6p|A@@ DP<QD-^ĘQF=~%MDRJ(#4RN=}TPEETRE>UTUCdU+A0/F@ae͞EVZmݞujU\uNʳ@L ܳoߔ]5F0bƍ?Ydʕ-_ƜYfΝ=ZhҥMFZ⻭]M7οkW ac\pōG\r>h@m7{ sk\]oݿ_|wz?o0n03@dL7ïB /0C 7CoT!DD{D ,$ =Fo1GwdD !/kqE [,H&aMfJ+2K-Gq!#$2%$h225'|K9N;ij"/ RH;;L@S̳̅QG4RIJAB5E)U ߕ+nY^[gֺmYqɆeX'<>0rfا(mS_y]4m`@BЄڥ09O)A#z'(NyL< / D;aȮ -tk^}Pq8.kW\b8&:,tCW6F6э)M7юwċ4<я}?Ґb BC6ґL ?]d&%JRR&E9ʝ|3wD_)2e,0(m\G:җC$s$+LfKT-e]:Qf6]L>3 Mr[ 9@Kp~rgda5,yNx .pfd rle;0 GB˓9%ҒBE 7Y:HXrɟ8"1GU0f dItNfVoY9viJvjR!**LTixVr\ɟ: ZfTa N´eez4lrjNN -T{ê/~2+:hʡhVao1lMߺDȒ즾' 7/ 7׊d)IǪ_~Df2:㭸nqˎ^Lqaem+rA šҿrk4r$ɷ»+fIF d8U՜vT9Xu±mAmwLkG["-_uoݷ-9ޏVo-Q=R =)+X3BM[xʺkV+8Fh 띖n:wi !4CWoַ} 5t}D/~%iWS'(ӃNuWu;8>ֹfk6ǹ`'H Z Ƞ7 xЃaD@B7A)Hyẁ`K]x dj2)^]}K vUYɛ/ `` H2H86JTځ{w#k YRSi_5C}L3P&5%ITb0@0R)U9k^0#HcOV$,e@Z֒=eK%x hCA?]}DŞY4u)_ĿER.4̾=3Rɜ4P6#}D'I"LS` e-u^&i>eNˉ5F7z(o<A8!neI@;@*M2(:5խg;O|5P>\5``2B<(t e/3A@&5iZp=G\*׎!/1@\3DLi -x [ X*HV*:ԗ4Y9i0z+\E6KDcIK` O[dԴ)ت :ur.н,f7Yj,- &P=,c- <0Y, A,@lLa_C!j4׸nR^.=G#؂]v-`s0yY,عGk7'4 Fh^|D> SW .֖p `ؖaX3|nK'ſ/d\98&,v|j2zY|=ߕPq:Қr*RS-ધ@01E PفE 5 --a/aP^QeX,Vb@k-lD뮰;b_T]_|0@kН@騡 bE!+DQ,b! eڗcQ 5 PL:|/2O)b_F PZ`F +p` 0 `@aY` t{g}7 xӂqβLg3gǗ|r|'8.֧%U}} j8x>%P ,,ywg @i$ob6 {| tMwO$Kcp@ V>FX>LqH1`nxwbφ|vwCp}ÂrM0}G6\<؃bB؆rn膁au@IKXMxCtj4F``zT ,@J`kdJ$KcH20 p x(68(uv4ah#LJѱ|*HZr27;=XxQpx>ǎܰ@H` tF ` 4TJxPR@ CX8븉Rar uW&x)8҂ܘ5vv7wq6JE(Syif IK ِɆ14lr5$臀 &Ȓ{qQ$SiJ!Q$:P =kGٗ}yH%ԔH0)٘5 wU)G Әֈؕ#Y33x؃,X٘ipx~qy{ٛ~$&.P"0 $@ ȖɌća4Бi/ b9df.x1D'ɘIo2՛ K"@! k#@pE ˆ09) 5S$PŨ;Iv G$&ˤ`V++SgԩR t6[p@5 NCbj :` KKMˑ} 2VSGuDw]FI  [P0 {ˤ{mHJr[\vhS J+p, ר(jYyJi/ `5|Ȟl zyÞl lh`j ¯a@ ˷|P` }^,[yɟ@L0j+0  x\ơ`LʞhĔʼDf˰t+ɠ 1<4  9|'e(0EG j,@ Р̢c| ,4DP ` A-Ч3 M@@ĞkďU0Eёl$'=)}+ΫlE1-llhӄPA-v m L ȍsijR1[lkF:Pڦ$c" ':@ۖƋWQ-s-Fv]FD|}AFF@p)@pЏ ]ܽ=ʄRݴ ;Z}%c ކoΨ҂ }+l`4M  ĵ$~޷ M޿p 0юޑ`PiHP`-h(&,۩| Fu-_ +NL y; `év^wM.>`3 U?>P֬]G ߰RoM XEZ P Np`JLm R0{}T$)İ'. 25ڑ\P Nߕ~߀I馎왭^>~0N׭ >*̚A4w?W} I^Ў|3S71abGU@G`[ eMGn ސ~ob . ,ΰ$p pl.;*@do ?:Y}0 )%vUGn-?>4 6__%& CEGi_ 0y@hJp-}p xeOgh M+8^v//4  o 7_/F(=`4 'o w:_?ѰooѴ .?F7ݺ]C+c 66OD-V&<=~RH%MDRʑ|fÇPc  DTPEࡃ"xMu-/ .`rV̼"CfjÌ7Jbƍ(cΤW|:vs:FM1_hRAɑ3nj-cnfuЅ N!bn\j]e[lڵmt S\c6qGpōGnSR.׮NcDn퍙 t7޾\pōG2z2l> m41kH抈< ͻPnC?-ͷr&EWdE_\q"Pqʹqb 6P--?03=CSM4HRXTgIUZkcsVi&E\O@!:NiZƛOCbWB17'pGz駧P<1D7;μtsC}jwGZ;׈ɦ #Z@/Ѐ@ C$1Pk`W< V%/ⶼWtЃaE8Bk #;w()ז$/~3DFKxe*Ta#@r`K@<?8F#>aՈ5,/D) w-:5btp `90IteDA ,s0єb4GXHV tj ChpKX``qiJ+a8qτ&CAB~X<G.F=20yJrZ09&B2o 4Y !P D n B7Wo  CX)9G:ٹPVFԢ-A˹Q❳#8&CE2֓ D B ,O_j`! iP fH pWM}Ee;)G2b){:]Tm%l _*;^M ,V! Xk7+aЕ㪨WUN)K;XH&sjbUUpvD:YVֲdZi|&!qı,fUZzUlkLђVcH;"mnp;\׸Enr0/˒sַnv]2΅tq;^E$0X^׽o|;_w8!096׾Fp|6oL^ wH99QitqEqr]5ЇFthF9'R %=B7җt5}@OE=jR:Ϗ<qń?=9$91uuMZR7PLVDRh͡Pφ}]TKv+lnۦwkH;ܠ*n{%w BP'l86sO17Ơ~{3i#V%x74@ sc V=NpKW?RDz|K^kO$w6ch9Bfo;= } 9> z]LC%t;9{^TO<1 Y9+a~N>F.6WBg3V;xNGp=yyW O;CϽ{ xEw啿|Mиm擏AUg_wU^Kc}wyl~9^|Џ}'xw¯~2+!{t{#y{˷[7c=Ks3:#s??@nп L=k4A@=l4AˣAADԾ!7BB"Tg3#B#()*+,-./0)B@I#DCdDiD|BkJ33DDA[DKCDGĉDOLCP E] dCFEn]6f3<SȻ]=6dsU7Jƿbg'b= .eUU>de[[Gfd4C88;Q_<[KUc\f=bhACka}]۸l6g!-iּj>x>t\Ssgy[z&{|~g9 [[ev臆舖hT44>G01&6i*8ʎfvDhb\k|TԵNipkYYWeOEl+Nvl\5ɖ3l4ͮlFkc%>llmklٞEUϾܦm5n-nfnvQ醳~nʞ4flC#onN^n~onl3wH ƹoUճ44,mo eUyOiIm-Wlk%OpD i q}_⥤pxmWHGX/Wz=p%mVWvm>n탋NTrݛ\OO"r[[ Uך\}Wm p,Orr}]snu}soshsaZ}A'An%BWEGCGGmHJWl۶LjMt[NuQgR7FTUgvWXuZ[u]^u`O'cdWZefgBjklmnopq;PK.!++PK.AOEBPS/img/sql_com_top.gif'GIF87ap/<<|μʴƴƬҼ|$V>tN|ldLrĴLn̴dfdTVTRԤLbvlLtbT$$zlT&:2|\.NB<Td2^VBޜftB$dbdL"~TLJLtܔT"^$fĢT܆rޤd|T~d424¬ƴʴҼtt||llll|~|||||ƴĬ̴ܤ,p/H*\ȰÇ#JHŋ3jȱ# CIɓ(S\ɲ˗0cʜI͛8syRϟ@ JѣH*]ʴӧPJJիXjʵׯ`ÊKfӪ]˶۷pʝKݻx˷߿ L]"^̸ǐ#KLYʘ3k̹Ϡ\MӨS^s4װc۸sލۂSڼ N}7ȕ3ezmekνEO!Iz;˟O{zƾ_{h yf݂ 6xaɄVhfLQJ$h(8"*(4h8<ΘJD⇮9Le#)(2QOF9\veWe$0hh$apZhMib=aRD)" gj6fg{I馜.5"fbRJA}!)jɬ[J$Ԍ@蓍XlB*#&*j턷ryjvm*Z2"Cخ[ynlB""c"+Z-sy.f@@ \@&"2'L"\ /7]Zg[\5Pd[}Ojse{]6`4 ;M3}5!'8l@F{/ly@TCnyL/]<.z<^,z g9$bO o<|}𸋢9P{2릣={džӪ߳~yo\~#-߾sLBL`@(ЁT RЂ 3 vЃ!#A " g?YW3;I&FЇ '94Pai(6PD,:Y<}6hL эnTF:юt4qw# (40%(чR oHJfs(Qd#MJR~GYFjL%EJFIg:PHTNj@~TiB֧2u3kNo*UMTT"JFR4#5i^QZҺt)\CډQM?X:6$d'K8@bͬf7ZMUCKҚD$VֺlgK-nWϞ*eKܶ`b#Hr:Ѝ֠Jhnvz}.u JTMz|}"F ~\0U,%%;8'L [ΰ7{PG, (JHπMBЈNF;ѐ'MJ[ҘtN{ӠGMRԨNWVհgMZָεw^8Nf;ЎMj[ζn{MrNvhMzη~NO;'N[ϸ{ GN(OWr0gN8Ϲw@ЇNHOҗ;PԧN[@¶{`NhOpxϻgδOOxF 'O[ϼ7{GOқOWgOϽwOO>;ЏO[W{O3O/OWx 88y xX{)y h} XW!y#Hy+&)y-xy3z]p7(y88D(yxHJ1X4)V'HTyPȂXzRhyBdȃ\ W퇆E؆ȄpX0tXvxxz|I؇8"X/8&؂(8y3Ȉ_.W!x0艎džgh8芩ȃjcX膾~qgaȌhW]،ڸ؍(Hih8Ȋ=؋'8hwbD@,-+n x)Y,-АNȍg(Y(H)Hg騋=@Y︋AxKLɔ7twipa Z)B 3 {M H'AV[ɕ^ y29#ihYȍ3iy-I䘉/4)!yXy@?)xE@ُJP{|h)bn[ٕ]I_1ٖ) ().yw2s90Ҩ#Ɍ'?gy٘D:)՗iٔI9əNy@A9?A)9Yhpm99 ٞf)y jD`1DQ ț~9SxߘyΩ9uȓɝCy>yJ*ҩ'Gȡ*ZZ z_:de*&D`C0nC.jvZ{Jj_*h:`ZGZ٦o:qڢyyɉ5;y;zF)XIڤN ZzR:|ڥBQ:g@:C pʬڠ~zJyzWZښ 9I*JI>b8jz9گWɭ֚w:ꫀ) {CʬB4@ Jb9ٚf ;ߪ&*,EAz̚J>I(XZE2 .  JK-tGK K ۭ⪴ʴ,۴0+RT;VY@{x(E"{ ye+p6;WK\VKz[ڹ.۲Y;7uzIɷ8y\۫i[Kgx@+<=˥i۵)I;㪮;:l j;D<м;[{ۿ<\| x0{4м+0*+<lDv( wˢ3=`<0W;5|)@3=D]F}Hm LNP0T]VmOQM}`=Y5A}hjlpr=tK=z|~׀0wׂ،=؅}\>n]ٖ-M`ٜu٠ڢ=0Pla0]ڧѝ]۶Ι pۼ<= - n!Mִ-ݹ}ӽ=Mo=yr޳mӔݷ}\׭{/ =>Fmsm_ ϒ} ^^dlpΙ|p{`J/p>,0=P6~8<8p4Hn@.=0pR~78-n^Ih:PU iMG-ZR[,~~^.膾CσNR^W|.]Ni@ka@NB Zk.ku`r>tx~^'Ȟ>~Ͼ}ޔNnЎ=VAnL:~ Ω>T*>;:0U|n_?^wzn>O^ؾI蕮s؎TW>,Lk(T0΢]f`\b?]+*`"DNg)qf]0yHP68;џ>z:z>{z LH,'|]nr=~*w~>_J0A8@ЀD .pp }f8A *,w?raE8BЄ'`UB^υ/^<`7auCЇ" :̰>DbsD!>Pba8E*V+1bd@c8F2ьg(.zo#6foPbG>ndBG%D, 4'ޱd$%9@VҒd9INvғTJ&E9JR@e*UJVҕe,e9KZҖe.uK^җf09LbӘDf2Lf6әϜ9MjVӚf6Mnvӛg89NrӜDg:չ7ӝg<9OzӞg>O~ӟh@:PԠEhBP~shD%:QVԢhF5QjJ;s>Ԥ'EiJURԥ/Gr= P@7 0jP:TըGEjD? &nzVժWjVUVh*`=D`?jZպVխo5W?s= `gk^Wկ-\SUx@ĉ/"曎5ɲ"KJ: e-{Bv$ˢb++YȎVljUZzUlK:]n݆TUp5!IGH.q;Q WEb;궵nvȏR 0/m;Y~½y+K^뮤-mh+]׽ϱc ]㢗U `ΖW].޻]7hNBLo E!Fsk/]1\qG?k-ާװe1|cҊ8_3m;<]8%1_Lc2/8@Fs`OllR635qg,7T&prLc3[=~lz͏tUfTifޙ3l#UljV'&1g,iZnzv,;kMвɓ==[l6{ٻ=i,fg9&-}a/7:? tטiսnvKiӻw@T=p-m4gcxݠ5qOJ;>rxB./9A.7wKr?u^$g:GGz{v{վvs,I{>w+{w_*{?x7},/|$|x<^Ǽ)gHsЗ0}Ozs$43T@[@k@ \@ ? ?\??4>T>t,>==<= < "<"4$,<$T&d >'c)µ+B-©/ä 14ß+3TÚK5tÖk7Ñ9Ã;}=C݃?DA4[+CTD EtD:lGDKD@T9OLQDDQ$SdN=TdE4KVEzXŮ3Z\E^F`$FbDƶddFZfF;hƪzjFlƠnsp$GqrDn:tdGlZvizxzG|Gq~Hsǀ$HuȂDHw<ȄdHy\ȆH{|ȈH}TEȌ{vȎLǏrɑ ǒ4nDɔƕdjtɗƘfɚLƛbɝ ƞ^ʠš$Z4ʣŤTVdʦDŧJRʩŪMʬĭIʯ|İE$˲<ijDAT˵öt=˸ù9˻|ü5˾<ÿ1|L))s)ULLz\ +Ʉǯ̱2Lv,(,lӌ 5dr 8 ٌ0ٲ#M)0ര,Nr2/\NlNnlD7 N)왭건\ӞscNq+7NdO"8OhLks)bu %!i PQ%ф4-Uрd|A !%"5#ER_$e&u'()*+%-./01%S`2E4U5e6u7m39:;Jm}Bz_˗խްZ>k HJ@*40""JFE!/*HFI:8# ;4ri`,Ұ59G.SxcPvw} ѧ::wCK:gT~tN/<^~H7_G_InCw =O_?.P{_Aqy<7P ̟H 6m` A s Wp% C@o> cé1~\ (>񍰌vL0/K¤Q^4-BЃL!G4#aCА ! 8:$DՍRR4 GNNЊL-axE*0AiZ҅`d;8b29JQ2Jc27ͅ MT1KfU E.,&10b&/:;9K"zt7Hϥ 䔁9IlV4a8,sR6rI\gI˖Qd&CJR沛?UiNOK]456vo<%iMzR.Ui젊RO1O=%M*я:U*LyBݍo B ^׾FOk;,X32j`KZk,&zh$Қ 8ֺSnFͭnwݬφ[ْMr:ЍtKZͮvz xǻ]jMz|krͯ~wLNv,X;']ΰ7wEqW\?.6#2frc8kLw@w\&DV1Q)cU<`J1Ke6?v2L0+02FWZӜ5Y4|F;93I#zALe9 Vˬgl~tKCʕ4=`.X֟^2E}jIxԲ3_aK.N a[w׹n}jDס>iae^56uk5_Zس.ߜ;yށ0,eu9px.;| 'Nq Gϸ{{ _oCN\&7V1qg8Ϲs{|>.:җt+PzGcݷ:'^uuo}Ψ7mrMnvw4&h_42w3|l_cz)?tqRKq61^h'xnqmx3՞w=!w|ҷо=v Sׇ8={l_~s{[|x`{z'}[{7X?ׯܧ_h~"7˷X]8xb0 ؀Ȁ2Gs8x("(u!8&t%x*(tTwWpW]|d}7wtcn!c'|7(bCuF v|WnuxLqfwo6~vf6{|x&nQiNY|goheˆlpȅnDzgc6y7&ׇbHwdzqXww}ypɧexcgϖyW7hVuCi6v3fdnfHzm{6|]g"+xpxX:،w?njXM֘؍ 8بp瘎m؎f(cXHvԘ8q;Rfuv؃Obf(mxhiK؈{|HfwmGG{Χyi֑xcm-gYX_Gy=~8|7}8ie&@_J9 VvflƗXdLP xU]gt|/y\\k6|uWyX_&&dd yvfW96.xט}o1hw9&yWUf909%yeȹݥ'9yՂF}LJsH<'~aW薊ȉxمvby p}Ykj\YWvndUwIƘyYkruGUHmyjkI)ytx_ٖ.0i)& pH7Ƀِ ]zx#_Wp)} 9ix:Y}Q(لHxPǥ)^*`Zh^֙^lznɍYvzwr~zZy:6II @R*KFiGȓZ`eGIPWyY^ijycڤ {C_jz*ڪv&5JyƖ/J`:xڬӚ~jZѧڞ᪟VʝUzj㙎Z v گگۏ;Hx |P[;Xێ鸱֨!G̺nWjᷝ%98ډ+*qz("cZPv@;zZ筧BowFg׺}0{Yhv9}hwLʒSi&+G i)f)n[z}k+^d'vZ`W ?J)k|vs5;ê!YX e䚚$`ۢsl93¦18<4|*M\r_s6}yo^́Ɔ:df|ƌzn`;ǁj i|Ǭiz~|$ǀL<ȾʤXlw|aG9zGlpؿXWS \7'|ʜ_|ɶKl0=OɡÖ|s)wlY<]첝ꋥƒ+g\[ʣgKz|ɍ˴Jͩ{,oWl^w6;†\Hwmt ,( =p|Ѭ tz0ZҴ $}r&}%*r,zLŔxW=V<ςȽϕJ2.DΘ炊yiTkjg{k#_:4*堋B:`~ƹږV\^@v>m,;szcNy{Y nhe;p|~ NĢmd;gݒYꔙN᮫N ^-.B:@i^m֝ϧc >]؎Ծvޚl^ b SN~/_oU<5 [X` )3Y ! O#aS */H?Z&/(O7o%O<\N0OCE`;O_=2J3 %R_6RN[$dO[U0.1 2+oqouGILi?TU:R\~O`?oOlqOp/y}/?O>_^RJp?so{_?Zoο%oj3 oO?1*kü-OVW嘶8gAgWP8$GdR,+$N:Փt{YQt抙^/p;<@A$'(ED, GJǮFH6 M1PȮBVWXYY[\8^__]bcefghdjkl 'opqrstuvwxyz{;PKE<72PK.AOEBPS/img/script_find.gifyGIF89a333@@@fffưʷоf!,H*\ȰÇ#JHŋ3jȱǏ CIɓ\ɲ˗0cʜI͛8sɳϟ@ JѣH*]ʴӧ56JիXjʵׯ`ÊKٳhӪ]˶۷pʝKݻx d߿ LÈ+^̸ǐ#KL˘3k̹ϠCӨS^ͺװc˞M۸sͻ Nȓ+-PУKNسkνOӫ_Ͼ˟]`Ͽ(h& 6F(Vhf ( ($h(,0(4h8<@)D@$L6PF)TViXf\v`)dihl&! tix|矀*蠄j衈&袌6裐F*餔Vj} $v駠*ꨤjꩨꪬ*무j뭸뮼ik&6F+mNkfvB[mk覫z[p oin:J`گۊo0ZR ħR*Nsu>: wu.FLj/xQu>|G/ԣz7П7۫w~m~Ǭʾ/tsGrKXwol{Ƨ>ӵov@`> w8F?yC~ @JЂMBІ:H&JъZͨF7юz HGJҒ(MJWҖ0LgJӚ8DsӞ@ PJԢHMRcӥ:PTJժZXEjSծz` XJVnhMZֶF=+\J׺xkU׾ `Mb0d'KYͬf7ٰ^ hGKZ~MjWӲ ;[V%jn[Z pKMr:ЍtXͮvz-n/ M/xQeFK_WM}]۶WLN;'T7v~1{X&G[5qEQl񮴿lUqljឲ֕Dqc=\!&Z<֘DLeNv_-S4L&&926;v d9`s2h)zbu% _FϹUwa6oW$uݹf=t=H5RRz0/Rj:3K}:u!^F:5@zؓFvwbs̮ 96uQncשS]WEKͭ[p]hzw׃Vvmoawܻt{-:]S6H]_1NQkb'5>Q{\;EW3v꾧[wțLkUͱWN|^s+~W{VG@ o_褧|_ jkFxtFgIsxm6W~>0U{[xjQ{nmkdnfw)YkwF{(y֎1eg)v8c=ɓ:pS]TM}ee0Lf?igQcSY_GQxRESWb/beUfgbiCS[S]`.U浖vI_xYe{cAaqiYxW)]E-蔊d}g ycQY)VИ֙i)IImi[Ig99Yi\ҵY\(Rٚ Uv`ٜȹIaYYYٝ¹9Y9晞깞YynEٟY:EzJU ڠ*:R Zzڡj":$z(J&,ڢ.2Z0:6zU8< Y:ڣ@BZFDQLڤNPTZT:VPz\zb:dZfZ0gljijQ`ڦrJoڥvڢ_:zj~uJQqlwz#Zrڨ tIQJg*}cڨZ@*Z:ʪJ gJhʦZp*ڦ š˪Jڭۚ5*:Zêj*Z ʯz۰jʮ K 9;;Kگ%ۮ+, 2" {6<1;D[)۲;L{ (;[XG+z\۵:9d;[+c;QZpkg˶W+vq$7b۶v^˵z˷d_+pۤXYz?Z k۹ۥ+[+ۺ+ s[\]SEcesuعۼ^_;[֙6GUi ]彡uK_MiXۚU Z滙˾,e{^KV˚UY˾ ;SYUYܘ ̽X\voLJf DRRǀ\"vr+(R[Fm7i+~Xc9',Y$ܑ3uv,|b8 >,mR<Ŷ[dMvuYb}Hֹՠe{ Y@ko ՉF`V/͛kM(|9}֞=٣b,kZ-TX\GڌeOګڤ-ZNEۋEkkuܹ[hVE܊hۜͻAe݉WEވe޵{Tm]ޞu}ߦkߪ߮>+~k: >)~i\ ≕\n΅pYa%%R2ehfQj>m荃MQqs.(gZi.~Nǒ~v(ǒ`c8.iFn逇1yzGyNy~NWN^8y8 j.~Qj>.xntra.nW.u陞5^⮁Un>nپN~(NcXNWN N h. wXꈾ/o1uJNF"+|/N_'oXHG_TW_UiOHRBJLR]/ž2)uݕa`.>e]Y~N_wOQ)ysV>޹R_u0u?[X??ZʏWɿxX?/UW_REKXS_oZ(@@ DPB >QD-^ĘQF=~RH%;PK%cPK.AOEBPS/img/qry_bldr_search.gifVGIF89a@299BBBsssss{{{{{{ε!,@2)H*\ȰÇ#JHŋ+zȱǏ CIɓ(S\ɲ˗0c(͛8sɳ'L> Jѣ""]ʴӧHBJիXjʵׯ`ÊKٳhӂʡ۷pʝKݻx˷_ L/ˆ+^̸1`ǐ#=,˘91ΠCyiO^͚nְSÞM;ڧeͻޠuNq8BУKNسkߞu#J*;/ϞG^߾~wL$ ,@gJ~' PDfXR-ȠbApAP@y!b!~4'AL(3VG hL6A@)mEJvdG (٤[SFd%rq7R,q("jɄ*#F˹A%s"EMiғrd4` YPV &IQ(i#kjSçBU5JUOhիF[`W*Zֶj`eMJVИU'k]955+n׿U+ !7],cqJN&62֩`;[*M^11 fd=;Z hg6?Iӷu]-n[Xw=Gkūvmq;z\4̭mEzV4,-mWR"OĥkӺњW ܆AotŠ/M/_׾-pk_+x4& [<&†u]*#N ff\ յ?Yi>T eMv70q?r6 /y[ ~TjwvD K;f R}XOY^ٟ.w<y׵yc☋ ovc[pfh>S Kf(wtk+'3+h4mrS=^"ђUr=d#{3?|Qϴp@HӸ3k9#PF##}l$ԮemLk[22Lrn p{櫖Mnٰf}̤b=mxŵou: mjzKrgT.]x7?_*1i! ˍz_/1c\2;j._)G8_Y(I٥ɝ(zȨ"wjڋ/9]lsYo>BwZp2bLjFʦij-Kڧ,vzT8J*|:l*کb*sbmj_ʪQRʥ*}j?:ʫbBSzȚC6ګʇ:J4"KJںj::䊬庮3犮᫳ zڂj쁪yʯ*n*{P Kj-z ٔб+y%iCA@2+1K Ŭ' ʛK+ }ُ1 ɲ#k5۴%9 BkxVkX% ˴(Qj ilZ\!KJ;L[zKYrZ۶D +۳#w+dJf˷Rb[?kQI۴{S E]_k3vkU}۶[ u+`[&{C=D4+;h;[Zڽ>+;lJP{9A8ۿ{ J{\;[ܿ l۫[{1Q<$\&| ,.0*! L/ajt':3ejA/3|,}.qK3EPN| {+!b&37'M3J&X\tGR7]ua3-A_@%p)ou˾A v$s3Sl (ڽj׸90h-y`m}#-.褗!Ex3 W?k>d'o;{N<~'#&x|?/};?={ϖ=wöl{O~v6%>/o HL:h(=b6z GH(L WXB0& bwa(`Rl"E;NcD4݂$fMX)zQ-U"oEn14BT ưQ!c4&eṃV:ml#4BVgYD&3vD Hɪqd)Ro\ 𑞉Q&YV:咁|.w6uuܧX^jh+XҐc7BRu{I4 +͢3mJ&=yHN &Ȉ3<od9u&KZF.bd͢ls7syO\$(Z%:򝐌gB7*Yᬙ,Yqlu%Z,zJ'@gJӚ&F|mH͞Rӥ؄KQ@)oԦ:@-(M ZVVծz` XJֲ`=sT,qp}[xͫ^׾bUEdk[autՉ]:@E Hcd bY `֫š`Úb*౰mY; ` W"$Ёֶŭny Z ,Lr:4tZ֪ v]V Vu+y+\wI%N+UUt/K._@`oVEp |`pUe` Gxg;'6&0\vʷ65}m ( @*Ё +/`"7Gꄋ,  f . NZeK)#.U㪆}jN{פ Ѐ09+ ^%/|Nr B ZhDqYіW i8g`ՌSk][J 9^p ) ɰE3Wk}).2}Ms4l/yعtNW>OG_![ի+JFդ`[s ؊$2}"$ iz&pj}ζn;mK ۪ `R,)ˉle)d23|`Ӽ#08Z`VCmfHG:΍i3]rAws-IJY6lw\a8`k p%k;?r!)I7n/nfW-RsjDdI/0{)ʋ׳KW V̯d!Gȿ>"%v.Zd &)A^}* %Os}bgOc (ޑ^<` ^ӣO~Du\>bZ/~''HR"=y/w X2vlzLfSxWd臘(]ÙnIqb ȈqYl8Z8o 1ؕy%ȩR xA"AQgXyBٝYixREns$Ʒ빝9/yٟ9&yl S:ZzڡXuSEyI('Ji٢~xR7ƘNM&1sũ $I|)~^G2]Z ʝ!َr i3uiudIN SQS#d`wR~yxtv6Q.< >|TSzјzO)㩊:,{jSɦRک\:Cڔ?~Jɋ8yI$Z j%H,qPDڌUkØjOr?ĖI7ZDŬ`nڔ$N؊o<=i z - CeDt0#&=CkPѠ֭{HP;J;~X8X 1{ kC6+!y'II[/y+j,2;I7;0\۵j6گ)y|#| Q1xt y]k ;`˜:|ioƩ#[N+LNy^˵4WY˹VAj&IjT]w8~z[{kk00[kMY{5[eۦ cJ[麪 f7hh뻾۷5bټ˱=gyk묠)9 {ɨQj {xQD+v3*ϩ+KEy& :Zf 6ã"8 ×[uy>,.' 8<:,èĚKXYsYŬOӸp4-,=?¢Ɛż1|~ e gKkOv;lǢq3JVeק3ra/ +*,&{o13 *ʭ;˩|˥ ˑ˿lěZ;\"ɑZ“LˢL +$çɌ X%C*l4LLO|֥YJı.\̴xHȩqgΦ,Qd%Xɼj%]=}o҈.46m N~һ|z 5~Q}yȷ+,Vt,?AIn[%CmEZ =h#Ө<ջ|q \Բ ju(`Mb]dkZŵo-ˍZ)-YK|L|:Bd s^Jl+J \;LLxпΆMݯB=̜#-7L=Hʺ]Q̧܉#*ʤk}MM>Mԝ-|| ՝ żU-e&~kk.{8\ȩ*(4[b 7B~c\Z}$ʜܬĬ 8^YLjk,Xښ' }y\MOc>-i ޺ͮjZąڬʖ@\% lxz$T.Vn9bϡ> ܱ(]}} )Ҙ>.m:>τ*F{mت͎:]%$+ڠ&;}͚ލN@hҸh^ٷٶԩ;N"=X^ξY͍h=>$ s Ͷh嚎˰nFK[Ćۉ]R<<(^V6yCdH6(踌˽J9?CL裮?^NVjl_oLn*o.p@CO"Ar0AF `BH%MDRJ-]^0BE5męSN}b3.]T҅k" ԏ!^ŚUV22VؚA Ht+ʯdݾUb۲vV^F W`;/` ?Da5 !]Rn̻XMZ곭}*^ڵk]e3#bA&Grܿ_|ǟ_~w5JR% Wˎasł ~14rdZ7O cM(^e-fi3Ѝ={]~nbQε^†hFhqnUs=ڟ;Fl&Y`ol՜flg]/7z_3ڮ9S2R ۶?<<}oJֻRo_R Gp|]=WdʻŃtlj}9WgoHɮ, ^i}9uxyXI7'~Wau>{ (ɭ)|'_G?}g}߇?~Ϡ|?خj`8@ЀD`@6Ё`%8A VЂ`5A0 ;PKɝn,'PK.AOEBPS/img/sql_commands.gifL*GIF89a{!!k1!!!!k)!1!!))J)Z))sB)111)1111991J91Z9111199B99Z99k9BB9BJ9JZ9R99k9B99B9kBBJBB{BRcBkRB{JBZBBBBBBJB9JBJJJRJJkJJJZJJZsJscJJJJJJRBZRJBRJJRJRRRRRRZcRZRRRRZ9JZJJZJcZJsZR9ZZBZZJZZZZZkZZZckZcZZZZZZZcBBcJRcR{cZRcZccJccccckcc{ccckckc{k11kZkcBkkkk{{sBRscskRskssJsskss{sssss{s{)){)B{1J{ZR{s{{{{{{{{{ބ1ZRJk{J{Z{s!!9cBsR{ƌ1)9BB{cRƔ!!Rޜ֜BBZcRc祥祥!!9ZZk{sƭﭽƭskcֵƵε!!199B9ZcckƭƵƽ)1ZRεcνcck))11BBc))99JJkZZkkss99BBRRccssk{!, H*\ȰÇ#JHŋ3j1῏ CIɓ(S\ɲ˗0cʜI͛8sϟ@ JѢ<*]ʴӧPL*իXj}Juׯ`ÊuٳhӪYv۷pzm+ݻx}5Y LÈϾ#KL92cĎ+^XLMӨS^ͺ5M۸s]lq9Uʔ.x2S<$Σ>]G׭7=7]1 T3vɷ+_Ͻ;ݷ/?>*pvN8)`d 62| ,`xR=y!Lv8X]c"}7t5h:8:ޔ c8K0"YTKK)S:7 ܗ`eD%KU%WMdl)9&gsj9g0=wJ0GC^rFcM|Ku7o^_e迡12H#4҈%[b (J+h_ZDtxNmQc^K0R0{Mٞ\ ҷo8,D?[A@{Ȍ Q kOQ*ȽelУ9Gdb_Bmk  4l/?"(ػ5Xbp6IYo^EJJ`G2jU<[B<fO(C?_hZ×T(41`x";PVNtd%ELQP$3=ɔ3KxT >(A ( bP} Cҏc+vs_030z#/ؗ+nQylZDg EY4`L(7LP^BHy'SJ8 P[Їb+jQ@_ (D!PP81}I&M1&PۤRGJդbPsDj48e˟uEMf[,2#ѱBKÒ*M-JhKˊ6j%DZ"߫NS020]էγui`>bF PڻU]bR%Z@ItFMN"ARrJ׭nxek=*DAdЃok湾w.I؞V}s+R^7 be9lh^BC[bWF6gߵv$|fοT0% TFVī,oXS|T:BbC2L!ח$-uXab7b : 3^L== ~|z lF2}!pmieNxJWvX ؊Ghf+ЏܸkmUIgx@b'‡1Vnj( 99%1)EVEisoǎʦWCet{D=ex1H%ɍfXtąϦi XAKU4,I׋%T.z+ ۷[nؕ9X YFIn9zVӘ E&RR88x{8{ZxWp?twiDY$ ۶H5ҋCwX .(0 XjXE $jI0bi%y'lG{lhS8``FPωk K )G  "Z5(g# V+s# j)&JL8 (ԙb%:O,қ FmWszee?^b CT 6pIbhɟ)i<ɨ#Q)㉇;.Xy@]k .0Z:^VzYɥK#eGfz1 jj`}C  ipa`  )` $zڪ؏Aiz(#B#əƘ IjPE^z>P .ZXZʢ:$Rh zH(5: XS @ )` zא-Z:KsYG}Jx<ʂ}p;d7:;0 P XS 2"J7  ;+#/s3Y(iTo`p P{P5k7˰%!- C"S)zF}qW;BjF 4  ͠٪_[0gҵ[d V'G:ifP; P)+@k emڋይu#.H }qhkJ  А {{߻0ѻ[vpKuYv+>oCz0ԛ 0;;{B7}肩F/JYKXQϠ k/ ̻8k6q˫vzzlE`wK %|){050/8]R;;8ɹꛩ/(G`ju P0$kL -(_ |[JCS@tLpp0B0§ŔŸk鋌<}Y=ÒWP` ĞRLŇ́ ͪ[  b,zvzPb -  "< ;  .+΃<\ʣl_坓zBA<ɢ[ 2,-|&z\*L2F>3J8]rl@ + |ņѬJ5.zh.}WI" *2@ӿ 7_S1ϭ A-Su[xz: N 0W}VR`.]}l<\@wx#0 ~@lkP܉ ~p ǩݽm&k؍; Jlg̎W)  J =m|(]@ 5ө\AtxȮj=  |MэMՍ>]a#!-z&,)j pW埼_np dnnjCn%|,ٓh,{^@  V m)PP 븤>j چL$Z߰sH#QyxØX Z\_~ U\.. ^0>qǻũ 0oP Aٟ=0~>2^<K)Ҙzۇ nY]ǰ m Ő2on3 oZ غ8@yα^}.<^` K;6`/ 5Aᆪ v / O T ʰ220`o5@$ruvnCQM]rL $WUp /^5#_}n` 0_ πQ8PJٷnDPBgQD-^ĘQF=b\!g M`MRxB 8h,S'T2ELRaӤI6m4uUwd\KxI>ز%W\xë[9p%2U:L(v@䙕e: f| ?+u/,20R208c18Bv!Ht8c@29KK=7`k$o/FVsүZaF1qJd 2 &PcQrQ S#ADL4?K%SV! L0= +Ƹ#rh^a3sB AKiEZhaTdKRqT5cTYeaH#m%W `m />dg51#V)y٪!Kj)Zq{?}T-2-FtNNWv݅7ޮn!w9:9w1@Zit<=kFy_)F] 0Hot~U[8u8]aăyy 0jES1)⶷ú)j:'a1 Pp0hԀ(yw-Ca 5R7܍8 Q†7(n[Hd+!aWPx汍aPXۀ$8Gpy?n}t℮iv]앃GdD">8a4l*y*$ Y0 8@"HFt$#)IJ.xJ13 h` Ě qYs& U΅\Rfƪ1jYuX\0L"XI@63H! K4bf6Mn^s6])5\!,a|f 2 ,fhФoMOZ.¸ kY0fyC JsL=Lԣ QAҤ.JQFԤ'EiJUR*'h7(D X @`SPKiEgL1#Gat' ( ACF 7.sS)eʢIhZRBtך"P ]Bs]Wuw,^;X6B)Z Kix[Qs]dM1[Jv+TW 4B:fSGkaֶElg?V>̣׸eoYwq\6Wݬ3~Y<(F+\.omrڌzx޵;^wTM720y 6`Q7}oK92Eoy{Ny(;a Wp59mx,kLa WVor|5Pd rt#*cMlbEG, ! ]xOr S"dM x1}ffFӜf4;q<5Ytld>qF) dЇFthF7я~ f5Ġ iNwӟ%MiK԰3Dэ\"Ӄ~5=kZַuuk^տugs4fչrX/̖]anM%Rv|7mr{8wͽnt[69 ow{7mmq6|<8/ !N}1qw(aE>r'GyUr%x{7yu~>tGGzҕt7OzԏWѫ椾uw_{؍7g()uo{ܕNu}jwL'QG{ⳍw| 5K)c~HCzַ~}ǟķO7C?S۫?C>c@\@?@`p <@@s@Ŀ;@ ľ ̏ ?? ޫ@ӿ; @tZ#\? lA>|) A$AlLd?$B dACԏ-B B6=9B:7|CT`B;C>6<|8CA$3DDtDTEd|lȡ HȉĽ!l@#ɎHɗI,ɢuLI=CC?lɍɘIA$ɝtt:>cɢIIʥDȗʏ\H4IqJZHI˨ʸʰdJ4ˮʴ,2|l?H>JԾ\Kw\KGƽl̙{LLEʬLzGFLL4͡t,T;EO0%=P U?/MU=E =dTC@\ut^B9S<5QE" SU5UVmQR%R}DuUFA2:63A^8`auOT-T=U-Rf ShuwiERV*~B]Wo=C49ͻNO=eUex}Wu]fmU{|X֍B-Xs=XtC%uUTCbfuRuVX5]?œIKeӎُYrHLZݽ]-:ǫ]H5C,YRrǧړDY\*;Mʐ$JH^^}U ʽ;_Hsަɡ[]ǣ̹_|K Iʋ|˺d[U_Cʛ4ʲHKVU`@ʜ˭Vʹ[aUTaa`L`5ۦ<߱Da}a-%b`Lm] _/b(]M*&X<1T B)] "L'I a~C9N[A^DmdUC~KIVVKNdMNHdAOv]O-ePs=e`]eMMm"eN˝[\]W[e^a&ffֳ$[NeLfJg~f;∔{jFl8`gJErVsƶKM_sS0cb~&gNg`;`a?6cDPx煞fѵv& ~c N],|icڼ汋&Mi"{ani6ekh6F`=fb V?j]>MggnǬFb^0ok"NVf^kTKj;kpk桹b6F^͵Dvl]VlȦBӸldP&Fyfmn6ՆFk٦^&6FVfv;PKn Q*L*PK.AOEBPS/img/qry_bldr_save.gif6$GIF89a 99BBBccckkksss{{{ƭƵν!, 'H*\ȰÇ#JHŋ3jȱǏ CIɒR\ɲ˗0cʜI͛8sɳϟ@ JѣH*]ʴiRNJJիXjʵׯFKٳhӪ]˶mVnʝKݻx󖅫߿ L*ˆ+^̸1#KL˖̹e;MӍC`Xͺװc~}Jճs Z4 aޜKNuƝkϽeɻN󧿃_ϺmGGO~^ɇ߀h`qh-~hfH1 _J"i,]n's|<1額B8ۈh$C$K|=ViXdkK2H䓲!dN)$4l_Znh]R栄VdeJxdI $.%jRi覜vZ:))ivKiIgzk֨h9%+Oq9'PF4v⓽>VkK{چl )8~+n ӶkX ./9 ܭ&gw ${o(L,0,3D8\(Ld\0 gH8̡w<4 HDPo.&:PH*yKb.px@"Pq;H3>6HGa3Za>x>B2@L"XJZr|wLaxx$HRΐd$'Rle xZ2z&_x$/ Q>1D Cf&S Bh*f5E HI s$(q>%:ӡNǺԛsQ׹Kx^?Ga9׎=&J9ש~_P_ݧ.d}ɷ:/>\Y_x{;ޟ.W~ɳCy3A>3s|4{O%YǹK_uzA?tkϞ=|_ya%\ O1phlexiXa1.'8g:xxz|q88:hXxK׈u8hsvhX[k7؊8XXAHX9?Z|1cWx[BXxÌ-щr8HDEeÍ,*j@6dv(=hgq7FWpHmbxlBGj4FetF>Tl4nGձ5(m̧~)6HC{46HJH;49d q?yuHFY$LfILLCE\a;TN7N8NW @-v\IyYbGHOO%PuLTQATRW X}QuR)R>(qZgza'8|ߧu(y׏zxbcɒ85YY?:_֜USEU Uci>yGzzyyX4_ah1jeVu\EiXADEXiI>g zMyyDvǏ`oIH YƉeÅ&Zq\әU[Z 4Z<ӧtw{*؁y J~xB9jC 1%ťC*]Ӆ1u:S7JGأ zsrKH)^@^祜6_Ig@`Q_ `/ljtcJww7 ʁ_Z=1'ɒ1&Tmi'aq&b0Z&R$-T xZzuHD: ʡ,c.IC5c;v8֭ӝ1z0!rzjٺEUdeSJLFaIDAg!rC*nZ\f:g>q&HQiɰ5$ E2 YԐ6g'fU2KZ(="I$.xJJ@TK憧=@3mD+}*G, m;z0{[=qQk;7;9+HJY ^[۲?_+;a+cۮ!jq l۶?8i;([uHyL;8Ǹkn|KU nWg`ikk4TvtJ wۺ9書 ɩf̮kȓȻѕ՛K~iq|Fʠ:Z} ]ɞYfKT;[W.3L@<߹:^jj*W*mzB IFOw{z;{ ZKAi$ܵi"$blCL/lzMQz|:kg[lL}}ÉL<5,lЊ}? 7Z'}_A5x|h;Է);Ǡ'@xLup \{sF&ü*AT\,|ڧZ/Ú+;(LSܾLVܬS\Lǂ\ ;5Q| h) HA-,,vl }ѱ˺ͳ ݸ 3E̪{Jӷ ]<}ѹŦ淃[V]kԹSW+c-\};^-`mrb-,öt]v}xm2֏ֿ֋HMky}؈]U| @Bҁpr m}zdEFW٠ګZ@Җ٘ך8[?f]+؞L!nگ;~ ms}͟Õ n}ٮۈ<8uc75unn_6ܑlrJ|\:nzzcG/̞˺kADnёՔx[R<◎qC ;=9t]|+|lz~9'@ATO>ʮNP,Z>N^αq쫍^A^N~7 k~9iq9e8_. Ͻ#+7.֒}-Or"snb3n?,>@M C};?9_!M9^ؐMS/9(b_դ] Z/mGߴh9[]/N=QD-^ȰBƆ 9BH%GJ-]AD`N޶аq?2q0D +$H#*B&DF 72[j2r,ODpII(;,Ju|D*-1"I=Ƀ̲(nKMrT=0`>h6L[E1?qъu]#vLJ(z)/|۸_`OF9?˒pN6l39e !QX1?-䑏)#VeUtB纂㽈&miGFTF;m[28eńgv)!ML &pJߗgn{7`lIi7\Uįr*Z]\/;z韯x>{g=kw}"}+p{I߇Aʿ 7W+|vЀؙT@ "[M%?1hA~&RYEA &z9a 1΄P$XAP*|t8=Ї?C"qx(D a! 8ũ%34 $vQ$X '~ITDcbŖq)mD/Q,n|cR0;яc#K#(-q#dC )?V\ #5]*(\d9AxjEKrL)W7I|R(_&ˈHK@d+ ȩD\SVPdf!?<&43ӛoidpdL8mb6{4{E3y12c\M~,#qE\2m}~jMۈr_JKFFmQYԐR,dR)/RHl:J,gG#] Gc%C:TÍ JSiTN[Mb궙ƪt.Z5?JTͨAajUNZVس*y.QTWp9 ˕rQagʺب&| VtuTdy zXi<eح-l?*IF-`Ϟ2=`EmGټ-R/g}4cc'c؜l)RbBRzwMtk[u)\[8Q} ^hKT,|*>I]+`)یv+R-OzVSJU V'AaIQn chv}WHG4q"=KS*FöC2tF!WyȳuyQTK\tEGS "/fF +`2>Fs ׼Πsɻcy-_Fʠ##Z/4XiNcoџf4# uV(Pz4~ul Iej^wָvͬ92fZ؈u7k`s2,sc}l<)`ninw۴ŽA:hɀ|mvAZK{6Uf[@>p|.}}7ۚʺ:k#8 cÈڵԷ @ÿ@@TӸ8:. *D<ӥA;x:"> 8x5>B+B(sH ,z/ ; ) 2{J< %?AU0} =ӂPժ0R=UTYuU˜R8M}LT: d] W9\uUU]D%U@V.VV=SVjm '%cTaS;DBO-WeeefV\VooWSD֩pU$}~=UG )%ׂ` QJmveVRWiWUAUhWU2Mg5RI r5ב-(e TmXeg؀mUXH}UFي]XX=דT`=VcrEؕUYXؗWm{SXSIל٦ZTJt֠E^s5[ u"dU[ve۸ۢۺ[ۼ[KۿȽ5%3Í-`uDž\EܥLeƝ܆U\υuM65]]euׅؕ٥ڵ%5%Ueu-M-%+'%&E#e"!_ʤ=E" FVfv`^mt a CFVfav$ f f˰a!6#F$N}M >)b}`b+ %"01,~ =3F.F`Pcx|cјp .*N*2? cw-a>ciL'Dc%@JE' LFH_C.FdP O pI $Ne1 %NW`Y`Z6bN.@]dtUR.KbedeJa^Nfeh &6abFJQ ݠe[FCIrFesZ6W ngLynfhd`~ S^{yg^fj&hXv7%J[jjrj`Led&khicaRTȍ.kFkB>l{lik!I fUFbjngjf Nnlm&E-amk9iꬆH^ivnm&`4^_ l>H.fw#Ffo#mm~n۶ngގ8 .`IoNkmݖnnFlj췆.^ppc!hvo ^>n~jV^o符6l gpnyA%_M3m. lF op$h0Vomm8h>_q5!iq+*(A%>aVtiAm mGE-ێ.^HmI˶fRw'^>mVisJ'6pLWk@6ddj`p&v~thK- Hu k^WAt fp^GuZFg>OuqX8e[rNRfb=vdotzr.gĶv  re sbvPQ0NoKG=/,omex?h閐xd'?umGcy!yyxHy t'qIyWW;=߉eߊ?yG`vgs{y"zha*8H_J6_L{7|1 N CfLJȗ`důK |ʷWߜWgwׇؗe_7}E '7GWgwW'7?QGwWe ,h „ 2 Ĉ'Rh"ƌ7r#Ȑ"G,9r„ l%̘2gҬi&Μ:wsCB-j(ҤJ3T)ԨRRj*VAr+ذ]r\,ڴjײmVVrҭkW)ٍfoo.l0bw3nq^{`2f s3hq.mt''|QsزgӮ@Ѩw[5F][m8f7( Ɨs8n<4GE (4_l*K~)>)???:< 2| #( R 3 ro &,NBӤ.|! c(Ұ6!s>!(!F<"hi()RV"-RNb]1f<#Ө2zn (9ұv#7+q# )ACci4Ő|$$#)I5"R'Mra%/)J1R29 *O|eC9Yv$3 frX򲗾 eIa9^J 4yFP;40>3d4< 月-eH]2ә8M3i;ݹosc9)tp!>Yz՜C!Pk~hE1ZM{1$?cN$Ig%6K:ŀ ԜA;nthEQ:E%QTrԇ;I͏jHҫrUTXӱ/i;S42ThP׉nmjZjNԙTi<׽Fկ`lWHSҬ.D+BׅPsE\ֶ&G*U3"U+jIkZV5J\,cE@֩ +eahYUJQ/[0d\SjL"lkC7vm\wnF/qs]>&+|WVJץҽ{_{ȘA28_>fi>'* S3,H&xl730%2[.oSӸ6Ρc߸>qu|BFq\B"NgB&?VneU^2,1f>3Ӭ5n~3,9ӹv3e-ߏW3#g>ρ>49hBЉ~4)::Җ=iUӞ47]NԦE}:RծG_뼺ֶ^b:kܺ׾asM7VؗFlc3;Nv=fS۟3.{eV沫-nڷ&Vo7,t}Er6|[z[uҖһRyM.k\wn?z_Oq.$#So.]Pn{㸝)K>r s+|0C>s'gaqNn' jA>tE&w>uSV `?;GNn~ܧCwx{tK xCI#;5<ZwZK+˶>iN̾ӯP"ӿ??  &. 6> FN V`;PKj66PK.AOEBPS/img/explaintab.gif(GIF89a99sss{{{!,I8ͻ`(dihlp,tmK|pH,Ȥrl:ШtJZجv&%ްxL.znF0|N~_~cR^rưج HAD*\ȰÇPBHŋ$bȱǏm4Iɓq\ɲˏȜDfLiDJfڜbshMQDD˫X3Ŵ Ԝ%J+^ZmTjٷK6]mֻx mп8cl>]'㰊ۯ_)Kyqy Yˤk6{~ wvC ?> 9rb#9-q4o\im>ZmTzハt뮪Po>zrsyǜvV1n֘uhZ}j6`h\Xb`T$Z`8BNĖ#~HSn"#"AbF@cN)`S()eVbHr١b!bNxU֨&Aނ MbwI梌beR:$9盕"&htY)vZ'j)&9)*u>냷aJ:6;F+@Kfvgp Ko.+oG;>T/nLпk7pF-,Wlgw ,$l(0,4l8<@mBm?y%PtTWM/Vg5KSoc dOthEivp]#lEo-|g حށ6n 879-99g޸G^z娣~.z⢻Nxࠧܫ9 <'q޺׎+`_z`8~[Tm<׭}>X}׳X#>=Ã\g>auK ne%N^׈Zr/A GH(L W0 gH8̡w@ HDfHD PH*ZX̢.z` H2hL6pFxa IBL"F:򑐌$'IJZ̤&7Nz,PL*WV򕰌,gQ"䉴̥.w^ 0aiCrL2f:,^p jZ̦6:R 8Ir3,1ve2ўۜ 4Iu @)IOB39(DZϊ MEIOfTFIL2TJWRqiLOdv7(>i:ӝ' DJ[JԢU%LAђ31h +DҚ2ժ zԮzLOTBc* zյ~ZWJ׺ڕbZQJ XJɸawMbȼկ%,/# YZumŨd'i= hGn뛤MjWK6mlgK[վnw[pK\-r\m}k&zN)V^Tn(1*%z-oZkaPf_Wo"ؕ=`]! \H2 i9pUlFGЦB&S^_Y8~c:0RRnز..rULeAvK\YN`&da VDL,d83F3kf8 8wV<_Xˁ 9Dj~vyYј>h m1̀62-eL٦u޴E7+Ė.OVK2+X\?Q61sͰ6v-dѓ~6=HOԹ&K .Չv3KP_ZeZk;ݒy=d;:e&g- +PU>qgnD4o| \Wn]?KκtogdY|=U7wP{VݛԽ<_Crڼ*a'_ڹϼ7_y>9k`~O4qgOϽw{ h} H;ЏO[Ͼ{OO}쏿OϿ77Xx ؀d8Xxt "8$X&ȁW',؂.0ׁb 2x8x;| 93ӧGȃDxN|=HBX@RXQX;D(>ȅJxgF7C|Sh46|[HtXm蛸}y}\؈f*.ّ-5I|ܹٝ')ܩݹɞٞ:A= 9WLpgyȑ͸}} JIYJ|ZI! ܸɑ ʟ *ڊ鷣9噡CJ$"jGzJ@ʛ9 Kȉ9Iɋ̹YS~BzP:EʡFvވ})ǥJ eZfJ|xYsPʤH*wڤJ)R q~Jg_pǎ.jX:Zm}O z*DZj'JY~ɦ 2 ~)'9)y} &:*p8iy۷/9H[{{Ǟ; {뗰ery۱ۖ[ $[D0&,;(;*۲2;1B`G:<۳>; 6{D[F{HJL۴|DR[^CVU]ace;giZ۶j$Gr_P=`mgn\{s$^뵆A'qp; !$[w;n+۹빘}[051˺+"˸[$&kk$[ K+b, ;Kۻ[ً`k߫;˼ۃ{$ [aKk{ڛܻ۾,k +\ ,;{˷ |в|+!l(,5|[ ,6`[;ắL+̿b+=|>lX`<._d-c\h<-gl,kp+ot(s\x#w| {ǀȄ\Ȉ5@ȌL,Ȑ ɔ,&\Lɜɠlʤ\ʨ ʬL ʰ\-˴|5|$ʸ[5˼ <|̦lȼ̪,!D@Pp:A\ LAAlC=@3Cΰ@δ<<?l8$@9|>m>l? t@ 3мlݜ>A}Ιs<Mұ<3;7.029#=mJԙ,\ bPJ ]t "nI]Ier~gJfx(xܛu9&Y6^"5afuL'd=^aW-^S9>]vVx5~*z]xVOTNFs>HFNwBj=utqr$UcNgVeƦOb@f*awn9uWVDJ+etfU7al_f瀎甦oNrCcVv~je~ygWq~p=rbm>Oh=^>n4NNgSwi,7hƎgpV^sӎYauc7ub7wlT&u`ojNvݭV.Uxbئc!qNpO>jrHAq>)".sm~/*~"ownsNjG_6q%$]1I_F!jR/Ҿ\w7gUO/2^N%fhsXwﳶtJl>Mev-YZ vz?s5wq?rwlyO]lnvTG >}5u#V٨䲿IozJ|IzοH?_؟wQْŸ1K_y7Ϙ|?e?^0G4O4UWu_cw`P8$GdRIMh7\@U8&]\~q)^p,~65>5 %) -*,*GEFJHFJI*HGˬROSЊ*Mҫ֤D& WS A B7egAiBhgjhfj=CmB?p_ULvVQEOZwZwyc~}wP@p7 G"xH{ͨ1LAx0;HY7nՖu\# mCNb>#IJK,bĴ3Ayto.=iOh"~Y%r՞D`* &^Uu[4tin4'm\I2}mN§Ԟ_> a @/el_b"2A[*}hZ$aؐz "}ϡ!̠lW˽ g/ҟy^4^O+mڃ*2ΏV/i;ɋO]aub0 Vle-+^Vlg={~V%miMԫVemk/ZVm[a[[Vmmy[W]Mp{\&wgUns2ӥnu5+]fW,v]׭oy{ެeo{^We|{_wo_&y!'7[03p9{`'لua&qSG pGk2qmb!Mc O<^{cgDf2}d,gWs,e?D $hVf8#uc<.{s|8ZKs>yf-g>O-}:=3͉n1}jTMӔ>dCZɢV1'JZ׻٪)-f:d6 Q'Gu5>[Ӿ}ml[v* [&w}nt[fwnx[w}o|[wo\'x߽mo'\@EYx-~qg\8ke䪅SL~r\+gy]r\3ym~s\;y}|-9Ѝ~t']Kgzӝ }-:ԭ~ug][zץ>uVc'{~v7`v]s~]{{.sygy ^功9~xǯ(_CX9xͻ0<x[}[or';Onzۧo߽;k晎Sv}KчЇ=_'@ҷ9板gKz࿾?Oy|~sK?C䓬?kk⋿@@ <@ث@ @@?;A >k\A>k d9<@J?|?C< =4 A B3ľ˹TB|*(4BB TA$@Ad,@B@+T@ 6l!)B6>DD$C@aScg<[BFD+CYT=;p GqǚÜno$GvlGw;FLG[wG|G}DGzGG H;~GǁLH\H+H+dHH9|HHHH)<ֺH,|( LI򧖜IxII|Iɝ JID+J,,J:ʤ|JXJ$+T ͑HPJ8y]ɣTKK!aR% dBIͰ#VOzyaKA!TLGxKX`驝K#4 \Lz)(J|-y"KUz#KLT̨L1˱($ڌPi_:1{ȠTN֤"M'*˴;&o)"Řί$$0!"_ Or"LNM]L #y*O &/yNAO*,TĔ =ĤS?S@E9Ӣ8BeA=TR;DUTFGԪaIEJԩL MTOTQ=+O-U SuTMʬ˳܌&% hZ-PԌVm"U+P VU,M5rLQ&ДLQ(Vc%.yT!UPN$%|\֌nVyUJT]V#^K| /EdxWWNJ&DP$,b*`:טIX% JUheN$j5Q*Z) V@RLx YD*UwYsMWU%JR YU5X$Ԣ}ОXP&jJ#{֥媑UURگ[#(X!۲ E[d۶ۀ۹ř[{ۼ[zۿ TM\]\}-\(0Tuǝ\}ʝ\v\\E'-\]r*ݿ=]&[mlzݹ]~X ձU-YcQmc78T9ccKc<=T>ccE dAvB>TC֦=Y5bY =չ$NZlآݔ-a` ZMN*NƦqD_E'D&VWKZ_e__3]eVMMaޟ . OTVeffrffР-Qbe N-L fhFڴ͠ Wev6vEd.Toyh7hFSi)0=i./&ciyi)Ȑiihj8.j6Nj4Djn"jdjjj깂jjkj.kٴ^k~rkQk*k׳kklæNlnl~lȎlɞlʮl˾lllllmm.m>mNm^mnm~Ύ;PKFvn)(PK.AOEBPS/img/proc_history.gif+GIF89a99BBBccckkk{{{!,H*\ȰÇ#JHŋ3jǏ CIɓ(S\ɲ˗0cʜI@ jɳϟ@ JѣH*]jΧPJJիXjʵׯ`ÊKٳhӪ]˶۷p:Kݻx˷߿+È+^̸c7KL˘3kyϠCMZsҨS^ͺ멧_˞Mtcͻ߲uNㅅcX8m\+׽Rzv~_Njܷt=T#OzOd]`}_w z |WUhg'`umvܝxy&(Ղj!Υ袊QXނ"T~騞^C4|GBHL6W;JWbRR頇ߔU^>ZS~b`6xEy`h]r${D'|Fg{:)peteZˆ7I㗊_e=إ$)V%g~jAhxrΚ&zRZ㙷h:j%&sfV F(f땬fcup))J['X~~ۭVBU$jlî| o*晏fl)bcyjz^+(sk?\+bŹ,n& 0L%Ε|όoG!%]V$XeSg^Mbmln-ܤMxz| xk n'~&x).Cni]N'=g^3鬷.n/N'7G/͋m}wއ/>ԙob[~?omgUHL:'8H̠7 A(L W0 gH8,Ѓ !F8 q+;A#qtDx$ƅXx(Fe\,1"TΈƧ-=LRFfx#N>ℎm|[: c8+LdZ "HDR%bIqHd(ɨ,GPnrk)%!M)KfPt[+Yze0qK貗}eڱ|yLf1MY|b3i56̧lӛ5ljrJ@8ivƓ2y]m-7L&8ZG4g>IQ͡19PbТe9]R)YdҎִK MӱԇCn:yLRT@XͪVծZTԱ YVֵ%0t+*׺Rvk׾ʏ~ +ŠM*22 d'KZͬf7z hGKҚMjWֺlgZ:mdd# pKMr:ЍtKZͮvzW KMz/tËͯ~/}1`N;.y- [ΰ77x$GL(Nk 0gL8 -sM:mow\"H&/KXM.;r.{ǽl3E7J.g=[Ҙ@>{跷w>/}tK?>{/_G>/Wgo} w_{덾$mOOtt{}̗ vGu~ H XG} Ȁ{wzPl''~W'-8z2~0XV}<g||X|٧}؄؁}}F?(}E}[hHEXZ"G,8.t(,(q9v8uLX؄LH|~8w||OWX(}Gb8}8}IȆ8x:h|ozG҂w.X'UȈ (ȅ[(AQh˨(8ШX}熶txvX4+苀gxTxHȏehȅhiwo׎u1x!#i~GȒHǍC8HxB ى-5yI|2yqבst$x6H؇$@Hh؍8(HDHq}Dم}YؓC}酥tyvR(v`)uuzu7Yyٚ9)yיٛ9Yƙʹ̉xUٜ9naLqؙٝ 6tBI깞ٞF9 yhٟǟ:Z' v68w9W6مJXhbIW'Ȍ^؀pR؃!&Zw%ʠVi vH7iYxhɈdHj-:)/.i|H4KBjDȎϩ[)}4\_)؃b>81ZGؔ6.On B_Jg*YJR(kz-)j4*9 Pz{z^S9H"Y+ c?XYK9]*e(myܘzڈꪭ6*ʓX&E{ث(y)ڋL ܪhQZ0Z:kɪlJ>y<xڭ/r)TڮhKW~X ː]ʥ۱ʰ@ɮE#Kꪗ#:j k AۭKi(6 ,۲9(`jǒjJɦƚ4!ʴ {طe!+b*:ZҚ@J{f&K]0[.맅g닡ɋ'i ɻLr{DIZɫk^< {rZ:۽ܘf)ɤ (J:njhƑʷhA` JȦʂR;W̻3+<;?:T+VL7jӜl+\=,-J $M*Fe{#"Y0}}n ط]`j~M}[J)5jѱALXc|ܘʧ(; \m_}FbŪ܍ꊻ Ȣ뷑׮ J(=<ͰmL(Hal;߻k{Gh\d=kt֝}wؽ\=Mx]X=>N^M 6|ϮW;ZI/ J[-)5cg*w8=,Fӯ= muLg+ɇ9;MWlz|?\Ԭ@BՓ1Ր!{ s-z:M)ʃP'_ۿMv,ϹWWe-@{ym%}Kg--_̍.ΰLhwܴZ^N~)bNUMJҾhʘR~tk^:=R]τڕm̋= 늡,Jݼז?W) Z Λm^ /]"?>_&?%*).?-2Ϟ1?6/5:Ԟwnѵܽ>;]Q˚zv;*nu.ޤt$E]؊T,uP!(?u~Sɉ.N.BzHgjab[Y϶j~& レ٪mF]X ~ތozɈ s:nMI}IMc]z\ܟ.ޞɢ^+ N]tƷ_Mnobln}ƫ;>Hܳq| o@  @D0BzHƏ QeZ$K1].2̗8ӥLkяd 9HBҐD${"F6ґd$%9IJVҒd&#DGKzoG+aױe-{czSl FVN寮caQVfhY ӶZ4R <`<'uhZf-酒k_5 FtXZ*nִ`ťVZ(zѵieֶ=Nmq[Fnp][׸c"\6׹υnt;].Rnv]v׻u{\w2oz#׽5x;_>Do}_mpJKWpLEW&B"W - M`/0GȴǒZ ]a |!)UY\l`A'9&-i^n3Ɇo{g}6-5ٕSZEe&tIWVtion -xƔ=QXr^'gהzܒ+06;yogD00C&YXWCO+N7sn^$LV3hv+ 0wLĦ*֩E!S[~{,cԘN֬ar糟CH'R>_1=RiǎFbv]dyd`{-ùvkN**5ak٫N2R_).h"=Z$]EjW3){BA O*N|{y_3j~D,[Ӳӡ.s ;Gn#OKԘ}"?ڹo{NY0]W=in5֗v^O5|):}v, 鶣nxs]z^חw njl8e߳{6"uQ:-Wהzqa;K8} wy] OUWBvﳏF=UcTI[Χ T؏ӛƕβq #:ҳ R@l-$-Dܬ䢮  !d#DD%,/#d'&')%)+|%+-41@@ ?JK;031BSjiI5&U=Dk=+4j96lCRr<%ܜw>; >zFq!:)@6:+\µ7ÀÚDC0|<# E[7"DC7xBC,3,<2ęZJ`FS;SEjYDDE˲2h5&]&gFU+W,EF+ØIJiD#;)3&YtHOat(kʹ߃D'?Y҃F\LtiT8L )@dIpB|IĢ/-ɞ,"ɠ|ʢ4ʤ #tʧʨʩA$«ʬʭʮATʰ˲4˴T˶|t˸<˺/C[#m&4 n+6K˼\)JK5άư[$M\?4Q4{ BEe\:Vd 40K̳5ī[6S9{Ob1oNgGŒ:ad{PLtx;KtOB ͜#VRB=>̶2?Att5t; \F{LbdnjtE;s4?qɿQ3L4S64<--.! Ջ17@ IJ-rTLNUP%UREpAdVuWXJ[\]UTV8`%2bEdeVfXhVդ 4b?ߤZ$;NynżVǑ&Q"kD <̴.Rb"==W\8\IE5Ī3kiXD;qWHoק<;5B,XTl=k%%2EXR}R5 )#7 ^7dL͊WLY EY\& >Z]# R `"aݵյceL]?NL̛ ,IMٚӾJ1p)50>?lc|ӉcľLaP \t T|j;CRa0;Eџ #KW5S}VU|ѹu;^c^,zM$D3z9ߡ"f*fNg\GG[&QƋh>9FvʫӇSa̟׻Qg32 D̾:&i.b2lwHӥFsdR'vTteHyuVM Dc!kgmHuHdžȖɦ\#_T&lP6F~mGe׆ Vڶܮnn28(!V"PHx 8Jfޢ螀 ` p o.oۺ 8no>#oo0 ӬIM o P7HnZfـw P X.sq%! ` 7P'lTr x \+hҐ!G H 8'q'7ZWU!rBH/wlr)'2+`sN )8ۘr;_h >o&€ xh oA6MN+PQ''4S_TW#dV_WYZ\7ܘ_`a'b7cGdWegfwghijklmnog;PKi ++PK.A OEBPS/img/wrkshp_find_tables.gifoGIF87aTVT<Tޜ̄ll,EI85#@כ Jʥu$y:R\*.bFac'FoРHThѡG&JԫUf5juP ?.lWS=te(H;W\tŻwo޺} 6,Č;,8O[H8ϑCCY4;PP<Q iC8Q޼ \  QbGI ҅^<HAVsgpW @`pO= <0_}xU}w}(]U@sYHq؃sIva륦f'hXc%X E@\\2J81߅tGXz)Ś@YVY5myFbd$`ri"iIVfcQ"zgpE`jޥ"65]ky_uNv%`4e  f馜rzi*ꨘ~JjꪣʪzjJkzkک0ꦴ&{2l",V ^m:݆N[;nⲻѪ󾫮Ka @pym{j",#Ƙ _:pI \2)OL0&L3"<&C.;[4K*=DK]65T#5_GuVmv}`êusMwdۭwfw݀x-l#n,ZᐋͷScNxk>yo}nzPӦ.Bs{Zi&|V<#_@rȳBς#πcz _Ծ~ӿӮ~ ;Zn:!p0lRxz yqn (hBSeRӰQY g" a{T09 OKvN{a6.z`(2BS$c%)-r1p(ޱЌj̣x5xRA"HBj e%3497Q̤&YBycKIt1L*SORҕ|(gIʶRV]R[0I}e2i zYdAIL/gA\&Ҏ+\,ljp*WK]5N9%9YxRwZf;OY˞g@iNԔ4 B~PftƁZ-(ANzڨA3 Pe-Җ(Ig*ҚTxK. jOcԦGhJQ4 PUu͏e3UaInT^MXJ^rhfX O"khдڵD}LVkM=kv`T" Mc%W^[~ը))2KZ:rg^aQS֖h'&ҷ!K"y3y+n)g4b^U2wd{7vem$KW]/|zok&`ڷ~L>;~#L [r%x KnY<*MMJ1W|"*nax6qwc:>T@q%9R*S7M#7s؜9OH$|6:2&<T O |2j $=yKxY:>i $ ihp9uchI. i%}&Ԟ%&C%tEK{ "yBQ$';Aג0F̕.*K\Y 칼N$c/m*e 5{ ߹7T^'zRYvbdI>|uY"qXYK="r ?˽𓏜Au[ޒ[0͵|UxËN+~ͻcї^ZPNg:+-kg#(kIJ:sʪmؽvgY%ۥ~ݡ73\ [}g[ 7skte: Ãk|Nk+Է{l%O RWT}Ww֫}DʟV=cuo ZTu]H,2U!ח/|woiV˵|Lu7{򷇩0!(YpSџ_?~>EB?(>X?ڧ}GQewW4tEzI; 6!|"X$xe)zMWGB'B3%+CM}DgFHwXwz58pS|ut{$DNԃHȂgKmyK>S`yL(|R7B* 5R[$cC5]/\WGcaw^SX6|x.1eT(9PXPB4hG\:MrȈ7(z*8X{|uH*8KSdX;hH(WZ3цetH8ex(XZ~ȃ8٘Zw*wXZ3\MWW(Ix^LJ[hyJXIO؏xXObxS\h}Hg8HXp3e0Dd] ؂uWyԸxXA8ɒ59TtYe\/u‰ZDRd>96y8Bȏ:Y*ɓ?)aȕTI6j)4iN ofi]vyxzQ%/n+$r=7^ syIdY4ǘ阓 Ynas?q&'yI9yY#qYb;'in9gbpddJ6MFiYʙd!}yԩd!%&'@rQfMqOf@G g"R֞rIsQ#Pi& JB()hi%R)Pf%g~ `iJ`@$ ee!  #q8j^f%Aѡdf+BowBqi"2'$9=j%FO#)&$|I2!PO!ltQ "RÖpq(nr2$hQm#% T*qƥ!&J!kiq"Q (q)/q"*Zbo& 0mH"!#V\ kv` q$t᫬ eJ 8Jh}Bn:n*m"DHԡRih*$!r1%@$Rl}*lbjܚ&nrY-og'rkqpR(qѰ7tڙ2"kqj((${(#*1 0x8S8۳@ ԅ?˳D>˳LMB[RS8HIJ:S˴]SF7SLYY:n 3qWij9#fVD;Z48\R04wᗑI'U7 ^鈵Fh9|kوKەg))ogU 3+P30PDD^G<{c\Oi3M;v8ąMC[\ 4CԻNv{-E0u+[u-1^w1k݋T+3|{$hǾܫXXQY]d4R u,\½iI5)d8+/, &,ziHD|{-9R7f~ٺF,ťU0LN<÷V\U\S .S#}(?}<TtLKŏςώ.,aL;ܓC|l- =d+J8)De|} }AcLl+[)C,DUH40)5 4E 7Oq7ԩ=;@m^;IT2]<,CC[!ݓ$)Sp03=I4 t}՞Y=ҠW).m[M2aٔ=ٖ]ؚ٘}čQPK}ؠ#]Ĥ %Bo`8\eA= ґ .^}*=euҦټmV=%f۩OۭH҃i#]-ðV1эm}N.Uхds | ݜѣ\ᡝ ܤ2LU!­Xj"M S'7F6~+.*K@òg^ZP./Ҝ  d>f~gelYN)]iQX(V>.I3NJQ^Ý^|^bH"}.NfLW)m.汾^n~뺞>@nT>`[nWBB)PI:>*MY#.~>rlō+cNNR^"PqaՉy#y͞,?^i_nh>ߍށ /TȞ=%}R*o4y UuٻhI -obAܘB\XM"$)$-H%- 6]!ᄑ(-rtOq_ .i?,_&/`?M?UNgĮ7~vMOUHuRu^)OLUu=L~\VhIJ}=| OoNWy/?;+9U o{_b\ O k?OuY?ɚ{;'N8P A&LaÅ:Hq‡3b,#G%JiǑC4JZlaeE StٓϝAo 9hQ*=4iɧ,|YRNf*5]j5V^RtٴlU[Wn\t;V'Ҵyvhٶ^[2cȑ%O\e̙5o Y^E&YGD:oCjD 2("0q 8EBpDQD/ED(.!RRM 0 h T5wsV,,Gr,u2`vI^}6G<4H5|%j2ۢ͒Xr2KXXW i!I^@  5Gc  5OWPFPP@a&~bP=V[,sɕ @`u%Q|Y0xd#F27Apzu=]e"dV%$Mf nm4ILjNJHWb#G(&Y%)F9L.dJX0wJ3ܤ'y݋y46'gʤ7J5n9fyy؄&o/ᴶi$Ǖt0!T)fs=EٲR#I?O6oih48)vzӞ>jQS XQjTuGNԦFթY}RӢiOUBuZ*Rյ~n*OE"S4} Ad^&_ >#eXhBzyBhQK:vT^gϚǙ i[&F@CZ*s-h/{@dmoyknqeq.׸EoRŮ]~.yw+^&-ow7eox _~kzw%/k9` N3Xp,a gx氆5\ o&qE|b8^Ua0m,Ǹ9CA>q|!.rLd;Ll%_Rfq*\o'Yds,4Qvs,Yr^3Ї eEGЎM$/z҉%iPCm޴CMS_Ֆ~4[gKkz԰-O:׮NuYzն6wm`:ϼ]kOk93$ c$*R an6 dm[뮰/;ַkS3[. ZxQ7tg_w p@O`qkKX"u<8 kGoR;x͍n@y;}h;©a8YP X_s}yo.vo?xMu7w pkVW0{].u˾3 s:ۺü<[:s6&{> =과 <2B+ ˃@kb> t> @ <#cocAKl,><4Av!BDB@'A"CEC=FD?tBCHDõEL.DFDN@7DNRJCSd0:O|PM*EBJAT]d%E@D[a blS4FQT^C0$FXFaFhj$U|Tl,lITFkGi4EKdACDe6dOTITJTKTLTMF&?3M=UTMUU]UVTB]|DylO?5VU]U^Jr TUaURt#7UfUkVNU4CaK255DQӶ1mݎ_^-]j ^I`V=|\G 94 ౥``nVa\-FMaM_6\Tb5^]a$vܼ a^b6F&$bMX#mb+&x]* b!,24e0b50a1^xtHߙ5^[uc>^2~3=c4Ȱc$?ʛ[ c&d8~#Q:ם)>YE_IQN`-nG1dCO#-}cRnc?I.dBLce%Pc].eHd`aeNfjefQfn_dZkeqaI n>gWigu^.3ct糍vVzf_c]g~H uoV 3y>hvgg1g脾Hm>ሎ^^4nhh0g1V5ޓci_)hZ&G锾ie$^d~ꏆlI%#i_.^嫖߬6ucV fu^kkQm鹾㰶khf췦b..3e~lΌFl͎0"km(&lmN^k'l2ϖT3w6p`&o/l q$ 5r! $qVpGq$=q~h_nَB#wŦr*,O_,gnTIm.g\qQ s(/.siM9.6'k789nC/<g6_g&QABCtp]Z;qtLott0_[rJu>s[40n& Y\j[g\_7uv1'a?7v VuZWsu|qgahGv>qkrnvNlo_`rmOu{sGwqvu5PwuwVAs{q}Oy3wxqx1NC.fKgxdwэeL==PZyEx_x]ݎoK=n7?lgxхJ>鈗^?wxGNyւ7xxzy2zr/'G{w{-6S{Ӻӽӹz+7'V.=CaS|={gҪ?eO`|w {Of|GdFvO{| 0o}}׏}؟}ٯ}ڿ}}}}!~~/~?~O~π;PK*7=-8-PK.A#OEBPS/img_text/o_brws_menu_apex.htmF Description of the illustration o_brws_menu_apex.gif

This illustration shows the drop down menu for Object Browser. This menu functions as a shortcut to the Object Browser. You can use drop down menus as an alternative navigation path.

PKYMKFPK.AOEBPS/img_text/scripts.htm  Description of the illustration scripts.gif

This illustration shows the drop down menu for SQL Workshop Scripts. You can use drop down menus as an alternative navigation path.

PK< PK.A!OEBPS/img_text/sql_com_bottom.htm Description of the illustration sql_com_bottom.gif

This illustration shows the top of SQL Commands home page. Additional information about this illustration can be found in the surrounding text.

PK9I"PK.AOEBPS/img_text/sql_commands.htmq Description of the illustration sql_commands.gif

This illustration shows the drop down menu for SQL Workshop. This menu functions as a shortcut to the following options: SQL Commands, SQL Scripts, and Query Builder. You can use drop down menus as an alternative navigation path.

PK?ʒvqPK.AOEBPS/img_text/script_find.htmi Description of the illustration script_find.gif

This illustration shows the Find and Replace with fields in the Script Editor. To access Find mode, click the Find button. Use these fields to search for and replace text strings and JavaScript regular expressions within a script. To exit Find mode, click Find again.

PKΤPK.AOEBPS/img_text/proc_history.htmc Description of the illustration proc_history.gif

This illustration shows the History pane. It lists SQL commands you have recently executed. User controls appear at the top

Additional information about this illustration can be found in the surrounding text.

PKɨUhcPK.A OEBPS/img_text/script_editor.htmw Description of the illustration script_editor.gif

This illustration shows the SQL Script Editor. The Script Name field and the editor controls for the Script Editor are located above the editor pane. Additional information about this illustration can be found in the surrounding text.

PKs|wPK.A$OEBPS/img_text/wrkshp_view_table.htm Description of the illustration wrkshp_view_table.gif

This illustration shows the Table Finder report. Additional information about this illustration can be found in the surrounding text.

PKq20PK.A%OEBPS/img_text/wrkshp_find_tables.htmA Description of the illustration wrkshp_find_tables.gif

This illustration shows the Find Tables icon. The Find Tables icon resembles a flashlight. Additional information about this illustration can be found in the surrounding text.

PKFAPK.AOEBPS/img_text/o_brws_hide.htmi Description of the illustration o_brws_hide.gif

This illustration shows the Hide Object control. If the Object Selection pane appears, selecting this control hides it. Similarly, if the Object Selection pane is hidden, selecting this control causes the pane to reappear.

PK*¼niPK.AOEBPS/img_text/o_brws.htm Description of the illustration o_brws.gif

This illustration shows Object Browser. A list of objects, called the Object Selection pane, appears on the left side of the page. To select an object type, make a selection from the Object list at the top of the page. For example, to view tables, select Tables. Additional information about this illustration can be found in the surrounding text.

PK PK.A#OEBPS/img_text/qry_bldr_results.htm% Description of the illustration qry_bldr_results.gif

This illustration shows a the Results view of an executed query. Additional information about this illustration can be found in the surrounding text.

PK2<ה*%PK.AOEBPS/img_text/o_brws_srch.htm2 Description of the illustration o_brws_srch.gif

This illustration shows the search field in Object Browser. To search for a specific object, enter keywords in the search field. A list of objects displays beneath it.

PK-72PK.AOEBPS/img_text/script_home.htmJ Description of the illustration script_home.gif

This illustration shows the SQL Scripts page. In the default view, Icons, each script displays as an icon. Additional information about this illustration can be found in the surrounding text.

PK_%OJPK.AOEBPS/img_text/qry_bldr.htm  Description of the illustration qry_bldr.gif

This illustration shows the Query Builder home page. Additional information about this page can be found in the surrounding text.

PK+U PK.A OEBPS/img_text/qry_bldr_save.htm9 Description of the illustration qry_bldr_save.gif

This illustration shows a saved query. Saved SQL queries display in the Saved SQL view. Additional information about this illustration can be found in the surrounding text.

PK"Aw>9PK.A OEBPS/img_text/script_import.htmq Description of the illustration script_import.gif

This illustration shows the Scripts Import pane. It prompts for the name and path of the file containing the scripts you want to import.

Additional information about this illustration can be found in the surrounding text.

PKZuvqPK.A OEBPS/img_text/script_export.htmc Description of the illustration script_export.gif

This illustration shows the Scripts to Export pane. It lists the scripts you have selected to included in an export file. Controls for the page are located at the top of the page.

Additional information about this illustration can be found in the surrounding text.

PK%PK.A%OEBPS/img_text/qry_bldr_menu_apex.htmF Description of the illustration qry_bldr_menu_apex.gif

This illustration shows the drop down menu for Query Builder. This menu functions as a shortcut to the Query Builder. You can use drop down menus as an alternative navigation path.

PKW KFPK.AOEBPS/img_text/script_tasks.htm  Description of the illustration script_tasks.gif

This illustration shows the Tasks list on the SQL Scripts page. Additional information about this illustration can be found in the surrounding text.

PKN% PK.A OEBPS/img_text/proc_savedsql.htmh Description of the illustration proc_savedsql.gif

This illustration shows the Saved SQL pane. It lists the SQL commands saved in the current workspace. User controls appear at the top. Additional information about this illustration can be found in the surrounding text.

PKOhmhPK.AOEBPS/img_text/script_pane.htmt Description of the illustration script_pane.gif

This illustration shows the Scripts pane. It lists the scripts available to be included in an export file. Controls for the page are located at the top of the page.

Additional information about this illustration can be found in the surrounding text.

PKmPK.A(OEBPS/img_text/script_manage_results.htm6 Description of the illustration script_manage_results.gif

This illustration shows the Manage Script Results page. Each script displays as a line in a report. Each line includes a check box to enable the selection of scripts for deletion, who last ran the script and when, the time taken to run and current status of the run, in this case Complete, the number of statements in the script, the result size in bytes, and a linked view icon to enable you to view this result. You can change this view by making a selection from the View list.

To search for a script result, enter a script name or partial name in the Find field, select the user from the User list, and click Go. You control how many rows display by making a selection from the Display list.

Additional information about this illustration can be found in the surrounding text.

PKxPK.AOEBPS/img_text/qry_bldr_add.htmz Description of the illustration qry_bldr_add.gif

This illustration show an object added to the Design pane. Note that a graphical representation of the datatype displays to the right of the column name. Additional information about this illustration can be found in the surrounding text.

PK"QzPK.AOEBPS/img_text/proc_results.htmb Description of the illustration proc_results.gif

This illustration shows the Results pane. It shows the HTML formatted output. A CSV Export link appear at the bottom of the pane. Additional information about this illustration can be found in the surrounding text.

PKgbPK.AOEBPS/img_text/sql_com_top.htm Description of the illustration sql_com_top.gif

This illustration shows the top of SQL Commands home page. Additional information about this illustration can be found in the surrounding text.

PKh;IPK.AOEBPS/img_text/view_icon.htm0 Description of the illustration view_icon.gif

This illustration shows the View icon. The View icon resembles a magnifying glass. Additional information about this illustration can be found in the surrounding text.

PKnFJ50PK.A"OEBPS/img_text/qry_bldr_search.htmL Description of the illustration qry_bldr_search.gif

This illustration shows the search field and Hide Table or Views control on the Query Builder home page. Additional information about this illustration can be found in the surrounding text.

PKәOQLPK.A&OEBPS/img_text/qry_bldr_remove_ico.htmk Description of the illustration qry_bldr_remove_ico.gif

This illustration shows the controls at the top of an object. To remove an object, select the Remove icon in the upper right corner. To temporarily hide the columns within an object, click the Show/Hide Columns icon.

PKhbpkPK.A OEBPS/img_text/qry_bldr_join.htmR Description of the illustration qry_bldr_join.gif

This illustration shows two columns joined in Query Builder. When joined, a green line connects the two columns. Additional information about this illustration can be found in the surrounding text.

PKiWRPK.A!OEBPS/img_text/script_results.htm Description of the illustration script_results.gif

This illustration shows the Results page. It shows the title and status of the script that was executed. It then displays the controls for the page. Then it lists the SQL statement that was executed, and the HTML formatted results. Finally, details about the script are given. These include who ran the script, the schema in which the script was run, when the script was run and how long it took, the number of statements processed, how many statements were successful, and finally how many statements processed had errors.

Additional information about this illustration can be found in the surrounding text.

PK}PK.AOEBPS/img_text/explaintab.htm Description of the illustration explaintab.gif

This illustration shows the Explain Plan pane. Select this pane to view the explain plan the Oracle Optimizer uses to run your SQL command.

PK?PK.AOEBPS/sql_utl.htm Using Oracle Application Express Utilities

4 Using Oracle Application Express Utilities

This section describes how to use Oracle Application Express utilities to load and unload data from an Oracle database, generate DDL, view object reports, and restore dropped database objects.

This section contains the following topics:

About Importing, Exporting, Loading, and Unloading Data

You have several options when copying data between Oracle databases or between an Oracle database and external files. Data copying is accomplished by exporting and importing data, and by unloading and loading data. The following table defines these terms.

TermDefinition
ExportingCopying database data to external files for import into another Oracle database only. The files are in a proprietary binary format.
ImportingCopying data into the database from external files that were created by exporting from another Oracle database.
UnloadingCopying database data to external text files for consumption by another Oracle database or another application (such as a spreadsheet application). The text files are in an industry-standard format such as tab-delimited or comma-delimited (CSV).
LoadingCopying data into the database from external text files that are in either a standard delimited format or in any of the formats that are supported by the Oracle SQL*Loader utility.

You can export data from any Oracle Database edition (Express Edition, Standard Edition, and Enterprise Edition) into any other edition.

This section contains the following topics:

Choosing the Right Import/Export/Load/Unload Option

The Oracle Database and Oracle Application Express provide several powerful options for importing, exporting, loading, and unloading data. Table 4-1 provides a summary of these options.

Table 4-1 Summary of Oracle Application Express Import/Export Options

Feature or UtilityDescription

Data Load/Unload wizards in Oracle Application Express

  • Easy to use graphical interface

  • Loads/unloads from and to external text files (delimited fields) or XML files

  • Loads/unloads tables only, one table at a time

  • Access only to schema of logged-in user

  • No data filtering

SQL*Loader utility

  • Command-line interface, invoked with sqlldr command

  • Bulk-loads data into the database from external files

  • Supports numerous input formats, including delimited, fixed record, variable record, and stream

  • Loads multiple tables simultaneously

  • Powerful data filtering capabilities

Data Pump Export and Data Pump Import utilities

  • Command-line interface, invoked with expdp and impdp commands

  • Exports and imports from one Oracle database to another (proprietary binary format)

  • Imports/exports all schema object types

  • Imports/exports entire database, entire schema, multiple schemas, multiple tablespaces, or multiple tables

  • Powerful data filtering capabilities

  • High speed

Export and Import utilities

  • Command-line interface, invoked with exp and imp commands

  • Exports and imports from one Oracle database to another (proprietary binary format)

  • Supports XMLType data

  • Does not support the FLOAT and DOUBLE data types

  • Capabilities similar to Data Pump; Data Pump is preferred


Table 4-2 provides several load, unload, import, and export scenarios and suggests the appropriate option to use for each.

Table 4-2 Import/Export Scenarios and Recommended Options

Import/Export ScenarioRecommended Option

You have fewer than 10 tables to load, the data is in spreadsheets or tab- or comma-delimited text files, and there are no complex data types (such as objects or multivalued fields).

Data Load/Unload wizards in Oracle Application Express

You have to load data that is not delimited. The records are fixed length, and field definitions depend on column positions.

SQL*Loader

You have tab-delimited text data to load, and there are more than 10 tables.

SQL*Loader

You have text data to load, and you want to load only records that meet certain selection criteria (for example, only records for employees in department number 3001).

SQL*Loader

You want to import or export an entire schema from or to another Oracle database. There is no XMLType data in any of the data.

Data Pump Export and Data Pump Import

You want to import or export data from or to another Oracle database. The data contains XMLType data and contains no FLOAT or DOUBLE data types.

Import (imp) and Export (exp)



See Also:

Oracle Database Utilities for more information on Data Pump, the Import and Export utilities, and SQL*Loader

Loading and Unloading Data from the Database

The Data Load/Unload wizards in Oracle Application Express enable you to easily load and unload delimited text data to and from the database. The step-by-step wizards have the following features:

  • You can load or unload XML files or delimited-field text files (such as comma-delimited (.csv) or tab-delimited files).

  • You can load by copying and pasting from a spreadsheet.

  • You can omit (skip) columns when loading or unloading.

  • You can load into an existing table or create a new table from the loaded data.

  • When loading into a new table, the primary key can be taken from the data or generated from a new or existing Oracle sequence.

  • When loading into a new table, column names can be taken from the loaded data.

  • Each time that you load from a file, file details are saved in a Text Data Load Repository. You can access these files from within the repository at any time.

Limitations include the following:

  • The wizards load and unload table data only. They do not load or unload other kinds of schema objects.

  • You can load and unload to and from your own schema only. This is also true for users with administrator privileges.

  • You can load or unload only a single table at a time.

  • There are no data type limitations for unloading to text or XML files, or for loading from XML files. However, when loading from spreadsheets (through copy and paste) or from text files, only the following data types are supported: NUMBER, DATE, VARCHAR2, CLOB, BINARY_FLOAT, and BINARY_DOUBLE.

Supported unload formats include:

  • Text such as comma-delimited or tab-delimited data

  • XML documents

This section contains the following topics:

Accessing the Data Load/Unload Page

To access the Data Load/Unload page:

  1. On the Workspace home page, click the Utilities icon.

  2. Click Data Load/Unload.

    The Data Load/Unload page appears.

  3. Click the appropriate icon to load data, unload data, or view the repository.

Loading Data

You can load data into the Oracle Application Express database in the following ways:

  • Copy and paste data from a spreadsheet.

  • Upload a spreadsheet file in a delimited format (such as comma-delimited (.csv) or tab-delimited).

  • Upload a text file containing comma-delimited or tab-delimited data.

Topics in this section include:

Loading a Text File

You can copy and paste tab-delimited data directly into the Load Data Wizard.

To load a text file:

  1. On the Workspace home page, click the Utilities icon.

  2. Click Data Load/Unload.

  3. Click Load.

  4. Click Load Text Data.

    The Load Data Wizard appears.

  5. Under Load To, select either Existing table or New table.

  6. Under Load From, select either Upload file or Copy and paste.

  7. Follow the on-screen instructions.

Loading Spreadsheet Data

You can load spreadsheet data by either copying and pasting text, or by loading a file.

To load spreadsheet data:

  1. On the Workspace home page, click the Utilities icon.

  2. Click Data Load/Unload.

  3. Click Load.

  4. Click Load Spreadsheet Data.

    The Load Data Wizard appears.

  5. Under Load To, select either Existing table or New table.

  6. Under Load From, select either Upload file or Copy and paste.

  7. Follow the on-screen instructions.

Loading an XML Document

Oracle Application Express supports XML documents in Oracle's canonical XML format.

In Oracle's canonical XML format, each element represents a column value, each element is named after the column, all elements that are part of the same row are children of a <ROW> element, and all <ROW> elements are children of a <ROWSET> element.

To load an XML document:

  1. On the Workspace home page, click the Utilities icon.

  2. Click Data Load/Unload.

  3. Click Load.

  4. Click Load XML Data.

    The Load XML Data Wizard appears.

  5. Follow the on-screen instructions.

Unloading Data

You can use the Unload page to export the contents of a table to a text file or XML document.

Topics in this section include:

Unloading a Text File

Use the Unload to Text Wizard to export the contents of a table to a text file. For example, you could export an entire table to a comma-delimited file (.csv).

To unload a table to a text file:

  1. On the Workspace home page, click the Utilities icon.

  2. Click Data Load/Unload.

  3. Click Unload.

  4. Click Unload To Text.

    The Unload to Text Wizard appears.

  5. Follow the on-screen instructions.

You select the schema and choose the table and columns to be exported. Additionally, you can specify the type of separator to be used to separate column values and also whether column text strings are identified using single or double quotation marks.

Unloading to an XML Document

Use the Unload to XML Wizard to export the contents of a table to an XML document adhering to the Canonical XML specification.

To unload a table to an XML document:

  1. On the Workspace home page, click the Utilities icon.

  2. Click Data Load/Unload.

  3. Click Unload.

  4. Click Unload to XML.

    The Unload to XML Wizard appears.

  5. Follow the on-screen instructions.

You select the schema and choose the table and columns to be exported.

Using Text Data Load Repository

Loaded text data files are stored in the Text Data Load Repository.

To access the Text Data Load Repository:

  1. On the Workspace home page, click the Utilities icon.

  2. Click Data Load/Unload.

  3. Click Repository.

  4. To filter the display, make a selection from the Show list and click Go.

  5. To view information about a specific file, click the View icon.

  6. To delete an imported file, select it and click Delete Checked.

Generating DDL

With Oracle Application Express, you can generate data definition language statements from the Oracle data dictionary. These scripts can be used to create or re-create database schema objects. The scripts can be generated to display inline or saved as a script file. You can generate the create scripts for all objects for a specific schema, specific object types, or specific objects.

If you run Oracle Application Express with Oracle Database 10g release 1 (10.1) or later, you can generate data definition language statements from the Oracle data dictionary. These scripts can be used to create or re-create database schema objects. The scripts can be generated to the screen, or they can be saved as a SQL Script. You can generate the create scripts for all objects for a specific schema, specific object types, or specific objects.

To generate a DDL statement:

  1. On the Workspace home page, click the Utilities icon.

  2. Click Generate DDL.

    The Generate DDL page appears.

  3. Click Create Script.

    The Generate DDL Wizard appears.

  4. Select a database schema and click Next.

  5. Define the object type:

    1. Output - Specify an output format. Select either Display Inline or Save As Script File.

    2. Check All - Select this option to include all object types for which to generate DDL.

    3. Object Type - Select the object types for which to generate DDL.

    4. To select object names for the selected object types, click Next and follow the on-screen instructions.

  6. Click Generate DDL.


See Also:


Viewing Object Reports

Utilities includes a variety of object reports to help you better manage the objects in your database.

Topics in this section include:

Table Reports

Use the Table reports to view specific details about the tables within your database.

To view the Table reports:

  1. On the Workspace home page, click the Utilities icon.

  2. Click Object Reports.

    The Object Reports page appears.

  3. In the Table Reports section, select the report you want to view:

    • Table Columns

    • Table Comments

    • Table Constraints

    • Table Statistics

    • Table Storage Sizes

  4. To filter a report, enter search criteria in the fields provided or make selections from the lists, and click Go.

  5. To view reports for a different schema, select the schema from the Schema list on the upper right side of the page.

Security Reports

Use the Security reports to view object or column privileges granted on database objects owned by other schemas. You can also use these reports to view database role and system privileges.

To view the Security reports:

  1. On the Workspace home page, click the Utilities icon.

  2. Click Object Reports.

    The Object Reports page appears.

  3. In the Security Reports section, click the report you want to view:

    • Object Grants - View the privileges for an existing schema and also understand what privileges have been granted from the selected schema to other schemas.

    • Column Privileges - View the privileges for an existing schema and also understand what privileges have been granted from the selected schema to other schemas.

    • Role Privileges - View the database roles that have been granted to a selected schema. Roles are collections of various privileges.

    • System Privileges - View the database privileges that have been granted to a selected schema.

  4. If available, you can filter the report by making a selection from the Show list and clicking Go.

  5. To view reports for a different schema, select the schema from the Schema list on the upper right side of the page.

PL/SQL Reports

Use the PL/SQL reports to view program unit arguments or unit line counts and also to search PL/SQL source code.

Topics in this section include:

Program Unit Arguments

Use the Program Unit Arguments report to view package input and output parameters.

To view the PL/SQL Unit Arguments report:

  1. On the Workspace home page, click the Utilities icon.

  2. Click Object Reports.

    The Object Reports page appears.

  3. In the PL/SQL Reports section, click Program Unit Arguments.

  4. To filter the report, enter a query in PL/SQL Package or Program Unit and click Go.

  5. To view reports for a different schema, select the schema from the Schema list on the upper right side of the page.

Unit Line Counts

Use the Unit Line Counts report to view the number of lines of code for each object. Use this report to identify larger PL/SQL program units.

To view the Unit Line Counts report:

  1. On the Workspace home page, click the Utilities icon.

  2. Click Object Reports.

    The Object Reports page appears.

  3. In the PL/SQL Reports section, click Unit Line Counts.

  4. To filter the report, enter an object name and click Go.

Search PL/SQL Source Code

Use the Search PL/SQL Source code page to search the text within your PL/SQL code. Use this report to find references to tables or functions you might be thinking of deleting. You can also use this page to locate code when you can only recall a code snippet.

To search for PL/SQL source code:

  1. On the Workspace home page, click the Utilities icon.

  2. Click Object Reports.

    The Object Reports page appears.

  3. In the PL/SQL Reports section, click Search PL/SQL Source Code.

  4. To filter the report:

    1. In Object Name, enter a query.

    2. In Text, enter the PL/SQL code you want to search for.

    3. In From/To Line, enter the range of lines you want to search.

    4. Click Go.

  5. To view reports for a different schema, select the schema from the Schema list on the upper right side of the page.

Exception Reports

Use the Exception Reports to view unindexed foreign keys and tables without primary keys, indexes, or triggers.

To view Exception reports:

  1. On the Workspace home page, click the Utilities icon.

  2. Click Object Reports.

    The Object Reports page appears.

  3. In the Exception Reports section, click the report you want to view.

    • Tables without Primary Keys

    • Tables without Indexes

    • Unindexed Foreign Keys

    • Tables without Triggers

  4. To filter the report, enter a table name and click Go.

All Object Reports

Use the All Object reports to view objects for the selected schema.

To view the All Object reports:

  1. On the Workspace home page, click the Utilities icon.

  2. Click Object Reports.

    The Object Reports page appears.

  3. In the All Object Reports section, select the report you want to view:

    • All Objects - Sort objects by creation date and also last DDL (data definition language).

    • Invalid Objects - View all invalid objects in the database by object type.

    • Object Creation Calendar - View all objects in a calendar format based on the date each database object was created.

    • Object Counts by Type - View the number of database objects by type for the selected schema.

    • Data Dictionary - View the data dictionary for this database.

      An Oracle data dictionary is a set of tables and views used as a read-only reference about the database. For example, a data dictionary stores information about both the logical and physical structure of the database.

      A data dictionary also stores information about valid Oracle database users, integrity constraints for tables in the database, and the amount of space allocated for a schema object and the amount being used.

  4. For All Objects and Invalid Objects reports, you can filter the report:

    1. Select an object type.

    2. Enter an object name.

    3. Click Go.

  5. For the Data Dictionary report, you can query for details about database objects:

    1. Click the Data Dictionary View Name.

      The Data Dictionary Browser appears. Use this page to query the Oracle Data Dictionary for details about database objects.

    2. On the Data Dictionary Browser page, select the specific columns you want to see data for or Check All.

    3. Click Query.

      A report appears.

    4. To begin a new query on the same data dictionary view, click New Query.

    5. To browse another data dictionary view, click Browse Another View.


See Also:

Oracle Database Concepts for information about the data dictionary

Using the Recycle Bin to View and Restore Dropped Objects

You can use the Recycle Bin to view and restore dropped database objects. When you drop a table, the space associated with the table is not immediately removed. The Oracle database renames the table and places it and any associated objects in the Recycle Bin. You can recover objects in the Recycle Bin at a later time.

This section contains the following topics:


Note:

The Recycle Bin feature is only available if you run with an Oracle 10g or later database.


See Also:

"Backing Up and Recovering the Database" in Oracle Database Express Edition 2 Day DBA

Managing Objects in the Recycle Bin

You can view objects in the Recycle Bin on the Dropped Objects page. Once you select an object and view the Object Details page, you can choose to purge the object or restore the object by clicking the appropriate button.

To view objects in the Recycle Bin:

  1. On the Workspace home page, click the Utilities icon.

  2. Click Recycle Bin and then Dropped Objects.

    The Dropped Objects page appears.

  3. To filter the report, select an object type, enter the object name in the Original Name field, and click Go.

  4. To view object details, click the object name.

    The Object Details page appears.

  5. To restore the current object, click Restore Object.

  6. To permanently delete the current object, click Purge Object.

Emptying the Recycle Bin Without Viewing the Objects

To empty the Recycle Bin without viewing the objects:

  1. On the Workspace home page, click the Utilities icon.

  2. Click Recycle Bin.

  3. Click Purge Recycle Bin.

    The Purge Recycle Bin page appears.

  4. Confirm your request by clicking Purge Recycle Bin again.

Reviewing Application Express Views

You can review Application Express views and also run queries within a view to find specific information.

To review Application Express views:

  1. On the Workspace home page, click the Utilities icon.

  2. Click APEX Views.

    The Application Express Views page appears.

  3. To change the appearance of the page, make a selection from the View list and click Go:

    • Icons (the default) displays each Application Express view as a large icon.

    • Tree displays each Application Express view in a hierarchy.

    • Report displays each view as a line in a report.

  4. Click the view you want to review or query.

    The Application Express View Details page appears.

  5. To run a query:

    1. Under Query Columns, select the columns to query.

      For a description of each column, read the information in the Description section on this page.

    2. (Optional) Under Query Conditions, specify the column, condition, and value for the query.

    3. Scroll to the top and click Go.

    4. Scroll down to the Data section to view the results of the query. Note that the SQL Query section shows the SQL query resulting from your selections.

Comparing Schemas

You can run a report that compares database objects in two schemas, displaying differences between them. You can compare all objects in the schemas or limit your report to specific objects. To compare two schemas, both must be available to your workspace.

Examples:

  • Compare DEMO_ objects by searching for that naming convention. The report indicates if the object exists in each of the two schemas.

  • Analyze the object details in the two schemas to determine why one implementation is different. For example, the report might show that an index in one schema has an additional column or a column with a different data type.

To compare schemas:

  1. On the Workspace home page, click the Utilities icon.

  2. Click Schema Comparison.

  3. On the Schema Comparison page, make the appropriate selections to run the comparison:

    • Schema 1 and Schema 2 - Select the schemas to compare.

    • Compare - Restrict the report to show one object type or select All to show all database objects.

    • Search - Enter a case insensitive query for the object name.

    • Display - To change the number of rows that appear in the report, make a selection from the Display list.

    • Go - Click Go to find the results matching your selections.

    • Show Differences Only or Show Details - Select the type of information you want to review.

Monitoring the Database

The reports available on the Database Monitor page provide a database-wide view of the database sessions, system statistics, SQL statements, and longer operations. You can use these reports to identify poorly preforming SQL and to better understand the workload of the database.

To access any of the icons on the Database Monitor page, you must have an account that has been granted an administrator role.

This section contains the following topics:

Sessions

A session is the connection of a user to an Oracle database instance. A session lasts from the time the user connects until the time the user disconnects or exits the database application.

You must have database administrator privileges to access the Sessions page.

To access reports on the Sessions page:

  1. On the Workspace home page, click the Utilities icon and then Database Monitor.

  2. Click Sessions.

  3. If prompted, enter the appropriate administrator user name and password and click Login.

    The Sessions page appears.

  4. To view a report, select one of the following tabs at the top of the page:

    • Sessions

    • Locks

    • Waits

    • I/O

    • SQL

    • Open Cursors

    The sections that follow describe each report.

Sessions Report

The Sessions Report displays information about the current sessions in the database. Use the controls at the top of page to narrow the view:

  • Search. Enter search criteria and click Go. For search details, click the Search label.

  • Status. Select a status and click Go.

  • Show. Select how many columns to display and click Go.

  • Display. Select the number of rows to appear in the report and click Go.

To view session details, click the Session ID (SID). The Session Details page appears. To remove the current session, navigate to the Session Details page and click Kill Session.

Locks Report

The Locks report displays a report of sessions which have locks that are blocking other session(s). To control the number of rows that appear, make a selection from the Display list and click Go.

Waits Report

The Waits report displays the wait events for each session. Use the controls at the top of page to narrow the view:

  • Search. Enter search criteria and click Go. For search details, click the Search label.

  • Status. Select a status and click Go.

  • Show. Select how many columns to display and click Go.

  • Display. Select the number of rows to appear in the report and click Go.

To view session details, click the Session ID (SID). The Session Details page appears. To remove the current session, click Kill Session.

I/O Report

The I/0 report displays details about the I/O for each session. Use the controls at the top of page to narrow the view:

  • Search. Enter search criteria and click Go. For search details, click the Search label.

  • Display. Select the number of rows to appear in the report and click Go.

To view session details, click the Session ID (SID). The Session Details page appears. To remove the current session, click Kill Session.

SQL Report

The SQL report displays details about the current or last SQL statement executed for each session. Use the controls at the top of page to narrow the view:

  • Search. Enter search criteria and click Go. For search details, click the Search label.

  • Status. Select a status and click Go.

  • Show. Select how many columns to display and click Go.

  • Display. Select the number of rows to appear in the report and click Go.

To view session details, click the Session ID (SID). The Session Details page appears. To remove the current session, click Kill Session.

Open Cursors

The Open Cursors report displays details about the number of open cursors for each session. Use the controls at the top of page to narrow the view:

  • Search. Enter search criteria and click Go. For search details, click the Search label.

  • Status. Select a status and click Go.

  • Display. Select the number of rows to appear in the report and click Go.

To view details about a specific open cursor count, click the numeric link under the Open Cursor Count column.

To view session details, click the Session ID (SID). The Session Details page appears. To remove the current session, click Kill Session.

About System Statistics

The System Statistics page displays statistics for:

  • Physical I/O. A physical I/O is an I/O that requires disk access. This report displays disk access statistics for physical reads and writes.

  • Logical I/O. An logical I/O is an I/O that is satisfied in memory or disk. Displays the sum of buffer reads which might be consistent gets or current mode gets. Redo is the buffer in the SGA that contains information about changes.

  • Memory Statistics. Displays memory consumption of the database.

  • Time Statistics. Shows various times consumed by the database.

  • SQL Cursor Statistics. Displays statistics about the cursors in the Oracle database.

  • Transaction Statistics. Shows the number of transactions performed.

To view the System Statistics page:

  1. On the Workspace home page, click the Utilities icon and then Database Monitor.

  2. Click System Statistics.

  3. If prompted, enter the appropriate administrator user name and password and click Login.

    The System Statistics page appears.

Additional controls on the System Statistics page include:

  • Refresh Report - Refresh the System Statistics report.

  • Save Statistics - Save the current report.

  • Show delta between current and saved values - Click this check box to display actual statistic values, or display deltas between an saved value and the current value.


    See Also:

    "Memory Configuration and Use" in Oracle Database Performance Tuning Guide

About Top SQL

The "top" SQL statements represent the SQL statements that are executed most often, that use more system resources than other SQL statements, or that use system resources more frequently than other SQL statements.

Use the Top SQL page to identify poorly performing SQL.

To view the Top SQL page:

  1. On the Workspace home page, click the Utilities icon and then Database Monitor.

  2. Click Top SQL.

  3. If prompted, enter the appropriate administrator user name and password and click Login.

    The Top SQL page appears. Use the search fields and lists and the top of the page and click Go to narrow the display. For details on each field or list, click the Search label.

  4. To access the SQL Plan page, click the View icon.

    Description of view_icon.gif follows
    Description of the illustration view_icon.gif

    The SQL Plan page appears, containing the following sections:

    • Query Plan - Contains a color coded explain plan. Note that unindexed columns display in red.

    • SQL Text - Displays the full text of the SQL statement.

    • Indexes - Displays all indexes on the table in the query. There is a checkmark when that index is used in the query.

    • Table Columns - Shows all columns on all tables or views in the query.

About Long Operations

The Long Operations page displays the status of various operations that run for longer than 6 seconds (in absolute time). These operations currently include many backup and recovery functions, statistics gathering, and query execution, and more operations are added for every Oracle release.

To view the Long Operations page:

  1. On the Workspace home page, click the Utilities icon and then Database Monitor.

  2. Click Long Operations.

  3. If prompted, enter the appropriate administrator user name and password and click Login.


  4. See Also:

    "V$SESSION_LONGOPS" in Oracle Database Reference

Viewing Database Details

You can view details about your database on the About Database page.

To access details about your database:

  1. On the Workspace home page, click the Utilities icon and then Database Monitor.

  2. Click About Database.

  3. If prompted, enter the appropriate administrator user name and password and click Login.

    The About Database page appears. The About Database page is divided into two sections: Database and Version.

  4. To view additional information about installed options, currently used features, or National Language Support, select one of the following check boxes and click Go:

    • Version

    • Settings

    • Options

    • National Language Support

    • CGI Environment

    • Parameters

PK05PK.AOEBPS/qry_bldr.htm Building Queries with Query Builder

5 Building Queries with Query Builder

Query Builder's graphical user interface enables database developers to build SQL queries without the need for manual SQL coding. Using Query Builder, you can search and filter database objects, select objects and columns, create relationships between objects, view formatted query results, and save queries with little or no SQL knowledge.

This section contains the following topics:

About Query Builder

The Query Builder page is divided into three sections:

  • Object Selection pane displays on the left side of the page and contains a list objects from which you can build queries. Only objects in the current schema display.

  • Design pane displays to the right of the Object Selection pane and above the Conditions, SQL, Results, and Saved SQL tabs. When you select an object from the Object Selection pane, it appears in the Design pane.

  • Output pane displays below the Design pane. Once you select objects and columns, you can create conditions, view the generated SQL, or view query results.

Description of qry_bldr.gif follows
Description of the illustration qry_bldr.gif

Selecting a Schema

A schema is a logical container for database objects. To access objects in another schema, make a selection from the Schema list in the upper right side of the page.

Switching to Another SQL Workshop Component

You can navigate to another SQL Workshop component by selecting a component from the Component list located on the upper right side of the page:

Topics in this section include:

Accessing Query Builder

To access Query Builder:

  1. Log in to the Workspace home page.

  2. Click SQL Workshop.

  3. To view Query Builder you can either:

    • Click SQL Workshop and then Query Builder.

    • Click the down arrow on the right side of the SQL Workshop icon to view a drop down menu. Then select the Query Builder menu option.

Description of qry_bldr_menu_apex.gif follows
Description of the illustration qry_bldr_menu_apex.gif


Note:

For the purposes of consistency, this document uses the primary navigation path (or drill-down approach) when explaining navigation.

Understanding the Query Building Process

To build a a query in Query Builder, you perform the following steps:

  1. Select objects from the Object Selection pane. See "Using the Object Selection Pane" .

  2. Add objects to the Design pane and select columns. See "Selecting Objects".

  3. Optional: Establish relationships between objects. See "Creating Relationships Between Objects".

  4. Optional: Create query conditions. See "Specifying Query Conditions".

  5. Execute the query and view results. See "Viewing Query Results".

Using the Object Selection Pane

The Object Selection pane displays on the left side of the Query Builder page and lists tables, views, and materialized views within the current schema.

Topics in this section include:

Searching and Filtering Objects

Use the Object Selection pane to search for and view tables, views, and materialized views within the current schema.

To search or filter objects:

  1. On the Workspace home page, click SQL Workshop and then Query Builder.

    Query Builder appears.

  2. In the search field at the top of the pane, enter a case insensitive query.

  3. To view all tables or views within the currently selected schema, leave the search field blank.

Description of qry_bldr_search.gif follows
Description of the illustration qry_bldr_search.gif

Hiding the Object Selection Pane

You can hide the Object Selection pane by selecting the Hide Table or Views control. By hiding the Object Selection pane, you can increase the size of the Design and Result panes.

The Hide Table or Views control displays on the right side of the Object Selection pane. If the Object list appears, selecting this control hides it. Similarly, if the Object list is hidden, selecting this control causes the pane to reappear.

Selecting Objects

The Design pane displays to the right of the Object Selection pane. When you select an object from the Object Selection pane, it appears in the Design pane. You use the Object Selection pane to select objects (that is, tables, views, and materialized views) and the Design pane to identify how those selected objects are used in a query.

Topics in this section include:

About Supported Column Types

Columns of all types available in Oracle Database 10g Release (10.2) display as objects in the Design pane. Note the following column restrictions:

  • You may only select a maximum of 60 columns for each query.

  • The following column types are not selectable and cannot be included in a generated query:

    • BLOB

    • NCLOB

    • RAW

    • LONG

    • LONG RAW

    • XMLType

    • Any other nonscalar column types

Adding an Object to the Design Pane

You add an object to the Design pane by selecting it from the Object Selection pane.

To add an object to the Design pane:

  1. On the Workspace home page, click SQL Workshop and then Query Builder.

    Query Builder appears.

  2. Select an object from the Object Selection pane.

    The selected object appears in the Design Pane. Note that a graphical representation of the datatype displays to the right of the column name.

    Description of qry_bldr_add.gif follows
    Description of the illustration qry_bldr_add.gif

  3. Select the columns to be included in your query by clicking the check box to the left of the column name.

    When you select a column you are indicating it is included in the query. As you select a column, it appears on the Conditions tab. Note that the Show check box on the Conditions tab controls whether a column is included in query results. Be default, this check box is selected.

    To select the first twenty columns, click the Table Actions icon in the upper left corner of the object. The Actions window appears. Select Check All.

  4. To execute the query and view results, click Run.


    Tip:

    You can also execute a query by pressing CTRL + ENTER.

    The Results pane displays the query results.

Resizing the Design and Results Panes

As you select objects, you can resize Design and Results panes by selecting the gray horizontal rule in the center of the page. Moving the rule up, shrinks the Design pane. Moving the rule down expands the Design pane.

Removing or Hiding Objects in the Design Pane

You remove or hide objects in the Design pane by selecting controls at the top of the object. To remove an object, select the Remove icon in the upper right corner. To temporarily hide the columns within an object, click the Show/Hide Columns icon.

Description of qry_bldr_remove_ico.gif follows
Description of the illustration qry_bldr_remove_ico.gif

Specifying Query Conditions

Conditions enable you to filter and identify the data you want to work with. As you select columns within an object, you can specify conditions on the Conditions tab. You can use these attributes to modify the column alias, apply column conditions, sort columns, or apply functions.

To specify query conditions:

  1. On the Workspace home page, click SQL Workshop and then Query Builder.

    Query Builder appears.

  2. Select an object from the Object Selection pane.

    The selected object appears in the Design Pane.

  3. Select the columns to be included in your query by clicking the box to the left of the column name.

    When you select a column, you are indicating you want to include it in your query. As you select each column, it appears as a separate row in the Conditions view. Table 5-1 describes the attributes available on the Conditions tab.

    Table 5-1 Conditions Tab

    Condition AttributeDescription

    Up and Down Arrows

    Controls the order that the columns to be displayed in the resulting query. Click the arrow buttons to move columns up and down.

    See Also: "Viewing Query Results"

    Column

    Displays the column name.

    Alias

    Specify an optional column alias. An alias is an alternative column name. Aliases are used to make a column name more descriptive, to shorten the column name, or prevent possible ambiguous references.

    Condition

    Specify a condition for the column.

    The condition you enter modifies the query's WHERE clause. When specifying a column condition, you must include the appropriate operator and operand. Consider the following examples:

    >=10
    ='VA'
    IN (SELECT dept_no FROM dept)
    BETWEEN SYSDATE AND SYSDATE + 15
     
    

    Sort Type

    Select a sort type. Options include:

    • Ascending (Asc)

    • Descending (Desc)

    Sort Order

    Enter a number (1, 2, 3, and so on) to specify the order in which selected columns should display.

    Show

    Select this check box to include the column in your query results. It is not necessary to select Show to add a column to the query for filtering only.

    For example, suppose you want to create following query:

    SELECT ename FROM emp WHERE deptno = 10

    To create this query in Query Builder:

    1. From the Object list, select EMP.

    2. In the Design Pane, select ename and deptno.

    3. For the deptno column, in Condition enter =10 and uncheck the Show check box.

    Function

    Select an argument function. Available functions include:

    • NUMBER columns - COUNT, COUNT DISTINCT, AVG, MAXIMUM,. MINIMUM, SUM

    • VARCHAR2, CHAR columns - COUNT, COUNT DISTINCT, INITCAP, LENGTH, LOWER, LTRIM, RTRIM, TRIM, UPPER

    • DATE, TIMESTAMP columns - COUNT, COUNT DISTINCT

    Group By

    Specify columns to be used for grouping when an aggregate function is used. Only applicable for columns included in output.

    Delete

    Deselect the column, excluding it from the query.


    As you select columns and define conditions, Query Builder writes the SQL for you.

  4. To view the underlying SQL, click the SQL tab.

Creating Relationships Between Objects

You can create relationships between objects by creating a join. A join identifies a relationship between two or more tables, views, or materialized views.

Topics in this section include:

About Join Conditions

When you write a join query, you specify a condition that conveys a relationship between two objects. This condition is called a join condition. A join condition determines how the rows from one object combine with the rows from another object.

Query Builder supports inner, outer, left, and right joins. An inner join (also called a simple join) returns the rows that satisfy the join condition. An outer join extends the result of a simple join. An outer join returns all rows that satisfy the join condition and returns some or all of those rows from one table for which no rows from the other satisfy the join condition.


See Also:

Oracle Database SQL Language Reference for information about join conditions

Joining Objects Manually

You can create a join manually by selecting the Join column in the Design pane.

To join two objects manually:

  1. On the Workspace home page, click SQL Workshop and then Query Builder.

    Query Builder appears.

  2. From the Object Selection pane, select the objects you want to join.

    The objects display in the Design pane.

  3. Identify the columns you want to join.

    You create a join by selecting the Join column adjacent to the column name. The Join column displays to the right of the datatype, beneath the Remove icon. When your cursor is in the appropriate position, the following help tip displays:

    Click here to select column for join
    
  4. Select the appropriate Join column for the first object.

    When selected, the Join column displays as a dark gray. To deselect a Join column, simply select is again or press ESC.

  5. Select the appropriate Join column for the second object.


    Tip:

    You can also join two objects by dragging and dropping. Select a column in the first table and then drag and drop it onto a column in another table.

    Description of qry_bldr_join.gif follows
    Description of the illustration qry_bldr_join.gif

    When joined, a green line connects the two columns.

  6. Select the columns to be included in your query. You can view the SQL statement resulting from the join by positioning the cursor over the green line.

  7. Click Run to execute the query.

    The Results pane displays the query results.

Joining Objects Automatically

When you join objects automatically, the Query Builder suggests logical, existing parent and child relationships between existing columns.

To join objects automatically:

  1. On the Workspace home page, click SQL Workshop and then Query Builder.

    Query Builder appears.

  2. From the Object Selection pane, select an object.

    The object displays in the Design pane.

  3. Click the small icon in the upper left corner of the object. Depending upon the selected object, the icon label displays as Table Actions or View Actions.

    The Actions window appears. Use the Actions window to select all columns within the current object or objects related to the current object.

  4. In the Actions window, select the appropriate options:

    • Check All - Select this option to select the first twenty columns in the current object.

    • Add Parent - Displays tables that are referenced as a foreign key to the current object.

    • Add Child - Displays tables that reference the current object in a foreign key.

    If using Add Parent or Add child, the selected object appears and a green line connects the foreign key columns.

  5. Select additional columns to be included in your query.

    You can view the SQL statement resulting from the join by positioning the cursor over the green line.

  6. Click Run to execute the query.

    The Results pane displays the query results.

Working with Saved Queries

As you create queries, you can save them by clicking the Save button in the Design pane. Once you save a query, you can access it later in the Saved SQL view.

Topics in this section include:

Saving a Query

To save a query:

  1. Build a query:

    1. On the Workspace home page, click SQL Workshop and then Query Builder.

      Query Builder appears.

    2. Select objects from the Object Selection pane.

    3. Add objects to the Design pane and select columns.

    4. Execute the query.

  2. Click Save.

  3. Enter a name and description and click Save.

    The saved query displays in the Saved SQL view.

Description of qry_bldr_save.gif follows
Description of the illustration qry_bldr_save.gif

Note that Query Builder does not support duplicate query names. If you open an existing query, keep the existing name, and save it again, Query Builder over-writes the existing query. If you change the name of an existing query and save it again, Query Builder saves the query again under the new name.

Editing a Saved Query

Once you save a query, you can access it in the Saved SQL view.

To edit a Saved SQL query:

  1. On the Workspace home page, click SQL Workshop and then Query Builder.

    Query Builder appears.

  2. Select the Saved SQL tab.

  3. To filter the display, you can:

    • Make a selection from the Owner list and click Go.

    • Enter a search query in the Name field and click Go.

  4. To edit a query, select the appropriate name.

    The saved query appears. The selected objects display in the Design pane and the Conditions view appears.

Deleting a Saved Query

To delete a Saved SQL query:

  1. On the Workspace home page, click SQL Workshop and then Query Builder.

    Query Builder appears.

  2. Select the Saved SQL tab.

  3. Select the queries to be deleted and click Delete Checked.

Viewing Query Results

Once you select objects and determine what columns to include in your query, you execute a query by:

  • Clicking the Run button (or pressing CTRL + ENTER)

  • Selecting the Results tab

The Results view appears, displaying formatted query results. To export the report as a comma-delimited file (.csv) file, click the Download link at the bottom of the page.

Description of qry_bldr_results.gif follows
Description of the illustration qry_bldr_results.gif

PKPK.A OEBPS/toc.ncx Oracle® Application Express SQL Workshop and Utilities Guide, Release 3.2 Cover Table of Contents Oracle Application Express SQL Workshop and Utilities Guide, Release 3.2 Preface Managing Database Objects with Object Browser Using SQL Scripts Using SQL Commands Using Oracle Application Express Utilities Building Queries with Query Builder Index Copyright PK PK.AOEBPS/content.opf9E Oracle® Application Express SQL Workshop and Utilities Guide, Release 3.2 en-US E12511-01 Oracle Corporation Oracle Corporation Oracle® Application Express SQL Workshop and Utilities Guide, Release 3.2 2009-07-28T18:38:44Z Describes how to use Oracle Application Express SQL Workshop and utilities to load and unload data from an Oracle database, generate DDL, view object reports, and restore dropped database objects. PK99PK.AOEBPS/dcommon/prodbig.gif GIF87a!!!)))111BBBZZZsss{{ZRRcZZ!!1!91)JB9B9)kkcJJB991ssc絽Zcc!!{祽BZc!9B!c{!)c{9{Z{{cZB1)sJk{{Z{kBsZJ91)Z{!{BcsRsBc{9ZZk甽kBkR!BZ9c)JJc{!))BZks{BcR{JsBk9k)Zck!!BZ1k!ZcRBZcZJkBk1Z9c!R!c9kZRZRBZ9{99!R1{99R{1!1)c1J)1B!BJRkk{ƽ絵ތkk絵RRs{{{{JJsssBBkkk!!9ss{{ZZssccJJZZRRccRRZZ))cBBJJ99JJ!!c11991199Z11!c!!))Z!!!1BRck{)!cJBkZRZ,HP)XRÇEZ֬4jJ0 @ "8pYҴESY3CƊ@*U:lY0_0#  5tX1E: C_xޘeKTV%ȣ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@Š(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((+MrKoT*4flglO|t$>x1a}oryQ$о7#T2Qjnqko{Z[Ov-eF9`0=G\Y2K;iVQ|3@#*NFA(qlڤ\Zme2&r̼z;xoSUԙ Iƒ (b麶۵ƗZ_@QeP#8 UIaY?TTlڤ\Zme2&r̼zv5mrW|Csh]X}6,7q{(mn%. 9I#%d`pA5(Y2K;iVQ|3@#*NFA *gvgdH$F U}O]O+[U"ߌg2:zТwGVǙKfs'kB +;x(o.n)_ ef߷bH' `v垡_5]CWihe (wHό#({E+>fKu)mN`&,vv_7jǎo<hy)Ar7:3W|2k|@sN6&-70`G8@p5+|hw\}ۆe ʸ{_vj#9L8t;X09GC²訨((((((((((1ZnϾO®t"?0xz3,$^ZHny2C;@lq/f7ϋ:wlc *Kfi  oO08 j sρ:wX4 -A%U,*>SG},돳Ow4Vo)V9$Eg~OG|E_ 3/囃BFO>ռ;7s\[68ph 48gI G.s0Ogw$"¾(kgbthR F@c''{ ^ Տlmho<ʳ31gqa0l3,c#?K]>t]>) 9 IHX~ ƽ qDxGvf olCI BKl?7H~' ]CC/ecfY P28<5#/86w6K*ra  n2FHXt9uKietI$1g'dQV\h myJo`|9*ݱdV?$P**<='CGԟu_W.DKW̿U9$ a$f^ $='CGb DK>>|% aYep3W'7,~x8&网s绐;FUtM3^ hݺ y44U#9QGVg>(Ғ7+ 9G!N㞽+!]s঳xfy.`($ fN81h.}?~ι~~a@gshqh/"yD+U빾X2rXNT_y}ʏ{<ϴyicng8\LJ5ߴ^74,4"aXEL @43MoP"I.?: ;u/=+RDagDe ;G\ɗNWbH}^F̱8iJ 7ĺp^N]IX.@ IH~gmh,T W_!<?.c @|v,$ q@(g}.;|/|WcDx_閚lY"`". :;IaXTOO75K;EIфj \NsyV?-\>n--_IkSP]!pnI$?lcfK/Ye9.2%Aݶ3 v?hpͫw#xuqu oRW_I='_g8gUNAPwGp[?ↇ7~=xsFKaw*M$ro'tPu9|)7MjU.BwlP9 C'C?IWPΖ?ׁ1]G¿t\n&XTȍH`Jsxk>g%SƘȃVg9 p!cװJܛ_Q kk'U/v@8Fl CFTѐk"ɻ1)89d"5L9\n5z~3խ-IN[,I'x}vr^_rf-NG ?~IS;<+n_'}1w$kl۷Gv{8um"];—Ws; bcˀTQX ax)u WQ_4`a#J7[#QkzeJGY[9sL'O ?+;Y qBY͸0(\J澋o> ׆裸Mo:rac8a ㇆F*J7(݄XA'w,zHGtY[^SIX˄b\|p$vۛxOh$@$3ʱO;忈Gޭhzn1N w6 HWw?OyOLNw<!_}eT>!c};">X9e(W8Ѥꖟؾ8!JZq3y%HcQ2f=bn巸9 I]H#Wj֚]E3Nfq9^d)8oG:N@}32>p 7^F'<|9IeNTY\mrOzqyVOv .Okyw5C&위+xAѼ }okzmD|@b2ϱtNC^((((((((((O𶍥ݭ5; %yXWQcb(^_ZΒ_:dWBtPP11ѶNIu [>{Gm$Ы-rʃ=(?BK9HȂY!At9ֻ  =2;; H--c`FIŽI'Pvz+ ;H.dң -Hʞt"gydAS׸Z#tuIHD&Mݬ*%u|dx'V?-xGNC%<ד.@=~UEc[FE߉`٫!sPvojO7VEJ$E `*J(뛉gG.;A'<* =vL KX#pIjcijc#aȠ\;V^վai[XDڴHjBrds3KdAV8a3 ;u/=+RDagDe ;G]Eom~%fw{5@I><[oqsA*92<G(~wmdg8l۟qq]CkoQH8Ppb1 h_~E֩/xkc1 rjƷi#ukXϷ̋{&rZP{ }3N˵!7'ZE |=b}[VѾ}>2_LQ¸I|<{'n?z4;o i$Z9FCn*YI9:qV4iMlc_bŘ,IcdEa-^cHD#!# 23+hxVᦗ GĊd9f$$޽ZNۭ_@ceP# 0#8$g7,N@O CIfbIOt6{NK " +U cq z` 8օqm%~i 5!A~uE ^+k 2 HP`#;zѴ=/rXiYZSnc՛eI&^ 54Hw@3sR䑜zS]eot=" I$iHAW{~Pvki:nni}uC`s\_)//@2O 4m. "9 Q\XJ(?YYQ{G@%$y$#e ē"xZs)RWQ@2: HI#FyV ޸?R_?^ۏ9^Ey)//@(((((((((SVԼ=@VjغCx! S]uG< jqy"]l|`*95xk/+InMMTh2co5GR0|yZa\p)0mq偒,cljS>9m\ OuqBTfI& ?><z'H9( p^c3Mzo, Ũ_O|։-߹i7FuM S\/.c$>] {ǭ{x|Y`ZmuwVkV5̒(YZ6 Aoi~<_ejR >7ڣ6Œ{b?pyLh "P;N8vC~Gm<Ie 7r zzWŸ${v_]zyϲ,Ws\k<YMw.ZCU" (EpC²訫+|ukn0ݝGڦ(s;a?2ɭRo ] g ;`]JP'x^Q6Ѭ7#`z.\޻ϭ]cGT0k*AcB@d{ez%n-SVYKjģpb r9J?69>Z据I#k2>` ŀ?+'V'f~jJ(/oOoi$& K&bm:aFSgIv('sN֣Bmn$m«cVW >7647ַN" =՗=>mb;+ WWĿivޙNWԚԀUX ᕦʞ+Cƿ ᆈ|[jV: U&Dg@mPݷ(L^ƖU\mv-T{fUݎ31^WW~?;5)ne 1aU!s???6޽h|NN{ϨKK g|U=бz+jږ[SPu9d`TG'$תW?O5 `+jZρo5MBuEfQĜds^^?8oc({:*?֏IaY?TTx{Nş A>տ~w+8=}O^xGa]Z[u%Q@ c޸PTzvz\IHo6X2p#D֥6]#TX{(n$X 1$d+5oa7Ml1M*F {e5V֧𮷾+u]Dj <` G˕wW>𶡬ϡZ"wsѳۍ򯙹`(> xSgό/=}NJ1Fz88#{&g6X\]y=qIs&wLʠ9$䑞S@((((((((((('i Eo;HOp 臚x܀l^1]Jox᎗2hOq+YZPKA8u+6=fmSKԦ[veBVڊsh=_}쪓6,w#9ņݏLmp q =iݼfg2٫i:5p,[ѐ+RFA5Ə77}>ٻګ=^k :<˦eH$!UX 䊧>#}Co$kwgun-AX8e]÷QTy^o ZϥcMeUq9$7|M|?Lw6ca ꩒0ϋPTz<# .c ]$r1x+MFj>qe+l>T3GS@%|2_RSЮ 9"(62@ξ YRY,QFU?tn}IH<9x[K]7E9}KcԳ1%AOP?O5 yV?-w V=m/Kh%kkV`Up6aoZng>о^fvoێ>w5Vcvfml$NI'I'$rY<7-R{ɦY?"P 3{s~36-,u' ,3F q~'s:ھV𪷓DAr$"$P**Ѿ+HRUԶ`7ҫFA*c ]gFK绚 n՘1U\ Aր8?P'Tۊ>6!J# +M𾳮S>qԪ6l&3!OAW +KK9dO/*rqHY_Q{ȖMߒʫbI$+m.0ex;úψ4B}#%$dP16>k(ykFד+RFM IgZ^G<귱s +qׂ:zq^oop8* ((((((((((((o>3//b\CopfBQ$N{^/MB>C{ @Q^'y|e2OAKk`  w%8Q٫((ր=R((({c⟋exHv!@ nsR'O7zKI,k3V()al{ h~(,{{H0\y6! ۨ }ON̵&GZ@V'!HgLx䍊0 A חsIy ؞@2Ǔ+(((((+9:ˆ+u|{~9? E}Vy60raTWrۇPEvKo%|?oG6HxA(׍?Glo4JS l8@I#RvS h(((((((((((((((>$ 1F|6^ v( # sDzW[! x!h-ݬoT1 *U;gvgdH$F P ?%qsĺ4.@h]ZG dqЩ{\_ oL[XxJ4Q FA#?Ҁ,| חsIy ؞@2Ǔ+➭i:woe]Awe`pa>:xfI$R Β%vzs/d:M"m?*<9ɍ/q@umKF-Ɨ]ڜhZ1_*STq+5f~-m"i_諒bp$^_G<+7~X$a#$sϢ|qy;'E[͕wlWL/ +1fa8N!;:'-XNn"i!1b,I, zA{ Pͷrj:# ^cUL9/,4{X6n N:>"x)-m~ݫJ-0rdPw22YG8{?u|F/Mr6GD rsQ6s&M>P%YlHb@PH|'UռW$fVWR2"|G9 |I+Ɨ^wQZ-ŕ YT->^Oυ7' 3_ռq>}m\q1PV!Ta5QEm|C}Zy?MewSn^s/Ľ#Z#x/]*ȑ6$<["gh??U/v.>qg /Yǥj;1pJ$dxkMF𮑥4m=64d,2=y^x⏈ockO:rLN *~f_vj#9L8t;X09G?mz}ۭΕl\S&RUVFqryOi7`Mv#=!gc%*k5}n5<I60:lr [{J$DԌA+M |Դ}F=F{׎5 $0rsր$%$B(}G\i~ ֟/ueÌ98*T7:_Ht/x҉+>/XkoxwSntb8™263Ƞ]oVxM޻nI1\ 8#,U^ck^ [oZɧ'O) f5ryZآ9cXlg|^^3ܜcv:? j1k6ד[J_[ *AVu%  qB=8 jW5"xTLe - tTc\p08qt`<t\Ʃ}qo#9mʠ>/Wlw#9ێ렢3-3fya۷~ 837{Դk}wc;!F͢b { J(PxιM( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( (?PKf?ssPK.AOEBPS/dcommon/contbig.gif`GIF87a!!!111999BBBJJJRRRccckkksss{{{skk{{ZRRRJJƽ{sZRJRJB91)kcZB9)sskZRJ1޽ƽ{{ssskkkcƵZZRccZRRJJJB{BB9991ssckkZccR))!RRB!!JJ1))99!11ƌ)1R)k֔)s1RZJR{BJs9R1J!11J1J9k{csZk!1J!)cBR9J1B)91B!cRs{!)s!){1B!k!s!{ksksckckZc9B)1!)!)BJ9B1919έƌ!!)JJcZZ{!!!1RR{JJsBBkJJ{!!9BB{1!!J9)!!Z!!c1!!kR!!s9Z!BckJs)19!!c!!ZRZ,H rrxB(Kh" DժuICiи@S z$G3TTʖ&7!f b`D 0!A  k,>SO[!\ *_t  Exr%*_}!#U #4 & ֩3|b]L ]t b+Da&R_2lEٱZ`aC)/яmvUkS r(-iPE Vv_{z GLt\2s!F A#葡JY r|AA,hB}q|B`du }00(䡆<pb,G+oB C0p/x$…– ]7 @2HFc ) @AD \0 LHG',(A` `@SC)_" PH`}Y+_|1.K8pAKMA @?3҄$[JPA)+NH I ,@8G0/@R T,`pF8Ѓ)$^$ DDTDlA@ s;PKPK.AOEBPS/dcommon/darbbook.cssPKPK.A!OEBPS/dcommon/O_signature_clr.JPG"(JFIF``C    $.' ",#(7),01444'9=82<.342C  2!!22222222222222222222222222222222222222222222222222" }!1AQa"q2#BR$3br %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz w!1AQaq"2B #3Rbr $4%&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz ?( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( (?O '~MQ$Vz;OlJi8L%\]UFjޙ%ԯS;rA]5ފ<׈]j7Ouyq$z'TQuw7Ŀ KX߁M2=S'TQt?.5w'97;~pq=" ~k?`'9q6 E|yayM^Om'fkC&<5x' ?A?Zx'jß={=SßM gVC.5+Hd֪xc^)Җufz{Cީ|D Vkznq|+Xa+{50rx{|OG.OϞ~f/ xxX[2H )c+#jpUOZYX\=SG ߨC|K@;_߆'e?LT?]:?>w ڔ`D^So~xo[Ӡ3i7B:Q8 Vc-ďoi:FM292~y_*_闱YN\Fr=xZ3鳎OwW_QEzW~c]REeaSM}}Hӏ4&.E]u=gMѠ+mF`rNn$w9gMa꺢nTuhf2Xv>އ a(Û6߭?<=>z'TQuw7Ŀ KX߁M2=S'TQt?.5Kko\.8S$TOX߀Gw?Zx汴X)C7~.i6(Щ=+4{mGӭ¸-]&'t_kV*I<1)4thtIsqpQJ+> \m^[aJ5)ny:4o&QEnyAEPEEss 72,PDۢ׃K W{Wjr+wگ iM/;pd?~&?@;7E4gv8 $l'z'TQuw7Ŀ Gֱ=ɿ&G?. iR(5W*$|?w᫼gkmIbHe/_t>tg%y.l}N5[]+Mk0ĠeHdPrsst'UiC,y8`V%9ZIia|ܪvi מYG,o}+kk{YbyIeb*sAtի82zWoEK5z*o-eo;n(P u-I)4Š(HQEQEQEQEhz(X/Đ?}Bk˩ ݏrk0]4>8XzV? }6$}d^F>nU K ?Bտk_9׾x~w'ߞ  uDŽtL ؈5c-E/"|_Oo.IH쐍=i*Iw5(ںw?t5s.)+tQ2dUt5Vĺ.jZ"@IRrZƅY4ߡ_;}ų(KyQf1Aǵt?sZg+?F5_oQR&Dg߿]6FuRD u>ڿxl7?IT8'shj^=.=J1rj1Wl$얲cPx;E,p$֟ˏkw qg"45(ǛkV/=+ũ)bYl~K#˝J_כ5&\F'I#8/|wʾ_Xj Q:os^T1.M_|TO.;?_  jF?g N 8nA2F%i =qW,G=5OU u8]Rq?wr'˻S+۾.ܼ 87Q^elo/T*?L|ۚ<%<,/v_OKs B5f/29n0=zqQq(ª=VX@*J(э(f5qJN_EVǞQEOuoѕOuoa5}gO?:߂8Wא|cڽ~]N&O( (<]>͠@VQ=^~U ̴m&\խ5i:}|}r~9՝f}_>'vVֲ$~^f30^in{\_.O F8to}?${φ|#x^#^n~w=~k~?'KRtO.㌡h![3Zu*ٷճ(ԟ]z_/W1(ԟ]v~g|Yq<ז0 ; b8֮s,w9\?uEyStKaª@\,)) (!EPEPEPEPEPzѧts{v>C/"N6`d*J2gGӧWqBq_1ZuΓ\X]r?=Ey88Mp&pKtO-"wR2 K^-Z< \c>V0^@O7x2WFjs<׻kZ(<Т(OFw/6$1[:ޯԯ#q~4|,LVPem=@=YLUxӃV}AUbcUB.Ds5*kٸAeG>PJxt͝ b88?*$~@ׯD VkraiJs}Q.20x&mXξ,Z]“A-J#`+-E/"<]\a'tZGy.(|lދ~gMK OZdxDŽU9T6ϯ^<Ϡt5CZ]].t۫S=s`ڳ%8iVK:nqe+#<.T6U>zWoy3^I {F?J~=G}k)K$$;$de8*G Uӟ4Ocºw}|]4=ݣ\x$ʠms?q^ipw\"ȿPs^Z Q_0GڼU.t}ROM[G#]8wٞ ӫ87}Cgw vHȩBM55vof =A_٭`Ygx[6 P,5}>蚊(0(+?>+?> k|TuXq6_ +szk :u_ Z߶Ak_U}Jc2u/1[_»ݸG41-bሬ۴}}Eȹפ_c?5gi @cL\L<68hF_Ih>X4K7UТ sMj =J7CKo>Օ5s:߀t ~ηaٿ?|gdL8+gG%o?x`دOqȱwc¨&TW_V_aI=dpG!wu۞սZ1yL50$(l3(:~'ַo A}a3N*[0ǭ HKQV}G@֜$ 9of$ArNqUOgË05#m?D)^_h//5_/<?4}Jį+GkpG4"$ r| >S4Ђ"S 1%R:ȝ 8;PKPz PK.AOEBPS/dcommon/feedback.gif7GIF89a'%(hp|fdx?AN5:dfeDGHɾTdQc`g*6DC\?ؘ||{;=E6JUՄfeA= >@,4`H.|`a (Q 9:&[|ځ,4p Y&BDb,!2@, $wPA'ܠǃ@CO~/d.`I @8ArHx9H75j L 3B/` P#qD*s 3A:3,H70P,R@ p!(F oԥ D;"0 ,6QBRɄHhI@@VDLCk8@NBBL2&pClA?DAk%$`I2 #Q+l7 "=&dL&PRSLIP)PɼirqМ'N8[_}w;PK-PK.AOEBPS/dcommon/booklist.gifGIF89a1޵֥΄kZ{Jk1Rs!BZ)B),@I9Z͓Ca % Dz8Ȁ0FZЌ0P !x8!eL8aWȠFD(~@p+rMS|ӛR$ v "Z:]ZJJEc{*=AP  BiA ']j4$*   & 9q sMiO?jQ = , YFg4.778c&$c%9;PKː5PK.AOEBPS/dcommon/cpyr.htm1 Oracle Legal Notices

Oracle Legal Notices

Copyright Notice

Copyright © 1994-2012, 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 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.

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 prerelease status:

This documentation is in prerelease 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

PKN61PK.AOEBPS/dcommon/masterix.gif.GIF89a1ޜΌscJk1Rs!Bc1J),@IS@0"1 Ѿb$b08PbL,acr B@(fDn Jx11+\%1 p { display: none; } /* Class Selectors */ .ProductTitle { font-family: sans-serif; } .BookTitle { font-family: sans-serif; } .VersionNumber { font-family: sans-serif; } .PrintDate { font-family: sans-serif; font-size: small; } .PartNumber { font-family: sans-serif; font-size: small; } PKeӺ1,PK.AOEBPS/dcommon/larrow.gif#GIF87a絵ƌֵƽ{{ss֜ƔZZ{{{{ZZssZZccJJJJRRBBJJJJ991111))!!{,@pH,Ȥrl:ШtpHc`  өb[.64ꑈ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-OJPK.AOEBPS/dcommon/index.gifGIF89a1޵ΥΥ{sc{BZs,@IM" AD B0 3.R~[D"0, ]ШpRNC  /& H&[%7TM/`vS+-+ q D go@" 4o'Uxcxcc&k/ qp zUm(UHDDJBGMԃ;PK(PK.AOEBPS/dcommon/bookbig.gif +GIF89a$!!!)))111999BBBJJJRRRZZZccckkksss{{{skkB991)))!!B11))1!JB9B9!!cZ9ƭƽssk{ZZRccZRRJJJBBB9c!!ν)1)k{s絽ƌkssֽZccJRRBJJ{9BB)11)99!!))11!!k!JZ!)RcJccBcs)1c)JZ!BR!)BZ)99J!Rk9!c11B)Z{)9Bkc1kB9BZ!Z{9Rs)Jkksk9kB1s1Jk9Rƥc{k9s)Z{1k91)s1Rk)Jc1J!))BZ!1k{csc{)19B!)Bcsc{ksc{kZs!RkJkJkքc{9Zks{ck9R)Bks9R9R1J!)Z1B!)c)9)99BR19kksBBJcc{ccBBZ))9kk!!199c11ZBB{9!!R!!Z!!c))!!kR!!s!!BcksRZ1c9B)R91c1)Z!R9B9k1)RcZ{)!1B9JB9B)!)J9B!& Imported from GIF image: bookbig.gif,$!!!)))111999BBBJJJRRRZZZccckkksss{{{skkB991)))!!B11))1!JB9B9!!cZ9ƭƽssk{ZZRccZRRJJJBBB9c!!ν)1)k{s絽ƌkssֽZccJRRBJJ{9BB)11)99!!))11!!k!JZ!)RcJccBcs)1c)JZ!BR!)BZ)99J!Rk9!c11B)Z{)9Bkc1kB9BZ!Z{9Rs)Jkksk9kB1s1Jk9Rƥc{k9s)Z{1k91)s1Rk)Jc1J!))BZ!1k{csc{)19B!)Bcsc{ksc{kZs!RkJkJkքc{9Zks{ck9R)Bks9R9R1J!)Z1B!)c)9)99BR19kksBBJcc{ccBBZ))9kk!!199c11ZBB{9!!R!!Z!!c))!!kR!!s!!BcksRZ1c9B)R91c1)Z!R9B9k1)RcZ{)!1B9JB9B)!)J9BH`\Ȑ:pظа"A6DBH,V@Dڹ'G"v Æ ܥ;n;!;>xAܽ[G.\rQC wr}BŊQ A9ᾑ#5Y0VȒj0l-GqF>ZpM rb ;=.ސW-WѻWo ha!}~ْ ; t 53 :\ 4PcD,0 4*_l0K3-`l.j!c Aa|2L4/1C`@@md;(H*80L0L(h*҇҆o#N84pC (xO@ A)J6rVlF r  fry†$r_pl5xhA+@A=F rGU a 1х4s&H Bdzt x#H%Rr (Ѐ7P`#Rщ'x" #0`@~i `HA'Tk?3!$`-A@1l"P LhʖRG&8A`0DcBH sq@AXB4@&yQhPAppxCQ(rBW00@DP1E?@lP1%T` 0 WB~nQ@;PKGC PK.AOEBPS/dcommon/rarrow.gif/GIF87a絵ƌֵƽ{{ss֜ƔZZ{{{{ZZssZZccJJJJRRBBJJJJ991111))!!{,@pH,Ȥrl:ШLlԸ NCqWEd)#34vwwpN|0yhX!'+-[F 'n5 H $/14w3% C .90" qF 7&E "D mnB|,c96) I @0BW{ᢦdN p!5"D`0 T 0-]ʜ$;PKJV^PK.AOEBPS/dcommon/mix.gifkGIF89aZZZBBBJJJkkk999sss!!!111cccֽ{{{RRR)))猌ƭ{s{sks!,@@pH,B$ 8 t:<8 *'ntPP DQ@rIBJLNPTVEMOQUWfj^!  hhG H  kCúk_a Ǥ^ h`B BeH mm  #F` I lpǎ,p B J\Y!T\(dǏ!Gdˆ R53ټ R;iʲ)G=@-xn.4Y BuU(*BL0PX v`[D! | >!/;xP` (Jj"M6 ;PK枰pkPK.AOEBPS/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 PK.AOEBPS/dcommon/toc.gifGIF89a1ΥΥ{c{Z{JkJk1Rk,@IK% 0| eJB,K-1i']Bt9dz0&pZ1o'q(؟dQ=3S SZC8db f&3v2@VPsuk2Gsiw`"IzE%< C !.hC IQ 3o?39T ҍ;PKv I PK.AOEBPS/dcommon/topnav.gifGIF89a1ֽ筽ޭƔkZZk{Bc{,@ ) l)-'KR$&84 SI) XF P8te NRtHPp;Q%Q@'#rR4P fSQ o0MX[) v + `i9gda/&L9i*1$#"%+ ( E' n7Ȇ(,҅(L@(Q$\x 8=6 'נ9tJ&"[Epljt p#ѣHb :f F`A =l|;&9lDP2ncH R `qtp!dȐYH›+?$4mBA9 i@@ ]@ꃤFxAD*^Ŵ#,(ε  $H}F.xf,BD Z;PK1FAPK.AOEBPS/dcommon/bp_layout.css# @charset "utf-8"; /* bp_layout.css Copyright 2007, Oracle and/or its affiliates. All rights reserved. */ body { margin: 0ex; padding: 0ex; } h1 { display: none; } #FOOTER { border-top: #0d4988 solid 10px; background-color: inherit; color: #e4edf3; clear: both; } #FOOTER p { font-size: 80%; margin-top: 0em; margin-left: 1em; } #FOOTER a { background-color: inherit; color: gray; } #LEFTCOLUMN { float: left; width: 50%; } #RIGHTCOLUMN { float: right; width: 50%; clear: right; /* IE hack */ } #LEFTCOLUMN div.portlet { margin-left: 2ex; margin-right: 1ex; } #RIGHTCOLUMN div.portlet { margin-left: 1ex; margin-right: 2ex; } div.portlet { margin: 2ex 1ex; padding-left: 0.5em; padding-right: 0.5em; border: 1px #bcc solid; background-color: #f6f6ff; color: black; } div.portlet h2 { margin-top: 0.5ex; margin-bottom: 0ex; font-size: 110%; } div.portlet p { margin-top: 0ex; } div.portlet ul { list-style-type: none; padding-left: 0em; margin-left: 0em; /* IE Hack */ } div.portlet li { text-align: right; } div.portlet li cite { font-style: normal; float: left; } div.portlet li a { margin: 0px 0.2ex; padding: 0px 0.2ex; font-size: 95%; } #NAME { margin: 0em; padding: 0em; position: relative; top: 0.6ex; left: 10px; width: 80%; } #PRODUCT { font-size: 180%; } #LIBRARY { color: #0b3d73; background: inherit; font-size: 180%; font-family: serif; } #RELEASE { position: absolute; top: 28px; font-size: 80%; font-weight: bold; } #TOOLS { list-style-type: none; position: absolute; top: 1ex; right: 2em; margin: 0em; padding: 0em; background: inherit; color: black; } #TOOLS a { background: inherit; color: black; } #NAV { float: left; width: 96%; margin: 3ex 0em 0ex 0em; padding: 2ex 0em 0ex 4%; /* Avoiding horizontal scroll bars. */ list-style-type: none; background: transparent url(../gifs/nav_bg.gif) repeat-x bottom; } #NAV li { float: left; margin: 0ex 0.1em 0ex 0em; padding: 0ex 0em 0ex 0em; } #NAV li a { display: block; margin: 0em; padding: 3px 0.7em; border-top: 1px solid gray; border-right: 1px solid gray; border-bottom: none; border-left: 1px solid gray; background-color: #a6b3c8; color: #333; } #SUBNAV { float: right; width: 96%; margin: 0ex 0em 0ex 0em; padding: 0.1ex 4% 0.2ex 0em; /* Avoiding horizontal scroll bars. */ list-style-type: none; background-color: #0d4988; color: #e4edf3; } #SUBNAV li { float: right; } #SUBNAV li a { display: block; margin: 0em; padding: 0ex 0.5em; background-color: inherit; color: #e4edf3; } #SIMPLESEARCH { position: absolute; top: 5ex; right: 1em; } #CONTENT { clear: both; } #NAV a:hover, #PORTAL_1 #OVERVIEW a, #PORTAL_2 #OVERVIEW a, #PORTAL_3 #OVERVIEW a, #PORTAL_4 #ADMINISTRATION a, #PORTAL_5 #DEVELOPMENT a, #PORTAL_6 #DEVELOPMENT a, #PORTAL_7 #DEVELOPMENT a, #PORTAL_11 #INSTALLATION a, #PORTAL_15 #ADMINISTRATION a, #PORTAL_16 #ADMINISTRATION a { background-color: #0d4988; color: #e4edf3; padding-bottom: 4px; border-color: gray; } #SUBNAV a:hover, #PORTAL_2 #SEARCH a, #PORTAL_3 #BOOKS a, #PORTAL_6 #WAREHOUSING a, #PORTAL_7 #UNSTRUCTURED a, #PORTAL_15 #INTEGRATION a, #PORTAL_16 #GRID a { position: relative; top: 2px; background-color: white; color: #0a4e89; } PK3( # PK.AOEBPS/dcommon/bookicon.gif:GIF87a!!!)))111999BBBJJJRRRZZZccckkksss{{{ޭ{{ZRRcZZRJJJBB)!!skRB9{sν{skskcZRJ1)!֭ƽ{ZZRccZJJBBB999111)JJ9BB1ZZB!!ﭵBJJ9BB!!))Jk{)1!)BRZJ{BsR!RRJsJ!J{s!JsBkks{RsB{J{c1RBs1ZB{9BJ9JZ!1BJRRs!9R!!9Z9!1)J19JJRk19R1Z)!1B9R1RB!)J!J1R)J119!9J91!9BkksBBJ119BBR!))9!!!JB1JJ!)19BJRZckތ1)1J9B,H*\hp >"p`ƒFF "a"E|ժOC&xCRz OBtX>XE*O>tdqAJ +,WxP!CYpQ HQzDHP)T njJM2ꔀJ2T0d#+I:<жk 'ꤱF AB @@nh Wz' H|-7f\A#yNR5 /PM09u UjćT|q~Yq@&0YZAPa`EzI /$AD Al!AAal 2H@$ PVAB&c*ؠ p @% p-`@b`uBa l&`3Ap8槖X~ vX$Eh`.JhAepA\"Bl, :Hk;PKx[?:PK.AOEBPS/dcommon/conticon.gif^GIF87a!!!)))111999BBBJJJRRRZZZccckkksss{{{ZRR޽{{ssskkkcccZ991ccRZZBBJJZck)19ZcsBJZ19J!k{k)Z1RZs1!B)!J91{k{)J!B!B911)k{cs!1s!9)s!9!B!k)k1c!)Z!R{9BJcckZZcBBJ99B119{{!!)BBRBBZ!))999R99Z!!999c1!9!)19B1)!B9R,  oua\h2SYPa aowwxYi 9SwyyxxyYSd $'^qYȵYvh ч,/?g{н.J5fe{ڶyY#%/}‚e,Z|pAܠ `KYx,ĉ&@iX9|`p ]lR1khٜ'E 6ÅB0J;t X b RP(*MÄ!2cLhPC <0Ⴁ  $4!B 6lHC%<1e H 4p" L`P!/,m*1F`#D0D^!AO@..(``_؅QWK>_*OY0J@pw'tVh;PKp*c^PK.AOEBPS/dcommon/blafdoc.cssL@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%; } h2 { font-size: 152%; font-weight: bold; } h3 { font-size: 139%; font-weight: bold; } h4 { font-size: 126%; font-weight: bold; } h5 { font-size: 113%; font-weight: bold; display: inline; } h6 { font-size: 100%; font-weight: bold; font-style: italic; display: inline; } 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; } 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; } } PKʍPK.AOEBPS/dcommon/rightnav.gif&GIF89a1ֽ筽ޭƔkZZk{Bc{,@ ) l)- $CҠҀ ! D1 #:aS( c4B0 AC8 ְ9!%MLj Z * ctypJBa H t>#Sb(clhUԂ̗4DztSԙ9ZQҀEPEPEPEPEPEPEPM=iԍP Gii c*yF 1׆@\&o!QY00_rlgV;)DGhCq7~..p&1c:u֫{fI>fJL$}BBP?JRWc<^j+χ5b[hֿ- 5_j?POkeQ^hֿ1L^ H ?Qi?z?+_xɔŪ\썽O]χ>)xxV/s)e6MI7*ߊޛv֗2J,;~E4yi3[nI`Ѱe9@zXF*W +]7QJ$$=&`a۾?]N T䏟'X)Ɣkf:j |>NBWzYx0t!* _KkoTZ?K Gc+UyڹgNuh^iSo5{\ܹ3Yos}.>if FqR5\/TӮ#]HS0DKu{($"2xִ{SBJ8=}Y=.|Tsц2UЫ%.InaegKo z ݎ3ֹxxwM&2S%';+I',kW&-"_¿_ Vq^ܫ6pfT2RV A^6RKetto^[{w\jPZ@ޢN4/XN#\42j\(z'j =~-I#:q[Eh|X:sp* bifp$TspZ-}NM*B-bb&*xUr#*$M|QWY ~p~- fTED6O.#$m+t$˙H"Gk=t9r娮Y? CzE[/*-{c*[w~o_?%ƔxZ:/5𨴟q}/]22p qD\H"K]ZMKR&\C3zĽ[PJm]AS)Ia^km M@dК)fT[ijW*hnu Ͳiw/bkExG£@f?Zu.s0(<`0ֹoxOaDx\zT-^ѧʧ_1+CP/p[w 9~U^[U<[tĽwPv[yzD1W='u$Oeak[^ |Gk2xv#2?¹TkSݕ| rݞ[Vi _Kz*{\c(Ck_܏|?u jVڔ6f t?3nmZ6f%QAjJf9Rq _j7Z-y.pG$Xb]0')[_k;$̭?&"0FOew7 z-cIX岛;$u=\an$ zmrILu uٞ% _1xcUW%dtÀx885Y^gn;}ӭ)場QEQ@Q@Q@Q@Q@Q@!4xPm3w*]b`F_931˜[ן+(> E ly;<;MF-qst+}DH @YKlLmؤciN<|]IU)Lw(8t9FS(=>og<\Z~u_+X1ylsj'eՃ*U3`C!N9Q_WܱhKc93^ua>H ƕGk=8~e#_?{ǀe-[2ٔ7;=&K挑5zsLdx(e8#{1wS+ΝVkXq9>&yஏh$zq^0~/j@:/«Vnce$$uoPp}MC{$-akH@ɫ1O !8R9s5ԦYmϧ'OUṡ5T,!Ԛ+s#1Veo=[)g>#< s)ƽُA^䠮ωFUj(ǩ|N3Jڷ睁ϱuږZYGOTsI<&drav?A^_f׻B$,O__ԿC`it{6>G׈C~&$y؎v1q9Sc1fH[ѽ>,gG'0'@Vw,BO [#>ﱺg5ΒFVD%Yr:O5 Tu+O멃]ی38Ze}R&ѝ_xzc1DXgس;<,_,{ƽY'AS#oF.M#~cBuEx7G+Y)(5q+GCV;qF+CLQ)qEC&6z𿊘z}?&w=+)??&\g{;V??׻xGœdٿ׼-Nc')3K]N)iLTӿCdb7Q^a N sd>Fz[0S^s'Zi 77D}kWus ab~~H(>.fif9,~|Jk;YN3H8Y(t6Q݉k͇_÷Z+2߄&[ +Tr^藺97~c܎=[f1RrBǓ^kEMhxYVm<[џ6| kqbѱ| YA{G8p?\UM7Z66 g1U1igU69 u5Pƪ:VVZC=[@ҹ¨$kSmɳО\vFz~i3^a Osŧυ9Q}_3 όO{/wgoet39 vO2ea;Ύ7$U#?k+Ek&dpzbӱ+TaB0gN{[N7Gי}U7&@?>Fz~E!a@s ?'67XxO*!?qi]֏TQN@tI+\^s8l0)2k!!iW8F$(yOּT.k,/#1:}8uT˾+5=O/`IW G֯b.-<= HOm;~so~hW5+kS8s.zwE| ?4ӿw/K N 9?j(#0UT` Wzw}:_*9m>󑓀F?ELzv=8q:=WgJ`nDr Zе<ֹ](Q@Q@Q@Q@Q@Q@Q@Q@ 'IdC0EYJVcMty_~u+Sw-aO n<[YJgL#6i g5ЖDZ14cʝ!!\/M}/_AYR__>oC? _?7_G#RERW쏞KB}JxGSkǕA pƱơP m]hwB7U$Zq M95"3q1ioATߚ{g.t uu2k=;h#YB= fgS :TdLԃ!44mFK{Hrd^7oz|BVr<{)6AXգV»|>*/hS܏z͆OM=Εq (s|s׊LKQI :9NJ)P+!ʣoAF>+=@I}"x/}۠1aנc¹4emC:>p_xWKX` >R3_S½èųp3޺u3N e یbmͺ<_ mnݮ1Op?Gm)Qb%N585'%Ahs\6yw!"&Ɨ._wk)}GP;Z!#\"< *oƾ\)}N>"լ/~]Lg}pBG X?<zZ#x69S=6) jzx=y9O&>+e!!? ?s~k5Gʏ)?*ce7Ox~k5􇔾Q/e7/Ԑ#3OgNC0] ;_FiRl>Q.g>!%k#ú:Kn'&}?U@\pџPtp)v<{_i}Oվֲ3XIYIx~b<D?(=_JXH=bbi=Oh?_ C_O)}oW쏜? %Ƶ;-RYFi`wۭ{ϖZMtQ$"c_+ԃx1*0b;ԕ݋ESQEQEQEQEQEQEQEQEQEQZ(1F)h1K@XLRE&9P (bf{RӨ&)PEPEPbԴPGKZ(iإbn(:A%S0(-&)P+ ڎԴP11F)h&:LRmQ@Q@Š(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((PKje88PK.AOEBPS/dcommon/help.gif!GIF89a1εֵ֜֜{kZsBc{,@ )sƠTQ$8(4ʔ%ŌCK$A HP`$h8ŒSd+ɡ\ H@%' 6M HO3SJM /:Zi[7 \( R9r ERI%  N=aq   qƦs *q-n/Sqj D XZ;PKއ{&!PK.A OEBPS/toc.htm;x Table of Contents

Contents

Title and Copyright Information

Preface

1 Managing Database Objects with Object Browser

2 Using SQL Scripts

3 Using SQL Commands

4 Using Oracle Application Express Utilities

5 Building Queries with Query Builder

Index

PK8i+%;;PK.AOEBPS/sql_rep.htm Using SQL Scripts

2 Using SQL Scripts

This section provides information on how to use SQL Scripts to create, edit, view, run, and delete script files.

This section contains the following topics:

What is SQL Scripts?

A SQL script is a set of SQL commands saved as a file in SQL Scripts. A SQL script can contain one or more SQL statements or PL/SQL blocks. You can use SQL Scripts to create, edit, view, run, and delete script files.

When using SQL Scripts, remember the following:

  • SQL*Plus commands in a SQL script are ignored at run time.

  • There is no interaction between SQL Commands and SQL Scripts.

  • You can cut and paste a SQL command from the SQL Script editor to run it in SQL Commands.

  • SQL Scripts does not support bind variables.

Accessing SQL Scripts

To access SQL Scripts:

  1. Log in to the Workspace home page.

  2. To view SQL Scripts page you can either:

    • Click the SQL Workshop icon and then SQL Scripts to drill-down to the SQL Scripts page.

    • Click the down arrow on the right side of the SQL Workshop icon to view a drop down menu. Then select the SQL Scripts menu option.

    Description of scripts.gif follows
    Description of the illustration scripts.gif


    Note:

    For the purposes of consistency, this document uses the primary navigation path (or drill-down approach) when explaining navigation.

About the SQL Scripts Page

The SQL Scripts page display all SQL scripts created by the current user. You can control the appearance of the page by making a selection from the View list. The default view, Icons, displays each script as an icon. Details view displays each script as a row in a report.

Description of script_home.gif follows
Description of the illustration script_home.gif

The SQL Scripts page features the following controls:

  • Script. Search for a script by entering the script name, or a partial name, in the Script field and clicking Go. You control how many rows display by making a selection from the Display list.

  • Owner. Search for the owner of the script you want to view by entering the user name in the Owner field and clicking Go.

  • View. Change the appearance of the SQL Scripts page by making a selection from the View list and clicking Go. Available View options include:

    • Icons (default) displays each script as an icon identified by the script name. Click the Show Results check box to additionally display run results as icons identified by the script name.

    • Details displays each script as a line in a report. Each line includes a check box to enable the selection of scripts for deletion, an edit icon to enable the script to be loaded into the script editor, the script name, the script owner, when the script was last updated and by who, the size in bytes, the number of times the script has been run linked to the run results, and an icon to enable the script to be run.

      Details view offers the following additional controls:

      • Delete Checked. In Details view, select the check box associated with the script you want to delete and click Delete Checked. See "Deleting a SQL Script".

      • Sort. In Details view, click a column heading to sort the listed scripts by that column.

  • Upload. Click Upload to upload a script from your local file system into SQL Scripts. See "Creating a SQL Script".

  • Create. Click Create to create a script in the Script Editor. See "Creating a SQL Script".

Switching to Another SQL Workshop Component

You can navigate to another SQL Workshop component by making a selection from the Component list located on the upper right side of the page:

About the Tasks List

A Tasks list displays on the right side of the SQL Scripts page.

Description of script_tasks.gif follows
Description of the illustration script_tasks.gif

The Task list contains the following links:

  • Manage Results enables you to view, search, and display results. See "Viewing SQL Script Results".

  • Show Quotas displays the Script Quotas page. The Script Quotas page shows the maximum size of a single result, the maximum size of all results, the quota used and the quota free. It also shows the maximum size of a SQL Script.

  • Export enables you to export multiple scripts from the current SQL Script Repository for import into SQL Scripts in a different workspace. The scripts you select to export are encoded in a single export script written to your local file system. The export script is named workspace_name_script.sql by default. See "Exporting and Importing SQL Scripts".

  • Import enables you to import a script exported by this workspace, or a different workspace. Import only imports scripts encoded in an export script created using Export. The export script to import must be accessible on your local file system. See "Exporting and Importing SQL Scripts".

Creating a SQL Script

You can create a script in the Script Repository by:

  • Creating a script in the Script Editor

  • Uploading a script from your local file system

Topics in this section include:

Creating a SQL Script in the Script Editor

To create an SQL script in the Script Editor:

  1. On the Workspace home page, click SQL Workshop and then SQL Scripts.

    The SQL Scripts page appears.

  2. Click the Create button.

    The Script Editor appears.

  3. Enter a name for the script in the Script Name field.

    Script name extensions are optional.

  4. Enter the SQL statements, PL/SQL blocks and SQL*Plus commands you want to include in your script.

    Remember that SQL Command Line commands are ignored at run time.

  5. Click Save to save your script to the repository.

    The SQL Scripts page appears listing your newly saved script.

Uploading a SQL Script

To upload a script from your local file system:

  1. On the Workspace home page, click SQL Workshop and then SQL Scripts.

    The SQL Scripts page appears.

  2. Click the Upload button.

    The Upload Script dialog appears.

  3. To upload a script you can either:

    • Enter the name and path to the script you want to upload to the Script Repository.

    • Click Browse to locate the script you want to upload.

  4. Optionally rename the script by entering the new name in the Script Name field.

    This is the name given to the script in the Script Repository.

  5. Click Upload to add the script to the Script Repository.

    The SQL Scripts page appears listing your newly uploaded script.

    The script is parsed during upload. If it has a syntax error, an error icon appears in place of the run icon in the SQL Scripts page Details view.

    If a script of the same name exists in the Script Repository, you are prompted to rename it.

Using the Script Editor

You use the Script Editor to add content to a new script, to edit existing scripts, and to run and delete scripts in the script repository.

Topics in this section include:

Editing an Existing Script

To edit a SQL script:

  1. On the Workspace home page, click SQL Workshop and then SQL Scripts.

    The SQL Scripts page appears.

  2. You can load a script into the editor as follows:

    • In Icons view, click the script icon.

    • In Details view, click the Edit icon.

    The Script Editor appears.

    Description of script_editor.gif follows
    Description of the illustration script_editor.gif

  3. Edit the script.

    Note that new lines are automatically indented to the previous line start column. Other features of the Script Editor include:

    • Search and Replace. Click Find to display the text and JavaScript regular expression find and replace options. Click Find again to hide the options. See "Searching and Replacing Text or Regular Expressions".

    • Line Selection. Click the line number on the left side of the Script Editor to select the associated line of your script for copying or deleting.

    • Cut, Copy, and Paste. Use standard edit controls to cut, copy and paste content in the Script Editor.

    • Auto indenting lines. New lines automatically indent to the previous line start column.

    You can test your script during editing by running the script to reveal errors. The Run Script dialog and the Script Results pages enable you to resume editing the script. See "Executing a SQL Script", and "Viewing SQL Script Results".

  4. Click Save to save your script to the Script Repository,

    The SQL Scripts page appears.

Searching and Replacing Text or Regular Expressions

Clicking the Find button in the Script Editor displays the Find and Replace with fields at the top of the page. Use these fields to search for and replace text strings and JavaScript regular expressions within a script. To exit Find mode, click Find again.

Description of script_find.gif follows
Description of the illustration script_find.gif

To access Find mode in the Script Editor:

  1. On the Workspace home page, click SQL Workshop and then SQL Scripts.

    The SQL Scripts page appears.

  2. Select a script.

    The Script Editor appears.

  3. Click the Find button.

    The Find and Replace fields appear.

  4. In the Find field, enter the string you want to find. In Replace with, enter the new string to be added and then click the appropriate button (Replace, Find Next, or Replace All.)

    To further refine your search, select the appropriate check box:

    • Match Case

    • Match Whole Words

    • Match Regular Expression

  5. To exit Find mode, click Find.

Summary of Script Editor Controls

Table 2-1describes the buttons and controls available within the Script Editor

Table 2-1 Buttons and Controls within the Script Editor

ButtonDescriptions

Cancel

Cancel the editing session and exit the Script Editor without saving changes made since the last save.

Download

Saves a copy of the current script to your local file system. Enter a name for the script on your local file system and a directory path.

Delete

Removes the current script from the Script Repository.

See Also: "Deleting a SQL Script"

Save

Save your changes to the current script to the Script Repository.

Run

Submits the script for execution.

See Also: "Executing a SQL Script"

Undo (Ctrl+Z)

Removes, or undoes, the most recent line edit made in the Script Editor.

Redo (Ctrl+Y)

Repeats the most recent line edit made in the Script Editor.

Find

Click Find to access search and replace mode. Click Find again to exit Find mode.

See Also: "Searching and Replacing Text or Regular Expressions"


Deleting a SQL Script

You can delete scripts from the Script Repository by deleting selected scripts from the SQL Scripts page, or deleting the current script in the Script Editor.

Topics in this section include:

Deleting Scripts from the SQL Scripts Page

To delete scripts from the SQL Scripts page.

  1. On the Workspace home page, click SQL Workshop and then SQL Scripts.

    The SQL Scripts page appears.

  2. From the View list, select Details and click Go.

    Details view appears.

  3. Select the scripts to be deleted.

    To select individual scripts, click the check box to the left of the Edit icon. To select all scripts visible in the current page, click the check box in the column heading.

  4. Click Delete Checked to permanently remove the selected scripts from the Script Repository. You are prompted to confirm this action before the script is deleted.

    The message "Script(s) deleted" appears above the updated list of Scripts.

Deleting a Script in the Script Editor

To delete a script in the Script Editor:

  1. On the Workspace home page, click SQL Workshop and then SQL Scripts.

    The SQL Scripts page appears.

  2. Open the script you want to delete in the Script Editor.

  3. Click Delete to permanently remove the script from the Script Repository. You are prompted to confirm this action before the script is deleted.

    The SQL Scripts page appears. The message "Script(s) deleted" appears above the updated list of scripts.

Copying a SQL Script

You can copy a script in the Script Repository by saving it with a new name.

To copy a script:

  1. On the Workspace home page, click SQL Workshop and then SQL Scripts.

    The SQL Scripts page appears.

  2. Load the script to copy into the editor.

  3. Enter a name for the copied script in the Script Name field.

  4. Click Save to save a copy of the script in the Script Repository.

    The SQL Scripts page appears listing the newly copied script.

Executing a SQL Script

You can execute scripts stored in the Script Repository. You can submit a script for execution either from the Script Editor, or from the SQL Scripts page.

When you submit a script for execution, the Run Script page appears. It displays the script name, when it was created and by who, when it was last updated and by who, the number of statements it contains, and its size in bytes. It also lists unknown statements such as SQL*Plus commands that are ignored during execution.

Finally, it lists statements with errors. If there are errors, the Run control does not appear.

Topics in this section include:

Executing a SQL Script in the Script Editor

To execute a script in the Script Editor:

  1. Open the script you want to execute in the Script Editor. See "Using the Script Editor".

  2. Click Run in the Script Editor.

  3. The Run Script page appears.

    The Run Script page displays information about the script and lists statements in error preventing execution, or statements such as SQL*Plus commands that are ignored when the script is executed.

    The Run Script page has three controls:

    • Cancel returns you to the SQL Scripts page without executing the script.

    • Edit Script loads the script into the Script Editor. Note that Edit Script appears instead of Run when a script has errors.

    • Run to submit the script for execution. Note that Run is not available if there are script errors.

  4. Click Run to submit the script for execution.

    The Manage Script Results page appears listing script results.

  5. To view script results, click the View icon under View Results.

Executing a SQL Script from the SQL Scripts Page

To execute a script from the SQL Scripts page:

  1. On the Workspace home page, click SQL Workshop and then SQL Scripts.

    The SQL Scripts page appears.

  2. From the View list, select Details and click Go.

    Details view appears.

  3. Click the Run icon for the script you want to execute. The Run icon is located on the far right side adjacent to the script name.

  4. The Run Script page appears.

    The Run Script page displays information about the script and lists statements in error preventing execution, or statements such as SQL*Plus commands that are ignored when the script is executed. The Run Script page has three controls:

    Cancel to return to the SQL Scripts page without executing the script.

    Edit Script to load the script into the Script Editor. Edit Script appears instead of Run when a script has errors.

    Run to submit the script for execution. Run is not available for scripts with errors.

  5. Click Run to submit the script for execution.

    The Manage Script Results page appears listing available results for the script.

  6. Click the View icon for the results you want to view. The View icon is at the right end of the scripts listed in the Manage Script Results page.

About the Run Script Page

On the Run Script page, you can:

  • Cancel the execution. Click Cancel to exit the Run Script page without executing the script. The SQL Scripts page appears.

  • Edit the script. Edit Script appears instead of Run when a script has errors. Click Edit Script to load the script into the Script Editor to remove the lines with errors.

  • Execute the script. Click Run to execute the script.

Viewing SQL Script Results

You use the Manage Script Results page to view and delete script results.

You can also select script results to view from the Icons view of the SQL Scripts page, and from the Results column of the SQL Scripts page Details view.

Topics in this section include:

Viewing Results from the SQL Scripts Page

To view script results from the SQL Scripts page:

  1. On the Workspace home page, click SQL Workshop and then SQL Scripts.

    The SQL Scripts page appears.

  2. You can access the Manage Script Results page in the following ways:

    • On the Tasks list, click Manage Results.

    • In Details view, click the Results number for the script you want to display.

    • In Icons view, click the Show Results check box and then tE6he appropriate icon. Results icons only appear in the Icons view if you click the Show Results check box.

    The Manage Script Results page appears, listing available results for the script. See "About the Manage Script Results Page".

    Description of script_manage_results.gif follows
    Description of the illustration script_manage_results.gif

  3. Click the View icon for the results you want to view. The View icons display on the far right side of page under the heading View Results.

    The Results page appears. See "About the Results Page".

About the Manage Script Results Page

On the Manage Script Results page you can:

  • Search for a result. Enter a result name or partial name in the Script field and click Go. To view all results, leave the Script field blank and click Go. You control how many rows display by making a selection from the Display list.

  • Change the Page View. You can change the appearance of the page by making a selection from the View list. Available View options include:

    • Icons displays each result as an icon identified by the script name, and time and date stamp.

    • Details displays each result as a line in a report. Each line includes a check box to enable the selection of results for deletion, the associated script name which is a link enabling it to be loaded into the Script Editor, who ran the script, when the run started, how long it took to run, whether the run is complete or not, the number of statements executed, the size in bytes, and a View icon to view the results.

  • Delete a result. In Details view, select the check box associated with each result you want to delete, and click Delete Checked.

  • Sort results. In Details view, click a column heading to sort the listed results by that column.

About the Results Page

The Results page displays the script name and status (Complete, Canceled, Executing or Submitted), and lists the statements executed.

Description of script_results.gif follows
Description of the illustration script_results.gif

On the Results page you can:

  • Choose the view. Click the Detail or Summary option and click Go to specify whether to display complete or summarized information.

  • Choose the number of rows to display. In Summary view, make a selection from the Display list and click Go to specify the number of rows displayed.

  • Sort the statement report. In Summary view, select a column heading to sort the listed values by that column.

  • Edit the script. Click Edit Script to load the script into the Script Editor. See "Using the Script Editor".

Exporting and Importing SQL Scripts

You can transfer scripts from your current Script Repository to a Script Repository in a different workspace by using the Export and Import tasks. Exported scripts are encoded in a single file on your local file system. Once exported, you then log in to another workspace and import the file. During import, the file is run to re-create the scripts in the current Script Repository.

By default, the Export SQL Scripts page lists all scripts in the Script Repository created by the current user. There are two panes on the Export SQL Scripts page, the Scripts pane and the Scripts to Export pane. You use the Scripts pane to select scripts to export. Then, you use the Scripts to Export pane to finalize the scripts to export, to choose a name for the export script, and to save the selected scripts in the export script on your local file system. You use the Import Scripts pane to select the export script containing the scripts to import.

Topics in this section include:

Copying Scripts to an Export Script

To copy scripts to an export script:

  1. On the Workspace home page, click SQL Workshop and then SQL Scripts.

    The SQL Scripts page appears.

  2. On the Tasks list, click Export.

    The Export SQL Scripts page appears.

  3. Click the check box for each of the scripts you want to export. The check boxes display on the left side adjacent to the script name. To select all displayed scripts for export, click the column head check box.

  4. Click Add to Export to create a list of scripts to be added to the export script.

    The selected scripts are added to the list of scripts in the Scripts to Export pane.

  5. Enter a name for the export script in the File Name field.

    The default script name is workspace_name_script.sql.

  6. Click Export All to export the scripts to the export script.

    You are prompted to enter the directory where you want to save the export script.

About the Scripts Pane

Description of script_pane.gif follows
Description of the illustration script_pane.gif

In the Scripts pane you can:

  • Search for a script. Enter a script name or partial name in the Find field and click Go. To view all scripts, leave the Find field blank, select - All Users - from the Owner list and click Go. You control how many rows display by making a selection from the Display list.

  • Cancel the export. Click Cancel to return to the SQL Scripts page without exporting any scripts, or to return to the SQL Scripts page after saving an export script.

  • Selecting scripts to export. Click Add to Export to add scripts to the export script. Scripts added to the export script are no longer listed in the Script pane, but appear in the Scripts to Export pane.

  • Sort scripts. Click a column heading to sort the listed scripts by that column.

About the Scripts to Export Pane

Description of script_export.gif follows
Description of the illustration script_export.gif

In the Scripts to Export pane you can:

  • Rename the export script. Enter a name for the export script in the File Name field or leave the default script name.

  • Remove scripts. Click the check box adjacent to the scripts you want to remove f and click Remove Checked. Scripts removed are no longer listed in the Scripts to Export pane, but appear in the Scripts pane.

  • Save the export script. Click Export All to save the export script to your local file system. You are prompted to enter the directory where you want to save the export script.

Importing Scripts from an Export Script

To import scripts from an export script:

  1. On the Workspace home page, click SQL Workshop and then SQL Scripts.

    The SQL Scripts page appears.

  2. On the Tasks list, click Import.

    The Import Scripts pane appears. See "About the Import Scripts Pane".

  3. Enter the name and path to the export script you want to import to the Script Repository, or click Browse to locate the export script you want to import.

  4. Click Next to list the scripts in the export script.

    The Action column indicates whether the imported script is new, or whether it replaces an existing script of the same name.

  5. Click Import Script(s) to import the listed scripts into the current Script Repository.

    The SQL Scripts page appears listing the imported scripts.

About the Import Scripts Pane

Description of script_import.gif follows
Description of the illustration script_import.gif

In the Import Scripts pane you can:

  • Enter the export script. Enter the name and path of the script to import in the Import file field, or click Browse to locate the script.

  • Cancel the import. Click Cancel to return to the SQL Scripts page without importing scripts.

  • Proceed with the import. Click Next to import the scripts in the specified export script. You can review the listed scripts to import.

  • Choose another export file. Click Previous to return to the Import Scripts file selection page to choose a different export script.

  • Import the scripts. Click Import Script(s) to import the scripts contained in the export script.

Viewing Script and Result Quotas

You can view the script limits in the current workspace on the Script Quotas page.

To view the Script Quotas page:

  1. On the Workspace home page, click SQL Workshop and then SQL Scripts.

    The SQL Scripts page appears.

  2. On the Tasks list, click Show Quotas.

    The Script Quotas page appears.

  3. Click OK to return to the SQL Scripts page.

About the Script Quotas Page

The Script Quotas page displays the following limits:

  • Result Quota in Bytes:

    • Maximum Script Result Size. The maximum size in bytes of a single script result.

    • Quota for All Script Results. The maximum size in bytes of all results in this workspace.

    • Used. The number of bytes currently used in this workspace.

    • Free. The number of bytes currently free in this workspace.

    • Quota. A usage bar illustrating the percentage of quota currently used.

  • Script Quota in Bytes:

    • Maximum Script Size. The maximum size in bytes of a single script. The size is set by the Oracle Application Express administrator and cannot be changed from within the Workspace.

    • Maximum Script Size. The maximum size in bytes of a single script.

PK& TOEPK.AOEBPS/sql_proc.htmu Using SQL Commands

3 Using SQL Commands

This section provides information on how to use SQL Commands to create, edit, view, run, and delete SQL commands.

This section contains the following topics:


See Also:


What is SQL Commands?

You can use SQL Commands to create, edit, view, run, and delete SQL commands. A SQL command can contain SQL statements or PL/SQL blocks.

When using SQL Commands, remember the following:

  • SQL commands created in the Query Builder can be accessed in SQL Commands.

  • Saved SQL commands must have names unique within a given workspace.

  • There is no interaction between SQL Commands and SQL Scripts.

  • You can cut and paste a SQL command from SQL Commands to run in the SQL Script Editor.

Accessing SQL Commands

To access SQL Commands:

  1. Log in to the Workspace home page.

    The Workspace home page appears.

  2. To view the SQL Commands home page you can either:

    • Click SQL Workshop and then SQL Commands to drill-down to the SQL Commands home page.

    • Click the down arrow on the right side of the SQL Workshop icon to view a drop down menu. Then select the SQL Commands menu option.

    Description of sql_commands.gif follows
    Description of the illustration sql_commands.gif


    Note:

    For the purposes of consistency, this document uses the primary navigation path (or drill-down approach) when explaining navigation.

About the SQL Commands Home Page

The SQL Commands home page is divided into two sections: a command editor and a display pane. You use the command editor to execute SQL commands and the display pane to view output, saved command lists, and history lists.

Description of sql_com_top.gif follows
Description of the illustration sql_com_top.gif

The top of the SQL Commands home page features a command editor and the following controls:

  • Autocommit. If available, click the Autocommit check box to enable autocommit and disable transactional commands. See "About Transactions in SQL Commands".

  • Display. Make a selection from the Display list to specify the number of rows of output to display simultaneously up to a maximum of 100,000. All rows of DBMS Output are displayed regardless of the Display list setting.

  • Clear Command icon. The Clear Command icon resembles a pencil with an eraser. Use this icon to clear the text in the command editor.

  • Find Tables icon. The Find Tables icon resembles a flashlight. Click this icon to view tables and views. See "Using the Find Tables Icon".

  • Save. Click the Save button to save the contents of the command editor, or the currently highlighted content to a file. You are prompted to enter a name and an optional description. The command appears in the Saved SQL list. See "Saving a SQL Command".

  • Run. Click the Run button (or press Ctrl+Enter) to run the command in the command editor, or the currently highlighted command in the command editor. See "Running a SQL Command".

Selecting a Schema

A schema is a logical container for database objects. To access objects in another schema, make a selection from the Schema list in the upper right side of the page.

Switching to Another SQL Workshop Component

You can navigate to another SQL Workshop component by making a selection from the Component list located on the upper right side of the page:

About the Display Pane

A display pane displays at the bottom of the SQL Commands home page.

Description of sql_com_bottom.gif follows
Description of the illustration sql_com_bottom.gif

The display pane features five tabs:

  • Results. Click the Results tab to see the results from the last successfully executed SQL command. Click DBMS Output at the bottom of the displayed results to display lines of DBMS output. This control only appears when there is DBMS output to display. Click Download to export results to a comma-delimited file on your local file system. See "Viewing Results".

  • Explain. Click the Explain tab to examine the execution plan used by the optimizer for statements that make changes to the database. Objects in the output are linked to the Object Browser. Click the linked object to view its properties in the Object Browser. See "Using Explain Plan".

  • Describe. Enter Describe object_name and click Run to display column definitions for a table or view, or specifications for a function or procedure in the Describe tab. Select links in the Describe results to write that information into the command editor. For example, click a table name to add owner.table, click a column name to add the column name, click a procedure or function name to add the object call with parameters, or click a package name to add the package call.

  • Saved SQL. Click the Saved SQL tab to display a list of all SQL commands saved in the current workspace. Click the command title to load it into the command editor. See "Using Saved Commands"

  • History. Click the History tab to list your recently executed commands. Your last 200 executed commands are saved. See "Using SQL Command History".

Using the Command Editor

You use the command editor in SQL Commands to execute SQL commands within Application Express.

Topics in this section include:

Running a SQL Command

To execute a SQL Command:

  1. On the Workspace home page, click SQL Workshop and then SQL Commands.

    The SQL Commands page appears.

  2. Enter the SQL command you want to run in the command editor.

  3. Click Run (Ctrl+Enter) to execute the command.


    Tip:

    To execute a specific statement, select the statement you want to run and click Run.

    The results appear in the Results pane.

  4. To export the resulting report as a comma-delimited file (.csv) file, click the Download link.


See Also:

"Viewing Results"

About Transactions in SQL Commands

To disable transactional SQL commands in SQL Commands, check the Autocommit check box. Attempting to use any transactional SQL commands such as COMMIT or ROLLBACK when transactional mode is disabled returns an error message.

To enable transactional SQL commands, clear the Autocommit check box. Oracle Application Express verifies that the necessary system resources are available before entering the transactional mode. If resources are unavailable, an error message is displayed.

Transactional mode is a stateful transaction mode where you can, for example, perform an update, select data for review, and COMMIT or ROLLBACK changes. It is implemented using DBMS_JOBS.

Consider the following behavior in transactional mode:

  • Actions are not committed to the database until you enter an explicit COMMIT command.

  • Exiting SQL Commands terminates and rolls back the current transaction.

  • A session timeout terminates and rolls back the current transaction.

    Note that the Environment Setting, SQL Commands Maximum Inactivity in minutes, sets the time before an inactive session times out. The default timeout is 60 minutes. See "Configuring SQL Workshop" in Oracle Application Express Administration Guide.

  • The CSV Export option is not available.

About Unsupported SQL*Plus Commands

SQL Commands does not support SQL*Plus commands. If you attempt to enter a SQL Command Line command such as SET ECHO or DEFINE in SQL Commands, an error message displays.

About Command Termination

You can terminate a command in SQL Commands using a semicolon (;), a slash (/), or with nothing. Consider the following valid alternatives:

SELECT * from emp;
SELECT * from emp
/
SELECT * from emp

The first example demonstrates the use of a semicolon (;), the second example demonstrates using a slash (/), and the final example demonstrates a command with no termination.

Using Bind Variables

Bind variables are supported. You are prompted to enter values for bind variables during command execution. Bind variables are prefixed with a colon.

For example

SELECT * from emp where deptno = :dept

In earlier versions of Oracle Application Express, you could check your Workspace ID by running the command:

SELECT :WORKSPACE_ID FROM dual

In this release, run the following SQL command to check your Workspace ID:

SELECT v('WORKSPACE_ID') FROM dual

Saving a SQL Command

You can save commands you enter in SQL Commands.

To save a SQL command:

  1. On the Workspace home page, click SQL Workshop and then SQL Commands.

    The SQL Commands page appears.

  2. Enter the command in the command editor.

  3. Click Save to save the command.

    You are prompted to enter a name and description for the command.

  4. Click Save, or click Cancel to return to the command editor without saving.

    The saved command is listed in the display area.

Copying a Command

To copy a SQL command:

  1. On the Workspace home page, click SQL Workshop and then SQL Commands.

    The SQL Commands page appears.

  2. Click the Saved SQL tab.

    The Saved SQL list of commands appears in the display pane.

  3. Click the title of the command to load it into the command editor

  4. Click Save to save the command.

  5. Enter a name for the command in the Name field and click Save.

    The command is copied to the new name.

Using Saved Commands

You can access the commands you save and commands saved by other users in the same workspace. You can also access SQL commands you and other users of the same workspace saved from the Query Builder.

Topics in this section include:

Accessing Saved Commands

To access saved SQL commands:

  1. On the Workspace home page, click SQL Workshop and then SQL Commands.

    The SQL Commands page appears.

  2. Click the Saved SQL tab.

    The Saved SQL list of commands appears in the display pane.

  3. Click the title of the command to load it into the command editor.

    The command appears in the editor.

  4. Click Run to execute the command.

About the Saved SQL Pane

The Saved SQL pane displays a list of all commands saved under the current workspace. The list displays commands saved from SQL Commands and SQL commands saved from Query Builder. Saved SQL commands must have unique names in the current workspace. The same name cannot be used in the Query Builder and SQL Commands.

Each command entry shows the owner name, the command name, the first characters of the SQL command, a description if it exists, who last updated the command and when.

Description of proc_savedsql.gif follows
Description of the illustration proc_savedsql.gif

On the Saved SQL pane you can:

  • Show commands by owner. Make a selection from the Owner list to specify the user whose commands you want to display. To view all scripts select -All Users-.

  • Search for a command. Enter a command name or partial name, or enter a code snippet in the Find field and click Go. To view all scripts, leave the Find field blank and click Go. You control how many rows display by making a selection from the Rows list.

  • Set the Number of Output Rows. Make a selection from the Display list to specify the number of Saved SQL commands to display simultaneously.

  • Delete a command. Click the check box associated with each command you want to delete, and click Delete Checked.

  • Sort commands. Click a column heading to sort the listed commands by that column.

Using SQL Command History

Commands you have executed are stored in the command history regardless of whether you explicitly save them. You use SQL Command History to access commands you have executed in SQL Commands.

Topics in this section include:

Accessing a Command from Command History

To access history commands:

  1. On the Workspace home page, click SQL Workshop and then SQL Commands.

    The SQL Commands page appears.

  2. Click the History tab.

    The list of commands in History appears in the display pane.

  3. Click the partial command displayed in the SQL column.

    The command appears in the editor.

About the History Pane

The History pane displays a list of commands you have executed.

Description of proc_history.gif follows
Description of the illustration proc_history.gif

Each history entry shows the time the command was last executed, the first characters of the command, and the schema in which it was executed.

On the History pane you can:

  • Load a command. Click the partial command displayed in the SQL column to load the command into the command editor. When the command loads, it also sets the schema in which it was last executed.

  • Sort by time. Click the Time column heading to sort the command history by least recent or most recent.

Viewing Results

When you execute a SQL command, the results are displayed. The results of the last executed command are available until you execute another SQL command, or leave SQL Commands.

Topics in this section include:

Accessing the Results Pane

To display SQL command results:

  1. On the Workspace home page, click SQL Workshop and then SQL Commands.

    The SQL Commands page appears.

  2. Click the Results tab.

    Description of proc_results.gif follows
    Description of the illustration proc_results.gif

    The HTML formatted results appear in the display pane.

  3. Click DBMS Output to display plain text DBMS output results.

    The DBMS Output control only appears if there is DBMS output in addition to HTML formatted results. It does not appear if there is only DBMS output, or if there is only HTML formatted output.

About the Results Pane

The Results pane displays SQL command results as HTML formatted table. The number of rows returned appears after the output, and the time taken. DBMS output appears as plain text after the HTML formatted results.

On the Results pane you can:

  • Display DBMS output. Click DBMS Output at the bottom of the displayed results to display lines of DBMS output. This control only appears when there is DBMS output to display.

  • Export results. Click CSV Export to export results to a comma-delimited file on your local file system. You are prompted to enter a name and directory for the file.

Using Explain Plan

You can view the explain plan the Oracle Optimizer uses to run your SQL command. It is not necessary to execute the command to view the explain plan.

Description of explaintab.gif follows
Description of the illustration explaintab.gif

Topics in this section include:

Viewing an Explain Plan

To view the Explain Plan:

  1. On the Workspace home page, click SQL Workshop and then SQL Commands.

    The SQL Commands page appears.

  2. Enter or load the command whose plan you want to view.

  3. Click the Explain tab.

    The explain plan used by the optimizer appears in the display pane.

About Explain Plan Pane

The Explain Plan pane shows the plan used by the Oracle Optimizer to run your SQL command. It typically displays the Query Plan, Index Columns and Table Columns used.

On the Explain Plan pane you can:

  • View object definitions. Click the object name in Query Plan to display the object definition in the Object Browser.

  • View index definitions. Click the index name in Table Columns to display the index definition in the Object Browser.

PK<vuPK .Aoa,mimetypePK.AW ^[V:iTunesMetadata.plistPK.AYuMETA-INF/container.xmlPK.A*WOEBPS/obj_brows.htmPK.A[pTOOEBPS/cover.htmPK.A@QNOEBPS/title.htmPK.ASS77OEBPS/preface.htmPK.A_ll9OEBPS/index.htmPK.Aʄ1TTOEBPS/img/o_brws.gifPK.A.D*%OEBPS/img/proc_results.gifPK.Ahk==dOEBPS/img/qry_bldr.gifPK.A<%7%#RPOEBPS/img/script_manage_results.gifPK.A*߄TOuOEBPS/img/qry_bldr_join.gifPK.Az-AA|OEBPS/img/script_results.gifPK.AFPKOEBPS/img/o_brws_srch.gifPK.AY,,OEBPS/img/scripts.gifPK.A.OEBPS/img/script_tasks.gifPK.A44.]*X*dOEBPS/img/proc_savedsql.gifPK.A>191 JOEBPS/img/script_editor.gifPK.A)^{OEBPS/img/script_import.gifPK.AK}=x=OEBPS/img/wrkshp_view_table.gifPK.A!POEBPS/img/qry_bldr_remove_ico.gifPK.A38OEBPS/img/view_icon.gifPK.AYToOEBPS/img/o_brws_hide.gifPK.APWWOEBPS/img/script_pane.gifPK.Al^BSOEBPS/img/qry_bldr_results.gifPK.A#T+O+nOEBPS/img/o_brws_menu_apex.gifPK.A ̈́/!*!KOEBPS/img/script_home.gifPK.A.!++ OEBPS/img/qry_bldr_menu_apex.gifPK.A$''OEBPS/img/sql_com_top.gifPK.AE<72(OEBPS/img/sql_com_bottom.gifPK.A%c'OEBPS/img/script_find.gifPK.A‡{@OEBPS/img/qry_bldr_search.gifPK.Aɝn,'tUOEBPS/img/qry_bldr_add.gifPK.An Q*L*qOEBPS/img/sql_commands.gifPK.Aj66OEBPS/img/qry_bldr_save.gifPK.AFvn)(OEBPS/img/explaintab.gifPK.Ai ++OEBPS/img/proc_history.gifPK.A;TT )OEBPS/img/wrkshp_find_tables.gifPK.A*7=-8-*OEBPS/img/script_export.gifPK.AYMKF#WOEBPS/img_text/o_brws_menu_apex.htmPK.A< "ZOEBPS/img_text/scripts.htmPK.A9I"!y\OEBPS/img_text/sql_com_bottom.htmPK.A?ʒvq^OEBPS/img_text/sql_commands.htmPK.AΤaOEBPS/img_text/script_find.htmPK.AɨUhcdOEBPS/img_text/proc_history.htmPK.As|w IgOEBPS/img_text/script_editor.htmPK.Aq20$jOEBPS/img_text/wrkshp_view_table.htmPK.AFA%lOEBPS/img_text/wrkshp_find_tables.htmPK.A*¼nioOEBPS/img_text/o_brws_hide.htmPK.A qOEBPS/img_text/o_brws.htmPK.A2<ה*%#uOEBPS/img_text/qry_bldr_results.htmPK.A-72wOEBPS/img_text/o_brws_srch.htmPK.A_%OJzOEBPS/img_text/script_home.htmPK.A+U |OEBPS/img_text/qry_bldr.htmPK.A"Aw>9 OEBPS/img_text/qry_bldr_save.htmPK.AZuvq OEBPS/img_text/script_import.htmPK.A% ZOEBPS/img_text/script_export.htmPK.AW KF%IOEBPS/img_text/qry_bldr_menu_apex.htmPK.AN% OEBPS/img_text/script_tasks.htmPK.AOhmh YOEBPS/img_text/proc_savedsql.htmPK.AmOEBPS/img_text/script_pane.htmPK.Ax(OEBPS/img_text/script_manage_results.htmPK.A"QzOEBPS/img_text/qry_bldr_add.htmPK.AgbOEBPS/img_text/proc_results.htmPK.Ah;IOEBPS/img_text/sql_com_top.htmPK.AnFJ50OEBPS/img_text/view_icon.htmPK.AәOQL"~OEBPS/img_text/qry_bldr_search.htmPK.Ahbpk&OEBPS/img_text/qry_bldr_remove_ico.htmPK.AiWR OEBPS/img_text/qry_bldr_join.htmPK.A}!OEBPS/img_text/script_results.htmPK.A?ѭOEBPS/img_text/explaintab.htmPK.A056OEBPS/sql_utl.htmPK.AxOEBPS/qry_bldr.htmPK.A P' OEBPS/toc.ncxPK.A990 OEBPS/content.opfPK.A_ j OEBPS/dcommon/prodbig.gifPK.AY@ p OEBPS/dcommon/doclib.gifPK.Af?ssBr OEBPS/dcommon/oracle-logo.jpgPK.A OEBPS/dcommon/contbig.gifPK.A OEBPS/dcommon/darbbook.cssPK.AMά""!P OEBPS/dcommon/O_signature_clr.JPGPK.APz { OEBPS/dcommon/feedbck2.gifPK.A- OEBPS/dcommon/feedback.gifPK.Aː5 OEBPS/dcommon/booklist.gifPK.AN61K OEBPS/dcommon/cpyr.htmPK.A!:3.+ OEBPS/dcommon/masterix.gifPK.AeӺ1,@- OEBPS/dcommon/doccd.cssPK.A7 / OEBPS/dcommon/larrow.gifPK.A#1 OEBPS/dcommon/indxicon.gifPK.AS'"H4 OEBPS/dcommon/leftnav.gifPK.Ahu,5 OEBPS/dcommon/uarrow.gifPK.Al-OJ8 OEBPS/dcommon/oracle.gifPK.A(fA OEBPS/dcommon/index.gifPK.AGC B OEBPS/dcommon/bookbig.gifPK.AJV^L OEBPS/dcommon/rarrow.gifPK.A枰pkN OEBPS/dcommon/mix.gifPK.Ao"nR M Q OEBPS/dcommon/doccd_epub.jsPK.Av I 5\ OEBPS/dcommon/toc.gifPK.A r~$] OEBPS/dcommon/topnav.gifPK.A1FA^ OEBPS/dcommon/prodicon.gifPK.A3( # zb OEBPS/dcommon/bp_layout.cssPK.Ax[?:o OEBPS/dcommon/bookicon.gifPK.Ap*c^ru OEBPS/dcommon/conticon.gifPK.Aʍy OEBPS/dcommon/blafdoc.cssPK.A+& OEBPS/dcommon/rightnav.gifPK.Aje88 OEBPS/dcommon/oracle-small.JPGPK.Aއ{&! OEBPS/dcommon/help.gifPK.A8i+%;; : OEBPS/toc.htmPK.A& TOE OEBPS/sql_rep.htmPK.A<vu OEBPS/sql_proc.htmPKooe4