From b257dbb6b696f2338e9d0686b704568234c6cfd4 Mon Sep 17 00:00:00 2001 From: rajsite Date: Mon, 24 Jun 2019 17:37:31 -0500 Subject: [PATCH 01/10] Markdown spellcheck integration --- .spelling | 77 ++++ Call3rdPartyWebService/Readme.md | 4 +- CallJavaScriptFromAWebVI/Readme.md | 20 +- CallLabVIEWWebService/Readme.md | 14 +- CallSystemLinkDataServices/Readme.md | 4 +- ConnectWebVIToWebSocketEchoServer/Readme.md | 10 +- CustomizeWithCss/Readme.md | 10 +- EmbedContentIntoWebVI/Readme.md | 4 +- IncorporateUserResources/Readme.md | 14 +- MultipleTopLevelWebVIs/Readme.md | 4 +- Readme.md | 8 +- package-lock.json | 473 ++++++++++++++++++-- package.json | 6 +- 13 files changed, 566 insertions(+), 82 deletions(-) create mode 100644 .spelling diff --git a/.spelling b/.spelling new file mode 100644 index 00000000..18b510bd --- /dev/null +++ b/.spelling @@ -0,0 +1,77 @@ +# markdown-spellcheck spelling configuration file +# Format - lines beginning # are comments +# global dictionary is at the start, file overrides afterwards +# one word per line, to define a file override use ' - filename' +# where filename is relative to this configuration file + +# General language +amongst +i.e. +e.g. +lossy +learnability +unflatten +checkbox +checkboxes +checkmark +checkmarks + +# General Technical Terminology +api +apis +enum +enums +CSV +YML +timestamp +timestamps +namespace +namespaces +dequeue +subdiagram +subdiagrams +subfolder +subfolders + +# Web Terminology +JSON +CSS +UI +CORS +F12 +hostname +LDAP +WebSocket +WebSockets +HTTP +HTTPS +IETF +iframe +iframes +url +urls + +# NI Terminology +LabVIEW +VI +VIs +GVI +GVIs +SubVI +SubVIs +NXG +nipkg +ni +ni.com +SSP +SystemDesigner + +# Web Module Terminology +WebVI +WebVIs +JSLI +SystemLink + +# Example Terminology +webvi-examples +USGS diff --git a/Call3rdPartyWebService/Readme.md b/Call3rdPartyWebService/Readme.md index 5eb3989a..b750ccb4 100644 --- a/Call3rdPartyWebService/Readme.md +++ b/Call3rdPartyWebService/Readme.md @@ -21,10 +21,10 @@ On the panel, this WebVI displays a summary of the results in a data grid and a a. Open `WebApp.gcomp`. b. On the **Document** tab, click **Build**. -**Note:** To view the build output on your machine, click **Locate Directory in Windows Explorer** on the **Document** tab once your application finishes building. You can automatically launch and view the Web application locally by going to **System Designer** >> **Web Server** >> right-click **WebApp.gcomp** >> **Run** +**Note:** To view the build output on your machine, click **Locate Directory in Windows Explorer** on the **Document** tab once your application finishes building. You can automatically launch and view the Web application locally by going to **System Designer** >> **Web Server** >> right-click `WebApp.gcomp` >> **Run** # Hosting -You can manually the move the build output found at `\Call3rdPartyWebService\Builds` to any web server. This project also includes a Distribution (WebApp.lvdist) that can be used to build a package (.nipkg). Packages utilize NI Package Manager to automated the process of installing, upgrading, or removing the web app. A package is also a requirement for hosting a Web application on SystemLink Cloud. +You can manually the move the build output found at `\Call3rdPartyWebService\Builds` to any web server. This project also includes a Distribution (`WebApp.lvdist`) that can be used to build a package (.nipkg). Packages utilize NI Package Manager to automated the process of installing, upgrading, or removing the web app. A package is also a requirement for hosting a Web application on SystemLink Cloud. ## SystemLink Cloud Web App Hosting The following steps can be used to host the web app on SystemLink Cloud diff --git a/CallJavaScriptFromAWebVI/Readme.md b/CallJavaScriptFromAWebVI/Readme.md index 51675f75..4aabf62e 100644 --- a/CallJavaScriptFromAWebVI/Readme.md +++ b/CallJavaScriptFromAWebVI/Readme.md @@ -2,7 +2,7 @@ [![Call JavaScript From a WebVI Demo Link](https://img.shields.io/badge/Details-Demo_Link-green.svg)](https://ni.github.io/webvi-examples/CallJavaScriptFromAWebVI/Builds/WebApp_Web%20Server/) [![Call JavaScript From a WebVI README Link](https://img.shields.io/badge/Details-README_Link-orange.svg)]() -This example is a simple 4-bit calculator using the JavaScript Library Interface (JSLI). The math functions and Log to Console button illustrate different methods of using the JSLI. Add (JSLI) and Multiply (JSLI) use external JavaScript files to implement their functions. The Log to Console button logs text to the browser debug console using the browser-supported console.log function. After building and deploying the WebVI to a browser, open the browser developer tools (Press F12 in most browsers) and select the Console tab to view the console log. +This example is a simple 4-bit calculator using the JavaScript Library Interface (JSLI). The math functions and Log to Console button illustrate different methods of using the JSLI. Add (JSLI) and Multiply (JSLI) use external JavaScript files to implement their functions. The Log to Console button logs text to the browser debug console using the browser-supported `console.log` function. After building and deploying the WebVI to a browser, open the browser developer tools (Press F12 in most browsers) and select the Console tab to view the console log. On the panel, this WebVI has X and Y binary inputs. The user clicks these to change the numerical values of the inputs. The Outputs of X+Y and X*Y are updated with binary and numerical indicators. @@ -19,10 +19,10 @@ On the panel, this WebVI has X and Y binary inputs. The user clicks these to cha a. Open `WebApp.gcomp`. b. On the **Document** tab, click **Build**. -**Note:** To view the build output on your machine, click **Locate Directory in Windows Explorer** on the **Document** tab once your application finishes building. You can automatically launch and view the Web application locally by going to **System Designer** >> **Web Server** >> right-click **WebApp.gcomp** >> **Run** +**Note:** To view the build output on your machine, click **Locate Directory in Windows Explorer** on the **Document** tab once your application finishes building. You can automatically launch and view the Web application locally by going to **System Designer** >> **Web Server** >> right-click `WebApp.gcomp` >> **Run** # Hosting -You can manually the move the build output found at `\CallJavaScriptFromAWebVI\Builds` to any web server. This project also includes a Distribution (WebApp.lvdist) that can be used to build a package (.nipkg). Packages utilize NI Package Manager to automated the process of installing, upgrading, or removing the web app. A package is also a requirement for hosting a Web application on SystemLink Cloud. +You can manually the move the build output found at `\CallJavaScriptFromAWebVI\Builds` to any web server. This project also includes a Distribution (`WebApp.lvdist`) that can be used to build a package (.nipkg). Packages utilize NI Package Manager to automated the process of installing, upgrading, or removing the web app. A package is also a requirement for hosting a Web application on SystemLink Cloud. ## SystemLink Cloud Web App Hosting The following steps can be used to host the web app on SystemLink Cloud @@ -53,14 +53,22 @@ The following steps can be used to host the web app on a local web server 3. Open a web browser and navigate to `http://localhost:8080/WebApp_Web%20Server/` # Details -This WebVI uses the JSLI to interface with simple functions defined in Add.js and Multiply.js, and compares the results with the LabVIEW NXG built-in functions. A single JSLI wraps JavaScript functions in the two external JavaScript files. The external functions are referenced by using the Function prototype symbol, or name, used in the JavaScript file. For example, AddWithJSLI is a function defined in Add.js. The corresponding JSLI function references the Symbol 'AddWithJSLI' to link the JavaScript function to the JSLI function. +This WebVI uses the JSLI to interface with simple functions defined in `Add.js` and `Multiply.js`, and compares the results with the LabVIEW NXG built-in functions. +A single JSLI wraps JavaScript functions in the two external JavaScript files. +The external functions are referenced by using the Function prototype symbol, or name, used in the JavaScript file. +For example, `AddWithJSLI` is a function defined in `Add.js`. +The corresponding JSLI function references the Symbol `AddWithJSLI` to link the JavaScript function to the JSLI function. ![JSLI Node Functions](readme_files/JSLI.png) -The Add and Multiply nodes output the JSLI and built-in function results to the index WebVI. The Multiply.js file demonstrates a simple, external JavaScript function, and the Add.js file demonstrates a more complex JavaScript function. See these files for comments about the functions themselves. +The Add and Multiply nodes output the JSLI and built-in function results to the index WebVI. +The `Multiply.js` file demonstrates a simple, external JavaScript function, and the `Add.js` file demonstrates a more complex JavaScript function. +See these files for comments about the functions themselves. ![Add and Multiply Nodes](readme_files/nodes.png) -The Log to Console button logs text to the browser debug console using the browser-supported console.log function. After building and deploying the WebVI to a browser, open the browser developer tools (Press F12 in most browsers) and select the Console tab to view the console log. The log allows the user to see messages that can potentially help debug their application. +The Log to Console button logs text to the browser debug console using the browser-supported `console.log` function. +After building and deploying the WebVI to a browser, open the browser developer tools (Press F12 in most browsers) and select the Console tab to view the console log. +The log allows the user to see messages that can potentially help debug their application. ![Log to Console](readme_files/log.png) diff --git a/CallLabVIEWWebService/Readme.md b/CallLabVIEWWebService/Readme.md index b9b49aea..ece98b3f 100644 --- a/CallLabVIEWWebService/Readme.md +++ b/CallLabVIEWWebService/Readme.md @@ -29,10 +29,10 @@ Use LabVIEW to create web services that do what WebVIs can't do, such as: a. Open `WebApp.gcomp`. b. On the **Document** tab, click **Build**. -**Note:** To view the build output on your machine, click **Locate Directory in Windows Explorer** on the **Document** tab once your application finishes building. You can automatically launch and view the Web application locally by going to **System Designer** >> **Web Server** >> right-click **WebApp.gcomp** >> **Run** +**Note:** To view the build output on your machine, click **Locate Directory in Windows Explorer** on the **Document** tab once your application finishes building. You can automatically launch and view the Web application locally by going to **System Designer** >> **Web Server** >> right-click `WebApp.gcomp` >> **Run** # Hosting -You can manually the move the build output found at `Builds` to any web server. This project also includes a Distribution (WebApp.lvdist) that can be used to build a package (.nipkg). Packages utilize NI Package Manager to automated the process of installing, upgrading, or removing the web app. A package is also a requirement for hosting a Web application on SystemLink Cloud. +You can manually the move the build output found at `Builds` to any web server. This project also includes a Distribution (`WebApp.lvdist`) that can be used to build a package (.nipkg). Packages utilize NI Package Manager to automated the process of installing, upgrading, or removing the web app. A package is also a requirement for hosting a Web application on SystemLink Cloud. ## SystemLink Cloud Web App Hosting The following steps can be used to host the web app on SystemLink Cloud @@ -70,7 +70,7 @@ The following steps can be used to host the web app on a local web server - **`WebVI/Builds/WebApp_Web Server`** — Contains the built web application, which consists of HTML, JavaScript, the compiled diagram, and other web content. ## The Web Service -The web service is created in LabVIEW and consists of two HTTP endpoint methods (one `GET` and one `POST`) and a few subVIs. +The web service is created in LabVIEW and consists of two HTTP endpoint methods (one `GET` and one `POST`) and a few SubVIs. ### Output Type You must configure the Output Type correctly in order for a LabVIEW web service to send data to a WebVI. @@ -79,8 +79,8 @@ You must configure the Output Type correctly in order for a LabVIEW web service 2. On the left navigation menu, select **HTTP Method VI Settings**. 3. Select a Web Service VI from the table and click the **Output Type** tab under **Web Service VI Properties**. 4. Choose one of the following options. - a. Option 1 (recommended): Select **Stream** and enable the **Use headers** and **Buffered** checkboxes. -**Note:** This option requires the web service VI to flatten return data to JSON and return it through `Write Response.vi`. + a. Option 1 (recommended): Select **Stream** and enable the **Use headers** and **Buffered** checkboxes. +**Note:** This option requires the web service VI to flatten return data to JSON and return it through `Write Response.vi`. b. Option 2: Select **Terminal** and select **JSON** as the output format. **Note:** This option returns data through VI output terminals and serializes LabVIEW data into JSON automatically. @@ -94,9 +94,9 @@ The WebVI makes requests to both of the HTTP endpoint methods in the LabVIEW web This example show how to include your WebVI as part of your LabVIEW Web service for either Windows or Real-Time and deploy them together. This is advantageous if you want to avoid CORS between your WebVI and Web service in production. This also allows the use of relative URLs on the WebVI block diagram. ### Project Setup -The `WebApp_Web Server` directory has been included as **Public Content** within the LabVIE6 project. This was done by right-clicking the Web service in the project and selecting Add **Public Content Folder**. In the **Open** dialog the `WebApp_Web Server` directory was selected. This is an *auto populating* folder so changes made by modifying the WebVI and rebuilding the application in LabVIEW NXG are automatically up taken by LabVIEW project. See more details on this topic at [Integrating Static Content into a Web Service](http://zone.ni.com/reference/en-XX/help/371361N-01/lvhowto/ws_static_content/). +The `WebApp_Web Server` directory has been included as **Public Content** within the LabVIEW project. This was done by right-clicking the Web service in the project and selecting Add **Public Content Folder**. In the **Open** dialog the `WebApp_Web Server` directory was selected. This is an *auto populating* folder so changes made by modifying the WebVI and rebuilding the application in LabVIEW NXG are automatically up taken by LabVIEW project. See more details on this topic at [Integrating Static Content into a Web Service](http://zone.ni.com/reference/en-XX/help/371361N-01/lvhowto/ws_static_content/). ### URL Configuration Enum In the WebVI there is a drop down for selecting the URL configuration. -- **Use Absolute URLs and Local Debugging**: This uses fully qualitied URLs; e.g. `http://127.0.0.1:8001/Web_Server/ParametricCurve` in each HTTP request. Fully qualified URLs must be used if the Web service access by the WebVI is on a different host than the WebVI itself; eg. CORS. The Web server here is the **Local Debugging** Web server built into LabVIEW. This is enabled by right-clicking the Web Service in the LabVIEW project and selecting **Start**. +- **Use Absolute URLs and Local Debugging**: This uses fully qualified URLs; e.g. `http://127.0.0.1:8001/Web_Server/ParametricCurve` in each HTTP request. Fully qualified URLs must be used if the Web service access by the WebVI is on a different host than the WebVI itself; e.g. CORS. The Web server here is the **Local Debugging** Web server built into LabVIEW. This is enabled by right-clicking the Web Service in the LabVIEW project and selecting **Start**. - **Use Relative URLs and Application Web Server**: This uses a relative URLs; e.g. `ParametricCurve` in each HTTP request. The rest of the URL is filled in automatically by the browser. This technique is useful because URLs in code don't need to be changed as the hostname, protocol, or port or the Web service is changed. The Web service and WebVI are deployed to the **Application Web Server** by right-clicking the Web service in the LabVIEW project and selecting **Publish**. diff --git a/CallSystemLinkDataServices/Readme.md b/CallSystemLinkDataServices/Readme.md index 3a3c7a5d..7e5f3763 100644 --- a/CallSystemLinkDataServices/Readme.md +++ b/CallSystemLinkDataServices/Readme.md @@ -197,9 +197,9 @@ The Message API communicates between systems with strings by publishing messages Refer to the [SystemLink API Docs](https://www.systemlinkcloud.com/skyline-api-documentation) to find out more about the SystemLink data services API. -Use the example **index.gviweb** to learn how these APIs can be assembled into an interactive application. Use the examples in **BasicDataServiceExamples.gcomp** for a simple overview of how these APIs are used. Use the LabVIEW examples in **LabVIEWExamples.lvproj** to see how you can interact with SystemLink Cloud from LabVIEW and LabVIEW Real-Time. +Use the example `index.gviweb` to learn how these APIs can be assembled into an interactive application. Use the examples in `BasicDataServiceExamples.gcomp` for a simple overview of how these APIs are used. Use the LabVIEW examples in `LabVIEWExamples.lvproj` to see how you can interact with SystemLink Cloud from LabVIEW and LabVIEW Real-Time. -## The index.gviweb and Main.gvi State Machine +## The `index.gviweb` and `Main.gvi` State Machine State machines implement decision-making algorithms where a set of distinguishable states exists. These states, or subdiagrams of code, carry out specific operations within a program. diff --git a/ConnectWebVIToWebSocketEchoServer/Readme.md b/ConnectWebVIToWebSocketEchoServer/Readme.md index 45cfd28b..5400b560 100644 --- a/ConnectWebVIToWebSocketEchoServer/Readme.md +++ b/ConnectWebVIToWebSocketEchoServer/Readme.md @@ -2,7 +2,7 @@ [![Connect WebVI to WebSocket Echo Server](https://img.shields.io/badge/Details-Demo_Link-green.svg)](https://ni.github.io/webvi-examples/ConnectWebVIToWebSocketEchoServer/Builds/WebApp_Web%20Server/) [![Connect WebVI to WebSocket Echo Server](https://img.shields.io/badge/Details-README_Link-orange.svg)]() -This example uses the Web Module WebSockets API to connect to the WebSocket Echo Server hosted by websocket.org. The WebVI connects to the server, sends a message, and receives the same message from the server. +This example uses the Web Module WebSockets API to connect to the WebSocket Echo Server hosted by https://websocket.org/. The WebVI connects to the server, sends a message, and receives the same message from the server. On the diagram, this WebVI uses WebSocket VIs to open a connection to the echo server, send messages, read received messages, and close the connection. The WebVI also formats sent and received strings to display on the Messages indicator. @@ -19,10 +19,10 @@ On the diagram, this WebVI uses WebSocket VIs to open a connection to the echo s a. Open `WebApp.gcomp`. b. On the **Document** tab, click **Build**. -**Note:** To view the build output on your machine, click **Locate Directory in Windows Explorer** on the **Document** tab once your application finishes building. You can automatically launch and view the Web application locally by going to **System Designer** >> **Web Server** >> right-click **WebApp.gcomp** >> **Run** +**Note:** To view the build output on your machine, click **Locate Directory in Windows Explorer** on the **Document** tab once your application finishes building. You can automatically launch and view the Web application locally by going to **System Designer** >> **Web Server** >> right-click `WebApp.gcomp` >> **Run** # Hosting -You can manually the move the build output found at `\ConnectWebVIToWebSocketEchoServer\Builds` to any web server. This project also includes a Distribution (WebApp.lvdist) that can be used to build a package (.nipkg). Packages utilize NI Package Manager to automated the process of installing, upgrading, or removing the web app. A package is also a requirement for hosting a Web application on SystemLink Cloud. +You can manually the move the build output found at `\ConnectWebVIToWebSocketEchoServer\Builds` to any web server. This project also includes a Distribution (`WebApp.lvdist`) that can be used to build a package (.nipkg). Packages utilize NI Package Manager to automated the process of installing, upgrading, or removing the web app. A package is also a requirement for hosting a Web application on SystemLink Cloud. ## SystemLink Cloud Web App Hosting The following steps can be used to host the web app on SystemLink Cloud @@ -55,11 +55,11 @@ The following steps can be used to host the web app on a local web server # Details The WebSockets are a bidirectional communication protocol that allow interaction between the user's browser and a server. It is defined in Internet Engineering Task Force (IETF) RFC 6455 — The WebSocket Protocol. Most modern browsers support WebSockets. -This example connects to a public echo server hosted by websocket.org. To connect to the echo server, the WebVI uses the WebSocket Open VI and passes in the server URL. This example only allows one connection to the Echo server. +This example connects to a public echo server hosted by https://websocket.org/. To connect to the echo server, the WebVI uses the WebSocket Open VI and passes in the server URL. This example only allows one connection to the Echo server. ![Open WebSocket Connection](readme_files/Open_WS.png) -Once a connection is established, the user sends messages with the Write String VI, and the echo server responds with the same message. The WebVI polls every 50 ms for new messages with the Read String VI. The Read String VI is configured to timeout if no message becomes avaialble to read after 50 milliseconds. +Once a connection is established, the user sends messages with the Write String VI, and the echo server responds with the same message. The WebVI polls every 50 ms for new messages with the Read String VI. The Read String VI is configured to timeout if no message becomes available to read after 50 milliseconds. Additionally, the WebVI does not call Write String VI if Message is empty. Sent and received messages are formatted in the SubVIs and displayed on the Messages indicator. diff --git a/CustomizeWithCss/Readme.md b/CustomizeWithCss/Readme.md index a71a13b1..91248ad2 100644 --- a/CustomizeWithCss/Readme.md +++ b/CustomizeWithCss/Readme.md @@ -4,7 +4,7 @@ This example demonstrates how to customize the styling of a WebVI using CSS. -The underlying technology used by WebVIs is HTML Custom Elements. One of the advantages of using HTML Custom Elements is the ability leverage CSS in a web application that seperates style from the content. For example, you could create a custom CSS file that is shared across your organization for custom styles and layouts. +The underlying technology used by WebVIs is HTML Custom Elements. One of the advantages of using HTML Custom Elements is the ability leverage CSS in a web application that separates style from the content. For example, you could create a custom CSS file that is shared across your organization for custom styles and layouts. ![Screenshot of Demo](readme_files/Screenshot.gif) @@ -23,10 +23,10 @@ You can use this approach in your own projects if you are familiar with CSS and a. On the **Project Files** tab, double-click `WebApp.gcomp` to open the web application component. b. On the **Document** tab, click **Build**. -**Note:** To view the build output on your machine, click **Locate Directory in Windows Explorer** on the **Document** tab once your application finishes building. You can automatically launch and view the Web application locally by going to **System Designer** >> **Web Server** >> right-click **WebApp.gcomp** >> **Run** +**Note:** To view the build output on your machine, click **Locate Directory in Windows Explorer** on the **Document** tab once your application finishes building. You can automatically launch and view the Web application locally by going to **System Designer** >> **Web Server** >> right-click `WebApp.gcomp` >> **Run** # Hosting -You can manually move the build output found at `\CustomizeWithCss\Builds` to any web server. This project also includes a Distribution (WebApp.lvdist) that can be used to build a package (.nipkg). Packages utilize NI Package Manager to automated the process of installing, upgrading, or removing the web app. A package is also a requirement for hosting a Web application on SystemLink Cloud. +You can manually move the build output found at `\CustomizeWithCss\Builds` to any web server. This project also includes a Distribution (`WebApp.lvdist`) that can be used to build a package (.nipkg). Packages utilize NI Package Manager to automated the process of installing, upgrading, or removing the web app. A package is also a requirement for hosting a Web application on SystemLink Cloud. ## SystemLink Cloud Web App Hosting The following steps can be used to host the web app on SystemLink Cloud @@ -59,7 +59,7 @@ The following steps can be used to host the web app on a local web server # Details ## Adding custom CSS rules to a WebVI -1. Add a css file to the root of the WebApp component, for example: `custom_style.css` +1. Add a CSS file to the root of the Web Application component, for example: `custom_style.css` 2. Open `index.gviweb` and launch the HTML source dialog by pressing the `Edit panel HTML` button in the WebVI panel's toolbar. 2. Enter the following line inside the `head` section of the page right before the closing `` tag. ```html @@ -70,7 +70,7 @@ The following steps can be used to host the web app on a local web server 4. Modify `custom_style.css` to include the style rules for the page ## CSS rule behavior -The following section describes the behavior of the CSS rules used in the example. The css rules are included from the `WebApp.gcomp/support/style.css` file. +The following section describes the behavior of the CSS rules used in the example. The style rules are included from the `WebApp.gcomp/support/style.css` file. ```css diff --git a/EmbedContentIntoWebVI/Readme.md b/EmbedContentIntoWebVI/Readme.md index 596e86d0..663508ab 100644 --- a/EmbedContentIntoWebVI/Readme.md +++ b/EmbedContentIntoWebVI/Readme.md @@ -19,7 +19,7 @@ This example demonstrates how to embed custom web content into the WebVI panel u b. On the **Document** tab, click **Build**. # Hosting -You can manually the move the build output found at `\EmbedWebVIIntoContent\Builds` to any web server. This project also includes a Distribution (WebApp.lvdist) that can be used to build a package (.nipkg). Packages utilize NI Package Manager to automate the process of installing, upgrading, or removing the web app. A package is also a requirement for hosting a Web application on SystemLink Cloud. +You can manually the move the build output found at `\EmbedWebVIIntoContent\Builds` to any web server. This project also includes a Distribution (`WebApp.lvdist`) that can be used to build a package (.nipkg). Packages utilize NI Package Manager to automate the process of installing, upgrading, or removing the web app. A package is also a requirement for hosting a Web application on SystemLink Cloud. ## SystemLink Cloud Web App Hosting The following steps can be used to host the web app on SystemLink Cloud @@ -49,7 +49,7 @@ The following steps can be used to host the web app on a local web server 2. Copy the `WebApp_Web Server` directory into the `htdocs` directory. 3. Open a web browser and navigate to `http://localhost:9090/WebApp_Web%20Server/`. -**Note:** To view the build output on your machine, click **Locate Directory in Windows Explorer** on the **Document** tab once your application finishes building. You can automatically launch and view the Web application locally by going to **System Designer** >> **Web Server** >> right-click **WebApp.gcomp** >> **Run** +**Note:** To view the build output on your machine, click **Locate Directory in Windows Explorer** on the **Document** tab once your application finishes building. You can automatically launch and view the Web application locally by going to **System Designer** >> **Web Server** >> right-click `WebApp.gcomp` >> **Run** # Details This section describes the content added to the HTML source of the WebVI to create a web page that shows current weather conditions for Iowa State University. The HTML source can be edited by clicking the `Edit panel HTML` button in the WebVI panel's toolbar. diff --git a/IncorporateUserResources/Readme.md b/IncorporateUserResources/Readme.md index 795c07c4..235f8c91 100644 --- a/IncorporateUserResources/Readme.md +++ b/IncorporateUserResources/Readme.md @@ -20,10 +20,10 @@ You can also use resource files to augment the WebVI's capabilities. For example a. On the **Project Files** tab, double-click `WebApp.gcomp` to open the web application component. b. On the **Document** tab, click **Build**. -**Note:** To view the build output on your machine, click **Locate Directory in Windows Explorer** on the **Document** tab once your application finishes building. You can automatically launch and view the Web application locally by going to **System Designer** >> **Web Server** >> right-click **WebApp.gcomp** >> **Run** +**Note:** To view the build output on your machine, click **Locate Directory in Windows Explorer** on the **Document** tab once your application finishes building. You can automatically launch and view the Web application locally by going to **System Designer** >> **Web Server** >> right-click `WebApp.gcomp` >> **Run** # Hosting -You can manually the move the build output found at `\IncorporateUserResourcest\Builds` to any web server. This project also includes a Distribution (WebApp.lvdist) that can be used to build a package (.nipkg). Packages utilize NI Package Manager to automated the process of installing, upgrading, or removing the web app. A package is also a requirement for hosting a Web application on SystemLink Cloud. +You can manually the move the build output found at `\IncorporateUserResourcest\Builds` to any web server. This project also includes a Distribution (`WebApp.lvdist`) that can be used to build a package (.nipkg). Packages utilize NI Package Manager to automated the process of installing, upgrading, or removing the web app. A package is also a requirement for hosting a Web application on SystemLink Cloud. ## SystemLink Cloud Web App Hosting The following steps can be used to host the web app on SystemLink Cloud @@ -81,12 +81,12 @@ Examples: **Resource:** `WebApp/ChildNamespace2/myImage.jpg` **Relative URL:** `../ChildNamespace2/myImage.jpg` -#### Referencing images (*.png, *.bmp, *.jpg, *.jpeg, *.gif, *.svg, *.webp, *.ico) +#### Referencing image files 1. On the panel of a WebVI, add a **URL Image** control. -2. Select the URL image control. On the **Item** tab, set **Source URL** to the relative URL of the image you you want to reference. +2. Select the URL image control. On the **Item** tab, set **Source URL** to the relative URL of the image you you want to reference. **Note:** The source URL needs to be URL-encoded. For example, `my image.jpg` should be `my%20image.jpg`. -#### Referencing CSS files (*.css) +#### Referencing CSS files 1. On the panel of a WebVI, click the `Edit panel HTML` button in the toolbar to launch the HTML source dialog. 2. Add the following line in between the `` tags: `` @@ -98,7 +98,7 @@ Example: ``` -#### Referencing JavaScript files (*.js) +#### Referencing JavaScript files 1. On the panel of a WebVI, click the `Edit panel HTML` button in the toolbar to launch the HTML source dialog. 2. Add the following line in between the `` tags: `` @@ -110,6 +110,6 @@ Example: ``` -#### Referencing HTML files (*.html, *.htm) +#### Referencing HTML files 1. On the panel of a WebVI, add a **Hyperlink Control**. 2. Select the hyperlink control. On the **Item** tab, set **URL** to the relative URL of the HTML file you you want to reference. diff --git a/MultipleTopLevelWebVIs/Readme.md b/MultipleTopLevelWebVIs/Readme.md index 922908d6..88fba8d4 100644 --- a/MultipleTopLevelWebVIs/Readme.md +++ b/MultipleTopLevelWebVIs/Readme.md @@ -18,10 +18,10 @@ This example demonstrates how to create a web application with multiple pages by a. On the **Project Files** tab, double-click `WebApp.gcomp` to open the web application component. b. On the **Document** tab, click **Build**. -**Note:** To view the build output on your machine, click **Locate Directory in Windows Explorer** on the **Document** tab once your application finishes building. You can automatically launch and view the Web application locally by going to **System Designer** >> **Web Server** >> right-click **WebApp.gcomp** >> **Run** +**Note:** To view the build output on your machine, click **Locate Directory in Windows Explorer** on the **Document** tab once your application finishes building. You can automatically launch and view the Web application locally by going to **System Designer** >> **Web Server** >> right-click `WebApp.gcomp` >> **Run** # Hosting -You can manually the move the build output found at `\MultipleTopLevelVIs\Builds` to any web server. This project also includes a Distribution (WebApp.lvdist) that can be used to build a package (.nipkg). Packages utilize NI Package Manager to automated the process of installing, upgrading, or removing the web app. A package is also a requirement for hosting a Web application on SystemLink Cloud. +You can manually the move the build output found at `\MultipleTopLevelVIs\Builds` to any web server. This project also includes a Distribution (`WebApp.lvdist`) that can be used to build a package (.nipkg). Packages utilize NI Package Manager to automated the process of installing, upgrading, or removing the web app. A package is also a requirement for hosting a Web application on SystemLink Cloud. ## SystemLink Cloud Web App Hosting The following steps can be used to host the web app on SystemLink Cloud diff --git a/Readme.md b/Readme.md index d39091e3..415a0af0 100644 --- a/Readme.md +++ b/Readme.md @@ -6,7 +6,7 @@ This repository has examples for: For previous LabVIEW NXG versions see the [previous releases](https://github.com/ni/webvi-examples/releases/) # webvi-examples -The following examples demonstrate different ways of using WebVIs. Each directory contains example code and a readme explaining the example. +The following examples demonstrate different ways of using WebVIs. Each directory contains example code and a `README.md` file explaining the example. If you have any questions or general feedback about the examples please post in the LabVIEW NXG section of the [LabVIEW Discussion Forums](https://forums.ni.com/t5/LabVIEW/bd-p/170). If there is a technical error or typo with the examples themselves please create and issue on the issues page of this repository. @@ -27,7 +27,7 @@ On the panel, this WebVI displays a summary of the results in a data grid and a [![Call JavaScript From a WebVI Demo Link](https://img.shields.io/badge/Details-Demo_Link-green.svg)](https://ni.github.io/webvi-examples/CallJavaScriptFromAWebVI/Builds/WebApp_Web%20Server/) [![Call JavaScript From a WebVI README Link](https://img.shields.io/badge/Details-README_Link-orange.svg)](CallJavaScriptFromAWebVI) -This example is a simple 4-bit calculator using the JavaScript Library Interface (JSLI). The math functions and Log to Console button illustrate different methods of using the JSLI. Add (JSLI) and Multiply (JSLI) use external JavaScript files to implement their functions. The Log to Console button logs text to the browser debug console using the browser-supported console.log function. After building and deploying the WebVI to a browser, open the browser developer tools (Press F12 in most browsers) and select the Console tab to view the console log. +This example is a simple 4-bit calculator using the JavaScript Library Interface (JSLI). The math functions and Log to Console button illustrate different methods of using the JSLI. Add (JSLI) and Multiply (JSLI) use external JavaScript files to implement their functions. The Log to Console button logs text to the browser debug console using the browser-supported `console.log` function. After building and deploying the WebVI to a browser, open the browser developer tools (Press F12 in most browsers) and select the Console tab to view the console log. On the panel, this WebVI has X and Y binary inputs. The user clicks these to change the numerical values of the inputs. The Outputs of X+Y and X*Y are updated with binary and numerical indicators. @@ -55,7 +55,7 @@ This example demonstrates how to use a WebVI to communicate over networks with S [![Connect WebVI to WebSocket Echo Server](https://img.shields.io/badge/Details-Demo_Link-green.svg)](https://ni.github.io/webvi-examples/ConnectWebVIToWebSocketEchoServer/Builds/WebApp_Web%20Server/) [![Connect WebVI to WebSocket Echo Server](https://img.shields.io/badge/Details-README_Link-orange.svg)](ConnectWebVIToWebSocketEchoServer) -This example uses the Web Module WebSockets API to connect to the WebSocket Echo Server hosted by websocket.org. The WebVI connects to the server, sends a message, and receives the same message from the server. +This example uses the Web Module WebSockets API to connect to the WebSocket Echo Server hosted by https://websocket.org/. The WebVI connects to the server, sends a message, and receives the same message from the server. On the diagram, this WebVI uses WebSocket VIs to open a connection to the echo server, send messages, read received messages, and close the connection. The WebVI also formats sent and received strings to display on the Messages indicator. @@ -67,7 +67,7 @@ On the diagram, this WebVI uses WebSocket VIs to open a connection to the echo s This example demonstrates how to customize the styling of a WebVI using CSS. -The underlying technology used by WebVIs is HTML Custom Elements. One of the advantages of using HTML Custom Elements is the ability leverage CSS in a web application that seperates style from the content. For example, you could create a custom CSS file that is shared across your organization for custom styles and layouts. +The underlying technology used by WebVIs is HTML Custom Elements. One of the advantages of using HTML Custom Elements is the ability leverage CSS in a web application that separates style from the content. For example, you could create a custom CSS file that is shared across your organization for custom styles and layouts. ![Screenshot of Demo](CustomizeWithCss/readme_files/Screenshot.gif) diff --git a/package-lock.json b/package-lock.json index 5d4d7fbc..8b382351 100644 --- a/package-lock.json +++ b/package-lock.json @@ -16,15 +16,45 @@ "uri-js": "^4.2.2" } }, + "ansi-escapes": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-1.4.0.tgz", + "integrity": "sha1-06ioOzGapneTZisT52HHkRQiMG4=" + }, + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" + }, "ansi-styles": { "version": "3.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, "requires": { "color-convert": "^1.9.0" } }, + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "requires": { + "sprintf-js": "~1.0.2" + } + }, + "array-union": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", + "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", + "requires": { + "array-uniq": "^1.0.1" + } + }, + "array-uniq": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", + "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=" + }, "asn1": { "version": "0.2.4", "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", @@ -44,7 +74,6 @@ "version": "2.6.2", "resolved": "https://registry.npmjs.org/async/-/async-2.6.2.tgz", "integrity": "sha512-H1qVYh1MYhEEFLsP97cVKqCGo7KfCyTt6uEWqsTBr9SO84oK9Uwbyd/yCW+6rKJLHksBNUVWZDAjfS+Ccx0Bbg==", - "dev": true, "requires": { "lodash": "^4.17.11" } @@ -70,8 +99,7 @@ "balanced-match": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", - "dev": true + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" }, "bcrypt-pbkdf": { "version": "1.0.2", @@ -86,12 +114,16 @@ "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" } }, + "buffer-from": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", + "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==" + }, "caseless": { "version": "0.12.0", "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", @@ -102,18 +134,34 @@ "version": "2.4.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, "requires": { "ansi-styles": "^3.2.1", "escape-string-regexp": "^1.0.5", "supports-color": "^5.3.0" } }, + "cli-cursor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-1.0.2.tgz", + "integrity": "sha1-ZNo/fValRBLll5S9Ytw1KV6PKYc=", + "requires": { + "restore-cursor": "^1.0.1" + } + }, + "cli-width": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz", + "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=" + }, + "code-point-at": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" + }, "color-convert": { "version": "1.9.3", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, "requires": { "color-name": "1.1.3" } @@ -121,8 +169,7 @@ "color-name": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" }, "combined-stream": { "version": "1.0.8", @@ -136,20 +183,37 @@ "commander": { "version": "2.20.0", "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.0.tgz", - "integrity": "sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ==", - "dev": true + "integrity": "sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ==" }, "concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + }, + "concat-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", + "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", + "requires": { + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" + } }, "core-util-is": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", - "dev": true + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + }, + "create-thenable": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/create-thenable/-/create-thenable-1.0.2.tgz", + "integrity": "sha1-4gMXIMzJV12M+jH1wUbnYqgMBTQ=", + "requires": { + "object.omit": "~2.0.0", + "unique-concat": "~0.2.2" + } }, "dashdash": { "version": "1.14.1", @@ -179,14 +243,32 @@ "escape-string-regexp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" + }, + "esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==" + }, + "exit-hook": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/exit-hook/-/exit-hook-1.1.1.tgz", + "integrity": "sha1-8FyiM7SMBdVP/wd2XfhQfpXAL/g=" }, "extend": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "dev": true + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" + }, + "external-editor": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-1.1.1.tgz", + "integrity": "sha1-Etew24UPf/fnCBuvQAVwAGDEYAs=", + "requires": { + "extend": "^3.0.0", + "spawn-sync": "^1.0.15", + "tmp": "^0.0.29" + } }, "extsprintf": { "version": "1.3.0", @@ -206,6 +288,28 @@ "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=", "dev": true }, + "figures": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz", + "integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=", + "requires": { + "escape-string-regexp": "^1.0.5", + "object-assign": "^4.1.0" + } + }, + "for-in": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", + "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=" + }, + "for-own": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz", + "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=", + "requires": { + "for-in": "^1.0.1" + } + }, "forever-agent": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", @@ -226,8 +330,7 @@ "fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" }, "getpass": { "version": "0.1.7", @@ -242,7 +345,6 @@ "version": "7.1.2", "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", - "dev": true, "requires": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -262,6 +364,18 @@ "subarg": "1.0.X" } }, + "globby": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz", + "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=", + "requires": { + "array-union": "^1.0.1", + "glob": "^7.0.3", + "object-assign": "^4.0.1", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" + } + }, "har-schema": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", @@ -278,11 +392,18 @@ "har-schema": "^2.0.0" } }, + "has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "requires": { + "ansi-regex": "^2.0.0" + } + }, "has-flag": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" }, "http-signature": { "version": "1.2.0", @@ -295,11 +416,15 @@ "sshpk": "^1.7.0" } }, + "hunspell-spellchecker": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/hunspell-spellchecker/-/hunspell-spellchecker-1.0.2.tgz", + "integrity": "sha1-oQsL0voAplq2Kkxrc0zkltMYkQ4=" + }, "inflight": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "dev": true, "requires": { "once": "^1.3.0", "wrappy": "1" @@ -308,8 +433,52 @@ "inherits": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", - "dev": true + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + }, + "inquirer": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-1.2.3.tgz", + "integrity": "sha1-TexvMvN+97sLLtPx0aXD9UUHSRg=", + "requires": { + "ansi-escapes": "^1.1.0", + "chalk": "^1.0.0", + "cli-cursor": "^1.0.1", + "cli-width": "^2.0.0", + "external-editor": "^1.1.0", + "figures": "^1.3.5", + "lodash": "^4.3.0", + "mute-stream": "0.0.6", + "pinkie-promise": "^2.0.0", + "run-async": "^2.2.0", + "rx": "^4.1.0", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.0", + "through": "^2.3.6" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=" + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "requires": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=" + } + } }, "is-absolute-url": { "version": "2.1.0", @@ -317,6 +486,24 @@ "integrity": "sha1-UFMN+4T8yap9vnhS6Do3uTufKqY=", "dev": true }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=" + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "is-promise": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz", + "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=" + }, "is-relative-url": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-relative-url/-/is-relative-url-2.0.0.tgz", @@ -332,6 +519,11 @@ "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", "dev": true }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, "isemail": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/isemail/-/isemail-3.2.0.tgz", @@ -347,6 +539,15 @@ "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", "dev": true }, + "js-yaml": { + "version": "3.13.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", + "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + } + }, "jsbn": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", @@ -398,8 +599,7 @@ "lodash": { "version": "4.17.11", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", - "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", - "dev": true + "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==" }, "markdown-link-check": { "version": "3.7.3", @@ -426,6 +626,29 @@ "marked": "^0.6.2" } }, + "markdown-spellcheck": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/markdown-spellcheck/-/markdown-spellcheck-1.3.1.tgz", + "integrity": "sha512-9uyovbDg3Kh2H89VDtqOkXKS9wuRgpLvOHXzPYWMR71tHQZWt2CAf28EIpXNhkFqqoEjXYAx+fXLuKufApYHRQ==", + "requires": { + "async": "^2.1.4", + "chalk": "^2.0.1", + "commander": "^2.8.1", + "globby": "^6.1.0", + "hunspell-spellchecker": "^1.0.2", + "inquirer": "^1.0.0", + "js-yaml": "^3.10.0", + "marked": "^0.3.5", + "sinon-as-promised": "^4.0.0" + }, + "dependencies": { + "marked": { + "version": "0.3.19", + "resolved": "https://registry.npmjs.org/marked/-/marked-0.3.19.tgz", + "integrity": "sha512-ea2eGWOqNxPcXv8dyERdSr/6FmzvWwzjMxpfGB/sbMccXoct+xY+YukPD+QTUZwyvK7BZwcr4m21WBOW41pAkg==" + } + } + }, "marked": { "version": "0.6.2", "resolved": "https://registry.npmjs.org/marked/-/marked-0.6.2.tgz", @@ -451,7 +674,6 @@ "version": "3.0.4", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", - "dev": true, "requires": { "brace-expansion": "^1.1.7" } @@ -468,26 +690,68 @@ "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", "dev": true }, + "mute-stream": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.6.tgz", + "integrity": "sha1-SJYrGeFp/R38JAs/HnMXYnu8R9s=" + }, + "native-promise-only": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/native-promise-only/-/native-promise-only-0.8.1.tgz", + "integrity": "sha1-IKMYwwy0X3H+et+/eyHJnBRy7xE=" + }, + "number-is-nan": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" + }, "oauth-sign": { "version": "0.9.0", "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", "dev": true }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + }, + "object.omit": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz", + "integrity": "sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=", + "requires": { + "for-own": "^0.1.4", + "is-extendable": "^0.1.1" + } + }, "once": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dev": true, "requires": { "wrappy": "1" } }, + "onetime": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", + "integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=" + }, + "os-shim": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/os-shim/-/os-shim-0.1.3.tgz", + "integrity": "sha1-a2LDeRz3kJ6jXtRuF2WLtBfLORc=" + }, + "os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=" + }, "path-is-absolute": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", - "dev": true + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" }, "performance-now": { "version": "2.1.0", @@ -495,6 +759,29 @@ "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", "dev": true }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" + }, + "pinkie": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", + "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=" + }, + "pinkie-promise": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", + "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", + "requires": { + "pinkie": "^2.0.0" + } + }, + "process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" + }, "progress": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", @@ -519,6 +806,20 @@ "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", "dev": true }, + "readable-stream": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", + "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, "request": { "version": "2.88.0", "resolved": "https://registry.npmjs.org/request/-/request-2.88.0.tgz", @@ -547,11 +848,32 @@ "uuid": "^3.3.2" } }, + "restore-cursor": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-1.0.1.tgz", + "integrity": "sha1-NGYfRohjJ/7SmRR5FSJS35LapUE=", + "requires": { + "exit-hook": "^1.0.0", + "onetime": "^1.0.0" + } + }, + "run-async": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz", + "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=", + "requires": { + "is-promise": "^2.1.0" + } + }, + "rx": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/rx/-/rx-4.1.0.tgz", + "integrity": "sha1-pfE/957zt0D+MKqAP7CfmIBdR4I=" + }, "safe-buffer": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" }, "safer-buffer": { "version": "2.1.2", @@ -559,6 +881,29 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", "dev": true }, + "sinon-as-promised": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/sinon-as-promised/-/sinon-as-promised-4.0.3.tgz", + "integrity": "sha1-wFRbFoX9gTWIpO1pcBJIftEdFRs=", + "requires": { + "create-thenable": "~1.0.0", + "native-promise-only": "~0.8.1" + } + }, + "spawn-sync": { + "version": "1.0.15", + "resolved": "https://registry.npmjs.org/spawn-sync/-/spawn-sync-1.0.15.tgz", + "integrity": "sha1-sAeZVX63+wyDdsKdROih6mfldHY=", + "requires": { + "concat-stream": "^1.4.7", + "os-shim": "^0.1.2" + } + }, + "sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" + }, "sshpk": { "version": "1.16.1", "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", @@ -576,6 +921,32 @@ "tweetnacl": "~0.14.0" } }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "requires": { + "ansi-regex": "^2.0.0" + } + }, "subarg": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/subarg/-/subarg-1.0.0.tgz", @@ -589,11 +960,23 @@ "version": "5.5.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, "requires": { "has-flag": "^3.0.0" } }, + "through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=" + }, + "tmp": { + "version": "0.0.29", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.29.tgz", + "integrity": "sha1-8lEl/w3Z2jzLDC3Tce4SiLuRKMA=", + "requires": { + "os-tmpdir": "~1.0.1" + } + }, "tough-cookie": { "version": "2.4.3", "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz", @@ -627,6 +1010,16 @@ "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", "dev": true }, + "typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=" + }, + "unique-concat": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/unique-concat/-/unique-concat-0.2.2.tgz", + "integrity": "sha1-khD5vcqsxeHjkpSQ18AZ35bxhxI=" + }, "uri-js": { "version": "4.2.2", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", @@ -636,6 +1029,11 @@ "punycode": "^2.1.0" } }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + }, "uuid": { "version": "3.3.2", "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz", @@ -656,8 +1054,7 @@ "wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" } } } diff --git a/package.json b/package.json index 2137c79d..c489afc6 100644 --- a/package.json +++ b/package.json @@ -4,7 +4,8 @@ "description": "Tools for validating LabVIEW NXG WebVI Examples", "private": true, "scripts": { - "test": "glob-exec --foreach \"{./*.md,./*/*.md}\" -- \"npm run markdown-link-check -- -c .markdown-link-check.config.json {{file}} & exit 0\"", + "link": "glob-exec --foreach \"{./*.md,./*/*.md}\" -- \"npm run markdown-link-check -- -c .markdown-link-check.config.json {{file}} & exit 0\"", + "spell": "mdspell --en-us -r --ignore-numbers \"**/*.md\" \"!node_modules/**\"", "markdown-link-check": "markdown-link-check" }, "repository": { @@ -19,6 +20,7 @@ "homepage": "https://github.com/ni/webvi-examples#readme", "devDependencies": { "glob-exec": "^0.1.1", - "markdown-link-check": "^3.7.3" + "markdown-link-check": "^3.7.3", + "markdown-spellcheck": "^1.3.1" } } From 65663d25fa2331c8a882b89b6b778aec772c0419 Mon Sep 17 00:00:00 2001 From: rajsite Date: Mon, 24 Jun 2019 17:40:37 -0500 Subject: [PATCH 02/10] Update markdown link check file names --- .markdown-link-check.config.json => .linkcheck.json | 0 package.json | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) rename .markdown-link-check.config.json => .linkcheck.json (100%) diff --git a/.markdown-link-check.config.json b/.linkcheck.json similarity index 100% rename from .markdown-link-check.config.json rename to .linkcheck.json diff --git a/package.json b/package.json index c489afc6..6afcb9be 100644 --- a/package.json +++ b/package.json @@ -4,7 +4,7 @@ "description": "Tools for validating LabVIEW NXG WebVI Examples", "private": true, "scripts": { - "link": "glob-exec --foreach \"{./*.md,./*/*.md}\" -- \"npm run markdown-link-check -- -c .markdown-link-check.config.json {{file}} & exit 0\"", + "link": "glob-exec --foreach \"{./*.md,./*/*.md}\" -- \"npm run markdown-link-check -- -c .linkcheck.json {{file}} & exit 0\"", "spell": "mdspell --en-us -r --ignore-numbers \"**/*.md\" \"!node_modules/**\"", "markdown-link-check": "markdown-link-check" }, From 64661be4180fe69387f6ba22a557e0cf06acce41 Mon Sep 17 00:00:00 2001 From: rajsite Date: Mon, 24 Jun 2019 17:49:41 -0500 Subject: [PATCH 03/10] Enable travis builds --- .travis.yml | 3 + package-lock.json | 174 ++++++++++++++++++++++++++++++++++------------ package.json | 3 +- 3 files changed, 133 insertions(+), 47 deletions(-) create mode 100644 .travis.yml diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 00000000..88a21240 --- /dev/null +++ b/.travis.yml @@ -0,0 +1,3 @@ +language: node_js +node_js: + - "lts/*" diff --git a/package-lock.json b/package-lock.json index 8b382351..f8b17b22 100644 --- a/package-lock.json +++ b/package-lock.json @@ -19,17 +19,20 @@ "ansi-escapes": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-1.4.0.tgz", - "integrity": "sha1-06ioOzGapneTZisT52HHkRQiMG4=" + "integrity": "sha1-06ioOzGapneTZisT52HHkRQiMG4=", + "dev": true }, "ansi-regex": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true }, "ansi-styles": { "version": "3.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, "requires": { "color-convert": "^1.9.0" } @@ -38,6 +41,7 @@ "version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, "requires": { "sprintf-js": "~1.0.2" } @@ -46,6 +50,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", + "dev": true, "requires": { "array-uniq": "^1.0.1" } @@ -53,7 +58,8 @@ "array-uniq": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", - "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=" + "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=", + "dev": true }, "asn1": { "version": "0.2.4", @@ -74,6 +80,7 @@ "version": "2.6.2", "resolved": "https://registry.npmjs.org/async/-/async-2.6.2.tgz", "integrity": "sha512-H1qVYh1MYhEEFLsP97cVKqCGo7KfCyTt6uEWqsTBr9SO84oK9Uwbyd/yCW+6rKJLHksBNUVWZDAjfS+Ccx0Bbg==", + "dev": true, "requires": { "lodash": "^4.17.11" } @@ -99,7 +106,8 @@ "balanced-match": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", + "dev": true }, "bcrypt-pbkdf": { "version": "1.0.2", @@ -114,6 +122,7 @@ "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -122,7 +131,8 @@ "buffer-from": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", - "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==" + "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", + "dev": true }, "caseless": { "version": "0.12.0", @@ -134,6 +144,7 @@ "version": "2.4.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, "requires": { "ansi-styles": "^3.2.1", "escape-string-regexp": "^1.0.5", @@ -144,6 +155,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-1.0.2.tgz", "integrity": "sha1-ZNo/fValRBLll5S9Ytw1KV6PKYc=", + "dev": true, "requires": { "restore-cursor": "^1.0.1" } @@ -151,17 +163,20 @@ "cli-width": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz", - "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=" + "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=", + "dev": true }, "code-point-at": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", + "dev": true }, "color-convert": { "version": "1.9.3", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, "requires": { "color-name": "1.1.3" } @@ -169,7 +184,8 @@ "color-name": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true }, "combined-stream": { "version": "1.0.8", @@ -183,17 +199,20 @@ "commander": { "version": "2.20.0", "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.0.tgz", - "integrity": "sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ==" + "integrity": "sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ==", + "dev": true }, "concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", + "dev": true }, "concat-stream": { "version": "1.6.2", "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", + "dev": true, "requires": { "buffer-from": "^1.0.0", "inherits": "^2.0.3", @@ -204,12 +223,14 @@ "core-util-is": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", + "dev": true }, "create-thenable": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/create-thenable/-/create-thenable-1.0.2.tgz", "integrity": "sha1-4gMXIMzJV12M+jH1wUbnYqgMBTQ=", + "dev": true, "requires": { "object.omit": "~2.0.0", "unique-concat": "~0.2.2" @@ -243,27 +264,32 @@ "escape-string-regexp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true }, "esprima": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==" + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true }, "exit-hook": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/exit-hook/-/exit-hook-1.1.1.tgz", - "integrity": "sha1-8FyiM7SMBdVP/wd2XfhQfpXAL/g=" + "integrity": "sha1-8FyiM7SMBdVP/wd2XfhQfpXAL/g=", + "dev": true }, "extend": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "dev": true }, "external-editor": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-1.1.1.tgz", "integrity": "sha1-Etew24UPf/fnCBuvQAVwAGDEYAs=", + "dev": true, "requires": { "extend": "^3.0.0", "spawn-sync": "^1.0.15", @@ -292,6 +318,7 @@ "version": "1.7.0", "resolved": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz", "integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=", + "dev": true, "requires": { "escape-string-regexp": "^1.0.5", "object-assign": "^4.1.0" @@ -300,12 +327,14 @@ "for-in": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", - "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=" + "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", + "dev": true }, "for-own": { "version": "0.1.5", "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz", "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=", + "dev": true, "requires": { "for-in": "^1.0.1" } @@ -330,7 +359,8 @@ "fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "dev": true }, "getpass": { "version": "0.1.7", @@ -345,6 +375,7 @@ "version": "7.1.2", "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", + "dev": true, "requires": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -368,6 +399,7 @@ "version": "6.1.0", "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz", "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=", + "dev": true, "requires": { "array-union": "^1.0.1", "glob": "^7.0.3", @@ -396,6 +428,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "dev": true, "requires": { "ansi-regex": "^2.0.0" } @@ -403,7 +436,8 @@ "has-flag": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true }, "http-signature": { "version": "1.2.0", @@ -419,12 +453,14 @@ "hunspell-spellchecker": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/hunspell-spellchecker/-/hunspell-spellchecker-1.0.2.tgz", - "integrity": "sha1-oQsL0voAplq2Kkxrc0zkltMYkQ4=" + "integrity": "sha1-oQsL0voAplq2Kkxrc0zkltMYkQ4=", + "dev": true }, "inflight": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dev": true, "requires": { "once": "^1.3.0", "wrappy": "1" @@ -433,12 +469,14 @@ "inherits": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", + "dev": true }, "inquirer": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-1.2.3.tgz", "integrity": "sha1-TexvMvN+97sLLtPx0aXD9UUHSRg=", + "dev": true, "requires": { "ansi-escapes": "^1.1.0", "chalk": "^1.0.0", @@ -459,12 +497,14 @@ "ansi-styles": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=" + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true }, "chalk": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, "requires": { "ansi-styles": "^2.2.1", "escape-string-regexp": "^1.0.2", @@ -476,7 +516,8 @@ "supports-color": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=" + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true } } }, @@ -489,12 +530,14 @@ "is-extendable": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=" + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", + "dev": true }, "is-fullwidth-code-point": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, "requires": { "number-is-nan": "^1.0.0" } @@ -502,7 +545,8 @@ "is-promise": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz", - "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=" + "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=", + "dev": true }, "is-relative-url": { "version": "2.0.0", @@ -522,7 +566,8 @@ "isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true }, "isemail": { "version": "3.2.0", @@ -543,6 +588,7 @@ "version": "3.13.1", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", + "dev": true, "requires": { "argparse": "^1.0.7", "esprima": "^4.0.0" @@ -599,7 +645,8 @@ "lodash": { "version": "4.17.11", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", - "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==" + "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", + "dev": true }, "markdown-link-check": { "version": "3.7.3", @@ -630,6 +677,7 @@ "version": "1.3.1", "resolved": "https://registry.npmjs.org/markdown-spellcheck/-/markdown-spellcheck-1.3.1.tgz", "integrity": "sha512-9uyovbDg3Kh2H89VDtqOkXKS9wuRgpLvOHXzPYWMR71tHQZWt2CAf28EIpXNhkFqqoEjXYAx+fXLuKufApYHRQ==", + "dev": true, "requires": { "async": "^2.1.4", "chalk": "^2.0.1", @@ -645,7 +693,8 @@ "marked": { "version": "0.3.19", "resolved": "https://registry.npmjs.org/marked/-/marked-0.3.19.tgz", - "integrity": "sha512-ea2eGWOqNxPcXv8dyERdSr/6FmzvWwzjMxpfGB/sbMccXoct+xY+YukPD+QTUZwyvK7BZwcr4m21WBOW41pAkg==" + "integrity": "sha512-ea2eGWOqNxPcXv8dyERdSr/6FmzvWwzjMxpfGB/sbMccXoct+xY+YukPD+QTUZwyvK7BZwcr4m21WBOW41pAkg==", + "dev": true } } }, @@ -674,6 +723,7 @@ "version": "3.0.4", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dev": true, "requires": { "brace-expansion": "^1.1.7" } @@ -693,17 +743,20 @@ "mute-stream": { "version": "0.0.6", "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.6.tgz", - "integrity": "sha1-SJYrGeFp/R38JAs/HnMXYnu8R9s=" + "integrity": "sha1-SJYrGeFp/R38JAs/HnMXYnu8R9s=", + "dev": true }, "native-promise-only": { "version": "0.8.1", "resolved": "https://registry.npmjs.org/native-promise-only/-/native-promise-only-0.8.1.tgz", - "integrity": "sha1-IKMYwwy0X3H+et+/eyHJnBRy7xE=" + "integrity": "sha1-IKMYwwy0X3H+et+/eyHJnBRy7xE=", + "dev": true }, "number-is-nan": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", + "dev": true }, "oauth-sign": { "version": "0.9.0", @@ -714,12 +767,14 @@ "object-assign": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "dev": true }, "object.omit": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz", "integrity": "sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=", + "dev": true, "requires": { "for-own": "^0.1.4", "is-extendable": "^0.1.1" @@ -729,6 +784,7 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dev": true, "requires": { "wrappy": "1" } @@ -736,22 +792,26 @@ "onetime": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", - "integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=" + "integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=", + "dev": true }, "os-shim": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/os-shim/-/os-shim-0.1.3.tgz", - "integrity": "sha1-a2LDeRz3kJ6jXtRuF2WLtBfLORc=" + "integrity": "sha1-a2LDeRz3kJ6jXtRuF2WLtBfLORc=", + "dev": true }, "os-tmpdir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=" + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", + "dev": true }, "path-is-absolute": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "dev": true }, "performance-now": { "version": "2.1.0", @@ -762,17 +822,20 @@ "pify": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true }, "pinkie": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", - "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=" + "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", + "dev": true }, "pinkie-promise": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", + "dev": true, "requires": { "pinkie": "^2.0.0" } @@ -780,7 +843,8 @@ "process-nextick-args": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", + "dev": true }, "progress": { "version": "2.0.3", @@ -810,6 +874,7 @@ "version": "2.3.6", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", + "dev": true, "requires": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", @@ -852,6 +917,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-1.0.1.tgz", "integrity": "sha1-NGYfRohjJ/7SmRR5FSJS35LapUE=", + "dev": true, "requires": { "exit-hook": "^1.0.0", "onetime": "^1.0.0" @@ -861,6 +927,7 @@ "version": "2.3.0", "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz", "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=", + "dev": true, "requires": { "is-promise": "^2.1.0" } @@ -868,12 +935,14 @@ "rx": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/rx/-/rx-4.1.0.tgz", - "integrity": "sha1-pfE/957zt0D+MKqAP7CfmIBdR4I=" + "integrity": "sha1-pfE/957zt0D+MKqAP7CfmIBdR4I=", + "dev": true }, "safe-buffer": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true }, "safer-buffer": { "version": "2.1.2", @@ -885,6 +954,7 @@ "version": "4.0.3", "resolved": "https://registry.npmjs.org/sinon-as-promised/-/sinon-as-promised-4.0.3.tgz", "integrity": "sha1-wFRbFoX9gTWIpO1pcBJIftEdFRs=", + "dev": true, "requires": { "create-thenable": "~1.0.0", "native-promise-only": "~0.8.1" @@ -894,6 +964,7 @@ "version": "1.0.15", "resolved": "https://registry.npmjs.org/spawn-sync/-/spawn-sync-1.0.15.tgz", "integrity": "sha1-sAeZVX63+wyDdsKdROih6mfldHY=", + "dev": true, "requires": { "concat-stream": "^1.4.7", "os-shim": "^0.1.2" @@ -902,7 +973,8 @@ "sprintf-js": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "dev": true }, "sshpk": { "version": "1.16.1", @@ -925,6 +997,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, "requires": { "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", @@ -935,6 +1008,7 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, "requires": { "safe-buffer": "~5.1.0" } @@ -943,6 +1017,7 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, "requires": { "ansi-regex": "^2.0.0" } @@ -960,6 +1035,7 @@ "version": "5.5.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, "requires": { "has-flag": "^3.0.0" } @@ -967,12 +1043,14 @@ "through": { "version": "2.3.8", "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=" + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", + "dev": true }, "tmp": { "version": "0.0.29", "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.29.tgz", "integrity": "sha1-8lEl/w3Z2jzLDC3Tce4SiLuRKMA=", + "dev": true, "requires": { "os-tmpdir": "~1.0.1" } @@ -1013,12 +1091,14 @@ "typedarray": { "version": "0.0.6", "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=" + "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", + "dev": true }, "unique-concat": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/unique-concat/-/unique-concat-0.2.2.tgz", - "integrity": "sha1-khD5vcqsxeHjkpSQ18AZ35bxhxI=" + "integrity": "sha1-khD5vcqsxeHjkpSQ18AZ35bxhxI=", + "dev": true }, "uri-js": { "version": "4.2.2", @@ -1032,7 +1112,8 @@ "util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", + "dev": true }, "uuid": { "version": "3.3.2", @@ -1054,7 +1135,8 @@ "wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", + "dev": true } } } diff --git a/package.json b/package.json index 6afcb9be..63d8946e 100644 --- a/package.json +++ b/package.json @@ -6,7 +6,8 @@ "scripts": { "link": "glob-exec --foreach \"{./*.md,./*/*.md}\" -- \"npm run markdown-link-check -- -c .linkcheck.json {{file}} & exit 0\"", "spell": "mdspell --en-us -r --ignore-numbers \"**/*.md\" \"!node_modules/**\"", - "markdown-link-check": "markdown-link-check" + "markdown-link-check": "markdown-link-check", + "test": "npm run spell && npm run link" }, "repository": { "type": "git", From 3f68659ae76d3b1d4048fd1d0f9353734866c949 Mon Sep 17 00:00:00 2001 From: rajsite Date: Mon, 24 Jun 2019 18:02:22 -0500 Subject: [PATCH 04/10] Avoid early exit for bad urls --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 63d8946e..de25ab38 100644 --- a/package.json +++ b/package.json @@ -4,7 +4,7 @@ "description": "Tools for validating LabVIEW NXG WebVI Examples", "private": true, "scripts": { - "link": "glob-exec --foreach \"{./*.md,./*/*.md}\" -- \"npm run markdown-link-check -- -c .linkcheck.json {{file}} & exit 0\"", + "link": "glob-exec --foreach \"{./*.md,./*/*.md}\" -- \"npm run markdown-link-check -- -c .linkcheck.json {{file}}\"", "spell": "mdspell --en-us -r --ignore-numbers \"**/*.md\" \"!node_modules/**\"", "markdown-link-check": "markdown-link-check", "test": "npm run spell && npm run link" From e3de7a344e8fdf5b362336029a618a816b7a883d Mon Sep 17 00:00:00 2001 From: rajsite Date: Mon, 24 Jun 2019 20:17:25 -0500 Subject: [PATCH 05/10] Markdown lint and CSS guide first draft --- .markdownlint.json | 7 + Call3rdPartyWebService/Readme.md | 30 +- CallJavaScriptFromAWebVI/Readme.md | 34 +- CallLabVIEWWebService/Readme.md | 69 ++-- CallSystemLinkDataServices/Readme.md | 90 +++-- ConnectWebVIToWebSocketEchoServer/Readme.md | 34 +- CustomizeWithCss/Readme.md | 53 ++- EmbedContentIntoWebVI/Readme.md | 39 +- Guides/CSS/README.md | 345 ++++++++++++++++++ .../CSS/readme_files/htmlclassattribute.png | Bin 0 -> 1826 bytes Guides/JSLI/README.md | 3 + Guides/Readme.md | 17 + IncorporateUserResources/Readme.md | 65 +++- MultipleTopLevelWebVIs/Readme.md | 35 +- Readme.md | 34 +- package-lock.json | 140 +++++++ package.json | 7 +- 17 files changed, 834 insertions(+), 168 deletions(-) create mode 100644 .markdownlint.json create mode 100644 Guides/CSS/README.md create mode 100644 Guides/CSS/readme_files/htmlclassattribute.png create mode 100644 Guides/JSLI/README.md create mode 100644 Guides/Readme.md diff --git a/.markdownlint.json b/.markdownlint.json new file mode 100644 index 00000000..7bacd0c1 --- /dev/null +++ b/.markdownlint.json @@ -0,0 +1,7 @@ +{ + "default": true, + "line-length": false, + "no-bare-urls": false, + "no-empty-links": false, + "no-trailing-punctuation": false +} diff --git a/Call3rdPartyWebService/Readme.md b/Call3rdPartyWebService/Readme.md index b750ccb4..b6e43da5 100644 --- a/Call3rdPartyWebService/Readme.md +++ b/Call3rdPartyWebService/Readme.md @@ -1,4 +1,5 @@ # Call 3rd Party Web Service + [![Call 3rd Party Web Service Demo Link](https://img.shields.io/badge/Details-Demo_Link-green.svg)](https://ni.github.io/webvi-examples/Call3rdPartyWebService/Builds/WebApp_Web%20Server/) [![Call 3rd Party Web Service README Link](https://img.shields.io/badge/Details-README_Link-orange.svg)]() @@ -10,10 +11,12 @@ On the panel, this WebVI displays a summary of the results in a data grid and a ![Screenshot of Demo](readme_files/Screenshot.gif) -# Dependencies +## Dependencies + - LabVIEW NXG Web Module -# Setup +## Setup + 1. Clone the [ni/webvi-examples](https://github.com/ni/webvi-examples) repository to your machine. 2. Open `Call3rdPartyWebService/Call3rdPartyWebService.lvproject` 3. Open `index.gviweb` and click the **Run** button. @@ -23,11 +26,14 @@ On the panel, this WebVI displays a summary of the results in a data grid and a **Note:** To view the build output on your machine, click **Locate Directory in Windows Explorer** on the **Document** tab once your application finishes building. You can automatically launch and view the Web application locally by going to **System Designer** >> **Web Server** >> right-click `WebApp.gcomp` >> **Run** -# Hosting +## Hosting + You can manually the move the build output found at `\Call3rdPartyWebService\Builds` to any web server. This project also includes a Distribution (`WebApp.lvdist`) that can be used to build a package (.nipkg). Packages utilize NI Package Manager to automated the process of installing, upgrading, or removing the web app. A package is also a requirement for hosting a Web application on SystemLink Cloud. -## SystemLink Cloud Web App Hosting +### SystemLink Cloud Web App Hosting + The following steps can be used to host the web app on SystemLink Cloud + 1. Open `Call3rdPartyWebService.lvproject`. 2. Open `WebApp.lvdist`. 3. Click the build icon in the top command bar of this distribution document @@ -35,26 +41,32 @@ The following steps can be used to host the web app on SystemLink Cloud 5. Click the **Choose nipkg** button and select the nipkg built in step 3. 6. When the upload is complete, click on your newly uploaded Web app from your list of Web apps -## Local Hosting +### Local Hosting + The following steps can be used to host the web app on a local web server -### Hosting on the NI Web Server with a nipkg + +#### Hosting on the NI Web Server with a nipkg + 1. Open `Call3rdPartyWebService.lvproject` 2. Open `WebApp.lvdist`. 3. Click the build icon in the top command bar of this distribution document 4. Double-click the nipkg and follow the on screen instructions 5. Open a web browser and navigate to `http://localhost:9090/call3rdpartywebservice/` -### Hosting on the NI Web Server by manually moving files +#### Hosting on the NI Web Server by manually moving files + 1. Open `C:\Program Files\National Instruments\Shared\Web Server\htdocs` 2. Copy the `WebApp_Web Server` directory into the `htdocs` directory 3. Open a web browser and navigate to `http://localhost:9090/WebApp_Web%20Server/` -### Hosting on the LabVIEW 2009-2017 Web Server +#### Hosting on the LabVIEW 2009-2017 Web Server + 1. Open `C:\Program Files (x86)\National Instruments\Shared\NI WebServer\www` 2. Copy the `WebApp_Web Server` directory into the `www` directory 3. Open a web browser and navigate to `http://localhost:8080/WebApp_Web%20Server/` -# Details +## Details + A web service is a collection of functions that can be called through the web to trigger behavior or return data. Many websites offer these APIs as a way for third-party developers to build new applications using the website's underlying data or functionality. Many web services are open and public like the Earthquake API. Others require registration and API keys that restrict access to specific users and limit the load on the service. diff --git a/CallJavaScriptFromAWebVI/Readme.md b/CallJavaScriptFromAWebVI/Readme.md index 4aabf62e..cb547ff9 100644 --- a/CallJavaScriptFromAWebVI/Readme.md +++ b/CallJavaScriptFromAWebVI/Readme.md @@ -1,4 +1,5 @@ # Call JavaScript From a WebVI + [![Call JavaScript From a WebVI Demo Link](https://img.shields.io/badge/Details-Demo_Link-green.svg)](https://ni.github.io/webvi-examples/CallJavaScriptFromAWebVI/Builds/WebApp_Web%20Server/) [![Call JavaScript From a WebVI README Link](https://img.shields.io/badge/Details-README_Link-orange.svg)]() @@ -8,10 +9,12 @@ On the panel, this WebVI has X and Y binary inputs. The user clicks these to cha ![Screenshot of Demo](readme_files/Screenshot.gif) -# Dependencies +## Dependencies + - LabVIEW NXG Web Module -# Setup +## Setup + 1. Clone the [ni/webvi-examples](https://github.com/ni/webvi-examples) repository to your machine. 2. Open `CallJavaScriptFromAWebVI\CallJavaScriptFromAWebVI.lvproject` 3. Open `index.gviweb` and click the **Run** button. @@ -21,11 +24,14 @@ On the panel, this WebVI has X and Y binary inputs. The user clicks these to cha **Note:** To view the build output on your machine, click **Locate Directory in Windows Explorer** on the **Document** tab once your application finishes building. You can automatically launch and view the Web application locally by going to **System Designer** >> **Web Server** >> right-click `WebApp.gcomp` >> **Run** -# Hosting +## Hosting + You can manually the move the build output found at `\CallJavaScriptFromAWebVI\Builds` to any web server. This project also includes a Distribution (`WebApp.lvdist`) that can be used to build a package (.nipkg). Packages utilize NI Package Manager to automated the process of installing, upgrading, or removing the web app. A package is also a requirement for hosting a Web application on SystemLink Cloud. -## SystemLink Cloud Web App Hosting +### SystemLink Cloud Web App Hosting + The following steps can be used to host the web app on SystemLink Cloud + 1. Open `CallJavaScriptFromAWebVI.lvproject`. 2. Open `WebApp.lvdist`. 3. Click the build icon in the top command bar of this distribution document @@ -33,26 +39,32 @@ The following steps can be used to host the web app on SystemLink Cloud 5. Click the **Choose nipkg** button and select the nipkg built in step 3. 6. When the upload is complete, click on your newly uploaded Web app from your list of Web apps -## Local Hosting +### Local Hosting + The following steps can be used to host the web app on a local web server -### Hosting on the NI Web Server with a nipkg + +#### Hosting on the NI Web Server with a nipkg + 1. Open `CallJavaScriptFromAWebVI.lvproject` 2. Open `WebApp.lvdist`. 3. Click the build icon in the top command bar of this distribution document 4. Double-click the nipkg and follow the on screen instructions 5. Open a web browser and navigate to `http://localhost:9090/CallJavaScriptFromAWebVI/` -### Hosting on the NI Web Server by manually moving files +#### Hosting on the NI Web Server by manually moving files + 1. Open `C:\Program Files\National Instruments\Shared\Web Server\htdocs` 2. Copy the `WebApp_Web Server` directory into the `htdocs` directory 3. Open a web browser and navigate to `http://localhost:9090/WebApp_Web%20Server/` -### Hosting on the LabVIEW 2009-2017 Web Server +#### Hosting on the LabVIEW 2009-2017 Web Server + 1. Open `C:\Program Files (x86)\National Instruments\Shared\NI WebServer\www` 2. Copy the `WebApp_Web Server` directory into the `www` directory 3. Open a web browser and navigate to `http://localhost:8080/WebApp_Web%20Server/` -# Details +## Details + This WebVI uses the JSLI to interface with simple functions defined in `Add.js` and `Multiply.js`, and compares the results with the LabVIEW NXG built-in functions. A single JSLI wraps JavaScript functions in the two external JavaScript files. The external functions are referenced by using the Function prototype symbol, or name, used in the JavaScript file. @@ -63,12 +75,12 @@ The corresponding JSLI function references the Symbol `AddWithJSLI` to link the The Add and Multiply nodes output the JSLI and built-in function results to the index WebVI. The `Multiply.js` file demonstrates a simple, external JavaScript function, and the `Add.js` file demonstrates a more complex JavaScript function. -See these files for comments about the functions themselves. +See these files for comments about the functions themselves. ![Add and Multiply Nodes](readme_files/nodes.png) The Log to Console button logs text to the browser debug console using the browser-supported `console.log` function. After building and deploying the WebVI to a browser, open the browser developer tools (Press F12 in most browsers) and select the Console tab to view the console log. -The log allows the user to see messages that can potentially help debug their application. +The log allows the user to see messages that can potentially help debug their application. ![Log to Console](readme_files/log.png) diff --git a/CallLabVIEWWebService/Readme.md b/CallLabVIEWWebService/Readme.md index ece98b3f..215454ee 100644 --- a/CallLabVIEWWebService/Readme.md +++ b/CallLabVIEWWebService/Readme.md @@ -1,25 +1,30 @@ # Call LabVIEW Web Service + [![Call LabVIEW Web Service Demo Link](https://img.shields.io/badge/Details-Demo_Link-green.svg)](https://ni.github.io/webvi-examples/CallLabVIEWWebService/Builds/WebApp_Web%20Server/) [![Call LabVIEW Web Service README Link](https://img.shields.io/badge/Details-README_Link-orange.svg)]() -__Note: The Call LabVIEW Web Service demo requires the included LabVIEW Web Service to be running locally on your machine__ +__Note: The Call LabVIEW Web Service demo requires the included LabVIEW Web Service to be running locally on your machine.__ This example demonstrates how to create a WebVI that makes requests to a LabVIEW web service, and how to create a LabVIEW web service that can respond to requests from a WebVI. ![Screenshot of Demo](readme_files/Screenshot.gif) -# Usage +## Usage + Use LabVIEW to create web services that do what WebVIs can't do, such as: - - Complex data analysis - - Signal processing - - Interacting with hardware - - Reading and writing data to and from file systems and databases -# Dependencies +- Complex data analysis +- Signal processing +- Interacting with hardware +- Reading and writing data to and from file systems and databases + +## Dependencies + - LabVIEW NXG Web Module - LabVIEW 2016 or later -# Setup +## Setup + 1. Clone the [ni/webvi-examples](https://github.com/ni/webvi-examples) repository to your machine. 2. Open `CallLabVIEWWebService\WebService\WebService.lvproj` in LabVIEW. 3. In the **Project Explorer**, right-click **Web Server** and select **Start**. @@ -31,11 +36,14 @@ Use LabVIEW to create web services that do what WebVIs can't do, such as: **Note:** To view the build output on your machine, click **Locate Directory in Windows Explorer** on the **Document** tab once your application finishes building. You can automatically launch and view the Web application locally by going to **System Designer** >> **Web Server** >> right-click `WebApp.gcomp` >> **Run** -# Hosting +## Hosting + You can manually the move the build output found at `Builds` to any web server. This project also includes a Distribution (`WebApp.lvdist`) that can be used to build a package (.nipkg). Packages utilize NI Package Manager to automated the process of installing, upgrading, or removing the web app. A package is also a requirement for hosting a Web application on SystemLink Cloud. -## SystemLink Cloud Web App Hosting +### SystemLink Cloud Web App Hosting + The following steps can be used to host the web app on SystemLink Cloud + 1. Open `CallLabVIEWWebService\CallLabVIEWWebService.lvproject`. 2. Open `WebApp.lvdist`. 3. Click the build icon in the top command bar of this distribution document @@ -43,37 +51,46 @@ The following steps can be used to host the web app on SystemLink Cloud 5. Click the **Choose nipkg** button and select the nipkg built in step 3. 6. When the upload is complete, click on your newly uploaded Web app from your list of Web apps -## Local Hosting +### Local Hosting + The following steps can be used to host the web app on a local web server -### Hosting on the NI Web Server with a nipkg + +#### Hosting on the NI Web Server with a nipkg + 1. Open `CallLabVIEWWebService.lvproject` 2. Open `WebApp.lvdist`. 3. Click the build icon in the top command bar of this distribution document 4. Double-click the nipkg and follow the on screen instructions 5. Open a web browser and navigate to `http://localhost:9090/calllvwebservice/` -### Hosting on the LabVIEW 2009-2017 Web Server +#### Hosting on the LabVIEW 2009-2017 Web Server + 1. Open `C:\Program Files (x86)\National Instruments\Shared\NI WebServer\www`. 2. Copy the `WebApp_Web Server` directory into the `www` directory. 3. Open a web browser and navigate to `http://localhost:8080/WebApp_Web%20Server/` -### Hosting on the NI Web Server +#### Hosting on the NI Web Server + 1. Open `C:\Program Files\National Instruments\Shared\Web Server\htdocs`. 2. Copy the `WebApp_Web Server` directory into the `htdocs` directory. 3. Open a web browser and navigate to `http://localhost:9090/WebApp_Web%20Server/`. -# Details +## Details + +### Important Directories -## Important Directories - **`Web Service`** — Contains the LabVIEW web service project. - **`WebVI`** — Contains the LabVIEW NXG web application project, which includes the WebVI. - **`WebVI/Builds/WebApp_Web Server`** — Contains the built web application, which consists of HTML, JavaScript, the compiled diagram, and other web content. -## The Web Service +### The Web Service + The web service is created in LabVIEW and consists of two HTTP endpoint methods (one `GET` and one `POST`) and a few SubVIs. -### Output Type +#### Output Type + You must configure the Output Type correctly in order for a LabVIEW web service to send data to a WebVI. + 1. In the **Project Explorer**, right-click **Web Server** and select **Properties**. **Note:** The Web Server must be stopped before you can edit its properties. 2. On the left navigation menu, select **HTTP Method VI Settings**. @@ -84,19 +101,25 @@ You must configure the Output Type correctly in order for a LabVIEW web service b. Option 2: Select **Terminal** and select **JSON** as the output format. **Note:** This option returns data through VI output terminals and serializes LabVIEW data into JSON automatically. -### CORS +#### CORS + Cross-Origin Resource Sharing (CORS) allows a Web Service VI to respond to HTTP requests from a different server than where it is hosted. `AddCORSHeaders.vi` adds HTTP headers to allow requests from any origin. This configuration is necessary if your WebVI is not hosted on the LabVIEW web server. -## The WebVI +### The WebVI + The WebVI makes requests to both of the HTTP endpoint methods in the LabVIEW web service and displays the returned data. For the POST method, it collects some parameter information from the panel controls and serializes it into the POST buffer. -## Bundling with LabVIEW Web Services +### Bundling with LabVIEW Web Services + This example show how to include your WebVI as part of your LabVIEW Web service for either Windows or Real-Time and deploy them together. This is advantageous if you want to avoid CORS between your WebVI and Web service in production. This also allows the use of relative URLs on the WebVI block diagram. -### Project Setup +#### Project Setup + The `WebApp_Web Server` directory has been included as **Public Content** within the LabVIEW project. This was done by right-clicking the Web service in the project and selecting Add **Public Content Folder**. In the **Open** dialog the `WebApp_Web Server` directory was selected. This is an *auto populating* folder so changes made by modifying the WebVI and rebuilding the application in LabVIEW NXG are automatically up taken by LabVIEW project. See more details on this topic at [Integrating Static Content into a Web Service](http://zone.ni.com/reference/en-XX/help/371361N-01/lvhowto/ws_static_content/). -### URL Configuration Enum +#### URL Configuration Enum + In the WebVI there is a drop down for selecting the URL configuration. + - **Use Absolute URLs and Local Debugging**: This uses fully qualified URLs; e.g. `http://127.0.0.1:8001/Web_Server/ParametricCurve` in each HTTP request. Fully qualified URLs must be used if the Web service access by the WebVI is on a different host than the WebVI itself; e.g. CORS. The Web server here is the **Local Debugging** Web server built into LabVIEW. This is enabled by right-clicking the Web Service in the LabVIEW project and selecting **Start**. - **Use Relative URLs and Application Web Server**: This uses a relative URLs; e.g. `ParametricCurve` in each HTTP request. The rest of the URL is filled in automatically by the browser. This technique is useful because URLs in code don't need to be changed as the hostname, protocol, or port or the Web service is changed. The Web service and WebVI are deployed to the **Application Web Server** by right-clicking the Web service in the LabVIEW project and selecting **Publish**. diff --git a/CallSystemLinkDataServices/Readme.md b/CallSystemLinkDataServices/Readme.md index 7e5f3763..64587648 100644 --- a/CallSystemLinkDataServices/Readme.md +++ b/CallSystemLinkDataServices/Readme.md @@ -1,4 +1,5 @@ # Call SystemLink Data Services + [![Call SystemLink Data Services](https://img.shields.io/badge/Details-Demo_Link-green.svg)](https://ni.github.io/webvi-examples/CallSystemLinkDataServices/Builds/WebApp_Web%20Server/) [![Call SystemLink Data Services README Link](https://img.shields.io/badge/Details-README_Link-orange.svg)]() @@ -11,7 +12,8 @@ Once you complete the necessary steps, you will know: ![Data Services](readme_files/data-service-cloud.png) -# Interacting with the Web Application +## Interacting with the Web Application + From the panel of the web app, you will be able to: - Connect to an on-premises web server or SystemLink Cloud by supplying the required credentials. @@ -22,7 +24,8 @@ From the panel of the web app, you will be able to: _Figure: When hosting a WebVI on the NI Web Server, you do not need to supply credentials again once you logged into the SystemLink web interface._ -# Software Requirements +## Software Requirements + To use SystemLink data services, you need one of the following product combinations: - LabVIEW NXG with [LabVIEW NXG Web Module](http://www.ni.com/labview/webmodule/) @@ -30,7 +33,8 @@ To use SystemLink data services, you need one of the following product combinati Use NI Package Manager to install the products you need. If you do not have NI Package Manager, [download](http://search.ni.com/nisearch/app/main/p/bot/no/ap/tech/lang/en/pg/1/sn/ssnav:dwl/q/ni%20package%20manager/) and install the latest version now. -# Choosing Your Goal +## Choosing Your Goal + Do you want to learn about connecting your web application to SystemLink Cloud or SystemLink Server? Click one of the following links to jump to your workflow: - [I want to connect to SystemLink Cloud](#systemlink-cloud). @@ -38,10 +42,11 @@ Do you want to learn about connecting your web application to SystemLink Cloud o - [I want to learn about the details involved in creating the WebVI](#webvi-details). - [I want to learn about security](#security). -# SystemLink Cloud +## SystemLink Cloud + In this section, you’ll learn how to set up, build, and connect your web application to SystemLink Cloud from LabVIEW NXG Web Module. -## What You Need to Connect to SystemLink Cloud from LabVIEW 3.0 NXG Web Module +### What You Need to Connect to SystemLink Cloud from LabVIEW 3.0 NXG Web Module To connect your web application to SystemLink Cloud from LabVIEW NXG Web Module, you need a server URL and an API key. The API key authenticates the web application running on your local machine for SystemLink Cloud – much like your ni.com credentials authenticate your identity. @@ -51,31 +56,32 @@ To connect your web application to SystemLink Cloud from LabVIEW NXG Web Module, _Figure: Note the input differentiation between connecting to the SystemLink Cloud server from LabVIEW or LabVIEW NXG Web Module vs. hosting your web application on SystemLink Cloud._ -## What is an API Key? +### What is an API Key? + An API key authenticates an application trying to access SystemLink Cloud. It helps to think of an API key like login credentials. When you log in somewhere, your username and password authenticate who you are and, if they’re correct, grant you access. An API key functions similarly for your application connecting to the SystemLink Cloud server. -## Obtaining an API Key +### Obtaining an API Key + 1. Go to [Security](https://www.systemlinkcloud.com/security). 2. Click **+ NEW API KEY** to create an API key. 3. Click **Copy key** to save the API key. ->**Note:** You only get to see an API key once, so keep it somewhere safe and only provide it to those you trust. If you delete an API key, all applications using that API key will no longer be able to connect to SystemLink Cloud. + >**Note:** You only get to see an API key once, so keep it somewhere safe and only provide it to those you trust. If you delete an API key, all applications using that API key will no longer be able to connect to SystemLink Cloud. -## Connecting to SystemLink Cloud from LabVIEW NXG Web Module +### Connecting to SystemLink Cloud from LabVIEW NXG Web Module To connect to SystemLink Cloud from LabVIEW NXG Web Module, you need a server URL and an API key. 1. Go to [Security](https://www.systemlinkcloud.com/security). 2. Click **+ NEW API KEY** button to create an API key. 3. Click **Copy key** to save the API key. ->**Note:** You will only see the API key once, so keep it somewhere safe. - + >**Note:** You will only see the API key once, so keep it somewhere safe. 4. Open LabVIEW NXG Web Module and create a WebVI. ->**Tip:** Use the Web Application Project template to easily create a WebVI. Navigate to the **Projects** tab and click **Web Application Project** to launch it. + >**Tip:** Use the Web Application Project template to easily create a WebVI. Navigate to the **Projects** tab and click **Web Application Project** to launch it. 5. Go to the diagram and navigate to **Data Communications»SystemLink»Configuration**. 6. Select the **Open Configuration** node and drag it to the diagram. 7. In the **Function configuration** dialog box of the Open Configuration node, select **API Key**. Changing the configuration of this node enables you to establish a connection with SystemLink Cloud. ->**Note:** You can also change the Function configuration in the **Item** tab of the Configuration pane. + >**Note:** You can also change the Function configuration in the **Item** tab of the Configuration pane. 8. Provide the copied API key as the **api key** and enter `https://api.systemlinkcloud.com` as the **server url**. @@ -83,21 +89,21 @@ To connect to SystemLink Cloud from LabVIEW NXG Web Module, you need a server UR 1. Clone the [ni/webvi-examples](https://github.com/ni/webvi-examples) repository to your machine. [Go here](https://help.github.com/articles/cloning-a-repository/) if you’re new to cloning repositories on GitHub. 2. Open the **Call SystemLink Data Services** example in LabVIEW NXG Web Module. -> **Note**: You can search for it by name in the search bar or navigate to **Learning»Examples»Programming WebVIs»Call SystemLink Data Services** to launch it. + > **Note**: You can search for it by name in the search bar or navigate to **Learning»Examples»Programming WebVIs»Call SystemLink Data Services** to launch it. 3. Open `index.gviweb` and click **Run**. 4. On the **Projects Files** tab, double-click the `WebApp.gcomp` to open it. 5. On the **Document** tab, click **Build** to build your web application. + > **Note**: You can automatically launch and view the web application locally by right-clicking the web application in SystemDesigner and then clicking **Run**. -> **Note**: You can automatically launch and view the web application locally by right-clicking the web application in SystemDesigner and then clicking **Run**. +### Cloud Hosting Overview -## Cloud Hosting Overview After you create a web application and build the package in LabVIEW NXG Web Module, you need to move it to a web server. This enables administrators to access it from a web browser. Copy your entire web application output directory to any web server you choose. >**Note**: To navigate to your web application output on your machine, click **Locate directory in Windows Explorer** on the **Document** tab of your web application component document. You can also access the build output by navigating to your web application’s project folder manually (`\CallSystemLinkDataServices\Builds`). Furthermore, this project includes a distribution document (`WebApp.lvdist`), which can be used to build a package (`.nipkg`). A package is also required to host a web application on SystemLink Cloud. [Go here](http://www.ni.com/documentation/en/labview/3.0/application-builder/distributing-app-lib/) if you’re interested in learning more about distributing applications. -## Hosting a Web Application on SystemLink Cloud +### Hosting a Web Application on SystemLink Cloud For SystemLink Cloud to host your web application, use your ni.com credentials for authentication. >**Note:** Leave the **api key** and **server url** inputs empty to minimize security vulnerabilities. @@ -116,10 +122,12 @@ For SystemLink Cloud to host your web application, use your ni.com credentials f 12. To upload your web application, click **Choose .NIPKG** and select the package you just built. 13. Once the upload is complete, click on your web app to interact with it. -# SystemLink Server +## SystemLink Server + In this section, you’ll learn how to set up, build, and connect your web application to the SystemLink Server, an on-premises web server. -## What You Need to Connect to the SystemLink Server from LabVIEW NXG Web Module +### What You Need to Connect to the SystemLink Server from LabVIEW NXG Web Module + ![Configure GVI in LabVIEW vs Hosting on premises](readme_files/on-premises-config.PNG) _Figure: Note the input differentiation between connecting to an on-premises server from LabVIEW or LabVIEW NXG Web Module vs. hosting your web application on the NI Web Server._ @@ -129,67 +137,69 @@ To connect to the [SystemLink Server](http://www.ni.com/documentation/en/systeml When a web application is hosted on the SystemLink Server, leave the **server url**, **username**, and **password** inputs empty to minimize security vulnerabilities. >**Note:** If you use your own web server, you will need to include your credentials for SystemLink Cloud or SystemLink Server to authenticate the data services in the web application. -## Setting up an On-Premises Web Server +### Setting up an On-Premises Web Server + After installing LabVIEW NXG Web Module, you need to install and configure a SystemLink Server. SystemLink Server includes NI SystemLink Web Application. 1. Launch NI Package Manager. 2. Search for and install SystemLink Server. 3. Launch NI SystemLink Web Application. NI Web Server Configuration launches automatically. ->**Note:** If the NI Web Server Configuration doesn't launch automatically, follow this path: `C:\Program Files\National Instruments\Shared\Web Server Config`. - + >**Note:** If the NI Web Server Configuration doesn't launch automatically, follow this path: `C:\Program Files\National Instruments\Shared\Web Server Config`. 4. Follow the prompts in the NI Web Server Configuration to choose the following configuration options: 1. On the **Select Preset** tab, select **Simple Local Access** configuration preset. 2. On the **Authentication** tab, check **Login using Windows accounts**. -> **Note**: This makes the user an admin for SystemLink data services. It also makes the user an admin for Windows. - + > **Note**: This makes the user an admin for SystemLink data services. It also makes the user an admin for Windows. 3. On the **Administrators** tab, ensure **Add the local Windows Administrators group to the admins role** is selected. 4. On the **HTTP Port** tab, set the **Server HTTP Port**. -> **Note**: This example assumes port 9090 is chosen. - + > **Note**: This example assumes port 9090 is chosen. 5. On the **CORS** tab, ensure **Enable CORS for web servers running on the same machine as clients** is selected. 6. On the **Summary** tab, review your selections and then click **Finish**. -## Building and Running the Example Web application +### Building and Running the Example Web application with an On-Premises Web Server + 1. Clone the [ni/webvi-examples](https://github.com/ni/webvi-examples) repository to your machine. [Go here](https://help.github.com/articles/cloning-a-repository/) if you’re new to cloning repositories on GitHub. 2. Open the **Call SystemLink Data Services** example in LabVIEW NXG Web Module. ->**Note**: You can either search for the example by name in the search bar or select **Learning»Examples»Programming WebVIs»Call SystemLink Data Services** to launch it. - + >**Note**: You can either search for the example by name in the search bar or select **Learning»Examples»Programming WebVIs»Call SystemLink Data Services** to launch it. 3. Open `index.gviweb` and click **Run**. 4. On the **Projects Files** tab, double-click the `WebApp.gcomp` to open it. 5. On the **Document tab**, click **Build** to build your web application. + > **Note**: You can automatically launch and view the web application locally by right-clicking the web application in SystemDesigner and then clicking **Run**. -> **Note**: You can automatically launch and view the web application locally by right-clicking the web application in SystemDesigner and then clicking **Run**. +### Hosting Overview -## Hosting Overview After you create a web application and build the package in LabVIEW NXG Web Module, you need to move it to a web server. This enables administrators to access it from a web browser. Copy your entire web application output directory to any web server you choose. > **Note:** To navigate to your web application output on your machine, click **Locate directory in Windows Explorer** on the **Document** tab of your web application component document. You can also access the build output by navigating to your web application’s project folder manually (`\CallSystemLinkDataServices\Builds`). Furthermore, this project includes a distribution document (`WebApp.lvdist`), which you can use to build a package (`.nipkg`). A package is also required for hosting a web application on SystemLink Cloud. [Go here](http://www.ni.com/documentation/en/labview/3.0/application-builder/distributing-app-lib/) to learn more about distributing applications. -## Local Hosting +### Local Hosting + Follow the instructions below to host the web app on a web server. -### Hosting a Package File (.nipkg) on the NI Web Server +#### Hosting a Package File (.nipkg) on the NI Web Server + 1. Open `CallSystemLinkDataServices.lvproject` 2. Open `WebApp.lvdist`. 3. Click the **Build distribution**. -> **Note**: The button looks like a hammer. + > **Note**: The button looks like a hammer. 4. Click **Locate item in Windows Explorer** to find the build output. 5. Double-click the package (`.nipkg`) and follow the on-screen instructions. 6. Open a web browser and navigate to `http://localhost:9090/CallSystemLinkdataservices/`. -### Hosting on the LabVIEW 2009-2018 Web Server +#### Hosting on the LabVIEW 2009-2018 Web Server + 1. Go to the LabVIEW Web Server directory using the following path: `C:\Program Files (x86)\National Instruments\Shared\NI WebServer\www`. 2. Copy the entire `WebApp_Web Server` directory into the `www` directory of the LabVIEW web server. 3. Open a web browser and navigate to `http://localhost:8080/WebApp_Web%20Server/`. -### Hosting on the NI Web Server +#### Hosting on the NI Web Server + 1. Go to the NI Web Server using the following path: `C:\Program Files\National Instruments\Shared\Web Server\htdocs`. 2. Copy the `WebApp_Web Server` directory into the `htdocs` directory of the NI Web Server. 3. Open a web browser and navigate to `http://localhost:9090/WebApp_Web%20Server/`. -# WebVI Details +## WebVI Details The Call SystemLink Data Services examples uses tags and messages, which are a part of the SystemLink data services API. The Tag API is a highly scalable, lossy network commutation method that utilizes a central node to broker communication between distributed embedded, desktop, and web applications. Use Tags nodes to send and receive measurement data from one system to other systems. @@ -199,7 +209,8 @@ Refer to the [SystemLink API Docs](https://www.systemlinkcloud.com/skyline-api-d Use the example `index.gviweb` to learn how these APIs can be assembled into an interactive application. Use the examples in `BasicDataServiceExamples.gcomp` for a simple overview of how these APIs are used. Use the LabVIEW examples in `LabVIEWExamples.lvproj` to see how you can interact with SystemLink Cloud from LabVIEW and LabVIEW Real-Time. -## The `index.gviweb` and `Main.gvi` State Machine +### The `index.gviweb` and `Main.gvi` State Machine + State machines implement decision-making algorithms where a set of distinguishable states exists. These states, or subdiagrams of code, carry out specific operations within a program. @@ -214,7 +225,8 @@ Go here to find out more about [state machines](http://www.ni.com/documentation/ ![Screenshot of Determine Next State](readme_files/next-state.png) -# Security +## Security + For the sake of approachability and learnability this example includes username and password fields on its panel. **We discourage this practice for all applications used in production**. Additionally, authentication credentials should not be stored in constants on the web application's diagram. Storing credentials, such as usernames, passwords, or API keys, on the diagram could allow a malicious attacker to retrieve them by accessing the code running in the browser. We encourage you to store your credentials securely on disk but accessible via HTTPS. For example, credentials could be stored in a JSON file within the web server that is also hosting your web application. diff --git a/ConnectWebVIToWebSocketEchoServer/Readme.md b/ConnectWebVIToWebSocketEchoServer/Readme.md index 5400b560..7ff46805 100644 --- a/ConnectWebVIToWebSocketEchoServer/Readme.md +++ b/ConnectWebVIToWebSocketEchoServer/Readme.md @@ -1,17 +1,20 @@ # Connect WebVI to WebSocket Echo Server + [![Connect WebVI to WebSocket Echo Server](https://img.shields.io/badge/Details-Demo_Link-green.svg)](https://ni.github.io/webvi-examples/ConnectWebVIToWebSocketEchoServer/Builds/WebApp_Web%20Server/) [![Connect WebVI to WebSocket Echo Server](https://img.shields.io/badge/Details-README_Link-orange.svg)]() -This example uses the Web Module WebSockets API to connect to the WebSocket Echo Server hosted by https://websocket.org/. The WebVI connects to the server, sends a message, and receives the same message from the server. +This example uses the Web Module WebSockets API to connect to the WebSocket Echo Server hosted by https://websocket.org/. The WebVI connects to the server, sends a message, and receives the same message from the server. On the diagram, this WebVI uses WebSocket VIs to open a connection to the echo server, send messages, read received messages, and close the connection. The WebVI also formats sent and received strings to display on the Messages indicator. ![Screenshot of Demo](readme_files/Screenshot.gif) -# Dependencies +## Dependencies + - LabVIEW NXG Web Module -# Setup +## Setup + 1. Clone the [ni/webvi-examples](https://github.com/ni/webvi-examples) repository to your machine. 2. Open `ConnectWebVIToWebSocketEchoServer\ConnectWebVIToWebSocketEchoServer.lvproject` 3. Open `index.gviweb` and click the **Run** button. @@ -21,11 +24,14 @@ On the diagram, this WebVI uses WebSocket VIs to open a connection to the echo s **Note:** To view the build output on your machine, click **Locate Directory in Windows Explorer** on the **Document** tab once your application finishes building. You can automatically launch and view the Web application locally by going to **System Designer** >> **Web Server** >> right-click `WebApp.gcomp` >> **Run** -# Hosting +## Hosting + You can manually the move the build output found at `\ConnectWebVIToWebSocketEchoServer\Builds` to any web server. This project also includes a Distribution (`WebApp.lvdist`) that can be used to build a package (.nipkg). Packages utilize NI Package Manager to automated the process of installing, upgrading, or removing the web app. A package is also a requirement for hosting a Web application on SystemLink Cloud. -## SystemLink Cloud Web App Hosting +### SystemLink Cloud Web App Hosting + The following steps can be used to host the web app on SystemLink Cloud + 1. Open `ConnectWebVIToWebSocketEchoServer.lvproject`. 2. Open `WebApp.lvdist`. 3. Click the build icon in the top command bar of this distribution document @@ -33,26 +39,32 @@ The following steps can be used to host the web app on SystemLink Cloud 5. Click the **Choose nipkg** button and select the nipkg built in step 3. 6. When the upload is complete, click on your newly uploaded Web app from your list of Web apps -## Local Hosting +### Local Hosting + The following steps can be used to host the web app on a local web server -### Hosting on the NI Web Server with a nipkg + +#### Hosting on the NI Web Server with a nipkg + 1. Open `ConnectWebVIToWebSocketEchoServer.lvproject` 2. Open `WebApp.lvdist`. 3. Click the build icon in the top command bar of this distribution document 4. Double-click the nipkg and follow the on screen instructions 5. Open a web browser and navigate to `http://localhost:9090/JSLI%20WebSocket%20Echo/` -### Hosting on the NI Web Server by manually moving files +#### Hosting on the NI Web Server by manually moving files + 1. Open `C:\Program Files\National Instruments\Shared\Web Server\htdocs` 2. Copy the `WebApp_Web Server` directory into the `htdocs` directory 3. Open a web browser and navigate to `http://localhost:9090/WebApp_Web%20Server/` -### Hosting on the LabVIEW 2009-2017 Web Server +#### Hosting on the LabVIEW 2009-2017 Web Server + 1. Open `C:\Program Files (x86)\National Instruments\Shared\NI WebServer\www` 2. Copy the `WebApp_Web Server` directory into the `www` directory 3. Open a web browser and navigate to `http://localhost:8080/WebApp_Web%20Server/` -# Details +## Details + The WebSockets are a bidirectional communication protocol that allow interaction between the user's browser and a server. It is defined in Internet Engineering Task Force (IETF) RFC 6455 — The WebSocket Protocol. Most modern browsers support WebSockets. This example connects to a public echo server hosted by https://websocket.org/. To connect to the echo server, the WebVI uses the WebSocket Open VI and passes in the server URL. This example only allows one connection to the Echo server. @@ -70,6 +82,6 @@ Once the session is completed, the user disconnects from the server. ![Close Connection](readme_files/Close.png) +## Related Links -# Related Links [LabVIEW NXG WebSockets API Documentation](http://www.ni.com/documentation/en/labview-web-module/latest/web-mod-node-ref/websocket-nodes/) diff --git a/CustomizeWithCss/Readme.md b/CustomizeWithCss/Readme.md index 91248ad2..7fe9be8a 100644 --- a/CustomizeWithCss/Readme.md +++ b/CustomizeWithCss/Readme.md @@ -1,4 +1,5 @@ # Customize WebVI with CSS + [![Customize WebVI with CSS Demo Link](https://img.shields.io/badge/Details-Demo_Link-green.svg)](https://ni.github.io/webvi-examples/CustomizeWithCss/Builds/WebApp_Web%20Server/) [![Customize WebVI with CSS README Link](https://img.shields.io/badge/Details-README_Link-orange.svg)]() @@ -8,13 +9,16 @@ The underlying technology used by WebVIs is HTML Custom Elements. One of the adv ![Screenshot of Demo](readme_files/Screenshot.gif) -# Usage +## Usage + You can use this approach in your own projects if you are familiar with CSS and how it interacts with HTML. For example, you can customize controls and indicators to match a corporate color scheme or make them accessible for color-blind users or in low contrast situations. -# Dependencies +## Dependencies + - LabVIEW NXG Web Module -# Setup +## Setup + 1. Clone the [ni/webvi-examples](https://github.com/ni/webvi-examples) repository to your machine. 2. Open `CustomizeWithCss/CustomizeWithCss.lvproject`. 3. On the **Project Files** tab, expand `WebApp.gcomp` and open `index.gviweb`. @@ -25,11 +29,14 @@ You can use this approach in your own projects if you are familiar with CSS and **Note:** To view the build output on your machine, click **Locate Directory in Windows Explorer** on the **Document** tab once your application finishes building. You can automatically launch and view the Web application locally by going to **System Designer** >> **Web Server** >> right-click `WebApp.gcomp` >> **Run** -# Hosting +## Hosting + You can manually move the build output found at `\CustomizeWithCss\Builds` to any web server. This project also includes a Distribution (`WebApp.lvdist`) that can be used to build a package (.nipkg). Packages utilize NI Package Manager to automated the process of installing, upgrading, or removing the web app. A package is also a requirement for hosting a Web application on SystemLink Cloud. -## SystemLink Cloud Web App Hosting +### SystemLink Cloud Web App Hosting + The following steps can be used to host the web app on SystemLink Cloud + 1. Open `CustomizeWithCss.lvproject`. 2. Open `WebApp.lvdist`. 3. Click the build icon in the top command bar of this distribution document @@ -37,46 +44,54 @@ The following steps can be used to host the web app on SystemLink Cloud 5. Click the **Choose nipkg** button and select the nipkg built in step 3. 6. When the upload is complete, click on your newly uploaded Web app from your list of Web apps -## Local Hosting +### Local Hosting + The following steps can be used to host the web app on a local web server -### Hosting on the NI Web Server with a nipkg + +#### Hosting on the NI Web Server with a nipkg + 1. Open `CustomizeWithCss.lvproject` 2. Open `WebApp.lvdist`. 3. Click the build icon in the top command bar of this distribution document 4. Double-click the nipkg and follow the on screen instructions 5. Open a web browser and navigate to `http://localhost:9090/customizewithcss/` -### Hosting on the LabVIEW 2009-2017 Web Server +#### Hosting on the LabVIEW 2009-2017 Web Server + 1. Open `C:\Program Files (x86)\National Instruments\Shared\NI WebServer\www`. 2. Copy the `WebApp_Web Server` directory into the `www` directory. 3. Open a web browser and navigate to `http://localhost:8080/WebApp_Web%20Server/` -### Hosting on the NI Web Server +#### Hosting on the NI Web Server + 1. Open `C:\Program Files\National Instruments\Shared\Web Server\htdocs`. 2. Copy the `WebApp_Web Server` directory into the `htdocs` directory. 3. Open a web browser and navigate to `http://localhost:9090/WebApp_Web%20Server/`. -# Details +## Details + +### Adding custom CSS rules to a WebVI -## Adding custom CSS rules to a WebVI 1. Add a CSS file to the root of the Web Application component, for example: `custom_style.css` 2. Open `index.gviweb` and launch the HTML source dialog by pressing the `Edit panel HTML` button in the WebVI panel's toolbar. -2. Enter the following line inside the `head` section of the page right before the closing `` tag. +3. Enter the following line inside the `head` section of the page right before the closing `` tag. + ```html ``` -3. Click the **OK** button in the HTML source dialog and build the web application. Refer to the [setup section](#setup) for instructions on building a web application. -4. Modify `custom_style.css` to include the style rules for the page +4. Click the **OK** button in the HTML source dialog and build the web application. Refer to the [setup section](#setup) for instructions on building a web application. +5. Modify `custom_style.css` to include the style rules for the page + +### CSS rule behavior -## CSS rule behavior The following section describes the behavior of the CSS rules used in the example. The style rules are included from the `WebApp.gcomp/support/style.css` file. ```css /* Make the page background white. -Set the panel to blue with a drop shadow. +Set the panel to blue with a drop shadow. */ ni-front-panel { @@ -134,7 +149,7 @@ Set the power button to have an orange foreground when true. /* Set the power button to have a yellow background. -Set the circular progress bar to have a yellow fill. +Set the circular progress bar to have a yellow fill. */ .activation-button.warning { @@ -163,7 +178,7 @@ Set the circular progress bar to have a red fill. /* Make the non-plot area and the plot area transparent. -Make the axis ticks white. +Make the axis ticks white. Make the axis labels light gray. */ @@ -196,7 +211,7 @@ jqx-tank { /* Make the numeric text white. -Remove all borders and background colors. +Remove all borders and background colors. */ jqx-numeric-text-box { diff --git a/EmbedContentIntoWebVI/Readme.md b/EmbedContentIntoWebVI/Readme.md index 663508ab..f85bde85 100644 --- a/EmbedContentIntoWebVI/Readme.md +++ b/EmbedContentIntoWebVI/Readme.md @@ -1,4 +1,5 @@ # Embed Content into a WebVI + [![Embed Content into a WebVI Demo Link](https://img.shields.io/badge/Details-Demo_Link-green.svg)](https://ni.github.io/webvi-examples/EmbedContentIntoWebVI/Builds/WebApp_Web%20Server/) [![Embed Content into a WebVI README Link](https://img.shields.io/badge/Details-README_Link-orange.svg)]() @@ -6,23 +7,28 @@ This example demonstrates how to embed custom web content into the WebVI panel u ![Screenshot of Demo](readme_files/Screenshot.gif) -# Dependencies +## Dependencies + - LabVIEW NXG Web Module -# Setup +## Setup + 1. Clone the [ni/webvi-examples](https://github.com/ni/webvi-examples) repository to your machine. 2. Open `EmbedWebVIIntoContent/WebVI/Embed WebVI into Content.lvproject`. 3. On the **Project Files** tab, expand `WebApp.gcomp` and open `index.gviweb`. 4. Click the **Run** button. -5. Build the web application. +5. Build the web application. a. On the **Project Files** tab, double-click `WebApp.gcomp` to open the web application component. b. On the **Document** tab, click **Build**. -# Hosting +## Hosting + You can manually the move the build output found at `\EmbedWebVIIntoContent\Builds` to any web server. This project also includes a Distribution (`WebApp.lvdist`) that can be used to build a package (.nipkg). Packages utilize NI Package Manager to automate the process of installing, upgrading, or removing the web app. A package is also a requirement for hosting a Web application on SystemLink Cloud. -## SystemLink Cloud Web App Hosting +### SystemLink Cloud Web App Hosting + The following steps can be used to host the web app on SystemLink Cloud + 1. Open `EmbedWebVIIntoContent.lvproject`. 2. Open `WebApp.lvdist`. 3. Click the build icon in the top command bar of this distribution document @@ -30,39 +36,48 @@ The following steps can be used to host the web app on SystemLink Cloud 5. Click the **Choose nipkg** button and select the nipkg built in step 3. 6. When the upload is complete, click on your newly uploaded Web app from your list of Web apps -## Local Hosting +### Local Hosting + The following steps can be used to host the web app on a local web server -### Hosting on the NI Web Server with a nipkg + +#### Hosting on the NI Web Server with a nipkg + 1. Open `EmbedWebVIIntoContent.lvproject` 2. Open `WebApp.lvdist`. 3. Click the build icon in the top command bar of this distribution document 4. Double-click the nipkg and follow the on screen instructions 5. Open a web browser and navigate to `http://localhost:9090/embedcontentintowebvi/` -### Hosting on the LabVIEW 2009-2017 Web Server +#### Hosting on the LabVIEW 2009-2017 Web Server + 1. Open `C:\Program Files (x86)\National Instruments\Shared\NI WebServer\www`. 2. Copy the `WebApp_Web Server` directory into the `www` directory. 3. Open a web browser and navigate to `http://localhost:8080/WebApp_Web%20Server/` -### Hosting on the NI Web Server +#### Hosting on the NI Web Server + 1. Open `C:\Program Files\National Instruments\Shared\Web Server\htdocs`. 2. Copy the `WebApp_Web Server` directory into the `htdocs` directory. 3. Open a web browser and navigate to `http://localhost:9090/WebApp_Web%20Server/`. **Note:** To view the build output on your machine, click **Locate Directory in Windows Explorer** on the **Document** tab once your application finishes building. You can automatically launch and view the Web application locally by going to **System Designer** >> **Web Server** >> right-click `WebApp.gcomp` >> **Run** -# Details +## Details + This section describes the content added to the HTML source of the WebVI to create a web page that shows current weather conditions for Iowa State University. The HTML source can be edited by clicking the `Edit panel HTML` button in the WebVI panel's toolbar. -## Custom iframes +### Custom iframes + This example uses an ` ``` -## URL Image +### URL Image + The **URL Image** indicator from the **Drawings** palette category allows you to enter a URL to an external image. The **URL Image** supports both static images (`.jpg`, `.png`, etc.) and animated images (`.gif`, etc.). This example uses the following image URL from the [Atlantic County Utilities Authority](http://www.acua.com/green-initiatives/renewable-energy/windfarm/): `http://107.1.228.34/axis-cgi/mjpg/video.cgi?resolution=640x480&compression=50&dummy=1502732035434` diff --git a/Guides/CSS/README.md b/Guides/CSS/README.md new file mode 100644 index 00000000..8ff51d06 --- /dev/null +++ b/Guides/CSS/README.md @@ -0,0 +1,345 @@ +# CSS Frequently Asked Questions + +- [What is CSS?](#what-is-css) +- [Will NI maintain a stable set of CSS properties from release to release?](#will-ni-maintain-a-stable-set-of-CSS-properties-from-release-to-release) +- [When should I avoid customizing WebVIs via CSS?](#when-should-i-avoid-customizing-webvis-via-css) +- [How should I include CSS in my project?](#how-should-i-include-css-in-my-project) +- [Why is my WebVI ignoring my CSS?](#why-is-my-webvi-ignoring-my-css) +- [How do I customize a specific control on my WebVI Panel?](#how-do-i-customize-a-specific-control-on-my-webvi-panel) +- [How do I customize a set of controls on my WebVI Panel?](#how-do-i-customize-a-set-of-controls-on-my-webvi-panel) +- [Which CSS properties are known to work in each version of NXG?](#which-css-properties-are-known-to-work-in-each-version-of-nxg) + +## What is CSS? + +It's a textual language used to style an HTML page. It's a deep topic. But you don't have to understand everything to successfully apply a set of CSS rules to a WebVI Panel. + +The understand the basic terminology, consider this example: + +```css +p { + color: red; +} +``` + +`p` is called a _selector_. There are many types of selectors. This one is called an "element" type selector -- that literally selects all of the `

` tags in your HTML and applies the style rules to those tags. For styling WebVI controls, we recommend setting classes on the controls in the LabVIEW NXG IDE and then using the "class" type selector in your CSS. This simply means you will always need to put a dot in front of the selector name. Most examples on this page will follow this pattern. +`color` keyword is called a _property_. There are many, many available properties, often best just explored via the browser Debug tools launched by the right-click Inspect command on any element of a webpage. +`red` is called a _property value_. In this case the property value will accept specific colors as keywords, hashtag + 6-digits of hex, gradients, amongst other things. + +Those definitions could help you muddle forward. But to really understand what is going on, we suggest you familiarize yourself with CSS as described on the [Mozilla Developer Network](http://digital.ni.com/express.nsf/bycode/exmj34). + +## Will NI maintain a stable set of CSS properties from release to release? + +No. + +Modifying CSS styles from the NI defaults will mean you need to manually update these when upgrading to the next version of the Web Module. The CSS selectors we are using are not stable from release to release, and we don't update your custom CSS if you were to open your WebVI in a new version of LabVIEW NXG. + +## When should I avoid customizing WebVIs via CSS? + +In order to keep your panel working the same release to release, you should avoid making customizations via CSS if there is a way to make that same customization via LabVIEW NXG via either: + +- LabVIEW NXG's configuration pane UI +- Property nodes can be executed on the diagram to achieve the desired result + +## How should I include CSS in my project? + +Though it is possible to inline your CSS into the WebVI source HTML, it is better practice to keep your CSS declaration separate from the HTML in separate files with a `.css` file extension. And then any number of pages can include those styles easily. + +In LabVIEW NXG, this means adding `.css` files to your Web Application components in your project and then including `` references in the HTML Source Panel of any VIs that you want to style. This will cause your WebVI to be styled at all times. You can also do this without editing the HTML Source of a WebVI using a JSLI document but this is a more advanced technique. + +It is common to edit the CSS file outside of the LabVIEW process. If you have edited the CSS while the WebVI panel is open in LabVIEW NXG, the panel will not automatically detect the changes. We suggest that you make a trivial edit to the HTML source of the WebVI, such as adding/removing a space character, and upon OKing that change the CSS style will be refreshed from the CSS file on disk. Closing and re-opening the WebVI will also cause it to detect changes to external CSS. + +## Why is my WebVI ignoring my CSS? + +Let's go down the checklist of what you need to do in order for a WebVI Panel to pick up on your CSS file: + +1. Make a new CSS file on disk, outside of LabVIEW +2. Add the CSS file to you project +3. Ensure that your CSS file is referenced in your Web App component and the box for "always include" is checked. +4. You've added a reference from your WebVI to your CSS file by adding this snippet to the HTML source of your WebVI, in the `` section, typically right before the closing `` tag: + + ```html + + ```` + +5. At this point you should see your style rule applied to the WebVI Panel. + +Double-check that the selector in your CSS matches the class name of the control(s) you want to style. + +**Note:** The selector in your CSS should be prefixed with a dot. For example: + +```css +.my-class-name { + /* ... css properties ... */ +} +``` + +While the class attribute in the editor should omit the dot prefix, example: + +![HTML class attribute set to the value class-name without a dot prefix](readme_files/htmlclassattribute.png) + +You can also open your WebVI in a browser and view its source to see if the `` tag above is being injected correctly +and to verify that the path to the CSS file is not incorrect. + +## How do I customize a specific control on my WebVI Panel? + +Select a control in the WebVI and configure the HTML class attribute with a `user-class-name` in the LabVIEW NXG IDE. +You cannot use spaces since they are used to separate multiple classes. + +Then write some CSS to targets that specific control: + +```css +.user-class-name { + --ni-fill-background: red; +} +``` + +and be sure to put a `.` on the front of your class name in the CSS selector. + +## How do I customize a set of controls on my WebVI Panel? + +In the LabVIEW NXG IDE, the HTML class attribute field will accept multiple user class names for a given control. The list of class names are delimited by space characters. + +Select each control in the WebVI you want to style similarly and add the same HTML class attribute to each one. +CSS rules targeting that class name will be apply to any the controls in then Panel tagged with the same class name. + +## Which CSS properties are known to work in each version of NXG? + +### Tested in LabVIEW NXG Web Module 3.1 + +#### Configure the Panel background + +This property allows you to set colors, gradients, image settings, etc. + +```css +ni-front-panel { + background: #00adef; +} +``` + +#### Put a drop shadow around the Panel edge + +```css +ni-front-panel { + box-shadow: 0px 0px 18px 3px rgba(0, 0, 0, 0.75); +} +``` + +#### Set a repeating image as the Page background (behind the Panel) + +```css +body { + background: #000 url(https://path/to/image.svg) no-repeat left top; +} +``` + +#### Set the minimum width of the Page + +```css +body { + min-width: 400px; +} +``` + +#### Set the minimum width/height of the Panel + +```css +ni-front-panel { + min-width: 1920px; + min-height: 1040px; +} +``` + +#### Add 4-pixel border around most controls (not Charts/Graphs) + +```css +.user-class-name { + --ni-border: 4px solid yellow; +} +``` + +#### Round corners on Buttons + +```css +.user-class-name button { + border-radius: 5em; +} +``` + +### Customize border of buttons + +```css +.user-class-name { + --ni-border: 5px solid; + --ni-hover-border-color: yellow; + --ni-border-color: red; +} +``` + +#### Remove border of Charts/Graphs + +```css +.user-class-name { + border:none; +} +``` + +#### Color background of Charts/Graphs or Freeform Text + +```css +.user-class-name { + background: yellow; +} +``` + +#### Color tick labels on Graphs + +```css +.user-class-name .flot-x-axis text, +.user-class-name .flot-y-axis text { + fill: yellow; +} +``` + +#### Color axis label color on Graphs + +```css +.user-class-name text.axisLabels { + fill: yellow; +} +``` + +#### Color the text on String Controls or Indicators + +```css +.user-class-name { + --ni-foreground-color: yellow; +} +``` + +#### Color the text on Numeric Controls or Indicators + +```css +.user-class-name { + --ni-foreground-color: yellow !important; +} +``` + +#### Remove background color from Numeric, String or Timestamp Controls + +```css +.user-class-name { + --ni-control-background-color: transparent; +} +``` + +#### Remove background color from Numeric, String or Timestamp Indicators + +```css +.user-class-name { + --ni-indicator-background-color: transparent; +} +``` + +#### Change background + text color of active tab on a Tab Control + +```css +.user-class-name .jqx-ribbon-item.jqx-ribbon-item-selected { + --ni-control-background-color: #37370e; + color: white; +} +``` + +#### Hide tab carousel on a Tab Control (rely on programmatic tab switching instead) + +```css +.user-class-name .jqx-ribbon-item { + display: none; +} +``` + +#### Configure the border of _just_ the tab control _container_ + +```css +.user-class-name { + --ni-border: var(--ni-border-stroke) var(--ni-border-style) var(--ni-border-color) !important; +} +``` + +#### Tighten up the blank space between all Flexible Layout Containers + +```css +ni-flexible-layout-container { + margin: 0px 0px 0px 0px; +} +``` + +#### Change background or foreground colors on Enums + +```css +.user-class-name { + --ni-selected-background: yellow; + --ni-selected-foreground-color: red; +} +``` + +#### Make the track on a Slider transparent + +```css +.user-class-name .jqx-container .jqx-track::before { + background: transparent; + border: none; +} +``` + +#### Change color of the track labels on a Slider + +```css +.user-class-name { + --ni-foreground-color: white !important; +} +``` + +#### Set the fill color on Linear/Circular Progress Bars + +```css +.user-class-name { + --ni-fill-background: yellow; +} +``` + +#### Set the scale color on Tank Controls + +```css +.user-class-name { + --ni-foreground-color: yellow !important; +} +``` + +#### Set color of the thumb on a Vertical Switch + +```css +.user-class-name[checked] span.jqx-thumb::after, jqs-switch-button[checked]:hover span.jqx-thumb::after { + background: yellow; +} +``` + +#### Set the fill color on Gauges + +```css +.user-class-name .jqx-value { + fill: yellow; +} +``` + +#### Set the true/false colors for the Power Button + +```css +.user-class-name { + --ni-true-background: yellow; + --ni-true-foreground-color: #067bc2; + --ni-false-background: green; + --ni-false-foreground-color: white; +} +``` + +Additional tips can be found in the [product documentation](http://www.ni.com/documentation/en/labview-web-module/latest/manual/customizing-appearance-controls-webvi/) or in the [shipping example that demonstrates CSS styling](https://github.com/ni/webvi-examples/tree/master/CustomizeWithCss). diff --git a/Guides/CSS/readme_files/htmlclassattribute.png b/Guides/CSS/readme_files/htmlclassattribute.png new file mode 100644 index 0000000000000000000000000000000000000000..87f56bda1b298e8da2c69197acaf809fd29846cf GIT binary patch literal 1826 zcmb`IeKgaHAIHB|ArG5%wPK_@m7nLwuB&FL=j~(vWgAAd-s#4RrJ6w z$xmX22yGfMH`YAlsq0$IP_o@xEQVSeF87|(U%zwix##@;_`J{Sea`26&gZ=U_w{%WxlR}S|SdM25S3_-maU?(T9Bw13>*%ZPm#w z>waszM^GXFfIBuyjZdsR1pw+zo|wbOFNV$*4`dr3(SJrQIY&eOIOR?Y(m6bSy7ZK* zgHHCnOk2IK^eGd{PkNxJz0DBs&hl_Xv(~)v*lM$K(bd1Hia2>NQN}4&p+4E4U{v|~ zLxu~g0xBkw74Nv}z;3Orrl52`I|QJqu@3QHU^xl{86Y~FLGG5%V|VmDkn{U`t9!+7 zW)JqQSmH0l?Q)LJ>Dmgoq&VIiIv?UKKEK?>;v8e!(>ZbWh;+AyLz$?xcT(|)u&KJT zZMbf7DZ~lFFNCpdC!Kae+i|03FnI3T(D=%y&>@;Wp30o;#Sh$8G6)(s-d|IJWWu2S zHYx##2|8F!+Qqwb7s(w{tQNdQ{#%@!Jc{f~B#UFIA7iQjA`DLVK&~o0<#Q>rIv6ph zC%a$_{=Lb#0r#tNzC%;HHukZP`*8w3#?dToBx=7POBGkbB8CGGziQ0&peRL4{+uQ$IKIP7Y6w+SDi)f*I5~@g0^I*=^HVbq%1!PMFzg zwxfis{b3IKF?&g>qrTXs)BRdnQ7XEgKt$e7$_TG`rAu&SL?2j-{V2XbS|X`U?HldM zTwRq+_S05X(o6MiG=uiVE2n;C69s7kgR2Q5@R>7p(T=QsBddW&&@BH|bnwi9)-xB} zP;Zg(J_AjV`Xy|zwAGCpVZ0pl{FaQR*Zw6k4V*owy{{h~QW?G~T zPVo4LB1%XLQw?#ypzy2TQPU1)&eYN!FH09)f#8Ybpof^J^vYe*UbF5cRGV+c=_D3O z9ADhl;+HybXg8hG(w!uXc>B^LsS~6x) z;$@WOb>GQI|B(SoE*r%uqr=aAeQVRsyx`4SQ-=bDFVH=6aCqIy{H(lfZ}M~?m&qCt z@LG%mmmgH=S3B$%;5bosRMC?nf;^Sgd~5l{FaOR`5oxo%F{1T3}3Y>Cm|iL zL>ZP{d>{1nbah@}wtL}Eit^hfa7D2YzJlIla}oOITR|L#^KMue8HWh;|i8Cd!P z!b|u-w&yc%{MV+);!&G@E)lwk|KM%2;EXlTn=Z#29qm=5NMtc44N6qE@ACn3MP0Tu za(Ul3ofM

8@}n&>r>WRQxSij>X6*^3A~R(l^^voDnoVhm#o1()j-+t@ZBr59zF_ zcsZpsy=;AVnx58<4G|3O%*%aM5SAvDy)eAXU7Kgr*F?Wv{0Y)>;QHO|MfvZjp`HU# zm=fyzOkiE~Kbc|X0r~H|0W7NZkG-ZR%VT~6gGxENe-yl zH?yey@;;^9IFBbM-N&u_dUon6M}=HON-peHq*htBnxegijv3@RXD}PWuCe3&8INB@ z?lmVU&gH?ggC}3u+}C&XPG+m}Z3~`VulVc{02>h$p1r1NTn3B5IDo$QVTXG)P%gm@ zicIhde_OfT%?OSaH>Uq03svz0n0Bl7h+$r8teT|aSpL|J=RFJE-ox%V7ZbdNL8!Ud zzi4fEqw&e?@Fz`c&m1R&CpIsxO|X-lGp{(MVDEhahZC{f9BW`>l sR1LUzG_)RX3IYl@{l%Sd^7%ytDbpK!j7a${Xyfa79`VK0qQigu9i0qR5&!@I literal 0 HcmV?d00001 diff --git a/Guides/JSLI/README.md b/Guides/JSLI/README.md new file mode 100644 index 00000000..b4590aac --- /dev/null +++ b/Guides/JSLI/README.md @@ -0,0 +1,3 @@ +# JSLI Frequently Asked Questions + +The JavaScript Library Interface (JSLI) is a document type in LabVIEW NXG that allows WebVIs to execute JavaScript from the block diagram. diff --git a/Guides/Readme.md b/Guides/Readme.md new file mode 100644 index 00000000..dc547b1c --- /dev/null +++ b/Guides/Readme.md @@ -0,0 +1,17 @@ +# Web Module Guides + +The following are supplementary guides for developing with LabVIEW NXG WebVIs. + +For complete documentation of well-supported LabVIEW NXG WebVI features see the [LabVIEW NXG Web Module Manual](http://www.ni.com/documentation/en/labview-web-module/latest/manual/manual-overview/). + +## Questions or comments? + +For questions related to topics discussed in the WebVI Example Guides, please ask in the [LabVIEW NXG discussion forums](https://forums.ni.com/t5/LabVIEW/bd-p/170). + +The guides cover topics that may require **detailed knowledge of underlying web concepts** or discuss APIs that are unstable and **may change between releases of LabVIEW NXG WebVIs**. + +## CSS Frequently Asked Questions + +The [CSS FAQ](CSS) provides a brief introduction to CSS and covers selectors known to work in specific versions of LabVIEW NXG + +> **Note:** The CSS FAQ covers topics that may require **detailed knowledge of underlying web concepts** or discuss APIs that are unstable and **may change between releases of LabVIEW NXG WebVIs**. diff --git a/IncorporateUserResources/Readme.md b/IncorporateUserResources/Readme.md index 235f8c91..c7b9e5c5 100644 --- a/IncorporateUserResources/Readme.md +++ b/IncorporateUserResources/Readme.md @@ -1,4 +1,5 @@ # Incorporate User Resource into WebVI + [![Incorporate User Resource into WebVI Demo Link](https://img.shields.io/badge/Details-Demo_Link-green.svg)](https://ni.github.io/webvi-examples/IncorporateUserResources/Builds/WebApp_Web%20Server/) [![Incorporate User Resource into WebVI README Link](https://img.shields.io/badge/Details-README_Link-orange.svg)]() @@ -8,10 +9,12 @@ You can also use resource files to augment the WebVI's capabilities. For example ![Screenshot of Demo](readme_files/Screenshot.gif) -# Dependencies +## Dependencies + - LabVIEW NXG Web Module -# Setup +## Setup + 1. Clone the [ni/webvi-examples](https://github.com/ni/webvi-examples) repository to your machine. 2. Open `IncorporateUserResources/IncorporateUserResources.lvproject`. 3. On the **Project Files** tab, expand `WebApp.gcomp` and open `index.gviweb`. @@ -22,11 +25,14 @@ You can also use resource files to augment the WebVI's capabilities. For example **Note:** To view the build output on your machine, click **Locate Directory in Windows Explorer** on the **Document** tab once your application finishes building. You can automatically launch and view the Web application locally by going to **System Designer** >> **Web Server** >> right-click `WebApp.gcomp` >> **Run** -# Hosting +## Hosting + You can manually the move the build output found at `\IncorporateUserResourcest\Builds` to any web server. This project also includes a Distribution (`WebApp.lvdist`) that can be used to build a package (.nipkg). Packages utilize NI Package Manager to automated the process of installing, upgrading, or removing the web app. A package is also a requirement for hosting a Web application on SystemLink Cloud. -## SystemLink Cloud Web App Hosting +### SystemLink Cloud Web App Hosting + The following steps can be used to host the web app on SystemLink Cloud + 1. Open `IncorporateUserResources.lvproject`. 2. Open `WebApp.lvdist`. 3. Click the build icon in the top command bar of this distribution document @@ -34,26 +40,32 @@ The following steps can be used to host the web app on SystemLink Cloud 5. Click the **Choose nipkg** button and select the nipkg built in step 3. 6. When the upload is complete, click on your newly uploaded Web app from your list of Web apps -## Local Hosting +### Local Hosting + The following steps can be used to host the web app on a local web server -### Hosting on the NI Web Server with a nipkg + +#### Hosting on the NI Web Server with a nipkg + 1. Open `IncorporateUserResources.lvproject` 2. Open `WebApp.lvdist`. 3. Click the build icon in the top command bar of this distribution document 4. Double-click the nipkg and follow the on screen instructions 5. Open a web browser and navigate to `http://localhost:9090/incorporateuserresources/` -### Hosting on the LabVIEW 2009-2017 Web Server +#### Hosting on the LabVIEW 2009-2017 Web Server + 1. Open `C:\Program Files (x86)\National Instruments\Shared\NI WebServer\www`. 2. Copy the `WebApp_Web Server` directory into the `www` directory. 3. Open a web browser and navigate to `http://localhost:8080/WebApp_Web%20Server/` -### Hosting on the NI Web Server +#### Hosting on the NI Web Server + 1. Open `C:\Program Files\National Instruments\Shared\Web Server\htdocs`. 2. Copy the `WebApp_Web Server` directory into the `htdocs` directory. 3. Open a web browser and navigate to `http://localhost:9090/WebApp_Web%20Server/`. -# Details +## Details + This example uses one type of resource: an image file. An image is included in the `images` namespace within `WebApp.gcomp`. The image is a screenshot of the diagram code and is named `WebVIDiagram.png`. @@ -61,6 +73,7 @@ An image is included in the `images` namespace within `WebApp.gcomp`. The image Refer to the following sections to learn how to add resource files to a web application component and reference them in a WebVI. ### Adding resource files to a web application component + 1. Open or create a web application project. 2. On the **Project Files** tab, double-click `WebApp.gcomp` to open the web application component. 3. Decide on a folder structure for your files. You can add all files to the same folder, or you can organize files in subfolders, such as a `styles` folder for CSS files or an `images` folder for image files. @@ -71,9 +84,11 @@ b. Repeat the previous step for every namespace you want to create. **Note:** You must save your component document before you can import files. ### Referencing resource files in a WebVI + You can reference a resource file using its relative URL. The relative URL is determined by the namespace of the WebVI and the namespace of the resource file. Examples: + - **WebVI:** `WebApp/index.gviweb` **Resource file:** `WebApp/myImage.jpg` **Relative URL:** `myImage.jpg` @@ -82,34 +97,48 @@ Examples: **Relative URL:** `../ChildNamespace2/myImage.jpg` #### Referencing image files + 1. On the panel of a WebVI, add a **URL Image** control. 2. Select the URL image control. On the **Item** tab, set **Source URL** to the relative URL of the image you you want to reference. **Note:** The source URL needs to be URL-encoded. For example, `my image.jpg` should be `my%20image.jpg`. #### Referencing CSS files + 1. On the panel of a WebVI, click the `Edit panel HTML` button in the toolbar to launch the HTML source dialog. -2. Add the following line in between the `` tags: -`` -Example: +2. Add the following line in between the `` tags: + + ```html + ``` + + Example: + + ```html - ... + ``` #### Referencing JavaScript files -1. On the panel of a WebVI, click the `Edit panel HTML` button in the toolbar to launch the HTML source dialog. -2. Add the following line in between the `` tags: -`` -Example: + +1. On the panel of a WebVI, click the `Edit panel HTML` button in the toolbar to launch the HTML source dialog. +2. Add the following line in between the `` tags: + + ```html + ``` + + Example: + + ```html - ... + ``` #### Referencing HTML files + 1. On the panel of a WebVI, add a **Hyperlink Control**. 2. Select the hyperlink control. On the **Item** tab, set **URL** to the relative URL of the HTML file you you want to reference. diff --git a/MultipleTopLevelWebVIs/Readme.md b/MultipleTopLevelWebVIs/Readme.md index 88fba8d4..513fe1ba 100644 --- a/MultipleTopLevelWebVIs/Readme.md +++ b/MultipleTopLevelWebVIs/Readme.md @@ -1,4 +1,5 @@ # Multiple Top-Level WebVIs + [![Multiple Top-Level WebVIs Demo Link](https://img.shields.io/badge/Details-Demo_Link-green.svg)](https://ni.github.io/webvi-examples/MultipleTopLevelWebVIs/Builds/WebApp_Web%20Server/) [![Multiple Top-Level WebVIs README Link](https://img.shields.io/badge/Details-README_Link-orange.svg)]() @@ -6,10 +7,12 @@ This example demonstrates how to create a web application with multiple pages by ![Screenshot of Demo](readme_files/Screenshot.gif) -# Dependencies +## Dependencies + - LabVIEW NXG Web Module -# Setup +## Setup + 1. Clone the [ni/webvi-examples](https://github.com/ni/webvi-examples) repository to your machine. 2. Open `MultipleTopLevelVIs/MultipleTopLevelVIs.lvproject` 3. On the **Project Files** tab, expand `WebApp.gcomp` and open `index.gviweb` @@ -20,11 +23,14 @@ This example demonstrates how to create a web application with multiple pages by **Note:** To view the build output on your machine, click **Locate Directory in Windows Explorer** on the **Document** tab once your application finishes building. You can automatically launch and view the Web application locally by going to **System Designer** >> **Web Server** >> right-click `WebApp.gcomp` >> **Run** -# Hosting +## Hosting + You can manually the move the build output found at `\MultipleTopLevelVIs\Builds` to any web server. This project also includes a Distribution (`WebApp.lvdist`) that can be used to build a package (.nipkg). Packages utilize NI Package Manager to automated the process of installing, upgrading, or removing the web app. A package is also a requirement for hosting a Web application on SystemLink Cloud. -## SystemLink Cloud Web App Hosting +### SystemLink Cloud Web App Hosting + The following steps can be used to host the web app on SystemLink Cloud + 1. Open `MultipleTopLevelVIs.lvproject` 2. Open `WebApp.lvdist` 3. Click the build icon in the top command bar of this distribution document @@ -32,31 +38,38 @@ The following steps can be used to host the web app on SystemLink Cloud 5. Click the **Choose nipkg** button and select the nipkg built in step 3. 6. When the upload is complete, click on your newly uploaded Web app from your list of Web apps -## Local Hosting +### Local Hosting + The following steps can be used to host the web app on a local web server -### Hosting on the NI Web Server with a nipkg + +#### Hosting on the NI Web Server with a nipkg + 1. Open `MultipleTopLevelVIs.lvproject` 2. Open `WebApp.lvdist` 3. Click the build icon in the top command bar of this distribution document. 4. Double-click the nipkg and follow the on screen instructions. 5. Open a web browser and navigate to `http://localhost:9090/incorporateuserresources/` -### Hosting on the LabVIEW 2009-2017 Web Server +#### Hosting on the LabVIEW 2009-2017 Web Server + 1. Open `C:\Program Files (x86)\National Instruments\Shared\NI WebServer\www` 2. Copy the `WebApp_Web Server` directory into the `www` directory. 3. Open a web browser and navigate to `http://localhost:8080/WebApp_Web%20Server/` -### Hosting on the NI Web Server +#### Hosting on the NI Web Server + 1. Open `C:\Program Files\National Instruments\Shared\Web Server\htdocs` 2. Copy the `WebApp_Web Server` directory into the `htdocs` directory. 3. Open a web browser and navigate to `http://localhost:9090/WebApp_Web%20Server/` -# Details +## Details + +### File Name and Relative URL -## File Name and Relative URL Each of the top-level WebVIs generates a corresponding HTML file. The organization of the generated HTML files mirrors the hierarchy of WebVIs marked as top-level in the `WebApp.gcomp` file. On the **Item** tab, you can change the file name for each WebVI and view the relative URL used for linking. -## Top-level WebVIs can be in any part of the namespace +### Top-level WebVIs can be in any part of the namespace + Top-level WebVIs do not need to be at the root of the namespace. For example, `SubVIs/Attribution.gviweb` is marked as top-level and has a relative URL of `SubVIs/Attribution.html`. diff --git a/Readme.md b/Readme.md index 415a0af0..63fc333a 100644 --- a/Readme.md +++ b/Readme.md @@ -1,17 +1,17 @@ # WebVI Examples for LabVIEW NXG Web Module -This repository has examples for: +This repository has examples for: **LabVIEW NXG 3.1 Web Module** For previous LabVIEW NXG versions see the [previous releases](https://github.com/ni/webvi-examples/releases/) -# webvi-examples The following examples demonstrate different ways of using WebVIs. Each directory contains example code and a `README.md` file explaining the example. If you have any questions or general feedback about the examples please post in the LabVIEW NXG section of the [LabVIEW Discussion Forums](https://forums.ni.com/t5/LabVIEW/bd-p/170). If there is a technical error or typo with the examples themselves please create and issue on the issues page of this repository. -# Call 3rd Party Web Service +## Call 3rd Party Web Service + [![Call 3rd Party Web Service Demo Link](https://img.shields.io/badge/Details-Demo_Link-green.svg)](https://ni.github.io/webvi-examples/Call3rdPartyWebService/Builds/WebApp_Web%20Server/) [![Call 3rd Party Web Service README Link](https://img.shields.io/badge/Details-README_Link-orange.svg)](Call3rdPartyWebService) @@ -23,7 +23,8 @@ On the panel, this WebVI displays a summary of the results in a data grid and a ![Screenshot of Demo](Call3rdPartyWebService/readme_files/Screenshot.gif) -# Call JavaScript From a WebVI +## Call JavaScript From a WebVI + [![Call JavaScript From a WebVI Demo Link](https://img.shields.io/badge/Details-Demo_Link-green.svg)](https://ni.github.io/webvi-examples/CallJavaScriptFromAWebVI/Builds/WebApp_Web%20Server/) [![Call JavaScript From a WebVI README Link](https://img.shields.io/badge/Details-README_Link-orange.svg)](CallJavaScriptFromAWebVI) @@ -33,17 +34,19 @@ On the panel, this WebVI has X and Y binary inputs. The user clicks these to cha ![Screenshot of Demo](CallJavaScriptFromAWebVI/readme_files/Screenshot.gif) -# Call LabVIEW Web Service +## Call LabVIEW Web Service + [![Call LabVIEW Web Service Demo Link](https://img.shields.io/badge/Details-Demo_Link-green.svg)](https://ni.github.io/webvi-examples/CallLabVIEWWebService/Builds/WebApp_Web%20Server/) [![Call LabVIEW Web Service README Link](https://img.shields.io/badge/Details-README_Link-orange.svg)](CallLabVIEWWebService) -__Note: The Call LabVIEW Web Service demo requires the included LabVIEW Web Service to be running locally on your machine__ +__Note: The Call LabVIEW Web Service demo requires the included LabVIEW Web Service to be running locally on your machine.__ This example demonstrates how to create a WebVI that makes requests to a LabVIEW web service, and how to create a LabVIEW web service that can respond to requests from a WebVI. ![Screenshot of Demo](CallLabVIEWWebService/readme_files/Screenshot.gif) -# Call SystemLink Data Services +## Call SystemLink Data Services + [![Call SystemLink Data Services](https://img.shields.io/badge/Details-Demo_Link-green.svg)](https://ni.github.io/webvi-examples/CallSystemLinkDataServices/Builds/WebApp_Web%20Server/) [![CallSystemLink Data Services README Link](https://img.shields.io/badge/Details-README_Link-orange.svg)](CallSystemLinkDataServices) @@ -51,17 +54,19 @@ This example demonstrates how to use a WebVI to communicate over networks with S ![Screenshot of Demo](CallSystemLinkDataServices/readme_files/Screenshot.gif) -# Connect WebVI to WebSocket Echo Server +## Connect WebVI to WebSocket Echo Server + [![Connect WebVI to WebSocket Echo Server](https://img.shields.io/badge/Details-Demo_Link-green.svg)](https://ni.github.io/webvi-examples/ConnectWebVIToWebSocketEchoServer/Builds/WebApp_Web%20Server/) [![Connect WebVI to WebSocket Echo Server](https://img.shields.io/badge/Details-README_Link-orange.svg)](ConnectWebVIToWebSocketEchoServer) -This example uses the Web Module WebSockets API to connect to the WebSocket Echo Server hosted by https://websocket.org/. The WebVI connects to the server, sends a message, and receives the same message from the server. +This example uses the Web Module WebSockets API to connect to the WebSocket Echo Server hosted by https://websocket.org/. The WebVI connects to the server, sends a message, and receives the same message from the server. On the diagram, this WebVI uses WebSocket VIs to open a connection to the echo server, send messages, read received messages, and close the connection. The WebVI also formats sent and received strings to display on the Messages indicator. ![Screenshot of Demo](ConnectWebVIToWebSocketEchoServer/readme_files/Screenshot.gif) -# Customize WebVI with CSS +## Customize WebVI with CSS + [![Customize WebVI with CSS Demo Link](https://img.shields.io/badge/Details-Demo_Link-green.svg)](https://ni.github.io/webvi-examples/CustomizeWithCss/Builds/WebApp_Web%20Server/) [![Customize WebVI with CSS README Link](https://img.shields.io/badge/Details-README_Link-orange.svg)](CustomizeWithCss) @@ -71,7 +76,8 @@ The underlying technology used by WebVIs is HTML Custom Elements. One of the adv ![Screenshot of Demo](CustomizeWithCss/readme_files/Screenshot.gif) -# Embed Content into a WebVI +## Embed Content into a WebVI + [![Embed Content into a WebVI Demo Link](https://img.shields.io/badge/Details-Demo_Link-green.svg)](https://ni.github.io/webvi-examples/EmbedContentIntoWebVI/Builds/WebApp_Web%20Server/) [![Embed Content into a WebVI README Link](https://img.shields.io/badge/Details-README_Link-orange.svg)](EmbedContentIntoWebVI) @@ -79,7 +85,8 @@ This example demonstrates how to embed custom web content into the WebVI panel u ![Screenshot of Demo](EmbedContentIntoWebVI/readme_files/Screenshot.gif) -# Incorporate User Resource into WebVI +## Incorporate User Resource into WebVI + [![Incorporate User Resource into WebVI Demo Link](https://img.shields.io/badge/Details-Demo_Link-green.svg)](https://ni.github.io/webvi-examples/IncorporateUserResources/Builds/WebApp_Web%20Server/) [![Incorporate User Resource into WebVI README Link](https://img.shields.io/badge/Details-README_Link-orange.svg)](IncorporateUserResources) @@ -89,7 +96,8 @@ You can also use resource files to augment the WebVI's capabilities. For example ![Screenshot of Demo](IncorporateUserResources/readme_files/Screenshot.gif) -# Multiple Top-Level WebVIs +## Multiple Top-Level WebVIs + [![Multiple Top-Level WebVIs Demo Link](https://img.shields.io/badge/Details-Demo_Link-green.svg)](https://ni.github.io/webvi-examples/MultipleTopLevelWebVIs/Builds/WebApp_Web%20Server/) [![Multiple Top-Level WebVIs README Link](https://img.shields.io/badge/Details-README_Link-orange.svg)](MultipleTopLevelWebVIs) diff --git a/package-lock.json b/package-lock.json index f8b17b22..04534f2c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -245,6 +245,12 @@ "assert-plus": "^1.0.0" } }, + "deep-extend": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.5.1.tgz", + "integrity": "sha512-N8vBdOa+DF7zkRrDCsaOXoCs/E2fJfx9B9MrKnnSiHNh4ws7eSys6YQE4KvT1cecKmOASYQBhbKjeuDD9lT81w==", + "dev": true + }, "delayed-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", @@ -261,6 +267,12 @@ "safer-buffer": "^2.1.0" } }, + "entities": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", + "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==", + "dev": true + }, "escape-string-regexp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", @@ -362,6 +374,12 @@ "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", "dev": true }, + "get-stdin": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-5.0.1.tgz", + "integrity": "sha1-Ei4WFZHiH/TFJTAwVpPyDmOTo5g=", + "dev": true + }, "getpass": { "version": "0.1.7", "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", @@ -408,6 +426,12 @@ "pinkie-promise": "^2.0.0" } }, + "graceful-readlink": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz", + "integrity": "sha1-TK+tdrxi8C+gObL5Tpo906ORpyU=", + "dev": true + }, "har-schema": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", @@ -472,6 +496,12 @@ "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", "dev": true }, + "ini": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", + "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", + "dev": true + }, "inquirer": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-1.2.3.tgz", @@ -642,12 +672,46 @@ "request": "^2.88.0" } }, + "linkify-it": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-2.1.0.tgz", + "integrity": "sha512-4REs8/062kV2DSHxNfq5183zrqXMl7WP0WzABH9IeJI+NLm429FgE1PDecltYfnOoFDFlZGh2T8PfZn0r+GTRg==", + "dev": true, + "requires": { + "uc.micro": "^1.0.1" + } + }, "lodash": { "version": "4.17.11", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", "dev": true }, + "lodash.differencewith": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.differencewith/-/lodash.differencewith-4.5.0.tgz", + "integrity": "sha1-uvr7yRi1UVTheRdqALsK76rIVLc=", + "dev": true + }, + "lodash.flatten": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", + "integrity": "sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=", + "dev": true + }, + "markdown-it": { + "version": "8.4.2", + "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-8.4.2.tgz", + "integrity": "sha512-GcRz3AWTqSUphY3vsUqQSFMbgR38a4Lh3GWlHRh/7MRwz8mcu9n2IO7HOh+bXHrR9kOPDl5RNCaEsrneb+xhHQ==", + "dev": true, + "requires": { + "argparse": "^1.0.7", + "entities": "~1.1.1", + "linkify-it": "^2.0.0", + "mdurl": "^1.0.1", + "uc.micro": "^1.0.5" + } + }, "markdown-link-check": { "version": "3.7.3", "resolved": "https://registry.npmjs.org/markdown-link-check/-/markdown-link-check-3.7.3.tgz", @@ -698,12 +762,56 @@ } } }, + "markdownlint": { + "version": "0.15.0", + "resolved": "https://registry.npmjs.org/markdownlint/-/markdownlint-0.15.0.tgz", + "integrity": "sha512-sNcrSrUgpNbTQX6rPIMd+RI9rAryGTEbDI9VFpcFyijlC5g8gpkma49k5p98yFLdNbdcB3VW69UJ0smxvTVw6g==", + "dev": true, + "requires": { + "markdown-it": "8.4.2" + } + }, + "markdownlint-cli": { + "version": "0.17.0", + "resolved": "https://registry.npmjs.org/markdownlint-cli/-/markdownlint-cli-0.17.0.tgz", + "integrity": "sha512-/MInVAuNUDGj5lWeAweL2s4Wk0BY2UqOUcOuOMhY62LXmQZU9qZiFJ5XgHrAZVMggFH/vPupCiUiAMFgGIOqHg==", + "dev": true, + "requires": { + "commander": "~2.9.0", + "deep-extend": "~0.5.1", + "get-stdin": "~5.0.1", + "glob": "~7.1.2", + "js-yaml": "^3.13.1", + "lodash.differencewith": "~4.5.0", + "lodash.flatten": "~4.4.0", + "markdownlint": "~0.15.0", + "minimatch": "~3.0.4", + "rc": "~1.2.7" + }, + "dependencies": { + "commander": { + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.9.0.tgz", + "integrity": "sha1-nJkJQXbhIkDLItbFFGCYQA/g99Q=", + "dev": true, + "requires": { + "graceful-readlink": ">= 1.0.0" + } + } + } + }, "marked": { "version": "0.6.2", "resolved": "https://registry.npmjs.org/marked/-/marked-0.6.2.tgz", "integrity": "sha512-LqxwVH3P/rqKX4EKGz7+c2G9r98WeM/SW34ybhgNGhUQNKtf1GmmSkJ6cDGJ/t6tiyae49qRkpyTw2B9HOrgUA==", "dev": true }, + "mdurl": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", + "integrity": "sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4=", + "dev": true + }, "mime-db": { "version": "1.40.0", "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.40.0.tgz", @@ -870,6 +978,26 @@ "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", "dev": true }, + "rc": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "dev": true, + "requires": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + }, + "dependencies": { + "deep-extend": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", + "dev": true + } + } + }, "readable-stream": { "version": "2.3.6", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", @@ -1022,6 +1150,12 @@ "ansi-regex": "^2.0.0" } }, + "strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", + "dev": true + }, "subarg": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/subarg/-/subarg-1.0.0.tgz", @@ -1094,6 +1228,12 @@ "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", "dev": true }, + "uc.micro": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.6.tgz", + "integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==", + "dev": true + }, "unique-concat": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/unique-concat/-/unique-concat-0.2.2.tgz", diff --git a/package.json b/package.json index de25ab38..6a27461b 100644 --- a/package.json +++ b/package.json @@ -6,8 +6,10 @@ "scripts": { "link": "glob-exec --foreach \"{./*.md,./*/*.md}\" -- \"npm run markdown-link-check -- -c .linkcheck.json {{file}}\"", "spell": "mdspell --en-us -r --ignore-numbers \"**/*.md\" \"!node_modules/**\"", + "lint": "markdownlint ./*.md ./*/*.md ./Guides/*/*.md", "markdown-link-check": "markdown-link-check", - "test": "npm run spell && npm run link" + "markdownlint": "markdownlint", + "test": "npm run spell && npm run lint && npm run link" }, "repository": { "type": "git", @@ -22,6 +24,7 @@ "devDependencies": { "glob-exec": "^0.1.1", "markdown-link-check": "^3.7.3", - "markdown-spellcheck": "^1.3.1" + "markdown-spellcheck": "^1.3.1", + "markdownlint-cli": "^0.17.0" } } From 05c3c56212ae0da4c01448029e5e22425b62df0b Mon Sep 17 00:00:00 2001 From: rajsite Date: Tue, 25 Jun 2019 00:25:53 -0500 Subject: [PATCH 06/10] CSS fix heading --- Guides/CSS/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Guides/CSS/README.md b/Guides/CSS/README.md index 8ff51d06..8dbcdfad 100644 --- a/Guides/CSS/README.md +++ b/Guides/CSS/README.md @@ -165,7 +165,7 @@ ni-front-panel { } ``` -### Customize border of buttons +#### Customize border of buttons ```css .user-class-name { From 06c67fe81ca567d8421e1aae216d23fd1e078cd3 Mon Sep 17 00:00:00 2001 From: rajsite Date: Thu, 27 Jun 2019 00:15:35 -0500 Subject: [PATCH 07/10] JSLI incomplete draft --- .spelling | 18 ++ Guides/CSS/README.md | 2 + Guides/JSLI/README.md | 164 +++++++++++++++++- .../JSLI/readme_files/configureconsolelog.gif | Bin 0 -> 370678 bytes .../JSLI/readme_files/namespacefunctions.png | Bin 0 -> 14162 bytes Guides/Readme.md | 10 +- 6 files changed, 187 insertions(+), 7 deletions(-) create mode 100644 Guides/JSLI/readme_files/configureconsolelog.gif create mode 100644 Guides/JSLI/readme_files/namespacefunctions.png diff --git a/.spelling b/.spelling index 18b510bd..8d985876 100644 --- a/.spelling +++ b/.spelling @@ -32,6 +32,20 @@ subdiagram subdiagrams subfolder subfolders +i8 +i16 +i32 +i64 +u8 +u16 +u32 +u64 +boolean +losslessly +utf-8 +utf-16 +Uint8Array +async # Web Terminology JSON @@ -50,6 +64,9 @@ iframe iframes url urls +TypedArray +TypedArrays +polyfill # NI Terminology LabVIEW @@ -75,3 +92,4 @@ SystemLink # Example Terminology webvi-examples USGS +DataQueue diff --git a/Guides/CSS/README.md b/Guides/CSS/README.md index 8dbcdfad..d159f5c2 100644 --- a/Guides/CSS/README.md +++ b/Guides/CSS/README.md @@ -9,6 +9,8 @@ - [How do I customize a set of controls on my WebVI Panel?](#how-do-i-customize-a-set-of-controls-on-my-webvi-panel) - [Which CSS properties are known to work in each version of NXG?](#which-css-properties-are-known-to-work-in-each-version-of-nxg) +> **Note:** The CSS FAQ covers topics that may require **detailed knowledge of underlying web concepts** or discuss APIs that are unstable and **may change between releases of LabVIEW NXG WebVIs**. + ## What is CSS? It's a textual language used to style an HTML page. It's a deep topic. But you don't have to understand everything to successfully apply a set of CSS rules to a WebVI Panel. diff --git a/Guides/JSLI/README.md b/Guides/JSLI/README.md index b4590aac..b5464cdd 100644 --- a/Guides/JSLI/README.md +++ b/Guides/JSLI/README.md @@ -1,3 +1,165 @@ # JSLI Frequently Asked Questions -The JavaScript Library Interface (JSLI) is a document type in LabVIEW NXG that allows WebVIs to execute JavaScript from the block diagram. +- [What is the JSLI?](#what-is-the-jsli) + +## What is the JSLI? + +The JavaScript Library Interface (JSLI) is a document type that allows you to create Block Diagram nodes that call global JavaScript functions in a WebVI. + +## Which functions can the JSLI call? + +Only functions that are available on the [global object](https://developer.mozilla.org/en-US/docs/Glossary/Global_object) can be called from a JSLI document. + +What this means in practice is that **built-in browser JavaScript functions** such as `console.log` may be called directly by a node configured with the JSLI document: + +![configure the global console.log function in a JSLI document](readme_files/configureconsolelog.gif) + +When writing custom JavaScript files, a recommended approach for placing **your JavaScript functions** on the global object is to explicitly set the function on the global object (as opposed to implicitly). In web browsers the global object is named `window` and can be assigned new properties. + +For example, the contents of `myJavaScriptFunctions.js` may contain: + +```js +window.myAwesomeAdder = function (num1, num2) { + return num1 + num2; +}; +``` + +A more robust JavaScript file may use the wrapper code template described in the [Preparing Your Code For Use With a JavaScript Library Interface](http://www.ni.com/documentation/en/labview-web-module/latest/manual/prepare-your-js-code/) help topic. + +For example, a more complete implementation of `myJavaScriptFunctions.js` using the wrapper code template: + +```js +(function () { + 'use strict'; + + window.myAwesomeAdder = function (num1, num2) { + return num1 + num2; + }; +}()); +``` + +The wrapper code template enables strict mode and prevents implicitly placing functions in the global scope. These features of the wrapper code template ensure that functions and variables are not unintentionally exposed on the global object. This avoids situations where you may unintentionally modify another script's functions or variables or another script may unintentionally modify your functions or variables. + +For more details about the wrapper code template see the [Preparing Your Code For Use With a JavaScript Library Interface](http://www.ni.com/documentation/en/labview-web-module/latest/manual/prepare-your-js-code/) help topic. + +## How can I expose multiple JavaScript functions and minimize global object pollution? + +You can combine several JavaScript functions in a **namespace** to prevent polluting the global object. Having fewer functions placed directly on the global object reduces the chance of collisions with other JavaScript functions placed on the global object. + +You should choose a namespace name that is unlikely to collide with other JavaScript files that place functions on the global object. + +For example, creating a namespace named `myMathFunctions` to add multiple functions: + +```js +(function () { + 'use strict'; + + const myAddFunction = function (num1, num2) { + return num1 + num2; + }; + + function mySubtractFunction (num1, num2) { + return num1 - num2; + } + + const myAbsoluteValueFunction = num => Math.abs(num); + + window.myMathFunctions = { + myAddFunction, + mySubtractFunction, + myAbsoluteValueFunction + }; +}()); +``` + +The functions in the `myMathFunctions` namespace can be configured in the JSLI document as follows: +![JSLI configuration using the namespace as part of the global name](readme_files/namespacefunctions.png) + +## What LabVIEW types are supported by the JSLI? + +Only the following LabVIEW types are supported by the JSLI: + +- Number, Boolean, String +- Array of Number + +For Number, only the following types are supported: + +- I8, I16, I32, U8, U16, U32 +- Single, Double + +Notably, number types I64, U64, Complex, and Fixed-Point are not supported by the JSLI. + +## How are the LabVIEW types represented in JavaScript? + +### LabVIEW Boolean + +The LabVIEW boolean type will be automatically converted to the JavaScript boolean type. + +### LabVIEW Number + +The various LabVIEW number types will be automatically converted back and forth to the single JavaScript number type. + +> **Note**: JavaScript has a single number type that corresponds to an IEEE 754 Double precision floating point value. The JSLI only supports LabVIEW number types that can be losslessly converted to a JavaScript number. + +### LabVIEW String + +A LabVIEW string will be automatically converted back and forth to the JavaScript string type. This will convert LabVIEW NXG UTF-8 strings to the JavaScript UTF-16 like strings and vice-versa. + +> **Note**: Do not attempt to send arbitrary binary back and forth as strings. Instead use byte arrays. Invalid LabVIEW strings or JavaScript strings may result in invalid sequences being replaced or errors. + +### LabVIEW Number Arrays + +The supported LabVIEW number arrays are passed to and from JavaScript as the corresponding JavaScript TypedArrays. JavaScript TypedArrays are used over ordinary JavaScript Arrays as the TypedArray variants give very good performance characteristics. + +For example: A LabVIEW U8 Array would be passed to JavaScript as a Uint8Array. + +> **Note**: When passing a LabVIEW numeric array as a TypedArray parameter to a JavaScript function, **DO NOT** hold onto and read from the TypedArray after the completion of the JavaScript function (synchronously or asynchronously). The TypedArray may be a view directly to the run-time memory and may not be valid after the JavaScript function has completed. +> +> **Note**: When passing a LabVIEW numeric array as a TypedArray parameter, only read from the array. **DO NOT** write to the array. The TypedArray may be a view directly to the run-time memory and may have undefined behavior if written to. + +## How can I return multiple values from JavaScript? + +Use JSON. + +## How can I wait for an asynchronous JavaScript function? + +If a function returns a Promise then LabVIEW NXG will wait for the Promise to resolve. + +JavaScript has several patterns for asynchronous behavior. + +### Promises + +Returns the promise directly + +### Async functions + +Mark the function async. JavaScript will create a Promise for you. + +### Callbacks + +Wrap a callback as a Promise + +## How do you hold onto a JavaScript Object reference? + +Create a reference manager to manage the JavaScript object references for you. + +### How do you construct a JavaScript Object? + +Create a wrapper function to invoke the constructor. Use the JavaScript Object reference pattern to hold onto it for you. + +### How do you invoke a method of a JavaScript Object? + +Create a wrapper function to invoke the method. Use the JavaScript Object reference pattern to hold onto it for you. + +## How do you place a custom visual on a WebVI? + +Add a class to a text control. +Find the control using JavaScript. +Replace the content of the control. +Note: This is a workaround. Behavior of text control may change between releases. + +## How do you queue events or messages? + +Use cases: listening for events that fire multiple times or streaming data over a custom protocol. +Use DataQueue pattern. +Actually should use Writeable Stream and polyfill: https://streams.spec.whatwg.org/#example-ws-no-backpressure diff --git a/Guides/JSLI/readme_files/configureconsolelog.gif b/Guides/JSLI/readme_files/configureconsolelog.gif new file mode 100644 index 0000000000000000000000000000000000000000..09bcf135d63f84a0644c1b67fb06bf31df0474f3 GIT binary patch literal 370678 zcmZtMWl$V2!yw>A7q=EDTHM{;tyn2g+*;h-rMO#hcXxMpXR&2*cc)0P<@(-tH*??J zWu8g$Bgtek$xKZ4iwqzC4|=#l*hc^Wi_H~-*$JD@ijY{B3`3R`j+YyTjU9%G89>Sd z_`nZ9p#>md1K^NgU{QfUe0)4|8fsb=W_ngO23C%L7}+@gVPfav;uq!@5f>1V5E2m= z7m<(?6jkCCQsWTRVdu4EV{>NXaAOm6XOnm1`0B>>-9=Q#PQ}E=#NNur$->sz($3k& z!Oh;;)6vz-*~QJ%(I(7RJ=I3Kz*(xwTd^@%wKCMXBqF3RDn2_VF*PpHc(E3IamQ{DMkd{mYGhm8$rZNqAJU+SSuJG&8xi ziHEdH{NH*cLwhAd|HYkB;av)G<0>ihdU@;4)ki*!CqB)mKAopN-Pa)_SHI`)QXvm1 z;Oj)tdCc&BSi^jHX@5dxQ*LcdaZOcOWp#N~ZADdmWmQ9EWm9c+OLJpuXMJUFdB$i( z)LgCKM!VZyo5|&b$@P@?=|bW$ICpQobbqa3YqfoDZg6yBVj48N1O~6HtZc5VZ?CNF ztZ!^@ZfZW-(0W!eVlxG8GU;j zfkLOD&d@>z2A1;bIF zIIY&l>I+BX$Rs0)zcdt$C(@}^=#4iNPo}aNPh@>*ESb*ab3R=kZ!De76$?Tkk#8!S zE0jxQ(4XL#cFw*@#9bM6|m!5?rVIaG+&E5?UA|1 z%^oa0FUW0D{wf=s3C(}C?|^Rfr=lKCSI z&mkpY440B5<8(hF1`}wPQ#mdKc&?{J+U)L&8{qAmCMck}8~Ul!v=@mfi9{efT|MCg zgLj$p$3hWtWJ&UHSOPzbhmfxB6ny9}#^ope)*MIS4f(KS{jFMUBKmASTr(!;kj_e9 z(5!fl^!no;O3dND#xN~1>8mXHc=!KExCs!&Z0>+<~_>i6zp!=bE$z#!X28S z{{CF=A)Nh#JjC6{lH?YafXbRFk#=D4)yipZ14?&!Nx^)<-i3adf(kO z1r4VL;%V7y$IFK}f*U|;Mb&`hOdJ+=dq7p-qFAL^r~Fu0a~O}@OvuQ^&USjIS?0|M zqFaHZ7x~LgPVmQ;m2BVj-^QQ)@kFiHb*V(@OUARAoPJF4GM;RQoGHm+d}hYyBkNeE zX$b1D_!+V3^f|Gr%70mv;D+YIQP`d1pJYW^s=05KSedeLIy{{goF8!|tP_#0NWI%W z;8F^iJco;>kBp5$quDqDk%hSB8+ZldhmOC-?0wq2+SRyd!xADw&a$cmVz$?jnXs?- zYaz6k-#MtmA<2@jQA0|_S{QVnF(B2O&yLeyJj}*N267_umax-^LGReD2N-MVtt6Lx z__=!I4QoCs%eT`#Dz($?2H7o#PwuvpV%|M)$1<{*f=M@~FQM+>82h`Gqm1l_XZWW| z?C%eB60$rhCqY0`RqPq0&6kXzN42~P>`kOc(LP~VL$(S0J-ojkN9p06emkolFdb!1 z;*S5wlAI@pzhnF}G-Y~oGb`qQk60!?u0+eU>7x9D$NYD#n;#Ytinj*w`42ihCZVr4 zA|6Qfp6K78W;!W=npkn{6!7ON|?W%-Gj;Oo3JbFo+gzw*D5C-fwW9J0mu zo;#~+kR9-p4@CjJ>)`ndZZeEiOi5mX3OAu(UYR>%!wgk2Qrn?E5dk)GtVOwg)sVXI zp$fTNdIj-^J4A8n0$mXy?N+O{+^GHtzRrXql(@Y?aZ?;I#&r-{^D#AXq*Iu-x++7r zR83yMk^IaJRU;QclRf=d1pJR8O4={d5fQNwTpv@A=2BVi0~~$JthU9n9{>aeyz>J-_%$FomlVBdv_l zWb@H4n!Fa#Wm|<#nr?7@=$f<$>M3Nh>L$-sPZ&h+4J(x#9@QJ2vb4e(BrF?>1B&)Z zQW4f8$w&>Vrgvb&ARr~%_861IB9*F=f9n$tJ%_>Ew#N=S~RofxKkD?HTl0+D_h|&5##Lm-6H3>2=yabZv}PJoTBiQ-?gA zPty*ujaf&EM*?e4GafUIIge9EA}>#~{uoVpK&4{|qGwRJa#I2R^s$WK^IUvvQxUDw ziM;OfeA-M?3GeiYviI{s9!7JStkS7!=JR5ia&v{|^r=SY^HN=GbCtQ$naGRJjK6xDF{~pu=Q_;aq78=?G-wt!t4NrDc^}O{#+G~A0j=^3+MWr4N-D$ zL@3BHmsadv;A-V1!vp!lT(8eyYY?E03;#E+>ARy zUMJ#Ki_i3x9-POl{$0Y@>o6QPj7O@$p#`t|F}r<84Lswy_4@r9y6*e+{dw&j+)w*}`VenMsv`JgZRUz+1mn8x0yhTtJJn3n90qC3 z-}d3tthr5;roAW7ZZXW+JH>Zx**A6B&vnG@bkui0EWmQa&FLB@!U)#6E&!q#!29T0 zHtI&`{)Cq!04~dc27Eope-xh?b<&RY6g9?F7Pyym?n?-`)W|rY5G%Xf@ zb|`tC9-7W851x(Y0i;^y+-z=^X5JcFaMiTP-2Si{TISlCA(*lu*AIcbpTeB@!qO0Z zhVXn7;(v|Nx~iMIT7h9*^N{EO!7>n+->Lpk>lWb5=r7^05E44%C3oLUbGvIir1ghz z&UiPk5^o1{-}t|_xsVVi8Rz&hS4(qGGBHn=w#X_-WQ3c?5ZKA{laBzz4EZ?B5-~hb zF5J4s|65qNH4kv)F!Cc^qTRxO;qu z*i^H=RtNvkD5ys~QhGcJzj=&*EI(4L9~d^ME&ikSZ@iVbfs$XN59V~&vG`BF$p{iC z_!FqK6KFgW=+YAy+7p;o5?G!R*wUfV<~)g9U$8AT68Xxp!dl=rL5U(yiDCpv68uS< zb@0s&Npk5)^6g2AD@n>vNh$=%s{G07=}B%X$y({jI_=4ND@kr*Nk#-IKlxKkv{TGH zQ!LU`tdNrw91@MLQyd6Vo%mB-v{T(YQ$5mCz1mZKR#F|FlC25S0{PQ|>C^nR)1=!I zSL)KDSJGmi(&7oySL)ysw9`{O)6>$^GuqR$kkj4rF!Km93ivaMv@=RPGs@C4D%vxu z#xvYN>2(B|4g8r++L9+L93frk&E15k{nSIDvwVs(n+F2voS%Y7)+O;hdjL>JE zvOomc^ZeP1?SxC7*^ue?&KE>1u}F*uRNrTJd}<+GzN5p)jTZ1d>n!N zk2?8yUim15IY;gJ#H;zFC>d`4`4j>LR5}GTUIla=d4JM#nN|x}o-@fa3OED`xdaN? z84BS9EEE9fLaT)$&xJx2NRfadspmpLog%r6BKeLY#nmF^=OU2`pjTg^>T@CCbG}wa zF$oH9-gt3=B~XR1~Nl7QI>)`&<@JSe_tI{#yXZL{`ki2K?n!tg~94 zGm+ui2kS5h>&lklCRSdSQBl!RQMFo8b6R0_TGAj;`RG|u>s8s7QQ0w3){;@_Nob)E zk2WAsHI#uCFab9%R>lN^WvK%WKUWPCR)GYn7j>$^Ue%C{>eYJFO6}i_+UJhi1+UuY=Su$;_+hp>c-^|; zK3E|D+C(JK8wAT-2Sg;QM_{bO=>!U6l?ANAVKLSduho;j)RPf4P!Kh^V3oOG)o(}E zGjujE2tsRE7<0U^%CO8TD0Lfoyc_v48wENWg(mB7b!x?knw%|x!n#c|-c53A^-@ty zfERNGEHo9OW>q3IAtMxbkdGIj*~`CKZLRs+OOslq6B7u|1q5f}T`%5;WYF1Sv({qw z(&9kWY8M4ew<`BwYo?!U@FFT>U283G2Nn@lcpFtX>9&P>w}of6MRvADceaQ!HpQbh zxq;e}blX$B+ie8fQ`ed-d4Rt`?YX+<3Jxemx*a9nD1}BqmTOo~2b3fy6i<+kheJn` zLPw!>M-<3M9OM%~7!ak>*+?=U@k(f zD@HTBS3A4c*Sa@fy0=lg;)vS!1uNaKdX6)DPCI-0y?f3k+Y`hbmT7tmbWt9>d;jX9 zxb{`KtDpow*A+VeE7y9Tbo&(IdploXnezHRdDnO7_F)nC;|TSC)a%Fd>Hl=zHM`a@ zzt(@u-yaa!Pa!lwr8hw1GeD;|u&3K&w2kn-4bL=H;1)kX6^(pl0V63kD9|-XDKsdg zhjLwsWZW4fsc5dih9Z|WB;VER&xhjC*T?D)EUfEgQ31;P49ocpeL-tWv8qQE0)m@> zE}&s8Ary^LBvYSZwbT)t^%1kK5xc4(2fYzytWle+Rw1kmp}Ib=JYN4vSZIkQObk{= z4B6PT(b#95u^^$0z^bvrC)gY-pe=Eko8EYe&v;tact+QFmfkp{UJuJTJWCdk-6l6- zeLOuH8QXt^hY7B1eY_%iq&923bZW%;8d=U~(h;qfHNGVQG&y8Gl+QLbq&VfWUFV90 z;?~#KZ4J!t8yeS}n(u-iwrL3vm{JO_7mu$OCY#=TogNl)-4>eJ*PGd6n%RtYz?g(P ze4X}uflbKA^qxZ6cW`jULif?l2%j2@Vybx|&Jf)85zH%|5t>%`LHb59} zpo`b>eWHm%y@`8m5LP#+K6)Ap3z^^zMD#X?7Bjca)SGWKzmEp(1%rQK(VH*6PE$|9 zx?E4O^fi1ZMxkDVzjH~%y=ix(7q_wt;X~=f(cRp?fZb_^ucDnU<>AX9FlexG~oO7$9Mpui38;s*~I%b zB5woG^7>H_kAp45*TTDY6OsfZIy*}WDJ)bG>$^~rwDI{-@c+51uU`zeQ^sZtYn%2r)8B*w5 zY(5C)ToFh@HVvy4Oj5TnK!Tz+x;inv772pw7WN;6t}g=VrU!-B(X0DanJe-Lki7wm z0qe72LSsh4{&2oytVS@;@tb&n@nc&UIxMiaKWu^J7zr|XFMBKh%hnw;c)qJYhh!U8 zWZUW@#qTZU;~Qp?-kfl87E-cwVN@rMr3qwuMt@Yf|cxy`7m&1cY-yTO>7-I)GHdBx>Ilil$(=@m@uu|(yu zQ#U$W^!9IzlOm>*3k(SP^vQ3s>-3(J>>Nme-6_(q6Vi*5F7(qb+vE35P)WCWJ#@Np zb9KmOx~WDNb!xhcg?VT+Jfpe^(+6E+wRfG5o*DH$R3U*MSHO6# zo1Uu!BH$zcMH_o&+C1$UyUE@PLCc^cyUc5cQ?@_Kix?C1-;#cBcxTza&AHbx-0q-1 zdAJ<#t-eC-x%z#16|xDzQ-P4!K}bk;hlC&@*}J7Ir>ORW6g}6jSGzdBz__*M_*c^e z_A_PE!}V{U44FpsiEn#0&$Kqrm_#=;L^h%^4|mbd>1W{#V;z`s{|)OJhy9fmdyg8-FS%QPE}p+%J=4|QRbd`0=Wd-{ZZ$wJx4PgMJK=OiUxz-U z+>tirqaoS=Fde6lr=YV}%z6*_A~zP@D{!A~=3-{RpC7Z(cU^ktZnREadSUTEDe`N9$+UtTT$;Yb#r@fVlu!I#LpekcK?Ek0hvg z9#le*{9*B66kPGHGPcFx&=1T_7II;`atYK*s!fGo59INf^?QQHe;z3Mq7z+~t&|-` zg?g*&fXXpL5I)km!0JEk4$BvbJwjeRx#*NCzE>MGJKq{9RDZ;Mb9j<8)@(4H&XLa4 zxX@|IPmxP#f}hgsaJ|?Z&eXgz=<$7nA`qw9fm=e*Kg(o&D*hR1zatV#tbJ=TrZ6$E z{yblG@H@(&3962wQ$8;py=1_Z{cI$k!LHxgMX39*gfC*Lla{UPZZi<}=u=az^VeZF zjARlwOYh0)a60{wg;c-8;W&asZ6xQ7{ir5Q(vx;Fd$)j$$qRJi*aM6rD=y8n`El*5 z3+6QJ-OTQ_qWq}-c(=^jw_d?$gMo*b!77fRCOE?n{2a_S(2Jy3CxI$k0IEA{+Ed}U zQNG3Ksu3x&h`ZN2{eg)pSa%}PbZUIklLn9GP*#3tS(Hy?x$jtlw)`9nl+mMVkgFz4 zV*5g!s&^?%nOhXwk5L*OEwxh>%rV($bY8E(+PgpZg?W@}fr=_!ic^Uj$k?bfJfvqW z$sjlcO%Uh3;)+mUd)#mQ`uPTaahh|PstE+#LF1ZRD#}Wn5K!_~pQF9MYgARRlu}n! zDkNG|`6`OQw4k){@t%pFXqrWJSe;}^LY_5*TVqqFn7dzDe3)CaQ@)y8!C+DV_xpsF zbTq_Z%lo^AY3kd(mbp?0D!+bdcFT%6Ytw_=gvNG@t{qXjvAi*NSId}5s`TT$&7^5- zy+wHlucqK(ajSv%)iAH2@8dzM;jecDKBE8x3=JInZd(%sfn&XbA7P(E`F=*w+Ibj7 zv5xQ=#~dlO8k_MV@|*mYrFq)j8xiL>P1ZDPH%&DR)L&&vrj-H_tVM zvi#k)`=F6FNWFc-XIY$T)?rzi8=7J1p$u)es;nImu&!=B>^Msg!t)A|8L=C(C@Pc@ zv~6BC>$Gj{%o5P4Ju2z6>%1BfymIWr=+tf8LKJf72hw&quS=^+7PLo&-8bCr z*X~z-0YyA^)N1sP*F0rKJP%T97awlWy5x#47jtys`st&z#Z-Ng7g*qEQ^oz)zm53Ms@bh!1G*-$pd$ z8w9zs`BM)4!02C;z}JZnGkE^t@9|0M@>@)(tkmwF&0ld6p1BA^oqRZEG6X~x6%1gL zKdy%Afb&!yIdW0~0!~{W36}|)?oa_iWthAJH__Bp;*wQHV#24! zG4FZuXo-As5^mK-0~I((xovVXhoNzJMujjR=wx}+9YRvF`U$?#!Lo^f{B?-oiCX^- z;9&ejLo6B)Mf?%K8QKs-Ay*8qX7NR}2b2`R^^@GSeX@!K=l9w-6Uq=M|I{~~IxJNH z6*J@0z)u0Jcm~H3d8>Ft7LLSNRy1S0N@Q_U`NWKtrg0APG$m%dZ+2Z$<^tY_lZGSI zX+yzB6lxw*CK_`&cwJ_2qSuO|mkXI|OlG1_$RInno6KjMJ+vWuP$iOTHf9LjB;-lq zd3d4VwyA{bUVPjRuQ4j)-xV$b3WzlHV-b9H0n*Iz6bc4KN)A=AJW zZc8oKbhRHBO{M12)(hbt;u(=k)tyv~6;l}+9pLZU*0@+&TOCkMf|2HL&dt_F2%WTD zh;p?)(oFBK0(xN-Qe=-vKM0u#InjZL{N{kSfh0`TfdGab7k7?p)sGN z+9pC!|MU>Ib!?agNZp7ebp8W7Iy{()2_{vJ?I*T(-ynqvD&|AWa`#n;z0ZN5;WK!- z=W*EH@4nLz`mo&lj^N;rAY=rK59tHaT)Q@Q8m(lXA^@!eRCOHc@QWgU;*U6la(Df} zaEAk3K^o6ag6-l^%GCYQ~Tbi|`eFzK$bUjC^bD9skg5v?*r`iiC}fWHa~lW{4)?Y59% zT%GXPvuY@2(MK08i& zWei}p;F4Th+d_128x}UPR9jo;&%8rnAPH80_I9l8g}Qeg2w#0meOZ4j(eBXPwz9kN zMySh~!Z{Xp2*h9Cwr}C>!NuS*gwutv_PG?t#GJc-Uf;zZ^%(KZx(;#IGmUah8j%)p zO2Ew8BYor>8~*N;(z<>yCBi>}U*jauy?)3$%3o^C;_S1qZov=q0)<>2X8(Cz7s=fM zCHJ_LFt#7dl=93oZn{)xcAtI?6R0ijv8;68IFlUp0)OpxHT|`5Ztm_0878%C0CtUq zV+G(k=>-9(B;e8e1UD;%llt z`>n;OPvTOKn^5b9q7_iz)?|G{rOb+rBr-TryL5ayw|%{SJ0 zc7Fq|{V^RV(r!5AS&wgnDd{nd^>FP>G1-IXLMwb}IqQy$)Pv_BD}E;V)%1wc^R^o( zdO^<$-A?^HlSvCr4q6JoT|YuN&3=x{#(Z1NHGt7j>Dz+&1|YKNy%q=+>`D|A)AC0Y z>k{JwV14rE7wZ~~g6T%>L;NKCGT1ps*@sUjw&X3+wE(zr?n2Z9peYKUNCx#;2Q69q zV<>is^$GSni**mOT-1?}s~6vJr}WlV!vstjO2f`8v*f38I6N$iyHfWspe!%`Q9 zr3$)S=tdxegC!P*ZxZJB5y3lU8~FU%Nodgr%h%6B)yI=G_$D~SkTd`0~ueg_Rlj~YIsdU9cSr8l50A+MPK^21j6uTf*|0typUsga@rlgRIDxcm94IiOv$UMjJ90l08!xwQQ22bdjYB9`z8aQRBzP>w^>Y zh~S67r2^V!twpq{26fh@h?4|^v&Kj|hd31n!{Gai?m90s0|f2_Q>LVQGo?11M-uhA z2pq-@7v&|S;P4iEImpDyrzRSQZyFlA?|sb53yUiC+v39Cyl`CHBJw%daVj!E}iut53nA`M(ZMq$!FEH%$rN z$qfYw-UyCBL5f}0XcAa`Q|Me`^B<)^>f(^|v6ZZ;xh5s9@Tm{$3O&Rkz2|&=Hpu-| zqXRAxgGtR>AGrTrK^#>zZhuq`v1U%)Zb*f|NCV^#h`Ep8xvzp}uCp3?vS!8wk_7-0 z(rH1{t1vPay>L4-hg7|~a9?klzS2_8-byhETf^k72i1QIel!UOQ6d|jOF zM#1xn9w6asgp~#%7pu^yfe>6PjUwPl0HncjC-(M z=kPD;ak#%_-gYqr%n=QLBgmc$ub7+YoBQngjbvjk>~!t|Fi%;nLQXR8!Z2?kK2IyG zLah%~HL#j*^PgwL{YsxbUvE|VcW9nL6A|6%XQ)Q!veQ- z0gvy3fOIEcvKnE5n&81g&ESI21>=PO0N!?hTwO4!1B^uRK+)NPOmT-Of;zeYRUI4V z7Zuih$|<}HcA@P><@?322umusOW&xMRJoVbq?gpcFMT&%()hRa3t7@iUeYdJ(rI4O zMgL9~v?zCxt9B#XMi+;LmGIw!XP)CtpFQU-6+H zXgMwsWGc!oG0OqekU(xokTfLNwAOQj@88xoGYJjDHv;byv!F%5)K3_1G_8;WNbEf% z4q+uegf%qgTbM7THwjH)J3vZF9n_|EvkUV#QHA6KZF`&B{8cl2(dA8@y%hA6>xJ6VZXE2pfiqo`zR@6 z%;0N@*_7jeZY7PWx3!t#jn(E2H``#)(uNF~z8Ck(!a=3lw+(zPb+{h^QTpnwjJhk` z8;7o&N46SHYt-l@GjADkz-?#2f4c~O& zPnR~N+cxJn3^qcMCYNx+EuRUbiQj^)je7q;CAtKgUomAgGKP1^@OGP*ek>g9Y~TMtHrOFI+oidLu26{Vk}Cfs(l?-O z*=4-cqKo~BnEjI>$A}4Wk1bY{d2<)-;^*h;pX?fY+$|a$U}g#bLJlzk!a4x|CV`j{ zbyoi#JA|7sR-XrPU(8K|cZQj-1;8*C?3iaP2u>F+ArMM2mL=`veS<0l{y;NYtpTvEHK zZKyFLWY1yd0J9F(N_n6EVPAOW(01fdat7Yc%;ZJij1g*UW&u7@PdOY{H75iB2+E9A zNsp3t4u7^F|1hKe38u6=+)GL~)u6C&@iPz8I5g#1VBI{5nc4SKW^%pU=SZ`#RVL6W zfsJCZ)R3@D$~RArIJQpNbF8uW7OE9(pc6Y{srXn# zRd{KcVs{iWW9*f45>{g=KXXhyb5d!rmwi~7({oT#V;bHPVSj0Y%6BS6YF!^%D0FG% zBy+42dm2@8nmKaXj$vHQV(h|U3Me`2?)ll-W8KzqR8jMzhvuC8;jEXXs0(ptz|4kN z#Ab+;YPco@%kF%FWqUOAoFCn$z2$tS#b|2A1}eO9?(=XyZ)OO>BhiU9P2q?C@Yk%% z@?u$rfG_2uJ>RyY{emjNW`gHpvqgUqk%W)MN`egz>}H!DVO#mdE=$|aLBwwK%jF@> z!W`IQtL5?#;c^xx*u;(CQCFgRop7SEMcA-Ab~Af_LmHw9Nc?<>DdKan;v;R@)K%-AwFL5RRxF z@vMD0%N0&srz0SEDbxYWJxEu^WEBj(A^IFd`jy~TKC-V8u*}z3zlVFDj`1SKW%&$8MQ9G2{ zJH1|4I@vQLO#-4%aAvaix>v6JVgb@(0V45%t~|#AA`cw0u4=t*`e8?SzexFh-8;3e zYMB#D{5>R%yArW?PjYmU(M-R9&cIV2Jy49^yW!iBrJi~K-91yC^tSFliUkxLKAK+L z+J?eB@f;ItmWwRkGXih9Y0pC6bxvEXoR|ORNkd z-bWbwaCmG-y&f8~ ze`CVDvM>I2TV3eU7U>$^w;5cO9eIUhKerY<>KDLV)-aWRKCh8|VJb0H<1`U1&Brah z@*e)%`1Pej6jFj(5^bQ<;>9Y5#w!iP?eRW0m={K)#zj_&T_i1$`Io*(R3Hz@@&h z-oB8q?77;v4d80?=-VC5Yw6M3POrw+yYEKI+b|9EfYonnV`p#KW~tWau+*>J)sHe1 zN;&^_dgSNP_ICc5b#di)`tEn_PJHwE{ebn?A9LcnukSmCzaC~A_jAu5KfnJ?eeZJo z^-}BmI{V%U6Hc9gh{I%YO*RmyV8w28jD^`1jzg5>3eKbbfq8ITlYLo4{mw zOErx-*r*>wJ0s#3?lR9b1yc_L=K+(V1GUC9{>m z4Afx0P-FYzCN;|pGgp=oTeL>6q1Jw@)-&vQ?a$TK=LWYcf{(f19|=6j0+C~r z3?*OQ9?62SD{%At)x;mO0|~6!$bHdrsI!B~Bl&h!K5A&Cn|^X?qljXjKm6gs^_!0} zhATshJOG;7-bNWGY=>AF#ErsF<;{zdX3Wg++(wnC)BsNvE+x-T?IzO`R+OM@)lQvC zBu-D6{3CKDGkNXD3U!8Mh4x(PLd+9QR&?^0^>pi1&(cKOk#^c#$LSTFY!4Ixx+t#) zPr3qyw=ddx!2-`^0iiSk^u;dOTI(V4Rvq-72^!DzWxUKNh9y}UURF*yp&h41g_}!s z74;Jn>Hpr(CrT@8k_8xRyAd_cs{3QpE7j|sy_g#GVHlYjRdJ#$Bgf?hZ8au&ysKkU zB}|!`H@r|2njw)yyNzp?&&(YsRv$0hE})t$?nf1ZtljzI_(h#h&p=j*b?^&o^ZBWu z12lPcgowEh*_)BAA00T#YH-USR9}lG=u>Zng-ORgOfqW4K0=;aQZGU5?Q>f~7S+{| zh4^UAF~Kg_E=R(>rZ-B#vOz>WDO@Vk5P~!*beFP!?&wV79bedJ`uF+u?x&ankaO;P zCj@CermmecO~rd7ZISNOlzT;CwJ>}-64L0pAoT0)!HPwe$z{d0HEnv%+r;?ygu{!i zIt02Z>=CGSG{w7Y2krhF>}0RVyYritFK!k8ewy!4ncsk8Kf$|a_aHqgR&87Tm!DTr zL|l)+b|z4m=d|AZlfYSe>Sp_SyL*|}Mfbal;CTmXulJh%i=U5j-(V>4&$Qq>ROoI_ zK~(sDN%xoV!-{pU@Z*N}yYSzgC{dB8gUnwdcU_ddJxUXjk0P%(lcJ(;_iMjIp-*SM zqVI1n@1g)Wx;~iL5!-XYoEN0BJ_L@s01O{8cuKl{WYs$V5y8AG9IbwIr@A20S283? zIteI0dQic_Hj-M|0B%EF2#e2;AT$dJa6VQjPZv3cbJ-xtrA#O%u|B#d-4HoWeYng= zBjjIgZDgeN5z0OkAEVNwsGnmZzI9RHHI_+ZDF2SMZ`{Qjq#I#R!2YFwSFqftHNxFc zA7d;;NtjzA!`pL(=GH|?`loDE__jXI@0F4aj($uWry)L6h>GF^f!r}2wBUEF4;2+9 z{rDHvhJ=(Z6Urrg*{SK@u_^q6*JjR$G6IE3B|_8;YULB(8yb>pe2OW!+Q+Fo?5uJY zKhsGfXMEFc47>4h1Bxp_W z)iWa`htLWju@eA7^f}96`!>Wu!7vx0+EjqoO((-yF&FdjM`#VcY_{tQNC)Ih5@!T2 z|5lHi_#jDjC`M1Y`TMskUqLb9k1}bkj0IW99fg2Wq9h6ITntV#v`j|0LRzpQH!d*A zG@C0J2ISByM&|PGM;`_m2HE#lao0+=69$()hTeo*ml9L%@vou{v8rP(B*F;eUmbOR zHz^0#I14jo1g^&CQ#9B5y;(~o6Au33;V!x^%GEjnhQsRNVwrARsc)rfg(>pTBxln~ zpJ!-yB}g?Au>)yLbQ0R0lNxbu&MlQXsk=F(uqQm2ZIX9@d_#CG31j^F?gd7FNrLsl-Al883>)<$*sRC>BJ^w zd@N4$9~Cfq#z>T>D8cchr<~DUZWzG-aPA*0zXP-CzKGuqjT^IVSdZAvYsAsO|b zt^|b_rDD%-mn#!ZAtjUY6=R>UT4fHc>a?}AIhDaV*+%JZ#Qtqg=<6p+sQmdM)nj;E z-!6LfWIb7!yMa^80vC%MmV+(0BeTsBu0jP>lCBR0V~$;79Pk|r%?RULh!qwd2*8L% zFp2>aoK$_iKlYPm~p29-P$V1ZJg#NB<$Vpgxyx>tcobrom#Xg+1EFRq_G=Dj5?lbY9$* zvXY!CCw466jZ~Mb*;;)XbR2oEsMqWyL?U1Qi6{g$L(=*^WlTauuq+MbAPm>rs6x!_ zl+*ykS?4X);G~ZZ;XTlVZ(x}bb;f3**Jk2xs3MOp*IX-cWn;&vO4qs*aJ;#B&~|Ce zAqs#*LmKlX&+L#Ixo595=sP&4isTb@aC{-~6#MZJ3Pg`UCo$K4%pT-#d)q)!|G`ps z?=@jQVvK@^ph4WZ>n*>IZBdUwb{Yf6f9s{Z#_dy;wfGVu(;C2*Z3tM^=~T@FKWUk;1O5|V7X&16u%dVJ3mt}v?HChHr|}k`enVKRv^FEWQoFNm!mZ0pw|4n0 z4_=1Mn0)(k8Z!g^({=NrLUw8}G=jt&IgPe&V=;gTrDEH6ToaWcBk&0yX-3yu2@*2A z92l_{G@Km_vxWXZK*c73GD4!lKF>zA!lw1HER+b6w4L$_o1jU3lt$BsO3 zSDXA_9$#aJZ9NyyFCXX9@cllT5Sw6{TpQru2O9~fZYL+!(2jr7NeIAg4)9N1S|#Bb zny}Ocx)Dq>r>D;S0LJ15nxyHmr!A5z6w~jp5yLuA=TpU#N20@RA7slYC7j4TVvC;56JDvks;aG~%frO08S$R(xd>Kw1xmT0OkDMep$sN_qEEd))eQ>e|+VG*+u!dUKAWC=sHwA9V4^o<+G$lV-XpEn+DSzOY$ds5U zA5xC18pTc;#U`2A(U?QOR_dFTnV6Z!(paXHmyIAX`Oj!G04rGF2|h&Xk9hTQN+z% z2F6`#(E4W4dMQVEHI({o`c`*hs1@SRN@vhc4_H zA=Hd67;0k?7Hgs9Ll@pN>5)(t85-7B9%s0Yfzg}8x)Ei#QNr3&{;UaBx>?6s@27Rk^H7V^**CAV)?2Bz$V$H7*6pW5 z?FE%Ae_l@vAu zIVS@gOo6Ls-7S?v1sKC4mBR+-M<(YTc1)x4v7;%BW1&nt(dVrxRpYDZ6K0hYH8v|v z=S@9KQ#vtIJdD#|rn&X=`opT33A97tUSdVv9L zv7};AnYmB>qRfC942}Z3F)X`XbopEqhgL&MP*-FsR&p*{i!KUknAhB**6^SV>mwIU zQy015>J1vy&BOA|%ZvKEi!3Pf_Cw@$3;hn>WfgHvI!(>)2+E#c`JTvSxfDx^GRuKe z|)a{ zW1l7blI6-R;>wKf8u2Oxtu`31_C^5tmZj{Lg*B0jH9&;*?m7JKf%aa5HBPVA*R1xT z1L?7+^wEzsDwx$Pmi5Ug{3(?7xuiC<%HFM|_JslIRi^ZHhBa`}-f5E+no&9^Qk5xV z^R65XMWlVlaPa-;U`NUZI~xW&N(0Ax?IFZwB~u5#aP$t#mJK~afVSEqTG!>EH~`}= zfI)0|PS;3ks0cwN2wPvs{rwS&#HAL+(Cp#S)%vqyhRC!41WeY*nRWS*4#M4a2-|Ez zpgJ^jDY9#aFXwe=R}Pq%r%~03IQQ`cN0DYns zHyFBr4+=v#jrF)<>_QGV7}fwZB6hq)81%t<;#&3(%Qqx1k^)Q zbdqvl7t-UP()DNg!^W*J#471bZ2X7n@tTn6#;4-;dxKMk!!4DeGp79?E?o{j${V&n zbppMAm=goIqd52;IfT$Sa3NwuwWa*1)B=SO0+<{^jrHtnoL8cUu1Rw_L{YgoXgNz*oKgPR%0)GmCb)b7UVbU$DzCVcC$dxMY^oS=QDnVT zT;Qten88`+>PF*I#B2Kc3sJ?oNX1+)OZs;l_ zO#L4Bv z{jlpl7I8cFa!dTFvux~F-Sd~=Oq0|VBgW$3ac<`9Y(7}yUt6SyXaGxf`{E1PwlN+oWlc`!fnXb-we2? z7*@}4&ifzB4{Ebd*rokWy>;f^?pfAPnalhELC&_dj!A#`K9+sVm%K+U4ak1yPvvz* z-}W?aeJWh@Eb?|O(&QwPZO?`Cl8I~0LVe6kyi7}MugiFfrQ#(jWG{wmE$eI#fAlOo zdIFL?WV7;08uQl}{}1-w0w|7e+xH(_gS&+!cz~e6o#5^gGz1Cm?(Q1gf({PB2Djku z?hZkM>+qi>=iGDUocDjP>ec;K-Iu9dT?5lKyLf#+t*vP5U2jlz3p0K)e)KeZM$}@AqN}b zH}?wkGtt?`cx%o=`6~lf55rlv4im17QO;Inu5TY6vSnO|)HtQ4+J#>?6^OVbRoe!f z-}P$?wW7Rr9AtXt&rOH@gZ7$RW05=E`c`$6xBP=G1NzypH3wkJQDl~7eAm%Cn8Uf( z4b|ov6~#@Z#G`fbAyL5d8FfqV3D4Ly=d?9nrjN%{sK@u1D^a$){-7oh5BPPlcFDXw zt9fC|PFag#4BtV_ThB$8t&qo^`9}p5_|>fR)h9lE*w&I~{Oj((g~^tD4cm>uizQaD z1P^#~(_u^6OG?>mTjY4-L+g$yct_o8*BvZJ?zQJ1xIUV^pVg|K*J@wJe`p_gh>!QZ zw^eP(OL@BWXmoEc-s`O9@%Y;6s_W}R#_Bg|CJLYJM;%_?v7gw zZ0U(=yA2#qD+rN$8od|tN5G^~0mT@I1f#zYOW=$(d>4+-Y&-=5$F5`fJ{JnY;bPgs za-mi%P-%$!D4q1ipeKPV-dHw`!**w?A>KqjOTZT%7kO$^FiJd@O0_Y;Ou1106&@wm z=L7M0kt*Zq#?R*J6?z>(xP!GcLO_%80@bEOOYI`n^{{5{L@S*p=N~)MP1jcQb>2`2 zc)W9#@4F~(snnX2Z9nuzd*4y=rr3QPOu}sCBXMRl8qE?4#^YNkG#V;YEL4kBIo~PH zknBz5OLMYpE>Pc{X-T^V&6F2**72pg*lzafZ5+3xyPmhT`9|YJrMo#E&Jw?NZq0DN z&K=8r)x)3Z;d-u9>#p9G>DhZ~Q<#+`kmcq1d4F+tc9rx2?C$&H2t}bCDzeME4F+?n zOyCJXG1h_bB4DT;mbSF=E8MC%Q|B|T?>41K45*5tbxf%8BIt@Tiro`n;_+^Ll=C+r zT(i>go^-(g#a>cYI_5@fYg8o(T>Gu@zE{uBFgeMCEhZ!p!bOz^Xi=0V*r~FHlm^dp z@+PFo%9cI_PXPp`sClyf{m#qJA!7jl(%=Si-_NazKx@bUoQc-d`R9Rk8=h+mYwB@ww z7dcr~wIMZ1$tiW);mbS?lOxBkTKSWza|Rzare{Aufnn4b4O1-fC_ltTsxf@*wx7|` z`SMw9u@DHiKV#kz$hv6RuL|*xPTBe?+d)g`T>B?w^%a?U$64L*HB!?RPtvmM74O`* zSXD2inMpk#Oegs@eH5#kVSntXn{1CZ$GMGXFA_Bj!`>X<^hdDEC4Y#PM8n#Ofg)?z z`mD}Nxb3cLths}x<2ApWY%+4&k!s0^Z<67Q7PFgK|H!qMyG@*GY8ENBu>T`LmuS8q zt30(4n1A*8Q%M6A+F_~5a^qo@$vx3`m2N6+%kd%p#mSo4DD6(X<#L|tK*B`rlktT* zZAH*Enny+JBRq~x2WEZvY3Cs??~mRtt#n&?aLnN2^swO&4se<05{c|Rxd|b1Z^@PsLzHQOhD~e#gn@w|SFY(Q21c>6) zz^L_hDJ$4ZwmB(7_dd0_URQL#Ua!UdgaKB-W1^QjOZa^BgxB*D)2PjJa5Y#!;d@Dj z-jhyn{i^Qmbuj4ewt^3Us=o#=0STZ-wGo!|pmFy|VYn5nFe1pEsU$jTHBbFU`m^Et zdpgiqcKyk}ry`2q(8A{o1}usgAUi8};;9`4G7Uwdn(WmOEhw;a4y}(n^@&W~oCXV` zKByG+69nSI{KGN976at? zv=w69cC;}OMvYXG{dpQ^accv4RBiEnauXHa*)rJF;`^oYsYGVl93BJsdt9$GHufKnlrI*8%B8RCNox*3wg~XM%@xmGH<57@LxBy zdfj1%0G^pXz)LB-BD%=F_AdkrpSv~&wT7f)uoH+-YqbYxsTl8;n!Mw>V~Q|#@I`-S zHpY7(7n7MFL;G%5O0$?UDGa-S`EgD{lCC3i;lhx0+gR3>n<7gK8z{t1C}$tmkwJ7B zEg@TskTftQ%zarz5mBtN%dTRIhg-ss`$<*RbfWy~qC`J(UA32pv5YRh#O!iRD|BA1 z-VU+6HR166D;4$kE4URruS+zoLuOh#&nkS5zUU*E4|Wncg@nk`*WnG$QG{Jq9ZZza z-)d>zzfb&}GEMKvX)ZPD_0}x*Gd&Ke^nzo`RgIcV*(Y&aErlq&x~A#t+cL5>UFcVkv{KqQ~qhAZS#+9V)sS!-ra?InRC7mp0_AOPeGXNP*+1f z^&0vx*GO%*+nZka9?GHI1jYN2r*_mb1|?cIo#U33L74rJHDROB=OoDFz zd!~@*Nb7iu65SF;KO(Hp4GGkhdN{8>1v!^ylihQ^W5?Tw43)uub&k<5i8mN$IcG%e z4>!P+aF)=bw2h-nIG7A$7o*C)#V8^%_-gAcxmsxlEt7CKYmzxxgm&XCisUf9(Rq64 znK5UZ^pFc)YUcILQZD~}1HWU`S_aZEw#aLY@zA%p*)X25Vmw6D;Z$pRw3gV?_vn); z1*CbebYkV)wW!kSR)Lbwu$8;er;D8Wi>GHlsaM0!Y{g%e23~I~iJ`8{p*@#?w_ip<6rJ$((119Jl?7nRcHm(zh9$ZwC#?>{Fie zlK-UmKs|>5eCRI$_)v%dY(Ox}Fw4`^(@&@m0P)xM&*qN>{vWacA~ygI5tdv5;NuUA zNyi3c67=y$drpQ!Zfo!^00&pD8Kn41DC#+%@f7DoPG1-tHQE>=R(p2{BPoOh@zb5~ zA;$VQDArGRl2z7(c$8Ykwybh&o}Fg%;Y_HqrmS7jRDn}-q^7L0(_w3DXzO9~VY_T( zd-LI;rLv}F!A#!t;nZRK)Zt;?^vvOO5#&p!XXmC4XATeBH@CKRKbWa%8%#|X9Ujgs zudWpomG18!3mzS4^two`&?V*vHQ`0kf1?_p$?f(z`Wd5A$ zzqSAb3J3Fl3kt^qEBJ3vxSFELpHMhHx|+X3;ik8yD)hU;NTu-vXVa*&GdTzA$`>gVr6$krMKVId2F&q4aoiqmk< zEjaZR1fC`U#uUPeh`5ePV!4#SHC+L|T1+%Dj4dcM>)lh+`z_!qXVPbKqm|6hkQ}+EIVToge!QV1!`+ATt8^ zJj2qwF>=7VAQu6kXb8THhPCZ`VI`U=u^}>vnQEAGfkaefjt=n25{?SH)=qpt+NX_m zhacO`@;&PzLQEf+1#C#RkD+(pf(NdOCx2&tC!YN-FyfZ+QtD1%~lHB=m4EF*-q^ta`2UgJ~` zb&;igA6D4z1q1~#n!IV84&)g7lGCH+7DIDj;RKbArBbx++xt4V_o(W4A$SEU`^2GY zH&feV8@}Qo3ELsrN%&T6f77ORa%T&HR)VhTdsZ)AW3XW1>qm@pIQc!8;9w6XHwvC| zuN1kAhO@0xYK_}|5<+SEcMbfmFf*(YpFBX=AeEC4;j$kfWS_>tXUCO!`AVwKoIv)= z$00^9*WM{O_uT8{#O#nrN^Xgy+hs$+gfOVQ+jWB(fBwV^Eb^QNnBq%7A;BTkFI}42 z?knqUMrE`3Qfv!?W5csBAU_yAgDpF_g^(&vCVDR05urYw_cmS#z7(plzN$*-?r1LW zxMKoW~^v7vNX2FARUdG5HLcs!zwbA_aO|J(AOdJO8R^IP&z^E`_Qm= zb&@ZBOnmgStu0e1HA;fga(&ZIdBnfr))CUT&1W_)r`jw%wYKrE3$e5 zEYrD8I~RVv9aoNPL!3oyKq4DQfRqoZyvjF8%1>6TJXV=Q9*(Qp155 zatB2YS_%bcsi_>i02)CD2@HTjfYQ!IQ4H&W(8O6nt;A)qhR(h;C3FB~A9k+7vl7f| zshO{-m!$=mC0g-*Gj)xZWj2<5TDxIiK?|4VF2g0d*8{Vycb64D)5tmq(sP|eSCt{M zrH1%}b3NQwRWXsJM%2>t16o&KlZQ)OjL~R?dTqD|c7*?a#_>f~A)>h^|3>vgLM3gG)Qy*9~KlfOS1>&1K+miZGGcBwD=b;T)-oavs_wyT5@z;l9QM%WSKkW=kDZ$CmrtYWn|EbT+!pUwZbs@` ze?j5yR{`jtb_BUoKjMcqM0rpr{>W(%&%-)KH0T?(+>bErhYf;JP!Gq*k0|$t&EHTs zxwE*mhbSG+`NoN) zk&6PJ$9;w9#;HQN%VO=v1C7zfnfj5-a`(qWee|ZeUb(BUX^-Dc<(n2}N3QCc9*=CI zo0fLvt{WF0k6lKaR<1{`TkjuFe9)UAP`H~;V(@8*eDenW=uHm~_(x21^A@%I?SMA; zEP1qfhhy}1#2tK|joz{+E`K+X2EG8ww;ZUC-pw?DFDs*4zMIJ3FD!zuK%*_kKcR5< zU}hM^*3)45hYjMVn?Cv0v!u}n2o&yiEV}igP~LN=*Au|l!@pDu9yL5}TE3@)7g+3$ zHasiQxo6O*x}7ZdL^**-it`jT?uzL4;JrGfL}Mw8Ig ziFnTY?%MAj!T&DU59-E;$<+5vpD%Q_56hfChlD>1(4RTkUl{0LT5c2846!bu9`&)FBCK@h-85GV@@kiYR4yYZL5 z36ky$z%vb^rqMFsbo!tX$l(%b1`K)+3e@5ZwBz)*(g*?Dn1*Od1OYz>8`cMZoD0U_ z3<)p|Ha875?hEE}3GoAkX3hl`ZHE|e1jV@oCGQ2I07HsH{O$XK$`C{HK|x=YM-ui#YO8y$5kzfp{)EEqxJ30|yB~m}zRyJ+-$b1fM4xd+UuZ;MxkTS2N8f>d zLgBzS(E!32Xs#Go%@}ysUr@M)7}WU~wA&aA!dNV>*q=~1*I0s-SfYkllKEJ&{{<9| z5FF3K70;#_|JF60GbNt8A)a^sA5b_^%>*&me+Grq{H*5sZ&0|;y0@SIGZd~N(PBQ) z>h_;Q;k<5>e11dWG?Rl|lS5LH!y5hpg^S}#N%;3rxcQXK+mwF-g_}<;zfJuI6wWmb zl#>{s$CpAsg-PKS1FKQoj&2{({2Y zeIX~x`3Dp(HHWS-=NA+%hlwcnClpRA_pMtlXKF5YWA1M#oFGx2Fn6A)R-TyKe}KX% z5alaz=c{Pt)8c7Bpm17^`RbS$zoPk{Ik3Ma$1r{+#~^?IJwNuZqn_ci6 zEv{|u?H)jCA|331htx7!Sl!s&h147RzP+=*{i|RRq<)b#lPaXh)z6AXn>&!Ni|F0i z*s9pv+KuenUEiz-@7Z44tgvQcwPI4WVN$bUQeE9BkLugq+^VoH-FeNVy3rRO-M_cq z8~55C@}J%9?aHFfot_xgsQ$g4t=-}+NM)qT&7b@1v$3(sF*({Wu|_Ddu9i5;DaWsE z4#+dH%Et_@l{&t*D~Bw0Zj?HGi&kA&SlHMajEs!ziBYSqt&NItl8cU$j~VLT+>uj? zlZzPy+OckK4Q}sL$uT*-W^$5`iC^oDi&AE_QC5>zj+bXrE4F8S?NDV^vi)syXS+XP zyBxBcqa5T+l@sKZo#dEUS9{`K+d0~l?e*>K%S8{oR*JJ?V%_eKk5pFeidKzMR<$Xu zuqoXwvSXEt?k{y`)i=|szZbG%G4z4| z_l2xb$G-k9WMxS}?)$ewR=?IPUD19QvO<7Cog1hvnf<+HSy!r3Y6>Z2#iM9GUvINH z0O#&Rj#1}weo#xa=Cj)7^Rti@sB*n40vc77wmj;F@S*GFFnx*;5P(!sLAmT+h znJl*f02-)VqC4DJdpKM9VGvBxSaY-(EkC$2+*E%uQ)7$reB`Z<|7IWQ(0CjP7Y+tn zoIrHc(qI6SNviqkN;3-H!BPVlfm*KhVG4jgQKI*%2O0VDK-0(NxwqE?vGLmBYMUOv zCm3+Rk?9JH2T}rHPyn+rrI>)(ek?wxo&K0|$@+ol#=tK@1Xg=rf|RBq=uz=0GIij*h=>u2Ui&#i5 zyEB$&ffI^^kfMPi{PmfN2qsKQ@)J-zTKkGz7|h``}{2dJ08 z7h8CY@~2(nMiI=uNMhF>4udcSrI$9Zd%s`K>IXAi%^4*fInHPo>S#e8@Ho0!wCQEI zUUHbVyk5>)&cCu+$%7+rU-dzNP+kM@t!~yssKJD*5#c+|8!_UHw_5>kR&KW4;e6V6 z(w&cQce8^T@AmSNthjc76}Uc7rS->mhn2mI_up$~t?u`WcD+;qC>O`~C+!Gt9!|gE zTR;2&9hN^Rykb9jI3Kgd`JH9^71(4$0-K+4(NE0`#PcDuH^}`Pa@&U7&Odzk@E6?+ z{&f4t0{`6>Koo#v*$5;meFXhrU`RxP7zUkzu*BR6eG2V900Ja{0)gOWcQh0t5jnB}A{;uri51o6hczr&$lbGpKR=2H-dg3O5^p7qDA{<|;jpZ@+L3n23T z@~N2r>QjO~&`^xf3IuBa01VVyEs_`;fOs6SY!tm~9ObuQw0Auezq486-DJ<+fTu)m)m_%(B@{%13{Khe-%aryrA`Bz%t|4uZ74uA&GH$r?0 z_UC{EIUh)R0g`8c3`LMJ>90J!KYjnPz<;|15MM$ThcE;MvjG5jOf*qMeSk)?Jx zMO}X%g#Inf4RNJEA<Wt z(EgT6_%(Cu`Mc9Vj`+{a?JvD-e>(pwE%1LZbAtlV4?wcj@ISNFkVF0*?fhBw`75v9 zpT7Sh3m}sHnz@k!eEgu{;58)l0X~6HL}aMh3TuK;P=A}A{Zb+HLq?kas6zNNJ^PC; z+MjO!N(&&;|8yA%oBy(6iUEme0MHoiz}VdGi08CosJFI)kU87mWu#;O#epEf4P=G% z_fjdunf@%5{*{;YPv8Gt7C?OW%Yjb+iv#_X@jxNNf@sKnpa4W~(8w_qDf$CQ`23cD zV}PC*oHx+fAwGG+&;&53ynoXkutN@-{slk|fB>Tm9n3Ps!u+fKdc({-^s_N_GBfxx zQHj!0Fw#=c(U4P8QPR;<(=)z)!^XhG&c@0i#_?8)lS7W3Qi-uX?1RSZGL6_S6iF^ z$NTlg)eVTMeR*vQqH2e1A)0r{7V@9P)lG=V{pUyPKR^22AVPRZTl?8|AUgNo4Wf4c z-8Qy%Hn(=Rer+Lde!qwOxwX9m(a8U!?d(A`_1n7#+j|E)y9W>*{r>*p-rgZZYyWe* zf4IB5v#~b2vN*In+qX2?wmi|WI`MULGH+)rZD;uN_GJ3jV&2+%>Gn?L?*7-kgX;Z* znuEi}??-(nr}IC49Q^okdiL*L=f7SMLf6&R)%Df&|NiUd_Tgu{fwaee(rzFBw!^R8 zZtouc7wzHU5&VDk^{)lmIo;uZ6KIPAEQG^IB)|S$p#3#}FzMd}+B5&XlR@(z}P-TMs4=0xkO(QJQXq(qM5Yp@s6Au7@)zg?vFH2{YY{u?pdTAplM!TJ$fh3t1tDzNQBvtaB++U)^NIy`S zl-q14#k8^K)n|*kePekwB@Gx%O|ldUDFZp1cM=9s^C~G--8mh2W_X|WyvSsR z0Z(f9z-*9Dec9iInikd%kB-iJ`Z1YX;j|r>4+n*w7)VpniAQ@xz4wgnAy*0x9SA^y z?;bea7s%2*EQ9C4aqk9x4@xyHKJAg-&c$k!G9cu@xd%L}=06ih!@xQ0fHC~;W>R5z z)lZv+q?g@^FTe}d{(CFBoG!!d2Nutr@0oE-A5wm>R z)@@-Q)aTf@8!}3gT^Yidp*P6GBvPzFpcdtPH;#4o39B&2R9_T4MPm_LKiMg42}kEy zZN&biID2eiR>%J6a@s&VYIDw5-RjoVR3PVVzz1HYcL9bj;650kK3V4gr=%L28d>EB zI66`Qf5DoL;d=&i^7!Tj(9>xpBOQiC2j^BCKKje;B$1&E##{$Ed5mHrjArGLnA+Om$QGVMnZgp$q9CTEO5dX;f;t$gdEO@r4ItoC?CqF~K7~t{Y=!cZ}A| zb|SPY1SycGylKO{?!+Mj)nqRQQ&x@L9ou}4C6uf2Tl>HQim9~az zqERO~^5n>xvWip4J=>pP*U0L+d-0KbUUJlJVk_eY%%;t2!X@v1cb-MpUnpo$H>z-j zO|N5^ngtk8s6f5=a!R+Chjxc6ce!RDr>P+Vg*+aWDwX4y15}4iQarJ|$Rd+1$`MSZ zjCBgk`=+Fq{E4Y7ne0$$z%a2|_$50o!8-K1Ut&!i)1+AjP8yvoU7AK1Ws+TY4#CId zNk)C1KrU26tPe2VAz?LyF&BolJan9&rDkZDr{%mQP3wXAs)3C3hUlh5lJ^PxA8d=u zrC5tJGBjseuT0-X-@vkmUm$6X^}QhqR9gi*&31pv_V9Z}qCH$V*H7hCF?3O4EX#)V zLZ$=TkF+$92`8xQin6NQU*}edxT)bS>IeB;FkSLR*!)MUt2%h1egZoTc=@s2`u0e4 zhR({4ngdl2I`Zc$Y)t%p@MxX`O3$lW6Iz=YYwGH{%bZ3F7D<=Lxgk&~d#h|1X8r5t z%cXKR)c^=o%9-jgvchZy0+lKkZN0&b^n^gAOm?o@0`@C>4pG*iPd>IIT2=VsdnCc~ zfa*}APPNEn)^nw9I!!|T{(qoSXv{$->A12BH$6c)5U7+z-SQ~}Dkb+h+8+XysyFKs zgFvN}1GXr6Zu@s)hY7Zzh-n~DsjkpS;#9#Px(~O5`uwOCEK>oatyB=G6f0O)S2>D_ zjS6+!CNgzbX1BVz05zJ{KmBlMmtVe{-N-2-MRRjknD~ym98<*T+gPdy&)qnQ8A~3@ zBeD%{337Z;NFM9(uDTI93IJGxind{L%U3bZgrF`Dn0XsO zE0)>W4*M2P8=Dx=LncvV?`f`*YdF={>IZxS)kF`{UK9nt1%*FU8zT8m?c(78ck$KT zv(nZum>hwjNBfM;o$yI9j_Bn+>aPynS4HbOT5UXSa2$MRpq=Y`!Eoir_V?My)Owu2 zNZCV5J(5j9FwC>5c3TDYySbABX9QG!8^XQ!>tDs*A+zb*qw1&5eD105c7(C#7U5a% zHnw^cBoz>H4Bvwd%@TA2Sj(GxXhIhqPuNdhe0^iIG0K1aSbg}V<-`l!BM$1#O(#ssX^=c`Bxc1;k9hKrsAyiF7jJF{dXvr)M|rK7 zD{e=wKc8o!w@3-SxtkD3xG0c+t=;!SCd>{Hz6nqu2vp(>RM7}jLkwgy^?VD|1yX$i za5(S42RU~53z|Zs+5}NC1&VV9s0#+l>;H;H$gF+p$QtHi7uhZ$)O2zpUSTQoPbd05Mozg za6zI~KNZZ_+fRi+t3)c82|TB1C(C&}rzJ7mGjR{u?9g}uM{AVu&Wh@YI}F6vhw`HXR(C8>0O+(aNsZ>eH^(>08@#HS25R@Gfzmi+aTH zF_Jw<4YH7^gOI3G7rXE^p3+L@@R$H=jcD~sM1BC22H-zKrJ!l8?lz#51!KOr5YGa2 z=0hA2d+iN+*#vuS2-j>dsBLlZb$aaZWNi?G$4IF9qfqtZXw2dmZ=DRY!B85NAyksl zvNuk?Hi*`HasLS_B`|M|P7W(X7+c32I|m9T7k79$3rA7t46w1I4gN&GYx`*&Hc$a^ z_{V3u+s_8KpN;#&MVVlHD?{}5c??+MKWQRbn^W*ZtN*dJ_!dqN^+Q!;is6bf7b6OG3<{r3Qcj^hvA}0B34EWzey~? zNPP@}^GZoAZb&UHO8waW#!oXcM)8fsQJp3j zc*Pj3VVDHm2>%Ky#W|3pyOX1#mWxZ2i?W`F=ljJ)Az#fc|2I_X{X)L(UA{h1fgyK+ zkygHxo3YG7o&xum9+N1hFb`PUa2SHZ`Z?H-ZiOzXg>H?79*y}XjV5MpAMFm1z*a=Q zI0pp?;{~jD1(VJQQFp)?qM|tNq6Dp?M7N^k)S}eJqV$ELsJp^QJfI$xXLw_Q#V26E zK!HW0d+9=P`2yir+SnZK;^2jXVz-jQuwod4FThVFAz>vU10_Xn#et0l{nvT5M7a@- zr31+MN>aG&oF$;?(tfS7rccGaTEzjyK%1}<_5omgObayfP}?l@gp z8hfG5LdoK%(jQ@E`%-1ysTHeIW!rS6=g8&v1EqTdWlsxb8sp{1jh{vv{kI3owUR4~ z>MJ*2RH^w^V%(bsYmse!!ozc~B703jdSCUDhv)^*S1NM?O82jHCHS;W;IHae#Z1K2 zEQg+5~LH4^SVLQO;>(lwIzH44PFJM}eB zV>LnQHA-orC&Zy!J3)3!yz+ zFfOUG6>oz0`s&>m1B5vRSYiTf_v#&8Kq2lR8{+y5wtCcYJD?97&N@hS9M=0VAm~0I zWwD-EIXEp1lug{I2m(bMN+gtEa5-ZZ^58Z|gvN13Xy}JlNQYFHMAR-ufYO=*`a;XE zLPI4Q^HC&#PGJkl_9YT2iiM22h0rs`Hgk#oMH+T*_3QbzZN7q&{ZTktp7&a+Avj@< zH^$#I-X=rs$N7huMtqx7R?;_9Woq5lhTC0ah@fGgE^4|mZyQCln7nCXmrm}umpHmI zJE?P=G|p6Ww(#?_j%~1_%1!=+|4Gaw6Q}^U4zfp)vB2hS#~Fu(zYW?;j;5+c#OZ>& z>x%~ObqI{L%7PHd>0w@$LQ^z%(!TF3EQ)#S(Z!h_gDPo-G2gav+g1Q6csg%`j_-`m zg)uH{`@YEe(8+4;ru~>I4!HO2ET}_?gn>KRQ@A0Xdp>~YHi&b+o0Ya(?|Zi_O^*w1 z&wGmmi=`ebnFNWV1VN-`!6C7HywBM|pT#-sG&nH$nLuD^i%i*OyNRAi82mmh%{~H> zKIrunxO7jq{%{~|Dos0_{cR#AZ4!rOzp-n->|Q@>f4^Qzzx{k_fyY2GQgYS47rJ(@ zWrBTWvwd|U^jih zDwJ;GR~|nO5_h);P+Q ze>UxDTtxq~*=vk;eJngtM{UKxKQ_GCL&WtgiiR@aD9p9{j&a9K?Y{J2eb%rtP z;;dJOJO5CYJKvns%t(Oe+}NkNkd`@-@vjk&b5W0T;iU6%o^uI0^ZuUm$&WLsE%Wb} z=QByCvPl=H_!jbx1`0eE1k)FaNt;WT7b5N#DrIq))fVeK7eN_|jV+7K8H-=}7KMF3 zbn-1pLofA|nT2^S4Ga&=fR;u`=bqgyO@N0-hWVC99v5dGtL8G6@tc;HGAdUdmnVo; zHW-SxbXLsVR`!l^4q8@($6NSkG3`q_Q0m7FlIw4#SB@XCB}ts(7BT3Kf>kwFX(K0* znWv8PR_|pon+HWI#V{5KFrlI*t!INtHP^7Drlj)MP#7^=;VnAFFc{P^IzTojX<>s+ zEwD$y{HJ}QGObBs;aKNpp)zBI1TB=A8zo6gq;f<&4*)bXj3+|#5ZWjzR&yu!^QuR7-7OGM#2nc18I6UX|~> zsP8lP+PkgU^*F|05w}NV7U&Fx)8d<;H5B|ACeKe^C7x$-(W z;?F$v@-(n%16#EjWS{UJ&p(1s;722%ZE3vc~!#`OH0$~%%~6q~LMkG?{a@%cIL z>bVHld9KDekL@{Gv^LMlxkT1QFyO+K=7L-3g0!Os>BS{#?75fY1uqh;>S_EJa#-E= zc%7$9MonaH1vsw$^V~`p!_^*{wm`WjOoiuWYI>e%%-0`r;hngUMb|E!2(KLWuk{F# z1uNkSQEv*CuHN2UkzrmF3tb|t-yj=Y8{xtaxFW0S-wqI7^%dRr^xwWbx_udWLj$}a z{c;vrX9AQrEwc6#9vmrsQzKn`-j9SVvw?Y`us{q z0ItjW$`^nv$n;<6Jm36*r z4L%sXD;)xFKi$Pus3b(E*UR5yFx*UgBXh68-8@IULw^8Z(j;KKfkq;_z(SVzEST@$ z0#(a2_RSaWHQf@H=~Pqz7Aamj0Szi3j#4&LG(~A!Dv?2_HGojrctD-7v8FVI(s(3= z&l3zwl&~$3^DdH%flg&#sX&|*6>&M|tRYIz* zZ_21JwbK#-FFO?NFoQ~6t~WZu9EA?@rC}*z7+lYTNJ7W~kpv z<=X!^l9(k14h(ZN-z!#s=l(1bt8}lzkf$w(H0>jSKiUyQJA zWRE2WBlax%^jV_pIRO1YkxtT#3I{zDDh1#BN}_pHj6oEN zO1@%NKv$OQ{wSk4xp#ybj9C4xezm$Y`IWve0u@N#A6<;oAP^sIc9p8XC86m@fajZ* zb20@Xn2fnW+t%l#jxNmZ9jFaP@$$N;Yk}&<4Ih)9SrL3pF)6p$8aD0WGRc^9YcR?3 z29t5_WCT+|$}K&o=QhjFRV6en%#zdC%P&;B+k-0V;WlUP%FZ>fXoKgmsOqI^vZx+S z)H1LASm$P0zY2bX+OS*DWYu)i!(-iYy`yafdJ=1}Y)7DOw&_AoQnUGnZ_;er`@G`T zw2!*5*>3O+!m#lW$8NLzXqDQ7{kS-F%Y~^32cP4#y2-L~zjiR6)4YiZvg3kvFW>c| zrGb~BbDoRl1Z!UZdNeA+kRnTtJ`5kFTeXy{cfxKNgINI$B$lW zJ&#QR@m7z^S(7%;Ye?NUuiM?i)yH#x0j+zIgWa~Lqw8xuKsSOQ6yBK63e4Igm^+F8 zJLahm`b8GZ3(k%`$rwNUW_@UBEI2f$G5_bV28i!Cg|QOH0;oj|kX1p#cy(ieZvqTZ zmHXNcH8K1-=(C>LN(hl2j|E>&Wx)MS@Q*fMjO)2Gu6%wBWe>+Sfz1W);q@lf9 z7WZ7#RhB{%DLs~ov@!c#wycI>j|Ka*srS?vUkFBeBb8$tJOt5{n0y_y&IrlY(75qa zp(RuOc~BXG7@q?IeC*yNcQa8s3(pS|+O)?nVH(pXalpjlZ9=grP@++p4VWKe<}%`!aQ``7i@;3ppN5#3PZ#{NCC{ z=vnAe*keeN1C?EA5h>sKLh6{g*_9E)nX%M1PVZjY7w5JMNmZwSc`eSS)BDq)XhYYO z3{b0v_xiPpG1X;)>oBc-WWVGRw_2*c}1f_YG6hO-7?qeu+m%utL%oc5~UG~MAN?ANcb@%U^vy92E!eo^q zFNy&~B(C*@fhF?eD0}{N_DR8>W}o?JRgc?o2D652q~CaGBo7c23U80tXB16+YQ@P1 z8egOtqz#UeCo6_GEZ22(wj z&%d`AY??Usa{khBc*20iI|je{f)lE|?&Al{^>dVZzgOVXD_W0rP4k;GD!Cv2_U|{z z^j=24Ij)O%ZM{ie!8Q=@Z1;IraqE={XR|iHeX2L{j?HV=VaL{U(Uk{FwRnTEKz@fD z{N+7yakq)jtquhop8NdNx8v>1j>YQB2kO0UGqtUb<<858dI;`w-TY2pla{}mh`TRL zw>s6;FCSS1-z}70IW^8MA3OKDuUxh|w_Y!wxJJ7VSzbAJ;;%q%J{}vmZ8zT#bj|He zJhmtWTnE%w&XUxdHklb6hn!c=vk*M@-l01WD}$e%<%)YAsJ6Myyl%ZH*!4L4DB!*@ zyK<%L{WvA(?Y?roa^2SJahz1=ULx;{*e>pM_POn$7NzY|RofkgQ@h83`s&>*LhyOK zm`95{IqIAqADT_2BN55-hh3BAtMH!3X7}fhKzxDQ;U}*?%^hX#0CEcbN9yecv5X^-j^@E6fo^a_aQ4#t!p3)AP zp>JZ}2oVC>>q`V*Q3#WOI)R4WMd$58&BEIBo$?VKMO}igJv#MZ5zrCEK8Omkpmv>{ zw@VDYV|93!swmP(T>RrTJ0ow8%6*rN3LUPf&Moa>X5??ZEa~EIB+VY+fF4g7-j_HMuHVJui+b9Wi;d{}x`>N|*!uiY zQvw3|!fN_f;w1t~d&9T-qMBPG=n2Cv`eG?0M`8Lym-^yV`ah$##$Vud)Bf&%Ef*f*r`l8Tdjmki#~RD>{&;GLUa1mG97>#G8umGEiiJT$Cqe z>)T&4C6!${P$rsKdNEKL5L%8Stqe8zRdg_ce6WThq1tG${{3J*Dt3K>bWOxyqXkyu zH)$hg-`0!4HrSzdoS_bip-#4;F43WHDns2eG62wEi$@|bK*r2qXrN|j@Y~SP)KI6x zP=5ke3q>d`4fH5U{4m?_r06hss(EOHLY6vqD53A`3@Y|?-ta=r@RX74{8G~F)UZN> z>>?@*>8UhJHdH$W%sR=)#)Is_(D2Fw`d9)M^C@8Yz1+e#U#2~2A{zfLijf1A;T;FL zM<2QIQq284xf2;#enBW~M1R_BC|z=-byPWQau`519KV9x1)J10tuVUD21RrVi-RclvVG)wXcT2w z2K;?=&PVQ1f+o%d5XU5cZlM70I0k%)gh;7?u0K}7rZ_n@ayT`1nI|tb<$FsqK{hRe zBRf8;F@ETx2oM~T_XAHLJB|_7Dgk1~h=-w2-YE@J_%mb3pi_q|3`!%0GNp9yFSKTO09& z3VrA@0UfAJI1EK(Gd^BA!8@!>COai}snY&lMa(jSDo};{kwO{{5JEJp+^qsht;psN z$bVLqf2OL4OSn>_N|Z9KqdKWIJY7vbt@rtvE~OgwrK$mCxcTFy0{Z|1+kqaaT2_iXzfQVS21VIH8If>*9B1zC9 z=bUqtj37A(7K(s?fT%=4KqP0BAcA)S-MxD4wb#1qoO{pS=jrXoR-eY2)*SErjWOOa z2J$)vZ2ivK;%PkI8F0{(bU34tiFuu8Jm`FX(8X`iHEz)D@t}LPhU-<0N>sYX!5599 zkAn~KG$VfuVondaF%Egl4>3v)`I>0X>J0h&X})F?OhbPuTzWHgHpIh6n<#Me4%)35|*h%nD43WcYXxhNLX^4r070D*&A)K z&=H}HhzC!ji_ed$u2a-7jYjc~avAC5-yVHyuT!QpT7?%^>sMb#m0iCa-0)`9gn+2A zbo3>aPV={+(y((_CRB?a^^4Mxj^z>l%et?Yd7j_SEG+%lUj4BpPPg^U$KE$O2iQco9vk&L|Nhn3SlFqyFJqsoPk+K2pCqY^Vjchd zMf`#6_!lO|(X=G|tWj**SVE$HH#GXfFKFQ^LDjx?-WRgD$0Kv6lZsyH&v?pD+US>2 zecG@YS^TEnPolGZo}hX^Xr5|xxQXsZoc`*WPmz}luyh8`ObnK96TtNeTORB0n&=hd zjqZ_r8kjKHh?_VdN&WfiEdTt+HyDbak$SCoV?X?&1&4L2sPy3m>> z8$TK2pwHb*@vQ02(()vSf)TmE*bBcY#&})c6*A_5ss7WGoC6cNHhO&O`Z(cJ+DTJ% z4<}EkPm#$OiROJibzsC0erNd1lxXv327Lok)5#{PyF&F-5(7%~*9=ZPG=j+(pA#^W z^*2C{e;y*aE7&t}M&Pcp`kf0~)7P45RMm|Gg6_uZqHb_}s%Fx=EHiz5%r#`#SHGAKA_WRXYmv}RYuvxd7S@(m& z*#`q=o^NJ7x6CX|rXNw8JFd)niO(gO&-yga`l`>lna=q?oDJ}wyB|LnBr_XaGw0AY z7kV%gHZy0lH5bu56G=U9!7(2#GZUjQe?xsf?&0TnXA3(2`NWk^NqH7C)$=I|$^W z$(Cg*-eP&)@KX+}#50SPro&b0R4K>YJ1%6w6 zZaRdew)Q=}^nzpPrGho)_R_1F!8Ye5C%>hRlY_7GmTaq+y8LIn2bPj&mU`Oe4|);H zY1GSax90oBmopWX-*YT{FkQ}ZULI6m7>Zxc%Ud4tUl?s$E*w}Mt63P|S}sAXOw24y za;%hzuY9InoK|0{FkP8ZSe*4=sg7TncV1kmS*dGVS;|{no>^(!T3H=fT%%rX=2+c8 zENv>Rwy3Xu6JOeLUTyVX-7#I-&0B4+S>20Y`Z2KDIkS4uw)7LR_J(v0_H!97VLz#` zhAX&&XJ$X`yoPVEf=sZV&08akSRrb+Ul>>;dA>rrZNH3IN3E`qb2_Yvub*IErPOfP zG+n1wU8M#*Cl&RDj}H0$tVYn}PiDhrL{PmT>Xvb9r+2aa%w@zXTx z94;Fa0UKP3>)iPpRJ9wtF6(@Q8?>_<0{QEL_?rwgo5F+ZA`+V?6*tB3H_n)CvbtR|T_N#Q>+m z+Z&hLRW8?leQxsgO2Ej~S*Oy{ud1plS7^RXv3|SZqNS>MKj8Ma+r3RUUA~Qbebeks z)5`xgX7NpDc0_mZenI6o{fIOJ{H+17u&RI>H zmVzpl?atheTQ<)HZML1eVB7YqV``i(YR|XsZ4cUNY%7^(awe5|6(pzyS=i?uX#-+I-%L`qUgM;r4-hH`WdvYqo1jvzySXn~<<;k-wW<>wLc5O+$A# zZM!{Ud$+l1H}iRFI;Z>Df!!R93ppC@1)<=3u$>>^j$!^@=)#{_`(3W=d&zT`lG*P` z3E#`Mneu2JNREH6VBV=zeBdLo&SAe-8?aZGuveeI*HF9H*uM8{aIa~0uX%g#IsOkU z&5st&A1`|Mo*fK2vZ%!h{b+Of(H`)lBjLyE{2!eeKhg+r%sNIqANw9~n|sHW|LCLH zf6KYwFR}lQ=0}=^H@CeH&a9&<(x(>R^L_sQNbUY;`~JuL2OnJagoNH_%BPvI;PfVV zwhiuoRy>&2IQTOAVBBSoo5jb(+&&xSQ%~cw&V*B+;W;yVu(ExyD(E@;Xs>G0K6?#! z>d_wen(sQ*!>>O*KI8w~N%*;&|8r)Lt}fu={Hj(imrtFbj|>8-dM6o$Yq-V&c@xrz zSkJAowgysg-Y79&XKM?kmvCH~TR+tij8u%~v)EwojOEctzD3)1qAO9vtiQx!lcOh9 z%4K7TZj-q$^9zE4_@)3?UyMnf7&qMp_xpky`8P@}zggbS(5{WPj$rc(m40H>9?fsH z#W#|!Xm*y0IT?+8t`27HE}erHVlIr$;y z%_r8oBBp`C68Bb?c17oULVvy%r9UgS@V-c+(sud#nWdo$qKGH_F5)X68(cP5miHv= zdutT&1#N#wZcKM3h+a7N!)bG_KmTT#?S8}5tix}sTaE@mB!i*)_aTbkhu#4L?tfJe z{jZ<%>jeHUIsv5HKTHPqhOxl|X(zId8qY6jUeCmYv0Mzs9VW-NM{(UO@|9czw@c_u zyc1nz-c>(QyM>RJg*baN#696m4L7*n=CFma=_Oz1ewR<0CYP41#`B^0ypGYBdmqnW zJ|(9@?rwF-H~%|4*l(loHR|+PWSqH zFDPzHH{HA6Gbp@0({#@1*l>9?l9m^8gKop4j^aU1aTQSKqOvMVDppA;dAW;MYwMc` z32DB5-6o-6rKV<+SGYbo`FUVqh>QD7&g0_Kr-jd7xV*Ew$HOD>tofyuw#nMsCM_-d zix;ow<`#;Q?@P-l2@0O8ta>IXB_Ykphe9z*iVEH41PYXXByeP|2gD46gj7N48&`OOw)KIunmS}^I)=zL@g9K1quSzCu`?>!m8reOmQ8 zg(mQZbvix9=$Ou*R?&mg&LkKoi{(8si!U@)v=|?pNw(MjYU+8f&BE-`{f30uG!KC) z&IgaSxXop~yfx-BeNHZqS-p%@3)U%IHZ$lAgBe2bP$0aj4v> zjF4Tl_U(Tnx%~KpNc?g&v8_&G?MDveis5H}qQ}uQ9Kp5?p79KcjY|lmpuuKa$V|i5 zwP3qutAXN#=Rf-Kh4gXoiRYRTF2VLMw5X*MUJ~aU(?ciP@t(dS*WiF!h|I1GwYlgK zCv==l!QFVtl)yOj+A(S=zKiEkt4P~yo9%ki z%@i}+Gc)Nv&HA%h`6O=h-XY;q2}NZBri)KLJ#b$liB6AQt~x>bV8v;rr!l?x=fkz7 z7x)Gi>tpm09xip~>YvSYUU($E-rvRG`K|2?bL`g8&(@~xF`Atw)z1NCH+OF(Utsxu z?rGV>D=V{cqfa!NR6p+ zPtleV-00JO-#GELHNWMpR=JNaf#E)Shl#wV)t5aNN%$>6ZpO3R@2fj2Fux@QvqVI+KqpU$$^+R1^7w~f zS__Fih`Y1Zkf}s@p(6!?CUEJ-^!2ni5oJ_n^}~LkKW1&B|2mtZ(MwrMzO#$eNwpA z7J9ZT#f3h!Our0Ud{Sa)=e0PP1uWB^m0qh8FAp9GCK{E&$$1dB%-=RO?QLW5iDSuF zg!jEzA+BpIVWNig*1o=G&0KeSBe70x6B%k)f&eH-^|s?&hQY?=-tb2i;$ zYkoEZgW#FV^aYmbtU!(;V3`(Qn9GS&;F-^jRsTMl0GlY}zLMlVJfD|Y^p!gy$KTRY z>9J+fLScz*6;J#@Sq+bs{8MeM#gaN1C*HWmnFTAkCS|&%vQ|*O@dwY^>mU9DL(ea6+#yPCX} zoVeO#z7mr4{6{=NxgQQbpJ@v&o3&6LvEY@G7jU^H`*af3)Z*6FJJ#!Q^tFTQZO_z+ z9jnmLv+W(!JKHO?MrtTyaDtebmr zPuG2Y?PP>UQ>P&Fne`r`QID@QaOT8s??e3dSBF)|Jh!jft|shEsLCJc&L)uE{_X&@ z@#e~Ns-JsuZ&c&=zy9=nzO~C)|40*P<2CpW6`atX1F@tGC+jGj7e+}D#VX@6cSI9B ziSU-Kn7Anx*b-xpddO7u7C%Yk1?pk0?>AA_Fg03A>LRsM0`ET&CCy;zMmYRsTCzyE zvoEH9wGYrH-<^cK5?NViS_3Z`BPqxeTNgf*2c_(tq!it1<#sd;5^2e%BFKJ)uqBt# z^SDe~E7=ww>kw?Fdzn6^t}V7ID$wq0=HnTqcBzr|aM$jfliMBbGA9>Qep?^;4^mrH zTKR|60-Xg?_y>{#9RyMfWbv3vf#6yT-TF_d6v!^%*JCyXU<&XQ$Sz=0AhkeqfzARj zJ=Rvgz_4FD`hQ9}e*J&{7f;~dm)Z`N*8eEAQ7~WpKTB?m13N@sJajhe)hyV*?Mh@2{2SL63z-odEw(+!ej-D4RB?`NcdR#;MBxIEeLT0H#>&>iVzlgk)v?hg;NtN zi?8x;OYOWmbR@N|Gll;`YTYd9FsZSfVixfU>P6ftN&1IU8~)WI?oetKA749^TKy`^ z*dwXE^pxjNY6YAYBM+rkwg~~G_Bp9e&ePVZ;F91jj#0}>F1f{$!hUzn<*F3@uB@7& z8=d^VpPY%z>PVw`ZBu3l6IbdjpAcm>E~OI)dTzF0Zl#!AD7UB4cxK#&btn-oqkQzkx`Qoa!NHa@;mY04+NULs zRqW4GZMsD?7B;LT2A|#ODP1qQS1fi3qm114f(~-$FsgXcq?#Dx27v@Z`pJ?{M;(4kyN_mDcPsYRXbKYX^qb9X6f}8 z7X*zrO|A>Od4I{lA)7(<0tM*N|I3VlF=wPK<+Xun~ayO zHH*?Akm9V7T5MozfY3Upsx{li?4b+X$^pUBKx)ad$7ME5Yqbm?rpr^+&3bgfDM*mX*1=4w}n}Ah;XddTukF&YI zAoPDRsQ>!o|D7lB?@FpOI~x5TGP}f=E2g_s{+8Kg9;l+LD)?<9v(t269-!BwfnT8) zFYANM?%_seJ<|{L$CaLkOe*TfnO&-`__^cEt`5oz(CaQC*vP!54#UUe51r58sWRC?U2yx{4wssbRhYt@3l%|z@sfPr6@ce}1#rK?^2ge_c% z=P!3$1FOyV7@J4yHfH;BijBuTs=qD{Ro+wYZgMwY29g?bK}ipT`~LI0VtfOA4Bpqp z&s~b+`VeAgb92!}&j9j)@8NMxn7-uB)C7_$2{OAPc`0xLbCAR)69e?>@d_~sBi)&W z{8{{w2`~nDITjDjr{)M!?9@2SXwI(0Bqf1$Q-w#8}V>Ts)TFGP_DZQvV6P zx*2;gpoL&~vMc6!+A!k8nI!A@YEz6|4L7HT!-B?as_V7;vmOs-=4Wqsw$aRG_)?!K za1Wp^;!+I?ADqjM?D=Z$8lzxop%P~aGP|kiRou=Q&OAkmS;`s<1qDV zN_l7&i>pM$cpYm8ii&0H5rd0Qum|5$fK^YK&$gX<(XygOxOl0crl23(_-`59IwUYj4507l{(k-l%$5an%65Pt2I`p&m!LP+J$e4$FDZ=tym>K|KW`k zx`TsneW%5n)q2gFaP`C53;QAh;pb$tx7S-eltUdFX+C{eZws^}uBc`1y1mg68yvb( z$@%ibMrURb@x5}9-jc;GTR^Y(r1C#(_S6j!f31)s3tQ+lW3{QWQ*NxUdMbZG&*uFN zoe?KZ4GmBJ588ss-!u$dm;?rmPS87Rm?bm`3|r17ZK>PU>IsfIcG1<|b{X6kJQ#D& zNRqhyXgf{lllLNR-K_u`Tj9yz+C<4)5fZi{pQ8h4&)x*|D*7eaAhG^NhD*BGY_=$^ z)Q$WEQuPIer%$9ta-W}kih0uY@b)r#()QfM)75n03V>cV#>_!UcLg zINoq%0;F?3fXClfo^9{>;_*jbWFayy=gWGX_EtVQ?_b+&kGQ#i zcGB+omG7V4|2z=fW&Q~zGQ-+hF}Sw~;5dosUB154WY(EVY#kJY%4?^nZ%yD`bZ#b* zvvWTAW8$F*?TgSz)M-w>EcqMe6x2obYy!lWi4BlZbViZ>13t{8Om{EdSYDH2KEI@d zdK4JRYTK%!bS0Z2p`(>UYCT9TG@CL@EE5AAWqXe*p~+y-`8+K9NH0N>_qb09C?(KK zz?>k-dtCYiGiYg8gax^Ih)8%q^;2F(5{X9+#1aT(&SRhBGAO@{5|B(H5?U$}S}t}D ztl_we^vN1Sddh7^HM5kqm5Pr+HX~%1f3CwdP#S4rY8gKL&&6DHP@al z6ZYGHO!g=aKjk9?^-)esKF;;kPZ}U_jiaw|+sRx}ABoE+d!iFk~K4H9Q8K9S@Z=c-lvL$}- z`+&^GL%lp4kol}`9q1*m!SR619F>e~O%30GUV?1zVI}lXFAoP~?rzS#D?Y4*9uLSo ztc33EY%YH4{ok#G7EA^Ixe|(`haraQSYde61*iORk$s;dXb{}F5tpu+Pe)zm;l{>X z5hs|8Rwd~l*!XgZG2lpBq!?wFLB0M|w3B_g7^A$+s!vzf_o7Bx%?LJs-@Qx!Lq zC8RS%n|bj|yP@$}krPBpI38CPxm0@g&$Tf3DaMZw`!re5e%GkUuct@e|5 z5sn?PVOJ`QIWm?sJ9$Lg9J>OWh%4`i^fGF`5&!wcz9$Orc=6>?9`QWX4V{FS{2s)& zfi3^%PcXNZK}gi!-G)U-6#U1~>*q?B#4U7Hg)gaHH*yHV*!8zJzkJonE5t%W%WmZ! zik7<)mR4Gt9d2QC3nUShl%&J6feAH?SBU@l>oEx>H4Y(uULlSvx(=s=xaWJ~<`*kL zW-+Q~skwcSSBM*=9znU!QAizV#wj6DARBG%gB(JlYO%ebFnC8-U+wU(@sn3bw4$=k z@#&JIkSHh>stLKMT+z6A=^C$)3;L3prjY~Q6<+}XDLDNZ1|jaKTcTF(9xwuiW2FJ= zLQF!>#LC~_-V3A!$ces@!~9~eyvhw4I*zjYqH$@ZZ(on838_2YSHGyFEOYUSv61l& zT?ZRXq`$j|mac;{#+!`%WZB{p7nfMq;?n=rSofFx-2YAx2kk6)2qfz7ryO4lX9vxu z$3YxSIqpu9ISS$cdKApUFC9%eR?CsO-Eix-JR*IR?nF*M3+*QN>veJC) zu)R&-R-ME00>~rUsXTMrKZ2f%ST7QgM|2f5N)7`-yd>T~j25O;f}Oh9jqHjAc|@DI z?m%7+rD^OH@2bVY@__JM?~9c|&?zG@<#^Nt!zFJIX*xV;4Ic+Vd@yitXKl170R(ZT zDVvWUKoEc8^j{dn|4BQ`zkr_q*OJ}8&LjR-va_6joM>7!pO@;qFrT04&$CdF8-FEfDNWx;^y0Ju90yeSh7@AgkA`C==W4|1-v|!m%i+iTr z8V6eJw89tCG!%j8*LbF}Cy9L5aTegH7jRsY#>!qKjUitLQWRS5V`rX#AU%wsd?h_` z)kfonjE&<5oDU4_JxI)wP;W1xaXA{Ts4L!qAa3*;eao{ZM}&KQv})j_HLTO zaNwl5CkD^MM}@uN!YR+ENaKq-EiW(O>xn~DTxzf0;tiem`p7@Tf2t9Fd(7qy?wtGm zd9S^5b@Onqw~K=@0rpk>(3Lfz(b&7`HR!rWS6a#XNOe}qFY8$Q)(dzGsNsxtrU+8z zo0Ym_g@~$_-n3?)?;92s(%)+(#zD2vG%B83e_C@BLxY5^F5r7Y)%$W}T+ z2dPVp5QVqvrFnJ-NZHWnM9e*3CT$1k8m$~EuOO9zy%mpk!pQL%7m6B*i(`H%hc@b> z0(HRz0W{Y_GB6|$)d}NCK^US9B}MUZa!6VU&N4fsIBtl><3=eFwm}dbGApt_$(tB~ zLMRC+5~>(_Q?H#s{jGQCfNmcNGMMrX)EFo#P)i_^VD|sjn_56BfldPHJH{&@ zi9ig2C;=tx>FEao_=n;Fp%WFo0JQGQm)Sc;)_>X1{p*AM6;A*;f7owM%Yw!FAjzo3 z63baJe#A^XzFZD$uY$=~sap#i?z{>=$>dF(WY7NE2XUiFH%TN53WDpi#S)-RyHf=4 zra}oSXRaj+Jo@ewc#lgp6i&u<9wRp2|3?<`xBk+@Eac1J-}*}r1zDWe3x0!u7()~X zVe0SWP03qo2#y7N?i&&FX|heeAR)s^ESJbKf~e@3J&3X1#$K^7KH3RaLwFO8+&zUM z2^gFhVi6M}#yY|9lkc2kpP=IFMP1)2UCQBVTja3rTb7VcmC8}ejk<( zy8vB1y8VB?`u`i39^80v@BfP5j9;JWuYUr6_Z+7uMxnD_2B1#C4Tsdg(h*Vyk=Bl< zIoM!^^TDB-4o0t|xX99plPbPoV>t9W4@c-JCsW#F=UPPPUkj4CcQ8FyInx(%TJ{E? zyI9tZuq!D%z70{2Z-uDb)ovoZZvLS_SJaYtQJD95>Bzt7Ho04YgIr@`L062!ARYti z0y;s{p7`a52u~NW`G!2z-m4^#oLPMdOv#l*LL5U-H8z64prIu%gd`E|%DELY96TP# zJQF$tP2*Cp#b0xQoFIHQLpvD_G^`7kmI6{*L$7+_LR@oASgbcr!=IafPQWH%wvgtp zDDl_72fseyzdC`xixND#9p#fP5R6edRq1K=D__(p{f`|_Kfek@od>IlqBGkfPv0!c zEg*+F|=ltLy=gVBBn?PqAYNR;ZRGWwU1vO zM~Ofj7zdmYlKB-={?+&G*YExHPXIZ2>~jT+(qY6rx|*mva{efWlOD9fQx|=y_(@w6 z9avulF;P9lrHh_Wiat$7@019J_lC2o5*pLRuy%)13QEOV+~a6VIpdPe$NiO4HBc<9 z#$(=bULpC~Z`}|7kvsS>Fx(PSRAl@D1X+&}hVp(}{#bKuc|5GhWwpQg;Y~OK^0Iy1 z0vQ&OJQyCyf11e!KWISTi^gN51XZ2{CZ-^<%DaXQFigimux_KJ*UF91x4oR0AbpMdbBg_lI0Q=|VS&=(NFZ#Q8)@sTvHSNRGh;78 z9<3~YIe+u)aDGAv_mTJv7esNXVJH{6VrXHM2*+TcXbNLY20WIK=dKsM8X6A*T`k#s zP=PWQp5Fg`2&#bFqj4LW7ZM@7iOb+i!M=tz!Dojcyf{5929K1O@=wWHLYNgC1+o2l zH2srX_3M}ahnxVi2ExIG(B+x3K48D3F48a)?T=3-4JT7%n(} z9TK|R5zTSt2C>C;Be^&lrf9z14Wmv72ibwUYmb58;@qUr+KJPxS+Ivae3G$-*Rv2A zBG%e!3$jJGy#!j7QQo(`bqSPr=;J4Fi%kgFP==93uzdJbg^6+>+KUjP=Sn2R3V7i` zC}@0v2Dl6Tw@*^4p?P5lh(bD3bM5dQ#C77?VNS*S&p8!Rm^+*tI{o`q=H-_JZYSS> zP*8UP)fZ5M0Yw*JI2IPYa9np`I>~e2^$~C?gQCknR$NXp^U^bLf~pM2!h%xGuSD$s zkbCeK_?XC-zg^{)qpPfB53Vv1xXPMpte7B5e*O2fQi}QlJq6OvyuJ++akB zg6po+=#JMFX*Gy6=n5tgVqKQ4G~%w~M`|p=VRk3jP+XaIpPs=`?B%ElFPuPKyc6aq zLs^{GU>H{<3f(g42d9WUjbVj+h}2-#hES%QIVqhOnuYdQqRGI&2A>!d3cmrP`TbsB z^sW8lMw?nWf}4wvq@<)~BR?etdW1m56hX`+EvL-JE=Wv5cg7<2FYpig>m&R+0dNBU zkSjf^s2t`>?_eM*QA?031%w0UcQJCWvnfRXF_Qoi()azXOZA%c*_-*jhh3^4Tt!UZ z9vLOIH_cV^B=D4eU*mo_ujlXUsqSZ9*Zc$F(3G_t&g<#ny$`xn4~>!@JAz=1`zPw~ zqc!evWJcrCt|CYCyJVE@t1Rl%Rg3lCXxqIQD8BhJ{VIbv1jlh5kl}v-x>Qr_XgX{t zCFjQ5Vt5rj&SBT4x&%)}Tx*ijhtp)}l$F#RH8_FP?kG0b8wp$;WrWpDd-1pkDb9mt z(51TlnW$R^dJg7n!XGos_TnAR>&X_IK;u&;9?t7QlH=O(uVG*mhx2+M7KjFiKoWcB z(w`p>RIo&lW+D1L$bbj~9t_9f1w@tO@B$(a2rS+Kp&+(^zydlsetj)}oxor01dt-X za{vTKoD`E}nUwPCM+uM*jE4?0v`s4fUf|U z3e0UBfvKRe>3La2jftfluoeI>!LfNj$Ix_Qa_ZPN03`PKDGx%$>#jH7wzfdaK8P8> zLXeh~3nE8GPF_TG!utApX?f-F=tp2GaDU_j>;%9|keQv+{C);_06Z~4%^zlFR=3ig z4?E>{-i&CPUswRjee5WB`|dp;1YjosUV>vz0CKKxWMyGwY?$z3cW-}Sdi6$l6EGDh zDJd^4uK;%U~g5ZjN1^+tWD_Hxs`>($U zzkc_>_ymq#$+-50pbh}XVfn2NaCq~CjamW;c@JO7r(TAjMBR_QT==pwl$X`mRAPnh zcKR0dPj-Q+mIKzVqK7w+e8srKaqdOBYz)tRb4u3!$7=iyp}@=4o`)ZDt-A9zx4MsN zqvO7mP{~l`?bjS)1=JX=D*LlFo(vN69~)fX*;2Vmlo`}N_^GhWTPJkw1-~%8{tuM! z-OO-i6-0@v;q>be!MovwZk4nCfhjz$LXkLNF1|cMbKkAxB7$OI!{ha&4-5xoE$)gP z;pj)ustMjgv)-}uDUUeeY4KjxZxo^Ks@dG&zW64Kfd|XqSG88sRC-{LA52xV^aWvM zhN?5&vaKZ&oOa$jCwXzI&5lE&SXx+amI3+R8z$oWo*9BRTqay)Ok9}ZTW$&TR#U=t zx7?n#NTkTF((OcgpkUi$vO90{GjNH#Uol>UNX1?v-<7^M@D}Me$+}ERs_5lLp>Ln! zS#EL%vK!5+8*xS$tEI_N3Ap7b(8Bv5r~0@K2)BC7blQAU*q#9w#A9kcMP@QLW6F+|@^Ui~I{Rd-6n7JX-#vvug+p@z(eqlZ8gq)B9M=g~iu-F3@?CDZ z^Q*AEmlkXz$tiB|+lH2)b+l}xBNBE!y?uONONi3#aJ3%ZsAl(-Kz<^ zAiK}*42*R{E5TDwP|t`xzR2Z=xV?qHSu4X9-z3Bmta0eI%oSfPjl|K#!i!RIPR-(4 z-_%RI);`YO$oaO1<#a`yr^iNNmVXsEsn$7uC!<*i6kgX|+(v zlzps?DO8frCsotw$B2LM?mKHnpfehqLk#7V?RQ#%IDr!st?<-ohTWo=d^-JfPSUgM zr%FjLs&){@C%$n$4(xm%xVp5aOu`hOKGv`-RB2wTNHA-8 zd=o>EWUvq&+sYonYZKj#pnDhJVLjuQ&i%$xdoy{cJ5Rj!^&4CF&6Ek^e9899J&wtn zsdHEIr3PR3I5%vjt%c@G&tC3zAK6UbIq1%p*?z4mOX0A#uDBN8kGRlwTp50!oV#m=K51SS786ers(=3VyZ-7ORa3Vlym) zoi2h=qtps-#N{DTN=l7VUQy%z*^ukPE&hgEnVppR7EANWWc}}RWt`Ok<}7?BW-m>-=gEuI_ut>l?2|aqv*Y3(5+J#R^8OHjpc$&Z0VIWh~lw ztFC4p@1DGpg4Cqt)%Q_Nw?oA7As%Jg{aFR%#vcgx@N!jdw2{# z+J+x}`+0Cp)#Ee#rU&&m!^;P%o!?knUp_Z#)qjhnZmdL+yHlsnw)$x1V4~b{1B^@lD)7e({pTgOr|d$u>Gs zq}%X!wOqogS62L1a%1#H4g*_x^3*(fyE?`;Qq-?^(jeP}kJGmBVaU8%Fz}+Z(bj=e z*KN|u#P%yQA}PDw=GQ6@k_WqI#2a_t*oRl9&R&_78r|)2?Ws)P?w*y|+fBnoR%PNh zslsT#_XQqoisQclO=a|NBW(k-sK&Y!PH1ODhKpU~xN4!Jt=$*VBbI;8=8Y;oy`TVB z3;G7u+Y46;uSn)hF`lEP#<>Q8Y?-eHmxN4wLX+Q%2!AX6ob7uOiHlGYQYy7Nzv%Z~ zN}&GWn`|x#mA;)egl!8d-!$@}hp>2x7%wtnJvcl!8RAA^$gQz(#f;>)u0i58Wh9h1 z=2(agxngrE((cTC2$xAn42uVOKd_pZ&>*p@s^pKd$@z|i=EO^25DxEqmJf1sFj(uD zt*a0HAkl1a)4@Gr$V!I+g7Bdh98$R7Cmmck8jYPTwXzgtWF;*lst93nu*1Q8D3p37VMRCh7vL5T1}tnWpCen4; zm`>}9qsQ6v7;JmtU^Y|Aq~4g3 zx%*r1rz@2;3E0{7eq4MQ|Ew&3^-*u<#JhVtt*Xr%3B5mN&i&l&i)j9uue!gW^Yi;q zZ}V2|LGS*`gP(g7WY2fnRSz~&e*TzKeg1v0_h75>=l)v6^B=RSKfjOuJlN@dez4v9 z^I#8T%V;rhNer$g2H}c9CSnNdFvLR`(j5$n){8>Yi&E2z+SQ9T(Tl#$i*d;7SH{X!Az>c>Nt&fPLkC>*9xT}w3qK{OakMxj_%#IJ5)>lr_ z_mZZsf~&7mqOWqD@0B6nYdgMbw0<`v{cdUcsk{1VCi-dD`RNY%>F@X%()t@o`WtKd zo4Wd&C;D5~`CAY9+wS<=(*`(71~_R3IJ*Y8CI-0I1$YbvJlqMu&<1)-2Ks6S`nv`m z1SSRs*9C?S1%~egM$!gFO9sVi2F1GuB_;+X*9D~x1*PuE6wB+D9AKFB$e;Gi<;$Y$!2oq%Q2^P}ulR*aU6(lw|m{X84S2_*`Q6LS6XMQ25GD z_!@1*hGfK7&4?}6h@HfU?{yJBh9VAjA|Sd*_}NHYtw@AhBr++Ius)J_IFfWX5=9sF zS^}cfilWwvs&kE^zZ}KDYM0UO!(b8hk|LUBII5%8hy8U_$&IM%h6q-R=-hzCXzsJo zl-!WJJw5|LOg+Mv`z$1O77Ccby`>gSKN%%`HilO#CV&I)rWzitRxD?s&-vY$Bx*cW zEpmljpPNas==#{JZgG@Rac}aYPqg5mAr+lnb}G8qi`>y_bTKC`$CJ0n_U?BG&MiBxH!MGFt<26y8tkFY;yYJ#OLwJ=`UaAroYSqR0enq zI2ph&AY?$x0FnV719+aAo&~53kofcTEWl>8ydq#`0LjO|d<@9|n*l-tP6o6L$QjTw zKp;TNfSEOQ4FD|zW(G$5Khttde9|#615~c5Yt+y+0N4ze+0ohk4{VN(O9bQ$F#8YB zJ>X}wyb>sG1Ae~e;(ma3&@H3!jfY4x~OKd{&A0Q17IyOED zU~_##Q)O+#F+6MO8T=WZom?LrC&B?mAM-PywT*zH z0YU?K1_%w{8IUvJ=Zc#8V}91uGXU`XUrdI7;UD*(m4={B^idoA-=~`_o+7|%mp{f; z%O{8aF~CI2f#WFM#H1Ws(3}0+Du)+2$1SfsmkZPnS2^6~9XRs7hio33Z9bSgAC`tb z)r5i7E_%iHR)P0j!hHO&G-SH#a#$J?rM?CRe%=G*&9Tk&HdzGack zdb_O4g0IMKJU2dI-ZhKF*u&3h4((o;@2(2N6#0jeP!iPSZ zzeVt+W*W<~<*MbnoR^8sK~HdBmc^H&pYS2NSrn)iZY(4I`4VsV?sS~(`rIjbbTdmN ztNckP;775ajFB`#_`=YTHa_`TKh}B@3|WyvuB>ZHkC~%Dm-=F zOfGgt*2FY9K80%RY-Sc>zP=CgWTPyQI{<*okqs&Fs8NVxvG~Ix-c0%9Nb$_4 zK9Oo)h5BA0hRT(mK+;*4n3*oYF$sn@%AdkcOY&|$7QLWzuc~#$eCeX&$@-EvN#eXt zRj$-yl!Z8NCRz!^TzO~FY|>#%Da^RUXnH7cjiUk5R54CnZ6M+vgl>)9k1_Pw=fCGZ zQc~I?GxLn2PeQ8JKAVY;C-R`Rfz;5E?AdrSSSWr#f~KH$S$o_?y^7lWByu-+Y|QDC zG=KiNbMH?#TTbcLzrEM%Ay#5X8oJe=7o1|mldr)(CB+$NN!58L+lx6~U7Ss85s$%D zJFcjWv4l=YZ;v9qV!Vw5_X&%kr*aB$?Bg>tfe@|?1D0Vj?r^)|% zNM20PzW7cSP7=&9@>DS01Ti}pLT}` z!mxL+Xeoc63^iXr*v$H#cQfaueFf{1#fOU>@oA~0o#%cUBb^!sE9RQoJp{Bf@-lq;0Woykx4eYT$aiBKt?dJDfQnXvv* zrTg@ma(XKP6eQUfe5B%1Mv!6(OgAq`T)LH6R3&;D@52rJ6CZBM=NBdv^5o?;FqH_b z7pA_od=Yzbpd$HOiTTxH?ZM80nuc$s_F-1qr0Bthk#A32-xTX_D{It$r{cg5#2DhM z485S=Di6GBjeF3k8PAA@M~0OcbE*t?YHw9gn3tGdcZ86xTa}q4rRIt%BmHuQl?7C< zVT{<3frhQ>^00$aYqLen`;mcD_=y->m#)$A?_0H4k`-J+`_U=WX$YzG#4(}kFR%p%c%Onkwd$`HscHV6%wJW(PP8f)V-gb_}nk!o`KepR&%xL{Y#jLN6) zMwuiILKx54QGf0wjputLYaZ=7`faHaO^fGWKOnC#+<{L(bb;l*oT;#LiJ-!sX^%h% z3+U$Vs8d!3LQr$`uTI;GInjKzKv-)G?jUcAo;KuG$!PlR+IA;Y;FzxZ%*<z%%Y=unTeIxvy-fk);~c-f-jkq1N;3g?AX|WKxocJ)NB^9y1Q&a7~O1 z^@x*V?3ZnLA^b~q;^b5-2%@6~u7Z>TYY4hdAD8mO8f|g>xt0?Ev z9V|U+GkNd4=~sWd52d6qVtqZx^JQjNtIc{9jA>c=rRK<^9?1;e0}ZR)OsdfI!N5LBmXryxbNe$8u+pmR}*Zc*_oBf3)>n0y&#GL?pCSQ{ZqUy zlEP!}d0A+ekDYKD3CpZMk;Uq(Jjpg3&uyM_4|~sKH0hGrd;Jc*)dyvG64pQA;#uM* zu1p7AIo}{ErQe|U)Bf0_M|hoONhpYkV=7<~#)thKdSL~4VJsMG%%grzI%{z!!6?kT zLFmuWOEO_d-+{tkgZ>P?WaVC5fhdpaL+Hhi{Fl&cP6t=}6Z8i9dXPhZhTfZ!zT9tp z524r9S2fV@5PE6-v;!#&0QAoJKDd4ey;`pR>`(oj68-NW16-B-0RZ103b?w1lFP)w zX~DUmhLUCpJn+#BWWMf;(-Md~83>035l02Ya`{s`;B0SGs1;~E912q2K^fcQ!SCSS z#iD$X6yaP!$gE((>p@R6{Sp#`1fB+keF>^D_eH(MRe>Nm6hZ-mr^XfNg@mM0kYOJ# zAZj=SWpo5u524Cv!%RC+5^E0-_BaxKr}v>hBTXxiVW#FmP%!X|Sfjkdx_3uC6aQ0Fg`GbZ^_)5S8(M=20QvknIVnssCe{N@_5TY$4?9-%oA z@e>)@o#?AoA4)15Q>GcST^lL28zx-{m$8UPyT#%N$11#zmk)})JRESM1<$ZNmNF0vjXQJq{D5SC|wX>+*v;H6U-UBMCbcWDSR8t*B(3isZY)$@+)M2DB;n#Z!!QQXV;^7)Pa;RHT>QBbkf5d z(j%hMqbky4hST32rpM7{B#37u>13ohWTZu9WK?8i4QJ#WX5`Uk7KmpS>138TWR^u` zR#aqG4QJLIX4cYX)r)5}=wvlIWHm=+wN_-c4`+2AW_8hK_lRfr>16jiWDiDV4_9Q5 z4rh-aW>3=QOpE8t=;X{f*Ve_vFL|{Z=uF*q*kw7rvgNML?Z8W7Q(S{Y7#3?ODX%{~N44v1DjL<6!K5Yd1*1++DQJ_eAM zfQSZ!Ga#!0`3wkZK;!}?NOn|C0yh1-Y2CpVnO(4|<+Jwi7-Btxda?*b>I0 zU7xjY1!fZ>A5L3qJx{$EE&iHyg{SX+R|3MDRd0BM`!)a$Cnhh1Jn2iv%{*7_Q*3%8 zm!r<-MH&UqK>kDDcMQH4v%8ATMtt0tzpUP@unZsG@fOV;FLxqY8ygbM`&=hRKqpCP zw}EaDrMUbKZzyG^C4|C-I$llAABvFWUqMMH)I(%1muWe#yW#ic5t)a{?=1jCOlYe8 z4VPW%zH^@S0sb_`U#InoJ4+VqJ!;Wl#R*5Vv~^2grtXKi!RMFy(rTHoOjXBqZnew^ zzq?FcBUkFyp(9uCD8|^`+OI#KC=u`~!>W@qh?4$AzoTuSNfyJ*u=@D%Zt&AhJnIIc z>N=|UXDgwi_neA$jF>!+@fs(zKIZQ*0SpVAQKnF5W|zlt5IYxZm@_c!bFVKBN|clDdprlM;&CwLr;DDidoMW{zwGqkI7`McV89gSyKvzQmX0njAollW_}%buBV^bE1|V zhIbDKbG2P~Q2DP4yv^*>g79byX`-4^@yck_Htj{d;@!;`Hx$$21|0XF#tA+n(0F(u z)HL#5tG9+}rBnvsQr)Jf7>JS6&B&`^SzkV%0o%UZU7M+LIF`MCLs35ToOo8IGwQ1R zMmW8a)>Gm}*8KcDnIgQi%^Oc}Yf+-)LaR7S5R@#oRcB^ws;#P%(5C(3`{jrFVjq*9 zclO3-26i9MMKch+lC8)v=IQK`N-nhI4NTSEYo1B#eDTz@S4w2ngy;exiZAU%~KA8AtqN*1gpeQ&jd8AO+?j)0KP{?v($CX;f9iGR3(w4P|s52yax?i2MV8P-g zAGktJ)!^;e!O1o9b~G-5(uXEUaOQr(oe;ZVE?&43VB$^Ucu^)Iu1P}2?JE^aef@MG zDaUj2L^TsHG07#t3x?m>Zmrn`Um14`WEV_grgCWx;~1VA!*9VyqYbo8Wo$Nd49?Kj}_WX_E+0?8w&O}JtAhy}?qgw;kiS9Tg7Grm z3Z<^aNMAui-&5BD_?I#isq8TXVms-o)o8i}RZNZ5fxqT zF0Uw9ufBMw>Z#Kg%YBjMnO+7XiGlM8pP_7)rlC|rR_UNox7JM|-xUYz`(LowUX<4_ zR7DZ&lZTnA;Hvri+$q!0$hm(7z!7O1>a;R|(W^@1iRnVS$RS1a+%8WDCWnZ)A;O8X zSo9MD%rIG632rWeh#FuX?g;}3Q)U4GqYI97Xo^OUp)J9XI@UCil4uIt$Gs*I)C+U+ zaZ=7`7atd>F%>`!_~Ya)kFDZU0Apv-x^Mb4#$s%lxtW*LCdBU@c4{*3e0uh9>oV%- zaIYq!qYWa2o`lkgAvl;VAh?9CM5r=2@r^o{3xF#gl^u+@vle;FV3N#&x*kD^>jGh( zA_stvH0$*))q#fa+tf(-IEIRx5Q7iH)I#ev&}noL&;|o$M(Xo+O?2Z-iE(M45CwsP zXruUq$tG3SW}`2BfoudxY5g2^PC*X$lJzNpUBrd(JtfrnXWH%eu~t~jCo2rR3^XO| z=0(rmg)){!;?T(hgtyk`ptYAEba~IAs2G580g1#5EQ}6S(j^N=Gh2Dwg2p99U-<}h z@1!DW!lW|oi4oDl7_NqMlyf$U(r!p*V|5@t&)Bi`NmnOs*2w4c4_3Zst+=h2lkbsjcb$%)m*XTA<~2ZoiT z;z>NY`RsCU9Ho5f)zw8&0;4`l@0E0%;H53O{)(?pUxW-q8M&gq^uu^wq(9M{(?6nW zN9+kn?<<)dvqqoA(ZV!vNp3IfS))xYJel-RWnNu-(6z5~wlUp|6qLia039@1_Kl76wPlS=n9r#FQYfO!*%+ zCENyYM1C_Rpv9CRzw?7S;AtMYCtKTQb=`)(PsC#D1$ZY3R%&n&pz^-?s5 z@OWbE{&3L42s9|9flS7om<28-fRX^zkC`JG& ztBSa0=V^lrNT2{iFxDRT1jVRRdr2&y62$y;7pRl%+@alG%66{lgMRPrP`S83RWL%&%B4EBOpk*Q8;(}ktJ}O+^yJyg+ z1Q%|j<$EA@<_dLy2elud5HKh2x8UWr)Es~x8Tf55aD)3z8ZM~>3ddI7zu(JWEYAOn z7Gi9{e}X!oPAmXlEfD#{Z&3`jS{BH&7$}SzM0$YIMPZTI)V|l!Jd4wC%F=vAAOS2x zzR*j->^wdZmI1`&!F(-&B#Xh%n?0l=y=3g&zS;Sy+K0$qa#h6hRvrp@YV4D29je6R zp|cor_mZMMkEb?G*aNXJBkeF#+%RKp4-=Yjt4rb5+Tk|#;dYVX4&~vmhQgf=!Z9=v zE|);Q6X9VW;T0L-Qy$?r6cKO`5l9mmd?_+SJ2K2ZG9ofEsys4gC=zrb#L+}0T#8E4 zj!LnQN{fujD38h-ipn{N%A<)cxD;Ka9bIA{T^1Sr)07Zha}Zri6H|XFra?QV(LSa* zGN$z}KJ$MCpNTjKk8Qsog_I;3|j5H1b5n@hRuczF;y(mS;Xc;Yi4+1dd4g+}#q;O1@+m7(Ag&=Xm7yQWM>+(nr=xBQNTXCy2us>*K3~+?ANhM4_1-Erz~IVCEm@C2kNAWi|TFCZZ~#Umga0qrXw7y*F^$VNan3&=*m0=!>V zmQzRq5|UFZ3kXS0O)MZD0oe$MO+ZKj0uzvsfNbQ{#{$}EKvV*v7!Z|!H0BpAIpriE zGdZ380LjTOS^}byQ!C3au=C5%a_Ytb$qC3$K-zQ4Pe5nRslVmaoCCUaPG>QHv6SCk zF8`%0lE2}o2xmhyA#=jphj)g+zu6X%pb708>cU_`#VxzS< zDx)t-@wGmYqI%qyYy%}5#QMdRwk)}h9{Q7}9zU~*M%kk~=i19`w)7h^MLEVY9Mw08 zl*^_j>)C!dTr=Ag_}TL`WmU^-6 zTxg2DS{-|I85o~CgLR6NVh(^v1k&M*JAGF>EK#^HU-s&%?EJix=(zMq^1P~TH3X&a zRJP+Wjv>g_WCEm$P*5BFsmBv&+MJa4uPx4kvDm=o9L9nYj-fL}X&KO(B&2iKS{`8CZ+H%be4GdLtbHq{RR;L=(<$~bnPHjVi=rKgbM_?0A-#5if9z-EX55MbZ;;$ zp<{^a>i~L_vuUI-6P5NZS_}CSjF&q^fCbJ(B0xrO2@%Mf18B(=zIsV`%X44jz{dsf z6|DoI*3=OecautqP;Br#M4*R{F0%Fkz?C5q8_GjF|0FbmSAN7=C5M>@iB-25NDktW zfVxi!=^LN&{V3{g6ZW8d_kD|BT013`$vr^<6PlZTW;xNm1xxjs9w2AVs1Wn zOcFFQ?7nMbwq1scx=tjW%Rq}yPDX%@!+6=O1U|2ij@1+T9JxhWm-l9eie`XO0;icr z!(lqaLPDUOmiVk+zPrV`B~NxSLftoCiX+2=IgtUr2!X3^rm&V}y`X!dKDX(0PL(NZ zIo48exk%4$cd0MIXXloxeAs1Ao6PVf=azAF9TWv41hy5K>YgG|D_J*TaWVuR{72|l z5H!E#s{y?#Q15;tfx_@L5u)+6Q@XAv7V(N<@QCH3&Zme!9k#;0ffHsLNU&Wu?#KK=_4|g?Cu?eR7}rWak@aA4paN^93UWoL+=cI%wo~eqtN8u?IdqJ z^a!>d88{v*22lH-tB_7TzeJk83PaH(p|^u~7R~JAkjdz}wmk^IoF!$~Tq~1)KLB7q zmjrjYl9M}wldYMeDUR#rkq=ab&qZD2XI-&eqVkmKtBn`TcZbE>$EV+aLsU5gn6$Wv zSfj#eyx4z4<2LxXGR;OIn&fZ7{VwT;FKw$;U8OrizDau=bm!FX`S)QAsMo*A?ND`-RFoxBx z=WRsaSI+D9!SE|nA*qDPED9~Hf$V5Ro?9|63uxJ}nhDLnQzw-&>F(T21~^5yoPRMS zdN0a7F!D+Zlu{s29p4B_Wz2c@DbFW(*<{p!uovBusyofK)jZnMz@M&v^ zY#@)~L!sNuop3-nS)qfU6NA{tHl#`w86dAkK!5`y2!KW1z~G0(0P5b9MFJ>CNw?Sy z`WB%@g+TlI=TSR^_n~67Y5}xK5I{^C3DiOWBjDm?W8k_irUzmjl1L;5H4&=q4k8AU z=$ip0Tjt&xcV`%@#1mva=2n0QM8Ru2nOI}4kR*u zkpLS+Ge$rp=4& zbn3qlGxX{)J3}pQphnSq0wN#~snZQi7Nrmgjkp+mDbeLH*J;X7x7&SMc292y*@v$n zFSM1@?Rd^2$oI>{t$~auH#(z6zCUq}!62<9rQ)|nN+sU|7hiMkCcKxxkP*@$T}^X!C3TySR`?$$+OCerBM@gG4mZ>9YkLHxx~iI z;~G8;zA#y*>urTFRpjPr!eC1Ny4gGT`c!Y3PR7Cv0+6 zD1kh62hE2y5{;ToPtp6#XPGWlCDv>7eWxAd`JfE-s(t?Mv(P*m2Xs)OtrLD+S>P%C z${;Fdm2~-dQT0tlU+RsW4Bg`;tv!{{A$Q-r1Y#WdD(4;bUwsbgcp$kiBVR>?#9lpW6rDIo z7;qd_g-uLlnzHKx}g3AVifW^wy=&JKCWd_MuuWw~wiJ*u(U&XFODv_O7-(D0K|t zvT(SCcDNXB#H%5MlfAUt0j2#D*ZY^kU}^}sL4;R%xOslW#leUGJOJb>o-~)e@w}em z0ne`^U@Qo=xPW+`sJGXnlI^1wBBC-{qOuR7kWv7MQ|63MraLO^af7b|mT25(1_3s< zHg@aLa047$0N42UY)(r^B$Nce|1*;ZytxJMbwLlo=?&rO*aN7kgNitq&jXGnfPn$v z?HPDi25Q^?MYkV+{k4A`fq(rGz`X$=a8I&1>s(HAh_2K7|>qQ>S{@B}uz+$nPIr(6#S?`yAu)cF+a}zA< z1W)A3np!Y#^Iv~>|N4%99fAKnSDKcA!uU-_%LFlCw%%2%Ke>`3yDD>HYdC{UDP=BT%5T z>XQBxgqGam+}3$tav4_>umSo=8aYYgwYeQp%jU8*U;VK?`=kMy=ZS-`JlX(?-~{eQ z0QWeKumF;KQd$@yz$CRZCW;1Aw`(Uc?8i7$ZsawZan4jwG{yzc%9HZ^uFgH}#U3`O z>VX4Q#X!#ybwL4QBZFx_;eN3xh}fJLn>3Rc3WFnp_4POk?3U-c;dRjKyZss2Ci2>kE&Ca~E6fk$5Z zTb7uSEEFaZb+_e|dE2l9%*pLP+v!{0vUEi8zC3BCPgC={>ddHjQfwTd5GwgI_tR4? zSs%>(}MB2a}#V|H4fTE`aY&KY{D+TzQi@{=J?JBSbcU`GWU?2$x zPOMcmnD@0w zGgux!dkX>ssO$)s%+)@+5|VoTx3|;(Ut4S(_h+$jW)u{6-6W@ilCt){x}Ba-bY=Y` z>N>yR2aVlUKA=1ygD;nE&xE&$+V<7bCzkMbUMM$PmkE@gOI7o?3aTh@9-k62^ylT| zKkV24!JQhsFa%3)|Jtel$L&*pz2IL*0Nk?wZ5hq4_(urtX&KFlOc`nU)9;;ew}lM! zdxIf#F$!;|+oHstFO4c}p3dW6TX=qQIcZ3#aT#JEEgExIRoLapugsck&$|yN87I(x&I~FAh;-o1Lo)-)8Zp^{# ztN`kjR)Rbil-b#b|UI8#f_cKrer?1K??xf2gz#AjxIBjEs#hagk|Gz_1drpHB| zEDsZKTb$=X2tbdL3RBS;3IY(!@;^IaFyU+`O?nh@JUs|Ptw~I@b^nw3*#B?3=%4(# zWiMx!&1Ed-RP8P;|82{*g>+prE@;K)RV@fIhp#4bs*Efs^`CRNUE+P%uo^$^q-(6! z&RcP(+)IZerx32tW>#odal~Kc&`Gdb(H8ddeD%hS%4bENp=M8i+k2BB7T}FM&3|t1 zJ#8ERYw!JaBLDT|f7}tk%{z(S#WesRF1Tm#>6s_v>OEnA@T)X|1X)jV9G$8NHMTl$ zI1G+1Q)8BQX1(qpYiE_z913T_+&L(Slg2xv4z<$`o^c;Xhj z-C%OG+^P^X3;_$GBoqj(g#x%W32x%*VBS1HY%mt7iiSX0@dSXt$+|($^Cav5dg`2R zJP+h9Sld@OR(o*+YLkAE{eB}kj39PYFte>S>QDui(#1Myoso6wy6aT zd=yF^1Hr&agj(-5i$DN;2O8q4f73bT z0nvmQ0sMdd(gg{5RLnd3S59}dbjm6!2L=a!ox!IR{nstf$4{+jX=M&Ht7o z0N(H*aOr<<->e7zF7IATjrnIc4f&#F5;)*`HB7msfTJz++=JE`+~?qcE19VVzd+oy zGn5=MNl&Xb-vEQV-TF=wV%!LkP@xSK1J8e$lJgC)dWyC0?QJ$_F|8mE2BL!lh_zAN zhrmqn(88IanBfdl2>7f2B9Al7G!d##hdw(6Ao}mS!dN#oBHZq?iYL-Z?OeE zJ`~T@pQB>A{LF9g;_cyFuHArF;!^JKibSy&IQXtyKJaQ6lzGiRIejpIgQRAP4ihzn zAu*g{YVlR$^`AQ2)on24NYdw5)F{-gSGC<@A4_o9Xy`d_JfbuOj8Fg)zw6Q9MzYb{-m>MY;Oq37N=ze!GOp& zVt6!a!HSf#T_JY@&_OsX5$M@4LY4X1a03sX6aj1z$!3tcVkS{okKm7IQU?pHEDz2W)U3swj*1RK#Q|J-{|T>;=W3+}6+J^)(e!Oa$V zFA0d|SpB@2Re-NbqvE>VpE*<6;OIDmPR+u#=(kj7)5Q&H4R|SC2E^tB& zpvv0doCwD=NSg#OP#nAjC@wEE04376rc7@TX97S_P=N?ce&TgFA!yHA$Y;aDW#i5x zs_i#Zs<3|W2>#1m0JZ_K06G8;Oc3HJ*e>+P-k z0tFWWiARj0U}WLs;ukzGD11>!L{3;lTTIkUOx#TL+S7|_55+YMuj*=Fe|THUOaX0q zMa5p^wzH6yJGX8C&E0S!y?40!@yL4#IQJ5W9walEWt_9gx%4Vu@^yiRn_QP-OZh$2Kt8B`D@iSVUBGXnG_jKl)`wBBnLht2f_$pvb+e(C<@z zcu8(zc20IiR&H8mZu-v!J^@uq@G&DRKQ+4`wxl8O!?5qiuYOGnZ`ziEI+ovlUXASg z7B{q!H@fm^^y}x5iGk6H!LiA~QE*M1Jc7^1CWpW^J_WAf@u|`Asqyj2iLuGa(ecR< zaE(n4kDojrpO~1KJXw?Anwp%Rnfy9CIXw%esGN@3j81}qwkMgkf3A}^!4FM;odd^# zz(;Ui=yaXF2OI&Kom&LMa2FPr7nYV6e_xBs;7kq}n>#ej-yjfrpHhSt7) zSzGH~UF}$1ZCP1qT3fDPTdrPPDET&*`)ww3Z908*E@ySA=-X=b?pE*7{?zf|Joftv z_IM48UH`c@u-L8d*xf_y;UV@r=s4NKVt0Q&g3k}J*dr|V7__1MtNwsjM|gjKbp*zL z{KCN}Q!A&j&mtn<8 zbKglkYow9H;L^bZMM2WHFKo^d?yP@3jc27bH`28QNv~g6-g0sBgSK}nl_jfh>~_ew zIS;;lsC6YG@N}pw+xXi2_G%-lKT9*um+IJY`}yjRe-q`8~!&3W&ASFiAJ| zq&-YQBA(JL2J5nle@b=b^`I27Ob zMEy8xqmkZrWupmKbCj={J=|=wg*!E?po}%QVzW)4iGQn|y|kUTLu@{4tMkgp%4V<% z{Oop@EY;KPZh5Zk?H*;()$Lx@>t}cR?r1*U`J&RkSeWr#M5<-L!1L_xpi%hK-67-D z?A>9r($(D&i>9-Cqt?B#JB7MmhhAVgUhS>!O<-`&?N7Q%No0Iig+u^sPP3M1n-yV4O;dt!j>xTn-d*6QiIKJTVE=54{fpHwZM25=& z8E!37eBBvne~*3FcTq)a-G#b64k_APN9?ff%1juKd%a8wrV;OkQx%7&&|FVhvF!HX>LJ!1Pi&ip2fGDv$6hUpBe9onV5QygqDnF(a_uX=Cbr?N>X$&CD*uUB zXTwLUJ%O@R>>87FzV73A7f3StJ;jx7-w)0GtQ8z#*Qf(=45t(5=jEHkhl6|-@7@on zkn@r}+<1c_Ok&1SXqKkk4D?b?Vny)O=3&qT&=@F-6B;6DQX70{Kar%@4t7;87$rgW zH4%N#eC?0;4~od^660y6o?ibZ{^PJGOfqB^C7tIkv%ek@9+OPM#?g-c)Pr*y_mRNs zllTv?lVs%~pPn|G)}zx-64Of^GK7T@%?(LH=UdvfO3p;}D9?$VbdoGtMUP@*)CSgT zKRX?6z5gx#16Rcu?Kt>Ze%d)W!pKXD=jy4Mz z)Ew^QVu-T-7SEb>pQ=);yz}C<7Y~2Mvqp4eJ%TL{HoZ$TeT;h=&l+oL9en+m;UfTrraPI>^ zoQJ_t2ID{WYt~)_=}@*$A}{aPp#s2oR^=&t-Tiv%&O8s%cEe)!{g2GV`CiwRr^%xC z8@O-e`@k9y&$ISF@dnGBsQ|vxG8vJJb>;`ywtrbp-VhiYU zV-u@yRHeiXPF0@e)jep{LT*Z@S+(hFo-`SH+lJaK!DVOfDxOob&&caL1I{uqAp~M)#_Gu79kr%w6sO!+_+t?#0 zY~aqWWYqgs122tKXvz2PVPBfu^OVQrsdH`*aS)If@1DPUK>s$Xw?s}Mov2{hC+TpY zmT@!Vaf3T?Srn9kSy;;GY@nK}L$AdsDa1i4MJS+x`pPkB(Z?b)qHT=IoAGTVqxaKi z7sdIVcuTc9{Zn*_4B^q(lA^X_c^CN6`2Oy8-UDm+yIZx;>ytY`Y{#Npt^v7>9eeS! zz{k+$!yyNnYf0G#7H(ICn*14^8#u-mES4WlcVfkwu$PXxu9C(H(M*VaQjm1JPQpGR zK(br&xX*QNdy=``My%z%zo{w}n`()ZSnBH>1bt%Fd>Lmgx1!^=!Wlhgl?j!&I7x(y z=@d1KmUzoebDG!DcUuKXj?y1XvN13p^~ai*6x)qIc@LBLEL{ri_Sb)rWJ}wWm|`;) zEBPYlUgbBns|Q3*DD&Xu<3%KC`mRf87A8gQ{{{w zdIW1;ytyN{8vm$yZ~pb%dMV#=d87T&rCWYkA17G0sW1;7y1pW|TLg=YGT_<}yd+A|U6&o#w=8Y|Jz0f?MXo zGv{&^_y4hzWRRsX^rVwS@wr>Y7dQju&rT9ALzPLl3iY3zB=RTaBziwPNl?4)@2;J6 zk{B6#yh%QZXVq`^FhZPkl2CJc(rsdh>t61Jq0VTMIt;$TC-ovA^@yr7zApt;^UIO*?(PC@;Y41o5;{BJKw;&%qwnz#=ng9TgtQIT^C|6@5l&@Ynl&X zop*l_<$G$MI58i3X$9j1Td0~(*#cMMV^hL1^Hv<_6|QHZwdVIq9UoiTk8n|nKlbaQ zat!rC=?OB8Z_*FQlL^n#_j6MYF8D{OQSNS#PvJ5=aQ6Qqp*_H6`3< zBbdkJ<5<$}c|!NtLagm$OX=u6AqV>o>!SWQy3cG`!e-K_^y?tnfmD3!bh{e?1m#r3 z>1U$4t!A{yYU-#+S^{h115BF(XoTQUL;Gl(7uuc{T=uqPk0D_jSR0}N8@Q#diYMmS z(-t9W{cO((Zt(V9(@X9}A9p+2n-InjK}1yinS1ep`YbdGEg@7EoW=z~+L(|ZakLQ| zB!%3;y7Ix)($>{^5XI|uZhQ7R0%0?@j$T}-2rttLW7MUgr&a@Ruim$FUh`Meoh9Nq71#S)RAVNIG8q(mv zA@^V!mihiCgw#-@OHbbfKWaP|2GX$yxE*VUqT&N<^Hf zON+>EmP5xyuZ)W~*1~xd3hnF;KI1}#RM6i)r zpOH!NF%znTy4?8wdRSInMMhg|7O74gc|}&YN!Dh;`_`yT?33(qann8%9~_go36qQ- z-ncoR>~*W`Pd;%J4mo2!PSZXNr-12(B^DJWeqIl?&9YR^JYWZ zvW|4lXAH-09Og~=gM6xdck*DNOUomY+-=Z*@%U{;~ag~GapA}^HtUGe8h zq@F-&F*BK^62X~x!skbbfjCs#B+^ca)b=IHH5%n^O8<1ZAf?{)auHdeNnM|q^XrC2VWwppbD5}MUE1XPe&KeSD`3X zk-Llx5Gc(1YyTaWU5*U&#UMlsItTo5WpeT z*1A>qEJ`hpaIHovt(L3cELAZ;nJZtFo@(g?T@6&Ny5Ok1RIReam)x(ibO2Ran@QL( zQs$aTIPF`F+$i&WS=tIz!Q%*e=swtGR=*&qhSGl+T&}kAC3>wy0AE4Ah_0gctD&W@ zVjM+KR+W?At%%e8@UXI~+_#j2u>SdSRZwQ>bJO}CNA(ObA6#oIghmm`N2SFA<&JzP z*O7X>y9944318M$a1b_pGi`{>tnD@ZSg1?8z0CI^D#ysZQhMbBqhG0V)hABEhAyR# z7`{f++N!)bfTYYitxStmALY}G$wb*@ z+9!Up9IYRytcT}UP>nXTt~C2!E;sEe4OS*->#8*c2vF_K=NOb2V#D)soq3tCSfnYaysw^2K?RS*>T$sN4P#UfWhfSdGiy&X85LQCWR= zwC*{&^qW!*jOF9}NS*$b8vYezM^#N-74rGZ#!P~>xbtpZAdeEg&HQ&r>>giVJ* zof$p(G;KK)OZi$^=htG$Ct|9y+L-ptc-H;$@_q8Z@d_QkA}?%fYZ_rf_;dY;iJQ67 zMN!yQ&Dw3#(?u@+nVs+Rv2=G)j<*~jS$9<{{Uv5c! zxuf?*!|}^ZU7Aky7cGx3`o~`k82ax^^c(5*KXU9hj_o(8?l&9jH$U#TU>LBH7_inG zuyGu)iyd&N9(Xl2;B-8IVHmWugu3YsdN>Yx#SZ#Z5BiM_1{@CtG7JSv429?og*gsI z#12JO55lDRP7+I1X1- zk5rxYAnqD@umF^)*d!8-HadKCOELu0-f$$?9dT}i`B5plLicc zyP(s|ZLzP>q~m7+=#?9=OEq65&W*F6piu1BkDSvjXJ=&1XXLT7bSX1#q~k2iP-bT6 zD8uZ?@yr+lgsp2z-D#G|X|lUxmPlj9;N3h8=Nwj&bX?qgZfJD|j)IEcfUz*6JZr|P zxlqiQF_*PDVF2o>KL_iE3LDJbAcmgBEDTmJLJb#S&SUj1bLuw$|IX>>l2iKWX71e( zSoaxe?9vaw6y61qm|B8DmSt|x!zX8dVCJi8ma~Xg9Q0Ry)Xu9y#xXZw-&7U?u=5@I zUkzE7j046<*Gb3(pvXF$h>OTU+?zG#8Y!rlvnP zbar)#c;THB6wtjjgC}5%I+=AQZGeb@bDdYP= z`m5jcHeHEl-*>KXJy{69x!XiMt&Nq8(X`uwlOA6Byeubq{N?kq@YNZ+&ZSDmkd zAYzn_P@R(YAYx!Nlb)QC^`SVc-w>hpRW1OBL6{vaGb10&q4MsELj0!|T=?CZ?@fyJ zxFHvxj`Q=V#krn2?}&xd-dRvhxaQAzE$YtVtrV45Nq1WHjGi+L+4`TB&Ma%>=v6x* zl-Aik28wmO;}{}axTvj)K?9MhTn z>rAiVLh>x0>;=tCmlvj)@ckN8uXDY36XNDfO)602%WV)+I?Fb5--Y;YpOB(pQ-h__ zh0n4VR4xt}osk!sa4Y;EGM|Jkym9$k!-ZzCy_w#MD?i}Es!}))3vbGheDYVl_EC1b z=32g)@GXTShoW1&TsyrzN`kXRy{W>87xFig2|`=cZe9ybyQR4*_+?a!qeop^&%L<+ z%(1VFXL!ZJWa>HVv0}|jPhULOcp$+cGK4xFaV7{C2R?G^AK&h8dXW36Nav~O_csCh ziFOIDns<9HYSQ2te9|>3RVUT8rF$qkj{gG|4m^9!5eK_oGZT;V_!C9gReQBprIV64 zauK0F;-2>F8`^h#xl02ZKR-oA)JT29cUC=*;GFd*&3jJA9eWf$J0o@tewvgQ9@ zIEU(gats4U-la6h4E3;q58uan&1jFj-@>n$kAL$h&-h_biP9o*q=&=fR6~EAjP&ws zanqxm9QEa!<>o!6`3i`aU-Bb)kLn8tZU{duo$z?6UoyYTZ(jNBT(o($=*P-uAMD33 zTPXhEtXdC8T&K^yMESVNvWdy_id73&YL!*n`KBw+J4ENJo`1fIBVpZrovYfqSK;QB zoeC%vU^#$8aDiVUobqoXoKU;a>5^y^x|Ma+(nHJ1!NC3bJ=aH?cDkA`DrcmJAE^>?`}l1 zbzGH4VqsuXUSvv6a(Z@ZM)psQ4V2mbw!logjO@IO+#+yL=56taXZeC_<&yh{C7*_c zH!X`n?Moq_m*0I^%o>|7pO|f!nrWGyZJ(Oynwb7FF%8DfjZRLFfNSE9H99dhHZcW0 zg6{!8dh-5B@N>X&$gfk=v!G4}rr(_`@X4R+ryjNd>S2GZg{6O#&_Hc$aTyG>1BJAc z1uAO41h!LY?Wel-OJD+fBN=rmB&2$niezW1DFgAixM zTN%c^;27PB2*>)|Dw$QaNdxyL)_v2UgnjgnnG6f%YORA#j&&Y*OZj7>KV~w_KI$Jd zVOpmf-?Yg!DpwRO_NLu_O*kvYKUQG7wYHjhyLfd3>`2UMj|99r14-XdtlE~Ih;V%2 z8TQ+o^IeHb@11TrKbY@35#eIRA7|am$J(BVa0gopy_xq;MYykR?{9vnIX?P76X7E4 z0fgM$BzaJTTk`~PHIzeGsR$g&>b%d+rG2#*nWpacyEtCXcW0}={U7aXcJ^ywP6x)b0A*E-uWi@Z6!U_@~(B|YVdsMSUS1utdNLmvqzR)}A` zS=`64hb1&VdeXb{weM|)i|69KZXh`$)srITk&NU;5AUneKUwsD;Gv+JqKF^0kQzr; z!huk??m}i*>%LxAyOfaK2<@0M0)Z;Wiq`HO)5auyawp zry?A)C;#Rz5pJ`UzjS4@jqS1DGNbT-+14K-+}_I8XEe^=L^uZPR-uWE-$gjF3uD4* zTDGe@Cn8+Q7oBIZ3xlU3+-<#*A>zK0XfD;kU(AKPt;+mV2`&s&XHJtNlsX2$e49`gqm+yv{J49uk zh;WymS9#9l-mGbAEbI+9T5rhg%%`mWkb_vSJEIMXaH3e7txKG%cyO&nn&aJ3HVKIx zejO5L@|SmWr8@`Set3R3R{G{>Z}M%~bLh~(``V6`ZxFuDgXPf=M}RED_i3(#*e8aN zosn8-5$3~2w;4I1MLlDJb+v#>my2*_TrjJAp(?!OEDgZ|dE2VWek8TYWio!)QE}}8Vt?I1Yq*xEBP~hoF!+Us@IwgX zx*WavMtF0G4v+g2mfCAQ5iNd?`odb2@ehbxG#h3FlUq6x)C!}>mQutj_f#yTjbj$v z^e=TR##vW9w_7&iavfLrJpAeQJA7xF>NRxkiy(c(o`&5K$?Fp;cPUe5;wIZu{+nL-DCDxIC z!?v~e-QjjBnkeH$giD~^NfSF;FOAad4T4Vpa}h3GQ62Yo^inq~eERP@5;O14E1q;D zW*J_?ZEikPD;)n*gwraSqu^rtYN~yvZm?1Of3f%8aZ#pOx9D3%0Y$XP8A@^zQ6wmm zGa^Bvh$N9DC|LxABIhhwpg<&pfaGL>WI+LuBq}+H3J91G?gMo9^vv`(=gz(7oZmO+ z`0M_o2~EKR@7n9xYwxvoD*u#`cp$=wKO29_KYB;}sp>%PCB*aJML2=WFMK^zO#1g& ztI($>?~RP2>&jFq=-ZAm5*Nz8d3m?+BEHo3Y&#Z5WgKNBMwh!?{b5Y@p%m@MiTOsJ zARRdA8{NICUOv!;{3SEke3oyIR-wC1-sBHq9KI}tAB$w-+{NV&k>+X?c?wg$3s*xn>5fn5ah6Vy z-8Y8}($S03Kfb-dkXK_Xu}j~Bb^0Y2okh5I=QfBqd%8w)9^_0sHHK5blkZ#I-p{)( zaGSBcX1hA}RP%MQ3V)(P>wuzHC8oLs#;@|lMAOI4zvr#67)>6bVv^s;oBe1^h;80Z z|6Ceq#PnmlN3*snWnj%({0b3W&s+R^*fm9gM)^6Zst0xLn9C1O`x*NP|7b=kpBj#f zYF=Al6>9#d9r*p_$5xjlhKq6R=VvJ%wThQqb^7G)WVe zoC00d@kwq=6zyHyh`6#lOaG$2OZ>Sro7D?KhPs`aJ)V0X5KQz2?o;zDC9+D+FXLi; zt<2CA%oZMF_xm=<9fNO`e-5CQqfGD=9sEM(mV?K#3=0k5-0Tlz;<`$y<_D4ml!_l{ z{nXc&`8(^l8Kg&i>{RrdyYmTLYP~gP!}DnlT)b)$HVQL7Z|L4Sy}hw#F8K7yGqDq1 z#i7sb+a7qm*GfU8Xxv-k=6$PZ7~1$!(r%kcjg`2AwrNrP#kc3KnIxox@)IwzILJ&l zhP+}PQU{fC8r@7lzo85}fgf<8RKmi5T~Azf`a@i{H|s_+;W@ZQ-dEwXZ#LuK8O)0= ze|;wjl+;g+6KXF6PY?UPCgl63G`siahq~wfkLhDizIJQv{qDg(_F`|x+wc2Gw?5~i zCtjc6rW{eDtuNmE;lV#o=(q8OZ(PrBGWf2d4kB$3L;e->=ZwSy5B_?8=5Y+d2t(0{ zVUY;nGz#GM4B+MUXF~=Y(?{5?|5q7_0RlY%h=l+dqu(L zLl1uA`rw0%MBd#ZNKv{SiKCBd z_cX4uMSt&(yem%8o$C1gb`;^Ms6qPZVcw`tRWxJXg@*A+YUik;fGDDwD1srA*iFu7 zTvxmGOKLjV_NiMa9pvAMzK3zOd)wZXUTZ2Ut;cU7+MdnS>_@6H)jPsGBBR zTj$|bkJ30T61XU*w7^qzP}Wjg*G&=Dj`=+Hi+H9J$ji%P_@QgjqU^Tx{8N$_S=Wsp5L5@?c;oJQ#u^X*+>8*=5 z+KVzAa2ca}6G@$m4t)fU!^)1m)@l3k(mxcS2D;=W4?F#PS^RPQ9z*xiXKe|@P{w)b zgdyBA^XVmDWNMdD%qmVag9vgSMbg_&cuP+2D7oX^u(Wk_cq$HG#JF2RoMN#Mg5Qbc z%PrzDC&mb;V`EriFJ&f1EZvf`5zK{NCF^IK5`0Fb8h%l%+Jz~E>$)O;O{bb;ii@L7 zwnSq#0{Z|#K#>s&p+fo4PWUOe-78$&So8A2>)h$nZPdrywZ=Sk=zLUf`>3ZpR3FQe z{gRhLn4dy-H$m3JtULE-yvNxQH9VO5x8D56+qqM{R~;L@;uRG+!j($Z_#GlJ^e~Sc ztlM4(t$QOM(NjWvLqc_f+lAp?ZmQb&*NWk0-G$j54~>@|UWo9y7wQ&6d?(X5e~8d4 zHwDBmvJvdCCs1?OghunEcz+^dwQav(_ANhV^hCL#-)eXPyPKC^BZYaW)%EYZ=P*TD zbtgItc#PBeVp1+#hWj+kduolHNGd4ovAHu6QQBdDr?23lHL*uQ1bW+!;@Q`10T`x& z9Ro5F-=&nV_4&?tq36ESL4}ao_wujb{dTR@h8iWxZrt^k;r%>h~}9%6Uazps$zUyX^j_b=2^v?QN`a>C3s;k*g~~x zZ8+>egcEoy?EP3GMKo4G>y3e^hFt{&o&fIKPZ79!V`keH=1~c;hsWT zb6->QDT8}E53V&tGQXkWk`v>V-?OrEI)^emn^Z)U+%9*K)_g^zOyiIH8Z*CXdbr=ev zd1>H?aA3~ZaYU^vS)Ac5ntvefmF{P6ZpGO~y_O~0pGD}Qyx!2pSm%WQC5LFWgM2av z?{?0`btf+ST%-G)#?75Hp}9=hT)NOEkzLxwaFs`dt{!a<5EgmWxwtn?ULwVq3}sg$ zWH-f`?)cZ7~y zn5*`s+#(Wa5JbmK+kGs!@Rr+@}nuz6IFz6tDroZ^!{9=!% zYqOboCkh3-OYyb;1;O1xB$@Bt?u*`2g9I~!jiQy5QbW`O{v-o~RO|sXEkn!$Lv+zY z6!JmrlEa)=hb6uap?~h7*&T-k-wbm^5A(f2bHA=SbM>Xz-Ir#_m#13LI3^&q49sk`AwT15y2zU*=G)a}2sSFPSbF_%0Y_Ef}{hn7myu z-CHncU9^;5v@%_^_Fc5iTC{Inba=aXb8pd!b;;%9Vnj546w7PZETLp6fxU~eiLT)5}?`^Xi(e$23>HOlJ|qu(NwBI<2$kp06$q&v}q9jGS+2G9Hj6U#?|cYnNW@ zFkS2NUF*qO>uX)>mwsyfb8V3I!?5&+5z`N&z8}U-M{QI{rrv&dyZ2$5_2aDc$9dC_ zi@qP1vp%l2eq4L|@#Egdb=FUt(x0|WKkfK_+HU>uwe{2P+fRFYpCGn%xXe1jY<<7{ z6G8Sm@soAZckAR@>oP1GC$~Q!_t$CtHt4fA7@w@`m(;NCZ=BUfP|LV5neA?FB47V=q^ZA)He>%A!=%xOzCdrSSv zmd3j+&HXKHw(UzVwobkKAfmNpl)Y`N^*JP?-t=U>^ds9VGCNjgJ9JO3WM}Ny--^|L z@c|M4!HMmQi_8}{En!NF9nb79Ui+VHvrXvYpf-F*oDy`y?CZd*ooc6T?`()j_9N*! zo;TaKgcl#$UR$aUItmats`fTNd-k<2@@vGSFHxVq#>srkkNxugy$#Vc9_cim1%YD{ zQ5rKAvG>C!%IwEY=sTz1_Xjc`WBtD4w04;L9q4cbrEE9e)FySlAjoe?LhLy?&`smP z+o1g9-N!EoNX;ipWKbhr-`{jWBP~h!w0ke!?Y?+HK!-+2<972e{(MEdbKYaqLkKmM zwTr-g06E)VWqxiy+OHn`0m;cuA2Y_cJB3!gfc8h=R|+cHYR~>jgkzENMKD~NSB+L; z%~VVqCJanOXmZy(CCF*839)figm23CtI+vi=VdX032A(6W#`qWm!7MroAA$spOFhl zq`Oz$oc5BpkDZFn7oW*s&8X`7K$cR5!3X17$2YCPOokt)YB)dK6(xj>G7?T)l0aSLcfb}yY@11J$T2?ZTGo`VOj?TqRwxT{(wmb zHh(Ucra2VhLZ&3M81?(`&pk!e{lfziWr};73SHVAB3e>k<`X-Pi+UBd1h)QoucXi^>CoIkZQq05 zWRK7|9lVvhrghM%@~+&4K+#N0wUm2uZR@c%brunUI{qfX(7NGz{PA)L z>ol9^iE}c#)n{!o^|!{aXZ!7upS_;s&z*if)lT`G-NP?$8te+PL(-Gk>#>dYC6Bt! z-6*S}Jy%!ugg|obK?--1!{dR7bB;A* zswTLbot_>$$$P!z9t{xT;*}3XxOeq(`-a1m4bp+ulJ9- zrM*AYEwy@odO|4Uv(e4-#OL!16`8x+V>VCjet8!v7mdWZ|@f7(zvJ_#REYEP>dd|FIx*1eb&yvB6*fU57b=DEMAI1_Rj;7Dy!tdCKI$ zARa{vV*Pq~+SlIjc218{KmZ)F}MRwYuFcn2h$^uEFx{Kk!hoKsMMXKre-K!M5YP zy2zIe{uw&U$e`NlB;Jd5tp>(&89O5d$sKl@pK5f8_eKg&fc9y;(g+djt0L6J z;!Dw;dPLH%ia$pc>xC=5LYlrRdC^~N@S{V&G9<3_dfD^KLz8kf<)Y^t-ER=gFpkyt zCzaDwzrXrAfL6J6=hY)WdrK0Yz9P7OAv!8$b;_vyT%O0aDG zetnx?Ktfvf0y~c&*sK1tUj=ZvI4LXzT%y4)HL&#qvF|U(-%81-x3>3PHn9Z`7Qpx7 zFIQTBz4O-z{I5QNf3~cU|F2t1Hy~vh~gEDtod+AFDXJCA-WX1kVAu@&c)p^E znv;K~&&~=@CdDae2p&ZFeJLl5l^CW-DxnRB7>zJ;x%UjzmvW=UP%wy6QMl+KHpG|( zkw&nNA%xDG`xlmmLf5k6ckTSPe;VWKWXc@<>LOZuq3~*Bq}zc1@{!-u$HdD5e{Fx zq>pRw1X%i{y%V4@z~ua*(mw#X{b|=NR}TQlPdmB+CLf`3Gp-#NS^y{pINbKM>%e+{ z{B3k>0svtE#Z9>OrYG(Hs~@*tU;jV-1OQ;-{rwhuJO1Bou^Z`_2gLpRl&1LQIS2twLy*?$Ffqy_B=Ov!y?Z{X!P$Ob02m2(JPvS6&1f zzygo_i)p7;hTuGfrUPC9Aw=A&rQ9$`Hgt^Y+{ow~xxgRaxq8fc z-et9Z`vT3|WFv(02%p~FcOUfkWW-^zd^UzuvSjh}z!p25leR?&o{6x0Fo%&a2FYlE z#0BFStc z(UTL-E8m+N$`hkHcaPSVel|(+Qqf$nDrLB3nuY-{3g%Ed!Hs09CxVFSJJfIlv?xeE z3t+n@Z<#Egy0#jJ83-k9r*irVZ3K1xd{RZ()lt{;j1g@S;~#J8BC=1 za*p)t4X|RrM!UA+J;=&ymE_^uv&GrabWuTO0_7k-a+J*2u4Hs!!miMfcpg{PFZO=z z@u2+cfMY`jH$K#in+l-traaz%sGAO9x=ErMcDThJSuRUfeYC~?sQCovslzSyTdi=K z=}%AoJV0~4LYDB%kq`CJ08J0U9_B-{Am_3qIIlKi$WDFhC>Ry}Q|W#t?ll zKojMPJpW}){f>_54t6ue3P^ zw#P4c|J;75mRRO7Xr0ZnGwJkhs`j<>7|Z7=x7TI2?Rz~{a8F-)6PjARqu7P&rvs>1 z4Lc2BgZ)zB^8j8>+b1Y+t6Is(ENu1 z-My6bBlo$6#ui|R^ti4OxX&FKB3-^}_6LbSBJRKh31r`b1YD47yRfhXe2_rW?SDF) z{rdj@gH8a{9vCu6TMjGdFNkLTJ@@zAmaJv2d^o*`dZ{*wBbZEBOxVO(=Rt2GoKL%l z7s3U?2rS^XgD&|v0#f|*C|+Ib0hk2S8ntKJ0+fmuF^Rx#Ew-miGEE1m$>z7=$y}kV zPk)?`DLYk1UT9ark14x?UtNtJl)w0xkQ_;kOTJ;0WyyfF8r+1&L*QFk!F=?XDVSdi zd6)P4NldE?!|Aa1DC_B#6BIJd=j(;955(4OUL}R9WgipriR-nBi@rZMJ4hcMWG zWea8TN@WW>9-+z>&XpcU8NpXvND+CWk(VOsRNq%rwCLnlbo9B_o@=r6mB>6bdGa)h z5Xi~aDh@@QH=n?BoQNx)S`#>^7+DuBB%64w9Qw;GrdlN*lJ!G>xs}BXrz5idyP>uh zdmJteNxyEBhJ?_(IdGP9);ZzijNA{RBZ%zs%r(`EQj+1?0l8PLiE%{tZ?5n`yg}&; zg^-oGYyp8%Tp{dSMR_0B0}9nRFxc*-%?H(R56Trk@eP-K1eu%5S2lXtVGx1b>oABh zOq-j45yHx+3HhwIBiRWMhm-J!=DG#2Vqh4@{kvft0MI|D$^3zgf0%LtKm;zFf5cfG zS;GA?*ZmJdjbGpDU!DN6=+IoZ0)QzV87l&nSu`$yYK}w^{85R$=r6?pX zG4r}u^~SSNu+NV>ar7n$S+rUaIp-_Ha_Lht%T8Oj!QfusnIZJDc7QSqr4s+h^rd{_ zZ26xn!hBE>;y7ogx^{q0If4g)e*w5?7ZAh|8+j*V{oypw8Ex6^6aM%RYWj^G9nK%= zyFz;ceGmBZ6S00h4_x{2v+3xKoMeU3zwNOAYwQA83ycM#`}Oqx<*)SDJO8ga0c6u} zPj6cwl7g5ywIW9W!o!!oZyT4R7(vA#KQitF`G+!}^q^j^Jl-8mP6(mxF3t1?@Eazd z|LS7Vo_d;wyZR2w=6M9S66Myn#OY@N@-Wni;-T60#0$qOf^79HFQpQ3RYci-UL6df zQk7O(akrC0z&(wnB3?prFsGTuya?g^qsMsK$>Az=n@AACmkEV$kA~XIZs28 zgh+E_Wv)^n9;DISGi0e8O)VJ_CE)}%yoia?74K|b>x~nXZ1iE!o!9V38H|>C>S7U@ zk}Nya5-?ls1SADg;``u3m_IyM`8vPe?az)i=uN>rI_`HksLDzprh4a#?w6yGX4K2jPbfBN1q^xt4K+DS~`ru&+7uP8%88y(WxNLmAx%DYO zzc}FNz`q$ZEl!@41YPc-m!p4qjeIrpTM6{fr=kAJS?8V5X|cLRRJo5;~^BA z4=rQigor_871&lKP>Puft9p1LlHaiPzM89rMw+PWYIC@5fmX_S?>%PX(}j2miisYi zjI!`c54CwtlgZB5jg$}<5XhpTlChvuWC(gbti#wNTcYAK+BkU(0m*QmJ`?5y4F3vE z{~Jl15C)G5&K%YxUWS1)5eXyX(DF0gepHA;s9_zS;22u(ZGXe#r6bGOqixj^(}BjC z_aKn=$TId|TlMWg69}XQjyY_a&4-q;{~|$5_s}wSs&crSAgq=3=jUx`N<5S;d(Y*^ zX430NFMPo83qcW~Ip!P9QnoCd^)@i0L+9^LFX|}!0H`B zAdvL9^#^L9$Cbdq`=+^i64#YJA0pjFjd%%_uIg{``8`O1J3Ia1iSpVxba!VvoT&K} zA4*V>I@xb5z>@H)G#`G~n}^{sAtcOkqD7cT__RpynhyHa5K0e)!IZuZ#Us5ZI4FyO zliZeK*G8iirejzbP2!yX>!89960*>Xd@WbaGGmeVqp4<3YX!Z<7A9-C=AM(?5&tyY zD)2+>uD9pLbmDC@15HU$%-Ddw!n=O2n$LZ|rA!|Z4mbEZlnI^vop6A0s6#yHO*Hf< zpF2pL22Z@9p&@wO58j?D_b@a}1poH#@AoDi#ZZI)1aBXFz|aGDQIz+BsOq`7{e8ex z5)(auFdq^gVROS#O;g*$FcEwK+Z&Fc#Ry&id>N4blb2uE-q8tO?XUqk3!07}KYcoC zIv&v)fH8p9B=#QA8pFgyYF>H3djQOM`(n1Yw>><{0oaf+o&q8c63OV{VF>>D^>_X2 z1peI<0EFWo5_}Fk>S;-3D?!RM{og$5Bbe26(7)MZT>34t^v)*N07#kcsxCUP$6&q# z|4<0E4L;xtHszeg$Sc9|N#la}Up)xGQ;xSMD;iF9k>B$ORCxQ*ui5k8jLCq|6zqP?ADi z#GUO~t5dTlF%*IblIePh${R(IEQN!Rg$sntNPBKA+<`MflB5brken-7&ft^%iXY#; zup0e@uR7!><0)m# zERU8eA?BEzQ~|}+w9Dqu-8zOsqsx^nU6{M=GX-o)!a-eZ8s~kc!+3(2@`^Y)2_YK5k0PS#>g{AYt?a^T}iA*;+m$Yy*q~z6LZC!mJ~Zz7Q&MSn-{0B zqc^Y90RjifVb!woiLz2>M=oDtcan#ge8Rb+;hP1rDX>yug>=K1qQqob7L=R;5~7eL zJX!xOU(sjhEQ*{3u^yNmL~Fk+o6l9eoEs&!x@;yrj|wD>1qnV6Q>}|v^6z`Bt`uNH z_*V<_lI>TE3iE+SeQE9LYDv()j4Z9};r{U+!sC5kT0o}=oY>O z?vw{GW`}|Vgc>H(y@eWI7B>ks^)>zwYVPinJlWDQ>3y=bZS|SplkM*$6_q>WQ4Vbc zR8wUQM05f|PswmE2P}grRX6x^0Ly@&9Zji%xvK+YUVaZED!}v=7`*~^ zIKY($j9URm9593Req{~JV7;AP_#>iX`Y`GOj9$$hjA8Wx@CJ|$Fc)C>En)qr?!_bA z2JZsE4!{@;RL#si0>JJhYyhwwAV0uo0OND>j{s=T&OeIoSpshX+y)gPrf2Ek|MNJk z3*gfhDx8G%>FL=#%FCzc9sx`SS5{y?1g@;0n#A-j15BQo>jRhATcwKv!um7a33H_$ zPQoHuas5%3L^Op(78WWN7Av)cMZgtTEAE+qu*c$JC3pq1Yu2&7%eRC@oP`ZQK`Ad! z1j2pqv*)0!fSLj-3%Chu3cCxqg1WO0N{o{FMNl1z<`y+$`@qfF+{(t=*B?}zn6g9x z-NZ!0#FB+&P;SaAtIIt+W@ctV_34^l0(EM-J7M_MxcqquE!{*dT@g@&oLmh+Eh}~v z>FwPYaI2gyb)PNuz$2iEElUIxxMY5bTlAuU%cG81eJ8iu`@OwKbqbs`xS0cj+_SKJ zM2&BiF3ps>-zt5iXd1;$&km-6yW$K=Ttz@R6L4`qx~NlfN&*6|C9FT&lL+dXQ`xe! zu!vLnO8H!`tCGcu^B2b_-}Lm>f_isV={Bf$w_NnWZvu2fPF@Z9cY*Fd>+=CD6aG%n z4)1}WI|N`E@&5^yS=99kw4->=*s9K01foalGQ-hj0ztJ7M=S8g~C{ocKm3bID%ZM}GYzYh|$NM=++~LDk$+FVH3~EuoyCx=_u_Jgt;N2tGw^5(65{? zvoJY(P>`^h_i%(t73=GSiCR<7kwn>butU7{@_|ueF`b-=OcD&E3A({WM)&yBC^2+$ zI)xOR+BwL#{vWwKuie?H`C_URUAq0sf$1s{hPC2+=rz+&-*1;q+*<3V{VJokBIxc` z_r^PKDy31oUR5rdyQAK=Gaow3_i*wqEf*!8$(4aG3)l9_*i%;WbA5^DHE-rxaqEbh z1hq#>d;km6%DxCZi)PC$0nKh&F^5V<_Y@PI7E`yLDq%3+^tgfi!lfEIserONak&fS z%G0Lvz4c48lOOAtuKTw)*|=Z0r82!IOF_K5>3vdz5?^p#K0|v;;dl;&RzHC!zP7F~ zsw8+gbXD1D2d(2#NMT^IwB{y%b1jOx%*gZw1yRR`#ulM8=- z7#%{TFoX|b(Ff5X511nvl2j?TUm4kyZI7D#=34Z7bcmrK?$6O7V~$_mcrKOI?Y$=3 z`itn0FD=VG%sz2r7EZV~KIH_+`Q%Iz&5wX%~xB zQEjJ8Uk~Edm|^6s4LMdm02hwRA-!cDfOeB7qQzRE+)|%14p)%vY0&U^krcmU=`G@#A<&yp>I;5rtU(`s2%%pI3l3y0=nmFT2#K9O}rFMxLm`4k!1~9E* zf+!So;9z=!eO5xnI4&UiH0~Pptfz{|Z_y!iy*(3+*fcg zI&BQfaypMhQ4OY(uz4?&lM5fR2)`tp6UKqO&LgV!%y@D$xxW9Q(Cyx58aHQ7U%@R* zlFIg5GA1IJmoc!A3WNqHRa##V_Zc$bi+0?uX%~3gDcYSvEHz)IPLmc$bgMmgN&kF* zS&*9pt{v<`o_PP=c{o+nAk3P!4NBR=+K4{l8xX*@L9fr_5$&!F+{pioMP3A3z!MSt z^KF^%RE#2z`Vb4JYi=ZV2|=LKp~d+!mn9WaRr;<&-jf@q6vxYIdKRt}buU*qx=6!D z{bl;(Rz7eoQXC7x{DW(eDp;I^@|uxfWeqn zJ8&(k@g_Nn4q;5WY4?~Ml}r*eZ+hZLCO;f2}$p9QQ5@Fl>SjwsX7Y&sxI z2Udc!3xF~K?gUuVZ+TveD}XWqzH~6KzOW4F&=E}n1P1UTK*Inp0$d2NAiygC9Rd^x zP@O~Ob3kAK;Q=fKupmGQKoJK72JoLh*v?^b7Xd5E2E%e^&jMWFc2ympXIDMzmB|uaFi2^*Nx~54pHlY)coJ$Fsx`{D;oJVZ=%3|-m(!~{l zO9_P_I;|@Ka3?^vy`VWFRliru+!4YH_h2T;c2MngJ;)1q7_UccIJ!P$0mI zqAuyr&OZZOC{|ZQQAww!wt2DKL*Rr&eSOPy0WA)m6Emd=fEUe`d4MZF=r3xpf690J z4-IsQK?S0aKc>}5q?$d$jxyIyZ(%JS9A>U5s#bA!Cml?yj}I^OgZnJJ&`uZJXOG|6 zL4eFP#TKHFV-+hot+DP(*_$TM&-vFU zv5(&UX7^Yz)9QRo+W6XX#awqB2cGpgY}LZERFNBp4fMY7W12Y|4F`6Qr*t(38r@e0 zr4hraQm=vCV|E(x_}?1nKDRB|WW->?+xhjMf!!nF*ol@#_a*1}3odx(5gG5NpYAEx z5a$59M-;byAvRYpRY+j)S@y{%(f7VC5Xl+eDmb6Lojt;%#L~kB^XCb-MfEZ*w}i6Y zJ<43m>K?%ZnQO;U#$g)}%G~xKb1kC&DS?1h{ZoE659BN!Pk!M{c;0RtB1CNs2GRNT z7|llU?(xpYDbf}l*CppHnoo!*bnZ#eR_0r{C+}dca8JI%KPW{(QQ=QcJpw7;=Oo?H~Bg4i)Cr zFE-*c;^$N*D5;Hp*|KG>f+gx|3eo1*j z5r34j33;qjNHTy?xgsI_@xaXsYqc+oBg<+Bgfc#ny_Fa6uU>a~_UZ9*{*8(@=hRbi z49?8`BM6j=pmPUb+;k@)ty`Qtm9hrLnUKx<63JfBrF=!VFH=58dbz) zc~jk;3n^ieQ*5cyEpC=KDRGIllF!K zwG*ZVj_&U~#A9mEkm8I4OiwaK?aiGRxH=+16iSiAilp@$X{77Nv&#l}xjW-g*lAA! z?l?`)Y4?+Rb<1^QWRfelGxp9-RK7O-G2anM*~y$JLemB^*VqDx-shm?kXKbO9bW2g z7k}cvG<^4Th(^`#F8+k;lie@xD^YT2E<<63&u>Z+e7{UdQb>P(eM`#^v2!7I@8_I= z8DcLK{B0-2VJIU-ILM300C&K4eI zuH}&0s46g24F-$$Tac%k+K4i;>Vu8;bcr=?L_0-2ILchxi1F-yz&h4*5B~L^ zGS?1>)Ax8jWLO?2k6N#~@n*sSaT4$C)%4m-#74~=mOet1bJz~7*8IH@G+ zp&)Es-FVa`xgJ3*=-BYg0^2;Kv4nZ1XMoIQjwBY15Dz73NHWpBEL@H-#r1O z7o>(fNH~^*@CaDX(4#>b0680_L!maiQaBZd@yOS8cy}P|j9U-p6eg5_O`Y4;yaJNL z6DF(XM8k2!M1(Gsg0dKYFkk9RJKu}xgptoE%_oUY_cBBIXF zEK?s{)-N^2b6Oa`r$|K)btGpBxF}9Gahzsl;q&MXsMlPGa3q<*A*cz-ckyx93PR$G zc3{ek8WThq-Zreyz|r{z;!2 z?~A_dOYt@;@cnttbHk!VvPFiKI|1TCC^5Q1c?1}*GW{-k1T(c0gAw@|-c(=wuRE+B zZQElBR9rpiX>}K!Ao;+0F0l?DYN1r4+vA-ya@LILG;>iIAC%^zWhTPrVkB02=3*r? z@#o{td{do|=VS<9`F$CO3r@^Az3|5}4tEL?LM^5rE#vsA z4Q0457Ax0jWqR!ZtTRjDIE1U7DB=NJZ)S4`I{T!hCGV zs*Qj4#(Ggr~duO3l|Z)`VRLI6{Ze_s*2XV-?Wj(|Ez zna(u9DhD?w7AsE#p&;aOJ**@CkjE9i8k$0^0>tlm<7TF^$+`j_86r*rVxMyQ*z8>O ztlWSdQK8VZwd0*n#^!^iLBU2)LAX8c`-{W^!fgTVsEj-9L@MW*os)l)ig*tKE?fXC z=Rh8ZunaKy@xUxdp8)%k?`CGlCMNkWxgMmw2iEdwI}bd6(b3hN`3^KQa9+a3fb~2c zC{+l0S(;gADy-MLzwK5%yZ;W0?ZNu_`FZCreu?~|5HKj8Ag|zez!^PQfs@#9RlxrIdmBkbhVo43<53e~IAvvV_Z^Lj>DC1DX$VG)I( zuF{YDQ9*TXnj+x?v!HM+?C(Dw=<2PmQ}7>KTwd9qdO1745Y`m-{KeqQSEF7=#+}_g znMTGSeZuknl9`#=j^mDied)sf>i+&VXod&~>+SEaB8ljfgxy4?G)*&Sz3v*@_imT> zO)ssi_D#LNQ_#<^<1#q>GHYO#jYCAw$oGDB&eqn}`}gk!jC`|#^yWWo+XvP4^gZL# zan=JWz{7&l>UWu0zHXUu%;=N%8b*7kR=aw7TlaByV%S0#%z>>gXz~7`I_4~HkSR5Yg^dBknK*2v48RQjV zt&k9Yc(kAY&H15H)EU>+sos|l2O_0F%6#8vn+v(BiTo^f)Jww!+KFOGd~!t8(Ukle zyyI@WlT@`qT`NtToZ9g9XQT$ zVWRr1vTwil4J)pakGs&|S3;X7GS+&IYsqJgq(|g~XB5k4VH5-i7a_+_b$C-_C(_SwZ_XwentFe#smU@xw5PljfC?!R z?l$1Zz4Lt+o;*Qmsv*mGMaBv_;ZG$PN)z^+PgR%S-eJ?+;ncUJAqEBlVP+@-Le2&U z7TK7Zsi#`!nh1i9hgmq8ot2&vYf+w_oY2a=wwg5GLrq;S^S{`UWWZ?|F=KEC9glz9 zkxVBvmxE~SD&j-o2MT^p826!qU);+TtqfrKo`JnBt3#fDCzTlK^q&>{ENRf1DLhc{ z_bS@$@d|WEag$~Bi^cEDn>X!=VBvzp?<+cJZwOZ6DOx-wmmcTGJswmR_)tA^xSwB+ zjw3o@ez>16P!2()(@)9ewx-wW*J?A$l%^U%%KTdLYXy|-V1-c2ZcNFE<~KV6>$rJx zSv(XzeZ|Q(Qmr2+abzkcpCAJ2xb=2Q@m=8#hTA@l4K!w?PzwdB4ZoT~+Z@(*x}s|H zF_Y`sM*mQNLuEV1g^Xar^ENY%ebM(e9QsaPV1C?x=7q!Ko{^7JBDH)!VBt(~)SC^E zJfFESERk61!X>U(R`p6zMGAqqJ_3UwEJ)B#C(JnGPxF{5=2k%(=r-iu1s^K&fKhc_ zpU;hq)a7lD&wt)6oe5RBvNIm{$V7}Hw>}5&HGCOW_v+k~w#&HU(%q*+-1kh+O|!aQ ztOt?wtrG8J-j(6e#a>`-7_YsuzB7p$^c5dE9Tng4)Do#ke7x{wsn_$Uy7GExpu5%O zZT^(0OrGUqhI)3p<;fyNFxIq@%K%;!o*)%C-bdr;C4d^BL(j%BE|D1_IVc^vj^m6Q zK7o?SM;(ui@Xkx<=h&l^dF^|-Wfcbr^vkuz5?IsGN#meo17lehpB>O#DK)O`7xYN|YIf?-_H ze8m~QUQODN1ofbKB30p35}diCHv+?_Ljp?kdk)A zg)nQJynC7cd^uTi8FL%!$+$p*Y3H;7y*ys$v-EZ`n0q|3)56Su?pP!|7=XXhZjKC3%8sOO^BqqMzTeB3u^KHN!Zk}4|Z$)fb@m#s~F?QLl zfNkP(pK|^*@y;%X^yl!-yOdO^EJz-i?uH&)e%+*KA8u6z^NaR=??29i6!x#oly($m&cIn8?7i_HCEE5+%7zMk^NH2ccllXw~I90`1K0x zl~XTm7rR&U8`Lo>mAPz}ByRB=b@wqAC2W^iOT9OESv*=&Ra2&WSHL8jf9&c26@0Qe zNqy;@vi40F0`o@x(fA#I1Ja~NR%cet@Sc@WVebitDhY~rGWJnu>*jMVKVUEwM#_wC zCW{7RSdIBFU#oP+D|~}9he*cT@(gN9H}+OoMeHsopZlD?8T3%~s?*D15B(y@^Mn26 z_md-wefQXV=B1>XrU*=Ak^B{9w=Uk$pMhg)(7ZzS?h66^Vq>*^?m})4C9lfC#~R09 z2{{lYhRcvwBWCb#x!!*LdULb5yrJDe^7!=COyZ>bw^=^0eRwUf8xx;{AQy1r2oLDy zHfm$X%hTG3cux4f4@aBN5h5bkP3Aft&APYF$R{vs5>nsM$ayM)>&`5VmPeb=j#cEf z`y)tQ3jDl0XIj3J;A3BnNIDuJ=78ck9>$t(8P;SH^@@3R75&aGuR_lUC6}K|n?F7t z$K^+uuHLPj(&f;PNfi;MXZztPe2rUV??zS$oR5bp#q&&&qspB@_Ru^1*TqEAH~Q1L z@vu$9uja45U%_a_ZBd&MJl21Ce@O%nGt}A7@yYGS8`s7=y}qLxnVnP1$JWwb25)Sd z*E5@){G{KbSSxZbJQ#lVws@;F{wl_KZGHiEDYJ%ligmW4^K8}GG3W6>=0#ylE5kv+ zh1fd+W3B6wKPCoaYO4$GuEF}{$i>P<(Ke+YSf19uzBMmapTS%2)44jetXbDMHt^Ai zMewSg5yXnHz!wmne*5)#UF(;DPrg5Xyn~L_;|Mj^1Aa8U4ZuBx7doA^9>Nei@^(UT7RndA^k|`Ex}(wsE9DbG!IT%c?B0o!pw{Xi)x8PV|63 zh0-A2!xki<)qq?djl=?`23Ry`V*nBj#$f+go+rVl21NU4g&q*hgLb5%CYp@>k45?e zx_8L_j>d&R{}J%zqosO4pOMFoBk<`7iRq7AM*aoa`Sqb+C-A@X1pYxzT*kG5uy>Bb zeVop4*lE+L!+jh|GDsLr3CJ~cy4a+*>Nj$&c4&Sjnmct_8}lOjeBh-KKDVV850n!5 zIg6?1b@DDgAhzO9n$s=RPrNi>zrk-%e!easb9wu{QKIDwdBGb7j@{KaY1m~^{*GWI z{u8SeiQcEzkT1t1+1ja-7XE?9Zk_R=U(xN1gefRXh{I=V6OW&MP6~-EJxq|{*%JId zy*OMb8mc)kIlIzy{Cst5>f_oEDU7Gh>w%p3VFVu{MGH51c1*X2GnvJp?zk)t5}os7 zWjU}yjy|wL-rga3+GP6TEjdQPa|1`=ArWhO=8iuJLG{TKmeVkQyv?QTlU_kRctjWo zhd8z#YK%t!sUFbO7Rjn>)C|{~2_^6g>c%KOhENEg=N;5x#&6JAjxY zd;zG0Q1FB^ih-LuxSs!lnE##6&#%||cTWHy&Og}g9ZY^6AxaX%fij5w-G#A&r*DE)D z%8xHlyQW=b{c=^Yr1pbG?ajHyAc4A%YKEn<9vO=)`Z*H7qPWNsDxU>)qhi75%_WtHh`2%ctq5vxggiAg|Ju#OR;% zDtXa&C-xv{Iol8-mcSa|v#O%~h&__9CIr;$ZvveeWHCXnb(WK1kV)$CK-A6o95=?= z&YUoMM#EfVp4^_P2)mkPAatg4%|+F`G8&DBRD~@a&P8-`K(xD_#&H&8L=b^;L`a^Y zIvfYVWCM(js}P2%;*#~M46wfDAq?*jOf0hg1dtofKh>d@DBqNs6)OuPSG{Z#sLg;b z2qMvgaB!ySZ`3f?n|e4r=nTpqYjk1|f*6F2X^_W)Ab;mS=H0fn0?roBH!|?Wx z6z;c;o^;xL$jSwLJluOWl@x_Rc*OUmcNwoa%uy$1+}ztZyE-?NqeYhiRz3ecJ*p)1Mf8bvYitXSMh!*VW8xR$f17HTQ3Lw@INfQu|0NQl= zeQb4YlfIz^U~6E31xZ8;rcuHp;{nM%+2;jAHX z5}d;TmSBv7cE83-X*lBr80_XpYjXpf1BB{NV;V>$K(vAY1aS&V$v_<$L#F~F5tN#2 zlu-q72jUkzn}To#5t@{e1sb>*&0L@pnVVY-#3{%xs;cY3yXyL_N^KYD-U8(=AXIsH z#6k6ohL#?PR$gB5-{O_uVe+rD0$B2Ym8GQDka>Z8(Ht zcd*6bVL=$=9{a5jq!R*RWpOJmBn1e;23JVISHBO0M5odmY;)jkq`%;fdN?~cg$4dR zPeHfE&%_@@BB)pZAqm0_)GdIpWgM*V4cZLE0S-+7Gywe&6O#u43l3Hg%ZwXL$v=>}M@%Y>6DWvqNK@wlt$a z7OkBk^e?au6iyeC6^Fs#aWFm$S!Ea$#3Zb_li&@IB`YMN=DrE8heR<;7(;z@gcS;6 z?@ZjDt3zVH2$LFUO%4iSlVTMT*q1`pfrX(UVpNmuiNGjced`s^Ehhv2xVrzyh-=|k z7&|2RX9WLxb!S8^h)WQ`Ae4W;lKlN0o{O64{~ZedrYnFgf)q`EL~tMy&7;xz zBZApL1S?CB!g&-=^bFt#BnT-kdTD`Esv}TpM_@jlD@Q+23})+)%C)hRRpRUrl4eUX zB4c#dBRIDMf!zj$(eZ^w`6$s@Ut=zDQ;0>$_8h3J42(eGAqTupfkC{5Fw{r=BHhN0 z)7U5Lc!>0>)q^82zw9&K2J%D+s1Z`|!?*dEHd&P8RY*uO_n#%*KT_o1*zMo+v-bPf z{^za$z;6G6{fGJg3A-_GNK=&svwh5k_IKA!b`%`QGpxY6mmVoRQsuNE&ArS#>)5S` zOu=Vz0q~P;2Ski)p`kkU``e@;nxb{OTk4~V*2Dtau@L zq2Z>SD28lHa3$Zr^$cxGn?DZ~WIovrTS3gJG^8As`^xS(5*XT;m(_ad8R+2@E9R_hOygU$0X$mG}QLey_lP_X=R$AURgX{Q&+S^nej)Sh~bL45t`61?Of*VwUDWYv5^kaA`l$pg^S1 zK$Qa*a=?K44ov!EhYBoh2@rxSW+TZ`4I;r=}Io7H&aKv4f#8d>&dT+%I)d zUtr~sB&_B~k`M0az^uTKQ32uK-^djhCMt$v0r(aE)<*@pxW>jOr)xpoRBZ3Mc+^eV zY_d18YWlrf^?PGw4>x61&RFW z=o@3WtmvanK<5Ay4xkq_+}u3Y6xbb_VyoW+iNfgHW*|!dfDm{Tj7<}P7l9!~0I~=3 z@FrkE0PY8QQx9Nza5FUn5HU8v1Na_*{sE{FMjqq|Seb9{JvW#_p8EUZeeXryar@#$70V zK>PsY5V6&XKy~0t3e0{m@&4oob8}ZW)5N#Exj?`G6wpJjUIR14WObsksR!^ej6TS9 zp*%DXZ+_RC>uT;+Gdu=V6L0QQvRusT!p(sY0%#$CMgk}zfDHneAwX|L!`o&T^Y9*u z>*&}+SMx|m?$LKH**PvQIXS(PF0MI1Vo~xvx~FP%|6+T(`6qTzz{&i$}_gqI}NqZoX+dr zni-P!o1Aj0Q0qFd+d#YbS!DSQg(t=#3g}{SV*MMm!YmDWe7b|{IN4{WU5ZJ$?KaRV ze7eKIVRFy;h_-bX>k-y~_ejxN+?GzU=c>XQVu#B=cPlW40BY+rvp!cKAT-9yzx0A3 zfL|VJ9~?1IBk-S_0}TZgYJFr)81ux%q)&mLY0>O;-h+(d@?2$Tl`lznY&n$nWb-ZqweviVF;GHs6 zD?qF8apg;&{+~XoP8J;WDG+0Ook$PeytXiwoE-~13LjRN-Zy?+Tb}LM{C#Ea`32yk z8W;0l+B*I5JIEL*5XNEGno1PIM-@guC`AFS0`O5a?ZBi(1`700&>zpVv7Da`!mrq3 z&hi2um2#kD{!=FNPF+|b)mRZ|6<8M9r5?DzoK`JfmG^@hO6#RY;IM5UZ>IKJtfFVdQS)aqEKu57xB`v7p~z)HOyU zO=}2f73TJdy!8~)dbh4s7~3#k90yt3A_VaxyNP{xp-TjDkxm`7am~&)k$!cWgE4=f zYr2iY3D!GI1+w};tFRP8mQ#_Eke|e{`_f}Yj04RqQd1=(LRr&i_aHk-EEgd=)(NIU z=W;44AV+Vn5jsHgpAW+R|b} zwPhh)Wn92zN)E>d!Y&m$EKEd2-&9#wM49IidN_!gV4=s~4MXmv)bX(iIilY8v$4L+ zE7;jxa=@eeuqe!csJG>i*5T&fKr)p5KA}k0eDGmR`^9W{Gim1$O#_Ia8h2!Cr|EM8 zc!br~G-S@i7FgfYytJ_}ua>>y%2W&sPKVXprHu3SuvrsV8@7^4Q*6OUv^G2yb_ko! zLK_XV3w@(roO+xMKT>3$6{Pd-eHQgCEtJf z?q;b@wN~QEhb=vQ5fD@SOC4<8^q{$odTc2hjr|aAXg02af(SUHzdwCwCgO5QeDE2a zZX@yrmxPAK&q=~HE(o4t8nn84frMbS{eDwdpiOqxpXDAMy*x?;)Ep$a%=a~obsiAweUPgu4DFxhzkZ<=kZR_N0bdUNj z0T=ATQ^~8_?Rj6)SSplB!hKXaX8U57@itl;*S6uDEWJ`K9C24Q1;v>Tl^mU^F@05H zjKd-+WeVrkIE17g@)nuZQ}^o-U@mWXJ1lEh{iI{WN=}Yemt$=ljQK?0v9sFeVAnFC z+#^(nJu*VvY+Lr`p4vNUcy#Ge$`ygDXB^+gH9dPgky!XCY4219+ezL#vh}6r52nn% zJ3qEe-DtRTKbO@-At(F$?oX6VqApD=J*TlZP^-~rb32#1bI|T)&2D#Ytv=vNb->9y z8Gi3{ba`lC=4ka|r}OBMnHO~S#-@(_Gk4FWzi70{TyHYC+`9ZKXS;e!^ttQw!DU91 zf!}toheu`g?_~XGG7w&&_kNkb72u{PuC+3Z<3CZv|N4W7m30VD(Yw3qz3ov)<3{nD zb2`=#+@IqjUB)h{G_3x%eB^*<2Ns}4Xn<1K5TtG-#dSEdG#ZS<2oJl(F0Jw=}yh-uY=s)hfFAo zN1G2n%M^7l^Dv8$3fFepcyKYtLG-h!hwsGJ+lz(fYm>uIht-Z*oM3mG6)!mG{r2cX z!#!qkekEr81YiX|&ka($MU;;UB*gtBTF{ zJiqbTW9|FO)6M?NUGsh)9gS9}d~B8m{JpL}9p5rynO(jpMqp8^x1hm#$`!t$f+pW+*3qcxvJ?Q$StO+w=5anmH&WfJbl zLdaWUbl*bMSm&8{0#3S}R|g!f4RuC;EslD2_1MX+(c?|Qn4B2%dE5(IOeh%_RcBNE zBvK9?HrN?i+!T@X)=GqW^|?dr8ZoxP!ZIu&(%$_@MM`Y$f+0pOipeott8>jtKFlQH zY4jQv`XF^?Vo$uf<;g49NW5eGa2V_=G45e!mJKL7#?u} zk1HlbU0Sr*I-dmfv0hnBemw8?VHRC#%Y4-_Wo$fP^LR=qQ|d;U)KvY{SjSXqXsUcs zYI;{{qNYDZGcDgTtl)pb9A=A5uwG%0wTP~GvUP6?7fp&XRc;0cm&Xk()m+( zM;yugsnNW0xWy*tmC3Y33i>~a_a;0vKXFn1z91-u) z6u)OFVa32-UF*uHdEbwrJ_k3Y4L|qa&FgPIL?Mo3^DX7~&*$+?U6B?lT+}bfE%E=- zQJ}3xId154wzL4Ik@K0qU@g>lXN$i>ccJN6;Yp!giq(^IQ(8(ghDx%QN+?35xmu<9R;7jBrNwEbr7fl9L#35V zrBtD^8fKnL=4B1uWld>iEiGl&hssW)1`Tm#T8FCg`1}phcH*l)#Z6>6(36TeW#^6Ayh=xDta?i zX_Z)T|PIZb$P1zyG-G-5EZ_iiabh1`%tmzROVJH>kBITG8HFW&9%Ln=V&#b zPqjdLwGd0?^TBH6KSredcp4do)}WWLydT5^@CQID0QUgQfk7LV`+mLU zzh*pog3C3yWdl&T)Uw3TLa)xOF61oCInROX>gveq-&{q1|MT|>{12?ae?&a~(ueV5 zFv93PI9mHpt-|3SonLKmBrB^6qw@<8kJMTcXjt`P27MUCfOu?OT9H!)eHg}hhM7aI zauCH75RdM9`GaNV>D~|G^o{UMT+$zUPq9d8Tc zmOpPKKnTAbDQT3oQl~;ywz$%%rhWgtWSM4~q|%i8haBdq;rgAvN!*Ys?ge*ddh z;Sb{Rp^+XUKhrdp)Or${C@h<4dEYQS(>i+(Xcgw3o!xw+`E}XHn=9X@Ki-;s#{!54 zzw_)(xLEmYJ1cjF%Wc#yJPE?qvFO~zohhHWEwr2t-J8&&5jv!*?z?s^?d@ytgo!9u z!!fqDZOpu4lt73tN}(FHQI=G5OXj=t1thOA?sF$b4M*!xG+!Ygm<0CMJ=B$qI{Q>q zSkdi1i^8#s&v9zFZ7m$e(e*cUviDbY9u@1``uIEsclpUgp>4y^m%?ZdtyZRe3Z#cz zw^zPBca#560|~sm;XyOsoTbu#Y`bXH>$qj3xjTmDy$cm-9yVLwW`$l+p2$sRclmRg z!;cb~O85%I2J!w$&%s&p^B@6-#LvPua5jK*f-%yMF*^X94WQ^0oEG4O00#p&71ojQ z@4y(W`0_~F+`)dL?~UPQx`G@urnR9raHeSsl#bB9c*d3ZnDZw2d*G z3WO=6Dx49WzeDrC;Y0KLTmDb105%Z9;IKG|1ngND9svuSoi2=pNlP1ynbQm5hMDp} z_!GB7MYf+ndi6;gnJ zi)z^b6r4-JqO{);G&~{k#zRyv7y&7SHO2>&?nW{rEtDg1yAfEyH!jhtzH#(UwNLij&+cg{S4*i4 zwOS$8(D%k}FcMcEmOJ=2eQjljJ={X#x1;whk&!`O?rXeXnX7yB{#_=&T zao46}R%-TvFr6Zw_qWWQf}{3v3y{;)V6gIIETmUjbJK&>=N{fW_TtNj zSIs+)58ODqJLKUlk6qZCnu{|`J*wN^91~x192wwdrLQbQGcbDNR`qN@8iWR!0-oRa zCJhc_;=^CyfM6&X_KAn6EyX)^5-R^(AB5!eA&y_{M|;fJ|>YHjm7;@mgcJwJ96(D zkmWoX=m%4gWDmzEI38LrOXII`7OXAYpQ!5i`em2u$pe|deS6G;Qf!j9JATuSg^MGP ziVV}Wt{Ns5Jt;X-+kTzd6l^5cw<2~7UMe3<-1V?@)q)GUU+=Q{GS9-c%41RIK2Ala zc>F^f$@;XP!(}!<%F?JOe`+J9U;ivi1CaI;_^suS_g-&apY{XF(r&bTogSz?`=%E_ zT2Pio{!^Coxa{~ZvYfRs7_yK9N8YsrK`Vy9PB;no^`Fa$H@M0ls5Cke*4?vvnv&q}~pqf$oQ5HGP1oNI-c z=LQ$(6I-`PK*;{}dU#&FP#pxnHuVo<#E*xh&9E|<3v}(r9tG|(KliBL8`QsWJpKOF z{`o8LcYBmw`=80qU2vyaPj)0b!f-plL((J4J+k!S(z;?!s2fZqlW?AlE9^;EK6mp@ zS8e`-v>ib)E2$>M{n5M5Zrss5H{6rCKTp(}*|hXXJmTQ#eDA~(GqQE-Hk2?|=|I`h zfV3UL^~FO}=NExdM&@!aTYi+z{$t6`KVy&biVW2xk)~nro?1}|zv>+@bEG!3O7yGm zQpv~BT^0WRlWPzGC*}yj@ol7BUMvlX4J^b%SS*1~K+|MsSGi)gWy4UQ#SpTjUZ=8M`&BkJB_08j6FL#R8*G9H$fLI-M0Z`*D|V4Gh{EjV zQb^q*(H*HQR#PW?Sn75FvumlfW!#8SxPae`c8N+}&$?akuj=@pmRbCG)h;tHL|{q0 zc(X|evVXv}@9fd;bX5|9^T5T^vJ`?PoE4Jtq|AYE=Si>u523I>+!{Zg z9k;?P;1ZDB?_mFT`e6S4UH|zjfPMNi*sk+$GOHlW5o|d?~q;-k-L=pAeD8$=#B9H z3FFMY?s5Az)t9aZJ3F5Il@7tITe(CasN4dwzaR3{s!!oX!`X_$tC8+X$C|O?O^Hs8 zl;9him-#ZFg?xG-7CEcvK%$U3uJI$3jVW*vnz=HrV4p1vLT0^nL%ZPNlRZaJJXj+V zjD+Oq6(vHX_CXd_1&zN_T^Yg7!-XKx-;w^$|Lpw!j{i<8fW7^fNM~UdNuk=c2LSo6 zDN%VuFO(H#aXm~qZ|^k`dC`{whfeB~`Aw7*96w7LMzNW@`C7&fgIm4o7HbDr5|p8G zRu`!W(H>H?cZn)E@l13kavE$oH&s*kDDZH}yI=?9vS%qMy&i!}#i~jyyf3E-p0Xr4~x!(QW76iwLS`%F;gb)_qoxv8y;_Gf5 zn zMEIm#OzjS3LZSjYQl8l9Fdb$w>5(y4r zX10hJ^V0&cSKcb|7?UQ!oB^B$#eob9g!l#c^GP{yvHfzOV7}nM`L?AiA84ONqRyIK}RQO;2FZTO4{JjE<75F=Hzy7+oK8nM{ zmIU$sXaULVSbtpHZud8?(i) z(u<$4?D@L%;)YYrFVc%Y$`oeyz)>+m^*_oK_>8V!y9d!sNj4AE)xe0(lgT^SNVQIbO^;i8AGE5U8md3cG55+x z9lS2C!Z~iLH#?8^<{6z~S&tj;<4CML7N0Q0=rEm_p)=5;WN zM_S!YzeMCWD^^0=x7GC)5X$aFO+Fe7!Mff8^4c5^p|NVTVD4?}Eg;WKDKIu$2to+j zueX3i zkO+W{h=)%C>_{MM0DBSGcEDBxb{S_d_#&Uu8p)m9kLSg zH83usA+`PZ>>=9|2NMut+we@oIl7@3QLHru2Wx{{R5P<;e^e@Bz)w?%gyP}GFeWGz zgc`^KKwyER8-&{brgi=OfBC%v|LF=~&qFY*2=VWRYyYkH>aV*%L4nahW&zxf`F|Hr z^AJddz3VA}pB$d>FlXI+yx!4qz>zWIm6bo z@WrJSkciLE&+k8M37WD&P)^T+(eA2&p;3OMp!xalKt>1DbHd81F}bybJ^D5$>`hL% z$}4XK7i}U@+wp`cC9eRltQz8dZa2{onCL95kH;sahLbLIcJ~Z)-BKqSkBp7WD=UJZ zQIQ*StLxP{5*aA$+%9{YTOTLtZQH1<8bwY3-QO2IydA9%s^}Syy`6abb|Nk@<;k<> zk2-G3E91{NyMo^Ev))nBnH4S9Z!((1?H$iIG_}5@kG>in16n-LGhUn-4SL2w=lBcy z=ss)LiSa2(Wx1g@BUZ;xG2D8WJiHk)J_+m+ zavPNuK|%mB1Hv96*qlIq02-Hz? z8=J3#p7epC7xy}z1Jj+Iwav{Z@4nA}r{w1Ok;2QXYBFyPzWey?@U+NfK?6^hjEs&HjvJjgSXB|)2_dR-Cb)P={ z{sXuLJ?eN!BpNog+yL$E;5yXYax?&8nNrCK+wFgG~wsb=a*`w+%=>P3*#^YgxEl`CJiGEef=MLy4cO(iUwu_-jo zw%B-s}#Qq`q%gILt2lKXRd)MFT61~e# z6*AYoI@rW9uGR*J!C6?u_6ejc)87Yi>?J`i8F(}Y%ef18_h;e>qgCVJEI1{2h zj2z9I_0%#ZeKn!a^+|IA!CQwN{|Ye#n}6xdWnl}4ZXThDpt;9ROC=cIYzxH5n5J5b z-n3LEVBu`fDX};A(BBfSFD6N#(``wlRPlw=xtCxwJY(cN>@IZI?JkW$1T2k|c|raq zXV8UX1N69Tc0w~;P8CkQ%ay1B8C`w}qtbG*_)baR?JvBA{BmZ(!%boNTBlbF}S{pOXqu9PdjD1b5T)9|zJ&Yhn*uXU zuL6c-TedqiDxLSgk_NlHXEuY*e6cv^Rbb(}vZ~VJ(tQ#%v%=7dd)RA}0Z35+%d$#M zx$?3*M-E$;-#x@#?i?iG@xH(f&m!d(Q5WbY<1$p*qxkr#&ZbJEsow3RwPydBzKPcN zA@Y6f^1%{S2v#@+(dQ&}rLJE;e(EI2=;1TBw=GG2fo?rk5@oS8@j=l_+2yH2RBrA_ z`=_};6+@r&=<6zbF~5>_qg;%Jwml^l`}UzbRWLFdtrkXDb#ZF=Y%?etzHMN%go zdqQ3E@|;;3(PJS=NYmATKTPcY-C?t$8VH<6DEv~3j{(WAVFD1`k z-uHdMT}Vf?w?Raz*#Ixl#|3vWFJf}Z^^jjO3%c&UkvQm#--;k?NTSQ4q@7IE9qzXD zjgZehP%OXuneM%Q!hqikpl39zz?{4Ye-J-_-QRVc>wF{Qk9xhV5-!07g ztW4RlE~6w0RP=YTn%s4BE7HqaKzW|~B-o^PL~mBHI?^Dck8{`KJ8y>35pDhKGj|sD zgt1P9U`%lQ;j+6s_b5dPR*#O}8`zUEYjWK4PM9ccv16xO0a-bt3m+Lm++AoN8=k-< z<)vnzpOqiS%bYK*-qm$rs4t$vS|FRfrTb9Y=Y-;Y1)I#fy3JZXCsLyd6jZrLRzshY zn(h>wm8BWk^nOk*>M2mZY5;qpH=NRmEZnk3v*+|sO-g=jpjuILkJIHxslCCc9WrPS z&Rcy+kGXSNwSH1iI^|0Secu_*yPEsloZd0bMips|d#PRK;@&E|)>*W3vg@Geplb5n zo+2G%JXyJJ7@vj>(s`%O?Kkr{8)i&YWXpw6vQlvVi8C7Cz3!jrwMC<0C3v2;zCf&Q z4oa?M&(2M;+eGH_lu>ee(n9@#rgOQ1PaVWGhfJVO0{B`dp$R&(mcSU7taO;6{O7~r z`QmIlS4&LwxAq5{CgRoiWB0nZ9L{dP|t4;X*^-;7HLt#?HGq*aUS8Js!I9n6Qm!>X6Rx~#seOd)4ASD*g zxm*uFY-GiYdKwUV~w12$qIAcjl;YK-h>nB-BLn!*G$XbIG?VjzFYc#zu+f zd10Dt$_ZP%Uu4YiZN0%pP!Xg-kc%gtl}@-^Eqns+B7nu&(pa?m?9d4bw{cKl=nWR+ zhhp65qXT!}Jngl7JUyIqqj94-N-<#i=wO%)r8aTZ`4lJ41SKOtJA`&Q zQu5wPa-1I$ScMW`vtt}Y!5+SwE^7{3t`GBhSm2dJt*)J18Lk~^>U5cLi8|90AmowK zDZz(D)3Ax&$Nu@ye9wG^TjE)t7i%?1#^$FT;%;ld zliB5kZ#hzXW`LE1R--(vI=>Z6kAI?&Pe4@`ZiO8BoFMR&Q@QOdvlSams1Jfyh0v%+ z2tnqOc$UD|TPtC-_ht__vpn2LWDa=+oody3Mvl3#e|-B)*z2UWr5ok&C1I<_&l=iL zJ7-&}%3<;sgdTA7g#~{)dlXxirsllXK)Csex#CT)3?VV|DLK5s zXADu-w!%$G?=8pEp0nA?vaQvrIy+0!p6X^P_)W{daXY>(&l5#GqjR?3czG`kvZ-j5 ziFnaxb*ZfJ>;7|_NiR&lZ{JdWxf2(Hk5xsUkT$xe_4shAeW(NdzP`Tqg;ymwacs`y zLG$qE9c%8UW;ew7H7-7@pE*(~BZbv*(2_TU&$o2kNJy%0x%}+rR7D<|iNvA(26Hem zKQx3X?4b5A|E>hqk2T5X&s-mqIk?z;bnSD>!|U(VA1?O#tbL(y+?dcmxb!G}ZLav> zjj2;^q-U*bU#X!xG?)m>Loe38H6Hidbn>Ck>xZKAw2m7yCWFf(t!wjb2Y13k{0&Ei z#TL6UJHPCoTp8&I{)TAVsZ+PM88`HWfn`sao5#4>hAj+NT^X)Do-i}+Gb`iY9_rT|irNoB+7!$#V>BEO(dYdjV+5Rrwjf>E z-0%Nr-am(jR4v1ew(vow_((L7AQI^<2HFK-_s{w{P%PQP0u*ur);a>R#sX?O{O=d} zt%dq6obi`QA#sNx-pB;(E)G%?@ZUCIpt0bsDjq0K3>-2?#6nl(ngSIE;G2sBPvL{) zV}lzSgVhIuE9Qeu1Og?C{Tyg$rU4R%#uY9NCSK0~A~EPhXRy5|)R!FW(P`jS9QpI zBHtpS&@-YqC8D$`qI@6%@rgtgh^*0wq?!{kMBioB3uR93b z@{FPiMBQ$RLK#P04T$P2j_Q$(>XjAf^NiXY5Q(vi#HgS+QV?7QQ4lQ}KNux$37OfV?QJ8!U?C-2Bm`aC#1wPb zb`80MfQF3Yc)PCgH%AIK^9jpEs&K}M$;IgkCcM;$N0H-{2uQ^)vY{nvFFgUSf>JNx z(kzMJZppVpFmg*yG(j^?RP!3KBta=P0iq|U%Hgt<6Xi@2hddK4QWH4_Vr?`N#0L?0 z7_`$EdhJO*(UowjD-I=a2|?Wbf#t60oSxQYH6Y+X;i`V8qM@N%k&1X^rqDGmge;9 zgXuRH(`kYk?V1^PEHmzTWpt)ybT?=83}*B$X7mYWKGMv5Vww5OD{~+%~mEVAhCc)|h41JFl#X)U2uItoMUiGmBZXg4v%nv*#?czjkx%~iGmZ#;nK?CvC84|&Jjq<5o*a18Ojk|%E1feN@(Ru zS>uTleS>^Bb z&L^hj8@A-{8_GYhly59la7e4b)T+SDyTBr?z^bLddZ@r=slZmK@Pt;Oy;b39??Q*P zLZ_BO=b^&$ONA~%MQ&O}m#m5|dlz}86?wN5`3@CbSt=q46$fe+uLWBbhjiC z6h{pe$1D|-g-YVIN)oI}lDtb&(n`|)E9yC|vO253QqSF7`djr}cT0KCPdHkn6KiYiBiES ztBR4dm@%u0E4CP_MpcqY)tVLMgAnJFA&d_VQ!PM^gi&8?ieO7OM6hr^@n)_qriQdp z(aI5g@`jwtIFt{SX_@-Ho0{l}vZmp_MHp_F#yx8(u3Ftx6B|%1EsvHd!%aIG%D=!3 zIWdRetCU-*Qp;iBkwNWjt@?ID&B&Ue7Hk!@I#9e;cbT*&5;qi4yD(J=Em!EIhwYZH z-+C7J%F5876?b$x^CSUx971C_)2ccfR!tjTc{MncHK2wYAaa!FrpAj$8_%|;TrO=y zxMCfRaF^wAo=1xc=#eqAOu=LUrr9R4aC53_Vf1Wd0u7tm=ht6k@++Fo+EU*Ze)D$uBGd zPzA6WFrf_K6o6|0v;nvV5EUTz12_dRA_lHuSpJTmJOz*ufH?pP0d51h5a2cd+Wcz& z1BeD-8Ng=%nE_1ZZ-5MVumLm%U>OFG0VoOJBLHLohXD)+yyyTX1IP@6$uNKnpfLdW z04xI_3_vk}!vH!2Pz)QpFrYCE2m>GwfG_~XNJuF&APjhfW^fn)sQ`olGzM^(qsJW> zC(A4?~UchxabAsGon{;>p>4)j<8@^BaoG?WpoY)Hg-JhlO@VEhwF= zjS(B&ALUkUPdP2ep+-wpZI8)fF{I$O%`tIfai$P%h!Vt9zLn(?%`Ql%ms9)FUJWbB zLuigek`$E@w?l&xiozXo4O{QND&N(yb?8O2&BLPYSZ5yL;prKa&RV$*@x|rch~|^3 z8~pf|Xm2=_u-5}9ojUZ-yd%fgw6}b(f6#UMm5%8Vndj%K`PN4HOguVHLn?d}@2soO2BRKl@}GpO^*TU4>=1d# zso8a-4yveNuaGx)rz{K(L6#v*qWO^UIoA~|ge_^?+ZTsbQ$BSL;t406pD?L85r-z> zjn8ejDn5Dkf_KQtj0N{XgsT=7gK#OS=-bO$azy1e!B>K+E3*M^dzCv}d)C0^4vYp- zunrUE;rPtrIHsXJlw;ts(1NOD7vL^sw}>AYlGQ_B%uoB4*Kwoozwdxwec4c+O0rb+DLNr9xpqeBp!xY$6-w*O6)kMba4$Td_%?Ie z^<|PD^pY^gPu_m+qgmD?Em65^J2q^MdNoO`KZXnyJ&AO_#(J7Lg4QD0-F~@G^6U*o zdE+XHquQsbSclNBNmhZh^4h`0ZYw0OTDe#E%b2AtZ+gL9B=Z-a5;U}{ftv(G(nImk(3^x7S_Y2 zXXJQ-i`;3i!j6^LdXAfKC_j;^p&aRfyYnF4O1yIWm)X5>uAj{Fox3B#;#2gV=9g~F2C=&(9!W+;g-MDr8SD{~iNmEzNjJmq z?AJxbbM%k7Dol2zlO9PItVqczKJPMJ8cR@fEl@aPaQ_Fc=_ye1=(=yS^f{Tv`p2Yz zFDae-3b!P8^&CgjQ~RO{)rt%rI9aJe4|)o>o%4Ed-up|s*g&C1he6kcv@aR`tTLL< zyAF&}zGTv!i?qkX`8|gor%kQp7ww$4O!QegoVGYtM8J5*`wOW-FzI4le#5w+HPswU zTe}217nqk3Y%uLxsH;}Wg_0$Rvyq_PJ0^|&b?fk#>4?21PW^#+0+-<3)4CdIT-O3k z^CcC}7<}+L6!_kbE!QGQXJh}NKs*Vj@~U{>*`@yAV6`HxSCiYH$_18MJuQ{O!9*b2 zr{W96?3TPb8+@h6rAdiM7Yj$kp*#{QN;VB1AP?mWnmas8%=4_DCa6UO+<@CwKo&IB z9W4;Di5Frf?nfYN%x*K^DGb=pc0e%l@UR*$qQsJRIA@B#r2Pv5Oeka4HNx>o**80?{EKYm4Xu`}bI&q6_q({oFCQJ*l2YlecmYDnA4VdfnxPLL z0#fZC=ZV`k`(K67l`IgbOQ9hK%e@{(zP@;caO1uE=BORoNEYP6&Bf@Cgq3L<=%r`t ziz71un|D8M))HuHyIU9->O*eZ=3dFe7j{*}cTfrStT=4d!JUcg5hur;I~xzUdYNBO z;%n7FK%LN9+T*CxThsy`?5w%N^*SS9BN>md#|IFSNTjW0sYs)y8hGUklDN^{Dwb{M zk6rV%mfoJ$6f-mJhUj}aZqrmkPONbkOMi7uiQZ+&UhRqEdd-0#UAI47oqA&trdDQ& zcRH_{kxmU}C6f${nl5Jg-5ED8N=5FsaJ1v3zWCnxbs+kHTV5=y`JRJ(=~vmxKs$5ZEhVr9GAb0ALcD? z^?<{6clgMEDV*Qef{WOEG%4H7uhC^~HHmb*_BHD@jU5|e4u&7S{)#av;8Tpx$|#f?m2Vdi#s3voyNoFUXR`{S-*W;S0{}*S{@Z0a4%KOOg4Vl^6aA0*HWL=Y28~(N{t7;6^n7dcc^L^ zaJT%{u)HE+$4`8T+2R2`c_q2irHx>392D3|_~`Sob}O-jl*> zRk2iVzpvTfuMn?_^Ph&egyPsp2Kgh;QI@vx=;Ock0x_$>vJFerl8}`gLZBq2`~6d<4>)sllBzD%tM1^ zJuh2@UAFEFz~Vw67r%!xBI3l5)5Ks8&tQip_hXGAHZtCgb)mk+Ay*bcNft(HfyM5A z7GZ}y!opI*PM_Hq$s-QA`;-5`p|s{YUK5S$eRn1G=Zpg4XDb3 zzsWPIGbO4;BdTX0>VZX+OKj95jp&-Ds9w+Lfu_j51->T((cPZ=1_fezo1)JSN5Auo z#sbY5xI~loP z!M8j>hWA~2?|F^6gv_skqS%t5S$I7^ax(>OM`fB_fG6W2J6rOM06GeX#HEs%Ci!oN zAoK67!LcMnXDFmVgJ(>Tms4Um4Wfn?;&*mMLihwB6_hmvg>)ouc0odTvLMqn6BpzT zQo`PnIL@{>g+&1tDk1 z`nJh%PLvrFr^R5LR{)}2C;q6TKjadxX^`};m~+ZAiO`iKW8lj3uTI;yxnRmrNTE$RH#mk|J*Gm<2p~?}h$}y|Tcixo~X_Zqg zmG6ftXO=2wg{nSlRn1vdeer_|)%7uRkhWe{8zmto5Kp zq|wQ;`cr2cWZLR)fH^^R4ffmXYZmGyOln<)8=Q<9i7y)JLmTmSwb!K@8^#*_&oSG0JlQqXHE= zfb@Xj4?pn_AU&WG2XHJOwpmYed4}j_+1qBTT2Lh}MGyqwgaOD?}1{?_VAOQRW>Tv)N;^CD5_=nL1 z$bdjU2@oj50R#xJAJC5gNDm-D{avpB<^jD7pbQ6K9#Dn@kPl!#fb;;~14s|xJsg~( zze&&kGZ_Ljh#M04>-srXHbMrLfM1^*x%WwDpTv(6dS6*rd!1|iCTZ4PTkH*zHXZH0 zzTkGMCspHOTDjxrce}H-g5Hg3auxUG>Fp8P0R~LB<%=gPB}~%8r~1iFtr{(q?7I=f!osGl zQhnmK;)Y#o_XQ+Ix+3Ji-%&VJySppnmG^m1P4OTsaz|4!PRqd@k;P35@#}-30_()Q z1p=S|kL2;{HqOW2rbkR34Yo%tD8)n-_ zrA~23ISDtl(_6Q*?n7pbyFe3LS8TH9ble_45IjTh>ECfx)Ue+qxs9NX$02o@xA53` zDY&X9dKAjdzVYNqo6kCp7I>PqyY1B(%0<1&@z*+Qv1f1>Wn(OCbyT^6@#nbV#z^Kt z!GzIEd#0b&6QMNv^v zL6mj>n!Vhfwa-0g-{0>(?7f$~=mQU5J~Cz*bIdWtspNDTHChBRk)S`I9td-pKffVV zSlnHWk{ObA2!E2ha8Ix-Dhq z+Z8G*d!>p?rQFX_q*gS?wL8jt;IyVIX=s13Y?#$TyAP?#ENz! zlGR18c9gQ8q~}@dza{a8nAqY@ZKuK4@HUpSgkiN*1^0wo0~bOCba(YD3@L4#l$c_M z7$}USop4LOWP7N3$#ws+DU#1r0Y~oWb^jILPAUJImAguh$0WuOTWnf&o@x~>k2_9I zo}XAQT))j-q=gv<9= zNiLfhlw4?9^<}Mb?DW2MFLo}XRkp;&hDr#g?xdosn-oHCweN2y2%Hx;my7M#o^9lK zyApJu`#t3ly#}iE{kF4w1H~KQM-O%%+*ihVChp+IV{ENrQYFe0HYT-FTCKDT&rjmI z4rwdI;EK%>)9wxqCn*WHy}A~ep2IIDJ$j7cu??BVksRUOr=PN?z}ZQ>fAU>0+hB6r zJH=~vu(CI_)>&5`KgHE`UaMPgGvA80$=3O2x+2f24odlCqq-cFj>Csj<8No}RGYOM zaM`q}B2|9ui=)QlHUa;cYxzrS3quwIm5qI{ZSx>wGw;i|F zc-tEA93YK%f24@}op-h4ske+;I4JJ%;pGw7pn0|TbUjk|g1vCcc&GwX9qB?kA;^G& zihK!WY$T(7r_Jv*`@$IlYb3;j1J+RaK^Vr2YWSOtOls`TmI7OO$SaO|nOm}+p+)tw z&$W4G*7ShCyG<8F*aLvv%(>=s%e8S zfC+b8wW_}-2%GgFA^eRWH%SS?*kasIqKlvwZhUj^8O6w=$^GGGq3mNGE<8bAW3Qqz zI53fa@7hq|zufQX3=6 zv=@`dw{x0SSZoxVW>@)0$bY_#+?zALAyug7-sZm32`0}!36@-wRm3FNYT(9SAL?Cb z@<>>B%VIsxvmWV>Z`YE9#2nIG{jkQhuY*KyO)SEvI-2vhKq4d4Ss9rFl51WJ`-1Ac%i*!FgWs$^R?$`Y<8CBoZ)>;E@M6?1a5plkwMW|YZLH0gC-|GKy($H_ zVF7=zL9gHD3QqmO2BrFZDUt+i&~KjaGA6&wD4q?}bsB!3JSH|vIs}NJNAHU=#Y)M0 z)d!+Y_Z5romR3WP?x2-ERBUuW%MuJYohfv@gYC=1*JEy_52qE!l^~@lpAGWte9MKX zFHSho?sD;=Uw+jn)lrNY{!VuyNFE?1?{p(7J%cZ z7mlrmwqdA31-Osdi@WC(U}}(~COzf47)*>r!lu}S@mZpg5>OWjP&vFM1&G$)VDMXt z%i*|!*{DNbZt-4OiX?4-593C>c|N6G%@;p)ao4-`Nr57iukXI9oV^-K=cxX0Q z7CJL{i0$?mA0oh~Fq6twN5#m5BZwiL`Z!!bNTW)qm|5uVfKXIcsHRZx`hWmk{3(uP zHoK{S6#c-%rvgJ6fqBx@EzW1zFyX{js&as<=aUeg@(>9^Nd5J2O-uw?CIU_KJ!n9c zN3XO2y8=Q4okK~qDD7o)x4tMxRkO7)8Smc?(KZIq zeov#h7|`OKBNLZtbWC)LYK+gJ|4F=4vmDD3?=)g~(@uR8@3gnZwFK-(F0$C5_@3ps zrg4$ZtoVWPIO4(h;pKQ{Kzw0c{GHag%b0|5)%aU|!gt3LhL+6%8#LOQkUE|4NOfHo z4cDv6Ye)**NyV8gCLR<|d}5IJ+&S^C%(|DVxK$dj1|bPih}51ET*4=QT*fbFC2iT3 zIE;b1=jihWI8zc9fraErfxp$lkBzV;E+)$3u&@y}#6+Sk1@jvti7h5UAv6xrmD0A1 z>(O09A|1aGLjA|#Qq)+iVZvN%V()S)5=zEl)5umhQ!lptI69&Yt_4BAJ14)%LTWJ) zhJk6)ZFE^|!gg{X#7wsphPGfc))hkP#KTHzht=k#TwG#zwZ*H!(zLLdyc0=CaylTB z1hGid`Q)H}q}Eg>A{lw8pU`*&=TXh{z{TV>r<1<>Y@nl-sSei_K z!P*3Wy)fTWf9~o^$_)bsTM$2*o$ph2EXM$2YL3Ax%P%;gn$~S@c6DoVuxYkE&AUHtpR@cvH=7pp zNV6wL%SpF=KBD{lJDLM>Th{Gs3N|jFthO8*^d-{c965O1jrX15*hkB4)oy8xUv1_- z*+h41b=lQsDcYJ=hEABoos-{}ylPfp)1KZD7eZ|3;B77)Z1c@+PwHszP{q{b;?iE4 zmAy1;wCPZHYU@~L+e&Kh7&N;iTDFITGbiE<7CUcF;$p3EkNau{Ejb`_23s@)of<(k zXW{Nv)ePodvRp(#i)=HixZ7?xiP)Mwq{|QyeFk^s(Mw#NaK?0QO#%~bPsG{RqG2SI z-{Lx~854Dw`Dp;-fP*p?aXU|i{@=7lti3QmF#V7l{m>c#b_q~RfKdV*6QGuW#0c<8 zfL&ryOF(x7*d;(b0fOmgb_q~RfM5cGqCZhffII@?qW^(i`V+MT7Qq0u^n+Jo>5Bm0 z1gIszD*<-tPvRoL5dC16er$gIBd-J~B-WA_i&x6dFUn_>0BQ;FN=4_(0k4#tmUXVU zG?!5VcD@pl)5|Z^)ipFTib`v08{v_|nui`I&429yq_qrhlGn0_+kSi(NvZ*2x|2tNoinL%A76CxZXGK|_&F{QB>! zVGiUt9GP2Z#q4~4Ch?fM!~Dqkp5ZQ}UJd72nG+NL5m(Tr9s;#*;1O z%MJ_<%QuEQUK$XnxD#%BRqBg1y>h%^Z$F=8yFj%~iYq$j42QBJwaxc^cjMs4qDNPR zSKu{r0kzXvkyt6sAjYAX)LG!3 zE&DpXOlVDUaW~!X-7BMGH$9hwH=nHNP~-Gf&Z8_o5eXUF81SWY_4$oDr%C5)R+6H7 z;RgV_q)dQx%&>N~6m9mR*>s1@+CW6c#sjYE_3*@YZe*9|r9Fg6`0IoTQ6yY}6p6vdGwz@C8k#tIg4Y1eL|n4M zIiH2s#y}|emXW@I?%grW=vNb#jH6|;vbkZc59trN#_G&$Pe84sS|?0XXz2xBQys^p2Dk0gMVl&V8hX&eflB5gYokta6ZVZ$aU9_y0$xQiu zcV=$jrg4k1VB@gU&$B|=NA&U$FRV&W#Ar=QbZ59sN%A#6?g0~ts7EpLAJ#Ij z?HrR3s1_eMaax||j`vyr-;Lg9?&OG*yrL-4@eXmrWm4%evZ>QPN53jVxpbeU^Aycj9$RcHeGWrvZe(<--l1{oV!p#%)~AXFP81o5So&q#C$|uQ`?uieYqS z5YGz+R|?~5Y_8NdTs?Bj$m!y;f)j~@N{!_k-#P~k1vgBlO@tiU7B9Q?pxZj?xZ+gp zL3{W8XP8&RDxVg=ILv8rT6KIGb7vdc^o^3Z_T%_o{`1nh1nvh2>LWj- zp`^|P2F`oCg*YQzWPwYRPl}2vWF8owMv5IjrjNU`?O-wnlOpLJjg(E=4g>ERx0mP*D+JjbE0NYm8X2Upxf-SoY)-k#ymYu;=}n9S z`H^6sT|!DQV`*s1@gn2azIq87eAw^H@f16Mtp1e)8!lpQ_1m_arNxNFZr`+jz$L0) z>fR7Xt##Ioyv|$My$ezYnz4IMw%6y}<}6c7)iQOjd7t-yzfAq{N^0P(_XW#qLqKcP ze>3Fs`*RRiISFkv5+<_5!0Z89qk)k#+*5_PNM~(nqkY3VOGN^JT|)be(mVmXwA)yJ zv&gNKoCC6(&deDe8n~5P;tOHLwS}yWZs(XjJCAMC5_TWBT_A@n6WKSf!%qm!VfPc) zUvGdA8NqRwG0WtUu6il#yhS1crJRK?%yT~*lSDmVYQa=a7H;qVp?xr z9YOKO){39<9Z#q35YQRuo$8WLSzUg3ZN~5^kjI=pysN$^*5u z^%yq3TpP%eP54)B3z=iwWClN*FG^8sje&{8;_*z|N^AgNHAU@s1o`>%Mbk zV}^o9g)t@UPRnJiMeQl!!?=7+%Zq%k7b8X|Cm+J6+7K%qUgDf~*mKS0pY~u(o(@c}L35**UbSmWaMqjNo@%bplc#uZ;JWzk6QiQA#X?~Zb)_f7 zHA9q-N$lpkt{DM$D3#CJnBu7BmQ$>(*;FYzFn_S)KBGFM>4MXqm)4V?@3js$)ttKV z(r)$h7?ZoXHhRy(QPI`$KGTnTIhhNNyH+QLhn-=idtSNPble{(m2Pa|@^Cq_I(g6E z0N+V}rRTl+VCdt{*0EPOd1~PUn$D-TyO&;{xH_5lZsy~`(ml8kp`OPGSt_?V35OqI z5{QI=E*{VHpavU-`2qv1sn?0rXQwAu6-mq;uj%kRuzF3^tJ-Uv1t+7A*gSY<*9?xdvdLTrQJ z>QpM9!6lW=GF^U}xG)~hl9vz$c6S%)<2nNMiQ*y5(77AwIr~q~NS8Ga!@S-{Aed-h z)ox~;*@1$M>*Wl83pAIw{I2X`-eP2C5ISp%6{4~8x&5c0XIB&bD>ETTnjUq8I6M$c3Yx~QDXo@`6+Gd+dFff#@GAH6 zqc6hIwutR@_Go@!80d> zLW|SF_{YyG&KVLd_bFh!wl8b%FxaQE9Hh1!PQpiMsYd8nM(71Z7-U5lwMLkXN0=^0 znBgPMRU;2rM(&^UvCN9JE{_z}h3u9iDflRgb7X2=q+@HOtxS|FK8jl$Wlf55J{jdb z=i|~EK_rfC(W}@F}fP9?MZ_eF7P@sJ(9^5htT5eaLJa(ykS*Ifjs@plr;r z39axn9Atxwjca9#8$o2L#vY|b2U+r2sp1CvBFFBEYJ1sAQK6kAYYYW0#f+$!i?7Ox ziCInnn_5$S$b$qnJ4`H8`;E!T&q_?7A+_iTa|n875dY9QK6;to*B}~VCVjEQu~QMw zf(gzU3CYLlMy&~h&H__1iPPhBicAucnkc`BSZIwCtUzipk`bZEkLCQ!eNl#8k!uFH z-<=U-`x0PnRAgwv{c`&6&TF&_m}H**ScXBe-~_lD42j4lAz;{z+5FbJwAVMS(LDQ!tvE=s7Qqu* z^LtwCmy()~au=W9t9i|Sk*luetIow$-;19HYAly)zP`A)imd%CS^LqbmTmAN`)DoJ zE#|{OEvCx-^XFQQZMC0EYF8ZUgmT@5tLm`gwd;-RU>xd+`R9B1y{4RL#c z_Gra5>g-}Y(!Oq4x#81+1~jwYx*Vg<0TE8`)imBql5eywM@gFD+i-|WQ! z`A?yPbDL3xX&yE;!Lg`)#2TGiEL4jMqO^p|x5flv+;C6?Q21!}*~K`mrYV^L7|uZvbNhs2f1wuy`9F z2?D|(mLv#JH$V>rHo|}y2oN}cv;j&W7HuaB?$rwA(krWf8cHYk+cCM3?Osry$KFM9%xBmvTK|mn{*c%`Z z0wN*5Kq?@Ge&%hqDU*KiHh{6&Y8wTp8?X-cS2O4N=ee4nfAeoUVniwlf&7`bF-R^V zLl}A2?0OzQU+YL4DWLq@t58# zGDxi#%b|lEF@t=q{QK)R0b|XosKYWls>aUiUx|Gs*X(Xq?{K5?p^Kl#y++Tc%{rnM zH4kZCZ)S$7S}y9fdwga0v_7@C_j1%apDl-Ly`XST2@UQM@kq97cKMnphzuXNzMh1^ z5kseE(7c+OA&hBnav$DAbYaL}p4!hP7cYo=ikNv!^>`dIL{)Ykyi(^{@TyJ987GER zOyPo>x^IXY4RSN@e_-C=Ji6v{+^%E(=>y>nH*sdq{Gg@DY3Z{fU(`>sRm*NV_nV*E z>5q=-(5G@qypFhY5np5vo(qIUjAe%iB5S*x zSNuSAmm(nDLo9;(esJDGZJhH|Vt%)6Y>A zN#30}LrqJ^aG9K5W)sJAVbqf3QC&S@419<6Luxdi^QOSm-6CQ1oUrS# zlW+`{>MqiuGY(0#U0n4_$dUXZdoNG zBJN?mA@{_c9#N>kU1pxT<@#_D>+xOIr&m1F=1$e_ZtmijJrKRMPOH~g?9%eggXFU~ zOxpSwsb0ZJ8i$@V@eVH%0sCO`SPeg2+z7=%N%S>HK{^^W`I}uCBhAl}HN4 zTT?{xDWZ)1*+gYaTczIxHSg?WzM2Ica-AI?jb2vu?3q$U=(ODMY2t^!_JFo$X>|6r zRR=#>eDmR?eo&hghQ#(Tg)p)~$j)5o$FPc*B;7u{P(MH(e zo^__qx;`3q~-2(CWmh%3Fg(eT#jD25c$=f(@g62`p&7?{oB)~jit6D zcK4&B){JjYdqiM*8gRVQ$|gByAg>s{-8C{a@}2CX7S$4{E=j|?)pe3 zP~&OW+RDq!gzpy(N8ojLysnM&96BoeR8??icXFan+cB|8nm*6O$;2~h*o}8p`$&Ax zBcnPE#j9KUbY7GsC&rgZN*neYS-(rk8Y+?cX6Y03?z^RrzTtmo>GOR@tX=_0fS`e? zNE@&t#@W9ay5NPPh`i6*%3BJTp$<`Ac*8g>X~gwjp^o0>*+Y$vS`pYiE-zAY?(=67 z1Lx_7`Iu-#f2jIs1em=Wc92C)6_;QhQ(@q3Lr}numyATr zLTPCbceRr-&t{X2UvB5ZUd^jqGol_h-=E3fH!m3(2rGsA6}C$<_Z6?0l=(MSp3Ijw zs#X`Nhfl%zmt7Pmb1YIk?r>K;Lwa~v$R!AEp6{yV`|Nd9B4ACFVy%TYnE*^={d8bqT_};Y2L`H z!fppc@0E+iemC9g1-`|_Cu<=7fsroFJC5sLZ818v-`v)_u}12-^Zsya^K{d(cKN$< zKAZY2Drycj+MjvjVO#a+Q~llMcju3}?9DkczhTD}h`W}GHkpEpE;BKvwP8X-Q>b0b zUAV;B2x*gPcAMpH{BUiQ%Fy&<{;8{%O{lb8VtqV9gdPc09sV-u=#CuxH7s;epnK%W zmdnc-5~iet`G8|h@#82({96tO0#3XGg0!UGS$n$+;xZw&U6&1$ZYVubHzQqFG0@gd zS;!Ep%DQHGQYo!iBUN_4)%889T5E83C|cCO9zx(S^mU72Flr&z=;O)Qy&6x8vMj+V zBNCRKKFXIyQIRkU#h7wZb*q?m8)(YxNTQ>XanI24m2F~t^cf-K3d&a%PH*r!t}?qa zq#nXfgLxd(<9OCDZJ}JO3of!Urmk+lk+2XIZf&D3ktJxH*x-H~DzWO(M!m~}5uYh0 zS>CNyWY&22AFvz?8bv1WfZ%7I82m0WPDnIPJVL^R2B^arf=wI-37)cf>bFm$n6Y0U zxRR5shU$7hk{WNk@<4x{gKT#%O`GlNxjQM+dFCO+SMCex@{kR3-#b_k;ju3 zT`|88o`8H;A44Z-%r*Od2j|Jbp6Cq;y&TYU-8YVp$6vR!Xe+++nyi1OJoc#XNX+{@ zA9k`tlUV-#~z@;;SeDZ$|GQ)@=%f~HAoU! zh#JtpyfC;1d0`@Luh!4Lv(pwGUW4JMhL9V-ilrZB6Y1RAgVdkXQp=_A;2 zPTB-2J1#_HF%*~+^n5z=B^ufR`KwZ)P?ey!p8{|gXjv!-!9WR>Q+=IIi3Nl`m4+nx z5GPBaD^6SIGX1bw_&j~Kx7W{nE#s%Oh>BYt^y)=)Wky)GM1+h+c%jZT2t|6K!{AwA z_GPDzS_-;FN7`PGtiE$58||cBD~fcEa?Xs(%8U+bjSe1<{e%cX>@3D;U{k|hM(E4ph45)%e@Cjf? z?2cu^J+LE|m2kf`;lX&qqveDteBu+;#AlX?GXaTnS&1)N6Bou4UoR&v;*;K~CM{Ve zeGEtf>YvZ8Nngg3)|QhXVLDumjE>$b2dvU90>3%-ShuAgo=CS_ zNv8;B997G3u*z@@%y7=maBa(QpUCiB$?y`+^j6FCwaWAl%nZoR3~I{^p2!SY$)pNr zg{fslSY<^8e)sTc%Zi`KN?ggJ3umVo8XGSnjN6chDA~M)VJdA%h@PF>pS`0E?zI!X z8{$RNbI{b(604lDd0b_7j><$%4K}x~EvFdk-_(z5k$%%wQx0B@gG*;FRhDVUJQ zPR_e5oO&JWL}lb5yYg$Bcod5uun`?A88!;(WFlmF+jshu5Ok+Hm%#{EOyOjBC$jxS-BLfUCm7*`ao9 zp%W(c5c3@TEg}zs-05hz5#yux@$AQ|Jr|n%5p8%86-bAFGh^ z`&&=`eN$%!N`wnR{NHWnK?e>Ra@Lj%P%3~%7w8W_n+n!hKz|NeP|$XQmKE%&fR>U| zNCC8b!^5{&m#0`=CFmqU_Xv7O*2#5jYy?uF}j#+0+7P^)X22%6*k`S&CUdHdurX6ki+r3({MCIl#%LFm59b{ zkhEOF*KH@WF$Dh0>6$0tbPeurXa-OQfc_cH0LlQ+0L=itECz{RMhoDW#oqks?9`8& zQ!F$C^aC{ig7Uxgclg)C{qY7cc@Xb+G?T+I+?<@asVOoN;#YE?qZ4{)9J1=2G+yXx zEK&-EHzQFEqs67+1Q&B=SK7uy85&kNscTpT7kI7Jh?Z&QE?tq%#qH%r;T)(&erP+a z3uacRxF?$wih_hUD0m3hyTZ_rpsJ5Feq=qBkS;NK5TV8F8~j6?Bo!T%-w0<;3m{t2+0_$?s!0x{k{CSDE!Sr%GB ze*Oj6KfV#a{{5GJ1DJ*%=@ZcsAqEoMCf}W3))Zj=BS3IH~k7btb30LzoqRqdT?qaCR;$WUUVF3pF* zOx#chYkjDPE?6O+9iT(uR1Th?sPpqF?l3f5P}OYLhjJT;OA6z>NO13hVIANybTWj% z{C39f4ilnAX3FlWS8ff}j>ZTW+CAvJb&Peb>3bQy2?~TCgGqfaqrqA_$i1v&3u>AFvWKaPI@D z7@!=~);DgBe)#yYyQddubwPy00uSn{gYk5E08d81tf0)@P6#?}%Mi3&r?Pz_QE+v^Z;?>#qJ`Il4IA{9xsPFvU2DiO3yFY(? zGgbHaGdfYB#&+;4=HGcETmEV5{H{+(LNI~bRP>j^K zn{hkmrowT0GKHbbR*PMJpZAncM~V5*O-B==WS&GX?jeyOJh$?bScT@f?>FP70=ZO~ zM`GdqG=SCi|yq*_;v8!Y~^)Etua1FO~Td%eB^J#g;ERo^hF3V443^Syt_nX%wQx0o7ow7 zmJtO8A?+IUp0iJpBI+%#flJho1Plf7X_)1{CBY&7IrB~?GYoNwis1O$nap+ac0;Xo zPp{KA85ev%lbN;M?a@$M!|Y9l_O~;cjq|t5_gC57Xm9#tOY+7qRCN%tXso|2L6c+kAMEyuMHtACDp| zHs%L+f1DM{8LP4lT3Ydab?EvP&E0+wf!7DG$j>va`LL0B;y}Vk@_y(t;F4+ZUP~uwyyE^_@m3+16GHf1q8(Z)4qeh zKF`1T8~CGcnj(QqvVULY@}+rwubULzDfCTOV@1F!S6edUdJ+~bLbN0?U@*yJ1Io)J z%AQzRSSNouG-C>}QHI6j-goWELvTFPu_T2uVOlXp`PMkek@IHzwayQuSKd9h+pifZ zvg0WXZhMr<%u6@VqDu9QDM*D`(kWiW#z%DP~`1NSD|5M#G9l>w$?bfd2&vg?`GQ;^vj7(|ykGe_bX}t11=cfs( zGk?@gB$Vtkx{jdBvt$ES-8BC!)l5(JdD{27$4h>9a=2nCb-D7AP3G;h zF=?i;vfA`m%emrek4l#^$&bQv73r_Dr7Okl+FeUASvjANmP5d|ReS{r2qi!b`9Q~D zToCIFIdD${EhPwtAT)xA2tpu;Z6F-7q96#3tUw5&Ac%$k7zlqvK@b8#H2oC?|ILHN zU+eKPDSxZ402#y1sp0HJg(5jQ)Pq~;(>k%d>w%rgTSjlf`pxVzeY`~m;c%%e9aX;L zY^fXf*-`PSB~%m}E0oeDh%aYL5GTO>FqBni&(DMR~;F?h(C$*9<04g<9mgCe`1 z3yUM_E<)6B4654EkHFNrUkWK{Ox22$$gR*FJxOQ36Ly_Hi<-S4I~Wgy|D%EdNCnI2 z0HZ9hPEAd*_#YO1yJd@-p|M3xZL_?*3P38TR9M`Ow6rp-OaTDZ(l%uQl&lSI82$SB z^#=Yu-T!`LvK8hy1S08<_SQ=$YlhJTA4Cv)2|op>?voeLO(gKmVRu^uia z2jg-CSjzXtxJ7-oU>{|Tl5*1wSY>#P6o_y#b+pcuwL3`SS@w_>>OTQQ6j7WBnH zMLH0_yrR1dlc5{2ez#{H-rPYaelv&qa@Jc4GHwfxITin&5(bAUZJ4v1q6{aZIS=5d z_Fab2WGoR!r*@5&z;FgQD$}_OjuPa{B9OYmQ#pBMa3jzHnM0W1+-gQ7{JlH1hpb?N zkkC(n{8RS)Idy{a_D|W9rCK;bahsZc#;Sb#2S$Dsy#J2h$iMhAV`~1EJ-fouSWY~x z)?N$7vEB$tB0)M)>o!`)TM|js7=bNz3v>I98YGMD&TtRldrnH1-x13X*^3WlvDw7t zQQnshWy2MgB3#U7P1q2gy&8d(r_?gT^pFzgx71J$xRNqNNO#t)ViUudO;Ozrr6ZYe z0|J>8hH^T{O=Q+W2pES%&ox707aYbjY;=K1g`>KJZ)7ZG@7ql7jp5=;aL0unMly9}0Rz;+m)Q|o-A*zlwjo_O1ZTn^`c0HnWe2df~)1`>nJMB;?< zi#T%yV4*lTpO-)8@E1&(z;tt3_h~Z*fl|4$W_dNtuS=o76IpL=t2Kv2&(zj@&vP z3I^rvcL)t7rZ9qzM!eS)6YSYY@yp=JrA;H=3Ih!1}nk%MUPYfAoChR?s|XUANE5XkRTRVadMgHCxZK`WFC zrol;JOzR-f{B|02`jj4R!^WcyGW#U;L)RHeC^H$)BcM%E19^r%rP?_v;--=YWUcOe zNXC~=-!6`Y32Wj^n949R9FF9a!STA@so<)%JMU`t@?Oopt47b+nQnJDEC*w`s$f+U zwPK~0xn5GJ7RW>Bxh7G8P&f}heHU{TGlFD(T+mJ9(_3!|K z1hR|zck$de-3u9#`HpDTa2L4VB&B6l)iwfy8}Cy=EOY~y1M^~FQVe`&fZq+EsR7c> z4q5`R1N95Q`?__69|9NwA&CtHdF7pC0CNdx1#TWuki=Crw81cTe$z4h*Zk}MdaD1tH}FIE!i1sz(7j+b8s$0H zlCMSa%DUz`pQPwV39~5@`$*5I31Vy^$n2345?Wd)56PrR4McNU)Qj~oHbW7dVi;x6 zM~{YypWYyOKV@#T45>X3EZiV@qsT1bzL?97%E1ei&FXU^%@?|1S~n`$=z`3?CaKH=ytus*C%(Be+C$^DN)$f!Xrj2(cCMFl3bMAx|0!=6E?r zWvdQ>xqWUVa(#;8*FeP=ckLNEo?JYmMS+LOWUr9kPrABU^ zRR|LQxX^0F=n9^WM3VyH;B`m{WQm5{!oC{;W)g*%CzW~@RLSqg>=HaRlQmS|CiZ+6NG|K(PUYDXgXgGzcJG z0nOh3D%fLHBOpw%3KF2!W5uOkQkDNa$p71YqMu?E=D)@$t^X3EcCupBx-FOk^F)X6 zR7ff>Se6bmN#og4>z-ZfxEI0*o8V|uQp3e;+DgkY#AEwP%&_edvg=6UDUiF~!yq3? ziwdch*nHLLmrM*#Z>4}L#kmW^cdJJC#l6aI4E)LPLwVc@ySCuFpTCM))>5xVaGY2l zYhLtIpjyvpG{ zn|R4?=jf|wQxCZa^htbRcDf$(}5rdMz~`8iCm>hK&V)Qy6P zX$1Vvz1BkF6hqQ2kJNr$2$k7cZa_ZA_=;p-(qA6{wM#Qdz(Ropp_Q{paIOtzR2UmZ zM;t;)8Ze_^sAbDA&S48mDC{uJJ`xp>1*}74%nFa=^a4nbWKKX~jHpBwA)XyKek^9| zqvfNC5N-t@&L)E%Tjo{GF!QpaWp@K>^O~UB#;a@at)$QpGWtq5F&X zp^4=LDtSMI?lz*)#T6hPxS%f%O(Stp38Wqy2R!^NZOUhXzl({=gG@9+?Lyw}w( z7wYM7Kz+dy=7198Pow`|W5&PQSNkvW zc`=C)4{JbyK%hi4WC+vUVQ8fCfmULXPBhPEyAn&Yr@iqTwuvm^$qxDn{3d)$0p!h4 z5(f%zV&+BNlZ{+QU_zwuaA-R(E&!r*g+nCRoFt9}gmmm7C_I5*7T6i!4M+p&Rd5uX z;QPw8kQ~X0yzalH)n9>(@Os>xu!4nSg&TxX%O}dx0k} zaM}f4y1>jA`1Z;Z3EOnQ#c$cm*T;YbFtF|gR=?mf6ASjh6Q(YSGD{VBqR2B(w>TA)vni6HJiPNjiGq?h%2w1;`J82mxF_0%S<{)m|J< z4D=nq`gXkk4!DHmK@9_@w~@32a1EQKPZ+vB2JCJX6jlEs-@IQR^PhYJphw^mn_7e* zDvvNf{_m%l4C;Q`d#1rL3VDR7r~09gB3`F_q+}4BVgk%$gH#Wljnf)pOp6c4{HDf! zXPPW-oNK_^dp3ZpafKO})!UDh?Necoz}a6#WT4dX3haz3K1eJC)W8B@Y{8#5kZ;`L zIaDQJU|~5tZN48RtO671oZxIG2Az=u|;qav4YPhVJEuMTF*$T&on32V| zL!8K0mEV>C$(<=&N*P`UT@g{gIU%6YOvrHH%=%|}mjoa#?mc`3c5@SMmKaYSGbWRM z;pNNmhMN&vsP&ZlW?XBpcLa2J1q`rhxtd+vPG(=nxr3jlW0N?lK7UaC4Yd3H*NppY zVDDMj_L`_yTqI;?D!|!n6L=BO8f;j?TT$3<7$x+y6i^GE92AJWkAUycmpD6`?oTy> zhRkrG#9quXGr||Cyr}R(mFY;FssB?4jUM`bg9DNLc}Mjz&`~Sh$jFR!Qkt1h$a46e zqIgTk`5b$Qr22@1-8CTV)H?iVaaOF=6vbdGvn7 zN7*?>glpq|i$KB3xuW=;FXoErdUEq6X%?>Y=d&Cu=S%(W;*e#GDA!cnUP6NWP}?a^=gKODK*P7n$sC3+HTtl2 zq&HWTYJ#>R6d`ID$Jfssi`_6qq8B9n0Agald>mZ7HYQGjBfcsz;gI|ky|x>l*=gM^ zeF1_vH>JA28}#1%0KuWDFsd}9y6f({Va3@6pFJ8jU*3-xusz&9YH&qa2~v@M)o6?r zy|Z-tfc$#DyOw7geeb7Nl~`bMabcoC{A!UcFu9m)u|P0Eu&=Rg zaeedR;b6z$#38c__pyqxHA!Kd>=1Q-3m6o1D$4u!N#}6N+8(y zE;KH-yP;nH;$H2s?V1W;<|e{zcZ(ae*$yLHRs@ye!7$Bw?LYq3j|>cu>xr@u0ImV5~t^DKoX-2W`qRt@_+ z&C<~DdHO!9nCBTrF8$9lbpx?8S)>@lne0*7n3)`#?EaZtVjFfgPrl!9HeYHYX12hk zqJQ?B);xADKa5-5sW9qtjB}Bj;=o*XqNciINlJ*J%Xu3+a058UQ~h{ZfhN|q+&Izb zMRI9@x$}%2u8+GAIG`wR z*DxG}_GrAn$9RkXJv(FD=KG1WPAzA>IbM4|Nj&|iWri=-vpu?Iu%_tss*&BYu@Z$%yZl(wdJUdhh4kbiwC@}R%vq9Rq^c=bGs&Z`^9Ll*r|oL z*9p-I@A@P&IrsI-lwEi?pwP1LZjg9g;r)>EnEU%1s2M!(O+9W;(O z)mRBmi8NS5iuhIDyGXejyS^jY?NFt|?MmChkChV*9$m%7;Hni+vBxEVF;XP z>ss8#y_Y*z-p}2xI&$;!rPWW1PY2KKy>j{M>hk-SkN-dU2EYZF|GRI%@uVFVhPM(d z9I<>E*8Xk0nRZbwyje#x=5g7MrP;U~*JeXpu4g;eDbID-uq@mEk*s4uP*A_qIqNlS zd3qSP^|8XJVVZN%Hjs+q5;gB1ElH^{a5*mvQc+Bfr}fdYf<%mKxj0Bg(WM3V?JFxi z`(7Mh+XutBRUNyOGXXVL9+!7)oiVysQ~UX|8#MPp&fSu!=eSUJWHZM^{gC7Hg<~Un zr|&i<9(40KI4)88s(Fv!>G75+#mzPL&oXlFv_+n;@-$mmd;YrPw`(uQI+s2=oUpAM z&Uw?`vnKD#gl8Igb(L?3U#w)`y5M@1+o|^I`aU;qJ&b>UQvJ=4%}vdhDBqDpx-!h8p z^}U_Fo9n}I^SxYFcP(~B`Q3~5xZ!7SclOnx@uTl`{U`kL6FwgPKkU6_P+V=dE!s5h z1QG}?2@*U6clQty+$98emjI2s1cDRX-QC?G1b267NFZo)SCV&s-@CuF&pqd!s#|sU zzWb@ks-}w{-HV!QJY&xBjA>p@s9DF(9K7s4p5U^oe~;Oq>Wd8w z=?&BhaNST~8sk=q6e?5Rig_mCw#|7SaXpx9Q)a)LR*&Jn#~P(@Gm@8X?Ql@EJK}!G z-;Q-VUNz3_cw9#i;c+5;I(9qR_Hg0|?UH)^@k|*#l7eLQY`mBrqpciFXl|j z?=P2JPVaxN1+l=cwh|uxJu)c*$kg;3nG*BslJe`8H+BGU0w4syApn5@wgk9o|5dt{ zRrv!^C8bq>VxE@v)ym2m07x%i3IK&F0FwYf0?H~KGm z2mWJZLSwi650ELx2mJ4mX#xcInH?ZWzmZA6YDFIP4@shrd*Qe@`I{u&)D$ZHAxSFP z)5SUfGRff|s8xLUg-oj3^Qhd5zmVyqs~Um1r}h^zRl1_;&;3RwX?Q$SMbIx~GU3z_ zUNiO?j(7%;r1|U#L^O7sIcP>TV2ee*fZz%0GDHEK0OPG793Uio6jnL`zzJ{w@o^46 z;L_!X)*j2?GSUGDhc=uoSItP zR1gk00V06Fd#jLhO#L+<1e$^s9}N0EeK!nFU{}2=K}QKV+L){d5IQF=1(LYa8Cp^V za&LsB#syP^G6J?XAf~>j8X;^mD1;H5JErP>j}G?U>oHscTX3%=fFxNG0whVE^Z&rn zX7`Kh&aaBt<^FCu1c@G~h~b;>Wd_rreE|JO6|q$3gMFYPMt@L{6K{S{7(7(x&&n`D_@g^9mNbWdl*%ZVWC>p2r9@~ zMb7AIy{}v78?dTp^g=%g*@$E?Y}|1Uwr+Y_HhkiL(sroda!w;{(+a;5X5)Qx;-S|L z8$!12fMUu+-I2&sb-U2g`)#|o1u)KB0g|NKi|-v|*SBmna^_6tovJfHB`0M+IQ%8t z-k!evNNbpR9LZs%a#a46Ip?aS<`}O-pTl_aJqEjxDE6`XS4r|f$H@Su(HcDkp;5J| zce4^s(+)ZjPFk8at*W!S`H0SQMiH;;)Q!`ZRTj)`dYu+xxUA3m%$UuT_!6^ z@ZEl1kiYu@dFhzDR9So5+oLKIagSqy<;Z67rc+%!^YZzlrHF}7l=+Ql?%uvYKL!9bcP}3gh;K|>B7klIA>jbPMSYI{ zA2AL9xId%|Xutq42XtHjr2FqK%YR8+_|NsF{)S@kxc~HJOa0Z?2|)gvpY88ajsKHU z-yeSU%g^>N6w?`E-}FNUr*i^+wgA6UVj^jXc zD}}7hbAcLVZ?#>>*XI^gSJ&Z%xo6VhgN#(5Zw`+;0fB#xqYp*|qf&JEK8@jA^Fz@W z7DjlgY-$kr+^Y^01QG^;;cyg9*Mq715|iMt8iF852=Y)k5K9-`W>k_0D;yjdbZ#?1 zm_~yTnJ5_I`$>xaMeYZwHty}XPby~A@!HIJ+wnSqsB;PWp=LW;M)7Vt$ws;R&r)my zw`pSRX55}6Iq!r#NprvCQHfG)+uzNQv?8R=3}!|&%?c;0HT~DV&cC2oL0-{8QAypw zK{2eNkN&WvW(Mf%H0%H^otDdk!}1O!hNFree2b&X0h;2Ysu9k^qv{DshT|Hbn{!+{ zXIy+-x8!_yT)!5`aMG|9Z*kJNmsfn!bX0eE(hTh@HUa&Zu{Z_BC>Ec#-CZ7@wu6uv zp&bYWme5WV+7f6N2Guh!<_dIP2rC`sG_Y=GQeU!%mvmWnS&ndl>A0WX ztFC(0Bf73xU@CBH1d=nWZiM>vx^AioV7aNpyb)B{j(-*4wj*mb#`7-C+gf=q3s1s* zU-U~PuVPX8iPB-&cLa|k-cbcUg}PO1rIV&_JsziQ_gMV$UD&7Z&ibnTKc3Swjq}Tn z3E8~+F&QiFc|oNUB_O?EbNcq@iUWez6;Z?+n8;4Lp5n~`c8}LBsAaY7?%8Z%w!U5&Ir5R@s5B0VD`OZ_xOUE*SU`3FO~N9-@AA!FcRDgF>Dw{j>DgLgxcQ{ru|R2%a!16@_pHXzZ`j zquEHNcm(fX&}f0nZwmjde$zh+5gsudkkz%+~`)H>OcJN|ghxmdAdT9`(YU z>Qx(xS<6@2fiBnzv8x4A7YZi1?yoLbenh=J#8UBmYZ&N)c_r7e`+)-lq5#Q*(?Any z7Jgzxa;XV?8Q^=ojAIT)Bt`LuOiWaR;Ne{v^x8c3PT{dpSX~wGE+JbZ)fVmHYdj!i zA`}=m#mV%|#qr*^TT(kp-wu?=DC`{_6OjAcpXKk>fYPHjHYScfoY>71(+qDE8txec z3QG#G57I&Yn*ZbTCz<|F0LxN!M6m5zAVuKZ<3RFIz_L`vDHyOUJ;^Z)W9|EY$FlT) zM)3Y8l866?&^YwC<9`i}R#lyxJeCdek#c1*J85A?O$S7S*3IH==;hJpW9UY$mp8#S zZTu(0<&iL0*!vFfqO@%%J6U)|I2sGa`);gi6uTZe1^LPld_5AwJ|dd|yM97147LEO zs1p4_nrFfGL-#=G(Ve+HTz7=c0w_I>EQeRy^PaW>M^jM1d`iHqBITKKN^aDzd z@dB6}KvT-8WM%QsS?HQ)~ zo?Mhd)3>~IGN*$grBU}owRWuLnX2&>r{g+5p!E3ubgX&4?IFz>+Eopd9&N~@T9$@b z^jyA=ZDM-<@Obm4b#+FM-1Tw+Z_M*&kT-VQ#zxet>-COUq}NSs`FPv*DKWW_#^>>L z#rsQge{UG#@%V!Ap_5OgLrJW-Her)VQK!GzjA{r793gF)#@S~z)0VZK(-0;jsfi))!3dNHpA!{hOT|KL z(4}$Kghh4A-+c!MXNU;9B=h;VwSX@o5)O_nRNn`LM#%YGno<~ohW1<@fwhwgf`%X{ zAHMbou$0CiiosB1-RO*D)WV%muKI{Qh~WqMC#U5LC7Qsdy4gxNa)DI z?4}i;^nJTgQT|e4qJUUIjG`bZP#{PR6!dcB<^QLGZIq3>_oYB9n^+y2bOqb%BDS}= zY--7D+R<$K!E8o8Y$hJB%pG3Ynz1_>vb$)ryJ@hysj$1g<#1NuaFpY)lj5`%=du#z zG85o7xDCmFG1JuOhR+8%9AndJ$=QaVdHUNk%CNCTR&K8F7}^ z60C2f*p#JSsY!5XiE`-+a~lcpnhEe(3JTf?N_`a3j21IZlXfnW`BvZME=~};; zmhhR*xXI46;f{ii*4pOgrpBh0#-`S$=Jw{6j@H&LAX?hGn>uIc8o4^1}=&s7gCmJcu24K1{e%(f5DbPj#%9-8PG8t)w%>mQyN9Q`^n zHZeLrF+M&q@o({UV*K0Jv6;!yg{je{>G7qRiRJmP%X5=U^HU28vkMDz3k&lLzt-a1 z{L;+A%D4HoiTRDM3tN-RJCiGW-+)-%pIY6UTHT#q-I-b4o?F{mSle7)-&kG;u3JE? z{M(B^zy8~GdwCs*9iWN5vbnpuxx2QtyZ$ToHvYu+-saB1*8cJ4;n~)~>DJ!S-(!34 zXnXH)XYUB;9vq*Xo}Zun`0@SX0*D`%mlu~mFRy+rU;rNQ;>XXw;wSL?|IPyVr@`M; zn0q}#fNj^WxjU7HJsRn}PB-ksS^WV2^i8cjTd0X3l>qpsy%DYAtYO;LTos_gL^QF> zdQ!bR@|oKY?V>J$zcVz-NjUH zib8AC#o=6Waj}&3!ue^a77Uq>R-pO%`|Nb5Y1y1MomKd1r7!k^fM@^t=`-v51M-^( z5bPVd$+eG*y3cy0nz}cL(=-k8h0>J50QV%H!T^J}z`zNIK0f{9H`}fdW}hS_G}`u& zpHU&Hj=1A5p2sK+^9NKWW^v|E&}Q>|F9hrP>}*wSgnSu!M$SnaM&6yoWM z#{3Yiw8h5*>z1Wmcq|>sd^+$hl9Byg;&%K(wAi+g;7-1ATyFFLS|Yty$aeT8lbeA) zp=Qu)hHt5x&z%*iE;B=~lis68grw0?#ckPUt%iodzEdWhg5Ga^3?1u6>i;W1eP*e19&9S}ho{2KlEe{4? z?U%F-1O1`Fv1oO){_FTaF?Z{;17`OIF9uo15N3D;&)U_-`EXf0t~}2+x7hc3PVfAo zaGvs(10F$mOve|!pT#2UrD$7;;;HZ(mpay;5?l;_gTplCS=Vo^n8CZ`gw_i+Yt~Jb zX)9rIca*%gfGw`IS}{#H$O)h^ZX~{PXaLln$=@DoFkF}3wP!&&_?1!`Hgd0DTXpWD z!sw@VMnc_I!}$bdcYWIpBU#ph1x{A7n{{|QqdZQE>UMMWD2N7Vb;eZnPa%U(|3pDsIs*g~ye_QrcPg^>p1dm#5x};pkNO(lHFW zFT=Fuvx%7YdhZ1u`M$M8r!_i52PdC}Ki1ABo1T+=8VQXGHbtkBd=w!>bRHd?gGBUm zK$`mUt$z>#B9&lgxVR?Ur!dPL8k4I5TkZ4M3=#txE*V+k1MHwQj9mJcN&WAd&i(Qo z4e8ZnZ^SSr=X(@kab+Jj+kwRD7cwjuBZ|Mookw5!5?zt? zd-D3;CI^0Sgyg$eyssTJuWt8b6fHMW_vG_=X9vfee5q159`7)3%Dj0OQ=N7N(|$&q zDvSy%1fv>G1kig$BT--apx-ZTir^7N1~5PN!=Ba`pPfT~!QF{*SM7%f=AH1R0iJe8 z1tO1zgo0vz_)_YTEPrsl+{pf%Kdbiskv0bmc`r?DZiPqU31Dduwu~IFPeHK-HE|Z2mk6o5s4q-gIk0m zN|Y!vKQv>2QJ--nM00vgU_R*NIF+S65>hd}PF+r7;zcU+wx7#$-;ww=grL zS|<-Vwjy|hFj5zfYMH@g)-8-`{JgFvACZ|n*kXyTHV{V&`3dPcv(TI9j zbI9wma%95#LpJfkBEDK}(J?dj=K}=J5&YVO(Gt@zx%uk_m!`65QJYs58mnXVSVvA> zPj`kfrooA=@O><{o5TyklUkV_4Q;F%jW@#aKiLr;(nqbc=~0UB3*P3lESpdH`*cwSw9Ux1Z|QtI+0 z+H74;ua)h0IaD&pY_mdHw`l~4=01L7tM-ncV?Ks9^DJdQ!p=*W@3n_M)XSMgl=&oZ z7G0C{cBYS5!Z&!3M4LAuvv)hgI`jG{ z8?(L@2n=WjVfr|WlihUzWlmO>A6PuTwd7e=zu-SM`FS%pURGDjLTY7fdb=>Ta#`;n zaAKv@u()7-S)*}wC=Q)n?7<48^wJ5l@ZOk>&tPocKR(n`%bNX;FWxG%ZsRtaLRbLt zXSqDKHa=R!o#S-L{fcSnQ_Q#0FDcQM``S|ZuDQ7l#zhZXIzDu#yS?07YcE4* zXaV-}4qiWx#kUB%tahzEHiCwU6amZZX8w&hj)0C~GK}QmCEUCLmw5&)Cp~S_LoPM9 z2A7k=48Qy1_fhq8^O2V|T2$-kLYxe^>y9?a&9jE-Zlh-k8jgo8hgis${XuPxBJ8P~ zL%LkwUdTa5UDCF`EBG&Nw_c}(k*o&ff2@D;=5|5L{jzS{^Te+Fc4hO+&o*pWoe#_1 z#%?m6T|vWn!uZ_|-^2ApRNIgIH}?k*yjZ=7L6`Nyix04UwRYIg@dwx~AoF+%0dqqT)FDWwkbih&u>F6VO90#k zU=(a4Y_Gc5IT|>*%DMS+gawl&g+IxOg(`~sD@l5*$~bDhw$f8H`=D%Qsqw*D>%EP( zp_8t`M?C{?eM29E_kM;Z!S5}?jjSU-IL4W}C0V&9I=Do+I0U=d__>>Vd6>C}SlvUN1Ro4|(HDp$_B$ReWmGp)b4~CVGg;q{PR8L0M&BWDxO=}#> zZyBlT7;fqwYU>_o@9uBw>}_oa_(o?-OM7!uTWf7odqsUmNmX}oQC~^+U`5(+W!iXc z+GIo8R8!h?OZrTE)?82CLVwZXVDa*B$;wFS%2@f@WX;-a>*_-H@>2iO^5Ej~@WS%Q z+~VlW{MgjY*RNAwC#JrQefu{2ZMtu2zH551ZF;qFYO`)?yK!o_ZEm+~VZVQAcX)aC z+sgLb>ej-q*!&f1zpjg`8;ihoZF6OPYi(<1V|y2f%^iR+>}~8GtnDAK9YWWRzpowt z*gH8pJc0frj!vLQr)S51ixcSCDfAQyJw7`|Kt+VpPoxp{T^FP z?kC}^jF~JM4V>sgAhdi}YCcnvwAApMOBkpW0bD{pRoKrfTqWcemk7v0=y^O5`%f-W z8EMYpR%?#!BLHxTP^4#lw4W#6W%d3#(e)RX&}sVYe%0Vm&!X)Kc?tfP8J-b{Vt;0M z##6ulHN(@SH(BVHjNWciC|A=GIdW{riUF~rQ0tdw>CoZh%(^Rbn#=U*Zkr=7 zn8D2FAD>po_4Ht)7j`DWx-{?9M|5lYSSuzJ1}OBV296jss_7n81(|`& zkhsl2qKKCKs9RyZ4Z7cKeNBKgI6#U<#tZbT0y$ zBuYbK^QvIMB82NG8jh@uz-XGHtT2zEL=?)n8+Dn8Fvz|-c~a3892LEmabs@m<$%eS zzn==74kKg$S0QGK$!#u>W=0L`87mrZR?wTGEXjzMxJB3*qPm7r8UD#s=+8DRSxcCml}dcs5i7H(K7A9 zJM^@*Sk5`mMmUGD3Mby-%Dt*)|0VNaJKTk|R?Qm4sVQhYFV}Hjq)#+VyXvRj*(owk z`~;ypNua=&o2!}?L}#jr!T1)=G>^1&R2LvJ#NZJcW4e(SR`GNv430)St3H+A4H{B~ zKV0GQ$u+U0$`Kq-UUzdMM^6?_QjO68elN%Ba#<8u&h%ATt7@yh<~!Gmc@o( zD6F59P=`BmDg0HT_e7OEtB^(Wf%AjyhC%eeI=Vb}$McBq4&3mf!>@GeNq+b>uUnK( zxbmCR?xX&8rN!gh#>%$s4wYnF42wYRpEQHna-rD+J%R! zhz)yD9e^H$(oIBk7A)PehWR2<422BpZx=1jX!$jm64%aGW+V&$LqpHq@puTWvfnYt zSb_oHF3eOu8?o87okkEE0{>WRc1XSNRnb|bsnIhGiGhAD3@B!_DH1ud%z&t1cciQQ zbKHxkqN1{*n4c8`DQV55#p%yuUKwq1(hUwOgigdHV&r1N!F9cMKmQ!plSQYtFY<0< z;&VaxHm%Cwkfy3)Y}Lp%rJ32V?m;E)C?t^iEoy{$Lsi1SQXm0A#PgUW zc>&RG=V?VF4rmRAIh9h>A_VC&A+u*8K?N^n9$Ho*!Lp=eIW#bZtR_?Y>fi}; zk)pS;N{I{;gOFUOir+h@(x2JIlFiAg6)QF+Hc&Xct`2`AOJCG7sap2Mr6YC`ZPDLO8F>I1;%JDu&6N$ zY+b*6Kro=ao%`B%S*X7O+t zGkvz&AezZJ;!cY?*7p%#UFE0J@DH>M*Ns^p%6;KR79Y&(TTm}6VIKX8y5DxxdNZDY z@tSP62(as0OrTKroHV{-RJ@Z1Vb0b5V09+Nzh(*)vcg zXG5%1-!H`B?$BV-eWsK1vXVC9u%9NSb6nTCEP(0QR4!#cx~;4>zx3$6P4moZ8>e3i zrmi`k*4(%PV!3DMu~F(NMmH8GwR3B5f04&**mf&q7?aN!>5KFdFK z{Tq8p&Fl}8XTv1wdjjM_-P3QYZ)YwEFJFiH9cni8u5iA9v3V^RMJ=^G%Ds3^b$q?bMqprcge`6 zz?t4{%hrxF&$I@kWpOtDlIBnM4z0G}OzQ5#OY56&*=d`F4k^XC%v6tY@2~dcRzC;zg@Y7{p`SQg9g31 z+aP|p8es7vqJWG1JD1RU0N7gFWjPZz>Wmtz>2jVP?|hcqz%x$i>C*lAD2En2z}+ z%d=P9c#IkZET&Yi++J|HGl{ye$~&+tnDHy9NXg2}O3BDb%gM^WQBqaaHqbLNH?goc zwfYri)<8G_S95DiOKW2r8#7y53p+b&`+r$>HV$^?uC_XU4sv1kvPpJ)`7V5wo&qVJ zYC&FBkdIF8?jEl0UM?QqzXRg#=>s?{d-(;s`$yRL$G!JU(e=$xhUAI46?55_Fq#)| z*q3srrO3)=3F*q+PWS}9&#?VDX(o?BX-TUnc1S)W_pm|xjg zSXp0OU0+&TU*6bQ+1y;)-rU;W+S>m0v+-;1y|cNqyS2N&vv;t!e*mn*-|OJ$aOdc7 z<>+Ya_;}##Z0`7E?+_@~AO2hXD%=CH|0lMO4m*!el24(Z&d$=$&)dF#-}?Uj`1|+s z@4y1~-WL}a!1nw9X#KqWd3Evg`ag^xSJ(d%=hxRKH@^aUeFenX_0{?H)%V|jb^+}D zZ}0vQw|Dpd_W}D~uKRn~?G5ba>i*{F{$>q!HwlA{!C)gm+}{rZ!~yZ2#Nlyq6`8U=%$R*fGSz=sLHw&eJTN?@ zUxXy{6*V2W6>2*qhH|d9}kc zvyWga6lN*SAb$C(4L4zX{@1&NN^BpfzOW57j{MvCTkggm1S(5U&X-ltJ_Kn=T9V9Z z$&xtLDJnTBX2d|wzKCmJif}7ZdZiIMFZvZH(L$_1zyYUF#=5-?&DBP!wGaA)>d$=V zjwN(RTzqCIY!t3dbzG5sW(+=nc{y-Q)m#;W5VaLA(}HD?jL9rn{><&3-*#c{G*0-) zK_&>k_2CSsEr035wJiAm2YvWac^k&56cQbd6ysUX zV>QdOUYvXhB*Gi|zpNlS!QzJJga6J7qIv}LnOxrp_h!k<{_Du!RuHYM&;Qj5LQLm- zrIEN*?KGbY;}5_JLZAW^<^L~M5X+ZSeKG5oOAaQ>)w6&Vge{Cf2Ri(-9n4MjuT~Ii zrWus3TLImqjD%4pX^qQQ2gldD;P;fERj@vs>$8IVvYUgF`jeZ(ihkzXqniA&0MIA& zj^2ZKcsa@A4*2ow)(irhmc3kfM$of=J%7vR-F!0f6UIO|A4Cp=UZTk(pMwoVg3gZo zQUioF=)4E+epHM9{gl(gcVFR_Xra^VPz;cK2KY>>%^j`;SB#F7r~(pzil&beXPSrF-c$--c?hiDFbsixIRzL-k8Guy!xXDUd`! zVkE(P;oJz+O^*z0%`xRV#QJ#`&LUk$vdMl9^c%ZXGAa%9Jh8?N5XB0>@RT>AB%6RB z@n>MUDi2T{LSttvOK8F@jo|Gmn7zM>fL`#E6OH5W@MchchI{4@LNTaNv3?y_f}oBt zli#9_gn>e(MNR44DCdLWlkn)H2*Hl9eA?N0Vo@qQ%Ps}z11Db6M0g%MYNz}Ms_LX^ zaT?UT!BOj?^C&aatta3l(fG&bsc!)#M9biqsbCC__ymaSiD6pEfoQ^wD5H>^@hw`2 z5?(QZS4o5)7e}Gg@AVVh>GY3|?@2$%s31}VA!BUNkhc!1YSpj?-pFN|{>TN9XufTg z5C-8QYHQu9j7C>Z<-+fSWq4$R2p&H#VEbaGkR+>~h*g&h{vm3RM6XUx5EnEITZ+TTR4Pn4fX=B>E`nY;9nDvANWWIh6!x69aY(v6GLBYF z;8>@+X)(SCzld}VOwmLieTs+%%pp?A_wxCqP2p>aIH@9q)m2!zoTH?3m=$0J zmwBdcA^M4y*QfCvXjOuxz3o~@_2d;9*~A_RKa}ONY!cpKZT4fg916u&Li?F(F)-;E z$BRRWg6M+4bHDj*=Z;f(el9$r7X?m7lX4yyM}NOc798oU4tl;;0piV27k15rCqP25 ze-*BTfn1kOC;8Icdtt6RxVk_h7fcQ=#AZ;WB>R}bXdFckallWiky6MvGr>@v?sLE) zvpRtX4IwTr#G>;w94pvcs3Wgl)c0@uD%s3V^O7XQYSfy*RLC=YL~IRWo2uEUE02`v zhZ{5Q=}AS=msr^M=37c0gP4=d*6!*EIvghUG<%y_#meom8p4CTuhI8iN7S;xWUQpP zq`EguU#4DyEM*LZx&d@DDl^ncCy`ma8M4(7a-FL_VCr&hpV3@-LTbJ6+1&W z?}SmHYwW>O&@rx47TDyH>bdF5+}Rm-&GnMzQXpaytABlQnafDvuBcb`IdPL8Po$2g z%BJmT^0H-KNJx5ugZx95TJz|Kof~*#21wbW|FBDKLxUQF3LL+_M|=LUlUmEgT3;hY zRetNyi}__QPqu)&B5`ClTO_3{HvQd*Z8uUF=^g?xcZ&_zRVI9-t*SL;n=LYU<$IZ~ ziuLG*D8&xR(o7o`cdj zGmltN)}#|4B8cO>q|73x&E*yzlaowyzm`s&X2cI= z5)~cxJ>_0Rlo@<@t)I#=Qd&#SzTgQ>kc27>R~$TnOqwGJ?vT{OGhOJH9r4#Kt9c^~ z@!B=fe;2IpL0|^DG%Kp{vZXc!pXoi>{eWNTwqI>eu4>2=ppAgyMj>Spns30E3qj{r z!E~h~PYh~v#%G@6F-VZ)7Y>$m6o<)dd7(WEblc@RiY&D`_!QBF%T4|uKxZx z3-)7?C*mUb{vxuD0c734X;zM?#K0sJKz*t7P#@~=6cRWYR3WXD@|0!APcZk@+v80* zK&E{k$eM?urV|_b>34rDThgcgV_-U@Am1_)98cXPg$zbntsu+Ni_9nq=${@ zOH)=G4!N@mL(+<<$bnC+FJO*Dh17?15yw}|6#FbO8G>-{W01Sy=n1hMp`gbhT=!37 zrBRh%B~f$ChjS${3*p4QMpC?6Qesk4a${2Jd{WwVQU+m?xLty)MzWBY!EmQ#QDbt+d~#W% z&lzrV6;DcyMoOJqN<&gglUY)>S#sM8wt_;Ea-P&4jnokumgc0?p~lpa`P8xN)Rc*o zcAhV2e#uI%Bz;L=7GT%O1E^nCuD`4irfoE)Ov-%O(O{iPB3W!qJ3>u?vZX-@)6aR* ze`uubx}}3+(+0k#-3_KK%cO&dGQhkU)n@7UY#62#2rLyD7z-I#HyJn!8KP^5C6M%d zjlhHXbRzTA2bm1An@kF#tglHpBDP;RM3P}_7@`oQFbG!^1WBX<4WF0oCgcmTd-f6` zvm+q!S9wHrlPye?vtEe9uad>-ljRwRwA6tXJCUPslcPwK`|c*EqyjUQGn-N=yU!w|6=&qf@rh?ur0D|1}f*H zLdutgUHFJTHQ32RnUr4(C)gmwYbM$5MN^ukQ^`d>1lZ<7d1YvP^cVU%2i z0s-+(ATKl(ExF_9K#Nw1${ye5Y|;Z8hGF@bbvi2D&#z(rBrP=qWcT!pD$@OD@-Dc(ZYlSz8@DWo; z7;sgXpnAE*8f3}}c(@AJVLT5DJdeftZ{`)gd=2oS6{y7(7|o@nyg2?8l~tOR(H@m> zv6YWI5Y8qZE6TyKEk3q|6uSx|dfz<%G|dv$)EF5`c4uE57~15z2KNHJ>Dg^#SP{Y$ zYr%C=8SkUQ4*C+XNTdHobsK$in`TK_l7oszZNH}U)?;ZW97G!kwh4}Od{K*T3aS9? z@_mK`qS#KdxkW1-A5QKt&c~*L_QS%57d=9FR zl4;`dJ8E&I)E+59-Lb+;5{hmcHIHOlBwf?@TSB<1k zd8zl7zE2q=4-AD48yovK_KKIcijfHsWIx+(6*%SP>FB;4w;ivWW*h7wW=}Sj4sPPKpL&F}kCg zIuw?gyDc7ZF_v#VFXuVx7B1<2iZU$1Kin|VI@(m1yo6hb(VO2gq(aiCFF&Gt*L#@K zt6kF8yEI~~J!0I_H<8+#QPlV2wr?(Vw3e{np`-zIy+HzJY=a-wU3-j$0?9ENNt|Nr zXld+38v*%_#cyOV*P}7AsX&yt$wF>C*<#$YsD~d%Bkiy$0Ubdoa6Cs2PAG4XuBAbO zp%-j`o6K5ph*ofg(bmOS+v`y>!Z)mJ+d7reJ$l-Lhn z8W~2c7D2KU@Og}&PqJO|iruINC1Ri}Pa&f9hT^v4a7fbo*4NFP`0(pQ}Y3DRYu z<$2is>Ny{>geT6d=i1DdyvpUg>ie8Xij}R`D`e4#jugm;B`Zf?xZFm&dhu2xI&*_P zHNKm#_HVSIyd9m2Sflrv5?^SiU09ZgMvA0B#_?KwExSTqfw&g2?h~F%zPTPQQZAb2 z-eI_b?6XnSx*_Y;j`p@61IALRxwz%I`N$fq6Fs)SyeM$8IUUlh#k=*~no-gkN9@an zoY&5UMMfR{HmBgq);-vyV)G<*U7MLzxb3Mv+0KdY4(wyvju_nZ(a{cYxb2bd7`^TE zD(MQeW!uS%)ursITU!a~!tQ6?QggEHx264#ntQ|(aN&x8kIq2E%C__U_NTGjSl#_1 zg`xz7#U#N!hoOD?HRP9qo9pts*;qp*9}ikq4%<$0L#qzDbc;&Ic9dT41z3Z1Sy43F zR>IQ`o0|^X1&^mz4#U`v=5+J2&2YRv9Bqdm)qmMkhmC>=x#z4R;U+{n@1NLB2R@XFtHw>IOJ!z zLT8Wl&hWj@o~EA>wV#o!o{>GAQIMZg37r#jz;N!p&f(FZ^xnNLOF7tNr}g(>Q(KhK zvCS)MR!pID-uCbOtKS75z6+E85Y;;e`3Pb9 zJtUfbq1k?+y?UWb{zIGvBqekSE&L&ay|<~oho`%Kp>TnYea!Q4VK4O4QSYa7`*(vk zm+shU#_i{(sHE zx{SPPzPZXEzsVB1ArWHr?7-Uja30%!Go*11T0MW0-2Y_^(d(}N_045t*;P*aZOiIy z7z?XE1rkP>XVLggUsOuj!)e87jz$NZI!qs>j^!XNs-R8pe#ZM=lbrPv1j!JB^hx+m z!uxJRFJ;hsVVL}W!~7zx{B~{?cJcrt#AaO*MmAJ@aO}VwQo7r0e@NGW!L6==UdpTq z`yyhJ@jpG4;19$k1qQRe-4G9b!X$fF`Fc|_l2pJ8f$-gybPVSwPJoZJv8-|4WlajQBeIGg+qJCjMQ>xP**cx(n)Eh~P7Sbbo ze&SaWc-%pveWfv)89^?UrhUCITCj*95*S72{Io4%5k;lV zQDnWVGDO5=)Wyj{mpTtKjbn0l%@oIbBmPq2$(tn+bTFp>OKt?>oJvXJ1doYwG?%SP zDRP%4D7}>bnol^-#M2E#-oURclC4;1Nk8lp(I9c>_r zCHu3z<`|8cl;v9WcX-a&m;$heXD@0dp)|=27+;TCR&4RjoL9 z4&@fffKz2X?`1ZXm;M8x7?k>P9P?na)>;h{o?(^QB-a2Ob&K*+)@ea$^~oYxSLg<^ za36KOw!^ptmyXlyhk6~C)qr{(d+CPo*nBS-5ta z9~umT$OEs|-Hvk`3}dt6oL9ZMcAnPpBhpZAQ8vseq6j61bAO0aGuF@z(+kv~4tJVv zc%Nd!JR%n@lh_^2Qv-wgMyj1#G@52dS-Wl|Ce*naza^%6Vp5pzMK8@Rx?_OVi!a$^ zQQoeaY*xAN)KuenE6Qh8J8Rr*Rlgd@XWh7)*KFN<+Q(ol z;~YlIAxF2#aImPnj+^yypVY~8D2Q7GO%(?MCec^vLPkM~DfUAbr$E_9=Dih|@ZS%i z5Myi*#jmUIkR8lWWR%AXtK?x@2*7r|mFd%qxox~FJ^;4Ap^QDo*PD1lf5q6B^ zxa+RnT=ByY&m#y{3W_w7Ze^^RC4_R8AV>fQE>5~d47o>5R-Ab<{<>SOt%SBy`f@Vi zed-p70VdNf*Z1yo8pb*%5sm~F70&0ZyG>-&M)~*WK1j#SK98$j^eVm@?Bcq~ z+3UVYxL#OgnQk0I?_v#%;GuXq+t7!aiW|ALK*OC<*oM0H^7G{Lt?PnBL2F;(piRDQ z3UtD;u88VX?0`X@SABAA*ZyA!dQDe+uUieez6K`AQ*jr&j=ZUR6a;lJlzyAkP3;VV zKR(Qq4Vwee8-9x4@HbV6{Wj2lCN5?E{l$)R%-bwU`|QF6{kzWx96<+Dg#@v5qjbrf znHfw4A`zO46`IOrfoBD7vIp;aHEZ$&r%Nc;3m1!$r_)tyXRr53 z?{9+5evZ2+@!po!oW8*;!n(+x4rMU(*e2*{a>8>CI68z9J#Rgqu9AVbG+w5f>$G;N zv_h19PhLD%i$q2Y|53hHA}RK>21(*pm}nX!B1UHP>GBx910JUzT2#m~8Ut|DgE*xu`|6I6Kt2KdDc> zm)KRVH(6Z5o$K;QIaR?a=_GfY>n2CC3zpzF#7&s%p_Q}?RS7plu5WmbleXt}pP&wd z)0^va9IjB|l-D5m$z9DFUleY`ZMg^gmQN8@TTE35Hx9?e!FOIrMn(2+a zjaSU~`AsF#2*!<99I_Y^H)ZwL$DenIx^~E$$_hs|mS>Zh+Tv1ob6tJqWRNgyw`poU zu)epCw8cJsaix&yvOp=|_^xMh^&+|6?f9dOZ!`1qtt!_QtQBgE$Ulx47<21 zC%so3tLpzR_TDl!vSwYgG&7W4W@ct)W@ct)W@e@`Gc%Q$?J_enGc&WZ+TS_n-kI*1 z-z~Lfq(`C1{bNfzQ`#93df&B9&X(f1WElwqD)o6U#QQpy+OMB}i_@MNp}VX-_2f1x zb6>%ydu`+}xfem@Ubi-Tuio)JbhGPm`r^ASati=M8Wdh>(Ce?bH$cK9$3thmb|Nz{ zzRVf}KpritgMRYzyHEbXy}%{NJFS3llb{7~mAd&{^MZJGOSaZ3st4hcC3y83e?4#j z@yOfk2C&=Yg5{cM}|Je3cC?q&ayqswzWum^dw?d>@I!~Ze3vi;oD*L}V82Yx%e zs{<8aW1BT0bV=_I5n%8A=o#d*V(#>``SJ(C0OW9?OLmoSzp>-=f)9j*zfGy@LHN&8 zQty<-pC~L^;Hvu9B7Uy^kU!SJpN&1ay*#7_0=c^#$eWRO$~}h%TtAZefFFBWv#{2w zVW67g9I$)`ur6p95~~jS_<(o$Z@sxu522@Fd!Wm^WZQz-cRR|x`zZzi zJzvIxK#LtW+5(u#SXd-5*fG60Bm*t0eLygE$M?L|L3DF4HE-CtM2B58lU=zAyvN+U zIEnqOAKW~j+%;JP=!+f8*diDrg4w_W1wRIos0YMsBAKhR@KA&<3Tp}AY5<&F?-GL* zuep5rB;sI0DFGrl(gVMf=wQ70U%Z-SV&Y}tqJWV>bhJAZibaz!hT040@O}8%XogfC zd1XvQ-yB5qPetsIO0`6Wf3=CW*AH$X3q79?SsXSQ6vr8UM&6u(AfE;q%M9CXc4up_ zW?Pd#8xdOB4Bc1t@kE9Y5CjrLfW_Spdu&FS^5o*#5IR?jxqNTe-_0~B;Krc) zLFbIIQ*5wHH?cECU@}9-PtqmRtAA!4LSLMM(ot|m9|R?}_Z6~8Ie@V_x{yp)1@%aD zjth@9>u^in7C_VmP5FH}oiw z8z5b^5mIa;(b@!Dl_f*sFxe&}aPJ7jk}pk~FHNQ((Oo^jGg-*aF$p+~MyLiuz8Fow zKOIka17^_({pb~}4{0sR&i`IHCl3ZwVaTSV1nh)NGz~(RO-9c7^z4a@9ux;uWJ!=+ z3Piw79}`bw&GJ+RPmflE@VxTyoCeS?@;vAWReerX+VCCm$hY{& z-5B#dPl`jb@UQ2Cic@paV2tYyOld93{>lzud*udJ83pU^LD1+tK$-607-bibEX9$m z{3%}rHv=w942(1O95XiNqHq;FDXW1mV?l}%DhYuri8BfUSppmt(@|@z@XDf?9x{V? zGz$`fu$&D4$pA)Az)8;l#)&4067Is={nv5rreU%k=+|eC8127qC~9sX^ix_-}C177<;&4zAhGAN4NKS%PGFxK&Y;hsfMCy7`3DS4* zm&&vxt(^2#G>q@GyzRWaZeTO^QcrK-BTGMex{3z4oFwZK&(f005b&|^g4R&(n-loo zVh$RI(0buTCKVMx#z4p7JPWey-Y0jL&2q1^nv`t-LjE*w_oBHhsa!V@CPm(MvYN$| zbVrj~*CaG~|3vepnw08F3(HF6=b|02L?Vm2n<+OqU`WvpS1xOPKt*fGAhvyNH8uJ{ zgjiP1lym~hxIKtlaVJs90B-RDsu^7X6#uo6USK&ir`L3=N#=vu#V=?cMbqDRG@c+J%c7n+Mw14;xF1;-YXmm{^)za( zc(OWjI-A25I{m(zl+ilgS(_(7n-g16ldfHW{_eV&*w|TAU3em0+|5lUZw)J9-BpFH zrKz^%rOx)L-svFW+|H3T*VuJk-L@fJ$c3$K-z+wffglo%T~qiyRNZ}Ay*n!c20@2Iy2-;sRJ7(@gKxUK z0~Wizz6MZiRp+X|rLy^@cnsjTD|J{5;GcDsE)51=4Z7eBk=&?|TPRSM_kiRKf7UXf zkr@z#?QF#wBGzuIH|Z`n8)jl};N}8q;pq0Hs|}uA4Rx!z^Qrdx)AvNH_ehU_f04EV zO7gd4^$w?MX~<$|(FW+A_aQ-zy?!1*6CGTD)3M;ev9<`Z*&S#z>H0M4NirQUH5m8x z8bd7}@ah%wk<|&39TJlblU%clm~n{WF^D0=2=V<9PBoz`JbZ01>FqVySU8krE07EO zEf0uR(CbnpGlgU_y%aL7P%!N>K2qz+Q#aE#blz~UG}TVU)0sX}+c;vrKic#$4um~6 ziOVts3>rbO8>k(N7@OI-n3)G3TP!#Jj+%-d04XpXv^s9K9zJGXIJRx!z)uI2oX~a< zV|Bzkq57cWKLs^nJrTzib_3X*82h!kn{5;!E73B9c-6Lf51&XmoBLgFrEFNvsBihn>2nS~M@2$5)*;bX!#Bb6jwoMF1??;m=laEfc6u z_=PRw9?kl6ExC$L)1D6#@gO{(<&(%b^W`|QdMp_yEOWw+5&D&t1q)3lSQN z#LjoPsKVS%Gg2*6QmybWIyE4y<1=DowoeQ2IAc1uYIDz1huiDite5j+likiqE>6vq zFPeKA8>-Ju;w-N-FOr{6JKY#7w=Wi=PCUh|JGRez(QFP(FZ!oV{mFm>abZ@qZnjhJtl_Z- zt9G2ZdbSf}=NoY~n|xZ^skXV#XFFzBU_b33J6X2a>=J8Nt2L~S;?9q!t54{zPwh4m zzddO!wwG*Gfw1D&*Vkv$FiU`|3$&ZYd7B5bvNg0*^jDBMyQ}Brovtvu$i`X_Y8v># z{lOr6fY^=Bfdv87?8op8RG96X)PO012~eKV@w@Q}mV?>h8IRuWCtAQg-2ptAxK7ON z4|{s#RtKoxx3KPq)***Y+qXz|4h0~0z-|K6xdyM?dy+A=xNLibUALBDBk1lo7-^2c zGe6V)#D$6#Q3| zc|%n0l}Cw=Zv&2&G5bs>d+hf2<}o`jN{-n6CKA`CtgXmw?hkDE{S<2VcmVwqq5G$f z2mKIxmT*n}-;L$_I)clFAZkN6e2)w-d$R6^GV+d;GY-OGE;%5NqRbCG>}?7&hl(>5 zO5(1f&MtMPuG&sd>N|}ZW$T({u9D$fTP?0mYOadQPfnFj`jF2c?z@KMWk&379th8> zYR?kpP>A+!hJJ2ZanHJWZr!zR*5YnIrk_QPp6%E-t4$(3d|&$43$98j4$#;m zIwl5lyi<@AQ=70CR!_u(aQ0U}^%VXCkXmro{KY7#*DNWkG;A4e{-BT4c>eV`aLfGPM_g_M$i33Np)Vs_qO>t zpZE|I+v*$D_qB=txb<>R_wqGC|9(UU=0&F_L;%?Top!+gj7RSRgl449?OU^oX8JQ7 zOx@@r9P<+KgF4H%oIe=-hZes_U|hA|gFD)z{9pZdzZ#EFLLiXZnh*jYD8lM6BpQpl z-FRCVbS9hATf)HzWOAiyi#wv>7%XoE*O#JB)MFyA|MkCG$fx2u7J!0lGQq+ zkwjYSXPWgU65R%yi+PI8Hm8&M8tWH2y=<8mx+^V(bCo~-o&uya7zOKtQRvKem#>V6 zVKy7JK3OkJ$CH`t&OMVa52XY2#Rx1MW%Gg(Bq4A=h5F|VgY=0PYHdH*t~X7{mE|nk znQwRd!+-vP&Ac(JQJhOAlNf=_3HsFlb;evBpFmrVIJ129#r=A_kNt4{)yeVxc)o(p z-}7=?NLvKFa3kb^0L|iCH(QXz@8*60%|Q?dj`gbGnVd6%7Yxt!x~p)_h^npbo8T}k z5YiP8imqf^4-UNyjkX&|n(09l6-|1&Ecv73l_-W$Y85?HzQ7Pl5D-EkuCJo;gUKjL z5QdZF7hcWid=Mj5J4sUZRJlrQkn1S1fgaG>DuD$`J87D3l&gs;EgL6UhUxT^iLzoP zCTXMvJP|&z-Z&?D4tijPQli;;J9!>!LF8g)AV@g|?tM3dcupi$$7xPa3AtGs!Aq+CuJ3+Da>+dw%uuXdGmTyp-gv0GS%OV&)D3Xmku;4{Tpu(|b5h*2%}ZL|v@L5^owTi6ULUj#f(CP<_-(&3 z%YL6#c4F3@LBlHIhY3|FRPU~P)Azicchdj)dcU|tJ6d+D1yo#M`7r2R0a#>oZ`cN5 zu!Lkf;j#W|`7jP+T7S1`aT7>k_mL6uFpZf5Fi{3vI42c`7U!wyM;Iq~n7`qP)utwd ze^7pw@P2$U&kDlwvdoEM`?}0gu=^mnEitM5o>G+NWnEHHPkWH;;G%LG)Afc=?&mAv zSs91v`waTwLQ#mYVcWU&?6=o&&$i{d;mf}5dC|?jmTdid+Yl}W*PLe&j_(&=t|$I*E_bgv+qkL%kw=ErqjvGOH5(J;T~v8+`@&3UC8 zzLj+3n6d@lpficffve*n6@EU1?ay;RMxEC|-9NDo0KX)&)TLT!*8cl+#dCz9z82M~ z_v$C`*~9a8l;zL&Uh)x0^JA`v#Jg{0!r$SU+tyxXO@QD+;?y_)7atHPMK5sa4eF%R z&Z8OoAMnyjKd$yXAUKeupvz*LNg@IW=JGyxgxi34PaII;bUMgmups0Z0zoQ^U$9Pf zp>#fkaKa~oBLNB_Y$B-8jz&VzN($s?B5H8K6oZ7winz=q@|P|pz1U2SGMrsw2*$xe z!Ji6hqFqF2jp;qaOr>G6pM@E@7D*IbqGXhh<1m5cL#z$;v84xv-(82fuYvV(Qpm(9 z7-S*5_rF*NR)GjW+XE?c=Tt453bB7yjEdd^;Nzn13UP^{iFxiN;(a%X1;H>SV9*ky z!Vgi1g(;;JxtJIel1Zp=MI_%f?h`W>45tZ@lXgUyURBoI_DwO zL}OTk2o|a!B|~>ph>5n&Hn2Pv;Dt(ySTfBOs5E6^@={9uZJFB|RTOmjq>vF@m(MaO zC}o=h8OR1t%34p(|H)_}6->3*TH^ws!HuO<@+A_>U1lkpTBlU@r9#R_Xs)EBJx|jb zFFYr0u0qPRlugeBPd`-wGD@)$DYsf`)&U}$J#U@=ZgR8f9r}afWXtl#zuC0^R8vC9Y4^{1)oc|OlPHI?WoqR zTU+urNGg$iC^~t0W@qPv6^|xvU2-~E0 z6&J$i05;{#Pp$9SmLWp_)gVqpqyMPbL6Anr;2Mu39Xj_sNSMYLKF))fl+BSvQRWA# zF~dTr(OAb#Xj+}$EN(#k7E$IZW!d|S2T50?kc^6RN% zZA_InY$sDA8uNJnSm1lDFV#Lb6DQi*>c?+*KR>so;MzsRWNkJxw`R@d*y;bq7VN)n z=v0QjVVLmVZmew;UeCE1y~1w)dVZ+@rpxfI^4#sA;jl-HyOp8NCIoSBTOrt{ij?=6 zL)9N0V$@@bjc#AW{rfzEitO|&KISlO|8?vu``)%X`{=Rgv5FGxA$`L0n6>q-Lnn7r z;~{&ySFG@H{?jsFT4}_06eOjVsIW}DTbyX0c`h1oQ{?_@Pujc#*A?!m@}Q|vHBD-* z-p;A!W&K1C642S>2tWZ___`EO^Y%5>ZsXnEgJACs##=?uX(iWJZ7R6^}R- zo%#U%eddE+{@NSE#}G^3{k_g)>p2-9`FIVNB*}wZ=U;x7n(QiI;w(apDcQn4M{UgctJK`HS~~FvquJSBIFS1Ay>m0KgCKsNc`rJ)DHQ zy?=#9*X*2u;~##-erAa5d~Hb{<^k$a|F$Rp{n}{(-;LKbNM6hNUBfPA;U(C88=Vq^c#N zZYiWL+$Z+vLtxn_#*)MH$|MCL$b=F*(A;s~%LzZ*I-3MWFYl+sDIy{%B4QE1r6>Y0 za}lE%1QLlHFsl`@>KU^t6*0R7pz|1$Ia!*lKHiL~Hw zBNqa_6NNh(GI;Hsb@hs^7m4=>fU*QgEDI_g8%vN8D`FinFAG9KnXpsIF_D=v6Ok&~ zMM$ujg1Q_qC-yTIf(TKW$h=RL zuVhSsI||6%4DS|86kyC$>CBYSj##9KS+S1!dU~0$$igX(^{Gl#j*s}Hh;2Yh)v1h0 zU*mu1n3;i0YpNBRR~{wZ7DA{UKE;~Jr08ScRQ1MHO2koU-s8 z+mjI+dIc(jm>E@)xpkD<&>aL8mZA5Oc(Wa5@D6*QOZiNnkS>#}0!)Zfl5--ghbIy-b)vD3s7jZ0Jl4(Mlxkiqzdm`OuD3_sy(fOcZm?y|hk4t<1u>hQpr4!o4UC zp$r#M2?Y&C);K9$jEdzm5qQ^0CCw^Q?ar9hKpYV&H0?^Ya41blDiY0b(2j8`ewCi* z17o3(xH?s2Pgk(Y^^*Vz5(ZeNqgfg!SZb%AWyI-ZR#H~`8l80o{mAbl=^`p(t1RL= z_k*g)J&*Ms9()9{%BMPs`B6DNM{w3Agnrpeq$RyBbDrx2lZlxNG-_UYA2kadb(=wj z7j?$GwNcqpnIA+^c5ME9RaPChEVE5jYgHL?X_athp8Z7ysGC3MSfi>!s4DKV${(z3 zC{(HAqizz4YSPLqQ@a2#QuA?Ix6Ge7VO=DTo2GbKKLk<>M_#l+Y~>?UHCI||*HeqP zUv$PPbXA^p%~PAKQA^7fN<&-sypOk3O8$Ab=GC?CJFlwEykM-a=&z;DbIa*%fa+tj z0ll)GCcPXC`Z-`#UFCFH>v}PgOW2Er+7oqIfkTs(emSOPJ#Mx%q@*_7U{l;?6YF6! zNvAxzZ_|``S>Ik83SmYuF|g02Nsua7coSFLK#qs&f>Y7YBr7l^JU5^6DK?GDy!clS*W z{pfBgYfi}^ZeebUf7~2k*$)!g-#=g9$5oW{mpz0bJx4s;`;Rk0RuR{0UWD;h7EoK=#z?X zoY%`9z35WV94_$~BuMH&b`)RO7?2z2ApwOoU^_~GiO#_3BM-K3KriT?{1`s5iu7P1k2lo$w{lgHFTnCir@LK8szp@PPErM`SM>SNJIq9$raYqsAkb%Vr zS5&KwMh`hq0Lfer-^iea!idrszFB!AcW(k_Tt9>0DDL2h{x|U|s6IKv7P6BblREL| zUrQ|hQS`q?a;0{tBL}D>j-DBe;`xrats__mj2Gv3k#@pS?~H#z?!}<)3FMUt8|#sy z>4_)miLJp%#GM>A8A(4J0Q0w``g1t`wB+9P^KMxb@k~f54I8=lUZ*x?bd1!$e^I~C z(v*eM45X5-G|-wmiP<>OSr60QFan~U>*-sW7>q+05Sh(ToQde2m>}n9(`uQ2HlPU8 z0LwcAsXE{4F*^!4Z*^R6IWbexKZvq0b6|^8&Jk2+8d)6{3` zB3Fbc`oY4@&r&AlGT8%ywc88F!>S_QtRl~LBS`XUJ#%+dlqYj?f8?*!Wf`YYqux!#IAG@ZzgKvu1LdX9glLmPr3}!^@$Or-eOdwmWBHH2Y#EeG=%a zU{-ssFeloipmU7#M=EoqcPmr2jGu#6kdV#GEyj5dh}MoIEE_njC1 zRY8Q)XXwLT+|L2u&gQ~2vUK*4^t4tzVFzP$aw4kz*4e_HwswOZcZksdG@dqGn?MAU z-g5HyZ0rg^BEMsiKdSiyb=HFpMcjT-ixEwt@y;xlK{S`$4KUVWZ<#l+`?m}cg;P7N zzjxisS>3{28@^~}gAh?+XKqy|OEf-jzjv2$5j;r=Xj>rBVILSv?=W={nSvm; zLBEEcncOM2w)PAEC{XXt3-spzv`b(gqPqvIcTUnvKetzx7zh>|@Su46U}Gl$*tARk zlXX1+g@YJ>5eS%Ih9gJ2Hs|J39kvEPA`tP=!!>y`B8zaFxSQ3?N0HBWN1hjd z7HC9V2**Uol**(h+zr9v`^N|H9|oje^dJ;}^)ZKSl(Drw0pGxRpnXO}9JtWt_H=y^ z<8cV!H1!a5@r^*55Bi*Kv+!x<0hJB3ue|_LCwkY2-+$@*C7ygHI{TgAe<-7j2RQe+ z$yhgx;5_~{-t83J`TGS>rVxNSD~dA^42FcBzHLn~90DwTB2(>1 zwp1=-Vi!%}N~v5lRIfK%>R_eDB_y48K<#{jlu03zj#KGOwbgF5-y2ThPP>X$Q@K@A zY)ZS?<`u!B>^~qt$iuP$qwXs%Pef;N_`Yw~ZEy|_2CK!}i#){ePj8m&Qwesub#ybu zGPbIp<`-qZ4M$RWv)pVqT3ywaWL<6SYkwaD6&!fmtSy#GlB@S*dpe>pcfMr2XE5 zfX8WD%Q6RXyNbaT&gJ18L8DJ6Ki-u=n!v?G;N?TN)N=LxU^H(Tj?D50d{_Db!_BsA zL2ZV#fz}(D#)Y& z1BGSTZM-FTzpip@{_eS!?8WuGoEyQnrgmtBh@`o%gq(^}7$(iINfct4?Jb7s;;ByT zkR$^xOhA$}iHL`Lo+T1R6`a_U<}V<3Nusr9MjCP1i)Eb)^=1KNuhINm|D^IMHLc}q;#bSrvU)k;dq%l6ZY^Ga&Vee z*yN|`m#pij*f!KXla@BB-+d~Ub;f8{HlfLBm-Axz8iiponK*!9xw)2rWG$9Ntk;#Q zmgG15zYTWcc4hC&yN3O)mYdF)cB_W1^QviuIJ2tY)~A@Q3zQkVW{{>=*lk>q)wFm{(gn6CSo~H5 z)fR7fyT&$XoRh=0O4_E|bRat@RZ;F}XM?`MdWu`P83RzNqu%yDsd$sNAl_^~v^&&E zY|V{qfQAptdu{fNI#+H!t@w7~JP@(+Q=iW`&gjz7UlVM(hi{60u`ERnBdMYEMMrpDf z9JYK{0s1k-*t!tw3{&(n<^GB@mM%hEk!WMT{uNIgY5aPuAufn_6-P5!^zoi9A(|Kx z!e%2$0EsCXhmzd=JNqk2@DXC}|Z7Jq8MD)%8$>IPED@4#otzRLD zcwV2>40b@SiaxG*?WAfsNP^iC0FK|Am_9@jNF3ubO0b@op)`1O;4&s{Id2(VyBo+@ zuQ|y_;+!<~cnp^p+4^1cnO#p^Vjq?u>zZi5(R6Xlz6ag!;ANYA)MOqopAK%sCZBQl zXbyJ5+2pmIl>aGdjQ-5o=?8EQ+errnpaq1c;!Xl%p*d0fAnE{R@gWX~^C`ZoR#o_g zaGBjLC@i#6A-7MHTtM^*fz~k#Db5&$paBJf%fVF;J|Bq6`&1$SkpNEbvRH%)R`EwH zQ^hCMg~nOHQmVdv-o1q-$oUk6n#hn;w7L)>&4v`$rV%t(EvVX*_JZoP4zv)Bl@wI< zTstdqn2!gwawz$n21#-W%7~)MyFeHhXhXF}ga`?D6olwJKa@7Yf{oq)T=Oje6h;OO z(uaVWI+e0gtl=q)WsFcqkei@1ss!1E^cbx!NWpj;Rmf)X0`zJ=jesPe1$tCSpXwL* z`h6g(u1BEVPautT81^<-j9N!Pw71R?S#N#HH(9tqdriu~ttQ*m+M-@MnY#xlReg*M zD@-ulrh!eew%bCC{avedD3!kP$_gK*4_#8FAC%!#*a$sZXa8FL&zCNpV-~gMshE35 z#@DJ@jkijoX91!ELAwvH_6! zI*>h0K?r@>!lV=^#+brs!*5PF=BiEyIPq_B+NX|e_>3_UG3WyxtPGMGeQ832gb0fT z*NG))Mxv(#z+|Oz)Ovsb2({I#dhO%;9M%t02KQ8-8tjLn<`09~Y?c01up8Cvj&-)y z)KoA>8hsGP(6d|cIghySuG-6!9-w#Qc+|QW>e(ZaGP}7_rMfwS9BX(fFKRThK=t)xpPL zwa{VjCcnGYR>{>l`hIY>Gh$?7VGi;=lXHTngv-R~1Hv3PUmZ^FzB>jAXQtuAYq^Dc)!o4)a@4Wi; z2W|7=;x2BRH^Xykh`53b$|6$azWz4?7lsgLoB-?(tEtl&KKys8B)(&P5XB@o>W>z4 z@EY!q8p?)zyr#L`o)IsOmLKiT=lrR*cO}IrU z5L_ev<&pmD^`p~o)>6&^d)5GEtPXDK7H*CKe#rrTtPV!M9BPgLwz+QZ`+X#x5Z&*9 zeH;M)R)_d?iwMm4V}$`B`WCK15COjq;o=lllMJ!70I@~j2dN`6Wj!+O9o$ykYfC=j zAwc1?O#x{q3JGx-sg)4B60V4j5mnU@Ra5ateE>rBEQ=cf>@fi(wLq!Zo2{2crT9G*e2_(z{MywJ?tchNdO$RJ}BBV5==*&CqTqNv1 zMx3F!qGyK7I7gf<5zJP`ijF(W**n}lMm*b5)R0}&qq%ao9~H|;R~|_5*LV29Oa#^; z2-A!N&5ro4<+!Ft*x(I>xc7u*cLYetp(siY1ouRYOvFQqMC8c9R8I03O2nd0B$A1_ zi}l3vzwzNKNHiNrb(P}ekV!q|NjWJ<^zX?W8%Q~o$Y4*2O)1F(nJ7Y;CXEuw0iI*z z?UocNPL#S%jN06aLQ2)87nVY{G zOvD^>@||R&-D9FFu%um^|D66EddNioqy%}Eh`W)P_sqlqzVPea3H|Dx&fkIo)tOPY zf#L0r0cjx;!&lc*GR&Iq$)BMUbyi!w43>jSN9BWnsW z>&G=c>Nu-q5~E>KzQ|8OjYc-lMoN2TR%T^p(nj`3Wjg<#9POeU;f)*_4>a+O*-lBm zna*6D_nhWRti;aj70%qi^IT<=Tw~GPL(Jse%9*{+d&A7UzKuM@3T$8U0Ny=k-ZkaK zY3A4c2R?cyzKx&UNXp!I5B&a${Gt_nbBF@)kNDupd|S>Sh)v%-Q9;N^fuVkW+$NzV zWT7(&p}Tn@P8S?Tl?0Y#8ZH-+zB^%bN5Q}Z5mgo}Sr%bM6gYJjvEX{q843}0Widw< zSj)v28x$R#gP~OXQE6VOQ$*wlZHa>o~u*f;P$a#*+ZXwBk zv0y$u1{60%1DX_MDHOm{0FewQF5|t>Iln9&UWEH+k zSC!|?6>d;ea8*>&pp^aRRsN!U|3fL?C8)wLsiuUhm^Ld|vQn$EQre@+JEMBqG^_hQ zsq2$#grdqtHfy-6QpKyvCM~(fG;5ALYEqMHm83{lq&QVSX;rXj&sk`;CTf>0X@8h$ z4?RhImnrwTvdlC~FQnK^HtYI7>h8Jfx+?2+rsxfk>D{S{J-O;%sd9ZRN&IcL0b%2T zL=%T)vwUSWlyoutRceUaB21W?fPltJ?)HseH6>v)rgkxwFE!?E5fofD5pgqtZ!(cS zHc@=$S9MFITjtY#Hr9W(H);_ue^#-6*4JP&-*Yzid^Q7+FPe*^STvWIN4oLErY0LS zqbDs3rJ-pjJX^LhTm3e*s&M0~X;H0Xv(9j~)-18^PUYxpNegik9zheBSazCL6IoER zU0IeJe73c8CO;M6@1?T)GPXNwVRbJ=o(CeI&qscAv)_0Y`%vTcEJSoDM1)y!$Xdq# z$4W+)8H2&g;CA?bb@;t#0X`CjRQ?LEh*QtL|2Y;#r~W>3-;uqs~~ME+EnD zHML+<=T2Gc?){={+Qm-U!R|vmX2TZf6K~`*_W}^fF!PNLQaK>>J976sYxTQ&@w;R9 ze{%PKYxO^QVY_mt*;w%n2l2aGar$BpMD+;7^za96^GgXs$TwVpNDm0^54c)EniT-T zY76Fl4SsqFJX5!nNc-W}??dZhnT~FF$v$QV5@N^^#;XzXm)+7P2tg)|T!AB$l7l1V z0rJ!xuSu!N~oz(>=Q@W28Z8{2Ao4%40U?k z5r@YXvj4{}9EV3dW_$1l2cE<$+KSc?}moo z4QncO>z}c^yQin8x3_m-U~qVNWOQ_Fd~D*Mj8Fb6Q{&^)ljGA9 z6EhQ&|73D%X7YQSoSpb5bK_I<-x-@;7@b)fo>>{1Ss9pF8<^b~oZlLl-|1i2?O)vQ zUpg9CJ{np&99h~OU)r8r+MHfmpIcg8SXxL;b_plIqs*?(ENG)Iwh zyR?=H;3#zlBc+$%g9u20wzv!)NtJ|HoCv!=iYpD-XX(Y>)tG=z!%~qN%liz(K>vyN^OeS0B z$Cx;^G7Tp%2T5gZj(q*^^UGPX%Oxib4NE=V8{0M750k$(rgOZDZelwC!H7HEJe#n{D2QK4}L-Ph9|Ko$#r-2KziUhx3pnQfc<}j1ydseL@QZ_tP=fZ0~DRK}a9Z zJ7+OgZ_|N1-}$Yj2?C65)oF5UDWPGaw9$Kg-6ct*nIK5NwEP$bC-Zm`M4@uxP$@wzPz2@GyA) zHWz0}vcLqT9fn2Iz~O8Q1}EZV1}RM96xQumJ-&-mr3tQ28$oeA*(=Bh480~nF;>5ja#+eVOO;F%ISB)GQdy9@U?5FGRQRA`j*6DX*F&hVQl-&}R849$?T7(S8V zRO}Rqqo-07P32tBan&)$)G*#|J4!UtT=7XXg1rRhMC58)9vFtz0b!j>8@oC$TR+r) zN*>Zj0Si|cE@d&((w*QmJ%r9xNzvKSs~GFM^{F^YG2?qq+gzt$Z8dyi;si?>lZ_F9 zZrpn(iq%~mxKC=?1)NW8K_QgZcf?qTLTt|_G-@2F0E9xA;bkYKHIQHI7zf1ilT%+rV{1VjqmWR7u$f1VUlgrLjGX&PnU zi4nH833*^8lqtR*CPy>5ItGJu$kA#n^nJgt#IkIgW2TR2+m;eMi1_uo9O?c%KlV$I zV%uZ?F0p8Gl%#j6HkxMGx>dd=1?Yk7>IN(Oy($^8#1FT%q$9TVU>Rm#1=8Yg2U7F>Wf74pC9i`|U1A;%c^QqCm zPc5FyH}8|@yN*eTezvuRVH2tIUPyvSYr%*)J{z(!_?FU(drfnl7ex#DOwpSgCGtwB z#A)9`VvjUR-`o6()s8R5ulgSHfrV07h7#l3|w+DV6pq z#8DH`0}&03w%-kkp8PrB-k|}(W&(h=haxm5md zAm(E!$5e$}`|K1Z+Jl2S#RSK2-NXrIwDT8iye(^(TooJ^)hrybK0&WuRJf=~IOx ze6<0j^-}w|L;MViwI+sOw6)3ss^1f}0krhmc+XN@tq2VdYF32k;6B!JfT#&Ex8_9V zbCb#t4G3d}29(|aS`jY5)>2Vgd!Z67TK{O8D5xVs%g4C97rxdZ9CmYU`ME8)`zi-c zB$|3O2zxNL)@8&{=TPgVK~MJwR_Vmnp4v;t?o_2y<7&>8+e_D?skO%n_4Xy!XxHh{ zwfma1zG*Cb>t>+6PYL(VdxLs=1ILW_3-=bp+e@#a>b2OkV*WicN5^R&1nrL)gQHB) zAoAh~EE;bF80hVb;r_OeC zoQv0yRrr|rK$*j5nD$YLRO)#9>_f6Lw=qx5hNP@bRTGW3agFJ3+<9Fro%h>>0YYQ? zh|Dol*4w0ooHHP!s``jcJ7dBst}**W=7cLLW6ExsDf?>jgzuw$#$%c}_2u(K2>X53 z5TPl5C+1X)`+X)#kEH-#_Dm{|b3Q1yspQ+rMQ6-4lX=}#j{jxJ9`3bR&gN3=jRYmy zCx}XVxsF;XXl6ObwPf)eN?;dzu6m<2(VgyE;yQI9{1bbnrxv0vRQAl6eSNKa8m!LW z_DJuNYqe>4h!ADS+6WT#N0e4*nk#N}ysPHM-g0xH!rqa6xHq=H#!Kr^H@t3)5!NZ1 zW_PP>lrFLMy5@J&xVoXOruxC^1=dTgYo8s%Mdp^_LUWrf{FN8`=ft3yN7~;yn2;)= z{f+X_9)NPrB{e$E##`9H5VIeYD#zvyCi!3ur=Fv2=jUcE-)pTeA&if`_ttanFdG%! zd7}EqdSi=gdJe6V7b5O4Y}(r}_q9C(`_^)whxVwdB5WG<*XE0#SA8^s0}cA-p~TAD z6ro2H>a`QunMwLxgyjE}}VD=g|13Y3`S!li`W?5$w#{#!!#FoxRSH z9z@>gW;axg|Hpp#Z}zuSxo1)Hx5YLD-yG>Jv)O3CqZL_quHwx5T-w%ywq5t-LG}C0 zw@NF`ulqzc{$pdsZ?+rJuh5m=au0iFVQ}X0E_P?BkK^0Qg&zaQC-`;#ACi76?0>9W zH+}*@|IurIbMpUN*87bm|JG=K3$4B-+n1qXLE$lVjjeT!&Gn6~?%n|(A0I8;A!!Z!h<^dHdV<^m=sE+}ic6I@;Xa-rd{3$;y80 z?fYI`ev7!j!(|a%q?tgZEx@F zuC8qqmsUKEj<$97B&TI%=Hw5LPB1g`ehOtPU^GJzP}f@iFuL^_xnde}#@(QG7xiFuty zv%owQgeVvWSE{L8u@E{Q?}+d=Y`#pG_VrUU-zqRiqfxA>H^n;Ox4}RZuJr%J$^S3G zRtxO)_qHI-Zo4M{6c+Ep{ae=S4oj>@(*_I*l0eLCk)T$uiGcpY;=9@UZWA;gF$A8r zqvl|=99l-qI^z;@s*cq^peisZaHGv$dA2w0@pRS-+=n*@>&dFIX2>aGs>^u;8q-Od z9VoC>Z^xj%id1it2pzxfZl4PM~B`t(uFdhyRntOrZ z}+u&F@-KY^q&D6YEq{kjlCYhizMGh&teJ&On5A ztUIt)rq&aZ!wz&pfr5p9MBx)qeI_FXft{-uyI^j6AI4QpVC|5udjhUFl`$on$8Pai z-^g{-hU!L6*Fz;LfewNQJFXpOot1T`zN6Q2=XU*Z257PrWM6V_H+a3(PLArihLaf$ zlL3Cb&AlOMUNzGgb?fE*1j7i#s0RmDG zr+r#fQMY|s(lD=iTGlbYa#=A5|A&+By|uhxT2}MCZsR}oyx}n7+q~hlV*9f0vQzWY zx2sbl${BY?oE5c^p(d zA@e$n8drO;-ngRX{;d`7qt|!u-(>B}-Q;iFj{13CdmdNc8*e}S_}IkjZ*F^^EmM*Eo)5&TcOKh^`(jrHtI1ujzMZ}Dy^bkX|9y74a?clgnL6(Gd)FxP z62#eZK>@eNJV5P`lt^9F%7I9OjQ*k02tha?UImZ<$QvXK3jIr;0fWJ3W@iDdmX?tf z9han~XVBc*=H}^r-G5)-eh>aYT1I7fbWBJ@YH)D$zkp?bf5hKA0PMhjRB6V8HF-Uu_&AEd z{Q3O8NIF5=#XnUV^OFcBK&1^O0y86x|4?ZOG~9|&7j;FdiIkkZh0JS3i zq>u$TB(k946E=KeYG#M531%*QJc23$Yj|F%ejJVac2c^d3=&LA%PiR@^=hWtLHOw| zk!e+bz3mLgiv{K?lSB$!1VrPc1Pp<(O3}4Xts_BrVlq}2V#fnRbX0}Co;v0P1q$UH z!lslzOg>XX*$~fGH@|$OdR$#;IDc%jKtq8qg}jd@oW(H@6p3(ri^Nqh!gKfbzW-yD z(D06!M!fhj4xu|<8X4#LfBKpFg@hRupTLD{+4NbXL%arE|4O=NDPFP_|T|KjRH2Qu-Wj0E| zN3(Rsgv`SGWfhJ4`{gq={eO*qIjC&jmf(5!*XS1lp2M16+JB6GsT&nJIDG%l(Jy>; z#9|I#8y6YML3s17Jl~p=xTQeNn?(<*T6RLpzqL)*E%3LWJO$>z{M;Tn>^R>)sBXf? z=Y_Zarsd`RfS)8)(?#+l0*=E82g&qMSO0|L@D#!w`>0J+&;)!Ai?wJv{897}37YwB z&!IVR$_T%CqHCBY^Pmoo#hVFt?B)s+l7IuKq!@k3IEn_ZNigH$FlA}f4>CANfr!+d z9tJ?Td!^n;{UfIV0`VGyv_TI+qM%T~Z2@2pF#fT$%8eUr=-$DA3Za%{Tn2I@4)~4 zI{^6!!ui*bFESFC6hL~|?fdq0wfSv@*|iHuB_B12X`-e|nFYIcaM0Ivydc67ejlKLFWwD&Q->PY?+3V0d^Uu}l?Vu*0-qU`?TYko2h%|` zFd%+hFs>N70gdV*X!ysRa0u}A@ZJHrg5*G~f06*e05Aa$h-b(=Q5_r_rK4j5j6A^F z`wIzyp?_F=zkdA+i;COX-7BxE9UGqnY`cyRUBb4>04*wO-ZwV4<-aQdOg##=2Lz-y z`v->sn{Q}j^wZQd5Ucq19RrwshhM(}mY<7%%l$J0gaj3|C91+{pYES_Q82?Y(hwu;L zJpcuRNI}&9Bpv`dzybnT2SD#H+yM*(K=+r|3XlyT*k3gJm&*zu3qTxzEC7rEtN<_f zFIc5z@$vB?4mB+PxWx1#yo$`A z-e4*m9ef8(R+;ddH$6#g915fp7$j-gE~MCzP%=7ZDG+K)mQ3K~EeC^%K!1EZSB9i! z2OK2o)(r+kD>ZT=;5IJO8jfDo2ElN7k#JO*HVFZZB?N`EmByo`q*j6X=Mhv>(P%(4 za9%$lqL2uJ)4~3`cOni*DA|9PP(VBZAqB+qUj_*vae(OkyO09%2#D?fS5*IsE&-t> zKtlhMYy!>-CFQNZCG>yyw)y-0|7AM>Nd!rIgQRLu(g9!y3B& zZryL6)wm-aLm=sEyjznm9Y?Q9+YZu_0fmEwWvwwtlyVwae6+%2bxW3j03WhD1jCWW zQ;a8Ok6@M#1>ItXWY51Z4IsjyQ-K*`kh(a~`}hdv29!TOakCa=6@)hvppC=p07G{# zgwSx>Lmb`Kb#UwXW>{IK8-@+dlHI zny46Fz5a#$vWW?;`;^i)YntARNbK_S^NXned~x-wdUVYwxx066&#UZXV#^HX=SAt@ zO7rAaZr6fRM4L_S!2a|(LM zQQZqcHIwQw9iKP8|2Vr+_Q>g+-pT1&u*&WqTRHrCa(;Ar8Q=V6ard}+aZKGycqBuEQYiG)2MKd zh{dqCW)lU9iQLbI>q`MoA=H+a0aP|!j(BgoG@M*C6{XYmR|>T5*5i_}c#w1~l&+^L z%b~Gqsm=XI>!G_@FbNs8EvF)8HQzWH?}YpLX!DU)3?UO|92$cTBc|ZJMG!YzyEBe@ z@_zFi_k9l@1Yu1Z_x8oh$r_6h`L=jMg0RPG6|bY+8^5ohv)`Ub>n${1oWS%aE~Kz~;lgSD2({yZ0{5D#PZ_@G0m|7eX5p z2a>^I{u6va`U|i;bl`%&S5P`RE1n;IFXtHk{@}~wgXTe?fa4s?zkhqe1v`BNfB!~j zul%m7tK)$iwgAZd-Rjx;I~yU$1NZIx<2^nt-h#hpvonE|TdU9S-zz#OiQZ}V>Df%{;BF|)s0F*h*4DGnY)HV?w^c;>hz%W!!G<>@0hn=y;IhvD(g&TP#- zN;zt6ZPkJMbai!QW*L6U{ggR7+w{Ka;NalM>*%2J;PCM9c;Z+m2i=)tc+_@u9B{0I z$Uf>ks;sO8qC7{aqxSapckkXEJ0A}Z5C3k>ZfkG|7Q6?t|cRMu0f zTU++*f#!j9)pIim6tPr=b_r~!0(j?7oYk+OncI;{18bJVJMGwvVsDSST7mb`i+JyDzc7Q4u7Gxtsj=sK;^ zQ1Yfkxow~3dFtNO6kb2BLrvzH<9lyjj(q?kFxo{{_uK5b#g6qq}7i@ z30F||7P~&*%uOX9sXz4JkGMHKW zr^3N0A!F?CZabNKn05hG*P;_%#E>o>X(yVvn;}H<2t6k-a&Rr^A%QN-nF@%0?z?`Z>yZL4*7UyftHwc)nIns@d^XOg}HLESYw7$Uzo=GsW(8i!_8gxR#EXH+pGY}S3Y^yjQ9@jhZ=@-`bOhyZKTdKQWc}d< z8{!}w#f8bjvUWO zU;woN0KLWA5MVk0aSR3n;2Y2fpFe*Fh|lBgvs$!zynCzzXqT22KuG|a2E&d4$bR(d z=xFo^&>29yd^XDmAp7y>gs9$<^PMK{`cGd-huyv9RM^09-txOOo?wW6La!n z^1zY7#CGkRijJ#DVtghNZJD^ra6X~S1Oqr9c`~F!p^p|ODI1SQ{q!H31VTN&&(hxzD!jAILB=k^8 z>zaMdI|D^>{pF!!d2{)z8ArcIIjlvhDl~PA5wka99Db4V*;4Q zPG!{hS#KH9+J-@9-`mBax_;{5nWwIv9_~83Dx)|fJ4yB_x25QCUw;uo{Wx$&1-P^& z@iJVj?tln5SCM)ix--_(l5P~1Vqb-Dh_|BaXP!?|Fyoran}OzDkxTU>%<()Lm~ogA znyGN^z+AGdZ!XKPM#B4N=fZFM$|Jq-<2g27qjYbVQDOMfTZ zeVP7cj`!&hy8)7bdlwZ%YrC5l#!5$K~ba>DlRz z)1OCYCr9TenDZaU=a`f8gY%2c>#L<-*K^qGDeUz)_SYEpdI)>ngT3zjb=`4wg+9F) z__*{iIX>+G2; z)Z9hk;zh~IMeW8}`}WDu4(7}D*Tt>Fg@3KhgT<}?u$I;j|8-?~`(SftcN=(YZEkIC zZEkL^t*jOMP=m$Wks1~Ie~S-wk`G=T^j$YV-^^_|L^Nx*9AxJKkmM-*dnM`C1m)ycU)pF0LMFiRUFt9}`s6{%sMdq&+(gMT^{#vqO zElM#R8Yw-xnIn4HllnQcriH6^75i^%zq`Kw;Z=3$SF#q6KNFBW9*{odpV;jm-R2+B z>>t+XANt-uw8}pesFXzchot+5B>0EK_=iLxgCqQc!uAR6L%?Zw$Z>!4 z(QxAT(X?;lnV3)6KfdH0%@t!7%YMw402aXzaO5U#v@YO(k% zkHeL3nFmvE-i`UQj5t%wDJO_XyXa%C6i_cEMG6JuU@(>)c|hexh@X7go^K)t|WW5Fy3 zX$qT7&5T9Q2RkC=9F>bAg_p}I5c^MGH#SOZv&*cBbJPzSiqQn)`+6&`@5)n*T{`3%KU7C5Ed zNa`IKA})HZU&QY?-K8Y*i%}n&x0CJ47Vf0-`d(J1dg+D76(+6^Su<}le6mS(AEqnr zSl0@+Xc@|Xz+ZoZ4}*V$`f)8%ZkC&yi+)d@;dN5CZ@Xp55)s?5M9inbDn8vyW!~J< zkf$MC5R{5V8JgSZAnHE(iA_usvGd*b`zga*s8d`|{-irUD)OuEJ+Y^tqShb7?+>>< zuo%Fj7q1%ZCMMmi&79h(>fr0Kdsl(~_4;63tho8dV*Mo(N4VO~ZXLD_kHzQRCtN{3 z-WUfeS=U*uCze4py4v=^4b(3x_#QWJjr;xki-PgwNH?W40e%uVgi{-@*oO| z-IN)aAWoG$V*SBx+Ez?3+?hqmT(O5?9up!qnn&g~*hBfTCKM}0k`D`2>}4gcWgb;t zmx&te<&ZcE*C1h~Oq^|Imp_U?jONoeh{#Fw6|fi{!*d z*w_~^?I;d#bZUkZmloVQ8&tTt9PiO{Ba7$=H?Bm zy)M3*JGUVSB!O)b2&#yZr*R;p?lcY7dwLwSU&78`tfWe|p8(D2?Y>6=$8py|-@b_g zJ)Z9Z;WMq?K5NFM%~~C$S>2#aj_T!;aVIp?`H|C%ZRa>7#+7-6`#$sHT;V|kek?vS zGmZ|NnwLGC{K=Ho&D85vaeiq$Z$qKPnbB<#oCtqc739q$6k57NN=Co)eg55_t2bFa zCsWAo7qlO)(yZdB_#Tzxj0Leh;qnYjdRvpjPg=%omI0G1ql7A|mTA>a1al-g7jtgy z5gc`C=h8=J=}U%QPgFifV@DbIFO zhbS+uGq@2OSf?O_?MG-t|0dTP1yC_l{?d%lfQ+ zE<3<|W@P!ab*5;uq12;tf#k$izvKH@weQ)&!uhdXrxK#yCB24}A2Gwb*v#*HF|tbV zK&%0qOpOHFFTHq}$2e+CKt+(ZO6Yao!`yElWG7^H!0+Fqis%=qfUS}()Z_X%NQb>t zvG^6^E=%RxO_hc+<45`v)A9#JUVts=XU+!|vEQO8K&w^`K~VKsd8-6;a50I2mYiB$ zO4H)Xe9BDc7nkn)_3_a>cLe(rv<9#znC&n#OBq*Vpp00&%@VXQL!^TK7El|tO;P%U zsxFfd^_%y>Ly+gkFg2kU2P9S}-!4Yw<)v;#8CyQ|h9chR)fb75?aHs{*BRWJEL6bX zpgl>yoxWUOwzFuXen3CvBM-`>VBV!HxkJq+aZ={iv8C5G-x|yDGrs)?KO0{eZjY;A zmdDs3!`0)d8E zsr)*CHb(i)`tvoS?;l0WJ1V~Wo_P&n$=n-o_%Q+18LI^9?)el|m=LG*HL}?AcozPn zh`_XU+Hvef{oEd zr(B#eK81Q=n%|D0>)D2K(G_^rEY^?N^!s;3sRuC6U;>RsObBXn`cH<=Z!}zP-5N+h@Ws7yI=3f|2aU z#ezxi-iHrZC8OWJu1vIko%#K~fy8b0!$%;`+>j74KjLQO^bC?L%@aoF?;z?=jc}%Q z_ZLX@XPAAc|s9WQd`_eNB?02MK z*SZ}r=IX3e?EJ3RS&h&|Ow7PQ&sS?F@G&G1GU0;WBu{?fYJzmV?siuUv&!oa!rKYL z27$gZ4PD?g6uD(cFX4u`>b7yRTO1VxB3+7!o?H zYY?iL#>DLeX~CYZ!^jlSF*Hq z9KKB)gv)`rC5}X#Ov@pTyz~tPS3Go%oO&)+oX&1R#D2;x{(Evf?nMmc5c$oE_~TTA zYi5h5ir9p!7YTF|q=BnA4BF-SYaP(;p)1WgTy7BUG}oJ`rnb8;uVxgWAlw6`F z9HPmbf(4PiFtA_7VUHO|74F9A0r}Vs8Eh4?X25X09jphx1UeGMnU}_2!N}y!&1+9x zRcu^}1k>`sQQ}WtX>=!N%Oxtdkn^Mm$BWoq2c$HAae7>up4LYmIFaziBk0*)T5M^8 z)@r<>nEkf|Nq&tq4&1EB?u@DngJAJHk~23Ok^hrppbjH zXLdc8yXTqmWrTswOP6Na#H_hU&iyQ)uid!=PKsQx9w(QB zhk?DQPr_-UZF)g^gXgIfIR%EC8isSt98BRr{<8+OTNo1b(la>R{f<@|N+W%x+Z{dN z-m&hEE-uX53qEupKanD5SS3q7BZFYbkC@4+rNG&4fp_8LiB4R#N_Ni~e6SFyqPkUY zxr{JWX;Dgp=j&neQ)Y74eKLF(a%zWg?=mu(m(a-O;7&Ksw&FlG&w{8{>pW|3h=v+1 zocsjNO2mxwZr3Mc-m5XL=+)h#CR@uC+A`*rh<6f3)y?2q&d8;KVqap()KB4otsFuT zE_YF`?&##k%koKZUiv#%gm?*pz9|0G6|?isaWMRDT;UYA0li^Ky@7!!L(-On!H$Gy znoB;SpYYCH73M`{eqUCUO?9LY@1&*}F@v5mxt|1;VBw45_`&k1s zGNgP^TcBG@o0;E}79*KnE4UYf;f%dySM!A{?s72p&V!^zuDF$SY~7uvy4mm?{ww4B zp*m`=_kwN4!fo;Ih7$6ElP{i>r3WVqQ6^K^CSc)UdQ^OKX{PL#@|-?*8Rgf={)~Hj z6$)*2SSg6v9KB0R+=IDV^@R+Uh(K*SgN;znLkSec9(gbvOc#d}1OqR|B|cS34{u7& zEXk6;O0{An=K2)Ae#c@T1XcJHnAaHgG*-{L~H;K-eW3x{q`}&L}t8Ptq7^PTx)ugQVIizvMA$$z%ktIwVngqC+R%8|!Vg zZ9~$h?lw$`yt>=!)hJOpYMU}Pn4WtfFlCj_(AKe7o+x?H;@eo=Ip3;(-c+fa71Y>S zY}DY-Y|%>}Rl}9}{=n(b=mWb~<^|NYU0mqsZdUijhkmb4!?~Ly7%O~UU$%%U%aNb~ zF6d}WmOm=1HX%8`;XNI5wpix-cHQ@U$~{8R_sa%xf>AxstUfr}ScUd^R(TFZlU+vaIZ#`k@~~FYpp)LLnE!MzS`hE zuo;~2^>x1k(|{8*fqq=St$pYl5;8N?fCdP>igd=Bfxw!WeuU`&*+H-e30R$(z-*#_ z6+Nhl!4I+@ET{4CXdj3=984z}2v!+_g$%xB8qPW#%C!%bcNi|o8ZL_(&L-(J8UAp| zWA}642h8YE?mberIP9(0z02)lBv$?+vt!D3q?8xDY&yCe2dohf@zyZ+jQ69(4Tr&H z_M?LpqoYhCPKdM&bk-=N9ooBS_o;o|mzy=Fp3zW?B?tCJ-ZX-zqb2rZ!&#$qhr{K~ z!P;D9Y#Al-v@QeOcBzzYc}V-Jkr5E_crowz599GR<2z0W)~UqtRg&a(qI+}uxah-i zb*D5Rf=SMZ33=4SY}Rn=VI(%Pir^4CLRA@|uWysOJzfzu?hhKVS03y09{tfi%9fp) zgRrC|9kc6>D1!3V8rXq;`S@RslB(u0M~{$1tI$Ms_H4VqwfI!m-qat$m4qR@|Al9# zo%1eJ)#m7wh|jQi<){i~Dpd|v=-v0?6@IY87sp@V2bBgsl$@`kCmgdso9>a?_zbhZ zGIWcc$!WKY4IF+cIj)5qcF8huSDj62w^Tu?y~y%0w=;+(opZg;71Ne_6%7KH!E$fT z6A8>4T^oSS=5srG%PTF5m*!z43m=1H_Bj{ulnuU@#Io8gK-=o>9@Mvw`AK;9bnz`p zF}?5esg-yb|2cgzv2Br(D;te{HD1$~H8N~~QXtsAo6BL)lA4)7)jn0*(A=d$7SmQT zpB|swM$*2}@z5rtQEoXSIG8*uhn^lBf@v`KXqu{QQlD!=sJ;qjgoKJEn=)85?2dJK ze`1(z-a72|G_u!Ox;cE>4d(#|qgJvqQ&A(Op@Zpz^3(Y*eMgB(?u(Fz=|}dJyEa53 zU(pl4zi_&KXcw~mF_S&j42TfWkDz%Tb|0k5T(*y&p%G%_G5VI=zLT~uH<{@=K9{FW zMNSWk+ltMnNs*9+#BCLDrQhRTJ~?=4E7hZ8#MnV{h<1$V zZ28D420B*OUQL%=L}G9IhOwxz=D*xlur3I@i$;n}LEATlo*|(m1zLMflNnY&+IE$R zm!Na?j}5!}Lfq-vt$Y`fzFqCHwN_e(B;Pj1H5{9cc)bB}@8-(tM!aH`K&;hD=9qK! zT**}h8tf$d?%)mekQ5!*4IP}j?evbBbgL!zKChHA&e_>pq&^5zxXw8u`U(u)zIQf1 z``p0PzHjMK-wIjZ+H&tkRqvKs@6NZLy_lW@wVtmz@4r8KfAp z%S#V%7gJs!5bHkNtD)Qze#=fPynd{$;nbwoPs1WjUfX*tWlsh*r2t8;=I<;NOgJQgJXaLYx<$?ZjZ;8O-dm zM^tqYo~>aMpiX|L$+vCDfAKZYuD7mSFgGhkYhR)&zsk~17r#llY_-=Ws{iulwO;AT zn#s?@V!;ZYP&>WXpRYJan4zuezblsgBYPgkI#q-GrB|F;cR7??mwcMMo{Zj3YezUPa z0DMy|UoQHVT-ke~)VoBX9Kj5_`#NR#HJ?mKZzSKQL)V*K~5zf^6I$vo$ z*BQ)sqe8F6umm>^Pj*K#lyc>>4S(8xsiewuy=io6Ki^={)0k~^_IkO4bmR1<@wvl#uKx{% z9OH}Qt^vXgN=25%YKl!+?IwP@wkpURp3@l_{ngG<_K2Xu_}qmXY^`vQ!7a!8XV=b_ zdS|TohZl!epMSgAOWHVeNilxig{nTff>n%uAfR8YcnrZQtP#NRDQorFxkSUF#dMt}3x^$)(lzUs!mXA-PjIYVCFLnZ#!&iH#PDh1LOd*e7NTn%v zQvo6)!4kfx$xMz{P&MQb<@{C=f4xAxn?cw6?FjL}Llr5T9JbmZT*r8_9@e&=Em>pM z3G75L7kO4~5bT*0^SIiNEV|l^B1;ALd)O;` zv-!-kV9_8o0RwYIb z9n%}TN&R4sZ)_Tjn8ian4VepLku6if*W@d43OO|vKJcvL7f<#wrzXMR=_L4r;B*p- z)}*cXg682=JsL_uxnpGQGCf`ixHl7C#XoxXg6W>zTN9l|!^8ZXjLF?auP?W2biYjY z>$X|ewAZ=FQGU}*JRy9o5?uv1Za>?8AlY$6@X%omOWW?yV{_-)q3?zQpJV^+P~(p9 zJH_qClT1wyoyJD8yq(4$lf&6274CL8e^ytJbeYzF+2Jx{5-RCB_p-Rdb>U5uB=bK? zO~4@DXP^MkeVqF^e-y$4OJG#sul4WG|8?>I=cPdjfo>Uii`uF%__BKx6!mXu!BBi+o0I_VNxsiJC0LdtP)*$^H{Z=MIvJYuhTM67v)EO-Qr zcm#BL;7UC3M?7#59=OoI=dgI;g8XnnA-LcpxS$+dXfS}$!i>|QIqb$H_HAnEZ&#Pf}ir=y_P+xuRwLLOdX&Pd5O;c_n%)yz_~ zOwx6qXXu+`>KkPu^s@}qvkjF{&*k4)%9h(bs(K?)=Pc6TCfMX5)a)hP<}23W|FAPe z79FWRl&JSH#b7AK2%YpCoowEgY}b(BR2}D28Xs7Y6qcP7ost+E9~YAl9~+yH6qHo( zI=#a3P@rWm;JFy{;|r-DoSgr3tH+@yX)h}8YAbMf;UlOB_sA7pH^nKu4oL%%I#YcX>*Ka|B;n@s`FydUo!H~BkWoMioS8qPaFPuguUT^ zQV2hs{hylq0$DkgKbre`{E`z$tGRXCUu#Y&XY{p&5L+&_nw7h_Q}-Cz12=vtgZm#R zb5-vw@5fR<2!Jm(SQR4%9(+y`j_Ith6||nhl@_IrPIul5Z5J-@hb+2pO&hWE#B{X8 zO-+s5i{W>kaC7~drhrZLU5>j_-kY;<_hBf}nvvt1$Tk5&|PTOjpJ}h0+ z>Y!>R*fUZ1h1$+XlmI3EZR*AjJ*$)|VzC2hLMy!zXH5;Itg8O_OX7NUwUn~<3GR7D z={0j`WocR5;O&Abm;UdsX6ux1HhlS3ZzID@Og-KFW;vorTFVTv9}N!k{}yrfD@>qo zkBqy>Db zygz3vFC!J|-4>Hio}I1u-~BkTx>CX-Dw+(UY7$5`W))qJc=;T(5i?L3!k0wXqs+dD za%|boaJtnbTI5t9&)zQNEAeE0w(F_v+U6~?eFecBdA^3`kEHO#U9E6Fi_uPvuT77W z+N8#REWj0bhXAS!R8a} z!o6CZ7a=36P*JBI<8%As2eOM&exqV291DsVDJBQMR}v<_ac5y?TWaJLgExQRvP3Kj z-0_1Y#pB zF=<9xDMr!zVI0J!kJ(1QhsAP%ut8!^C~tkdGkVTKL-C{+OFzk~NZm)oQdk5S4qxAQZ=!#o?jk?N^&!KpHM+re(&Omh-UXJWw82Kc zy69-jg*$;1N;Rr=2_|i99BoBIs;^%q zSg{$xT4NSvgmOwhkPVYOhSSI}<5OrG49eUo8_!qybR!~;Kxo@B+H|F;#kTq)_l{nZ|uHiy4%9fg8&OJn^ z=7_}A7>{A1B$VINF~)X@nqvZz`fx>)lrxElAwE7z)uZgQ*Ya=?6(2}4^y!ow0}aEM z2~H8ztd4q)$GTLW06{X-<+xW$hwhb*|kNp9?=rPZ_E=lD$Z1bMF^o6C`)F z$16+FB$WK<5AEO&s`h;m`ox7Bk%67gAn_^UhGiNCS4`K&`d|x1eb*xAfvjA^uVC?q z<#EndKShj|xK(<%=iU0LfH7~f7J-A7{ za!Un&9PxjZZrbi#*H!J!7NpxUNL0PuMaw}FB6z4waH}fUx5X7fuk-uO{=Tow} zAD?|~*&u5${GjM<@+9RJpSuC2cuG)e6La|e+`J)DihEeupgSi1-fp#0dGRgv52pD2 z#78X%oF1VoUIdrSv3T~WHei`v=9THOJAcf|9?FWfG_@G_=oHBPyf_~QxfBnqa@KGz zi<8al{Ty!OoX*n~d|$zH+`6&arV_f0>rB%Q!s6W9)F{efFdQ3Jkr#5ZjUzQ}$fmsmQ zn1I!&22K-wj!P+CxM?8Rll0o{`t(Vo$5+F|uM?*k$tyeYPK~5odOpPb^+ekDV7@3B0 zO=A0t#~)i-hxKG0l&}wdX#41tV80Y6wc?as9lv3hWI*})o>LintF0V_u4usu;x|tk zO$uvU)VwFI*Hj5vcxc>md-zJ#CfnU@RxQ) zl$l89l-oH_%#c61lxZ*~`dtSja8z1t@h0x+)aT-vyh*ySXs?K2gQehSB$W8}9<_{_ zYWOSOw$IAWHT-U!h|&I1=!~J*e zjKx<4zh74Ag?vo$BsUgT`kIk`28tEGn=v1Lzd7;)g;}zQAm6ee39Mg$(~vmLND@UP z%_-7BK&jr;$kqZ%m*&r44Q*idf9|OH&VjgN6-sFatzY$jxdttiB7P?oKw$=LaR}g4 zq~%tG7On=s;{62`Y5Pr$F3tkzngcB;EU5DWW$0)dVJ7lnCWA9DfjTz@I*MmMZ!yLP zO*8~)C}?`R*_hr4CZF_>3uCnFC##1A$%}>{*Iz%|35Mc?P?-hW$?zpOlC_wII4cOi zh41%qK-Rin6Cc?+5QGJT30rBME<-)BwMD^i+-;%;$@V6oi?Tt!DY9CQZ@R$Xysc2& zNnN%{^7{Vp$TMQdPIyG~3lU)_Iy2}l8rrC6 z-XNfj$QW05vUXvxbGWxvJdct4^m`A zlcaYc4~dTAB=UUi2Vp-y33&w1G&B;^^>c^Fdc!FP z!ZV+hW*x$bo?&aU(b~{zuIyxHikaTmaCX>q3gOJD_DX|sIIZ>;XPCZj82+4cwH4!X zQ)mZ^vCp(FSSpy-Kf8VvybzwTBA!hw9bR3d=U1dnx+g)dn|i4m)5 z)O}&f2gz^QUA*Ntwcv{nvzdl5$F9Dz2EEWQ@9va-G zG>DOu2xB68`DD64=BIlCi}6nmLwc=Jm;h1S5HwXhecKe8It1M{Md>&uQ8q)99Ee)c z3W+t)H%cO2=``J!$Q?LQDmrz_lc>g^BH1Akaa2LF8`dzPkZ4M>TO%%Tp8Af6dQum( zgC^aXuljabg<+^ZmZ&~4tUhI+Sca3G5mUc30PQ28$>@~VE!EsCsm}B{?n;&3d#U)5 zlmP}rTwB#GQbgh6l~Hpw97kzKC9q|93Q1mi3bK~Iyp#&3g0-9?C)|{SCx1Z>OLZ&+ z&G-`AOKY7GcB{oEb>c;x|CX%=v(CxM%S1Ch2lrlx)ct2j)mtDsA8CcbsXW*$+-r*`-0IWqNNeHwllIa1U4ZHlk(^ymv;Fkpt>w^_Xc*BXPZw8@)t!AC`G zwy9ehBI`(CqF>YMUQiIm6Bdf_UUe80&N~+>%IvbK-q$^xh<#2ILF#Ej+HZ4t zR;)x;2PZ30Vz9*{YK<#ZQ&i_41_~A4k+3($6gwq3Ho{%r8K)K)-+gXTW^yK5C|_0- zqaQ=JmfoTP-3v<@kB4f4AetCaj)i6iG(^fpJwS>9#T^lH;4UM4s{;#ZL+?h{A2fb* zDY9uTk`Y#QHmY+q2+acpCP}yVN4B$F(L>ow4>6rDC_BnVid$-9qYj#bpB7}z*HN98 z#6Q(cEr%5vB$P0di6KBAP|!Fjqk_3k-Sx8khF2#KI&wU@tr%H}L*t7h3@y-aX-^$~ ze$f`lplG}#UD6OaEUQ|I>$dzH!=X%pZ3tFNdk(uu=zU7mhE|YhuMk%uVl?Y98Wa-r z?y;w>5P@Ng1H7B|SSEzz#b=Z;b>wcejyfw!NLT zqK#*4v_T%mkxVng#QI@kMdV*dgdgP@?kcc85(jd}FA+Kr=uAWxG#nDNkKqP89 zeeJg?Ja6?tfN+acq8uC|^TwF7!p_8+_NkTTw^6Itw%DVwUmn1G$eg&lJ)6vy7jdK( zaDuW!>jH721kmkjZ*2tu)tphpI8NM5z1{>f!Pk(2pM~0EQ?EDD8NB;O&lK%5m=rDK z?5gP|9}~Zgn!fwP#%9sf@+gXQ7Bzgq3>%Ik8F+|w8?M#kH;iR4XZUz%%LU70i&G0j zl5j~CerJAp;s0C)D&XnPEh*vs)mU-h{FCqt*lB6uTPyw>j%2Z`5Tv)?M#SjRNxr2a zyWP(+LDiysIpQQ_+da?5LjUIizgQT|UvH+N>arB|p5F5F(iLFod_dafwrJ8oq;1yi zd6a3=bz~U5Fg}H^ZL!Lb4AoxK`trGNW_;>(R!K-i#0cbQ7Hbz5CHQBA(!XbnZ zLNOp+P(VbQ2#Rzx^eUpFg0!e09YGQ4Ql|5k z?tjJ|=k9UNf4;Z|BW3{an?;`athJu`%-I9G_$Gv#CUMvyw)pk&s12uLU1dw5+L-EC zOH1Wg$M{&+$yg8Lcpq*}aT*Hz=}&c6Y*d!Q924*geFo~g)~9n z>OBPE8^ll0M9w%1auT(2uU;{(2aJzW8713fXlum!k zye^&j#^AZhk5)MitLoWfaGS{_-fuCyWEH$b_BYqVYKWb2qtLvmSyi$bULr*?qDhN& z2ZuR%o(lHOG85mTCy5PI ziJF+m1TM5=>*l;uM=@K<+=TS;m*$r87Vm4yH`lgU|J?UsAipt5tQ`c`b|wg~*^|3q z`>e|%Hrn4nCDRzUp!8)wqI%Bh&RpLtqqFYbgS;QacenL|;1QYMysHoR#}CSmvZRa` zHwWDP#pX=AenfQdH^lw$&D%}XC7ZQCMl&rP=@4~#!|k086RVV0)5`CzywrMXejnGa zR2cZZH2>)6{uSq2bKQaD`{I*K5NI?8nR;tI?JC)r3ZhPB^~A)4$Yu5I&+bpkN7=X^ zF7C>MKlg^;lJDmdF=3_;b;%|%YY-P1Ch9AnRH)FA1rSkd9~91}zu;`S(_K^u){xvg z3%Yl}B#|`BDCN#dbxpd}{E1>Xw|1IV=Dlg<=-*YjZz}QPj<}8=_Y9R2*&O3J(}@~# zG?>s~T+O+CXzpiD;i3q&?1y2Rl}-fb9)haet#X{Sonq*{+sW9|q8jHw;p^^!#+XN- zDkrwSC(W4`_T}!(M8r{qtWy3bjU)4uBlXj&oEtrXgZlR9i_c`DxDtlPJBEF!)$c^Z zPpfiS&!XP_uF9EBHvO*3IsSy7Kds6&`d>J$%Dr6ZjJxG|Ui;8$xj$F8IbQq7`un)$ z=!hG8)SIpOw_B}gFQRO=*T%o-h25#D)(>EMZJ$sr#`5E&|6rX7&*7bF}~NXwmjC6dyL3_#lS#6c;& zC7PfJqk?2H9R>EncwSNB>j~}+-YqDFA_KWxS=Qbf(+DFNjcmx1hKQJ;D2XQ8Y?s+M z_mDaAj`RLwMDo;?EJbPjfyK(o*hq$pU3}3MxTZjpt=4zsv4~7wSwr4sAJl^(%j>`v z>YhbCpOIp5Z_@co%gO>r%Y*@X=zERHB$K8uRVY>}uAh^$Se6TT^pqQu6h@g@(38mG zv76U|atxDU_I+%0ubtBv6-`gPn~BB`W$vYi&}F_5i^c6+mkXn$<8PH}&go~pZg8#b zu7*Cn&qHml?62(>E^7)yY}+5w$mLs}7{qE7_O>P~7tZx5y=$<#p{cn)Z>?)8YE{e{ z0%waHh+sXj&bN578ln{+X|*M7P2QAA&sV7D8AMN{ubS$BH$XGz_Je8&<3@AEM(V}c z2-9iHa9Eqxk3Nr-*aT~7g=cSQLr|;_hy*=`RgLeTw|!_P7w~n?{QmQ(J|4Qgdvy$M zH-etW#5CEJ-rSRTA1vR~Dq=bvGL0Xc-za;o)EV-tX7)?{L!4(KFs2~O zXL5dLuNYG*@Flh2{k`n6KBzkrLWq9F5D*0d+B785E9x%KDIK6ueU{iYb+{%vW^IRP{+w3rTzwmGC$&PAe%^J3Uq>Cswy84pSPZ zTN$fc7pv16tKAc)^)>eKV2s8;9Ro2M1JUYVqaJ>Fuht!Ur#(QS!Ar8*RkY%*;AaPZ zFiP#O|1s>Yf3oBM_=dmGia+0iKifnw-9R+u*{!4}l2{#?cuncJ$BMBUsxj*KqaUe7 zKY9@P;8B?B<3L4iPsyjwV$U6gOzdyGc*Fnv6~FciL3I=UI~W0lM}ktyf;Ywa1#j^2 zU*X~7;^E`G!pqLh!^+Oh!p6nK%E^4`>P2=zHqKk@R{)>nKG!u3uIt*o!p1km-w4RM z2&(uA-3t|Y5Gk%6BdU!RdYU3=n0e!Mk%0Xt;kRXS-nDmvnjeIjhbV*I>3 zLjpXaBHgg@ZYe1q>FHi+8GdP5@6&S9(zA2YPy4?AU`_nyPW-{30I&ZVS-DyH1*t_v z2_+w6OH1CDe+sJj{Jq!{qo@D=Cj0;dWf)i`qOhx|9 zwT9s!7}FB|TZM3;H3DCEWbBt1*Ck8jSEAyK-eh@uBmtTqs1T|q>u8Orol-aw?sc{S z`^fkP%7-V4B{>@YpBv(}+e@xA6f=#t#eoJGtumYKm*ZKV@^#Z4ej?9zT<4vx_j+*e zekAXQ+2){&pt1UM;rwr@mCr?|Dukf1x~zEV%P)UsyTs3flIl%xi|2u51Es#v$?$pQ zxHsjALr#_apDd##ap)h63@FGm3o#Z=Kx#$%u&#y0X2JXN#qu5vN|uTPmPM@V zR$pYoP3D;%7O%Y&ziVFXQa#CG&<#VW{NbQ+IybEpBkQ9A!Abc9<3|@DMT;K-B#Vym z#!YZEIyB1?xgk4-DWUhWNRmVB^xU$bmkfeQ<7Vy=iuI7QHsmzejc`Cpz4*AKJ{Eo* zmn}$RlV+4r7FGSoB5vo!8=;t$%}2Cb7W83*gtC(|UFGX)`Ix?FPa*V%C@{N$Dy>}r z)qs$ijA%PTCl+{mvd=L?CAAzeXBOhE9k*#Q9dyfKn8K_$1NQ#81%G90Frr4;WZz0Q z>|LQxUKuhaPf~zJdi8Z)T3JBj0zdIe`gc4?zVJ?Tk!jj-YnuS&5pOPMIYD^mB(8H~ z0LjIZ_4s&28Mn_qSb`#xv*j*IB`3FO^B4shKz=;&&L6(^0pAtBR#*I#e_aM zujO{%ZPn2iD`sRo&a9)>qZ#X+dz2eNj)gBi-`AO3+bbqJ$jTSEX}p;;ePmuP_Js@8 zN~K@vTaPM#$eA@uX-bGQxH%TOA$cF1cQKD-89ZIjeuV;W@s$OpuL_Cd2H`zEEnXA_5l|%>Z#m zK$xvzcZjuMoU9=nEv-prz3xe-9tLF1Ao?V6l0?>06)anr1U zN>N(oqB?Wvc@^p4>$Xoky{0{EY-IwWg>wpGd)LUq+cftJfm_KI)F`*7n^gHTmZAoIQagcS3U{X)j*9 zm%FlI!c5YL;$tJv3C-JliyvjkHf4*@MO>s^r2NW!NLN7pP!C)4l2sz>#yu}*u2ez^ zJH@%O!yZzpo838}`nwJb^qAS>PsOZeGgMv9z; zdZNVd<}k9xe7A%1o--v(fmaM_MhQN$X}RjQT8Ak&4XP#dHuF*~!o`jj8w-1@gcW#Q zN_%RL%#)}Ia4MpO@sWJUav~>tEAhI2^j)Ne&|_2EyE)hc6~$|ZL@2X8rt#v4)T^m% z^6E0c+RNzC*V=n+wAh;a?5-|4yKuMkfh_7N#Sei~kKdQJi04`QmydlidYCDP-gRgTCY2F`cclcieG^HQSNeqq?ec`w4O(TJJy1^aWP~e2vG583 z=d`i9z@yf+>Vj!*2>kepy9}3F(#5C6h4vC(n|L#FwNa~Nk_|-E8YNU!S5m2Ky;zf6 zTUFqE_VRGKHoG&T+A`5y_hg0MTV}fr4y#12)%F)J_?E>e#^4sMnq+#(DgKVeW$Xxy=O zYe0B!cbl^l##lLmouFwWj~$U-Nwh!#!-3vmFHjIC?1J-23+Az|WjWTW-w?kufAke?ZezEwvdCR9Z^{n>4rJ3)s;v~}WF)jdmD z&eCoK3~Vu;Ut5>CeD~)|1Xsc5^+ms`^t#tn$ehovFh3?24wWDu&#ykEPEy*0pHy}t zhKR#NNRGW0#1p=IlWjurO2uAjZx|QUQSs{2Gkdl3sE2>hnZZ?jBd0qw57c4Dq+Bq?VUaf*eds!9?aH2ER$t=E zE$_;+sCI?cZ7s!>A7OIc#_bc_jeg#K*4lOCjSJ$=6 z=g8z9BteVHweSmj};EBA-ppfSoI4f4WFQonD-E*i{AXH(D z60W+CDP?niqeoiecw#CLTyl|ws7AnFr><<=EzSd{2aIn6}aBpQN z7dE00q;sJ*a=%4KE6G<}0W!&Xu0hLwH)^+kIRwWLV zQCWs6RZlMr0#bv}X5AH*WHMpCtwiHFe&K)t6chXPys*qN%}+%3(cW&VLBtQELUslFwys=I zv&{dR5%A_lnQK(`p2#~@iG1=axl~$5`qH@#Kz*F}2@{-7fg=SQsb7yNf(mhNaA!mt zW_Ysa9J1#y!PPD9eo2XJzo=_BMI6U}t??TF^*yIIK5W%lB%U?A80Q;l*vOA8==zHS zwYwsw`T|xWY}JRvPiv6Xyl@`Hn7~}6=ICZa#7ih#l#s?fw%jOIyD5IIu~fe;r2yY3%sO$J;V)qB=pFF zr~#3JX-%T+4?RgT#mqR#edOhaC!{%3soKlP_|F;55$PfsMS?9w{EJ2A^u>~*#nPI^ zvi8NoqUm;7#iH%S;w#0s+6#Qq@2dom89|Y*B4!J!8GV!_$>_q_$G0sGGJ3xvtEK|a z?l?B+qf+}gtOW`PYl8+73lC-)puU#cP~Wl{WPBD^5-Nj1^^ z$m@oSw?-8onc%Fst9{FAV=jf7I_|9I7>A7_lzCC({l^SK57W5O!3Hi za_#eBTRv?TaguY%{zdzEUv694x3BCi$(s}sEXq3YAM4Z=kSQta*cWw}pnBzmt{Y23 z9Mt0YpS;A>@cVqyd`dRt3}sSM{%{Vd9%G~_=ty}Pr5;wkjrT-~Rm<*@G<4-&hzZ#> zr6R2nq)+t69(Xa&Vm%k4ft|fUUb8{gp+P>jL9wDid8~oQyXf{&;S-{Fs*5Imkc?-> zWS?buriH!PuqpR*8p~6;>MR;>^p@-=Wg1H|e0&}SagOp5@=z7y#zA%PQdHHhH8Ha)pb@l19r*IAvl9Nww?}&ADozmN$eFN?{T||=U%2X^I|x& zu@=zee#8aGK1stO!%4z;`nk)`>M0i{#Z@5j6BCXzZ&X`AhcGUjc;eW4Ekq7$o@v5) zEt3}xiSt{;Y`j%mPg?ffu6hr&v4~I&6(A~txO5yyTbLzo&=`Lj9{k^xL8r=tcrt9bm2lEOt&k=jxk)3D%$H>cFQH_+$O)QTN+1 z3)o*>)%65kJJw;jz^RUcRSX|a^`{#au*(8wbz~Gwz|2?QJN?wg_tfu`6?kHipqL~i zZ~tqj;jgRxH3R=-1`yd0V%lFOSZ)LeFQJwo3?3dkE5DeHB*dABhFh6+5x61X!AMAk z7N<@Rn9oJ<8jxfWcG7Y|(5k=?dY{ z6B~3r@UY=zAI~awamFV?i9rgcB%F&3@%bUXOwLeXL}w#!A0e#{!9$@@H5mMncLr3v zDD?Ez`XX{B2j1Yl4GmW-L26TOy8P+iWvO4;?KFOcAe_JA7ep>#Nq{I87Lx})b|5xs zX_-L?gMcmmSV~3Bf<)2)i!9)e_1kn?O8O44$jbd#Nlned&d$%u%G*-l!pzL$>Fo!i z7&u@7H@j>6xA>%P15Y~;yw|Rab8y@MZdmrR+~KVqbo6YPX9mDV3q&;Y#VZ`NwC_Cq zu!(611QjtUH!!^eCRi+&4P@o+0xK+Fwe?RX{jZn)nt}hM831J|eAsFH{`QC|RmI@H z10FHTv{)B>ytCJhl?}fU?x06a#f5AQ5yT(Rhhz3qSLW zCxiLr6aiGymwLmc#=R0N=L>%_Vs6}@cmZW`g;G(2xlrx?~EeYH6Sf;;sxqJeNf(Srpe*pwQ z2cWnO97#_d{iU>&q@ZvXE0JaB!55NwQkiPpHDcIO=L?>onWaWEf zXAhtO-~vE|)bxy|u7Skl6aWnX0sw;~D<>B;tE;K&M?^+*^N2dTx{HV_uyY6&ey;yd z`YZqSYyO&n|H~Ob>_W~m{To0;s$zcugxDgguECd;L$Tcnf@hHGz&+172|-M92?I&|l6@zU zI!xqamPC%qM{~xkkmW}O%8e9riUZuW_!hHG4@`pAR7uPU7st!re^)Q$yb(E1?7R-C zhOCC{qWj%-T;Gv%v2nRT>QHuq^5@&I+%DY_XF?X4X6hCoB$N&aizMh%?|b*pVNqzP z#~?Xz3mnBP<&4O)yvmBL$;KnbW5c4H`0Cstmm=@XVV+1MUH>41{aWh#LgFD8A!mOf z0e}Gj27ki9-$y?P{eK_#e+E5>_}}3Uq8x-ch;I&vB-=Rp^R0~iuXczM9Y!GxWi-aE?o%x*lCdN6GU5bTu$^wn&&i*Wmzol?q z$&F9H3#R&ott*zpU~fkOmC+R>MIdXT@zt=$Pk}%Mv%JIJkOAc?%{ko3s?Uegkxbc9 zWJdL-h9WrC=OOrl#As9x z246Z`lvohuJpFR8gOW+B2hGd$ho}%Z*m?-!nF9~lLjpe8@1;M8Y9sSkAgV!T2l?H^ z;x!0tkkierY(Yp@Hg-6=c{O(rwDk=aSJYeEJA>rjKQZSW6cG}Y0IaPCCl^4X&&dDi z;PTGZE1;p{OI%9U@4TOuTU1b5}X0AS$Fxhds52JQWrC#Yp>`FRp5`qJP=-Ik5C6R2v73 zw1#*cLHZWE8#%*8TD3_Z)iK<|A1!7})VLl!)hv9xvOJz0%roinW)jD!te!YoM~H7A z(;>tSBPO#RTEqyUXWf0;btYo3*Fm9JB5p{?2Jbh|DBOCkR z<)M{oAZ4Q8@FyR2q3%>w$x^^1`G=U8T@g^S(ob{_o5TDPczc(;?xJ8=3w#1vuZ<`; zR7VyIK?^J04N6x4d!2w9p?d;cAG;_=+ANzB?=NvE7TYq>-b;?{L3kKiW6%7X- zvQC>kHymtuwKM(jn4B1H6zVnm#K=qcI*8tlTLM zQ)3E?C0ra>qp!syh6?bP8V|j}gF`8Jnaml$=_!efJkV#LHL6m5Wo#k z{@~#e`Hd2woB>uh;2agKZa`%OV8!+8x4_B>9D5WNl>(puZ~;K$f8^)xuQ&bQUY5t_ zpNfSaGXinZaG@dL7J@Ljc$AzszNyZ&;fxO{;Jgf zH~0+wb&LP18ThA_`il@#$Y(qjsOO)ql>h$8KWGU5-G5JgEqQCMU5&baP|rUnfYs&6o5j{re&1QTl%vGOmRRZ!^_j`x%*- z7#ixEm>QXxo4$BqW@%|*`FD?(FD+lbw0Ql}!1|S*^{eNvUz@+Swt8c0Z)5+~+1c60 z(0gqeV;JqFL5dfihnM2Z_~Zz zx|5Ho_hD254QTG#^=ab2D}B>>yCQ;lz4_Hkvf;92{rv*+4q>8q8z+XvScCu`jBIqNJw zZO*oY{`UGFuhc~(sEAu_egj_LlUk-!Vm$PRkpSt!%Ifh=D z=l7>7NL3$Y0@!EU7Pa4(qi19h+D1V4d8Mr<6BV#e8rLN2hgs{E2uK-6`4$@Ne{ zPW!AI#Wc(zCi7q^D@T%MIRhs+gyGD}d^xh5TUrMgex~XGkT?BGG8 zoySBkDw6P2*Q=h$3Jz2p!?~Yl{IuiRsJ(K?MO}js%t@?!!neB7fRH4KXrMGOO=#44 zlC#;oVp$R1%=G@4y_Wc#=~mliV(MWv)*|krS1cw}+Z{reAH8}g_-(Z)n`b}lTKO%S z&ap1_UDKVu56q6?eadoix;+GEuk7|$Br<$xQ-34=8go^N;NzgWs9FDzo|2jM14Dym zFG>mlW}qQFXtsa$E^ml6F5KjP|K2OVDMuMvcN+79X)n)U4@wp15Bp(`^&PM6?nwt9 z%txNp`7x^?%dmkBmFKSWnQM~Dnc}w_Zf~k zr2y#F!JF*I`7T^`Q+HXsVu|RxkPoLWoGp7V1b@158_Gb3S27-~k4>Ft zYR_}7RTW~OC_>UPg}~iuk)&Z)mm-`9G7z3qA+AJuT+(wUzi#15nZYaF5LMtsCHk~4 zq%@BDX}34TIf*jUP=3#DL zy_ccT4^kItEeYhwEQ1mqf~galWY&r;kZUU!FVOZP_`DLspHb>@pHWjt(t0Uq0=syD z{t1EZVIT6kmn)^au<|kGEB5BE{w#D+F8Ysa5!a_6gwN3`M#v)K{;?tM?uYHGvDfhZ zrzGLAC=a`l>qs>mN{?p2`HofEb-fimP0IM5<}wzCFN>5+K69H9N>W!@A-a)kL;X|LM2YJa17>?Igg9%yv z>F@kGwSHz5eO5Ft5LxC>Bz$_NQu4tEC;iozZDpZF)}F`^Qe(rF)`1S=hr+S_-Uhc! z?m0N!$YM6b`?9jeJf6^cTyP$i1c+jB>hv?!RVJX~SqjNeIrLco(@>MJ!ypIM+o zmHqPW%22oP{^!*2?^Y(n0*TYTx3x~ztOGBOg`)(;XBhJ>+pUR>fYM|JEOd@j%$r;6LM`$oIuOr4nK$G`E0IRmi}VXdj)Cm3O}y zTYCb}uVz@d|L#oTG%Ddk`Gf0xrLv|$6xop>=i|?N>5{Nf(=;^lvpx4~7Mx|M2O|B& z1%Y(>&s?W$T9#qgL_PfU$k%CI#m!%?#aGm_EB$z*b~7bBpZnG&;;>e&Jj;kHpXYfm zn|3sD7vZ8rSM|$WZ9COCx6lD3-y#x){9k_$izSf!Cicpp8?soG@Dblo;taj0$HVPJ z8QX8`JcrtbO=(FN%sS zdV=pqTHwk{lHf3(aaXv*h4dx6ufsxluy7aA_)Gk1hi~C)!tQUY zUd7>8%1I9L_F9_nBwu|rDPb+56sj_l+Fh}9FWtN|+hIGW8@{4*`D(wW>FY>0@m1jq zNB-?qTSdv@g640J%w~Arct|<6zJ7Z!@NsOnB3)}u_PJ==()ax|Jf|+#3&PXH-JA8> z!kg!H#bz}x{%HN_xUToTd|v7PkIv??O&3`ks@SQWuJ$yf5-pTk@yub7zz0HcG~)_i z!t>7Th1~*OSKbu!!~UuBdvaLGfpHZAHl|uc!JV6{x83aKMSuS239Q;lzjLyz`SWn7 zyK3(fuKVP>{m-MR>YGF9n53o9h5hL})rW)KxIHk78*kr!shxt&-Jd*v+p8M4-~AJJ z^z-NOpp}Y+&s4HqU_ zS0;7>Ijnh#W!JCzwCljWyCi zslZLv#$7(rU9r?%dB|NfG2Voy5){}OipuQvX76T!|K?>|aFxw!VNZ+oHzKG!lRB%d0P+n~i{f}T_uV5ylU>4yJ3XKr9r6BgG5X9#YZiOJ8AGi<*UFfye zKz@zT1DjAGg+P(dp&LV?H(LYHbYY7^VbTf#vbJGUkztCh{>sB)LkD513jX(m!+X@j zAGZ3@dczfa!WEt28o~jnCAhXX+yDdD%7p2mB2-#~bEks^5D4uhIE;@_n+Rb_7jE84 zZ=vC)H4KM-fEzNQ^oSyC6~gU5(>p4-=?bH?g;83zkzNY+Atga>k#33@IMfBM5Cn50 zf;`8)TwjFoL6ye&!Kw-LWVm#`(Au%nT%XPa=qk)TxrlSaocaJY#q!ITOR-l|wl z3#?`k-W_KwNgI~Akl@S+mO>!KbKrZ=o|=)v4|`z zl^ynsT_V?E66JD|W>6x9B9_sPAfgcVR4A#{D?TkTUUUfG&mzgY2FqENbj1$FTb6Q` zGnv0EQMwI*fxNq2lgybBDyf(vJAzLagr`_WaHl7gGdhK^Emda(d#47EP%-(E4fbgn z_DNf+I4bdZG#>p3R#z44<(z!GF!>>;tGYk6;1ZMHjwJVMm<)1wKZ;CsJIpZm$$V;;sV9=j zJ%Udvk||dscl|Ic&Nw5QGxN=13SyZ+jW^5baTW({#^dEIBA-m^vP?zAY?N^}N!BG} zk#s-1%*w1>6n$>(a;D}K!DAMJmNvJWkLl4_ZaF?lo^9C%$i#8_{MeBU!)UycHaXqL znO)1-TZ*|+ZP=N|sq=Qh-xTSWqTN;=r*vfHJ{d_ZQA`UNN!0~YaF|atl4{YGOWua3 z&6z{UnWw^A0JG1kjL3?z@n9RtQZ6gx9>o=saKe=~U@RtCZ}#;WZKG6%ZhB%1c}9zF ziYAKa!&pR$oF5nLSriB%SZ?zgQ~qH7W77FAQFZetqu68_mxl_Mi76K1Ywnh8}&687=MF zD|O^5Yced&F!9VPFDs%g%Zn*1I9FabR8|}lSY%&bX;@x1>QOOTeiB(;qv=~MTA{99 z(R41TE~a9*w4$Tjr{$^<)Is@3_1uQT9o$3R8r z7>Qv@PUkp7*NiF65I5z#Sl41~S20PKXKmN=ao2_e)i)B#ZHDeWhi>HE?mEBj^^JOL*>}ZK-x_g*L`lh zmqonmLLBOncptkqj_$G}iYu;G%R= z{)*QA`ds3xwAok1T-KpM1Tm-Jcx$^T5fc3h zF8xm(2X>SPD*Oga9UD2H445$v(%+`GxH4#MhQc@w+I3RfRt`FeQ#+mvx>i!Th!4FZ zr8BPV@OB*X^Y8J!(iu2D6hhi(#W)=5IDE})cp+yv(tp@vd>GqF6B{>>s68UFIh+ZOgJCa;`ksOmY7n_GH#Woby?11- z=lc0s4xL#_vsrD@S&@J)pc_1MJd2*_l)O1Nsx>F8(s6zjwYv zO=n)zfA*FC{4K|Mt$=nN+`L5YeD;+Ee#V98xHiN1h0KZtQ>Qj_+ydwA1-9GYUYd7U zI(-WX{)V&T>9=+ob>!)DIKSx4x9INF|JG^onaZfo#I$$(u>bc(zw=8-v&FD@nh2+* z!Q(~U#3fkVQale$?9I`{@7-9Pki8eDjhXWtI{`D+f@2GCRV3SS9^H6yKk<^>8uUp%?-t`-L6_2 zBb%SVt=&KWea3u#PUpKu{OY3l>91Jo8u?E4eeL`@#_9Xc`Sw1i^&s)}L$dZC6YDXZ z>yXKXy_*{rIvem?-=GN_$TRCC)r&wz7#FZXvHp!1$OvE9qz!EQS+%LjLtXNHQ?_@L zCD4ePQg=(BvWxv^|K;i}JBclxJIhS@D}1-MuIO&hIcy7EU8bqtj+xlLd4YykcU$Vh zw#@pLT=kYh;Fgl^*6piXch)!WR&U-9+`R92Ry|?&arLg&thp= zCa0$RzI@z>|~Ixb;%cQ+0ebR`Rh9WZ)f1&PTF1ZDLA!CXQlmINP-ZNzln8Rk{CW1 z0R&DZ&A^~=&ABy{?V?&~B0d@t%=(O4TH(4RDGCB>8B+*iQ^do6xy7)&&8nJ6aHE)= z9?kXzBKMlwDrm~6BmFKZXU1bIH*YxnoC7bW9s-NjAT~F9+(YE@>46Z!9ox{RNdqIn zl5&PmJ#-@~lpe-Py1-p%5$NE8X~~I7`4cu?F9JUW2x9i`iGqw0g?#p|7r%TA*3@JZIqwJ&bQA z$;0sR2?=^!@o!eX$3QxQ^&lh^LmRckLi~~A@@z6fA!jzpr)u9q$Ydy}^c)()+}K{0 z&b&KgxA@ifBi&c#yZkH$7u|)Zu}}Q3jCf7rAr2OGBt_uEXPuzrMy#s%teGijWwJR| zHF+I@RD%Z;bF5)du}f^XZ(0-8gku6SpW~egGn#*OhCx*lc{hvWc{qWZLJC?(JxC(X znp!_i$(@2yme3jQa}Q6Mfu9|6hBa$ZfpAEjUBc^~Foz;SZ6qb#z;*dD0#CYtBb~6p zyXF-%H+mT%#vJ>kfs`uJE=wVfTKGQXVnGdrln-JlLrOGY8#7vTd@~Z?~sb|9!{cl3fr*LWyN&f|>paAqIqJjp5gCD0|fdEATx*i=J19Y98 zo#VW6)4;&M)YMe>i8+8)0JdG--2iOM$}0fs8XFq}MC$JD!C)}Jp3=m`1Yj-z+p@B9 z0KWi-0W<-a1t1IzD}jL}?&r@x!S**4A08fVZf*f&o0^&dkPcuOU@|~XfRNw5EdsOz z=nXI#05WjB+}zm%Fb-fDfFwX*0LTFF0U!f#2AB*0d3ANw!ouRmj~}8pl>tHm{BLjX z0QlV1)jhZH4dCrjX#h}qXk-+?HNb5E;Nue$z<2Z8 z;v&Fm0MyenvszkORn^rX9RRonSPhbbzP>(yYfy^>NdX`>fNNKGKY-Xj4v+Y5NCLP9 zpuMrV339~Y;SoUW_RcQ7=avAylhZOmZFG5Mb!%%2fHpvE0OKHi>>nI}QsvnABtY-> zjt)>t1=-~PEvEbr{_Ur53Zwmlr%VQ``MbiUj2H5{afi)^)57H?a{#C4mQeQlH@REy zCAPii6)lN1;sxfXTt>?ctzXiB=e1kfvBLd~-XLj%^V*!(Ih4{=IYb=kKN@#sUd%Pt z_X?kTn5$jnluK_t3k0_12ZP0&8_8 zF9^GG%X!v6SijBh=W-BQnfaq|x&5stSt&uKvTS$dkHY2t`cys6_rjg3iXXoUm)%vB zNBbMI?Y|3`2iq%?-PP4Ue?s8wQ_e7I!_&fL#*{0Gz~Yn}N|t@vo${gKvgB28I2hoEfCNQzK8)m&pVP zl9T1o4_2m3axDY4bQ*t)z{ENP-lGBk1~5F%t~NM zFYJ1ToRUrgNi6*Vf{^Ybii?q+(U?QLV4X5#ybdFhq`xZkSQ<)9*|v~qjm%^Zre0)j zMo6nNNdtP=$mNd7ha6l>e^C+eP#FOw$8JCgZX82A zQn)C|UCA4&xA$=U_m*=Qx}|60_QxEu&Gv&`X$ssX9?(qeOy8~6hK#Y4suD~)=3lWK zby1qAV`j1Hsh!s|Ap1N@P|O4+N%AGbhtbJnM9S_T=7^A3ZX~)>pmxre2l0uihz^l@ zVelEL^svWUbQlzHF;i!j*w{CYXCx#Y;+3Hzvs$mjr{Uc};}KGVZs0RP%@Wl2bMSBk z8};2T2XhxxaX*%Pn`?3EHGwdSGjs_jaKoEBpD#PkUYwlUcvEwcN!8^WR}DEWEhC)0 z2146`g$uSw;G3dd&K+QWP;L@z(ajL4q0m-!7-v?i4Ucn_Pkyi&I77c$yxbdgp_?Lz zyET?b>dfOlO{_0evqf&{Y#IqU6L+1E7shf1>6Jv8F5k#;GtnuO%Nbf6DRV@HB~o(e zqJn%tz#}*P43#g^XKvsTIAQ(g?USLk8In6p80ckH7AU2cv*-e!pS4;N#6n2;9imWt zLqvl7%to_FnL!XtOwWNy1ESDo5EK!6hwTEzFGU=@Uz!1GfJx-_i%HaZ4J2g1fdxt9 z==cO=gHNTUFJHa{nHj)z==;cl!NFO;vsqY}nVp@OoNR1r0?B!0broc0kj8ua`Vx{- z>KYm=D=R?`2YEOuHXdw)K)MFm2IS%Ojg8+)xUQ~#b88DQbU>zk9~lWqJRocR&cnNV zdms-Nm3$hTn5b`T`qJMIxHBJ$ib1Lb*|5F6J?}%|DV1h-4;W&D^axTtHaRsnFApTf z{(*t<$;rXt5s(k#5|f5UM|XC2N5{rMDsF9S8yp%+OHT*6_iO*a{=pBBep_2x*VfmQ zQ&Ir!2$))bUtjO(?E|SeAUG6k#j5M-0IjIKvlGyKs%vU|0s=d_y1*6+Waj3UR^PxN zu%XJ$&1-IM9vU77nYpm|BUm7$WoE@<6G0yC=;-Y1?23$u%go6Infcq&5?C?-)>2_n z(d_(ucw{t4(O~5=IzHae++0~*^VY=`tUf?~1{rv8c(}Q>t+cFsd3CkBr*~m-F(NwV ze{iP!7rk|mkns@=e>M)a{9Qu+U+leiG~DmE=szW~NJKBur6EL#OzxBTp8P)N+;i{x{d3PB_a5uLEQUqmkNw*F z_3ZuZe;XY7+erkrk;9=yhJF9+B>KIL{PZg8--APZ@oeBK>%W6T0gO?9Tjr%*{=zwZp_&tw`G{L@MF(#Ex7p%p{0{)zwhHgZoAPNTsFVZE+saFz85 zt;p}ItiRQi{q7{~qjb)L3RbkmW5Q0Xm7Qr-z4{UB~BM1&}36 zJ2vbrtNU>p56?c^T^mil7Nc?haBpkU$#`V={`c=+7PaxdRJU074tF<1vu}+U?H+&M zKHC~|%Xs_b`0&ixk&%THJRVYVV2mMbx@_Wy=yx^oC!el22|#XL)C{D>yBG&C$h(*Z zGYi$4hOp7>n}%}X#mvHZww%qv1tx0DB2cgQ%p%2tzner!a)>{OMt$k!jF82LnqlSR zRLo=9Si`tNRE5G!<27z09ws0)Zd?e^F$yzD(x>Ttm<;hD;r2C)4l_=*coSlgw*9=1 z+tdD4m{G=)IAzPs#ksJHt{z{)?q~blCbq(jQmFDc1+#`5=7ux&SmjO3A$X%=G^P!n zCD~lGEyX%%=?<%YOsbpTdRX2R+-F;1 zjwk(;`kJ!TqN=+t%d3sX&hR|rWFS%=3 zAFZ0Ul%!3Yn_rPtRO}8j*}eQu6XEcx=gUCF3p{?tt_`N3=GZ>Y8d+IOdMV>k2c;9) zYJs*9@Uo=A_nOO_CJA$6{+dUtAp)b@LsWT{Yt=oPmWh~N3 zSNiM8-4R(Q7pKtzikr?4(C3Ge$5c6!oX786rKk;7zx5f{s}sZRGSPQ;sMgrPH}lS< z+4<{FrxY@yBp&Nlc&AR={~&aoO?SWPYUs3ZH3dKCQ9tOqfciyoIOtDh?=%y9KFRgN zb-H0m-H2=W+bePPiteit9MMvf(GJn?R?`Eb8#fZ;g&H^SrgHIZY31zke!NpU%=;-Z zbI)TvzESqd7kGab@8^e8ubS6hZQ`$dz5c_Vce|CuS7s+!x>aU3`rNgvdo6m`c)#7} zZ@s#&qW0_R_cRYG-UHTfU)jS*>sHyLhQE|Mgo3CCDCnc&!XI7p7e{H?1Ovrs&=P+6>BniK}1tn!+=BtMYDkd8Rd zU!FFrGKd)cjx-0>k<>OCSV~}OYv!hKZVM%j=Wa124Y?L-=ExePrj-6Cnfft<(Kg;0uS8IvRo&0}6y>5-n^iGCV5 z%H&J01Z|^^!H}D?an>kTOcr2YQ|EJ>y#XO*eux6fOP&VF&-g30|jEachfD;l1j{@=n}u%2-ep=Wg2e$E8X1abJeA4X-_N$`IkT zJZPJ`>0I|M?o)o4bdJ=>@zwE6A$+kVemHEz%i~P)!KZcAJw3D!sWa{uSAiUr>Tn>p zQx5S3D?)ZY%`hEo?#~)4xN!KbsHZ3#wM&tx)Rsof3&E^OTI(BkOKv6<#6MdWzN~c-K=uG5t;#iFW$*XrWDFnMTmM-k82lEn`(_H~Gh#-P3m(rvu9sYfB@Zq-izK z)0Rl=m#*)ro@tp#s1y|zP@tY^s4$AJa#^xfCi2v3JC1+;NIc*Cp3OwP8T|{9X}jCJ z%~}KWi8YA?pH~z;-wo@0t1h~V-_#!~(O<8mFRRMjd~`nDAVWH-w4B1y!B5&S=L>y< zz4zz1j8Q^HhQ-FwsB-5*wYiNqZIn`n>W>6nXOU8-gyGA_ zX3;F5WfzqOAv~vP3OO9A@HrS*z;7iJib%qk=M84_(vmK0Umroh9gTlUAGV)d@S|2j zFD|~SR)O2=-I`~M5LqsBr=cy z@p`GQG8spG;j*Ql(|WCsHxzu_O*UA2*;}upYJ5sFQu!^gY42@bz3PV17U~Qg{wR!poa`iy2}JcPeHj+S1Gfkj??5k*Gd`M zMti~rzHWH3ydTvZMm;>Fg$Ix(~{H{5g5*rkCP;7hpDK@ad zQIqI;;_XNMfd*rIjZfUsNf`+UZaP5ys48SlWY(zR!yVS6J4ilQG1QD)V1;h9Z{^ z1mcpSKO)!`KO=NI#ycpNs+GAv_dnbVe#z=jRklcCvTzje`3pl!gxhDs1BdauY@t+E zXaY>g@nQt!m%Ih>O*%7AAM0{|s+z@}7>9O3zDi8rgP+Ne5xc=N3kz1RuZZjsgfv)` z-*mieD>>Wo=FQ@L{c4{z>O(Ze9>$N9;nyLZ8^q@v27(Y^JD4wMX%%dJKks^SpdN#! zNWo*j5xM>P(SIKD?ab)Oy0Y)VLf}!17}aNfl;0jzXzNLppbsI}B7Sw`>Jrm~L$V5= zuat|BD@fmWb;irCzK82xFXKX^*o>+oj%$=iFnDa!1h>P^Yp zpl5XbhC?9C5GcZvujz6Kgd7=gAq65}LU0=m?V~rt*ZW*Tm=Ysg2`~_a z!>0%Di7sNH(kYMolWrp?A2e9{B0_zMC4-npp{l)sGKZK@;-DiU=xv@rMTF~Na-f=( z^UcHCYA;N<7J~>XAtow5NMy*6a>xx6xMgUt!A78p8E69_c(f7Z=;l9v&u^X>if49& zgWF&Di!_TbIxfZ%7;Qt8utrI`;3jYa9!;3i;nU?rLQO|vg3(Z_{ZOWq^OD=}hnn}x zc<$d`BoIIaNw~q(a0GcO;hYb{v*n?;ReW?)Lar2UQw( z4fIA@Z)gwkNc0v3+qp!&MHq}T+BlYhzTLWO0301Dqs->Sk+~0gaj6O zWSwz6dZr;}4iUo`7W-i`cDLy1T0`uyWE^W>EcdxMcjZ_vJuI6$mZJ|JcTq1+q&O}l zIS$nr=W;ie{Dz_65f+~60&9%FCKanF6)zMPFCT`D=!!p>#A-+-?CB;ziDQ*HWAC0z zDC$XIzn)m)njkS1pdFTgK8jO27jKdpe_1cyhBt|1GZD)mrhAn5;9QbnQG!8OlFL+* zYhRLOalGeIvTbUT|7Oxnl4PA5Vov9hWvf%dc$2mI5~YJu^!q$-A0?SvC-|i%W5QCO zrbhbor3N&nCh?|vUr)8*O$(k%OifKJ)=Tr)O!Xp33oK6a)=RIPN)4GxbLLGCa!=1s z^{Hx1&(@31Nlnk&Os~6<-rnb*d?TaUI-`L%qp2^gD>c?FETa@JmD~R0Ot1_+Rw`rST;`;E#>dpGmBx%WQyI}#Y4Jg6Q|{Soso5J+ zxNmw{KZ>)4H?z;WXP!TYBjd}S-Nf-&XH)BEo>9%FvdQ_$oAdcb4!%Z-LpqmBKbPAh zmxuIvXlky&bgs~GE@~^+C`>OT-a|~9UbItODoy+f*m@)_evMRIZdy#CMC`hUn6j$a z4Ms7wEzz4zqPN0Dwe&@``9$v?i`?rM(MuCCuo1a0En-Y6VmdASphWnghp?rpur;Hw z?H1}$6UreR^;jR}#D{V@zU10}$vy3or_CjA=}W$(m;9!M@Bt-4K^{WCGjB$rh%LdW zCc&6+!B~C4cs{|zV}ay;fz&jCbQ^(8X@P7~ft+dnyb}Ir9{h!>{Kbs?rCWT@OXROP z=WST!y^zkU?N6@{FKsNzY1Yqs8GgBHy0l_T0kT)Rsa@9HbgL$>Iv@S&vCKePxzRhYko?|`P3bqj ziv9l514fy}vdvq zz<>Y`a%w<;{s0o>uK@wd14s~HK!67U1_US%phAHA03HM=k5d%_90%|qzv!5w9D+=Ja8xl1%<$&0NDYQ2XG%ia{%Q549MaVn40=<>N|k! z0PbUCYz!z5pj3d7Nzcdtss&h&s+w9LK2EI%FfYkz>2980z;poj0mKKe9>9G7>oGAo zd8#}P50Ai+1P~uUc>oUr+y^iqzi`eC!6S9-W@obn(R+<)M<6CphXVmKwG2HeIZu3s^hT(^i5!HCzh(gXt) zScE{BD4(DSq8jN4On5%5nn4-8Oco>6HrV88uaHw1gLZ+bTWo4&;GQgwpF{kx!K!$Ye4!l;zR@e>bDU>^8xQ zNb^c3T}&D3E?df{Z79$9kGAsC2}4LXx%gNBsqnxjo*{Il4XT28k~$c!z%z&?yC=4& zaO=)jF@HKvlS-}%qEBs#bi^B1#>gx&?Qf>|NjN$vIW8IWAWZ`X=m~h61?pxWj6J$c zHt#bwB)Z`9bLh_L!Sx?c&Ia`XaFF<4z~QeR2TTBZ97u9N27m}a2EYVB0{{nr2ml9w z3n0k>B0z`*Z~#FLi1AZC044xdoFW25^nXfnV90?L2Z#Wy0F(gX6GV3q+W(1*nwr|i zrY3+CfQwUZfS3(f0f+&(0RRG^0o*ts2GG$ULZ1Qz1ZltxV5I+|100fr82lF+02d(o z0&W0$oDu`z;?$4>M4Vc2zzqNjfCWGUfGL25@`_3Tir+`pL&K+VC@L-nOaMSwSX=}$ z9EZyROaO2ISODw-Gynn|&;TfLfQ3^Uyq}x`96O~!T3T9MVltq?e`O&2@89)5{{?=- zLDG-o0p|2>-B8W$bS4Ogsx!<#gbv0a3RXT=<#kh-_AX)>s7a|9v|<19)F2XRRkBC9VOdnb&(c~Adp79pO*XfGa;=#D-SW=z8oPbU7Y^j=DTMCoOa%u zav_AtH2Ns)YZC>v3Yw}q+K+EKk_g;-u$qla{nRarlqfe_aiPgXX9IneysnOD1kar; zNzAjrkhA_I3Yk}uo-s=EyPAL3GGE0G3M?rlsNF6bq9Mkp1UfAeV+ho_vMkuNp4mWj zAKBCvucKMQo>G1~a#{>jJWG6tCEuPYP<$^Dvl5N)hGG!HTzD9@-Ak_{ggir$WjhRm zMYIG|_EC??)6xnVIkGvt^6f;pExo%=fGlGVK2NQvrHG_{v<;(XUO}BB!5`i8_xLEj z4IxCVQ1=irrMxE~raLZ-QzR3^z79t4n4BTFmcVwMOm>zU9k!OqpcPJ3)|&&fy#5wu zMBP<+HhOgv0f{*u*v5gSCR%J~ws;92H>=BEC3SPg%EA5c8*y1$FFKb=S&Aw* za`|M?P*{w-jTJ#ciAgZ?4X&NG;&jynNIEty!HgI$(Ex=K)l8`R!T2s{qKOb(qa~#j zliP$L2wDRHNCO;K3T^&={4x5jOjR-Ltxhw#oQMJUsQMMYsjc2nlfONUU$FFZUCYxS zpEOFh(mtnd%3di_BjFkQ(%eFiBdnmsAHR7)#07DD1rODfqcAy~iEDI%YeFDSHvBL+ zqa>O}gLARLv2NYo*1m_RM%b^5TFaD>{M@~b+eFMGBs)=54r(3bT*}T0^rUP{W5a}R zG40I^C*V3BxmGm-#w{f-2&JW4`{+2_+Qc8hZG~%Z*10v;Lr#J)iHDek2!5Y554qY- z#F;H61~JL|44E`e7Ce~cyfjt?Rcp9fcU{rxK(L;GndICJWq&RuqKCRe z#UP@8umVn9LD})on&U54{==#3DOmth{+_x5xB$=qtehUa{^@(#0;L833gFA>k?WtP z)Zb+XzySaXK*?#%0muSy^Y^^uCvc3KRg5)ALqHb+pZS;(Dd5V#2o6C1~!lyf{S&iy(Z+Anm6?7gMr1i?Sz z`bMaU2#lKO2CWtYg9RBUJCt*n%X6V*8{>XOunwLjou#Vn8@J9oMm zHP!20Q=J=og?Ki)Tl0}kqIleg}Ql~dqKh-5w-wkPr61U zFEtLy!er_rtBYsdbk0F@;Be9pI9odXf>ahO$Jf->l$(W*qd&OKq{O9#`Li;DVyM7< z`oJ=y&QHm*2+w0>;$K{l2Js_A*iBnKVyE%QCa6j?>1I|ShqhNWG$mjZS)Vel6;|L& z05vs64B9B4w^S2I>@UsVYEoG9{A*Ax#26#TeccVWdWx) zjULaM;Vizn>Rt*oMa}3_N*VF^D}IY-x)J6q4g?mS>2-`MqJ4@;!B7f5gNGs8f-vaW zN_+1!>@AD1cm5wxLuR?0yKFS-W-zr}JDgNonnqsqQ$%w{}kM$kTu6%lwIR9fi2JX=Ec_zsH zWS1K{a`J7+f%xYhjqr`1`>)?e|J?6Sr~QWl{r42w3sCxiRK*a#65D=p*oa;lP}0~Dhn>^3U1R@+1nVtz#| zf`gN=CrX-D400P50;NaZ;*-H)(}c%+}bbFfx^rp=~Um^-L9eMb3~7cW8|8do{^5W<-HCh zaZdd(cSN^2Ps)VH&$U5de*S?~-1)`Ook$i=CDi06hPDn^><-8C?Ik4wM3J@vdRq@o z2*aIMMXP)Z2umk?^3mdvBgS?z2+FKt`dZk3xt9t}i!y1G8>JBuK)KUztevjLecr|Dw3>aTJw(1tZjUQjejeHf-bhWn|_Gfzgg;I#sw^1`uE5 z8Z}nj6Tb+-Je>+kauV!)yXZ=36lzLL#ei*7VnwYp=~oZIaRJnBy<;S_Zr~AA&7k=q;{S^b`k&Sws28ATK-2;u3xu-M+!;hO;A24U3}PAxaUgtw z?D({G@o&@OUuzG9K8ST7$bb+BA{Yo|r())BDh-nBQ!4{P*{R0|32#S7=U*Rls%Jn3 zecHDO^bE+OPumrNIzP4fK$oAU(jcsX@Cc$Ah>fQ+10ab8X*Ec$K~DX9Y+!N{C>hYG z2omalS(&!B%Brfr+4Sg}Hz1n^@$)p526^;pyCP8bAfX1?Gzh0a$(-iVr{W$2RS;T1 zWIlB>Agu=3G{~Sq_y-9!$fHliy^EXsf5@Xj65Y_y2-0UTHUPvuNTvVV*8Eq-$=@OC zpA!X|IAHDRBqCL+%rIf}qTHQDRh)9stXKTWQy+8ng>&ChQZL?JQoMN6f;{E-RcPsw zw!;{OWe$altf)Ke=+m3e8CTgX)T4rLqS{Q}Ai>VFyU&dtxzT;p3BJ$dkC8LKsXzrQ z()rn+_~?D5$rKEt)u}Mi{A9UqKU~~?p&4`V>Ro^R*O_*|GkF`28+PvX_?}r9LP15$ zT4FC)Mxjg}y{DFWVdR2QY(GQ9EJm>Q$-R@FuyP>Kq_@4FDOeWCqv@UOGDBir6WL1* zCF(eXD5_*wlE3_QD03#aaa=saiN%Hy?}%^7`5GL6#1n2Z68j;ch-0huc^1fOvqyuZ zBO4nP>{>7~!)g-Np8cKN`@JSX5VNK~!OyE~XhLBzT0+mc>utd>T0Rp(2%i|b2WmcO z+Hv;`!e5?D$Q-idMBP@9dzSp6l`_K<^~ZF?LWfvCiryhO8yVegH+Be%*C_fd0}6fK z@TxfkXHGa~%2**UfodHP%HS&UpYStn)6cihO~6@#=xlX5nB z@_94-dZ?Af*tVYOUl?V85WAQ~{Trw zGi*mwt9E(6rC^8bynv!pP=puZfr>f-=S)_(BsH$AeELSF%L5g_>D@pI52=d|r!QmG z=8abU{&`uvCFCkp4!ZPj-~bm#f^K&(6D1%d3o=O%TEW~D$X7u|+TY(_QBlE<5(Sf8 zL&L+N;gJf;svx8v92|nXCd0zRGcz+!PEJC@!oYY~U;h9|K0p6)`IoQAf^*i|y1Ga( zB0u&9B(%xNDbv%_WzU~~{ra`Myc~zaMMT8_Bd(^Vw!Xd&Mr}dlZ+Z2qpr8PdYiM`` zNQ-LHfoq4>op>rlzN_-%tl2C@LxfcWsW1y#c4d3QEdGW)G@s>(bNH zKYsjJTMOFQk8rtp8k)DkJTNz(U{G*~va+&?xdr=$i@V?Ua&mIPfLTs%Zb)dTq>StZ zUVdCoPFGj=^71nHd-(YHfF)u9!6EP7y=!i6_Ve=t%fB3-I3*?~egA&o?d`p>u?eR2 zz!X7YQBiJg?wj%P_SdgV%btTm!}NheZeAX^yc0kK01k_d6%v)0ot?d=sPtbMMgJfC zT>u=!0&uqj%JlG!CejKX+)ROI}QZ z3ZrkrA^+*hj6Zj17Ag!{AslP})%mVgC-4q($;VOrU)%Ef#TiXjryIc?nsWp9>|ek7 zeTSxciqPxVq2LZpneUf=@7Pr1-g0{ZI^Tcj3=e|N_wJBu5v(^Ex7I-Cd*PqX_rc$t z?=K~PcfN~<{O)`=ngN~fRAgSD^Zj-N=zM1`2A%JDp!1#O2z0&&fX;W81JLeua1tATpd{5+y+&`XCzmrT2la zEI!2;D?g!Z9=pR5X6~sflxh^OkwpA3Vd>_LhpswCsrQrgb$T8qzqyZCi!_ezGfcJ6 zzi5$mF}H8c(f(EOT-uXd70XQidFui~?mLU4*%&xq5sq$K*gx6BpBD<}QI~7W!z%G@ z<|ioiE73b`pzmjVPQ}3J#Sm;;MfpiKTgCZxivi5^c4=10c!p2Zd?hs#Hhe_PcNVwg z+hk~3OK`M03NJO+GK-QUyfise^KwxC3`ZFbee@=V+nZW?MO#7Jzv z9h8Iz`@C+B{>SGkhwv*lgsVc$_Aqc5AXJ^31nD5)m#OTm{vzMQ>$w}QTJaKI6mhBP z$bw0kDpYI~!$Bc~cC1-~8En0Vnb@LVQC*9~G+k+9zs|vD-m=sD#zUR2mm}WJ33~A? zx~oX2LA|6N-dghTHEh(dtrvMQ(}{&Fbh^6x+S%FJ_D$-WLLHaW%Y>-O#K=?#ZniLs zHMr2Q$WhI(X1ctRavH0J=p4%MjcSv5Ul>36xVN5DC41d8)TxW{XjIeYSqZ&(N{`%-N!Wwi&5O6PphM zT2ZWH?8%hwD+#uK;0~#?+t=BB+7=aQtJR)MZtR51Zb3~JWkgorYE!l}nYmRd5Xd=y zIojQR5$5>?E~$BS-&GPRLwlcA3szE7+ShV8d~F0ayms#zbi2KE_;c~jmFUm?qO!X# zID$Ae%rSPYRi9{7l7Qwf!_Z?dQDpDgN;x^Q&r=B8u(8b{!ZrA3l z{KY7&7q^TlRJuq$I`O&Bv)4(mr@b94!>Ay;D72<6wm-Lx#Q8#} zbk`z676;*ebREhG#yuqx#u1opIOUzK#L9%XB#w*06#2I`q#IyV@U8(PSU53P<*K0P z!^AL0%UFinh$QYCgZZfV%e{8o*15bl$26+*gZjl}g@}SJpi1Qs-44 z;v7%as4kGG<<@XY8_L{GNSFP&d3m4bZ7BV|Q>=`Qy-~^AXQTzayYp1vgHk&Rhm(`24RT~Q33jk&M1UY3qTVREgtg=Ldo%G0`M*>|n2 zZb|FMB}wEL?pxVhZqkpetIMrO46?Fgm!1ip(8;O4YGqH>WZ?Jxdv@!prQW-D++Ap8t>LhQ^UxYE~a-VDK$lgn*Rw!eG!$=T+ zt_S#2%(Fs6p_~xzKRFpl$WHy^;NalY)D%d_KnB**((?B0TTrWmG9IL2y}iAlfCqU@ zO-;>d^$xTnsM|r_0OTXc$v~n8Dt2%^0BBhI+dcsjIB=-|NSJ_#1eHHXkH8@m*kB4$ zBG9)07MFsm8)Psb`2!aZfIJ4|D5ob`pyZCi#)4$)+qZ8oYHH#Wlaf=@J32ePG5#R0 z8XX8pAb%PsLB(KQc($)bQ z0%TWLwGb}zBk!SuStfM2PJqr7#_A{Zv#GJi2T_=pbTVN;?vaU-0_~24_^t zz+w=Ll57y!JGK(mPGu#Zza1)K}3nNDy$As}0!SCdnuMNsU1bikrb zpil&oE&KW!FPl7h5jAen|0i^N0Rkaa!9hhj*^FQe7FKO?RFn`?41te%TPU50?plX>cG?2Y+gCpc@8_$D4m>~uO6~rFkAVlQnaFOD65Pt$W7u_@n1bvhr zqGyGK#nAa9CS(s{Zz^Zc*y zg|-oKmYEQ_LppgE)1Hxt!Kj3ge51hvn7-F=ezC0$w4fJB4xA17m{*?ilO%UmHYx2^ z(KEilE%|?4K6MsC01=>uYCz7ywEwqj9{#h%55E^Y{PQ{e9?>iXA^%%^#`k!2O?lN! z`Opu9uG~XOX@IrvmoJG)UlJ3)Bqn%Cj9*Zck5h=3jziA>p<4B6Rdak$@44(?oj?)kDjfrdi4p)%ulRrb?$?h7vi zXJ3X)Hi!0BN0&WI&C1G5%gRj6%1F*k2k$epv$FrZf$|x=foe3rpa>iZ6_u9%yQi$8 z_<1FG{=S%3T=6)$K{uvVEuu{^tX;~#1?AJg7yOztWr8JViLqz{^?Xa~#V709j~*|# zg1WXM`Zl8nHe&`hQ%2XHjW4|zo^0tK?dl!q?i=hK82;xoFf=+m^5)H(cjND;-_I^g z&MksxY92gGf1cBi|Mlr4cyVcE7Cei~;QhjfmF3lS@E&|Rv$!(%=f&S&`t!^zF3 zo`nyqODk)?dkfb#*VZ?|`<2!8)%A_v&l+fw{{5v7E2~S(zaQ`c`0D@ntgWxCZLEVM zx6O~I&ldP#<0E(l{3vh<*zafSpU>9D*5<|*SfufGbE{)xtA1na1$fpstJXFuS5_-O zEI(gbdcL$!vND;sHk`XrRr%Tc-B;PQZIO>Vil29lzV0RN?RW3*&F}4P?d|RCfth{q z22ch#2@s9P{{%?<|M>>8fZrwRe>$8^{UJZ%UrlG=wv@kH9YIGj7|!kq|68IG82)28 zJFL3s_i#2n3)t5@UI?~2X6DzFyerjB)cC#C@qLAQ_3t$gpX4il4`&Zdl!4*wS_|j5 zK_P#Jv*$|Rt8&(X5_O)j9t>yGuJ5W;t7iTwQM1VP?lH3Z65GxX>RtRWf>Ss%IC&vT z*u3s`snHM^&VJX6qj>$M5v+M&yZ&*W;xZ?dVUaP}`FZIiVb+Ft{`#TjMyIk@@2Imi z?z8N!PFB}@55K%Jyz#aJPgY<4vgN3Je!MhUzP9We127=mm^<*hSU~Dzp)g;eSs&}=cM?%NstT{ z_kkihpPrP8vuFcK65%L$K2&n8cPvz<P zfTT{wtOLR7rK!LvWTy3;LamOcShX5lMmTWM0@$s52~~20H`%rUKt?GWJ|t3aprli0zHfVD7yx2UciOq^Z9a9aIUC z{PsrV9r>c8bd1d75y2Cg8>0$my`A3}hIH<|r<3~WJWTvmrndhMvA@KCkn88~Y9>98 zs7oIZFw~BTNRlbzN672FV$blY&VHW>wB$Ni`Z0FD-pw_A#c2u46n(gY2zx2nD@ar& zHx{d`akNgP=i^@aFy6e6itmYu%Q`mTi-$&djE3QI*?WyQA8`?~(x2-N@YG+jKl(_0 zeRZ~idOLxvRdT2Ma?Hs}|N9}YZ(Y}7-1Z*ay5;?K;(YYa@o5KR&x0qv4z8OYv~T&$ zuJxStInJv1RqIekc=3mARST8x((Xvi7@ajnN#M(Rnl5<&vSw-lf80|ODdtZch=M=l zR*~yN`V)t1F2c@9ibjdS$N>Ei2mV3iHb@`lPm3h?CKG7;BZE-1;bg+}9gN53!Dp*; zD6a-6_MAJ@`W8~>@c3M@0 z+aTwc`Jx`#V=a5HlRP%!sR}gBE;f`lf&ENhuM&4}WK;w3IhGrJs^x`|`KSO+ZtFe` zk0+PS4V4%NvB3``cjAlGpP6IEW}97@+|wUfiqYa)d=hC&2hq>+%mu2$I&4)e+*^0n#}H$rOImA{Ev z`!pswkec99P>p);WodQ0<|fVdBHI`I9aY)Y%_O(oGs2OT?GlgL5MFUkkOh;Jt?o?% z%E&WhBg}Nuaw>$Dpl|)nt^LK-|0XuKx+q64F1!+pb>V)i=j2#;hl=rSaqxHn z*GAj<3`T!@j(t9^pL~Y5%?X0QdPelK68#RnceOsE$nouV9V%%|*p^(GDha>Q5Dh64 z`gPfrC~N(xrith;dzFE7d^cOA?md-gFZC1;H{v8?bd`0<(-F5b3n-b2i9-{JTM6jg zRo3fct*t4dTQS!jn5HeStF63`U$A|kX0S3;SJyx^_sD5rrsH#6ecQunhXA$N2#WfK z-un}e;|C1Y1nV0|yWTkEsokf(S>H4{G~!Y{aQ~}aee>d@Vb>0|`O(PwmW`{HOyfUB zESnBq{#%JUeeh~Tpx1rsql)O{PAh~Gb#4f^Fuwaf15a1!e^y2rcE-GwSi{`^oca=J z;aEF?pJO1Elqs3#VTW;NC0eXyN$x2_CyzyCC^7oOZuD{&D!MAtQvJclOvx@u_;$E~ zx)I}#!yaLcTcW|U*mbVA20hncOU6&h@^L-At%DYuU|$r_h~4TS-}}+mF)e zgmajV+Mh(dZOpa^2fv6Qq@|C7(rqtsJFV?P*3^+2mdCxR^LvHq!fRL4nU@FJ}JI6WQQv7h$@Be zB@D1zDR8E7+|;e9u)PZ5am4k`!k<=tl=);9Gc!rh=T!av>f*&x>1k?f7nwo1ufF8R zJt#l<{9<+j1B0fSh2i}Q+b8zYXQk$Hlo|@?=B*!A|5!5hs$*PYabRps8(qWfToZ}@ z8ZNdpbNv0_8J^|kMA%sw(+A-CfDO#s@J}# z#T>igdeiMd9<*9FHoX;p8tD5Om~LAhmgL2PV7C%6h^} z=HS+ut-tfq{KOJFw;k|+Xpq0YZ;9oWX|J00ZU}FkoX9ng!k)lA^7fWZ3jc+PX8e9- zjJNO{#iP*>pM7#F(J!qno^uBHNk`$!{%&@j^S|aNvy@z4JbUFBBx-!v=Xx~Gd+Sq? zsPWrj2aonMcpv-ySIvh()>3b?9o*lPGOw-8I0zh@97nr59|{YxSuYMT+N6J!W;? z`SoSrZDPM=OAnHDpOpj5y8}-LcE2+l$crf$c#(&YtKZ>)FWscic?SOrR{nelUltzU z^@~1x#J8*_{2$0+L>XM#)&t}>0>q2F$JhN`!A1kRy6`kcV zZScQ-7-S+EZ08?r(e7^%dVa`~_ev;(-DGeGrzcqR;KtxtvmWGZW!AkNf?){tm;ARi z51}cc;SHfd8}24=Ljuj=J*eMn9+KR`Qd0h`d6*2#It)wQ2sI`Q;0pPiw@?z$l5h4=68g~=NK(8WOeT84XNo1ngr?C^cgk+M-17_ zHq0ACb_r#iyI#ytWE4q{L78^27NGF=>TorwhHe z3w`(sZ$gOUJPHGCic zIk@rt0X!A;ABMB>FNA));Qdj>)-3C;TP@*PeY9`#P_p{ua)`{#ec2z?Q*<@*2KT{6 zhcTBLl^H|T=9<2DH5vwnnoPCr;Frz=yAMNAXSeDqh?e3J3uAjx9H#C+vPTN$}6%FCV5*|@y zmogPJs}~vQUvQ7(ZH&uTqt-rWZ4{P><+h%lNYo>FI!E6EOSUz^!6KCIyc26qNK8W5dkzG=fW|Ev&?vb}m zR=Sj~zTAB8qkH6+8!xFI=k*w58%wnkvbP=;m+X_NA4J?UC(SEQZ>BL#`$1AVJy1}- z_3{TdL37fh>y{cM0y=r=ueO?7to2(WxZ4TJ9<@GoX54lN?*^v5-FUyfU(yv7c}L_^ zv{*}ZqNj;?OGn+?4q0_Iu<4;#tW)vihLTrjWOwF~bfP>W&iy?doMFtRq-tGDr8Pq?~luL;k15* zR7-s;E`2o#nnLQ-sVB%n=Kin@m#24;x-QxhiBNI{ZPb1WW35*5b?qvdfg#5Mt*#V> z=KjlP3H7fdCFs(9t+mA--s>FHC>B6U?8EzK$)9`m50TfrR)0Jq11VJR?=ieLtJr6h z*q?l1h>2);&bj}?;Qib()iHJC95c*md+5x&o4VJvCkAhhsgGPv>_3ABP0~VuB&OHM5DLThiLD`RDKfp?lrt$rqyLQ@U4vF9Bzcw zTbqLd|K^k8eHcYwQ_z@Dl)fO#c)aMi*k=Qj_qgZ7acK$(nYr=TiR0*~JJ+th714gH z^vF;?^X;#|x9Xp-tNncYb>(eT&2=5`ce;BF=1{rYSu$>Cd3(@g__T5EB&rA4|Y6kfgKN5=d)BZK7$<( zR~L3}D(*d>pTFAE&thtcenD13%*jOL1*uL&3K6mj!8I01Uo9${zqp4ZK(a1LI}&lH zFSrrT2Rg&gK9;78r!gR)LCA`m$SE>bA#~Z6q%lMhIBI(Po*&*Oj9C&LFaie>;SwkD zm>VK7eV4f$ml@=em9z!U&(m?0QwOvWP!AIXR8k8HDKf~a2xp0Rz%u0Q1vDxz-;Ng{ z3Al9c6*YVLYQQqx^>S)!S z5J?sxA{Px2UHoRclSrP%D&rDiVYG;67JZ^DP1e$3kR$9somzB|nNdTgY)|H}9F=lWXw*Y8Z*uwQCl zjkaSHw-Lr_#I4)MW80K5=aJ`kwuE*8#@(z`_{$<5?(%W*uj9(| zKVF=dd$zUn4_0qXzqN}qC>=Z40*>_#4AbsQZ~MN+7$Gxseb_-(QO{_=ZsgM2>6|s%jD+|Es`r+H2}*;*aJ#Q?=JMvaWjL2~~HH0=d_tSg)tu*}R=s zLqp@zM3N+=bobfoCpO}If=baTK157O8#huFy0U&U(%Hxt#+1l%sMdbeZj3CqsBNz0 z*MFtfr(t(4<)P;5Ad2%!8M-?kQY?PRT9nZ98#HTAN%%KE9oO#7jK|}HHYY{(`#fH1 zJWz}%y;GmAWAHSp(dy1{-VcBJj34J8%)j*h1!p~3&C%&LebBYn!QgmcGxAKq1*cSyK@avk!Zdj8%q>OX z>lqO8$MPmw1i{odEy5mmYZiF!P%j(Jc2ct#WT518Ftj7F@Th$1?m(N2XX4xr>bpH$ zo(XX(UzE7UF3{DlyimjI*2KMHD19-|pxHZ{-yr;OW#>AwgZx%+SX&_8sqt*74Yr5Z zvWjqIeYi&Trii$8e7kgQhseNOi+PQfGSw9>h8q{3)!bIQ)Fq~U^YUtq_N{Br?hOAz zU#PvKed~JdxMH>O&-e|!pbB9mIR+~z9psomqI);13E-a#2XQ@n8BEWxbmzD0V#1>Hw^ITuFt zU$y}gDZylbndFyRiVhY=U&YaT{kA(S?aRvu2|iMgdD zZ5Drz?SNbHUY3-3l0|Oqyz+zL59Xjob(``I?I<9lurg!l1-^M{)tU_zmn%f*+=tw+v;llL)+Sg-1_R8<&I1C zjc#?G_HR!J8|-mJy!v*{WXiIRrBwGC96Jllk2aI~Ga4Sh6Yi9C>bV``5^zO80LG z7HK!;l7r-a9;YQVJy~XI{Ykl6z0l;j{+8&<(WN5Zw+AbSr{8+*L|jRKyZt%nty|${ z%|hDKFC5ou_P#DmZRUUV=u}XfZs%(XDYw>tXD}3qtfGqBK?_D*(2C1 zEQ3iUrt@TQ#|UPLmq{_S*&?U>DrHC3S=ZT(MB15R`NoWRK5oG1>#o0pNnnvaLZ;$+ zC}MZ*t$5l}UbzSEJ$GNxge|X_4e)$Wx^>q1Y-S0J%hIIZ0>2gK_MTIcbu^sz=iNZa z`zm$xeLoxRyM*=5`Nm__X99Dbd05+XC3uq*ldNz7UPI7zGk!%?O7=AP#pt*6fIug7MW@J$W7E;_DSc@GFY%Nxs_OM+}^jZTN^bfl@2 zf}1F&x3_hsDzwTHSeLb53fz0|dO<2K^_7Lt z4?fv5t|zkF6U&DxUqexO5RBTS*J(jzT&ZD>%AC%b&xkt^#pWV+oO70m#fk5|7S>~z zZD>aFsKD4Zx>ilHVgB4|Ft!tiHT~X<;L=$8NLZ2bCq*QoV)$mxx^e>PC7uli614#id!!nYT(I{I5xtu4=>k}x z$;alsfRd1MRb#S;H6h`n8vy~ihWK5d&Ft-VUoJPMZn>Wl!BPHK{k@s{=;srWm!5NZ ztuKENQ*Ca!xo>Ymxk)8}!V(__{J2c6|L_ugCQUaE7LpD5d} zo$}yFLSB;jC=>smG2GUg?>Q3%aSM+}`nNFme90T__;E z>h|_%lZRqWrTen4j@7k$NEX2c&eR(}&BZU)kysV+Qfa*EiE!QS2B)uo}ZX8%=*&GZCCAoYho53vfnP*w;pOg@ip6azf-X|ha+Qgik zTixf$HMdUBFFQ?cO?#8;Pl=8uQrUh~GpJL4xFoBZX6T;I&GzJ3kn{}GiFlWI@ejLn zua^RE8{P@aZOM$w{*Vzq=wHVRZFinNey4h+;v*GAtMox}{Z4WIr@L}I&ls#O_6u*mED#9~pIfJy-YEojVg9cv0f*fxTrb zXH$M}^X)VGVpkUF^Rzt_Ycdb&pFS=AE_mFS^wdzS)AAgV^iWbRP1l9j4f2akV8Bou zF>>D1PoD9ukPMeNBJYeR%tS`4y!35wQmyZgw>kn`1`6Vq55->;G)Q0&^VWfJ4ngxD ztIw%ci3pTC#fmdAW{bYOQdEF$#>kl7$&Hy6mG_nK=#huKNMNRN@+u_qXf#1#@VUB5 zt@<3t)5*+jkx72M9xVdiukhL0dj9vqBvD=@R~_C;VGweQe$>u#2Yxwdoff4nQOhSS z&37;7zvQ#|Z~^lJ{Rq*R;O>8c5xtJMvUx+nR<~K(s@cX#p%mNlJh;yJ>lJk;`Nx;! z*u6rO2ClCA`CS;1-SI4E6ReJDkt~sJqbazYMsj)LH8@F|4c#q356TE!$C!fG94 z&2;K5e$oJFxXTY@uh_LIS!5HxKczgg(QzNyd3Z_r5m#rIXRB*rg0ot? zMYysDOTw_{W#!<@E)|_x__j{3hDLc6gaW(21X{6sv;#xim4Lf^M<+y!9l3b=3X^Je z-F=lna)#B@{`W0I%-E4vCaRL6E;8#YlMShu7++CBg)57+-V6_knRpSdcHNi+{SZa| z5Zw|D!aJ^VDVnrZWOl#suTN0%bLG2`<_!8=*WWOyX4%9izwb`9DYt*cNAeOETOptC zAKxR6R7R196n5E?<>$VCk@rotxAm$5I`FwjU=+){3zxXdE0`~a=#aQD z`rknIaE4{>^<<@+oUU)Uah|DNKCw%Q-QVAfrA6Kbc0~7%PDGArri{1s9uYT8A^WCj z`)0WM8ZN18tn_w>b$(-cIcIv4>v7*gO6Fo*A6Zu4(zT4`wm$q|-)eaJ+IHU#tbao& zeUqzyS+swvFl}42f6=&qS0a7b|JG5=t@n3Q58L{WhWd}c_2akuPuf!UoH-%x0l4G< zLU91Oa|>pBbJB5uC}4m%et;xrfYhMl;F=&|`@qcL00l)F<&MTdK|hL)2gQB6TXgW$ zPCB*L?Te~|^y(=L0fR`BL8dtlrpiHF!R?TD*Z5ylDb;pWwA{}7$;r4Kxu11|XMAul z^sMx&teOVNV>JGQ%)0?@x^q%7oHC*Bj>emftLZ+~qyWROsN zwIn6C?@~Bl^U>w8Y|*^1QlUwAE;uGX@qHe>{*d?5$0JYpjaaQ%g#z^m9-8tCimYwk zv!6V+K6x+Sb`rnqv^*#qb2gb-i+7^=R!&a3ZZ+LcemvQ0D>`14-rJ3ipWWJ%-Q(}o zWqy7lnPT03?+3p2v$t)s&(7xx*a+rwGM0O!RCL6TBH3SSq{w(AaPmb^z(`^ANXVNP zp_L;A%_HI7FCykfrUvgVi}^)!kH$!j#ww1+X^qC4jmGT=M9y)Div%X+jJ~KGO>Q4e z`81k3H=6wE;!ppM=-AOT?y)S%v6qs8=~^E$=xQ?+$MOQkUTW!HBD+8Hcr3qttZ-*E z;mz2nnBPNayo7GNlzY5Pa=ct|yn=hYzJjcwNMJnc29Z z*;u6Ccq83-1NTHrrCu}ZcvI!@+npMm;>1Idi7xJmP71wt+k4fv=QVI32C#5h>!Zsij&RW$nG4yF7AM4^~r}i28O<)Oiv~oBPL4- z48~IR#@i={CMRz#8BmM)#qbfciV(9pAZG&%`@9VoxP!k{X3sTd%(okwV!kY-8qN|t zxKs0G{gWX>yZ-PG!xf4LzEOrt=ccyWziitM41cQGb@{T#8oZyX$Afs0o#f z9|TOTD-s@hpIxhDKR!o-Cz#s&1QRtPRv3ZRDNf_Hj0gk!b`;MM^N^72PLV1RPH_5b zu@fWG#wiG=DCc#L8l|X*iD`0;gp7Fxxp1*RMi6UqyXpYbRlXMqhOjO$4fD#fl!D3w%iZ*a(^RRo?EaVBbTb#fQoz z@Op! zBbIq={Tl+-M5M)YbIVN-8m75lX1UgnD-!xjNwEFN5# z@JsXe&$SG7U0iQi=!;o=W@s5!w5W4lKVsf8#&9t*@J#Tt^l0<%@lBR-Jo@oXi%E9C zt)Qqi{QW7V0iQ2Zkw*GHS=kKT(R0td0)&5JDr1h&HoxrT`^wa+95o)NDJcr(9L zv};v73@fSn-q1+Eit#U^TrSpLF0NYop|7!|yIjMi#+BYLHl0;$g@$MF z-Qd~>&+3N@s~_iW`VDV&*$E9Qt$q$%9l2?nh6lfNz<9^%#PI6m{OXt8)hWWYNp0Kj zFxwqbzv*FHtBvavC6wP>*B0pQ#weA?eb)FiD#oAr$~mmry2Dl}?bdef7TE0eOl>=4 z>=tqZ&kP_IJ8Uq$ zD3dzKhuVKPS6*sbXSQ71JueQo$I20Jz!K#5T-SM_4F(m2?b7;MpxwcIsYLr1i>-QhUl<7g1f`PXxbbP zwBK}fh|@IF&iElv{X@_q;B?-PmH9xihXnKsfotXgBI^jTGfqqxKLM&O6qUaygOgB@ zlfc5}+~(%8sGn5l7PG~ga6&faBI4qSllTe0978t3B7kRPOTKeUFx}}}fzxvBmSV#8 z^}KD>gl(lOY0AZED%IOJ_qK0UKUT9y|DhywlW6CzvWqN(3nlkXtJscakc-X(mzhE5 z?;blkojbSEcc^T4n#B-W(5?}~t}*Yf$;I7=%Dbk#y9Rryx{+xQ?t!njjM8_Fi+3$M zUA2r{sTCbV{B~`Gcdg<CLkTbneX5SJ4x620HjEmi9S6!NW_B_@fOaItQ&cr=`$H?neJD$hr|8o#`-v+~);j(2v=&3cXKsXxQXX5P>BizlDX zpKPxm?pU1kDxd6K+1yWfDzkU^Q+edD^CaNY$+6oAo+uawC!!Iu++c6+g^M?biF;sg}&*57|{t0kPW_)z$0i>EI|#_h+- z_buLm427WK@JF;fgW0MHVzx`${6qP7^4MgpcFue%)UAHJ`hICga3tqmWZ*gLU7@iG ztIxA6)^X=1Y923qcyoHlR;~WY-jCJgd*=+ZpAwxqZ?j+0hZCk2w_DkFG;SB;xLag% z@Z(yzm4mHYy*l!-=WTyh$PebU%5O|X0aSl&_%vBVNQE4clGe%Mu|v7 z&Y&$%MCq621abR5iFwYik;qHMcE?Zj64#06c($L(>~738+y8lg7Y9x#UI`jWv;sFjG zVBY~I9^l{s*S~>r2iSK&nh>z^fbb1)N%(hg5b*AR)S%y%9bm+P-mC+o53uzBk2Y}a z0RIiR%6v{t5?mn$zMqdnL%^~FN+iJRQ(AiEufdirEg&=lxOO%+R)PBm73}Jj zjg0}w$TpCV0lYiF_w&HS6!?CIhT?%e2;58t1|Z;!E-SkVPyW=}+6pW?Rn^tNmjkTX zzUe+<^O-ql|O&c-zxxaty3^U5Ic_Ymx-qf zM3oT|FspFDInhucqo|A~4uc~^NeCIfSBWtqMbgu{bKqX8Mnjy2aa`94u$VY<+z8}2 z_b!%NTr`cA-59P6m$%a?Fcw`@2!aPQuO?<-yP|KBC`9OPTWUpXlv!0WXcEO2D zt*)Um{ZNEd3RlpHI1?C*h?ur;93@Xg$4b)0W2=jUhLEH}+LpM0&^8iZ-T_@tj3ZRw zQht+f02eq-v3TLK?U9t-oO-*7oUI=8W1>E_jXndzgx(v1^Pz^0Gh3oEh8jDSui&mO z5pwiA&-NKVY7hIuw9rgNQG&Tj#VZkg8^)n|5t4_e5TadBGSsc~WTyFwN<<^W>Cj2i z#TmaFBGih3OflEcLC2+wsbLUHbUO)OU&UDhA_$FklVQVf0_tR33zdJ9sHb^+KaK@r z%roilM;Y-XcHJyvF5Qv+90X2|V zq>y$`BN!mlX$z%)xN(TUYbwMHiv;Gx|1Q@6)PO(nZ)f6foc#lBhlhYi0BwL=fNsBS zi2x-aGw3(q0M`KB0MP)~Kw$E3q5<51sfE9x2Ji>Cwzjqga0W6F0M`J{0MzjKLp~wl z3o@7a&xrs}qJXg2Z?pk7V*abwzo7=)hyg(%0ByjT2waDNYaosda1D459h_Vm8k+#! z0M39h!!IBR&<&6a01I##U=+|6(CV`MRY0r1-_w7-__G3lYg8-{8imF{1i+lw6*Y}T zQjj(bIF`&t1u`G&KK0=Q$jcFV<+H* zd<&`4ua&Us!Iw~B`n4|5>*N#qF&US~#iLAboQemI53OKyEtiA~^w8Md1tJHH2b;+2 zll6^+D4h0z*YHmK09=W{%P7@ljYK2Lpb(6Y)xqj0T+p;hS6Fv zW?4arL`I4%&ygliD!o4^!-TBdP!tN-t{3+XSZUeh>1uAhPzmn2{+*<#cpa+@?gTRTf&p?lsoMjDHYWc%-H`zn0b_?a z{(Hg<01TwE{0%T5#sI^90}LoJKrf)m0O0_@0L%c%0LK0fb^M!N09^oVK!yQs0eS&k z0fhXGE5Ij!E5NEN3W@+oKyd-u0XPB0^&3clOhC&4AOZLRCIOc=01}`hU=rZp9}fKi z&wtbk`~@%-2wn0k-H`_P;N)RMl(edGT^b;{k@M`$37sfo!Z0KXs%duQyb3!b{K|nk zgR310KdV#H^;MCW>ins+aA|SEP+DHAZ?ZM9dA@97x)Us8)VUB0(th6%jFZ2StH`O= z#SS<9^jg}@a6l9W_b<{!V9t5`XhD*j_nK&wU@&8qJf~{fAp{XIiWL62Q4h!6O2T3( zp@Xa0gd?rUh(*vD8`lC^RP?!Uwc_8P7$UVIuUceC9r2yl&r$brn9ncCrdRpoTY`sB z>s3Czmv(LZ>iph4Utz}BSJL>M^3jmmwuDjfz3cnl;NaK;5!ytpiB&A-!H|I!{y(31 z&P@@LIZq$g89DBk=eskfmwq8A0dvvrfX1x+y^m;>z`x-VhAKYsHv#|EP?a~ zfSibkh@)ft@iG4M=gg#}B#@p3BC^EA#iOI60jQ3Sj|T@|`1`A;rlx{(A&^P{Q3C^6 zAbFv*v{YADH!Tg6eDYttdbP5$0uF!c>uctH+eb&o=6yTn=H}pd7aJQ3@~8mb0I_aX z)o*UD@zie4&9%{2Y`g%|FIHF0dchc`F0`{P*YDJ|$y~kya<;I3Ac$+= z%a_u!va-(3yr!m4~*UjQ&BhlM>bw|um*u`xg23$nGCD>o-6C%=8`7QY~kzNY*; z01Q>O(cK*bys>7zn|JD3S5}6?!VJd88%IZTzkF%eYJ3NP8Ws@&lEC`=6DKC#f&j45 z(L6^d7hb`0#_xAVN2{~4UViyf4#L1NI6 zU(!lr2K@W9YD&!p2N=7+XQkHF(SnIYq>vx*VQ}r?r|%k~a9|2`49j`u>jlwa5Fzp7 zrHK#>CL~PO@(%gN4>JNHN@7bXe$81dj37(tlc*AIkb+W!&uq+j1`EN+86l&L5G^8| zOClIFdoG62fX;`aq-9Qv$cm|udt(|4i8)gEys?hKO*U9N?e2t$mEdX#jA+oIj0!gs zZgt4`kPo9x(~%mB>fvZy()nwyjKMV?YfwLTf&zQQ?LwX5H_e3Z$M<*V;IHNFc%&GF z?7MTYU)khJY8*$rn2OEM>r}6O^|q!WMyJ;7ESKcq5hY(HYhC=Kv5_Y?CyzY(AHH2S zUrVdUeO{jPTm7N|uI-WZE=+krq!JlV6%;w-;r#gy3YZ@e2@m{9QZwMRBq~rVnmR5M z13%+GfMzCOwak*Imq4`;o#{ivA!;rWUphxK#p5>d_1)t_vb zB|emq#wJv>eKj$MJBwzuCfK;l+#{6&G-#+HKf;22p-v*T-P|z+Z zEdzn5K$E$7c=`tff;u)RN;yVGEjC8|uFwBRy_$a>=fC0#00l$vkEj+R7@vMuNoH#h zih-0EU7FPnqFM}TQDBfu@F~eqmfFpi-LV|kUk!C_X5WYsd}v~GP{z|5Cua7c;?XIK zzW7TXP1^^trW%=iVN2J>9B|56s`teVbTDXGq{hp>6w(YUIGj*M!5ig^z0VF~(`Ro% z`+}(`@9TQqCC(C2N@-N^;Sz+g$Oo+o?{%sDhzLxtXcXdF6fmT;v;&vBu^5mhdSXW` ztMd?9ZcF{ZfrZ_7wlkXdX<-9|UH)7`&BfR}$}vRj#1Y10`^0hS4NsV9pKPW)0%Ee7 zdOuQMp;wtrapQT>7*{9_cOv769R}@4L7|3cKUsQdtj%fu^je^yW9WVUpx4PMj^8lH z2&n1eVhIGt^dd1ODcU)68Gc@DT7yWs#P6L`@MG9C27wG_kG^Bt&CTS?HV8pRBvQo2 zPm9!5G6Nu#61$>{%a8#)nQ4zbgjhc}ij1_N284^UZk)B{2`9!{!4gl>J1=74c+Yv3TnhLInQD7xoUjyebPd=??g248lD zOu+YiQu!BrFk082kMgstNHGNh#;-_Uy{>rvs-UoZSXHp_weG9sqTs-#<>DgJOG2gX zWub*dwddd2DF3dkLk!?OF7y{XIU%NB0>;e~({yqI_;YeHb@J9nP{b#73P=>6lM`I3 zj_%1+hM+f26a1%+IFL7jIvJWG;$Kcqn!LqR(|o?9=?Z%LJb8N}sH6K|@w4;icm6+o z1&E6w#6NSc{s~VC0)-Tn!OXT$Mqb1BUC}cg&seYczUO;v+8)CrNvP6I&3z+Gkd?+k zBx9ZcLegq58liE%#FCzJ&b1Em2$(n%pW4PWgh3J`$s@j(pw-h<=%ffV(BD7i-#tT* zB9&YoF1pd&Lc8ozct1cXr-S0qK|!7Dwv!!!MkY_-OXmml77I4kQr}L!i?H3OPVC9phJkDmosk`m3mOco-B`1&Y6*>H~yPM`l*X3cft73V(6} zsyoN{@#B?l@FZ<*cA(D%bW%{&`0q*&9)FS+Rt3}&DD!}F5#R_2Z3i8+j?8e-G6N-S zpoc(EJ4kN_VhHs9fr}Pr^WpxfT-wx#i=U>Gm7ehNp=rg!r4zhVY&XpL?w#*?kfp*nz^0? zem!&l>rUBf5t2?X8oq1f^@qrE;#r=ESl-G~A!4RWlK6fnP>@LFSDgCmdv44T%o)Gq z)Cn$SJnDu${P>DOZ+Jze!uo5j?Q#{Tey#i456Alz!q>2FTl14)8fb$Y41pkz{&oqv z6@m*sdzWa|dRq3q!gJaCwr0MR_9Od)IYux@?Xlfj_}@$NxYluP|Z>n;K9eaQ!q~#Nd z@~T#yf2de!G<|gKGwPlUl6VG-b(@Bp8bNl%{84adg}<7{>wy+D>9XyZ@c^P5`O8%3 z%{7gnl!}Ui%dn4p@eK*kl6N~&1opx`<1Ts(oW^p1kX9oDLvmI?hsMvKRE5KJNS!bJ z=~eTtdxVznOAv5kVpAxB55lxXNME478)6&{GhjX@_#RI?P%D}q?L|_8q#%N$)zRfnmm97-f2uEksh$M)^G;7@7M@2A9SF zKNp3DS+_Bd7N$jzqG=@9qu8F&lh+Br$+AgsC2NjIfijra-UymNXj&-##ZTsIRFYim zQK(TXLBVQ64>C4+l3;5AsObf@BE4{hwU9PM6dqrO_;jf#lQ2aOQ77O7iP2!j~~rM|eyu7bKS zavpQEL(IJoHB)o8K?*n7+i+Fm4yQ6;z8&TX4!9{IDS3!oIzk>Zg&`|~cbq{%uxTPR z8b=^)FfH{h<|%G}4s+wChx+p?U!-9#uGqLzN5!JiWYU#rXbJQBJgnmZ)uunSMikl~ z>GWB%dbMV`=wjFT6p9NoGPQO`D}2@&@DT^%UuVEX|rN3hL+%>(Q`0PA3v0=)yUA%P75Y*b(? z0-F}tML;(a>_gxL40a2!-~8?=fHOBp;{^9Dz*rB^3jkdSu$_QQWMHcRSO@buz$6f` z<$$>#U`7Wxk%M_4Aaxo`DLBmH%=m=Tx-`F3D2#KLv(%^KE7+N3vWEeZODI)e+5iS3sgWCZi|etX_}*^}8?M zKbLe;YUsX`cPmu(hMgv=wE0$$d;pve2l7+ltb}|Xd>Ko(1Fv5Z@cJnsfQ2bDYqNT~ zm<@;NT@uoH_k0zCKVS_{y|KG=zXHml9C?=@48czmLs2)}iYDvnV0?@i90ug4o;(Y_ zG)zEKr%cVOJyE@dAtPr*4X`IVkdXyEwUR5?$1Hy)k`vd#WwcrLFlyut*UE6TB5~Mv zxxKJvB+k)^!LH2DZQYkbeVag?1-tVV#ZFF~=~)!OuJ9Ny7u2L7qYocqqJ6t2Rlmy} z;L%W`>eO%}urxZz(0;;k3UzrvQGwv%08y+rLNX5R6B}=2@RX2z8s|^Bk3kq*(M0)S zg*o^%u96Dv(?2?e=F3F#sYYFOdnhXJ2hDmcY6KrdFQy}CG%`2|7`;%AnDY0u2R^#AxME6|^ftgaoJ01sy!RZ=~wa^<3?aMxwECuJp^`vH04# zB#~GA3koVNQE&pXROy8@(m|bTDIQtf3uzq8@^nFdeb;HPVR)7n|1si2+vbW3p959`wfw*I>!SU(hK+HA~{@8KO{f4oVRbqpKZ3>MOiw{DU}lc)8`CgMtMRGiN_0snw%?xP2EA9s4@9epdZ5y>3qa2ixZSW~<&}V_4 zZBM>_TvXx2(Br7NZXuv2eX6SI5W5jydFCl1W%mpw`1?g8j}NRW8ou9G8B+ZSzE@?q z?TN;X255IzYh3-u?b~1Vg$=+L&VS(xXs!GW7eJH0`SNeD@^=db00nU5H&A}l1{D(#IzL}QRVWousFFdr3p-0` zMeien=v7Pti3p{Z44WpvSAj zAS*vVdCE|-Sn{$$%Sxr8X@m&4*m{73{X)eOKn2@>g9<>1zjX+}#y<;>f1UY&Ci#7j z42Y1w6$qfkztJB5i7)t{r~b17|GpLY8x>ez7^wiuU!_PG3W;`?LUYK6QgYIxjIddX zSQK3_i}W2dHiD5cU;jWf3zHyBMjr(Rf%n7<(6OPSAZ&lS7{ATRz6P&aBJzxojs|;+ z5*(JL`ssScD=i2fC!nK|`TcIeT{>pQOBa@X-<+b6N<5&mY4K%vW@Qj{0Xqh#U?#>a zJvW+&C72)9S{5%hY%(ID5xMU4-H1pol15~D_YE2mMn?R`C_%)xQJaD#Uu^?2kG;w2 z{^f?Y#CP9Z@w{iU2bk4C?{gjI`qNIUpU+UFb-ZT4EKf8C2=~2XcANc{bL$M@w5*Wx zTpd9bvS=PqC8}a+5#xFXIL4Ghki1D8X6@UhyCH^%XHW)U5iU5rG zeLevv6L3TUm;iv-y7JfUO3;%4x&m}8K(pa@AqaFDKxbmtZueLHXAtxoP7Y6gSAoE} zWj}s@>*`ihQxhl_ZSrjHdF*X(Z|{ZefyMx651j0u>|yut+xY3}>CLm7`~Lg?z8Cw? zPyJbe|EU%Diw=;^?PlLVQXwR`YYONPcnYbKk~lNdiXcVkAT?TAgQ&UA=I^r``Qk!o zSXCL>VYq8yJjie~`V^K7Mt?KQrlt&sp}fTU1cl1v@g;^!EZX4W_*-EFUZL*j9c(M@ zwTQD?OONL;#gt_Fe2|gVr$7;8mq?vFngA`({g$mypP5Aa?;cO&L;ZZoV#MqXXVyc*sM5uXgP zc>XSwp9VD%YoExQ2Q?+TOR3 zfKh~TU`Kd5&{vP1-NxPiPJ7sCPw$B+=v}&w;3XB+cnr2Wg^77XKcgU^^*No$dFyFt zX^51n(7g7OyiJF*^;Acyr`z~onfe(WyK&LYfV%r9YUd{ooWck13lL^_?Ypeh({Ul} zn-1zbR>EMK!uE0xUCY1CRJpyaE808QrqboiX9U9;kC~&6$bbu?S8w(r%iEoBKPyJ^F{s&ip zc<0wOZwGK&;V*8eI4D36IipC5)IcV<-F@~>N(t5&0%Zw(hiQy)AVkH)91Nkkt_QHd z*+JDb3r2cQTvccU#@$LtO3Uaz@EC*fCy*p()DVF*h#>*;b5EQ(U~ojL07d}T>>IBc zP181g3U?PWpoaEeu**X)O<++3k6Z^@cShYqJe(8lB`&%12ryfSSEo0H$#ox3cp5c;ocp<~cZ=;p7vpuJ+>msdc08o=QD za(Q&$3i#YV7SaCR7Y|M`8gc#KOWia?#2=TgfTb05DgRB2;^mcM7jXcO$0FkI;c_KuG6@rm8NeL)dz4H4~Mcd*tqG~>ZF zrr(JM;I`KH()izDEzz3Vk4wvE>1RQl!MnbAFceu()2+6)_OXbYMqK><{y}79B=83V z!4h2>A06lRZn+;Ag)=iVHNX#Q#sjrBneMF>nt@Yr1K;ls|R>KL{RS z`>~5#bm{-Gd#8+m^pVS-SczwTPKhY=tw!CkAD z|M$6|px1KM1k^%vdqJ;dse!3HuRk5sLRnQS^1D-2Vg(F(D)?``{A(_#YUL}fJe_i@ z$)5P!PsK*9p{$;juSd%*Kgw{wt9k?Gf?j@=dZW4sq?v6kO}=AToP3Kxyk5Og1LlIV z5C|H+m*Su8jN**6RjVzV3yBf8{vxzpw$PtJ^q5V(Zo7LR|E}5BD~>}&AQnj3hj?0mCP=JxlIa?T1c7gTL^x*6|z z<`&+0e{1mF>j%ONjh^3Dz7{{db*AR%@ayt&Ld4s*JI7G&{1m2_z;fCGBs))F$+dH* z{i-DSW~@-!U1R=?aPyhKY_mmU1D3%2(IBo|?%9y2_O)DqT^$aL|`5A0m%NX-Iu5MA))2_bQ*BMnmPY4y)^G$lDsaew3(LhH$JjG2K zO*b5#tnLVIv|xJL)^J1&DfVrfACd=Epu^XqHQ!9sL=`7}gi_iWc<1Lkn8ue&I=RB$ zziB=nDYWK_Nh=iV5nT6p{GKY{y^|}eQ+RoU$ccWLhZ1kZtA5psy}Tc9Dtq$`-MM#c zIjC*nz0;=ac8+h@FldtVlSzWX*-`Vn)bk@&)r}WE+jXj+9ee!wm~GN^;T#)&{K+0G z+ZP`q$}>~G3~4OWfxMKbXG5#WW(Hj^eA)hr6g^*C9T%pwKljtzPW(g4$%;o$MiAT9 z;`8LDp<9AkO|?t9rFKkka^e9D`qYTsARNvo!n#h1BKEjma>DItRzVg8BZR*Bcq-y9 zwRs|7kg(TWF~gKiQu*hi`mOrCwWzJ4);GsSat3W8Z4!e%2wFB3NNyb-d<6xg8v;(k zZox?T?PEQ*lZHIZ#P|Lu+sg(!$PNFobN!cEIlB+gadP2Z+?Km#B&%W?2twKc*M{+Q z0_UK58d@~_{`i?yHmHG?aszhSlx@wX8cpCY0&&_v>(3Le5}WjU;ZMoF+eGtJB%77+ zh^AnO@{KNSym4UXq^P_V zMyEVs8x?e(58AMF>sISPg-RgPb{;c!O;h{`$`R+fhmuakau<3>n6lxW6VT`SG$0-p zqhmE<^!i-c)23u@GCG}i1mKdi?>9;gmt58I5}F6K{0{_@`Cp2!Wt-JL84x>A?1dV| zE_?{rzxa;s=4`|%gSohA>Fxq`%}}S*p3Et3G6f7G1tqwHZ^%QVjNsn0)|^K|XifNw zvu-a=rS-^T2)S@q#2LBL$+3LuT+Gy=a9q|_sHz;IWN@5OGnH7q4~`5*g|oF~)5$-& zwkm!7c^W~MK&9G}!WiSx=$(X3Kg%EIN3m2xw+IjF&z{+F8$>{vJ{LdbtSue*jS%Drl5zeDWIJ%HO?_M!6!b zMRPVRT%xyEv$N*|0Uz#-w-)-AZOEN!ZKJ1Ti3^H?4)vHjG>B)Fyw{FpMh%3!#puzkXVWP5ga6-&-qu^O~0!ED%syiru z#>H4yUGnpfZxN4W(NEWx`4Z z>EY`KVM{}AO+LMZ->jb^Ad{j{B!)9)L0^2oMZHDZ2|HX8x_$kN%ZuFrbsm_APV%ea zc6hg&mA;-*pM;97q%9Wn?y4jor%zm2JDy!Dj!f5)xFXlka6Q@w z%xaRueMl9nge0H3YZY7K&P%UG?&$p-dZTK=VQe6DUp#iWrA+doBdd@>dF1EDACfhg z%dr+s=j6waBufVwV}~o9!qW_0`wJg+aQ<8xP4~>JIMv-)Zk+5q_GP!S?sBz#@{5s< zvSZsmf$&6!Nmh72i5^}WYS?tX{dH1DdZ%WX9zt%9fYb}#mJ^{$G( zx@{o&ZWl*YlwnGxH}eBe*=P~i9He|SMR<{|1^+T)Gh8fXoZ{5Io;T+xbk5dPsSDCq76)&6ujN=5f4>>TI`q=6uHbH} zllI%XZ)HU;?T(Ghfrm091iZVYhi_K+3AH?gDDBJBPp#TjpPu-7zPk3~q^;}Q`mrBH zZsnVe>n4YnrW<+oo2>y`s+ng`30Jm@e|hvQ&%AE#%ewomCc9|+`8mh&<(@FlEvL=e zLa}1ifiV7?)DI5cM)(MRIQ?OpjHtSE{muFld$sM-$KFiF_CKCqotP(lAiZXgbIAU~ z(3o<)W`*_qVb%Dn{Zq0&-7)s|USO(np?%{*HU6Bp0%5vwRIGcK8^Q6G%ax7sgx!Ny zZG7j`!sE3_#-p#dN)A4r81BA(`}ITd(}u0LC!Tvxp+z^i6lO8OfzaKRAQ58_`;=Vg z9A&VJRl=DwlGap-Qq=C){unHCjS$NSw(|#;UB{YC$~X3|FHfSx*+k#wKwqIQalw7x z8X7;beXsL6e(P?2QhZNk_8*DtJ-OUvChw=T)Zrs<`Jk28X_Ud!-_5_yOtgiFPV1_l z={?U8H^<>Tl~Wf3ZYJKlPyD!b*R#pZGxT$S#7@9NK8Hst4!5rcV9VtyE;=q(sbqh2 zH+K)bE#-MTKj1a5v+CEtOI-qBH0TYdApiVxct7`Gl^{%LS3vkku&rfq6yv!NsgRgE zAquil#PrT_<|uMzKJj6#Mn)I|-3A3}zT#szNo?UB&SD{F1xdVg-C}uTVy_cF;~Nb+ zJsayY5+i>c^vvx?uJ^k+9Hm{Iq~pvy91YwO=}(Oi~6vN0#)9sg|VN zf=HXB7c0o5!fwHwgBP!SU#LrAP0MVml6cB$pBB|7Ul>Vl@`%DQrI1Rew2ek}c%+~_ zqI*b^D@Ieo4^jpW66ZysVUN_0kAxiYk5eb4A<~)D(fcX9&B*IU(7Z<)DK>2;B!w4? zkQG5*a7ZJJLj90VukpAhbRc%;dW@onFW(IEt^=6$K>&}27@{EJCmAH68H7CeOe)<>aslj%a>pAZVpqP43CyHz@S_++5aQ@e$|qSgR+;>vSv++aad`>ld6{Zb z-uGY9=wJwUY6;jg2rM$-0vhRPtMrW_yQ{&XJM@o*5J6E1G?R}~Ss*wEI~+BQ;2OwQ zXTBp+C;nO4dq3%k!4q-qB+(l$gw=m$3!`#SB`__koQaSend`Ca3@=fff#9y_*@ps? z2ib%Uxo08BswdYrR6{QB3Es#Oy9x_B^pGKZnRgBcxBQuhu}bwFOTTcp07-PmK{v?t zRlaF<9^pWKWL<8ws3b0u(Lc4THxZscBWP<4K_6(oQr6vV*!j0#J}UN0B$H$QnTPy!cWfAfJ9 z!65=iVNyR^MbGSJkCP(qZ4g`@KyYjn%|1z`)+ow~c_WBM7_!4TONx(V;HTLO2+=T< zNb&X(->51=i5>jSB~VGpi3~(-1W}?&5PBsqYVuW#kh66#mhn;+qg3i;=AZ9)mvuRBeHgU^e2ck^)*9kPm&+|D zy{<)FI}N)gSVB{eP)V-%vHy(YUHMj0<)vllj$Wze>lcYV6{3RWr#vf7$IBnQjwn`v ziH4==j#u4HuA1EsMd7MW-GI5CF7Y^B{rL5>YMpB3`Vtyzi0lRot5@#59Qj{({s8PFE%PSpe9#$pi9&avf*VUOGq8gI6S7BIRtN+Mz>1$Bd z-s_$i8S2xu3G`J|S6@@ei-r~yHdE}|lWVnakkR8&Op3895vEJQ#73j)$>fPkS$O#&)X z1JYY)QbYBHW{_Wo@$$|1N>qeOU-EJO+8 zh%WKXD%q^KOJu1;4PGqic3nczD?icD=UI%jgPat-6!)!E+3==-X4%6tWqSgpRHDnK zy~{K;_lPf*wK$h*Yf5NXl|MOL9$PJkYsq`d1Ij1ybPaEc( z(cEnvoqaA)_WVeeSz>a4S;d|x_oYI4d$*!z3kp{`ZVW~#-Qa#K>MwrSx3Kt~^^@}HL2`gVDP3_zH=HC@3g88Hn@E=i1ZDtx{%~k86fsMz2Iyl=}zF5XCr0$ z^CUIrFw!%y4F(tn^jHsmBa)$bc|I=Q(Mv2i1(d{+M7vLXY^{5NHtHA zTvL~7+PvKA4SdO@QoE54MNJe(3grX$bFrGz2muPCy2=+v?MkFxRiwH*WOOXa(W9UD zXv+6#J|A$Sc9Li{L$sK1T7#kUBt3d!BxGiZHchATxYhYk>NrR0Hb1MYl&{w|t2KD{ zA^uwZUG92zO2uh?8t-#rvTSjFZT&6HkH(Z*q8e4Sy{2P(#paYkaUNBKQ8aRS#YlL| zQ=afo64xuXEx#!b__*!%r;?#h`|>}vYN+iQjZ)|F-nFGxwdr%={AcZZA8%SI=#SP|8O$k`tH?iZ&vfTc;T;N2*@mW>%DVjZ|k%{dA7U`8+l9 zB9(CcdE^bAZI`c8Z3E?Q27wV?RjxaZgVCUmZFI7b%y6x3of;&F`a1EpEkt(V&C5t;t5Mo9Hd+ zDVyW>x9vXGmTT=0`@GF-M;qz-*23jB3y-!^szaDHy+e>*RkW|Bh+fv!MoZaLzT*D& z?(=fL7W!dkZJG7sGbzuTc|6}Aew$I&-lZ8)d{)fooq`Q;TZ2cYMCy zk&#!mr?MtllM=7cmF3ViS(GeR{2rgwHDd(Rkp z_lq9bJ-TKvS$(C)cYmw4@pg@~y(xmddd6i3ihGf-dW~PS=!o}qI`^8V#vFgx2fxr~ znfk@3qmRtfSE05^w7TzNf#_wW{*OoczeLp^uNJ-fqA$Hs;`)J_V@C$2-u3ra_OIMm z8b}W4zq9hGzG@(4XdsSjz+>#o4cw~2M zL(d(D=#@ipSNq@Xlk`h%3(YMz}lY&M| zlt#n3#v~m_o*RsPa2zwy8~vy>mJ&1;o;b!u8>@C4A2b@LbdPFQjf*FYkU7WOl_p*u zn&?U$&7uwGC^0Y`6Is_Lrh>-5q)zaeeEa734bS~;=-qhSp`jK>MilK^$LPv80li5n zyU7Ta$v&lVa>eB6*d&QF z_K^Pc^4OF(=Nv3;`s|T8{u^_Q+F4rS+)V9Uuk2g{4|A6s^S$w`?u}U+-c6S0dV_ZM zhJ5b{tLu3b)AQs;PsG8VXM8qcA7!L~fUwtSP;!mX`E<1O#sx0Hmml$~q&u(PG|dvkSNb8SpBRq#f0-NELM ze9fP~HhoEJY6>Y=;9u*%-~)9WiVvZCFm8w&@^XuD|ZEoaWD}`HtrLOe{wJCzm1m+pYo;8yU*kj;Iff)uo zFyM-TX$8Or10I+kZ3q}(!1n^C7ogw*W9%mg_heKqFuj1q1%upxL#E`TkGD}EQFgRm zIu-`w;qlimauMwELkI~qKw%ek%hGH%1{1oV_``2F5SQ*Gp@$ptjz)0e(Q)z~xlU7X z43~|gb*|%#eqUQesx=80ATSotJ>E|Cvle*4Rf6*^3*8peyB%A~gM`$rY~P*EwBkf5 zSoNBoFG0ZHoO!8h9jD6;sVEls6y;$Y!tEq%uqBut1S_cNL3b|B9nKcnCs^mAHV^Bg zJde?xh$~|Ra-v>J<+-@uzdb6%ZlMzkgKkx^a3aYT2Q(JKzxB-RuWwp%Ut-lX#kj#6 zWXUWm%X86gO)xV0E~{;5EKZmo3H|QQgT}hLTg%0{3tH;MK$DlvzuxEMwIRESI1=M@ z6)*T+@JA#!#|BMxsY`edeZivvszp5}L}Rk~)$go#6D0A6FQ`Jd`RaYqkBnqabbG6u z9OCzowV&tr&~=@+BKWQG9$|kJ5aMBIXpQ3y^a`jJkSy@Ht~Epf$pU)y)42zd1vF~S zv;XPVuSphAJmA@{NfwYApffMQK!tz=g??oGSEa`K&Hmd)0I1e( zyPq8IRn$tUFCUAZrV~c8Jb-Px-BM_5IR_-6eD<+OCk8ZAvpLwHRl3U&LZ-YJa;CI) zxD0E#;nC0iTG1Q`Jv=(=tqBeTLrT|V#hb+P_zK-=6|g^qGQ48;!R~|{f@@2BYxcep zgcmzs=_I%5%o{8RN-kE{KugOLCe@;i;Ecc_1w>WkMBE}S!HPINw28_Wv^*rR~qYC)<{cmBN06+j6Dt z-!nc=DS2}C0KGBYv+NlML{ub~OorXxF5KX_Pu+*{K>k9lQp)4&kWbJ1n7c;^=P)*snzd88pCAU?=Z zTXh8EnY+c?{K1=}a@{wPkuH*2PZEieT1o=HP7i1Ud!>Vr^e=rATH1ypB2phJYXDe- zi%SIbH0T?gOv}jY>gs81Y~H?IT~dZbJ7Jlm*&8uk4VUJz6i><0a(UI3S zjEHjVw^-V%jr@|@yx%aNS!Cmaz5w~dkj?cLBRziC*t4Dx zZOC1<8+UPG>hEH&*0E_BPy#!#>=3`8qIps79S=50s57@^S_Rey6R<#qVrEAwS$G|G zbV3jdKj}%53<2u_ahRUy*(g$~#m-ZdBXUEHvn7)`*;2u%Lp;(iMpW?743u~INrUw7bkKFpb|4Ac&d;_r{R(B{`5S(3Hm0;SX z?ZvZIJCK-uzSLicRh;6IfvybRa8O`LB&=8W(Iys@Txght2TV~uSPBir>xQUa^HC*a z*&6ynt_uworU`YPheL!mlC$Lz1cRtOPoUii=81x_GS`!AuqWc#3A`d2vkVxE5JFv# ze4N|@=SIlckf(M)2z~_G#=r^d0Y`ADqS7JH@OX};q(HlLX()n2I#-ZrgbVEsX9o(>E73N@l#DW&Y=*s zk4Im^-s~+WTPU|{>;N{+@}9V|jTY7u!G0!q2N{Efvt4b1V^BafvRTb-{fL~5*%1?t$r@Jav47s z+yfMsZ$B2?O-p+G(9uxY-2zh8rmrglgw81h%HNdM3sevmkTd;^_JCn}VG)E4TBfK0h=LLfq%!?KD_RWTb97hRhNtyvdw^`ITHU4ix~1+Me|^{*yj^ z>zDmciU6|fFKO(F+#n;UZVDjENYOoBddK3*{Wk6rAmNW~(+%FTe;-2B?2=Bn%+_#0 z!l&+a2NjKom|yX2;gY2?P{GC#uSQj{l>v=gYevjXgQ5 z5M>SlIj1LNDDwmdQa$P<*)rSgOTlHarco=RQD5tusHU;AB+N{!H(4$HT%iCbLvSPl z*ZnkbSwY0qeB2|SMdkP&#ZD}Y3%*$jo78w4#s(KuMql3q0U!b@@Z>%+1PCYyMY8F} z5;%-6=`2{h;eRaNKla>6SUXGuQvAnR|MNht>_fGblrlJC18>VpO8XA!n1B~%85xze z12r0L^(gIG!gI-OO5i9hIVD|DQQhdc#dbwC(_<(9N#D%+$E-)-Uljr5&@WjJT*y%1 z;qw6N-em%eFcH~xGCLvT;^6@Je*ZwEN^jL8q(P)kwOOD3({0wpUMJ2Bo*rO6|Frei8gc&?*~rcLAk-t zsszw2yGAJbIb|Hw5d?o81EdgBi`$^I!QS2;_uv zxsTquc*H~cxUr_6*&73I#WTgx@+vY$k-tfFxIH^QKzqFZ@(QR}37sv__9EQhT&^BUwTo)$Ua4mlEVgxE#%vv@4HJ`~zPsU_dT6RxEb!q(E_ zIRxi4Pit&Gjb(h!xboQ+-3j+;%D;0wxqVU1v88m!l#uCW^~qjNzg=nPH_zT4WPfum zy)(}H_Q=PG<$HtY!HLL(aBZ z9DCI#$T;o;v5?jVq_Q@QK)zzM%c!C4M8P zaB1MqPz(-`;Ic6RO2r}`2rd-fG*lzEiXNiHd9@xci@Mqy0*}VN4%hG@VxGV;M8@Wt*s?6I`B(UWmS(bPx0V0bBtK!%fQf z#)y^Q$A+<^?GwU(uQ_c?fHae&pj(a;wl8m;bq$Sjx;s4d_ORu?BrW?$*Cef^O}`qA zt3_FJP|aTiafZ17j6hK2a8S!oSXhc&UbSW+0G_^{{z)G+8tje$EC4u;3ft9WWOqeG zL;wfzU22Zvj=g{#kfN;o(^M!ZECd^*giDubb@lC3D*bB@*d}4LjmpbE&}cMQS670p zEU2vlY^C2+4p^VFuc)H^hvwS)ZT$%%00eOhB%=5C=mxrYX+e2RdG*bT5K>aI&7~`UX8Afx~wXd|I!nyIzvXy|XCdH)rslm_h z&eatcEzV8!)W(>+FJ4|`PBFgLy?+me)w0Rin8O6^Iz5mw2{t&fXiO=h@qTDHyz!`V z+#R{s(=bTJ^ooT377I0PeQpb3$WKNoq1&H>SJ?wD{o)i_SC|kH>(1Gjhjv$><-K%M ztf=hv8|OKC>A_*~{IlU>zxllmL&#s<_83CT^@OtYS%^P9F{al6+4yk8Yh8G{xBmeP zWMfO1$jFZ;j15j*h0ZFcC&i{CjRY|MlBBZG0?NxpJ%qZ0c}Uj`{D z*trGMD(&3eyV-}Z(W_b*>jUTpub?^9%(djSO{#4#GAnMOM_n5>wP9cr98u&{R`lvI z8t_2K;D;0g9R?z-c|cD{NHQ>zY7L1pYPx|JUAhb*kw$eJMGo&hj7ivG|Oa zy20o}V5(_-&yjF|s`Ij&?5&AVK9TDz3P3Y~yRLQsDZWH|f$m6XFcoO-s*cp6E5-JHd@-ApPVcZWfaV~@(E?f<`0JaZP# zYGoj$jLseLMIaiAN0sv&+ejN1R<>9Xu|4GhTQ@&+%bUbeqF7FeTa#G^8p5u{VE4Ps z^lU89|GM%}vjjU*$)~!NyyABAD?7IpsuNps8<*cBY=K6X;1(fN>{bYAiiY5``_-_p z+>P~Eh*J;h)I!Rkv8)?5d1`Vx&VyTuj&G%1?UP7uNcr0 zNhxJ^q#zIyHnt6C&e;Ji(bU#wLGS}P;pP$j+wW=pZ|f2G^F;v3{6F4&fx7Ur@_MaR zlyT@s6IL-+d}_B4M>Ag^3EO6rWYvPYtp8N`Vu71zmTmPj)$79){H_674C=uGLf<^D zK2G3TIl~RlPNp~_&?@iD{R~Q6XA15(G-lfVKQ?+T0&*y#ln2a< z>vvFyl5rsi_wk^YttKUqk?T;}`^RNUo^tP=9660jz{J7B z1z4416OX@@5tB2j0o|f-i!9sSi8l715M1yzG`gEVbtML>L`HESlk}r8%Uxv=!`l# zgF&LVGw9^*o?bemox!MMfZs<(@j+p9IypEzVqkD+eBxV4Sp_MDOrf^>hdcs)8(j#BIBvHx0tton6T1%^^Q_1wzpWB{P+@6x2O-czQM8`7d zbznL-rI<`fNvG4>z5Ie38kylCelc;qSRkgU3bOx17qSxh<-jj;! z==9aD*!5rQ5%{|i_}kWqA0s9H%47Ybjr8yGSpUw6r3wO*o$$9Omira5!ECA@WgB05 z8-DOu4TLaFQBtwt>T4&K!Z;>&ngtnh`NxUnRV#wocTR9(IYH$YC%B4~WTb%;%aTne zMO}WJSY9-wHyrAz0w;@R+A2yz%V!nU(C z^P9J8u_>O{zRBe-*X|-{G)Hz5eP)N{8O)iz5XhqGq{DU486WD$`V22&k926-;xF96 z_SI)grV!%cXYVTz`^PQ95dZf$H64ge&-Ajpywed>#91~uTV3bx2-U(TY`RdK028z1*2ad8d{-$T|M&u`&kK?sdz7aXG z1+_e5>960Io#44kyxl&Aza-hIYkIF@@!ZSM{>?{^_8yA96$@j*?=aULaAok#GjMgN4y zRV9Yo3`WS5Xpt~0KY!iaqY~dfN#kzjq?jgO5{6mc-$|ApJh1R)ZCN=HhTrEIg&b^0t)3NM^op3QG8EKr36Q*>sX)sGr!RcPI zhFzRzn581LbRRWJ7w-dR8Jaf(f5fm`Ac|QoXPn`Giqb7q$o!xjoDq1%uxC>nvqGJg z5qyu*BfiM2#PDW@`Wp61ip^K)8E1w^P{B>1Ut>Ybe40n;Q+hC8 zYr~sGs5I#)4pvFt{J z+F}d!c;oDs!qmaT8VesogR@`D8V%{6S@=YtWyh;ghm0RAe2(SKNjPFOY!ti6(fda+d?CemXmsq$~e2Y&_w3VP4_h#xgfUKTxFb_89^Pf)mUt) z56;bgYcy(qX0f%ImYbVL9d&%L*w)FLN31j&yA`!aA2iM@XrhkYEnIA$2+ku77>&EO zEp{+zdBt(79^ z!4H;t(0ut-D@Tkc!=sjZV1u;Uy3ac>X{ULil9x$Yb+0$h7>fsHJ(X2vpj53SJ0S8n@N4J%&_4rY_2q(&5T+e zu`?-bZKBQQ7A}uEg%r{UjOPm4md9M`3OnX#bH$6x<5)gYC%Xx=RBUAeZ$j!8u47hc ztb7X%A@$0d%-5V*nIzPa`qk>@X%AMWV)=>&kC-fcidvaYFew^7RkzSsxH6L-QZ#bK zWU;kvWtLc1GK=j?9zrf2A_M?q^#Cwdai#}a1ShGE zld{0cxZvanI0Yh3u^Fet#3_q-s;GOaT6pep@l+>x?jw3?HhUgmdSXPpwAHJf(?tR@ z)dR9E0&-mfh=hOwVgRW*pqLpz76~j>4=lF`tZ)geA_UeD11ZgcG-hDENYE$spazSe zMwg&wLQpF)h~6C3!3^pY3GP-8?zIT+cL^RO1P>E~N1B7jn86bwA(QGM(-tAKE+I@p z$O18BsX1hY83Kuh!uN(EPKUDH4+St*&iqjBmQddLP?Ttxz}_&y(_upQ!$h8iZORYZ z+!7`}ABGkUm)sjJbvj(;ez@GTaE1JE#g=fT`EX@X$ww-CAE};xwCDaK^=FUv}Y=D$W>cN<9`4-nTPNI literal 0 HcmV?d00001 diff --git a/Guides/JSLI/readme_files/namespacefunctions.png b/Guides/JSLI/readme_files/namespacefunctions.png new file mode 100644 index 0000000000000000000000000000000000000000..84fdb8161bdf1befe1d81b8b44ebf9f4c6047c4c GIT binary patch literal 14162 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 OKOA>CM*SXn{eJ=PYwT|T literal 0 HcmV?d00001 diff --git a/Guides/Readme.md b/Guides/Readme.md index dc547b1c..28cbd125 100644 --- a/Guides/Readme.md +++ b/Guides/Readme.md @@ -4,14 +4,12 @@ The following are supplementary guides for developing with LabVIEW NXG WebVIs. For complete documentation of well-supported LabVIEW NXG WebVI features see the [LabVIEW NXG Web Module Manual](http://www.ni.com/documentation/en/labview-web-module/latest/manual/manual-overview/). -## Questions or comments? - -For questions related to topics discussed in the WebVI Example Guides, please ask in the [LabVIEW NXG discussion forums](https://forums.ni.com/t5/LabVIEW/bd-p/170). - -The guides cover topics that may require **detailed knowledge of underlying web concepts** or discuss APIs that are unstable and **may change between releases of LabVIEW NXG WebVIs**. - ## CSS Frequently Asked Questions The [CSS FAQ](CSS) provides a brief introduction to CSS and covers selectors known to work in specific versions of LabVIEW NXG > **Note:** The CSS FAQ covers topics that may require **detailed knowledge of underlying web concepts** or discuss APIs that are unstable and **may change between releases of LabVIEW NXG WebVIs**. + +## Questions or comments? + +For questions related to topics discussed in the WebVI Example Guides, please ask in the [LabVIEW NXG discussion forums](https://forums.ni.com/t5/LabVIEW/bd-p/170). From d560469fcc579203442ad67d69f7992cd39fb9cf Mon Sep 17 00:00:00 2001 From: rajsite Date: Thu, 27 Jun 2019 19:37:47 -0500 Subject: [PATCH 08/10] Update the What is CSS section --- Guides/CSS/README.md | 133 +++++++++++++++++++++++++++---------------- package.json | 2 +- 2 files changed, 84 insertions(+), 51 deletions(-) diff --git a/Guides/CSS/README.md b/Guides/CSS/README.md index d159f5c2..a1c14db7 100644 --- a/Guides/CSS/README.md +++ b/Guides/CSS/README.md @@ -7,25 +7,52 @@ - [Why is my WebVI ignoring my CSS?](#why-is-my-webvi-ignoring-my-css) - [How do I customize a specific control on my WebVI Panel?](#how-do-i-customize-a-specific-control-on-my-webvi-panel) - [How do I customize a set of controls on my WebVI Panel?](#how-do-i-customize-a-set-of-controls-on-my-webvi-panel) -- [Which CSS properties are known to work in each version of NXG?](#which-css-properties-are-known-to-work-in-each-version-of-nxg) +- [Which CSS properties are known to work?](#which-css-properties-are-known-to-work) > **Note:** The CSS FAQ covers topics that may require **detailed knowledge of underlying web concepts** or discuss APIs that are unstable and **may change between releases of LabVIEW NXG WebVIs**. ## What is CSS? -It's a textual language used to style an HTML page. It's a deep topic. But you don't have to understand everything to successfully apply a set of CSS rules to a WebVI Panel. +It's a textual language used to style an HTML page. It's a deep topic. +But you don't have to understand everything to successfully apply a set of CSS rules to a WebVI Panel. -The understand the basic terminology, consider this example: +The understand the basic terminology, consider this CSS example: ```css p { color: red; } + +.my-class { + color: red; +} +``` + +In a page with the following HTML: + +```html +

paragraph one

+

paragraph two

+ span text ``` -`p` is called a _selector_. There are many types of selectors. This one is called an "element" type selector -- that literally selects all of the `

` tags in your HTML and applies the style rules to those tags. For styling WebVI controls, we recommend setting classes on the controls in the LabVIEW NXG IDE and then using the "class" type selector in your CSS. This simply means you will always need to put a dot in front of the selector name. Most examples on this page will follow this pattern. -`color` keyword is called a _property_. There are many, many available properties, often best just explored via the browser Debug tools launched by the right-click Inspect command on any element of a webpage. -`red` is called a _property value_. In this case the property value will accept specific colors as keywords, hashtag + 6-digits of hex, gradients, amongst other things. +### CSS Selectors + +In this example, `p` and `.my-class` are called _selectors_. There are many types of selectors. +The `p` selector is called an "element" selector -- it selects all of the `

` tags in your HTML and applies the style rules to those tags. + +The `.my-class` selector is called a "class" selector. The class that this selector targets is `my-class`. +In the example HTML you can see that the `span` has two classes defined, `my-class` and `my-other-class`. +Notice that the "class" selector starts with **a dot followed by the class name**. + +For styling WebVI controls, we recommend setting classes on the controls in the LabVIEW NXG IDE and then using the "class" type selector in your CSS. +Most examples on this page will follow the class selector pattern. + +### CSS properties and values + +In the CSS, the `color` keyword is called a _CSS property_. There are many, many available properties, often best just explored via the browser Debug tools. +Browser debug tools are launched by opening a page, right clicking an element, and choosing the Inspect command. +`red` is called a _CSS value_. In this case the value will accept specific colors as keywords, hashtag + 6-digits of hex, gradients, [amongst other color representations](https://developer.mozilla.org/en-US/docs/Web/CSS/color). Those definitions could help you muddle forward. But to really understand what is going on, we suggest you familiarize yourself with CSS as described on the [Mozilla Developer Network](http://digital.ni.com/express.nsf/bycode/exmj34). @@ -33,31 +60,36 @@ Those definitions could help you muddle forward. But to really understand what i No. -Modifying CSS styles from the NI defaults will mean you need to manually update these when upgrading to the next version of the Web Module. The CSS selectors we are using are not stable from release to release, and we don't update your custom CSS if you were to open your WebVI in a new version of LabVIEW NXG. +Modifying CSS styles from the NI defaults will mean you need to manually update these when upgrading to the next version of the Web Module. +The CSS selectors we are using are not stable from release to release, and we don't update your custom CSS if you were to open your WebVI in a new version of LabVIEW NXG. ## When should I avoid customizing WebVIs via CSS? -In order to keep your panel working the same release to release, you should avoid making customizations via CSS if there is a way to make that same customization via LabVIEW NXG via either: +In order to keep your panel working the same release to release, you should avoid making customizations via CSS if there is a way to make that same customization via LabVIEW NXG using either: -- LabVIEW NXG's configuration pane UI +- The LabVIEW NXG configuration pane UI - Property nodes can be executed on the diagram to achieve the desired result ## How should I include CSS in my project? -Though it is possible to inline your CSS into the WebVI source HTML, it is better practice to keep your CSS declaration separate from the HTML in separate files with a `.css` file extension. And then any number of pages can include those styles easily. +Though it is possible to inline your CSS into the WebVI source HTML, it is better practice to keep your CSS declaration separate from the HTML in separate files with a `.css` file extension. +And then any number of pages can include those styles easily. -In LabVIEW NXG, this means adding `.css` files to your Web Application components in your project and then including `` references in the HTML Source Panel of any VIs that you want to style. This will cause your WebVI to be styled at all times. You can also do this without editing the HTML Source of a WebVI using a JSLI document but this is a more advanced technique. +In LabVIEW NXG, this means adding `.css` files to your Web Application components in your project and then including `` references in the HTML Source Panel of any VIs that you want to style. +This will cause your WebVI to be styled at all times. You can also do this without editing the HTML Source of a WebVI using a JSLI document, but this is a more advanced technique. -It is common to edit the CSS file outside of the LabVIEW process. If you have edited the CSS while the WebVI panel is open in LabVIEW NXG, the panel will not automatically detect the changes. We suggest that you make a trivial edit to the HTML source of the WebVI, such as adding/removing a space character, and upon OKing that change the CSS style will be refreshed from the CSS file on disk. Closing and re-opening the WebVI will also cause it to detect changes to external CSS. +It is common to edit the CSS file outside of the LabVIEW process. If you have edited the CSS while the WebVI panel is open in LabVIEW NXG, the panel will not automatically detect the changes. +We suggest that you make a trivial edit to the HTML source of the WebVI, such as adding/removing a space character, and upon approving that change, the CSS style will be refreshed from the CSS file on disk. +Closing and re-opening the WebVI will also cause it to detect changes to external CSS. ## Why is my WebVI ignoring my CSS? -Let's go down the checklist of what you need to do in order for a WebVI Panel to pick up on your CSS file: +Let's go down the checklist of what you need to do for a WebVI Panel to pick up on your CSS file: 1. Make a new CSS file on disk, outside of LabVIEW 2. Add the CSS file to you project 3. Ensure that your CSS file is referenced in your Web App component and the box for "always include" is checked. -4. You've added a reference from your WebVI to your CSS file by adding this snippet to the HTML source of your WebVI, in the `` section, typically right before the closing `` tag: +4. Add a reference from your WebVI to your CSS file by adding this snippet to the HTML source of your WebVI, in the `` section, typically right before the closing `` tag: ```html @@ -67,7 +99,7 @@ Let's go down the checklist of what you need to do in order for a WebVI Panel to Double-check that the selector in your CSS matches the class name of the control(s) you want to style. -**Note:** The selector in your CSS should be prefixed with a dot. For example: +**Note:** The class selectors in your CSS **should** be prefixed with a dot. For example: ```css .my-class-name { @@ -75,12 +107,12 @@ Double-check that the selector in your CSS matches the class name of the control } ``` -While the class attribute in the editor should omit the dot prefix, example: +While the class attribute in the editor **should not** use the dot prefix. For example: ![HTML class attribute set to the value class-name without a dot prefix](readme_files/htmlclassattribute.png) -You can also open your WebVI in a browser and view its source to see if the `` tag above is being injected correctly -and to verify that the path to the CSS file is not incorrect. +You can also open your WebVI in a browser and view its source to see if the `` tag is injected correctly +and to verify that the path to the CSS file is correct. ## How do I customize a specific control on my WebVI Panel? @@ -99,16 +131,17 @@ and be sure to put a `.` on the front of your class name in the CSS selector. ## How do I customize a set of controls on my WebVI Panel? -In the LabVIEW NXG IDE, the HTML class attribute field will accept multiple user class names for a given control. The list of class names are delimited by space characters. +In the LabVIEW NXG IDE, the `HTML class attribute` field will accept multiple user class names for a given control. +**The class names are delimited by space characters**. Select each control in the WebVI you want to style similarly and add the same HTML class attribute to each one. CSS rules targeting that class name will be apply to any the controls in then Panel tagged with the same class name. -## Which CSS properties are known to work in each version of NXG? +## Which CSS properties are known to work? -### Tested in LabVIEW NXG Web Module 3.1 +**Note:** The following CSS selectors and properties are known to work in **LabVIEW NXG 3.1**. -#### Configure the Panel background +### Configure the Panel background This property allows you to set colors, gradients, image settings, etc. @@ -118,7 +151,7 @@ ni-front-panel { } ``` -#### Put a drop shadow around the Panel edge +### Put a drop shadow around the Panel edge ```css ni-front-panel { @@ -126,7 +159,7 @@ ni-front-panel { } ``` -#### Set a repeating image as the Page background (behind the Panel) +### Set a repeating image as the Page background (behind the Panel) ```css body { @@ -134,7 +167,7 @@ body { } ``` -#### Set the minimum width of the Page +### Set the minimum width of the Page ```css body { @@ -142,7 +175,7 @@ body { } ``` -#### Set the minimum width/height of the Panel +### Set the minimum width/height of the Panel ```css ni-front-panel { @@ -151,7 +184,7 @@ ni-front-panel { } ``` -#### Add 4-pixel border around most controls (not Charts/Graphs) +### Add 4-pixel border around most controls (not Charts/Graphs) ```css .user-class-name { @@ -159,7 +192,7 @@ ni-front-panel { } ``` -#### Round corners on Buttons +### Round corners on Buttons ```css .user-class-name button { @@ -167,7 +200,7 @@ ni-front-panel { } ``` -#### Customize border of buttons +### Customize border of buttons ```css .user-class-name { @@ -177,7 +210,7 @@ ni-front-panel { } ``` -#### Remove border of Charts/Graphs +### Remove border of Charts/Graphs ```css .user-class-name { @@ -185,7 +218,7 @@ ni-front-panel { } ``` -#### Color background of Charts/Graphs or Freeform Text +### Color background of Charts/Graphs or Freeform Text ```css .user-class-name { @@ -193,7 +226,7 @@ ni-front-panel { } ``` -#### Color tick labels on Graphs +### Color tick labels on Graphs ```css .user-class-name .flot-x-axis text, @@ -202,7 +235,7 @@ ni-front-panel { } ``` -#### Color axis label color on Graphs +### Color axis label color on Graphs ```css .user-class-name text.axisLabels { @@ -210,7 +243,7 @@ ni-front-panel { } ``` -#### Color the text on String Controls or Indicators +### Color the text on String Controls or Indicators ```css .user-class-name { @@ -218,7 +251,7 @@ ni-front-panel { } ``` -#### Color the text on Numeric Controls or Indicators +### Color the text on Numeric Controls or Indicators ```css .user-class-name { @@ -226,7 +259,7 @@ ni-front-panel { } ``` -#### Remove background color from Numeric, String or Timestamp Controls +### Remove background color from Numeric, String or Timestamp Controls ```css .user-class-name { @@ -234,7 +267,7 @@ ni-front-panel { } ``` -#### Remove background color from Numeric, String or Timestamp Indicators +### Remove background color from Numeric, String or Timestamp Indicators ```css .user-class-name { @@ -242,7 +275,7 @@ ni-front-panel { } ``` -#### Change background + text color of active tab on a Tab Control +### Change background + text color of active tab on a Tab Control ```css .user-class-name .jqx-ribbon-item.jqx-ribbon-item-selected { @@ -251,7 +284,7 @@ ni-front-panel { } ``` -#### Hide tab carousel on a Tab Control (rely on programmatic tab switching instead) +### Hide tab carousel on a Tab Control (rely on programmatic tab switching instead) ```css .user-class-name .jqx-ribbon-item { @@ -259,7 +292,7 @@ ni-front-panel { } ``` -#### Configure the border of _just_ the tab control _container_ +### Configure the border of _just_ the tab control _container_ ```css .user-class-name { @@ -267,7 +300,7 @@ ni-front-panel { } ``` -#### Tighten up the blank space between all Flexible Layout Containers +### Tighten up the blank space between all Flexible Layout Containers ```css ni-flexible-layout-container { @@ -275,7 +308,7 @@ ni-flexible-layout-container { } ``` -#### Change background or foreground colors on Enums +### Change background or foreground colors on Enums ```css .user-class-name { @@ -284,7 +317,7 @@ ni-flexible-layout-container { } ``` -#### Make the track on a Slider transparent +### Make the track on a Slider transparent ```css .user-class-name .jqx-container .jqx-track::before { @@ -293,7 +326,7 @@ ni-flexible-layout-container { } ``` -#### Change color of the track labels on a Slider +### Change color of the track labels on a Slider ```css .user-class-name { @@ -301,7 +334,7 @@ ni-flexible-layout-container { } ``` -#### Set the fill color on Linear/Circular Progress Bars +### Set the fill color on Linear/Circular Progress Bars ```css .user-class-name { @@ -309,7 +342,7 @@ ni-flexible-layout-container { } ``` -#### Set the scale color on Tank Controls +### Set the scale color on Tank Controls ```css .user-class-name { @@ -317,7 +350,7 @@ ni-flexible-layout-container { } ``` -#### Set color of the thumb on a Vertical Switch +### Set color of the thumb on a Vertical Switch ```css .user-class-name[checked] span.jqx-thumb::after, jqs-switch-button[checked]:hover span.jqx-thumb::after { @@ -325,7 +358,7 @@ ni-flexible-layout-container { } ``` -#### Set the fill color on Gauges +### Set the fill color on Gauges ```css .user-class-name .jqx-value { @@ -333,7 +366,7 @@ ni-flexible-layout-container { } ``` -#### Set the true/false colors for the Power Button +### Set the true/false colors for the Power Button ```css .user-class-name { @@ -344,4 +377,4 @@ ni-flexible-layout-container { } ``` -Additional tips can be found in the [product documentation](http://www.ni.com/documentation/en/labview-web-module/latest/manual/customizing-appearance-controls-webvi/) or in the [shipping example that demonstrates CSS styling](https://github.com/ni/webvi-examples/tree/master/CustomizeWithCss). +Additional tips can be found in the [product documentation](http://www.ni.com/documentation/en/labview-web-module/latest/manual/customizing-appearance-controls-webvi/) or in the [shipping example that demonstrates CSS styling](../../CustomizeWithCss). diff --git a/package.json b/package.json index 6a27461b..07ffd3bf 100644 --- a/package.json +++ b/package.json @@ -4,7 +4,7 @@ "description": "Tools for validating LabVIEW NXG WebVI Examples", "private": true, "scripts": { - "link": "glob-exec --foreach \"{./*.md,./*/*.md}\" -- \"npm run markdown-link-check -- -c .linkcheck.json {{file}}\"", + "link": "glob-exec --foreach \"{./*.md,./*/*.md,./Guides/*/*.md}\" -- \"npm run markdown-link-check -- -c .linkcheck.json {{file}}\"", "spell": "mdspell --en-us -r --ignore-numbers \"**/*.md\" \"!node_modules/**\"", "lint": "markdownlint ./*.md ./*/*.md ./Guides/*/*.md", "markdown-link-check": "markdown-link-check", From 3cdbe0b295fe74efff7b125f688727c057592367 Mon Sep 17 00:00:00 2001 From: rajsite Date: Mon, 1 Jul 2019 12:58:30 -0500 Subject: [PATCH 09/10] Split JSLI into seperate branch --- Guides/JSLI/README.md | 165 ------------------ .../JSLI/readme_files/configureconsolelog.gif | Bin 370678 -> 0 bytes .../JSLI/readme_files/namespacefunctions.png | Bin 14162 -> 0 bytes 3 files changed, 165 deletions(-) delete mode 100644 Guides/JSLI/README.md delete mode 100644 Guides/JSLI/readme_files/configureconsolelog.gif delete mode 100644 Guides/JSLI/readme_files/namespacefunctions.png diff --git a/Guides/JSLI/README.md b/Guides/JSLI/README.md deleted file mode 100644 index b5464cdd..00000000 --- a/Guides/JSLI/README.md +++ /dev/null @@ -1,165 +0,0 @@ -# JSLI Frequently Asked Questions - -- [What is the JSLI?](#what-is-the-jsli) - -## What is the JSLI? - -The JavaScript Library Interface (JSLI) is a document type that allows you to create Block Diagram nodes that call global JavaScript functions in a WebVI. - -## Which functions can the JSLI call? - -Only functions that are available on the [global object](https://developer.mozilla.org/en-US/docs/Glossary/Global_object) can be called from a JSLI document. - -What this means in practice is that **built-in browser JavaScript functions** such as `console.log` may be called directly by a node configured with the JSLI document: - -![configure the global console.log function in a JSLI document](readme_files/configureconsolelog.gif) - -When writing custom JavaScript files, a recommended approach for placing **your JavaScript functions** on the global object is to explicitly set the function on the global object (as opposed to implicitly). In web browsers the global object is named `window` and can be assigned new properties. - -For example, the contents of `myJavaScriptFunctions.js` may contain: - -```js -window.myAwesomeAdder = function (num1, num2) { - return num1 + num2; -}; -``` - -A more robust JavaScript file may use the wrapper code template described in the [Preparing Your Code For Use With a JavaScript Library Interface](http://www.ni.com/documentation/en/labview-web-module/latest/manual/prepare-your-js-code/) help topic. - -For example, a more complete implementation of `myJavaScriptFunctions.js` using the wrapper code template: - -```js -(function () { - 'use strict'; - - window.myAwesomeAdder = function (num1, num2) { - return num1 + num2; - }; -}()); -``` - -The wrapper code template enables strict mode and prevents implicitly placing functions in the global scope. These features of the wrapper code template ensure that functions and variables are not unintentionally exposed on the global object. This avoids situations where you may unintentionally modify another script's functions or variables or another script may unintentionally modify your functions or variables. - -For more details about the wrapper code template see the [Preparing Your Code For Use With a JavaScript Library Interface](http://www.ni.com/documentation/en/labview-web-module/latest/manual/prepare-your-js-code/) help topic. - -## How can I expose multiple JavaScript functions and minimize global object pollution? - -You can combine several JavaScript functions in a **namespace** to prevent polluting the global object. Having fewer functions placed directly on the global object reduces the chance of collisions with other JavaScript functions placed on the global object. - -You should choose a namespace name that is unlikely to collide with other JavaScript files that place functions on the global object. - -For example, creating a namespace named `myMathFunctions` to add multiple functions: - -```js -(function () { - 'use strict'; - - const myAddFunction = function (num1, num2) { - return num1 + num2; - }; - - function mySubtractFunction (num1, num2) { - return num1 - num2; - } - - const myAbsoluteValueFunction = num => Math.abs(num); - - window.myMathFunctions = { - myAddFunction, - mySubtractFunction, - myAbsoluteValueFunction - }; -}()); -``` - -The functions in the `myMathFunctions` namespace can be configured in the JSLI document as follows: -![JSLI configuration using the namespace as part of the global name](readme_files/namespacefunctions.png) - -## What LabVIEW types are supported by the JSLI? - -Only the following LabVIEW types are supported by the JSLI: - -- Number, Boolean, String -- Array of Number - -For Number, only the following types are supported: - -- I8, I16, I32, U8, U16, U32 -- Single, Double - -Notably, number types I64, U64, Complex, and Fixed-Point are not supported by the JSLI. - -## How are the LabVIEW types represented in JavaScript? - -### LabVIEW Boolean - -The LabVIEW boolean type will be automatically converted to the JavaScript boolean type. - -### LabVIEW Number - -The various LabVIEW number types will be automatically converted back and forth to the single JavaScript number type. - -> **Note**: JavaScript has a single number type that corresponds to an IEEE 754 Double precision floating point value. The JSLI only supports LabVIEW number types that can be losslessly converted to a JavaScript number. - -### LabVIEW String - -A LabVIEW string will be automatically converted back and forth to the JavaScript string type. This will convert LabVIEW NXG UTF-8 strings to the JavaScript UTF-16 like strings and vice-versa. - -> **Note**: Do not attempt to send arbitrary binary back and forth as strings. Instead use byte arrays. Invalid LabVIEW strings or JavaScript strings may result in invalid sequences being replaced or errors. - -### LabVIEW Number Arrays - -The supported LabVIEW number arrays are passed to and from JavaScript as the corresponding JavaScript TypedArrays. JavaScript TypedArrays are used over ordinary JavaScript Arrays as the TypedArray variants give very good performance characteristics. - -For example: A LabVIEW U8 Array would be passed to JavaScript as a Uint8Array. - -> **Note**: When passing a LabVIEW numeric array as a TypedArray parameter to a JavaScript function, **DO NOT** hold onto and read from the TypedArray after the completion of the JavaScript function (synchronously or asynchronously). The TypedArray may be a view directly to the run-time memory and may not be valid after the JavaScript function has completed. -> -> **Note**: When passing a LabVIEW numeric array as a TypedArray parameter, only read from the array. **DO NOT** write to the array. The TypedArray may be a view directly to the run-time memory and may have undefined behavior if written to. - -## How can I return multiple values from JavaScript? - -Use JSON. - -## How can I wait for an asynchronous JavaScript function? - -If a function returns a Promise then LabVIEW NXG will wait for the Promise to resolve. - -JavaScript has several patterns for asynchronous behavior. - -### Promises - -Returns the promise directly - -### Async functions - -Mark the function async. JavaScript will create a Promise for you. - -### Callbacks - -Wrap a callback as a Promise - -## How do you hold onto a JavaScript Object reference? - -Create a reference manager to manage the JavaScript object references for you. - -### How do you construct a JavaScript Object? - -Create a wrapper function to invoke the constructor. Use the JavaScript Object reference pattern to hold onto it for you. - -### How do you invoke a method of a JavaScript Object? - -Create a wrapper function to invoke the method. Use the JavaScript Object reference pattern to hold onto it for you. - -## How do you place a custom visual on a WebVI? - -Add a class to a text control. -Find the control using JavaScript. -Replace the content of the control. -Note: This is a workaround. Behavior of text control may change between releases. - -## How do you queue events or messages? - -Use cases: listening for events that fire multiple times or streaming data over a custom protocol. -Use DataQueue pattern. -Actually should use Writeable Stream and polyfill: https://streams.spec.whatwg.org/#example-ws-no-backpressure diff --git a/Guides/JSLI/readme_files/configureconsolelog.gif b/Guides/JSLI/readme_files/configureconsolelog.gif deleted file mode 100644 index 09bcf135d63f84a0644c1b67fb06bf31df0474f3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 370678 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 diff --git a/Guides/JSLI/readme_files/namespacefunctions.png b/Guides/JSLI/readme_files/namespacefunctions.png deleted file mode 100644 index 84fdb8161bdf1befe1d81b8b44ebf9f4c6047c4c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14162 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 OKOA>CM*SXn{eJ=PYwT|T From 13c7e8b5dd3a3cb7fe1ac2d9cdf3ca1487f42c6a Mon Sep 17 00:00:00 2001 From: Milan Raj Date: Tue, 2 Jul 2019 12:06:01 -0500 Subject: [PATCH 10/10] Add period to line end --- Guides/Readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Guides/Readme.md b/Guides/Readme.md index 28cbd125..66829dd7 100644 --- a/Guides/Readme.md +++ b/Guides/Readme.md @@ -6,7 +6,7 @@ For complete documentation of well-supported LabVIEW NXG WebVI features see the ## CSS Frequently Asked Questions -The [CSS FAQ](CSS) provides a brief introduction to CSS and covers selectors known to work in specific versions of LabVIEW NXG +The [CSS FAQ](CSS) provides a brief introduction to CSS and covers selectors known to work in specific versions of LabVIEW NXG. > **Note:** The CSS FAQ covers topics that may require **detailed knowledge of underlying web concepts** or discuss APIs that are unstable and **may change between releases of LabVIEW NXG WebVIs**.