From 9308ff6c71bbce6722abfbc1867cccf271329a80 Mon Sep 17 00:00:00 2001 From: Bogdan Carpusor Date: Tue, 17 Sep 2024 16:41:20 +0300 Subject: [PATCH 01/33] Add oauth docs --- v2/docusaurus.config.js | 14 ++ .../clients-without-dedicated-backend.mdx | 106 +++++++++++ v2/oauth/desktop-mobile-authentication.mdx | 0 v2/oauth/introduction.mdx | 108 +++++++++++ .../machine-to-machine-authentication.mdx | 110 +++++++++++ ...ltiple-frontends-with-a-single-backend.mdx | 177 ++++++++++++++++++ ...tiple-frontends-with-separate-backends.mdx | 150 +++++++++++++++ v2/oauth/sidebars.js | 16 ++ v2/src/theme/NavbarItem/recipeSelector.js | 11 ++ 9 files changed, 692 insertions(+) create mode 100644 v2/oauth/clients-without-dedicated-backend.mdx create mode 100644 v2/oauth/desktop-mobile-authentication.mdx create mode 100644 v2/oauth/introduction.mdx create mode 100644 v2/oauth/machine-to-machine-authentication.mdx create mode 100644 v2/oauth/multiple-frontends-with-a-single-backend.mdx create mode 100644 v2/oauth/multiple-frontends-with-separate-backends.mdx create mode 100644 v2/oauth/sidebars.js diff --git a/v2/docusaurus.config.js b/v2/docusaurus.config.js index 8904ac4ca..5510a811e 100644 --- a/v2/docusaurus.config.js +++ b/v2/docusaurus.config.js @@ -256,6 +256,20 @@ module.exports = { beforeDefaultRemarkPlugins, }, ], + [ + "@docusaurus/plugin-content-docs", + { + id: "oauth", + path: "oauth", + routeBasePath: "docs/oauth", + sidebarPath: require.resolve("./oauth/sidebars.js"), + showLastUpdateTime: true, + editUrl: "https://github.com/supertokens/docs/tree/master/v2/", + remarkPlugins: remarkPlugins, + rehypePlugins: rehypePlugins, + beforeDefaultRemarkPlugins, + }, + ], [ "@docusaurus/plugin-content-docs", { diff --git a/v2/oauth/clients-without-dedicated-backend.mdx b/v2/oauth/clients-without-dedicated-backend.mdx new file mode 100644 index 000000000..5f7d3647b --- /dev/null +++ b/v2/oauth/clients-without-dedicated-backend.mdx @@ -0,0 +1,106 @@ +--- +title: Clients without dedicated backends +hide_title: true +--- + +# Clients Without Dedicated Backends + +You can use the following guide if you have `frontend applications` that use an `authentication service` that is on a different domain but do not have dedicated `backends` for other functionalities. + +## 1. Set Up Your Authentication Service + +:::note +TODO: Add actual code snippets here +::: + +First, initialize and setup **SuperTokens** in your `authentication service`. + +## 2. Initialize the OAuth2Provider + +In addition to the authentication recipes you’ve set up, initialize the `OAuth2Provider` recipe in your `backend service`. + +```typescript +import supertokens from "supertokens-node"; +import OAuth2Provider from"supertokens-node/recipe/oauth2provider"; + +supertokens.init({ + framework: "express", + supertokens: { + connectionURI: "", + apiKey: "", + }, + appInfo: { + appName: "", + apiDomain: "", + websiteDomain: "", + apiBasePath: "/auth", + websiteBasePath: "/auth" + }, + recipeList: [ + // This is where you initialize the OAuth2 recipe + OAuth2Provider.init(), + ] +}); +``` + +## 3. Add a Way to Create OAuth2 Clients + +We have to create OAuth2 clients in order to allow them to authenticate through our flow. + +First we need to add a method to do this. +Our recommendation is to use the `createOAuth2Client` function that is exposed by our SDK. +Alternatively, you can also directly call the **SuperTokens** core API. + +### Using the `createOAuth2Client` function + +:::note +TODO: Add details about what each parameter means +::: + +```typescript +import { createOAuth2Client } from "supertokens-node/recipe/oauth2provider"; + +createClient({ + // This value will be shown in the auth page when the app requests the user to authenticate + clientName: 'My Application', + // TODO: Add info about this + responseTypes: ['code', 'id_token'], + // TODO: Add info about this + grantTypes: ['authorization_code', 'refresh_token'], + // TODO: Add info about this + redirectUri: 'https://example.com/oauth/callback', +}); + +``` + +### Using the Core API + +```bash +curl -X POST https:///recipe/oauth2/admin/clients \ +-H "Content-Type: application/json" \ +-d '{ + "client_name": "My Application", + "response_types": ["code", "id_token"], + "grant_types": ["authorization_code", "refresh_token"], + "redirect_uri": ["https://different.com/oauth/callback"] +}' +``` + +## 4. Create Separate Clients for Each Frontend Application + +Using the method that we defined in the previous step create separate clients for each of your `frontend applications`. + +Repeat the process for each domain, adjusting the `clientName` and `redirectUri` as necessary. + + +## 5. Set Up Your Frontend and Integrate with an OIDC Library + +Integrate your frontend applications with a generic OAuth2 or OIDC library. Here are a few popular options: [oidc-client-js](https://github.com/IdentityModel/oidc-client-js), [openid-client](https://github.com/panva/node-openid-client) + +### Example Using `openid-client` + +```typescript + +// TODO: Add example here +``` + diff --git a/v2/oauth/desktop-mobile-authentication.mdx b/v2/oauth/desktop-mobile-authentication.mdx new file mode 100644 index 000000000..e69de29bb diff --git a/v2/oauth/introduction.mdx b/v2/oauth/introduction.mdx new file mode 100644 index 000000000..2ba95ed67 --- /dev/null +++ b/v2/oauth/introduction.mdx @@ -0,0 +1,108 @@ +--- +title: Introduction +hide_title: true +--- + +# OAuth2 Support + +**OAuth2**, Open Authorization, is an industry-standard authorization framework that enables third-party applications to obtain limited access to a user's resources without exposing their credentials. +It is commonly used for single sign-on (SSO) and authorization. + +## When to use OAuth2 + +In most cases, when using **SuperTokens**, you should not have to use OAuth2 directly. +We already expose the **[ThirdParty Recipe](/docs/thirdparty/introduction)** that enables users to login using external providers. +This covers most of the authentication scenarios that involve OAuth2. + +However, there are some custom use cases where you will have to implement a different authentication flow. + +- **[If you have multiple frontend clients that connect to different backends](/docs)** +- **[If you have multiple frontend clients connecting to the same backend](/docs)** +- **[If you want to have an unified login experience across multiple domains](/docs)** +- **[If you want to reuse your website login for desktop and mobile apps](/docs)** +- **[For authenticating microservices](/docs)** + +For these specific instances we expose recipes that allow you to complete your setup. + +## OAuth2 Reference + +Before we explore the guides let's first recap some common terms and concepts that are used in the framework. +We will use them throughout the next pages. + +### Providers + +An **OAuth 2.0 Provider** is a server that implements the OAuth 2.0 protocol, responsible for issuing access tokens to third-party applications after authenticating users. +The provider enables those applications to access and interact with the user's resources securely and without exposing the user's credentials. + +### Clients + +An **OAuth 2.0 Client** is an application that interacts with an **OAuth 2.0 Provider** to request access to a user's resources. +It then utilizes the access tokens granted by the provider to perform authorized operations on behalf of the user. + +The term **client** does not imply any particular implementation characteristics (e.g. whether the application executes on a server, a desktop, or other devices). + + +### Tokens + +An **OAuth Token** is a credential used to access protected resources on behalf of a user. +There are several types of tokens defined by the protocol. + +#### Access Token + +**Access tokens** are what the **OAuth Client** uses to make requests to an API. The access token is meant to be read and validated by the API. + +To validate the token on the backend side you can use the `validateOAuth2AccessToken` exposed by the `OAuth2Provider` recipe. + +#### ID Token + +An ID token contains information about what happened when a user authenticated, and is intended to be read by the **OAuth Client**. +The ID token may also contain information about the user such as their name or email address, although that is not a requirement of an ID token. + +#### Refresh Token + +An OAuth Refresh Token is a string that the OAuth client can use to get a new access token without the user's interaction. + +### Flows + +**Flows** are the set of steps an **OAuth Client** has to perform in order to obtain an access token. +Our implementation supports the following flow types: +- [Authorization Code](https://datatracker.ietf.org/doc/html/rfc6749#section-1.3.1) +- [Implicit](https://datatracker.ietf.org/doc/html/rfc6749#section-1.3.2) +- [Client credentials](https://datatracker.ietf.org/doc/html/rfc6749#section-1.3.4) + + +### Redirect URIs + +In the *Authorization Code* and *Implicit* flows, the user is redirected to the authorization provider at the start of authentication. +The results are then communicated to the client through a redirection to one of the redirect URIs registered by the client. + +These are configured on the client, during creation, or they can also be added later. +At the end of the authentication flow the user is redirected to one of these after they have completed the authorization request. + +### Scopes + +**Scopes** in OAuth 2.0 specify the level of access an application is requesting from the user's resources. +This way you can define the boundaries and permissions for what the access token can do. + +:::note +- Where do we add these scopes in the actual code +- What's user-info +::: + +Our implementation has the following built-in scopes: +- `email`: adds the `email` and `email_verified` claims into the id-token and the user-info. +- `phoneNumber`: adds the `phoneNumber` and `phoneNumber_verified` claims into the id-token and the user-info +- `roles`: adds the roles claim into the id-token and access token. + - This will contain the roles returned by `getRolesForUser` + - This only works if the `UserRoles` recipe is initialized +- `permissions`: adds the `permissions` claim into the id-token and access token. + - This will contain the list of permissions obtained by concatenating the result of `getPermissionsForRole` for all roles returned by `getRolesForUser` + - This only works if the `UserRoles` recipe is initialized + + +### PKCE + +[**PKCE**](https://oauth.net/2/pkce/) is an extension to the **Authorization Code flow** to prevent CSRF and authorization code injection attacks. +We support PKCE and recommend that you use a library that makes use of it. +You can opt-in by setting the `code_challenge` (and optionally `code_challenge_method`) parameters in the authorization URL and then verifying it after the user gets redirected back to the client. + diff --git a/v2/oauth/machine-to-machine-authentication.mdx b/v2/oauth/machine-to-machine-authentication.mdx new file mode 100644 index 000000000..9f2afced9 --- /dev/null +++ b/v2/oauth/machine-to-machine-authentication.mdx @@ -0,0 +1,110 @@ +--- +title: Machine to Machine Authentication +hide_title: true +--- + +# Machine to Machine Authentication + +You can use the following guide if you want to implement a custom authentication flow between your microservices. + +## 1. Set Up Your Authentication Service + +:::note +TODO: Add actual code snippets here +::: + +First, initialize and setup **SuperTokens** in your `authentication service`. + +## 2. Initialize the OAuth2Provider + +In addition to the authentication recipes you’ve set up, initialize the `OAuth2Provider` recipe in your `authentication backend`. + +```typescript +import supertokens from "supertokens-node"; +import OAuth2Provider from"supertokens-node/recipe/oauth2provider"; + +supertokens.init({ + framework: "express", + supertokens: { + connectionURI: "", + apiKey: "", + }, + appInfo: { + appName: "", + apiDomain: "", + websiteDomain: "", + apiBasePath: "/auth", + websiteBasePath: "/auth" + }, + recipeList: [ + // This is where you initialize the OAuth2 recipe + OAuth2Provider.init(), + ] +}); +``` + +## 3. Add a Way to Create OAuth2 Clients + +We have to create OAuth2 clients in order to allow them to authenticate through our flow. + +First we need to add a method to do this. +Our recommendation is to use the `createOAuth2Client` function that is exposed by our SDK. +Alternatively, you can also directly call the **SuperTokens** core API. + +### Using the `createOAuth2Client` function + +:::note +TODO: Add details about what each parameter means +::: + +```typescript +import { createOAuth2Client } from "supertokens-node/recipe/oauth2provider"; + +createClient({ + clientName: 'My Application', + grantTypes: ["client_credentials"], +}); + +``` + +### Using the Core API + +```bash +curl -X POST https:///recipe/oauth2/admin/clients \ +-H "Content-Type: application/json" \ +-d '{ + "client_name": "My Application", + "grant_types": ["client_credentials"] +}' +``` + +## 4. Create Separate Clients for Each Application + +Using the method that we defined in the previous step create separate clients for each of your `backend services`. + +Repeat the process for each domain, adjusting the `clientName` as necessary. + +## 5. Create Tokens + +To generate tokens for your microservices using the `client_credentials` grant type, use the following code snippet: + +:::note +Not sure on how scope should look like +::: + +```typescript +fetch('https://api.auth.example.com/auth/oauth/token', { + method: 'POST', + headers: { + 'Content-Type': 'application/json', + }, + body: JSON.stringify({ + client_id: "", + client_secret: "", + grant_type: 'client_credentials', + scope: [""], + }), +}); +``` + + diff --git a/v2/oauth/multiple-frontends-with-a-single-backend.mdx b/v2/oauth/multiple-frontends-with-a-single-backend.mdx new file mode 100644 index 000000000..414ee7c9e --- /dev/null +++ b/v2/oauth/multiple-frontends-with-a-single-backend.mdx @@ -0,0 +1,177 @@ +--- +title: Multiple frontend domains with a common backend +hide_title: true +--- + +import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs" + + +# Multiple Frontend Domains Using a Single Backend + +You can use the following guide if you have multiple **`frontend applications`** on different domains, that use the same **`backend service`**. + +## 1. Set Up Your Authentication Service + +:::note +TODO: Add actual code snippets here +::: + +First, initialize and setup **SuperTokens** in your `authentication service`. + +## 2. Initialize the OAuth2Provider + +In addition to the authentication recipes you’ve set up, initialize the `OAuth2Provider` recipe in your `backend service`. + +```typescript +import supertokens from "supertokens-node"; +import OAuth2Provider from"supertokens-node/recipe/oauth2provider"; + +supertokens.init({ + framework: "express", + supertokens: { + connectionURI: "", + apiKey: "", + }, + appInfo: { + appName: "", + apiDomain: "", + websiteDomain: "", + apiBasePath: "/auth", + websiteBasePath: "/auth" + }, + recipeList: [ + // This is where you initialize the OAuth2 recipe + OAuth2Provider.init(), + ] +}); +``` + +## 3. Add a Way to Create OAuth2 Clients + +We have to create OAuth2 clients in order to allow them to authenticate through our flow. + +First we need to add a method to do this. +Our recommendation is to use the `createOAuth2Client` function that is exposed by our SDK. +Alternatively, you can also directly call the **SuperTokens** core API. + +### Using the `createOAuth2Client` function + +:::note +TODO: Add details about what each parameter means +::: + +```typescript +import { createOAuth2Client } from "supertokens-node/recipe/oauth2provider"; + +createClient({ + // This value will be shown in the auth page when the app requests the user to authenticate + clientName: 'My Application', + // TODO: Add info about this + responseTypes: ['code', 'id_token'], + // TODO: Add info about this + grantTypes: ['authorization_code', 'refresh_token'], + // TODO: Add info about this + redirectUri: 'https://example.com/oauth/callback', +}); + +``` + +### Using the Core API + +```bash +curl -X POST https:///recipe/oauth2/admin/clients \ +-H "Content-Type: application/json" \ +-d '{ + "client_name": "My Application", + "response_types": ["code", "id_token"], + "grant_types": ["authorization_code", "refresh_token"], + "redirect_uri": ["https://different.com/oauth/callback"] +}' +``` + +## 4. Create Separate Clients for Each Frontend Application + +Using the method that we defined in the previous step create separate clients for each of your `frontend applications`. + +Repeat the process for each domain, adjusting the `clientName` and `redirectUri` as necessary. + +## 5. Configure OAuth2Client recipe in the Backend + +Update the backend configuration to also initialize the `OAuth2Client` recipe and include the previously created clients. + +:::note +Not sure on how the init call should look like here +::: + +```typescript +import supertokens from "supertokens-node"; +import OAuth2Client from"supertokens-node/recipe/oauth2client"; + +supertokens.init({ + framework: "express", + supertokens: { + connectionURI: "", + apiKey: "", + }, + appInfo: { + appName: "", + apiDomain: "", + websiteDomain: "", + apiBasePath: "/auth", + websiteBasePath: "/auth" + }, + recipeList: [ + OAuth2Provider.init(), + // This is where you initialize the OAuth2Client recipe + OAuth2Client.init([ + {clientId: 'CLIENT_ID_A'}, + {clientId: 'CLIENT_ID_B'} + ]), + ] +}); +``` + +## 6. Initialize the recipe on the Frontend Applications + +:::note +Not sure about this step. I assumed that the web js is used here. +::: + +Initialize the `OAuth2Provider` recipe on the frontend of each of your applications, ensuring you set the `authMode` to `header`. + +```typescript +import OAuth2Provider from "supertokens-web-js/recipe/oauth2provider"; + +SuperTokens.init({ + appInfo: { + appName: "", + apiDomain: "", + websiteDomain: "", + apiBasePath: "/auth", + websiteBasePath: "/auth" + }, + recipeList: [ + OAuth2Provider.init({ + authMode: "header" + }) + ] +}); +``` + +## 7. Add the Login UI in each frontend application + +In your frontend applications you will have to add a login action that will open the authentication page. +Here's a basic example using a link: +``` html + + Login with OAuth2 + +``` + +The authentication URL needs to adhere to the following format: +- `` - The domain of the authentication backend. The example assumes that you didn't overwrite the default `apiBasePath`. +If that's the case you will have to replace `/auth` with you custom base path. +- `` - The client ID of the client you created in the previous step +- `` - The redirect URI of the client you created in the previous step + + diff --git a/v2/oauth/multiple-frontends-with-separate-backends.mdx b/v2/oauth/multiple-frontends-with-separate-backends.mdx new file mode 100644 index 000000000..bd1620d11 --- /dev/null +++ b/v2/oauth/multiple-frontends-with-separate-backends.mdx @@ -0,0 +1,150 @@ +--- +title: Multiple frontend domains with separate backends +hide_title: true +--- + +import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs" + + +# Multiple frontend domains with separate backends + +You can use the following guide if you have a single **`authentication service`** that is used by multiple **`frontend applications`** which in turn have separate **`backends`**. + +## 1. Set Up Your Authentication Service + +:::note +TODO: Add actual code snippets here +::: + +First, initialize and setup **SuperTokens** in your `authentication service`. + +## 2. Initialize the OAuth2Provider + +In addition to the authentication recipes you’ve set up, initialize the `OAuth2Provider` recipe in your `authentication service`. + +```typescript +import supertokens from "supertokens-node"; +import OAuth2Provider from"supertokens-node/recipe/oauth2provider"; + +supertokens.init({ + framework: "express", + supertokens: { + connectionURI: "", + apiKey: "", + }, + appInfo: { + appName: "", + apiDomain: "", + websiteDomain: "", + apiBasePath: "/auth", + websiteBasePath: "/auth" + }, + recipeList: [ + // This is where you initialize the OAuth2 recipe + OAuth2Provider.init(), + ] +}); +``` + +## 3. Add a Way to Create OAuth2 Clients + +We have to create OAuth2 clients in order to allow them to authenticate through our flow. + +First we need to add a method to do this. +Our recommendation is to use the `createOAuth2Client` function that is exposed by our SDK. +Alternatively, you can also directly call the **SuperTokens** core API. + +### Using the `createOAuth2Client` function + +:::note +TODO: Add details about what each parameter means +::: + +```typescript +import { createOAuth2Client } from "supertokens-node/recipe/oauth2provider"; + +createClient({ + // This value will be shown in the auth page when the app requests the user to authenticate + clientName: 'My Application', + // TODO: Add info about this + responseTypes: ['code', 'id_token'], + // TODO: Add info about this + grantTypes: ['authorization_code', 'refresh_token'], + // TODO: Add info about this + redirectUri: 'https://example.com/oauth/callback', +}); + +``` + +### Using the Core API + +```bash +curl -X POST https:///recipe/oauth2/admin/clients \ +-H "Content-Type: application/json" \ +-d '{ + "client_name": "My Application", + "response_types": ["code", "id_token"], + "grant_types": ["authorization_code", "refresh_token"], + "redirect_uri": ["https://different.com/oauth/callback"] +}' +``` + +## 4. Create Separate Clients for Each Application + +Using the method that we defined in the previous step create separate clients for each of your applications. + +Repeat the process for each domain, adjusting the `clientName` and `redirectUri` as necessary. + +## 5. Set Up Session Handling in Each Application + +You will have to setup custom session handling logic in each `application backend`. + +You can use a generic OpenID Connect (OIDC) or OAuth2 library. +For `NodeJS` we recommend using either [passport-oauth2](https://www.passportjs.org/packages/passport-oauth2/) or [passport-openidconnect](https://www.passportjs.org/packages/passport-openidconnect/). + +#### Example using `passport-oauth2`: + +```typescript +// TODO: This is a dummy example. It will have to be adjusted +const passport = require('passport'); +const OAuth2Strategy = require('passport-oauth2'); + +passport.use(new OAuth2Strategy({ + authorizationURL: 'https://auth.example.com/oauth2/authorize', + tokenURL: 'https://api.auth.example.com/oauth2/token', + clientID: 'YOUR_CLIENT_ID', + clientSecret: 'YOUR_CLIENT_SECRET', + callbackURL: 'https://different.com/oauth/callback' +}, (accessToken, refreshToken, profile, cb) => { + User.findOrCreate({ oauthId: profile.id }, (err, user) => { + return cb(err, user); + }); +})); + +app.get('/auth/provider', + passport.authenticate('oauth2')); + +app.get('/auth/provider/callback', + passport.authenticate('oauth2', { failureRedirect: '/login' }), + (req, res) => { + res.redirect('/'); + }); +``` + +## 6. Add the Login UI in your frontend applications + +In your `frontend applications` you will have to add a login action that will redirect the user to the authentication page. +Here's a basic example using a link: +``` html + + Login with OAuth2 + +``` + +The authentication URL needs to adhere to the following format: +- `` - The domain of the authentication backend. The example assumes that you didn't overwrite the default `apiBasePath`. +If that's the case you will have to replace `/auth` with you custom base path. +- `` - The client ID of the client you created in the previous step +- `` - The redirect URI of the client you created in the previous step + + diff --git a/v2/oauth/sidebars.js b/v2/oauth/sidebars.js new file mode 100644 index 000000000..56a7b5473 --- /dev/null +++ b/v2/oauth/sidebars.js @@ -0,0 +1,16 @@ +module.exports = { + sidebar: [ + "introduction", + { + type: "category", + label: "Use Cases", + collapsed: false, + items: [ + "multiple-frontends-with-separate-backends", + "multiple-frontends-with-a-single-backend", + "clients-without-dedicated-backend", + "machine-to-machine-authentication", + ], + }, + ], +}; diff --git a/v2/src/theme/NavbarItem/recipeSelector.js b/v2/src/theme/NavbarItem/recipeSelector.js index 505c328b5..b3a9679aa 100644 --- a/v2/src/theme/NavbarItem/recipeSelector.js +++ b/v2/src/theme/NavbarItem/recipeSelector.js @@ -38,6 +38,10 @@ export default function RecipeSelector(props) { return "User Management Dashboard"; case "multitenancy": return "Multi Tenancy"; + case "anomaly_detection": + return "Bot/Spam Detection"; + case "oauth": + return "OAuth"; default: return "Select Recipe"; } @@ -192,6 +196,13 @@ export default function RecipeSelector(props) { Bot / Spam Detection +
  • + OAuth +
  • From c9127b536c9430c8a9c6715e0aba0f6fb89139ab Mon Sep 17 00:00:00 2001 From: Bogdan Carpusor Date: Thu, 19 Sep 2024 20:47:12 +0300 Subject: [PATCH 02/33] Update the scopes section --- .../clients-without-dedicated-backend.mdx | 106 +++-- v2/oauth/common-actions.mdx | 37 ++ v2/oauth/desktop-mobile-authentication.mdx | 152 ++++++ v2/oauth/introduction.mdx | 140 +++--- .../machine-to-machine-authentication.mdx | 121 ++--- ...ltiple-frontends-with-a-single-backend.mdx | 201 ++++---- ...tiple-frontends-with-separate-backends.mdx | 433 ++++++++++++++---- v2/oauth/reuse-website-login.mdx | 17 + v2/oauth/sidebars.js | 2 + v2/src/theme/NavbarItem/recipeSelector.js | 4 +- 10 files changed, 873 insertions(+), 340 deletions(-) create mode 100644 v2/oauth/common-actions.mdx create mode 100644 v2/oauth/reuse-website-login.mdx diff --git a/v2/oauth/clients-without-dedicated-backend.mdx b/v2/oauth/clients-without-dedicated-backend.mdx index 5f7d3647b..637ff185c 100644 --- a/v2/oauth/clients-without-dedicated-backend.mdx +++ b/v2/oauth/clients-without-dedicated-backend.mdx @@ -3,21 +3,63 @@ title: Clients without dedicated backends hide_title: true --- +import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs" +import TabItem from '@theme/TabItem'; +import CoreInjector from "/src/components/coreInjector" + # Clients Without Dedicated Backends -You can use the following guide if you have `frontend applications` that use an `authentication service` that is on a different domain but do not have dedicated `backends` for other functionalities. +You can use the following guide if you have `frontend applications` that use an [**Authentication Service**](/#authorization) that is on a different domain but do not have dedicated `backends` for other functionalities. + -## 1. Set Up Your Authentication Service +:::info +This guide assumes that you already have setup and configured **SuperTokens** in your [**Authentication Service**](/docs/oauth/introduction#authentication-service). -:::note -TODO: Add actual code snippets here +For more information on how to do that please check our [quickstart guide](/docs/thirdparty/introduction). ::: -First, initialize and setup **SuperTokens** in your `authentication service`. +## 1. Create the OAuth2 Clients + +For each of your **`frontend`** applications you will have to create a separate [**OAuth2 client**](/docs/oauth/introduction#client). +This can be done by directly calling the **SuperTokens Core** API. + + + +```bash +curl -X POST ^{coreInjector_uri_without_quotes}/recipe/oauth2/admin/clients \ + -H "Content-Type: application/json" \ + -H "api-key: ^{coreInjector_api_key_without_quotes}" \ + -d '{ + "client_name": "", + "response_types": ["code", "id_token"], + "grant_types": ["authorization_code", "refresh_token"], + "redirect_uri": ["https://.com/oauth/callback"] + }' +``` + + + + +- `client_name` - A human-readable name of the client that will be presented to the [**end-user**](/docs/oauth/introduction#authorization) during authorization. +- `response_types` - Specifies the types of responses your client expects from the Authorization Server. + - `code`: Indicates that the [**Client**](/#authorization) will receive an [**Authorization Code**](/#authorization) that will be exchanged for an [**Access Token**](/#authorization). + - `id_token`: Indicates that the [**Client**](/#authorization) expects an [**ID Token**](/#authorization) +- `grant_types` - The grant types that the [**Client**](/#authorization) will use. + - `authorization_code`: Allows exchanging the [**Authorization Code**](/#authorization) for an [**Access Token**](/#authorization). + - `refresh_token`: Allows exchanging the [**Refresh Token**](/#authorization) for a new [**Access Token**](/#authorization). +- `redirect_uri` - A list of URIs to which the [**Authorization Server**](/#authorization) will send the user-agent (browser) after completing the authorization step -## 2. Initialize the OAuth2Provider +If the creation was successful, the response will return a `201` status code. +The response body will contain a **`client_id`** field which you will need to use in the next steps. -In addition to the authentication recipes you’ve set up, initialize the `OAuth2Provider` recipe in your `backend service`. +## 2. Initialize the OAuth2Provider recipe on the authentication service + + +In your **`authentication service`** you will need to initialize both the **OAuth2Provider** recipe. +The recipe will expose the endpoints needed for enabling the [**OAuth 2.0**](/docs/oauth/introduction#oauth-20) flow. + + + ```typescript import supertokens from "supertokens-node"; @@ -37,60 +79,34 @@ supertokens.init({ websiteBasePath: "/auth" }, recipeList: [ - // This is where you initialize the OAuth2 recipe OAuth2Provider.init(), ] }); ``` -## 3. Add a Way to Create OAuth2 Clients + -We have to create OAuth2 clients in order to allow them to authenticate through our flow. + -First we need to add a method to do this. -Our recommendation is to use the `createOAuth2Client` function that is exposed by our SDK. -Alternatively, you can also directly call the **SuperTokens** core API. +:::caution -### Using the `createOAuth2Client` function +At the moment we do not have support creating OAuth2 providers in the Go SDK. -:::note -TODO: Add details about what each parameter means ::: -```typescript -import { createOAuth2Client } from "supertokens-node/recipe/oauth2provider"; - -createClient({ - // This value will be shown in the auth page when the app requests the user to authenticate - clientName: 'My Application', - // TODO: Add info about this - responseTypes: ['code', 'id_token'], - // TODO: Add info about this - grantTypes: ['authorization_code', 'refresh_token'], - // TODO: Add info about this - redirectUri: 'https://example.com/oauth/callback', -}); - -``` + -### Using the Core API + -```bash -curl -X POST https:///recipe/oauth2/admin/clients \ --H "Content-Type: application/json" \ --d '{ - "client_name": "My Application", - "response_types": ["code", "id_token"], - "grant_types": ["authorization_code", "refresh_token"], - "redirect_uri": ["https://different.com/oauth/callback"] -}' -``` +:::caution -## 4. Create Separate Clients for Each Frontend Application +At the moment we do not have support creating OAuth2 providers in the Python SDK. + +::: -Using the method that we defined in the previous step create separate clients for each of your `frontend applications`. + -Repeat the process for each domain, adjusting the `clientName` and `redirectUri` as necessary. + ## 5. Set Up Your Frontend and Integrate with an OIDC Library diff --git a/v2/oauth/common-actions.mdx b/v2/oauth/common-actions.mdx new file mode 100644 index 000000000..790229fa7 --- /dev/null +++ b/v2/oauth/common-actions.mdx @@ -0,0 +1,37 @@ +--- +title: Common Actions +hide_title: true +--- + +# Common Actions + +## Working with Scopes + +The allowed scopes are set during the creation process of an **OAuth2 Client**. + +By default, our **OAuth2** implementation adds the following built-in scopes: +- `email`: adds the `email` and `email_verified` claims into the Id Token and the User Info. +- `phoneNumber`: adds the `phoneNumber` and `phoneNumber_verified` claims into the Id Token and the User Info +- `roles`: adds the roles claim into the Id Token and Access Token. + - This will contain the roles returned by `getRolesForUser` + - This only works if the `UserRoles` recipe is initialized +- `permissions`: adds the `permissions` claim into the Id Token and Access Token. + - This will contain the list of permissions obtained by concatenating the result of `getPermissionsForRole` for all roles returned by `getRolesForUser` + - This only works if the `UserRoles` recipe is initialized + +### Requesting Specific Scopes + +The client can request specific scopes by adding `scope` query param to the Authorization URL. +The requested scopes have to be a subset of what is allowed for the client, otherwise the authentication requst will fail. +By default all scopes are granted to the client. + +### Overriding granted scopes + +If you want to manually modify the list of scopes that are granted to the client during the authentication flow you can do this by using overrides. +You will have to add a custom implementation for `getConsentRequest` and change the value it returns for `requestedScope`. + +## Overriding Tokens + +If you want to properties in the token payloads you can do this by overriding either the `buildIdTokenPayload` or the `buildAccessTokenPayload` functions. + + diff --git a/v2/oauth/desktop-mobile-authentication.mdx b/v2/oauth/desktop-mobile-authentication.mdx index e69de29bb..8c406f0b4 100644 --- a/v2/oauth/desktop-mobile-authentication.mdx +++ b/v2/oauth/desktop-mobile-authentication.mdx @@ -0,0 +1,152 @@ +--- +title: Reuse website login for desktop and mobile apps +hide_title: true +--- + +import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs" +import CoreInjector from "/src/components/coreInjector" + +# Multiple frontend domains with separate backends + +You can use the following guide if you have a single [**Authentication Service**](/docs/oauth/introduction#authentication-service) that is used by multiple applications. +In turn, each app has separate **`frontend `** and **`backend`** instances that are served from different domains. + +Using the actual **OAuth 2.0** terminology, we can say that each **`frontend`** can be considered a [**Client**](/docs/oauth/introduction#client) and each **`backend`** is a [**Resource Server**](/docs/oauth/introduction#resource-server). + +:::info +This guide assumes that you already have setup and configured your **SuperTokens** in your [**Authentication Service**](/docs/oauth/introduction#authentication-service). + +For more information on how to do that please check our [quickstart guide](/docs/thirdparty/introduction). +::: + +## 1. Create the OAuth2 Clients + +For each of your **`frontend`** applications you will have to create a separate [**OAuth2 client**](/docs/oauth/introduction#client). +This can be done by directly calling the **SuperTokens Core** API. + + + +```bash +curl -X POST ^{coreInjector_uri_without_quotes}/recipe/oauth2/admin/clients \ + -H "Content-Type: application/json" \ + -H "api-key: ^{coreInjector_api_key_without_quotes}" \ + -d '{ + "client_name": "", + "response_types": ["code", "id_token"], + "grant_types": ["authorization_code", "refresh_token"], + "redirect_uri": ["https://.com/oauth/callback"] + }' +``` + + + + +- `client_name` - A human-readable name of the client that will be presented to the [**end-user**](/docs/oauth/introduction#authorization) during authorization. +- `response_types` - Specifies the types of responses your client expects from the Authorization Server. + - `code`: Indicates that the [**Client**](/#authorization) will receive an [**Authorization Code**](/#authorization) that will be exchanged for an [**Access Token**](/#authorization). + - `id_token`: Indicates that the [**Client**](/#authorization) expects an [**ID Token**](/#authorization) +- `grant_types` - The grant types that the [**Client**](/#authorization) will use. + - `authorization_code`: Allows exchanging the [**Authorization Code**](/#authorization) for an [**Access Token**](/#authorization). + - `refresh_token`: Allows exchanging the [**Refresh Token**](/#authorization) for a new [**Access Token**](/#authorization). +- `redirect_uri` - A list of URIs to which the [**Authorization Server**](/#authorization) will send the user-agent (browser) after completing the authorization step + +If the creation was successful, the response will return a `201` status code. +The response body will contain a **`client_id`** field which you will need to use in the next steps. + +## 2. Initialize the provider recipe + +In your [**Authentication Service**](/docs/oauth/introduction#authentication-service) you will need to initialize the **OAuth2Provider** recipe. +The recipe will expose the endpoints needed for enabling the [**OAuth 2.0**](/docs/oauth/introduction#oauth-20) flow. + + + + + +```typescript +import supertokens from "supertokens-node"; +import OAuth2Provider from"supertokens-node/recipe/oauth2provider"; + +supertokens.init({ + framework: "express", + supertokens: { + connectionURI: "", + apiKey: "", + }, + appInfo: { + appName: "", + apiDomain: "", + websiteDomain: "", + apiBasePath: "/auth", + websiteBasePath: "/auth" + }, + recipeList: [ + // This is where you initialize the OAuth2 recipe + OAuth2Provider.init(), + ] +}); +``` + + + + + +:::caution + +At the moment we do not have support creating OAuth2 providers in the Go SDK. + +::: + + + + + +:::caution + +At the moment we do not have support creating OAuth2 providers in the Python SDK. + +::: + + + + + +## 3. Set Up Session Handling in Each Application + +You will have to setup custom session handling logic in each of your `backend applications`. + + + + + +You can use a generic OIDC or OAuth2 library. +For `NodeJS` we recommend using either [passport-oauth2](https://www.passportjs.org/packages/passport-oauth2/) or [passport-openidconnect](https://www.passportjs.org/packages/passport-openidconnect/). + +#### Example using `passport-oauth2`: + +```typescript +// TODO: Add a sample code snippet here +``` + + + + + + +## 4. Update the login flow in your frontend applications + +In your `frontend applications` you will have to add a login action that will direct the user to the authentication page. +You can just use a link for that. The link should be structured like this: + +``` +/auth/oauth/auth?client_id=&redirect_uri= +``` +- `` - The domain of your [**Authentication Service**](/docs/oauth/introduction#authentication-service). +The example assumes that you didn't overwrite the default `apiBasePath`. +If that's the case you will have to replace `/auth` with you custom base path. +- `` - The corresponding client ID based on what you have created in the first step. +- `` - The corresponding redirect URI based on what you have created in the first step. + +## 5. Test the new authentication flow + +With everything set up, you can now test your login flow. +Just use the link that you have created in the previous step and try to access a protected resource. diff --git a/v2/oauth/introduction.mdx b/v2/oauth/introduction.mdx index 2ba95ed67..9d46f6c75 100644 --- a/v2/oauth/introduction.mdx +++ b/v2/oauth/introduction.mdx @@ -6,103 +6,133 @@ hide_title: true # OAuth2 Support **OAuth2**, Open Authorization, is an industry-standard authorization framework that enables third-party applications to obtain limited access to a user's resources without exposing their credentials. -It is commonly used for single sign-on (SSO) and authorization. + ## When to use OAuth2 -In most cases, when using **SuperTokens**, you should not have to use OAuth2 directly. +In most cases, when using **SuperTokens**, you should not have to use **OAuth2** directly. We already expose the **[ThirdParty Recipe](/docs/thirdparty/introduction)** that enables users to login using external providers. This covers most of the authentication scenarios that involve OAuth2. However, there are some custom use cases where you will have to implement a different authentication flow. -- **[If you have multiple frontend clients that connect to different backends](/docs)** -- **[If you have multiple frontend clients connecting to the same backend](/docs)** -- **[If you want to have an unified login experience across multiple domains](/docs)** -- **[If you want to reuse your website login for desktop and mobile apps](/docs)** -- **[For authenticating microservices](/docs)** +- **[If you have multiple frontend clients that connect to different backends](/docs/oauth/multiple-frontends-with-separate-backends)** +- **[If you have multiple frontend clients connecting to the same backend](/docs/oauth/multiple-frontends-with-a-single-backend)** +- **[If you want to have an unified login experience across multiple independent applications](/docs/oauth/clients-without-dedicated-backend)** +- **[If you want to reuse your website login for desktop and mobile apps](/docs/oauth/reuse-website-login)** +- **[For authenticating microservices](/docs/oauth/machine-to-machine-authentication)** For these specific instances we expose recipes that allow you to complete your setup. +:::info +The **OAuth2 recipes** are available only when using the **SuperTokens Managed Service**. This feature is not included in the **Self-Hosted** version. + +Also, the feature at the moment is supported just by the following **SDKs**: +- `supertokens-node` +- `supertokens-auth-react` + +Additionally, our **OAuth2** implementation does not support magic links based login flows right now. +::: + ## OAuth2 Reference -Before we explore the guides let's first recap some common terms and concepts that are used in the framework. +Before we explore the guides let's first recap some common terms and concepts that are the base of the framework. We will use them throughout the next pages. -### Providers +### Key Terms + +#### Resource Owner -An **OAuth 2.0 Provider** is a server that implements the OAuth 2.0 protocol, responsible for issuing access tokens to third-party applications after authenticating users. -The provider enables those applications to access and interact with the user's resources securely and without exposing the user's credentials. +The **Resource Owner** is an entity capable of granting access to a protected resource. +When the resource owner is a person, it is referred to as an **end-user**. -### Clients +#### Resource Server + +The server hosting the protected resources, capable of accepting and responding to protected resource requests using **Access Tokens**. + +#### Authorization Server + +The server issuing access tokens to the **Client** after successfully authenticating the [**Resource Owner**](#resource-owner) and obtaining authorization + +#### Client An **OAuth 2.0 Client** is an application that interacts with an **OAuth 2.0 Provider** to request access to a user's resources. -It then utilizes the access tokens granted by the provider to perform authorized operations on behalf of the user. +It then utilizes the access tokens granted by the provider to perform authorized operations on behalf of the [**Resource Owner**](#resource-owner). The term **client** does not imply any particular implementation characteristics (e.g. whether the application executes on a server, a desktop, or other devices). +##### Provider -### Tokens - -An **OAuth Token** is a credential used to access protected resources on behalf of a user. -There are several types of tokens defined by the protocol. +An **OAuth 2.0 Provider** is a server that implements the **OAuth 2.0** protocol, responsible for issuing access tokens to third-party applications after authenticating users. +The provider typically combines the functionality of both the [**Authorization Server**](/#authorization-server) and the [**Resource Server**](/#resource-server). +It defines the endpoints and mechanisms for token issuance and validation, and ensures secure, scalable interactions between [**Clients**](/#client), [**Resource Owners**](/#resource-owner), and [**Resource Servers**](/#authorization). #### Access Token -**Access tokens** are what the **OAuth Client** uses to make requests to an API. The access token is meant to be read and validated by the API. +A token issued by the [**Authorization Server**](/#authorization-server), that then gets passed by the [**Client**](/#client) to the [**Resource Server**](/#resource-server) to gain access to protected resources. +The access token is meant to be read and validated only by the **Resource Server**. -To validate the token on the backend side you can use the `validateOAuth2AccessToken` exposed by the `OAuth2Provider` recipe. +#### Refresh Token -#### ID Token +An **OAuth Refresh Token** is a string that the [**OAuth Client** can use to get a new [**Access Token**](#access-token) when the current one has expired. +Using the refresh token will not require the user to re-authenticate. -An ID token contains information about what happened when a user authenticated, and is intended to be read by the **OAuth Client**. -The ID token may also contain information about the user such as their name or email address, although that is not a requirement of an ID token. +#### OpenID Connect (OIDC) -#### Refresh Token +**OpenID Connect (OIDC)** is an identity layer built on top of the **OAuth 2.0** protocol. +It allows clients to verify the identity of the end-user based on the authentication performed by an [**Authorization Server**](/#authorization-server), as well as obtain basic profile information about the end-user in an interoperable manner. +**OIDC** extends **OAuth 2.0** by defining additional standard scopes, endpoints, authentication mechanisms, and response types, making it easier to provide user authentication in a standardized way. -An OAuth Refresh Token is a string that the OAuth client can use to get a new access token without the user's interaction. +It also introduces a new type of token called **ID Token**. +This token gets issued by the [**Authorization Server**](/#authorization-server). +It contains user profile information such as the user’s identity, the token’s issuance time, and its expiration time. +Unlike [**Access Tokens**](/#access-token), the **ID Token** is specifically used for authentication purposes (to verify the user's identity). -### Flows +#### Scopes -**Flows** are the set of steps an **OAuth Client** has to perform in order to obtain an access token. -Our implementation supports the following flow types: -- [Authorization Code](https://datatracker.ietf.org/doc/html/rfc6749#section-1.3.1) -- [Implicit](https://datatracker.ietf.org/doc/html/rfc6749#section-1.3.2) -- [Client credentials](https://datatracker.ietf.org/doc/html/rfc6749#section-1.3.4) - +**Scopes** are permissions granted by the [**Resource Owner**](#resource-owner) to the [**Client**](#client). +For example, access only to read user emails or full access to user data. -### Redirect URIs +#### Redirect URIs -In the *Authorization Code* and *Implicit* flows, the user is redirected to the authorization provider at the start of authentication. -The results are then communicated to the client through a redirection to one of the redirect URIs registered by the client. +A specific URI to which the [**Authorization Server**](/#authorization-server) redirects the [**Resource Owner's**](/#resource-owner) user-agent (e.g. browser) after the [**Client**](/#client) has been granted or denied the authorization request. +This URI ensures that the [**Authorization Code**](/#authorization-code) or [**Access Token**](/#access-token) is sent to the correct application endpoint. -These are configured on the client, during creation, or they can also be added later. -At the end of the authentication flow the user is redirected to one of these after they have completed the authorization request. +Redirect URIs are used only in some of the **OAuth 2.0** flows. We will discuss them in detail below. -### Scopes +#### Authorization Code -**Scopes** in OAuth 2.0 specify the level of access an application is requesting from the user's resources. -This way you can define the boundaries and permissions for what the access token can do. +An **Authorization Code** is a short-lived code that the [**Authorization Server**](/#authorization-server) provides to the [**Client**](/#client) via the [**Redirect URI**](#redirect-uri) after authorization has been granted. +This code then gets exchanged for an [**Access Token**](/#access-token). +The **Authorization Code** flow enhances security by keeping tokens out of the user-agent and letting the [**Client**](/#client) manage the backend communication with the [**Authorization Server**](/#authorization-server). -:::note -- Where do we add these scopes in the actual code -- What's user-info -::: +### Authorization Flows + +The **OAuth 2.0** protocol defines several *flows* to accommodate different use cases. +They are a set of steps an **OAuth Client** has to perform in order to obtain an access token. -Our implementation has the following built-in scopes: -- `email`: adds the `email` and `email_verified` claims into the id-token and the user-info. -- `phoneNumber`: adds the `phoneNumber` and `phoneNumber_verified` claims into the id-token and the user-info -- `roles`: adds the roles claim into the id-token and access token. - - This will contain the roles returned by `getRolesForUser` - - This only works if the `UserRoles` recipe is initialized -- `permissions`: adds the `permissions` claim into the id-token and access token. - - This will contain the list of permissions obtained by concatenating the result of `getPermissionsForRole` for all roles returned by `getRolesForUser` - - This only works if the `UserRoles` recipe is initialized +Our implementation supports the following flow types: + +- [Authorization Code Grant](https://oauth.net/2/grant-types/authorization-code/): This flow it is best suited for **web applications** where the [**Client**](/#client) can securely store a client secret. It consists of the following steps: + - Client redirects the Resource Owner to the Authorization Server. + - Resource Owner approves the request and is redirected back to the Client with an authorization code. + - Client exchanges the authorization code for an access token at the Authorization Server. + - Access token is used to access resources on the Resource Server. + +- [Implicit](https://oauth.net/2/grant-types/implicit/): This flow is best suited for **public clients** like single-page applications (SPAs) without a backend server. It consists of the following steps: + - Client redirects the Resource Owner to the Authorization Server. + - Resource Owner approves the request and is redirected back to the Client with an access token. + - Access token is used to access resources. +- [Client credentials](https://oauth.net/2/grant-types/client-credentials/): This flow is best suited for **machine-to-machine** (M2M) interactions where there is no end-user. + - Client authenticates with the Authorization Server using its own credentials. + - Authorization Server issues an access token to the Client. + - Access token is used to access resources. -### PKCE +#### PKCE [**PKCE**](https://oauth.net/2/pkce/) is an extension to the **Authorization Code flow** to prevent CSRF and authorization code injection attacks. -We support PKCE and recommend that you use a library that makes use of it. -You can opt-in by setting the `code_challenge` (and optionally `code_challenge_method`) parameters in the authorization URL and then verifying it after the user gets redirected back to the client. +We support PKCE and recommend that you use a library that can allow it. + + diff --git a/v2/oauth/machine-to-machine-authentication.mdx b/v2/oauth/machine-to-machine-authentication.mdx index 9f2afced9..4350758f4 100644 --- a/v2/oauth/machine-to-machine-authentication.mdx +++ b/v2/oauth/machine-to-machine-authentication.mdx @@ -3,25 +3,61 @@ title: Machine to Machine Authentication hide_title: true --- +import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs" +import TabItem from '@theme/TabItem'; +import CoreInjector from "/src/components/coreInjector" + # Machine to Machine Authentication You can use the following guide if you want to implement a custom authentication flow between your microservices. -## 1. Set Up Your Authentication Service +:::info +This guide assumes that you already have setup and configured **SuperTokens** in your [**Authentication Service**](/docs/oauth/introduction#authentication-service). -:::note -TODO: Add actual code snippets here +For more information on how to do that please check our [quickstart guide](/docs/thirdparty/introduction). ::: -First, initialize and setup **SuperTokens** in your `authentication service`. -## 2. Initialize the OAuth2Provider +## 1. Create the OAuth2 Clients + +For each of your **`microservices`** you will have to create a separate [**OAuth2 client**](/docs/oauth/introduction#client). +This can be done by directly calling the **SuperTokens Core** API. + + + +```bash +curl -X POST ^{coreInjector_uri_without_quotes}/recipe/oauth2/admin/clients \ + -H "Content-Type: application/json" \ + -H "api-key: ^{coreInjector_api_key_without_quotes}" \ + -d '{ + "client_name": "", + "grant_types": ["client_credentials"], + }' +``` + + + + +- `client_name` - Then name of the client that will be used later for identification. +- `grant_types` - The grant types that the [**Client**](/#authorization) will use. + - `client_credentials`: Allows the client to directly request an Access Token by authenticating itself with the Authorization Server using its own client credentials. -In addition to the authentication recipes you’ve set up, initialize the `OAuth2Provider` recipe in your `authentication backend`. +If the creation was successful, the response will return a `201` status code. +The response body will contain a **`client_id`** field which you will need to use in the next steps. + +## 2. Initialize the OAuth2Provider recipe + + +In your **`authentication server`** you will need to initialize the **OAuth2Provider** recipe . +The recipe will expose the endpoints needed for enabling the [**OAuth 2.0**](/docs/oauth/introduction#oauth-20) flow. + + + ```typescript import supertokens from "supertokens-node"; import OAuth2Provider from"supertokens-node/recipe/oauth2provider"; +import OAuth2Client from"supertokens-node/recipe/oauth2client"; supertokens.init({ framework: "express", @@ -37,74 +73,51 @@ supertokens.init({ websiteBasePath: "/auth" }, recipeList: [ - // This is where you initialize the OAuth2 recipe OAuth2Provider.init(), ] }); ``` -## 3. Add a Way to Create OAuth2 Clients + -We have to create OAuth2 clients in order to allow them to authenticate through our flow. + -First we need to add a method to do this. -Our recommendation is to use the `createOAuth2Client` function that is exposed by our SDK. -Alternatively, you can also directly call the **SuperTokens** core API. +:::caution -### Using the `createOAuth2Client` function +At the moment we do not have support creating OAuth2 providers in the Go SDK. -:::note -TODO: Add details about what each parameter means ::: -```typescript -import { createOAuth2Client } from "supertokens-node/recipe/oauth2provider"; + -createClient({ - clientName: 'My Application', - grantTypes: ["client_credentials"], -}); - -``` + -### Using the Core API +:::caution -```bash -curl -X POST https:///recipe/oauth2/admin/clients \ --H "Content-Type: application/json" \ --d '{ - "client_name": "My Application", - "grant_types": ["client_credentials"] -}' -``` +At the moment we do not have support creating OAuth2 providers in the Python SDK. -## 4. Create Separate Clients for Each Application +::: -Using the method that we defined in the previous step create separate clients for each of your `backend services`. + -Repeat the process for each domain, adjusting the `clientName` as necessary. + -## 5. Create Tokens -To generate tokens for your microservices using the `client_credentials` grant type, use the following code snippet: +## 3. Generate Access Tokens -:::note -Not sure on how scope should look like -::: +Now you can directly call the [**Authorization Server**](/docs/oauth/introduction#authorization-server) to generate Access Tokens. +Check the following code snippet to see how you can do that: -```typescript -fetch('https://api.auth.example.com/auth/oauth/token', { - method: 'POST', - headers: { - 'Content-Type': 'application/json', - }, - body: JSON.stringify({ - client_id: "", - client_secret: "", - grant_type: 'client_credentials', - scope: [""], - }), -}); -``` +```bash + +curl -X POST /auth/oauth/token \ +-H "Content-Type: application/json" \ +-d '{ + "client_id": "", + "client_secret": "", + "grant_type": "client_credentials", + "scope": [""] +}' +``` diff --git a/v2/oauth/multiple-frontends-with-a-single-backend.mdx b/v2/oauth/multiple-frontends-with-a-single-backend.mdx index 414ee7c9e..145437024 100644 --- a/v2/oauth/multiple-frontends-with-a-single-backend.mdx +++ b/v2/oauth/multiple-frontends-with-a-single-backend.mdx @@ -4,27 +4,68 @@ hide_title: true --- import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs" - +import TabItem from '@theme/TabItem'; +import CoreInjector from "/src/components/coreInjector" +import FrontendPreBuiltUITabs from "/src/components/tabs/FrontendPreBuiltUITabs" # Multiple Frontend Domains Using a Single Backend You can use the following guide if you have multiple **`frontend applications`** on different domains, that use the same **`backend service`**. -## 1. Set Up Your Authentication Service +Using the actual **OAuth 2.0** terminology, we can say that each **`frontend`** can be considered a [**Client**](/docs/oauth/introduction#client) and the **`backend`** will act as both an [**Authorization Server**](/docs/oauth/introduction#authorization) and a [**Resource Server**](/docs/oauth/introduction#resource-server). + +:::info +This guide assumes that you already have setup and configured **SuperTokens** in your [**Authentication Service**](/docs/oauth/introduction#authentication-service). -:::note -TODO: Add actual code snippets here +For more information on how to do that please check our [quickstart guide](/docs/thirdparty/introduction). ::: -First, initialize and setup **SuperTokens** in your `authentication service`. +## 1. Create the OAuth2 Clients + +For each of your **`frontend`** applications you will have to create a separate [**OAuth2 client**](/docs/oauth/introduction#client). +This can be done by directly calling the **SuperTokens Core** API. + + + +```bash +curl -X POST ^{coreInjector_uri_without_quotes}/recipe/oauth2/admin/clients \ + -H "Content-Type: application/json" \ + -H "api-key: ^{coreInjector_api_key_without_quotes}" \ + -d '{ + "client_name": "", + "response_types": ["code", "id_token"], + "grant_types": ["authorization_code", "refresh_token"], + "redirect_uri": ["https://.com/oauth/callback"] + }' +``` + + + + +- `client_name` - A human-readable name of the client that will be presented to the [**end-user**](/docs/oauth/introduction#authorization) during authorization. +- `response_types` - Specifies the types of responses your client expects from the Authorization Server. + - `code`: Indicates that the [**Client**](/#authorization) will receive an [**Authorization Code**](/#authorization) that will be exchanged for an [**Access Token**](/#authorization). + - `id_token`: Indicates that the [**Client**](/#authorization) expects an [**ID Token**](/#authorization) +- `grant_types` - The grant types that the [**Client**](/#authorization) will use. + - `authorization_code`: Allows exchanging the [**Authorization Code**](/#authorization) for an [**Access Token**](/#authorization). + - `refresh_token`: Allows exchanging the [**Refresh Token**](/#authorization) for a new [**Access Token**](/#authorization). +- `redirect_uri` - A list of URIs to which the [**Authorization Server**](/#authorization) will send the user-agent (browser) after completing the authorization step + +If the creation was successful, the response will return a `201` status code. +The response body will contain a **`client_id`** field which you will need to use in the next steps. -## 2. Initialize the OAuth2Provider +## 2. Initialize the OAuth2 recipes on the backend -In addition to the authentication recipes you’ve set up, initialize the `OAuth2Provider` recipe in your `backend service`. + +In your **`backend`** application you will need to initialize both the **OAuth2Provider** and the **OAuth2Client** recipes. + + + ```typescript import supertokens from "supertokens-node"; import OAuth2Provider from"supertokens-node/recipe/oauth2provider"; +import OAuth2Client from"supertokens-node/recipe/oauth2client"; supertokens.init({ framework: "express", @@ -40,138 +81,86 @@ supertokens.init({ websiteBasePath: "/auth" }, recipeList: [ - // This is where you initialize the OAuth2 recipe OAuth2Provider.init(), + // You will have to initialize the OAuth2Client recipe + // for each of your previously created clients + OAuth2Client.init({ + clientId: '', + oidcDiscoveryEndpoint: 'https:///.well-known/openid-configuration' + }), ] }); ``` -## 3. Add a Way to Create OAuth2 Clients + -We have to create OAuth2 clients in order to allow them to authenticate through our flow. + -First we need to add a method to do this. -Our recommendation is to use the `createOAuth2Client` function that is exposed by our SDK. -Alternatively, you can also directly call the **SuperTokens** core API. +:::caution -### Using the `createOAuth2Client` function +At the moment we do not have support creating OAuth2 providers in the Go SDK. -:::note -TODO: Add details about what each parameter means ::: -```typescript -import { createOAuth2Client } from "supertokens-node/recipe/oauth2provider"; - -createClient({ - // This value will be shown in the auth page when the app requests the user to authenticate - clientName: 'My Application', - // TODO: Add info about this - responseTypes: ['code', 'id_token'], - // TODO: Add info about this - grantTypes: ['authorization_code', 'refresh_token'], - // TODO: Add info about this - redirectUri: 'https://example.com/oauth/callback', -}); - -``` + -### Using the Core API + -```bash -curl -X POST https:///recipe/oauth2/admin/clients \ --H "Content-Type: application/json" \ --d '{ - "client_name": "My Application", - "response_types": ["code", "id_token"], - "grant_types": ["authorization_code", "refresh_token"], - "redirect_uri": ["https://different.com/oauth/callback"] -}' -``` +:::caution -## 4. Create Separate Clients for Each Frontend Application +At the moment we do not have support creating OAuth2 providers in the Python SDK. -Using the method that we defined in the previous step create separate clients for each of your `frontend applications`. +::: -Repeat the process for each domain, adjusting the `clientName` and `redirectUri` as necessary. + -## 5. Configure OAuth2Client recipe in the Backend + -Update the backend configuration to also initialize the `OAuth2Client` recipe and include the previously created clients. +## 3. Initialize the recipe on the Frontend Applications -:::note -Not sure on how the init call should look like here -::: +:::info -```typescript -import supertokens from "supertokens-node"; -import OAuth2Client from"supertokens-node/recipe/oauth2client"; +The `OAuth2Provider` recipe is available, at the moment, only when using the `supertokens-auth-react` package. -supertokens.init({ - framework: "express", - supertokens: { - connectionURI: "", - apiKey: "", - }, - appInfo: { - appName: "", - apiDomain: "", - websiteDomain: "", - apiBasePath: "/auth", - websiteBasePath: "/auth" - }, - recipeList: [ - OAuth2Provider.init(), - // This is where you initialize the OAuth2Client recipe - OAuth2Client.init([ - {clientId: 'CLIENT_ID_A'}, - {clientId: 'CLIENT_ID_B'} - ]), - ] -}); -``` - -## 6. Initialize the recipe on the Frontend Applications - -:::note -Not sure about this step. I assumed that the web js is used here. ::: Initialize the `OAuth2Provider` recipe on the frontend of each of your applications, ensuring you set the `authMode` to `header`. -```typescript -import OAuth2Provider from "supertokens-web-js/recipe/oauth2provider"; +```tsx +import OAuth2Provider from "supertokens-auth-react/recipe/oauth2provider"; +import Session from "supertokens-auth-react/recipe/session"; + -SuperTokens.init({ +export const SuperTokensConfig = { appInfo: { - appName: "", - apiDomain: "", - websiteDomain: "", - apiBasePath: "/auth", - websiteBasePath: "/auth" + appName: "App Name", + apiDomain: "", + websiteDomain: "", }, recipeList: [ - OAuth2Provider.init({ - authMode: "header" - }) - ] -}); + OAuth2Provider.init({ authMode: "header" }), + Session.init(), + ], +}; ``` -## 7. Add the Login UI in each frontend application +## 4. Update the login flow in your frontend applications -In your frontend applications you will have to add a login action that will open the authentication page. -Here's a basic example using a link: -``` html - - Login with OAuth2 - -``` +In your `frontend applications` you will have to add a login action that will direct the user to the authentication page. +You can just use a link for that. The link should be structured like this: -The authentication URL needs to adhere to the following format: -- `` - The domain of the authentication backend. The example assumes that you didn't overwrite the default `apiBasePath`. +``` +/auth/oauth/auth?client_id=&redirect_uri= +``` +- `` - The domain of your [**Authentication Service**](/docs/oauth/introduction#authentication-service). +The example assumes that you didn't overwrite the default `apiBasePath`. If that's the case you will have to replace `/auth` with you custom base path. -- `` - The client ID of the client you created in the previous step -- `` - The redirect URI of the client you created in the previous step +- `` - The corresponding client ID based on what you have created in the first step. +- `` - The corresponding redirect URI based on what you have created in the first step. + +## 5. Test the new authentication flow + +With everything set up, you can now test your login flow. +Just use the link that you have created in the previous step and try to access a protected resource. diff --git a/v2/oauth/multiple-frontends-with-separate-backends.mdx b/v2/oauth/multiple-frontends-with-separate-backends.mdx index bd1620d11..bc42d002c 100644 --- a/v2/oauth/multiple-frontends-with-separate-backends.mdx +++ b/v2/oauth/multiple-frontends-with-separate-backends.mdx @@ -4,23 +4,63 @@ hide_title: true --- import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs" - +import CoreInjector from "/src/components/coreInjector" # Multiple frontend domains with separate backends -You can use the following guide if you have a single **`authentication service`** that is used by multiple **`frontend applications`** which in turn have separate **`backends`**. +You can use the following guide if you have a single [**Authentication Service**](/docs/oauth/introduction#authentication-service) that is used by multiple applications. +In turn, each app has separate **`frontend `** and **`backend`** instances that are served from different domains. + +Using the actual **OAuth 2.0** terminology, we can say that each **`frontend`** can be considered a [**Client**](/docs/oauth/introduction#client) and each **`backend`** is a [**Resource Server**](/docs/oauth/introduction#resource-server). -## 1. Set Up Your Authentication Service +:::info +This guide assumes that you already have setup and configured **SuperTokens** in your [**Authentication Service**](/docs/oauth/introduction#authentication-service). -:::note -TODO: Add actual code snippets here +For more information on how to do that please check our [quickstart guide](/docs/thirdparty/introduction). ::: -First, initialize and setup **SuperTokens** in your `authentication service`. +## 1. Create the OAuth2 Clients + +For each of your **`frontend`** applications you will have to create a separate [**OAuth2 client**](/docs/oauth/introduction#client). +This can be done by directly calling the **SuperTokens Core** API. + + + +```bash +curl -X POST ^{coreInjector_uri_without_quotes}/recipe/oauth2/admin/clients \ + -H "Content-Type: application/json" \ + -H "api-key: ^{coreInjector_api_key_without_quotes}" \ + -d '{ + "client_name": "", + "response_types": ["code", "id_token"], + "grant_types": ["authorization_code", "refresh_token"], + "redirect_uri": ["https://.com/oauth/callback"] + }' +``` + + + + +- `client_name` - A human-readable name of the client that will be presented to the [**end-user**](/docs/oauth/introduction#authorization) during authorization. +- `response_types` - Specifies the types of responses your client expects from the Authorization Server. + - `code`: Indicates that the [**Client**](/#authorization) will receive an [**Authorization Code**](/#authorization) that will be exchanged for an [**Access Token**](/#authorization). + - `id_token`: Indicates that the [**Client**](/#authorization) expects an [**ID Token**](/#authorization) +- `grant_types` - The grant types that the [**Client**](/#authorization) will use. + - `authorization_code`: Allows exchanging the [**Authorization Code**](/#authorization) for an [**Access Token**](/#authorization). + - `refresh_token`: Allows exchanging the [**Refresh Token**](/#authorization) for a new [**Access Token**](/#authorization). +- `redirect_uri` - A list of URIs to which the [**Authorization Server**](/#authorization) will send the user-agent (browser) after completing the authorization step + +If the creation was successful, the response will return a `201` status code. +The response body will contain the **`client_id`** and the `client_secret` fields. Safe them for each request because we will need to use them in the next steps. -## 2. Initialize the OAuth2Provider +## 2. Initialize the provider recipe -In addition to the authentication recipes you’ve set up, initialize the `OAuth2Provider` recipe in your `authentication service`. +In your [**Authentication Service**](/docs/oauth/introduction#authentication-service) you will need to initialize the **OAuth2Provider** recipe. +The recipe will expose the endpoints needed for enabling the [**OAuth 2.0**](/docs/oauth/introduction#oauth-20) flow. + + + + ```typescript import supertokens from "supertokens-node"; @@ -46,105 +86,342 @@ supertokens.init({ }); ``` -## 3. Add a Way to Create OAuth2 Clients + -We have to create OAuth2 clients in order to allow them to authenticate through our flow. + -First we need to add a method to do this. -Our recommendation is to use the `createOAuth2Client` function that is exposed by our SDK. -Alternatively, you can also directly call the **SuperTokens** core API. +:::caution -### Using the `createOAuth2Client` function +At the moment we do not have support creating OAuth2 providers in the Go SDK. -:::note -TODO: Add details about what each parameter means ::: -```typescript -import { createOAuth2Client } from "supertokens-node/recipe/oauth2provider"; - -createClient({ - // This value will be shown in the auth page when the app requests the user to authenticate - clientName: 'My Application', - // TODO: Add info about this - responseTypes: ['code', 'id_token'], - // TODO: Add info about this - grantTypes: ['authorization_code', 'refresh_token'], - // TODO: Add info about this - redirectUri: 'https://example.com/oauth/callback', -}); - -``` + -### Using the Core API + -```bash -curl -X POST https:///recipe/oauth2/admin/clients \ --H "Content-Type: application/json" \ --d '{ - "client_name": "My Application", - "response_types": ["code", "id_token"], - "grant_types": ["authorization_code", "refresh_token"], - "redirect_uri": ["https://different.com/oauth/callback"] -}' -``` +:::caution + +At the moment we do not have support creating OAuth2 providers in the Python SDK. + +::: + + -## 4. Create Separate Clients for Each Application + -Using the method that we defined in the previous step create separate clients for each of your applications. +## 3. Set Up Session Handling in Each Application -Repeat the process for each domain, adjusting the `clientName` and `redirectUri` as necessary. +You will have to setup custom session handling logic in each of your `backend applications`. -## 5. Set Up Session Handling in Each Application + -You will have to setup custom session handling logic in each `application backend`. + -You can use a generic OpenID Connect (OIDC) or OAuth2 library. +You can use a generic OIDC or OAuth2 library. For `NodeJS` we recommend using either [passport-oauth2](https://www.passportjs.org/packages/passport-oauth2/) or [passport-openidconnect](https://www.passportjs.org/packages/passport-openidconnect/). #### Example using `passport-oauth2`: ```typescript -// TODO: This is a dummy example. It will have to be adjusted -const passport = require('passport'); -const OAuth2Strategy = require('passport-oauth2'); +import express, { Request, Response } from 'express'; +import passport from 'passport'; +import { Strategy as OAuth2Strategy } from 'passport-oauth2'; +import session from 'express-session'; + +const AUTHORIZATION_SERVER_URL = 'https://auth.example.com'; +// The client ID returned from the first step +const CLIENT_ID = 'your-client-id'; +// The client secret returned from the first step +const CLIENT_SECRET = 'your-client-secret'; +// On of the callback URLs specified in the create client payload +const CALLBACK_URL = 'https://your-app.com/auth/callback'; + +const app = express(); + +app.use(session({ + secret: 'your-session-secret', + resave: false, + saveUninitialized: false +})); + +app.use(passport.initialize()); +app.use(passport.session()); + +passport.serializeUser((user, done) => { + done(null, user); +}); + +passport.deserializeUser((obj, done) => { + done(null, obj); +}); passport.use(new OAuth2Strategy({ - authorizationURL: 'https://auth.example.com/oauth2/authorize', - tokenURL: 'https://api.auth.example.com/oauth2/token', - clientID: 'YOUR_CLIENT_ID', - clientSecret: 'YOUR_CLIENT_SECRET', - callbackURL: 'https://different.com/oauth/callback' -}, (accessToken, refreshToken, profile, cb) => { - User.findOrCreate({ oauthId: profile.id }, (err, user) => { - return cb(err, user); - }); + authorizationURL: `${AUTHORIZATION_SERVER_URL}/authorize`, + tokenURL: `${AUTHORIZATION_SERVER_URL}/token`, + clientID: CLIENT_ID, + clientSecret: CLIENT_SECRET, + callbackURL: CALLBACK_URL +}, (accessToken, refreshToken, profile, done) => { + // Verify if the user exists + // And then store the user's profile during this step + done(null, profile); })); -app.get('/auth/provider', - passport.authenticate('oauth2')); +app.get('/auth', passport.authenticate('oauth2')); +app.get('/auth/callback', passport.authenticate('oauth2', { + failureRedirect: '/login' +}), (req: Request, res: Response) => { + // Successful authentication + res.redirect('/'); +}); + +// Example of a secure endpoint +app.get('/', (req: Request, res: Response) => { + if (!req.isAuthenticated()) { + return res.redirect('/login'); + } + res.send(`Hello, ${(req.user as any).name}`); +}); -app.get('/auth/provider/callback', - passport.authenticate('oauth2', { failureRedirect: '/login' }), - (req, res) => { - res.redirect('/'); - }); + +const PORT = process.env.PORT || 3000; +app.listen(PORT, () => { + console.log(`Server running on port ${PORT}`); +}); +``` + + + + + +```go +package main + +import ( + "encoding/gob" + "fmt" + "log" + "net/http" + "os" + + "github.com/gorilla/mux" + "github.com/gorilla/sessions" + "golang.org/x/oauth2" +) + +var ( + authorizationServerURL = "https://auth.example.com" + // The client ID returned from the first step + clientID = "" + // The client secret returned from the first step + clientSecret = "" + // On of the callback URLs specified in the create client payload + callbackURL = "https://your-app.com/auth/callback" + + store = sessions.NewCookieStore([]byte("your-session-secret")) + + // OAuth2 configuration + config = &oauth2.Config{ + ClientID: clientID, + ClientSecret: clientSecret, + RedirectURL: callbackURL, + Endpoint: oauth2.Endpoint{ + AuthURL: authorizationServerURL + "/authorize", + TokenURL: authorizationServerURL + "/token", + }, + Scopes: []string{"openid", "profile", "email"}, + } +) + +type User struct { + Name string + Email string +} + +func init() { + gob.Register(User{}) +} + +func main() { + r := mux.NewRouter() + + r.HandleFunc("/", homeHandler) + r.HandleFunc("/login", loginHandler) + r.HandleFunc("/auth/callback", authCallbackHandler) + r.HandleFunc("/logout", logoutHandler) + + http.Handle("/", r) + log.Println("Server started at http://localhost:8080") + log.Fatal(http.ListenAndServe(":8080", nil)) +} + +func homeHandler(w http.ResponseWriter, r *http.Request) { + session, _ := store.Get(r, "session") + user, ok := session.Values["user"].(User) + + if !ok { + http.Redirect(w, r, "/login", http.StatusFound) + return + } + + fmt.Fprintf(w, "Hello, %s", user.Name) +} + +func loginHandler(w http.ResponseWriter, r *http.Request) { + url := config.AuthCodeURL("state", oauth2.AccessTypeOffline) + http.Redirect(w, r, url, http.StatusFound) +} + +func authCallbackHandler(w http.ResponseWriter, r *http.Request) { + session, _ := store.Get(r, "session") + + state := r.FormValue("state") + if state != "state" { + http.Error(w, "Invalid state", http.StatusBadRequest) + return + } + + code := r.FormValue("code") + token, err := config.Exchange(oauth2.NoContext, code) + if err != nil { + http.Error(w, "Failed to exchange token", http.StatusInternalServerError) + return + } + + client := config.Client(oauth2.NoContext, token) + response, err := client.Get(authorizationServerURL + "/userinfo") + if err != nil { + http.Error(w, "Failed to get user info", http.StatusInternalServerError) + return + } + defer response.Body.Close() + + var user User + if err := json.NewDecoder(response.Body).Decode(&user); err != nil { + http.Error(w, "Failed to decode user info", http.StatusInternalServerError) + return + } + + session.Values["user"] = user + session.Save(r, w) + + http.Redirect(w, r, "/", http.StatusFound) +} + +func logoutHandler(w http.ResponseWriter, r *http.Request) { + session, _ := store.Get(r, "session") + delete(session.Values, "user") + session.Save(r, w) + + http.Redirect(w, r, "/login", http.StatusFound) +} ``` -## 6. Add the Login UI in your frontend applications -In your `frontend applications` you will have to add a login action that will redirect the user to the authentication page. -Here's a basic example using a link: -``` html - - Login with OAuth2 - + + + + + +```python +from flask import Flask, redirect, url_for, session, request +from authlib.integrations.flask_client import OAuth +from flask_session import Session + +# Configuration +AUTHORIZATION_SERVER_URL = 'https://auth.example.com' +# The client ID returned from the first step +CLIENT_ID = 'your-client-id' +# The client secret returned from the first step +CLIENT_SECRET = 'your-client-secret' +# One of the callback URLs specified in the create client payload +CALLBACK_URL = 'https://your-app.com/auth/callback' + +app = Flask(__name__) +app.secret_key = 'your-session-secret' + +# Configure server-side session management +app.config['SESSION_TYPE'] = 'filesystem' +app.config['SESSION_PERMANENT'] = False +Session(app) + +oauth = OAuth(app) +oauth.register( + name='auth_provider', + client_id=CLIENT_ID, + client_secret=CLIENT_SECRET, + authorize_url=f'{AUTHORIZATION_SERVER_URL}/authorize', + authorize_params=None, + access_token_url=f'{AUTHORIZATION_SERVER_URL}/token', + access_token_params=None, + refresh_token_url=None, + redirect_uri=CALLBACK_URL, + client_kwargs={'scope': 'openid profile email'}, +) + +@app.route('/') +def index(): + user = session.get('user') + if user: + return f'Hello, {user["name"]}' + return 'You are not logged in' + +@app.route('/login') +def login(): + redirect_uri = url_for('auth_callback', _external=True) + return oauth.auth_provider.authorize_redirect(redirect_uri) + +@app.route('/auth/callback') +def auth_callback(): + token = oauth.auth_provider.authorize_access_token() + user = oauth.auth_provider.parse_id_token(token) + session['user'] = user + return redirect('/') + +@app.route('/logout') +def logout(): + session.pop('user', None) + return redirect('/') + +@app.errorhandler(401) +def unauthorized(e): + return 'Unauthorized' + +@app.errorhandler(403) +def forbidden(e): + return 'Forbidden' + +@app.errorhandler(404) +def page_not_found(e): + return 'Page not found' + +# Start the server +if __name__ == '__main__': + app.run(debug=True) ``` -The authentication URL needs to adhere to the following format: -- `` - The domain of the authentication backend. The example assumes that you didn't overwrite the default `apiBasePath`. + + + + + + +## 4. Update the login flow in your frontend applications + +In your `frontend applications` you will have to add a login action that will direct the user to the authentication page. +You can just use a link for that. The link should be structured like this: + +``` +/auth/oauth/auth?client_id=&redirect_uri= +``` +- `` - The domain of your [**Authentication Service**](/docs/oauth/introduction#authentication-service). +The example assumes that you didn't overwrite the default `apiBasePath`. If that's the case you will have to replace `/auth` with you custom base path. -- `` - The client ID of the client you created in the previous step -- `` - The redirect URI of the client you created in the previous step +- `` - The corresponding client ID based on what you have created in the first step. +- `` - The corresponding redirect URI based on what you have created in the first step. +## 5. Test the new authentication flow +With everything set up, you can now test your login flow. +Just use the link that you have created in the previous step and try to access a protected resource. diff --git a/v2/oauth/reuse-website-login.mdx b/v2/oauth/reuse-website-login.mdx new file mode 100644 index 000000000..d469d0dda --- /dev/null +++ b/v2/oauth/reuse-website-login.mdx @@ -0,0 +1,17 @@ +--- +title: Reuse website login for desktop and mobile apps +hide_title: true +--- + +import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs" + + +# Reuse website login for desktop and mobile apps + +This pattern is useful if you want to make use of the same web authentication experience that you for your desktop and mobile apps. +The flow will allow you to save develpoment time but you will have to keep in mind that it will not provide involve a native login experience. +Users will be directed to a separate browser page where they will complete the authentication flow. + +In order to do this you will have to follow one of the previous guides based on your use case: +- If your applications use separate backend services check out [this guide](./multiple-frontends-with-separate-backends) +- If your appllications use a single backend service check out [this guide](./multiple-frontends-with-a-single-backend) diff --git a/v2/oauth/sidebars.js b/v2/oauth/sidebars.js index 56a7b5473..6748c912e 100644 --- a/v2/oauth/sidebars.js +++ b/v2/oauth/sidebars.js @@ -9,8 +9,10 @@ module.exports = { "multiple-frontends-with-separate-backends", "multiple-frontends-with-a-single-backend", "clients-without-dedicated-backend", + "reuse-website-login", "machine-to-machine-authentication", ], }, + "common-actions", ], }; diff --git a/v2/src/theme/NavbarItem/recipeSelector.js b/v2/src/theme/NavbarItem/recipeSelector.js index b3a9679aa..3fb945e1c 100644 --- a/v2/src/theme/NavbarItem/recipeSelector.js +++ b/v2/src/theme/NavbarItem/recipeSelector.js @@ -41,7 +41,7 @@ export default function RecipeSelector(props) { case "anomaly_detection": return "Bot/Spam Detection"; case "oauth": - return "OAuth"; + return "OAuth 2.0"; default: return "Select Recipe"; } @@ -201,7 +201,7 @@ export default function RecipeSelector(props) { active: activeSelector("oauth"), })} > - OAuth + OAuth 2.0 From 625df2f206d108c662c2d42df8bda8d012820c65 Mon Sep 17 00:00:00 2001 From: Bogdan Carpusor Date: Tue, 24 Sep 2024 13:38:25 +0300 Subject: [PATCH 03/33] Code review changes --- ... => create-an-authentication-provider.mdx} | 62 +-- .../add-custom-claims-in-tokens.mdx | 9 + v2/oauth/customizations/verify-tokens.mdx | 9 + .../working-with-scopes.mdx} | 16 +- v2/oauth/introduction.mdx | 152 +++++--- .../machine-to-machine-authentication.mdx | 32 +- ...ltiple-frontends-with-a-single-backend.mdx | 39 +- ...tiple-frontends-with-separate-backends.mdx | 359 ++++-------------- v2/oauth/sidebars.js | 11 +- 9 files changed, 292 insertions(+), 397 deletions(-) rename v2/oauth/{desktop-mobile-authentication.mdx => create-an-authentication-provider.mdx} (68%) create mode 100644 v2/oauth/customizations/add-custom-claims-in-tokens.mdx create mode 100644 v2/oauth/customizations/verify-tokens.mdx rename v2/oauth/{common-actions.mdx => customizations/working-with-scopes.mdx} (82%) diff --git a/v2/oauth/desktop-mobile-authentication.mdx b/v2/oauth/create-an-authentication-provider.mdx similarity index 68% rename from v2/oauth/desktop-mobile-authentication.mdx rename to v2/oauth/create-an-authentication-provider.mdx index 8c406f0b4..5e6dc23cb 100644 --- a/v2/oauth/desktop-mobile-authentication.mdx +++ b/v2/oauth/create-an-authentication-provider.mdx @@ -1,20 +1,21 @@ --- -title: Reuse website login for desktop and mobile apps +title: Create an authentication provider hide_title: true --- import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs" +import TabItem from '@theme/TabItem'; import CoreInjector from "/src/components/coreInjector" +import FrontendPreBuiltUITabs from "/src/components/tabs/FrontendPreBuiltUITabs" -# Multiple frontend domains with separate backends +# Multiple Frontend Domains Using a Single Backend -You can use the following guide if you have a single [**Authentication Service**](/docs/oauth/introduction#authentication-service) that is used by multiple applications. -In turn, each app has separate **`frontend `** and **`backend`** instances that are served from different domains. +You can use the following guide if you have multiple **`frontend applications`** on different domains, that use the same **`backend service`**. -Using the actual **OAuth 2.0** terminology, we can say that each **`frontend`** can be considered a [**Client**](/docs/oauth/introduction#client) and each **`backend`** is a [**Resource Server**](/docs/oauth/introduction#resource-server). +Using the actual **OAuth 2.0** terminology, we can say that each **`frontend`** can be considered a [**Client**](/docs/oauth/introduction#client) and the **`backend`** will act as both an [**Authorization Server**](/docs/oauth/introduction#authorization) and a [**Resource Server**](/docs/oauth/introduction#resource-server). :::info -This guide assumes that you already have setup and configured your **SuperTokens** in your [**Authentication Service**](/docs/oauth/introduction#authentication-service). +This guide assumes that you already have setup and configured **SuperTokens** in your [**Authentication Service**](/docs/oauth/introduction#authentication-service). For more information on how to do that please check our [quickstart guide](/docs/thirdparty/introduction). ::: @@ -53,11 +54,10 @@ curl -X POST ^{coreInjector_uri_without_quotes}/recipe/oauth2/admin/clients \ If the creation was successful, the response will return a `201` status code. The response body will contain a **`client_id`** field which you will need to use in the next steps. -## 2. Initialize the provider recipe +## 2. Initialize the OAuth2 recipes on the backend -In your [**Authentication Service**](/docs/oauth/introduction#authentication-service) you will need to initialize the **OAuth2Provider** recipe. -The recipe will expose the endpoints needed for enabling the [**OAuth 2.0**](/docs/oauth/introduction#oauth-20) flow. +In your **`backend`** application you will need to initialize both the **OAuth2Provider** and the **OAuth2Client** recipes. @@ -65,6 +65,7 @@ The recipe will expose the endpoints needed for enabling the [**OAuth 2.0**](/do ```typescript import supertokens from "supertokens-node"; import OAuth2Provider from"supertokens-node/recipe/oauth2provider"; +import OAuth2Client from"supertokens-node/recipe/oauth2client"; supertokens.init({ framework: "express", @@ -80,8 +81,13 @@ supertokens.init({ websiteBasePath: "/auth" }, recipeList: [ - // This is where you initialize the OAuth2 recipe OAuth2Provider.init(), + // You will have to initialize the OAuth2Client recipe + // for each of your previously created clients + OAuth2Client.init({ + clientId: '', + oidcDiscoveryEndpoint: 'https:///auth/.well-known/openid-configuration' + }), ] }); ``` @@ -110,27 +116,33 @@ At the moment we do not have support creating OAuth2 providers in the Python SDK -## 3. Set Up Session Handling in Each Application +## 3. Initialize the recipe on the Frontend Applications -You will have to setup custom session handling logic in each of your `backend applications`. - - - - +:::info -You can use a generic OIDC or OAuth2 library. -For `NodeJS` we recommend using either [passport-oauth2](https://www.passportjs.org/packages/passport-oauth2/) or [passport-openidconnect](https://www.passportjs.org/packages/passport-openidconnect/). +The `OAuth2Provider` recipe is available, at the moment, only when using the `supertokens-auth-react` package. -#### Example using `passport-oauth2`: +::: -```typescript -// TODO: Add a sample code snippet here -``` +Initialize the `OAuth2Provider` recipe on the frontend of each of your applications, ensuring you set the `authMode` to `header`. - +```tsx +import OAuth2Provider from "supertokens-auth-react/recipe/oauth2provider"; +import Session from "supertokens-auth-react/recipe/session"; - +export const SuperTokensConfig = { + appInfo: { + appName: "App Name", + apiDomain: "", + websiteDomain: "", + }, + recipeList: [ + OAuth2Provider.init({ authMode: "header" }), + Session.init(), + ], +}; +``` ## 4. Update the login flow in your frontend applications @@ -150,3 +162,5 @@ If that's the case you will have to replace `/auth` with you custom base path. With everything set up, you can now test your login flow. Just use the link that you have created in the previous step and try to access a protected resource. + + diff --git a/v2/oauth/customizations/add-custom-claims-in-tokens.mdx b/v2/oauth/customizations/add-custom-claims-in-tokens.mdx new file mode 100644 index 000000000..78cb7750b --- /dev/null +++ b/v2/oauth/customizations/add-custom-claims-in-tokens.mdx @@ -0,0 +1,9 @@ +--- +title: Add Custom Claims in Tokens +hide_title: true +--- + +# Add custom claims in the ID / access token + +If you want to properties in the token payloads you can do this by overriding either the `buildIdTokenPayload` or the `buildAccessTokenPayload` functions. + diff --git a/v2/oauth/customizations/verify-tokens.mdx b/v2/oauth/customizations/verify-tokens.mdx new file mode 100644 index 000000000..f0cf7b96c --- /dev/null +++ b/v2/oauth/customizations/verify-tokens.mdx @@ -0,0 +1,9 @@ +--- +title: Verify Tokens +hide_title: true +--- + +# Verify Tokens + + + diff --git a/v2/oauth/common-actions.mdx b/v2/oauth/customizations/working-with-scopes.mdx similarity index 82% rename from v2/oauth/common-actions.mdx rename to v2/oauth/customizations/working-with-scopes.mdx index 790229fa7..d4a126be7 100644 --- a/v2/oauth/common-actions.mdx +++ b/v2/oauth/customizations/working-with-scopes.mdx @@ -1,11 +1,9 @@ --- -title: Common Actions +title: Working with Scopes hide_title: true --- -# Common Actions - -## Working with Scopes +# Working with Scopes The allowed scopes are set during the creation process of an **OAuth2 Client**. @@ -19,19 +17,13 @@ By default, our **OAuth2** implementation adds the following built-in scopes: - This will contain the list of permissions obtained by concatenating the result of `getPermissionsForRole` for all roles returned by `getRolesForUser` - This only works if the `UserRoles` recipe is initialized -### Requesting Specific Scopes +## Requesting Specific Scopes The client can request specific scopes by adding `scope` query param to the Authorization URL. The requested scopes have to be a subset of what is allowed for the client, otherwise the authentication requst will fail. By default all scopes are granted to the client. -### Overriding granted scopes +## Overriding granted scopes If you want to manually modify the list of scopes that are granted to the client during the authentication flow you can do this by using overrides. You will have to add a custom implementation for `getConsentRequest` and change the value it returns for `requestedScope`. - -## Overriding Tokens - -If you want to properties in the token payloads you can do this by overriding either the `buildIdTokenPayload` or the `buildAccessTokenPayload` functions. - - diff --git a/v2/oauth/introduction.mdx b/v2/oauth/introduction.mdx index 9d46f6c75..48e46805d 100644 --- a/v2/oauth/introduction.mdx +++ b/v2/oauth/introduction.mdx @@ -24,115 +24,145 @@ However, there are some custom use cases where you will have to implement a diff For these specific instances we expose recipes that allow you to complete your setup. -:::info +:::caution The **OAuth2 recipes** are available only when using the **SuperTokens Managed Service**. This feature is not included in the **Self-Hosted** version. -Also, the feature at the moment is supported just by the following **SDKs**: +Also, the feature at the moment is supported, on the backend, just by the following **SDKs**: - `supertokens-node` -- `supertokens-auth-react` +- All our frontend SDKs Additionally, our **OAuth2** implementation does not support magic links based login flows right now. ::: -## OAuth2 Reference - Before we explore the guides let's first recap some common terms and concepts that are the base of the framework. We will use them throughout the next pages. -### Key Terms +## OAuth2 Roles -#### Resource Owner +In OAuth, roles define the different responsibilities of entities involved in the process of granting and obtaining access to protected resources. +There are four roles defined in the specification: -The **Resource Owner** is an entity capable of granting access to a protected resource. -When the resource owner is a person, it is referred to as an **end-user**. +### Resource Owner -#### Resource Server +The **Resource Owner** is an entity capable of granting access to a protected resource. +In most cases, this is an actual person that uses an application. -The server hosting the protected resources, capable of accepting and responding to protected resource requests using **Access Tokens**. +### Client -#### Authorization Server +An **OAuth 2.0 Client** is an application that wants to access protected resources. +In order to do so it needs to get an [**Access Token**](#access-token) from the [**Authorization Server**](#authorization-server). +With that token the client can perform authorized operations on behalf of the [**Resource Owner**](#resource-owner). -The server issuing access tokens to the **Client** after successfully authenticating the [**Resource Owner**](#resource-owner) and obtaining authorization +The term **client** does not imply any particular implementation characteristics (e.g. whether the application executes on a server, a desktop, or other devices). -#### Client +### Resource Server -An **OAuth 2.0 Client** is an application that interacts with an **OAuth 2.0 Provider** to request access to a user's resources. -It then utilizes the access tokens granted by the provider to perform authorized operations on behalf of the [**Resource Owner**](#resource-owner). +The server hosting the protected resources, capable of accepting and responding to protected resource requests using [**Access Tokens**](#access-tokens). +Some real-world examples in this case would be things like: +- A file storage service that allows users to access only their files +- A social media application that allows users to access only posts from their friends +- A chat app that shows only messages from conversations in which the user is a participant -The term **client** does not imply any particular implementation characteristics (e.g. whether the application executes on a server, a desktop, or other devices). +### Authorization Server -##### Provider +The server issuing [**Access Tokens**](#access-tokens) to the [**Client**](#client) after successfully authenticating the [**Resource Owner**](#resource-owner). -An **OAuth 2.0 Provider** is a server that implements the **OAuth 2.0** protocol, responsible for issuing access tokens to third-party applications after authenticating users. -The provider typically combines the functionality of both the [**Authorization Server**](/#authorization-server) and the [**Resource Server**](/#resource-server). -It defines the endpoints and mechanisms for token issuance and validation, and ensures secure, scalable interactions between [**Clients**](/#client), [**Resource Owners**](/#resource-owner), and [**Resource Servers**](/#authorization). +## Tokens -#### Access Token +Tokens are strings that represent the authorization issued to the [**Client**](#client). +They are mainly used to access to protected resources, on behalf of the [**Resource Owner**](#resource-owner). +At the same time, tokens can be used to have more information about who the owner is. -A token issued by the [**Authorization Server**](/#authorization-server), that then gets passed by the [**Client**](/#client) to the [**Resource Server**](/#resource-server) to gain access to protected resources. -The access token is meant to be read and validated only by the **Resource Server**. +:::info -#### Refresh Token +The tokens that are issued and used in the **OAuth 2.0** recipes are different from the ones used in our other features. +Normally, we work with **SuperTokens Session Acccess Tokens** to identify and authenticate the user. +But, in the case of **OAuth 2.0**, we expose **OAuth2 Tokens** that allow you create custom implementations. -An **OAuth Refresh Token** is a string that the [**OAuth Client** can use to get a new [**Access Token**](#access-token) when the current one has expired. -Using the refresh token will not require the user to re-authenticate. +In all the **OAuth 2.0** pages and guides, when we talk about **tokens** we are referring to the **OAuth2 Tokens**. -#### OpenID Connect (OIDC) +::: -**OpenID Connect (OIDC)** is an identity layer built on top of the **OAuth 2.0** protocol. -It allows clients to verify the identity of the end-user based on the authentication performed by an [**Authorization Server**](/#authorization-server), as well as obtain basic profile information about the end-user in an interoperable manner. -**OIDC** extends **OAuth 2.0** by defining additional standard scopes, endpoints, authentication mechanisms, and response types, making it easier to provide user authentication in a standardized way. +### Access Token -It also introduces a new type of token called **ID Token**. -This token gets issued by the [**Authorization Server**](/#authorization-server). -It contains user profile information such as the user’s identity, the token’s issuance time, and its expiration time. -Unlike [**Access Tokens**](/#access-token), the **ID Token** is specifically used for authentication purposes (to verify the user's identity). +This is the main token that is used to provide temporary access to protected resources. +The **Access Token** is meant to be read and validated only by the [**Resource Server**](#resource-server). -#### Scopes +#### Authorization Code -**Scopes** are permissions granted by the [**Resource Owner**](#resource-owner) to the [**Client**](#client). -For example, access only to read user emails or full access to user data. +An **Authorization Code** is a short-lived code that the [**Authorization Server**](/#authorization-server) provides to the [**Client**](/#client), via the [**Redirect URI**](#redirect-uri), after authorization has been granted. +This code then gets exchanged for an [**Access Token**](/#access-token). +The **Authorization Code** flow enhances security by keeping tokens out of the user-agent and letting the [**Client**](/#client) manage the backend communication with the [**Authorization Server**](/#authorization-server). -#### Redirect URIs +#### Redirect URI A specific URI to which the [**Authorization Server**](/#authorization-server) redirects the [**Resource Owner's**](/#resource-owner) user-agent (e.g. browser) after the [**Client**](/#client) has been granted or denied the authorization request. This URI ensures that the [**Authorization Code**](/#authorization-code) or [**Access Token**](/#access-token) is sent to the correct application endpoint. -Redirect URIs are used only in some of the **OAuth 2.0** flows. We will discuss them in detail below. +### Refresh Token -#### Authorization Code +A token that can be used to get a new [**Access Token**](#access-token) when the current one has expired. +Using the refresh token will not require the user to re-authenticate. + +### ID Token + +This token provides identity information about the [**Resource Owner**](#resource-owner). +Unlike [**Access Tokens**](/#access-token), the **ID Tokens** are meant to be read only by the [**Client**](#client). + +## Scopes + +Scopes define the range of access that the [**Client**](#client) is requesting on behalf of the [**Resource Owner**](#resource-owner). +They specify what portions of the **Resource Owner’s** data the **Client** can access and what actions it can perform. + +For example, when a user grants a web application permission to read their email, the application might request the `email.read` scope. + +In a general authentication flow scopes get used in the following way: +1. When the **Client** gets created a series of scopes will be specified to the **Authorization Server** +2. During the login attempt the **Resource Owner** will be asked to grant the requested scopes +3. The **Autorization Server** will use the granted scopes to generate an **Access Token**. +4. The **Resource Server** will check the scopes of the **Access Token** and will only allow the requested actions. -An **Authorization Code** is a short-lived code that the [**Authorization Server**](/#authorization-server) provides to the [**Client**](/#client) via the [**Redirect URI**](#redirect-uri) after authorization has been granted. -This code then gets exchanged for an [**Access Token**](/#access-token). -The **Authorization Code** flow enhances security by keeping tokens out of the user-agent and letting the [**Client**](/#client) manage the backend communication with the [**Authorization Server**](/#authorization-server). -### Authorization Flows + +## Authorization Flows The **OAuth 2.0** protocol defines several *flows* to accommodate different use cases. They are a set of steps an **OAuth Client** has to perform in order to obtain an access token. Our implementation supports the following flow types: -- [Authorization Code Grant](https://oauth.net/2/grant-types/authorization-code/): This flow it is best suited for **web applications** where the [**Client**](/#client) can securely store a client secret. It consists of the following steps: - - Client redirects the Resource Owner to the Authorization Server. - - Resource Owner approves the request and is redirected back to the Client with an authorization code. - - Client exchanges the authorization code for an access token at the Authorization Server. - - Access token is used to access resources on the Resource Server. +### [Authorization Code Grant](https://oauth.net/2/grant-types/authorization-code/) + +Authorization Code Grant + +This flow is best suited for **web applications** where the [**Client**](/#client) can securely store a client secret (for example in the application's backend). +It consists of the following steps: +1. The **Client** redirects the **Resource Owner** to the **Authorization Server’s** authorization endpoint. +2. The **Authorization Server** authenticates the **Resource Owner** and requests their consent for the requested permissions. +3. If the **Resource Owner** grants permission, the **Authorization Server** redirects their browser back to the specified **Redirect URI** and includes an **Authorization Code** as a query parameter. +4. The **Client** then sends a request to the **Authorization Server**’s token endpoint, including the **Authorization Code**. +5. The **Authorization Server** verifies the information sent by the **Client** and, if valid, issues an **Access Token**. +6. The token can now be used to make requests to the **Resource Server** to access the protected resources on behalf of the **Resource Owner**. + +#### Proof Key for Code Exchange (PKCE) + +If the **Client** has no backend server and it cannot securely store a client secret, it can use the **Authorization Code flow** with [**PKCE**](https://oauth.net/2/pkce/). +The **PKCE** extension prevents CSRF and authorization code injection attacks. + +At the beginning of the authentication flow the **Client** will generate a random string called a *code verifier*. +This gets used to ensure that, even if the **Authorization Code** is intercepted, it cannot be exchanged for a token without also including the initial code. + -- [Implicit](https://oauth.net/2/grant-types/implicit/): This flow is best suited for **public clients** like single-page applications (SPAs) without a backend server. It consists of the following steps: - - Client redirects the Resource Owner to the Authorization Server. - - Resource Owner approves the request and is redirected back to the Client with an access token. - - Access token is used to access resources. +### [Client Credentials](https://oauth.net/2/grant-types/client-credentials/) -- [Client credentials](https://oauth.net/2/grant-types/client-credentials/): This flow is best suited for **machine-to-machine** (M2M) interactions where there is no end-user. - - Client authenticates with the Authorization Server using its own credentials. - - Authorization Server issues an access token to the Client. - - Access token is used to access resources. +Client Credentials Grant -#### PKCE +This flow is best suited for **machine-to-machine** (M2M) interactions where there is no end-user. +It consists of the following steps: +1. The **Client** authenticates with the **Authorization Server** using its own credentials. +2. The **Authorization Server** verifies the credentials and issues an **Access Token**. +3. The **Client** uses the **Access Token** to access protected resources. -[**PKCE**](https://oauth.net/2/pkce/) is an extension to the **Authorization Code flow** to prevent CSRF and authorization code injection attacks. -We support PKCE and recommend that you use a library that can allow it. diff --git a/v2/oauth/machine-to-machine-authentication.mdx b/v2/oauth/machine-to-machine-authentication.mdx index 4350758f4..3dade5eca 100644 --- a/v2/oauth/machine-to-machine-authentication.mdx +++ b/v2/oauth/machine-to-machine-authentication.mdx @@ -5,6 +5,7 @@ hide_title: true import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs" import TabItem from '@theme/TabItem'; +import AppInfoForm from "/src/components/appInfoForm" import CoreInjector from "/src/components/coreInjector" # Machine to Machine Authentication @@ -48,7 +49,7 @@ The response body will contain a **`client_id`** field which you will need to us ## 2. Initialize the OAuth2Provider recipe -In your **`authentication server`** you will need to initialize the **OAuth2Provider** recipe . +In your **`authentication server`** you will need to initialize the **OAuth2Provider** recipe. The recipe will expose the endpoints needed for enabling the [**OAuth 2.0**](/docs/oauth/introduction#oauth-20) flow. @@ -108,9 +109,15 @@ At the moment we do not have support creating OAuth2 providers in the Python SDK Now you can directly call the [**Authorization Server**](/docs/oauth/introduction#authorization-server) to generate Access Tokens. Check the following code snippet to see how you can do that: + + ```bash -curl -X POST /auth/oauth/token \ +curl -X POST ^{form_apiDomain}^{form_apiBasePath}/oauth/token \ -H "Content-Type: application/json" \ -d '{ "client_id": "", @@ -121,3 +128,24 @@ curl -X POST /auth/oauth/token \ ``` + + +The **Authorization Server** will return a response that will look like this: + +```json +{ + "access_token": "", + "expires_in": 3600 +} +``` + +You will have to save the `access_token` in memory so that you can use it in the next step. +The `expires_in` field will tell you how long the token is valid for. + +## 4. Use the Generated Access Token + +Now that you have an **Access Token** you can use it when communicating with the other services. +Just keep in mind to generate a new one when it expires. + +The service that will receive the request which includes the **Access Token** will have to verify it. +To see a detailed example of how to do this please check our [separate guide](/docs/oauth/customizations/verfiy-tokens). diff --git a/v2/oauth/multiple-frontends-with-a-single-backend.mdx b/v2/oauth/multiple-frontends-with-a-single-backend.mdx index 145437024..e2245bef1 100644 --- a/v2/oauth/multiple-frontends-with-a-single-backend.mdx +++ b/v2/oauth/multiple-frontends-with-a-single-backend.mdx @@ -20,12 +20,23 @@ This guide assumes that you already have setup and configured **SuperTokens** in For more information on how to do that please check our [quickstart guide](/docs/thirdparty/introduction). ::: -## 1. Create the OAuth2 Clients +## 1. Enable the OAuth2 features from the Dashboard + +You will first have to enable the **OAuth2** features from the **SuperTokens Dashboard**. +1. Open the **SuperTokens Dashboard** on the main page +2. Click on the **Enabled Paid Features** button +3. Click on **Managed Service** +4. Check the **OAuth 2.0** option +5. Click *Save* + +Now you should be able to use the OAuth2 recipes in your applications. + +## 2. Create the OAuth2 Clients For each of your **`frontend`** applications you will have to create a separate [**OAuth2 client**](/docs/oauth/introduction#client). This can be done by directly calling the **SuperTokens Core** API. - + ```bash curl -X POST ^{coreInjector_uri_without_quotes}/recipe/oauth2/admin/clients \ @@ -35,7 +46,7 @@ curl -X POST ^{coreInjector_uri_without_quotes}/recipe/oauth2/admin/clients \ "client_name": "", "response_types": ["code", "id_token"], "grant_types": ["authorization_code", "refresh_token"], - "redirect_uri": ["https://.com/oauth/callback"] + "redirect_uri": ["https:///oauth/callback"] }' ``` @@ -43,18 +54,18 @@ curl -X POST ^{coreInjector_uri_without_quotes}/recipe/oauth2/admin/clients \ - `client_name` - A human-readable name of the client that will be presented to the [**end-user**](/docs/oauth/introduction#authorization) during authorization. -- `response_types` - Specifies the types of responses your client expects from the Authorization Server. +- `response_types` - Specifies the types of responses your client expects from the Authorization Server. Most of the time, you would need the following two to be present: - `code`: Indicates that the [**Client**](/#authorization) will receive an [**Authorization Code**](/#authorization) that will be exchanged for an [**Access Token**](/#authorization). - `id_token`: Indicates that the [**Client**](/#authorization) expects an [**ID Token**](/#authorization) - `grant_types` - The grant types that the [**Client**](/#authorization) will use. - `authorization_code`: Allows exchanging the [**Authorization Code**](/#authorization) for an [**Access Token**](/#authorization). - `refresh_token`: Allows exchanging the [**Refresh Token**](/#authorization) for a new [**Access Token**](/#authorization). -- `redirect_uri` - A list of URIs to which the [**Authorization Server**](/#authorization) will send the user-agent (browser) after completing the authorization step +- `redirect_uri` - A list of URIs to which the [**Authorization Server**](/#authorization) will send the user-agent (browser) after completing the authorization step. These can be deep links to mobile or desktop apps as well, but they must be exact URLs, without wildcards. If the creation was successful, the response will return a `201` status code. -The response body will contain a **`client_id`** field which you will need to use in the next steps. +The response body will contain the **`client_id`** and the `client_secret` fields. Save them for each request because we will need to use them in the next steps. -## 2. Initialize the OAuth2 recipes on the backend +## 3. Initialize the OAuth2 recipes on the backend In your **`backend`** application you will need to initialize both the **OAuth2Provider** and the **OAuth2Client** recipes. @@ -86,7 +97,7 @@ supertokens.init({ // for each of your previously created clients OAuth2Client.init({ clientId: '', - oidcDiscoveryEndpoint: 'https:///.well-known/openid-configuration' + oidcDiscoveryEndpoint: 'https:///auth/.well-known/openid-configuration' }), ] }); @@ -116,7 +127,7 @@ At the moment we do not have support creating OAuth2 providers in the Python SDK -## 3. Initialize the recipe on the Frontend Applications +### Configure the Authorization Service Frontend :::info @@ -124,7 +135,7 @@ The `OAuth2Provider` recipe is available, at the moment, only when using the `su ::: -Initialize the `OAuth2Provider` recipe on the frontend of each of your applications, ensuring you set the `authMode` to `header`. +Initialize the `OAuth2Provider` recipe on the frontend of your **Authorization Service**, ensuring you set the `authMode` to `header`. ```tsx import OAuth2Provider from "supertokens-auth-react/recipe/oauth2provider"; @@ -147,16 +158,20 @@ export const SuperTokensConfig = { ## 4. Update the login flow in your frontend applications In your `frontend applications` you will have to add a login action that will direct the user to the authentication page. -You can just use a link for that. The link should be structured like this: +You can just use a link for that. + +The link should be structured like this: ``` -/auth/oauth/auth?client_id=&redirect_uri= +/auth/oauth/auth?client_id=&redirect_uri=&scope=&state= ``` - `` - The domain of your [**Authentication Service**](/docs/oauth/introduction#authentication-service). The example assumes that you didn't overwrite the default `apiBasePath`. If that's the case you will have to replace `/auth` with you custom base path. - `` - The corresponding client ID based on what you have created in the first step. - `` - The corresponding redirect URI based on what you have created in the first step. +- `` - The scopes that you want to request. This is optional and can be left empty. +- `` - A random string that will be used to prevent CSRF attacks. This is optional and can be left empty. ## 5. Test the new authentication flow diff --git a/v2/oauth/multiple-frontends-with-separate-backends.mdx b/v2/oauth/multiple-frontends-with-separate-backends.mdx index bc42d002c..f378d7c24 100644 --- a/v2/oauth/multiple-frontends-with-separate-backends.mdx +++ b/v2/oauth/multiple-frontends-with-separate-backends.mdx @@ -10,21 +10,35 @@ import CoreInjector from "/src/components/coreInjector" You can use the following guide if you have a single [**Authentication Service**](/docs/oauth/introduction#authentication-service) that is used by multiple applications. In turn, each app has separate **`frontend `** and **`backend`** instances that are served from different domains. +Using the actual **OAuth 2.0** terminology, that each application can be considered a [**Client**](/docs/oauth/introduction#client) while the **`backends`** are also [**Resource Servers**](/docs/oauth/introduction#resource-server). -Using the actual **OAuth 2.0** terminology, we can say that each **`frontend`** can be considered a [**Client**](/docs/oauth/introduction#client) and each **`backend`** is a [**Resource Server**](/docs/oauth/introduction#resource-server). +Note that if the *frontends* and *backends* are in different *sub domains*, you don't need to use *OAuth* and can instead use [session sharing across sub domains](/docs/session/common-customizations/sessions/share-sessions-across-sub-domains). + +Client Credentials Grant :::info This guide assumes that you already have setup and configured **SuperTokens** in your [**Authentication Service**](/docs/oauth/introduction#authentication-service). -For more information on how to do that please check our [quickstart guide](/docs/thirdparty/introduction). +For more information on how to do that please check our [quickstart guides](/docs/guides). ::: -## 1. Create the OAuth2 Clients +## 1. Enable the OAuth2 features from the Dashboard + +You will first have to enable the **OAuth2** features from the **SuperTokens Dashboard**. +1. Open the **SuperTokens Dashboard** on the main page +2. Click on the **Enabled Paid Features** button +3. Click on **Managed Service** +4. Check the **OAuth 2.0** option +5. Click *Save* + +Now you should be able to use the OAuth2 recipes in your applications. + +## 2. Create the OAuth2 Clients For each of your **`frontend`** applications you will have to create a separate [**OAuth2 client**](/docs/oauth/introduction#client). This can be done by directly calling the **SuperTokens Core** API. - + ```bash curl -X POST ^{coreInjector_uri_without_quotes}/recipe/oauth2/admin/clients \ @@ -34,7 +48,7 @@ curl -X POST ^{coreInjector_uri_without_quotes}/recipe/oauth2/admin/clients \ "client_name": "", "response_types": ["code", "id_token"], "grant_types": ["authorization_code", "refresh_token"], - "redirect_uri": ["https://.com/oauth/callback"] + "redirect_uri": ["https:///oauth/callback"] }' ``` @@ -42,18 +56,18 @@ curl -X POST ^{coreInjector_uri_without_quotes}/recipe/oauth2/admin/clients \ - `client_name` - A human-readable name of the client that will be presented to the [**end-user**](/docs/oauth/introduction#authorization) during authorization. -- `response_types` - Specifies the types of responses your client expects from the Authorization Server. +- `response_types` - Specifies the types of responses your client expects from the Authorization Server. Most of the time, you would need the following two to be present: - `code`: Indicates that the [**Client**](/#authorization) will receive an [**Authorization Code**](/#authorization) that will be exchanged for an [**Access Token**](/#authorization). - `id_token`: Indicates that the [**Client**](/#authorization) expects an [**ID Token**](/#authorization) - `grant_types` - The grant types that the [**Client**](/#authorization) will use. - `authorization_code`: Allows exchanging the [**Authorization Code**](/#authorization) for an [**Access Token**](/#authorization). - `refresh_token`: Allows exchanging the [**Refresh Token**](/#authorization) for a new [**Access Token**](/#authorization). -- `redirect_uri` - A list of URIs to which the [**Authorization Server**](/#authorization) will send the user-agent (browser) after completing the authorization step +- `redirect_uri` - A list of URIs to which the [**Authorization Server**](/#authorization) will send the user-agent (browser) after completing the authorization step. These can be deep links to mobile or desktop apps as well, but they must be exact URLs, without wildcards. If the creation was successful, the response will return a `201` status code. -The response body will contain the **`client_id`** and the `client_secret` fields. Safe them for each request because we will need to use them in the next steps. +The response body will contain the **`client_id`** and the `client_secret` fields. Save them for each request because we will need to use them in the next steps. -## 2. Initialize the provider recipe +## 3. Initialize the OAuth2 Provider Recipe In your [**Authentication Service**](/docs/oauth/introduction#authentication-service) you will need to initialize the **OAuth2Provider** recipe. The recipe will expose the endpoints needed for enabling the [**OAuth 2.0**](/docs/oauth/introduction#oauth-20) flow. @@ -76,8 +90,6 @@ supertokens.init({ appName: "", apiDomain: "", websiteDomain: "", - apiBasePath: "/auth", - websiteBasePath: "/auth" }, recipeList: [ // This is where you initialize the OAuth2 recipe @@ -110,296 +122,69 @@ At the moment we do not have support creating OAuth2 providers in the Python SDK -## 3. Set Up Session Handling in Each Application -You will have to setup custom session handling logic in each of your `backend applications`. +### Configure the Authorization Service Frontend - +:::info - +The `OAuth2Provider` recipe is available, at the moment, only when using the `supertokens-auth-react` package. -You can use a generic OIDC or OAuth2 library. -For `NodeJS` we recommend using either [passport-oauth2](https://www.passportjs.org/packages/passport-oauth2/) or [passport-openidconnect](https://www.passportjs.org/packages/passport-openidconnect/). +::: -#### Example using `passport-oauth2`: +Initialize the `OAuth2Provider` recipe on the frontend of your **Authorization Service**, ensuring you set the `authMode` to `header`. -```typescript -import express, { Request, Response } from 'express'; -import passport from 'passport'; -import { Strategy as OAuth2Strategy } from 'passport-oauth2'; -import session from 'express-session'; - -const AUTHORIZATION_SERVER_URL = 'https://auth.example.com'; -// The client ID returned from the first step -const CLIENT_ID = 'your-client-id'; -// The client secret returned from the first step -const CLIENT_SECRET = 'your-client-secret'; -// On of the callback URLs specified in the create client payload -const CALLBACK_URL = 'https://your-app.com/auth/callback'; - -const app = express(); - -app.use(session({ - secret: 'your-session-secret', - resave: false, - saveUninitialized: false -})); - -app.use(passport.initialize()); -app.use(passport.session()); - -passport.serializeUser((user, done) => { - done(null, user); -}); +```tsx +import OAuth2Provider from "supertokens-auth-react/recipe/oauth2provider"; +import Session from "supertokens-auth-react/recipe/session"; -passport.deserializeUser((obj, done) => { - done(null, obj); -}); -passport.use(new OAuth2Strategy({ - authorizationURL: `${AUTHORIZATION_SERVER_URL}/authorize`, - tokenURL: `${AUTHORIZATION_SERVER_URL}/token`, - clientID: CLIENT_ID, - clientSecret: CLIENT_SECRET, - callbackURL: CALLBACK_URL -}, (accessToken, refreshToken, profile, done) => { - // Verify if the user exists - // And then store the user's profile during this step - done(null, profile); -})); - -app.get('/auth', passport.authenticate('oauth2')); -app.get('/auth/callback', passport.authenticate('oauth2', { - failureRedirect: '/login' -}), (req: Request, res: Response) => { - // Successful authentication - res.redirect('/'); -}); +export const SuperTokensConfig = { + appInfo: { + appName: "App Name", + apiDomain: "", + websiteDomain: "", + }, + recipeList: [ + OAuth2Provider.init({ authMode: "header" }), + Session.init(), + ], +}; -// Example of a secure endpoint -app.get('/', (req: Request, res: Response) => { - if (!req.isAuthenticated()) { - return res.redirect('/login'); - } - res.send(`Hello, ${(req.user as any).name}`); -}); +``` +## 4. Set Up Session Handling in Each Application -const PORT = process.env.PORT || 3000; -app.listen(PORT, () => { - console.log(`Server running on port ${PORT}`); -}); -``` +In each of your `backend applications` you will have to setup up logic for handling the **OAuth 2.0** authentication flow. - +This will involve the following steps: - +:::note +What are the actual steps? +::: -```go -package main - -import ( - "encoding/gob" - "fmt" - "log" - "net/http" - "os" - - "github.com/gorilla/mux" - "github.com/gorilla/sessions" - "golang.org/x/oauth2" -) - -var ( - authorizationServerURL = "https://auth.example.com" - // The client ID returned from the first step - clientID = "" - // The client secret returned from the first step - clientSecret = "" - // On of the callback URLs specified in the create client payload - callbackURL = "https://your-app.com/auth/callback" - - store = sessions.NewCookieStore([]byte("your-session-secret")) - - // OAuth2 configuration - config = &oauth2.Config{ - ClientID: clientID, - ClientSecret: clientSecret, - RedirectURL: callbackURL, - Endpoint: oauth2.Endpoint{ - AuthURL: authorizationServerURL + "/authorize", - TokenURL: authorizationServerURL + "/token", - }, - Scopes: []string{"openid", "profile", "email"}, - } -) - -type User struct { - Name string - Email string -} - -func init() { - gob.Register(User{}) -} - -func main() { - r := mux.NewRouter() - - r.HandleFunc("/", homeHandler) - r.HandleFunc("/login", loginHandler) - r.HandleFunc("/auth/callback", authCallbackHandler) - r.HandleFunc("/logout", logoutHandler) - - http.Handle("/", r) - log.Println("Server started at http://localhost:8080") - log.Fatal(http.ListenAndServe(":8080", nil)) -} - -func homeHandler(w http.ResponseWriter, r *http.Request) { - session, _ := store.Get(r, "session") - user, ok := session.Values["user"].(User) - - if !ok { - http.Redirect(w, r, "/login", http.StatusFound) - return - } - - fmt.Fprintf(w, "Hello, %s", user.Name) -} - -func loginHandler(w http.ResponseWriter, r *http.Request) { - url := config.AuthCodeURL("state", oauth2.AccessTypeOffline) - http.Redirect(w, r, url, http.StatusFound) -} - -func authCallbackHandler(w http.ResponseWriter, r *http.Request) { - session, _ := store.Get(r, "session") - - state := r.FormValue("state") - if state != "state" { - http.Error(w, "Invalid state", http.StatusBadRequest) - return - } - - code := r.FormValue("code") - token, err := config.Exchange(oauth2.NoContext, code) - if err != nil { - http.Error(w, "Failed to exchange token", http.StatusInternalServerError) - return - } - - client := config.Client(oauth2.NoContext, token) - response, err := client.Get(authorizationServerURL + "/userinfo") - if err != nil { - http.Error(w, "Failed to get user info", http.StatusInternalServerError) - return - } - defer response.Body.Close() - - var user User - if err := json.NewDecoder(response.Body).Decode(&user); err != nil { - http.Error(w, "Failed to decode user info", http.StatusInternalServerError) - return - } - - session.Values["user"] = user - session.Save(r, w) - - http.Redirect(w, r, "/", http.StatusFound) -} - -func logoutHandler(w http.ResponseWriter, r *http.Request) { - session, _ := store.Get(r, "session") - delete(session.Values, "user") - session.Save(r, w) - - http.Redirect(w, r, "/login", http.StatusFound) -} -``` +The following steps are only required if you are using the **Session** recipe. If you are not using the **Session** recipe, you can skip this step. +1. Exposing an endpoint that can take the authorization code and exchange it for an access token +2. Verifying the access token on each request + +You can use a generic OIDC or OAuth2 library to achieve these steps. + + + + + +We recommend using either [passport-oauth2](https://www.passportjs.org/packages/passport-oauth2/) or [passport-openidconnect](https://www.passportjs.org/packages/passport-openidconnect/). + +#### Example using `passport-oauth2`: + - + -```python -from flask import Flask, redirect, url_for, session, request -from authlib.integrations.flask_client import OAuth -from flask_session import Session - -# Configuration -AUTHORIZATION_SERVER_URL = 'https://auth.example.com' -# The client ID returned from the first step -CLIENT_ID = 'your-client-id' -# The client secret returned from the first step -CLIENT_SECRET = 'your-client-secret' -# One of the callback URLs specified in the create client payload -CALLBACK_URL = 'https://your-app.com/auth/callback' - -app = Flask(__name__) -app.secret_key = 'your-session-secret' - -# Configure server-side session management -app.config['SESSION_TYPE'] = 'filesystem' -app.config['SESSION_PERMANENT'] = False -Session(app) - -oauth = OAuth(app) -oauth.register( - name='auth_provider', - client_id=CLIENT_ID, - client_secret=CLIENT_SECRET, - authorize_url=f'{AUTHORIZATION_SERVER_URL}/authorize', - authorize_params=None, - access_token_url=f'{AUTHORIZATION_SERVER_URL}/token', - access_token_params=None, - refresh_token_url=None, - redirect_uri=CALLBACK_URL, - client_kwargs={'scope': 'openid profile email'}, -) - -@app.route('/') -def index(): - user = session.get('user') - if user: - return f'Hello, {user["name"]}' - return 'You are not logged in' - -@app.route('/login') -def login(): - redirect_uri = url_for('auth_callback', _external=True) - return oauth.auth_provider.authorize_redirect(redirect_uri) - -@app.route('/auth/callback') -def auth_callback(): - token = oauth.auth_provider.authorize_access_token() - user = oauth.auth_provider.parse_id_token(token) - session['user'] = user - return redirect('/') - -@app.route('/logout') -def logout(): - session.pop('user', None) - return redirect('/') - -@app.errorhandler(401) -def unauthorized(e): - return 'Unauthorized' - -@app.errorhandler(403) -def forbidden(e): - return 'Forbidden' - -@app.errorhandler(404) -def page_not_found(e): - return 'Page not found' - -# Start the server -if __name__ == '__main__': - app.run(debug=True) -``` + + @@ -407,21 +192,25 @@ if __name__ == '__main__': -## 4. Update the login flow in your frontend applications +## 5. Update the login flow in your frontend applications In your `frontend applications` you will have to add a login action that will direct the user to the authentication page. -You can just use a link for that. The link should be structured like this: +You can just use a link for that. + +The link should be structured like this: ``` -/auth/oauth/auth?client_id=&redirect_uri= +/auth/oauth/auth?client_id=&redirect_uri=&scope=&state= ``` - `` - The domain of your [**Authentication Service**](/docs/oauth/introduction#authentication-service). The example assumes that you didn't overwrite the default `apiBasePath`. If that's the case you will have to replace `/auth` with you custom base path. - `` - The corresponding client ID based on what you have created in the first step. - `` - The corresponding redirect URI based on what you have created in the first step. +- `` - The scopes that you want to request. This is optional and can be left empty. +- `` - A random string that will be used to prevent CSRF attacks. This is optional and can be left empty. -## 5. Test the new authentication flow +## 6. Test the new authentication flow With everything set up, you can now test your login flow. Just use the link that you have created in the previous step and try to access a protected resource. diff --git a/v2/oauth/sidebars.js b/v2/oauth/sidebars.js index 6748c912e..9e011a788 100644 --- a/v2/oauth/sidebars.js +++ b/v2/oauth/sidebars.js @@ -13,6 +13,15 @@ module.exports = { "machine-to-machine-authentication", ], }, - "common-actions", + { + type: "category", + label: "Customizations", + collapsed: false, + items: [ + "customizations/working-with-scopes", + "customizations/add-custom-claims-in-tokens", + "customizations/verify-tokens", + ], + }, ], }; From febfb131d36972e3f19aacab313608bd23f6eb9a Mon Sep 17 00:00:00 2001 From: Bogdan Carpusor Date: Wed, 25 Sep 2024 19:25:21 +0300 Subject: [PATCH 04/33] Add improvements and new pages --- .../clients-without-dedicated-backend.mdx | 122 -------- v2/oauth/customizations/custom-ui.mdx | 6 + v2/oauth/introduction.mdx | 70 ++--- .../machine-to-machine-authentication.mdx | 121 +++++--- ...ltiple-frontends-with-a-single-backend.mdx | 265 +++++++++++------ ...tiple-frontends-with-separate-backends.mdx | 244 ++++++++++------ v2/oauth/reuse-website-login.mdx | 266 +++++++++++++++++- v2/oauth/sidebars.js | 2 +- v2/src/components/tabs/OAuthBackendTabs.tsx | 22 ++ v2/src/components/tabs/OAuthFrontendTabs.tsx | 19 ++ v2/src/components/tabs/OAuthMobileTabs.tsx | 19 ++ .../img/oauth/authorization-code-flow.png | Bin 0 -> 271974 bytes .../img/oauth/client-credentials-flow.png | Bin 0 -> 228791 bytes v2/static/img/oauth/machine-to-machine.png | Bin 0 -> 235335 bytes ...frontend-domains-with-a-single-backend.png | Bin 0 -> 304702 bytes ...rontend-domains-with-separate-backends.png | Bin 0 -> 389307 bytes 16 files changed, 783 insertions(+), 373 deletions(-) delete mode 100644 v2/oauth/clients-without-dedicated-backend.mdx create mode 100644 v2/oauth/customizations/custom-ui.mdx create mode 100644 v2/src/components/tabs/OAuthBackendTabs.tsx create mode 100644 v2/src/components/tabs/OAuthFrontendTabs.tsx create mode 100644 v2/src/components/tabs/OAuthMobileTabs.tsx create mode 100644 v2/static/img/oauth/authorization-code-flow.png create mode 100644 v2/static/img/oauth/client-credentials-flow.png create mode 100644 v2/static/img/oauth/machine-to-machine.png create mode 100644 v2/static/img/oauth/multiple-frontend-domains-with-a-single-backend.png create mode 100644 v2/static/img/oauth/multiple-frontend-domains-with-separate-backends.png diff --git a/v2/oauth/clients-without-dedicated-backend.mdx b/v2/oauth/clients-without-dedicated-backend.mdx deleted file mode 100644 index 637ff185c..000000000 --- a/v2/oauth/clients-without-dedicated-backend.mdx +++ /dev/null @@ -1,122 +0,0 @@ ---- -title: Clients without dedicated backends -hide_title: true ---- - -import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs" -import TabItem from '@theme/TabItem'; -import CoreInjector from "/src/components/coreInjector" - -# Clients Without Dedicated Backends - -You can use the following guide if you have `frontend applications` that use an [**Authentication Service**](/#authorization) that is on a different domain but do not have dedicated `backends` for other functionalities. - - -:::info -This guide assumes that you already have setup and configured **SuperTokens** in your [**Authentication Service**](/docs/oauth/introduction#authentication-service). - -For more information on how to do that please check our [quickstart guide](/docs/thirdparty/introduction). -::: - -## 1. Create the OAuth2 Clients - -For each of your **`frontend`** applications you will have to create a separate [**OAuth2 client**](/docs/oauth/introduction#client). -This can be done by directly calling the **SuperTokens Core** API. - - - -```bash -curl -X POST ^{coreInjector_uri_without_quotes}/recipe/oauth2/admin/clients \ - -H "Content-Type: application/json" \ - -H "api-key: ^{coreInjector_api_key_without_quotes}" \ - -d '{ - "client_name": "", - "response_types": ["code", "id_token"], - "grant_types": ["authorization_code", "refresh_token"], - "redirect_uri": ["https://.com/oauth/callback"] - }' -``` - - - - -- `client_name` - A human-readable name of the client that will be presented to the [**end-user**](/docs/oauth/introduction#authorization) during authorization. -- `response_types` - Specifies the types of responses your client expects from the Authorization Server. - - `code`: Indicates that the [**Client**](/#authorization) will receive an [**Authorization Code**](/#authorization) that will be exchanged for an [**Access Token**](/#authorization). - - `id_token`: Indicates that the [**Client**](/#authorization) expects an [**ID Token**](/#authorization) -- `grant_types` - The grant types that the [**Client**](/#authorization) will use. - - `authorization_code`: Allows exchanging the [**Authorization Code**](/#authorization) for an [**Access Token**](/#authorization). - - `refresh_token`: Allows exchanging the [**Refresh Token**](/#authorization) for a new [**Access Token**](/#authorization). -- `redirect_uri` - A list of URIs to which the [**Authorization Server**](/#authorization) will send the user-agent (browser) after completing the authorization step - -If the creation was successful, the response will return a `201` status code. -The response body will contain a **`client_id`** field which you will need to use in the next steps. - -## 2. Initialize the OAuth2Provider recipe on the authentication service - - -In your **`authentication service`** you will need to initialize both the **OAuth2Provider** recipe. -The recipe will expose the endpoints needed for enabling the [**OAuth 2.0**](/docs/oauth/introduction#oauth-20) flow. - - - - -```typescript -import supertokens from "supertokens-node"; -import OAuth2Provider from"supertokens-node/recipe/oauth2provider"; - -supertokens.init({ - framework: "express", - supertokens: { - connectionURI: "", - apiKey: "", - }, - appInfo: { - appName: "", - apiDomain: "", - websiteDomain: "", - apiBasePath: "/auth", - websiteBasePath: "/auth" - }, - recipeList: [ - OAuth2Provider.init(), - ] -}); -``` - - - - - -:::caution - -At the moment we do not have support creating OAuth2 providers in the Go SDK. - -::: - - - - - -:::caution - -At the moment we do not have support creating OAuth2 providers in the Python SDK. - -::: - - - - - - -## 5. Set Up Your Frontend and Integrate with an OIDC Library - -Integrate your frontend applications with a generic OAuth2 or OIDC library. Here are a few popular options: [oidc-client-js](https://github.com/IdentityModel/oidc-client-js), [openid-client](https://github.com/panva/node-openid-client) - -### Example Using `openid-client` - -```typescript - -// TODO: Add example here -``` - diff --git a/v2/oauth/customizations/custom-ui.mdx b/v2/oauth/customizations/custom-ui.mdx new file mode 100644 index 000000000..6e7e4cc10 --- /dev/null +++ b/v2/oauth/customizations/custom-ui.mdx @@ -0,0 +1,6 @@ +--- +title: Implement a Custom UI +hide_title: true +--- + +# Implement a Custom UI diff --git a/v2/oauth/introduction.mdx b/v2/oauth/introduction.mdx index 48e46805d..a787170d9 100644 --- a/v2/oauth/introduction.mdx +++ b/v2/oauth/introduction.mdx @@ -18,7 +18,6 @@ However, there are some custom use cases where you will have to implement a diff - **[If you have multiple frontend clients that connect to different backends](/docs/oauth/multiple-frontends-with-separate-backends)** - **[If you have multiple frontend clients connecting to the same backend](/docs/oauth/multiple-frontends-with-a-single-backend)** -- **[If you want to have an unified login experience across multiple independent applications](/docs/oauth/clients-without-dedicated-backend)** - **[If you want to reuse your website login for desktop and mobile apps](/docs/oauth/reuse-website-login)** - **[For authenticating microservices](/docs/oauth/machine-to-machine-authentication)** @@ -50,14 +49,14 @@ In most cases, this is an actual person that uses an application. ### Client An **OAuth 2.0 Client** is an application that wants to access protected resources. -In order to do so it needs to get an [**Access Token**](#access-token) from the [**Authorization Server**](#authorization-server). +In order to do so it needs to get an [**OAuth2 Access Token**](#oauth2-access-token) from the [**Authorization Server**](#authorization-server). With that token the client can perform authorized operations on behalf of the [**Resource Owner**](#resource-owner). The term **client** does not imply any particular implementation characteristics (e.g. whether the application executes on a server, a desktop, or other devices). ### Resource Server -The server hosting the protected resources, capable of accepting and responding to protected resource requests using [**Access Tokens**](#access-tokens). +The server hosting the protected resources, capable of accepting and responding to protected resource requests using [**OAuth2 Access Tokens**](#oauth2-access-tokens). Some real-world examples in this case would be things like: - A file storage service that allows users to access only their files - A social media application that allows users to access only posts from their friends @@ -65,7 +64,7 @@ Some real-world examples in this case would be things like: ### Authorization Server -The server issuing [**Access Tokens**](#access-tokens) to the [**Client**](#client) after successfully authenticating the [**Resource Owner**](#resource-owner). +The server issuing [**OAuth2 Access Tokens**](#oauth2-access-tokens) to the [**Client**](#client) after successfully authenticating the [**Resource Owner**](#resource-owner). ## Tokens @@ -73,41 +72,35 @@ Tokens are strings that represent the authorization issued to the [**Client**](# They are mainly used to access to protected resources, on behalf of the [**Resource Owner**](#resource-owner). At the same time, tokens can be used to have more information about who the owner is. -:::info -The tokens that are issued and used in the **OAuth 2.0** recipes are different from the ones used in our other features. -Normally, we work with **SuperTokens Session Acccess Tokens** to identify and authenticate the user. -But, in the case of **OAuth 2.0**, we expose **OAuth2 Tokens** that allow you create custom implementations. +### OAuth2 Access Token -In all the **OAuth 2.0** pages and guides, when we talk about **tokens** we are referring to the **OAuth2 Tokens**. +This is the main token that is used to provide temporary access to protected resources. +The **OAuth2 Access Token** is meant to be read and validated only by the [**Resource Server**](#resource-server). -::: +:::info -### Access Token +This token is different from the **SuperTokens Session Access Token**. +The latter is used in the **OAuth 2.0** authentication flows when you set the `authMode: 'header'` option in the `Session` recipe. -This is the main token that is used to provide temporary access to protected resources. -The **Access Token** is meant to be read and validated only by the [**Resource Server**](#resource-server). - -#### Authorization Code +::: -An **Authorization Code** is a short-lived code that the [**Authorization Server**](/#authorization-server) provides to the [**Client**](/#client), via the [**Redirect URI**](#redirect-uri), after authorization has been granted. -This code then gets exchanged for an [**Access Token**](/#access-token). -The **Authorization Code** flow enhances security by keeping tokens out of the user-agent and letting the [**Client**](/#client) manage the backend communication with the [**Authorization Server**](/#authorization-server). +### OAuth2 Refresh Token -#### Redirect URI +A token that can be used to get a new [**OAuth2 Access Token**](#oauth2-access-token) when the current one has expired. +Using the refresh token will not require the user to re-authenticate. -A specific URI to which the [**Authorization Server**](/#authorization-server) redirects the [**Resource Owner's**](/#resource-owner) user-agent (e.g. browser) after the [**Client**](/#client) has been granted or denied the authorization request. -This URI ensures that the [**Authorization Code**](/#authorization-code) or [**Access Token**](/#access-token) is sent to the correct application endpoint. +:::info -### Refresh Token +This token is different from the **SuperTokens Session Refresh Token**. +The latter is used in the **OAuth 2.0** authentication flows when you set the `authMode: 'header'` option in the `Session` recipe. -A token that can be used to get a new [**Access Token**](#access-token) when the current one has expired. -Using the refresh token will not require the user to re-authenticate. +::: ### ID Token This token provides identity information about the [**Resource Owner**](#resource-owner). -Unlike [**Access Tokens**](/#access-token), the **ID Tokens** are meant to be read only by the [**Client**](#client). +Unlike [**OAuth2 Access Tokens**](/#oauth2-access-token), the **ID Tokens** are meant to be read only by the [**Client**](#client). ## Scopes @@ -119,8 +112,8 @@ For example, when a user grants a web application permission to read their email In a general authentication flow scopes get used in the following way: 1. When the **Client** gets created a series of scopes will be specified to the **Authorization Server** 2. During the login attempt the **Resource Owner** will be asked to grant the requested scopes -3. The **Autorization Server** will use the granted scopes to generate an **Access Token**. -4. The **Resource Server** will check the scopes of the **Access Token** and will only allow the requested actions. +3. The **Autorization Server** will use the granted scopes to generate an **OAuth2 Access Token**. +4. The **Resource Server** will check the scopes of the **OAuth2 Access Token** and will only allow the requested actions. @@ -133,7 +126,7 @@ Our implementation supports the following flow types: ### [Authorization Code Grant](https://oauth.net/2/grant-types/authorization-code/) -Authorization Code Grant +Authorization Code Grant This flow is best suited for **web applications** where the [**Client**](/#client) can securely store a client secret (for example in the application's backend). It consists of the following steps: @@ -141,13 +134,18 @@ It consists of the following steps: 2. The **Authorization Server** authenticates the **Resource Owner** and requests their consent for the requested permissions. 3. If the **Resource Owner** grants permission, the **Authorization Server** redirects their browser back to the specified **Redirect URI** and includes an **Authorization Code** as a query parameter. 4. The **Client** then sends a request to the **Authorization Server**’s token endpoint, including the **Authorization Code**. -5. The **Authorization Server** verifies the information sent by the **Client** and, if valid, issues an **Access Token**. +5. The **Authorization Server** verifies the information sent by the **Client** and, if valid, issues an **OAuth2 Access Token**. 6. The token can now be used to make requests to the **Resource Server** to access the protected resources on behalf of the **Resource Owner**. +#### Authorization Code + +An **Authorization Code** is a short-lived code that the [**Authorization Server**](/#authorization-server) provides to the [**Client**](/#client), via a **Redirect URI**, after authorization has been granted. +This code then gets exchanged for an [**OAuth2 Access Token**](/#oauth2-access-token). +The **Authorization Code** flow enhances security by keeping tokens out of the user-agent and letting the [**Client**](/#client) manage the backend communication with the [**Authorization Server**](/#authorization-server). + #### Proof Key for Code Exchange (PKCE) -If the **Client** has no backend server and it cannot securely store a client secret, it can use the **Authorization Code flow** with [**PKCE**](https://oauth.net/2/pkce/). -The **PKCE** extension prevents CSRF and authorization code injection attacks. +In order to prevent CSRF and code injection attacks, the **Authorization Code flow** can be enhanced with [**PKCE**](https://oauth.net/2/pkce/). At the beginning of the authentication flow the **Client** will generate a random string called a *code verifier*. This gets used to ensure that, even if the **Authorization Code** is intercepted, it cannot be exchanged for a token without also including the initial code. @@ -155,13 +153,17 @@ This gets used to ensure that, even if the **Authorization Code** is intercepted ### [Client Credentials](https://oauth.net/2/grant-types/client-credentials/) -Client Credentials Grant +Client Credentials Grant This flow is best suited for **machine-to-machine** (M2M) interactions where there is no end-user. It consists of the following steps: 1. The **Client** authenticates with the **Authorization Server** using its own credentials. -2. The **Authorization Server** verifies the credentials and issues an **Access Token**. -3. The **Client** uses the **Access Token** to access protected resources. +2. The **Authorization Server** verifies the credentials. +3. The **Authorization Server** returns an **OAuth2 Access Token**. +4. The **Client** uses the **OAuth2 Access Token** to access protected resources. +5. The **Resource Server** validates the **OAuth2 Access Token**. +6. If the validation is successful, the **Resource Server** returns the requested resources. + diff --git a/v2/oauth/machine-to-machine-authentication.mdx b/v2/oauth/machine-to-machine-authentication.mdx index 3dade5eca..233eb6c2f 100644 --- a/v2/oauth/machine-to-machine-authentication.mdx +++ b/v2/oauth/machine-to-machine-authentication.mdx @@ -4,79 +4,112 @@ hide_title: true --- import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs" -import TabItem from '@theme/TabItem'; -import AppInfoForm from "/src/components/appInfoForm" +import OAuthFrontendTabs from "/src/components/tabs/OAuthFrontendTabs" +import OAuthBackendTabs from "/src/components/tabs/OAuthBackendTabs" import CoreInjector from "/src/components/coreInjector" +import AppInfoForm from "/src/components/appInfoForm" +import TabItem from '@theme/TabItem'; # Machine to Machine Authentication You can use the following guide if you want to implement a custom authentication flow between your microservices. +Machine to Machine Authentication + +The authentication flow will work in the following way: + +1. `Service A` uses credentials to get an **OAuth2 Access Token** +2. [**Authorization Service**](/docs/oauth/introduction#authorization-service) returns the **OAuth2 Access Token** +3. `Service A` uses the **OAuth2 Access Token** to communicate with `Service B` +4. `Service B` validates the **OAuth2 Access Token** +5. If the token is valid `Service B` returns the requested resource + :::info -This guide assumes that you already have setup and configured **SuperTokens** in your [**Authentication Service**](/docs/oauth/introduction#authentication-service). +This guide assumes that you already have setup and configured **SuperTokens** in your [**Authorization Service**](/docs/oauth/introduction#authorization-service). For more information on how to do that please check our [quickstart guide](/docs/thirdparty/introduction). ::: +## 1. Enable the OAuth2 features from the Dashboard + +You will first have to enable the **OAuth2** features from the **SuperTokens Dashboard**. +1. Open the **SuperTokens Dashboard** on the main page +2. Click on the **Enabled Paid Features** button +3. Click on **Managed Service** +4. Check the **OAuth 2.0** option +5. Click *Save* + +Now you should be able to use the OAuth2 recipes in your applications. + +## 2. Create the OAuth2 Clients -## 1. Create the OAuth2 Clients + + + + For each of your **`microservices`** you will have to create a separate [**OAuth2 client**](/docs/oauth/introduction#client). This can be done by directly calling the **SuperTokens Core** API. - ```bash +# You will have to run this for each one of your applications +# Adjust the client_name based on that curl -X POST ^{coreInjector_uri_without_quotes}/recipe/oauth2/admin/clients \ -H "Content-Type: application/json" \ - -H "api-key: ^{coreInjector_api_key_without_quotes}" \ -d '{ + "tokenEndpointAuthMethod": "none", "client_name": "", "grant_types": ["client_credentials"], }' ``` - - `client_name` - Then name of the client that will be used later for identification. - `grant_types` - The grant types that the [**Client**](/#authorization) will use. - `client_credentials`: Allows the client to directly request an Access Token by authenticating itself with the Authorization Server using its own client credentials. -If the creation was successful, the response will return a `201` status code. -The response body will contain a **`client_id`** field which you will need to use in the next steps. +If the creation was successful, the API will return a response that looks like this: -## 2. Initialize the OAuth2Provider recipe +```json +{ + "client_name": "", + "client_id": "", + "client_secret": "", + "callback_urls": [], + "authorize_url": "^{form_apiDomain}/^{form_apiBasePath}/oauth/authorize", +} +``` +## 3. Set Up your Authorization Service -In your **`authentication server`** you will need to initialize the **OAuth2Provider** recipe. -The recipe will expose the endpoints needed for enabling the [**OAuth 2.0**](/docs/oauth/introduction#oauth-20) flow. +In your [**Authorization Service**](/docs/oauth/introduction#authorization-service) backend you will need to initialize the **OAuth2Provider** recipe. + + - -```typescript -import supertokens from "supertokens-node"; -import OAuth2Provider from"supertokens-node/recipe/oauth2provider"; -import OAuth2Client from"supertokens-node/recipe/oauth2client"; - -supertokens.init({ - framework: "express", - supertokens: { - connectionURI: "", - apiKey: "", - }, - appInfo: { - appName: "", - apiDomain: "", - websiteDomain: "", - apiBasePath: "/auth", - websiteBasePath: "/auth" - }, - recipeList: [ - OAuth2Provider.init(), - ] -}); +Update the `supertokens.init` call to include the new recipe. + +1. Add the new import statement + +```typescript + +import OAuth2Provider from "supertokens-node/recipe/oauth2provider"; + +``` + +2. Update the list of recipes with the new initialization step. + +```tsx + +OAuth2Provider.init(), + ``` @@ -104,16 +137,11 @@ At the moment we do not have support creating OAuth2 providers in the Python SDK -## 3. Generate Access Tokens +## 4. Generate Access Tokens Now you can directly call the [**Authorization Server**](/docs/oauth/introduction#authorization-server) to generate Access Tokens. Check the following code snippet to see how you can do that: - ```bash @@ -128,7 +156,6 @@ curl -X POST ^{form_apiDomain}^{form_apiBasePath}/oauth/token \ ``` - The **Authorization Server** will return a response that will look like this: @@ -142,10 +169,14 @@ The **Authorization Server** will return a response that will look like this: You will have to save the `access_token` in memory so that you can use it in the next step. The `expires_in` field will tell you how long the token is valid for. -## 4. Use the Generated Access Token +## 5. Use the Generated Access Token -Now that you have an **Access Token** you can use it when communicating with the other services. +Now that you have an **OAuth2 Access Token** you can use it when communicating with the other services. Just keep in mind to generate a new one when it expires. -The service that will receive the request which includes the **Access Token** will have to verify it. +The service that will receive the request which includes the **OAuth2 Access Token** will have to verify it. To see a detailed example of how to do this please check our [separate guide](/docs/oauth/customizations/verfiy-tokens). + + + + diff --git a/v2/oauth/multiple-frontends-with-a-single-backend.mdx b/v2/oauth/multiple-frontends-with-a-single-backend.mdx index e2245bef1..c69d06670 100644 --- a/v2/oauth/multiple-frontends-with-a-single-backend.mdx +++ b/v2/oauth/multiple-frontends-with-a-single-backend.mdx @@ -4,9 +4,11 @@ hide_title: true --- import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs" -import TabItem from '@theme/TabItem'; +import OAuthFrontendTabs from "/src/components/tabs/OAuthFrontendTabs" +import OAuthBackendTabs from "/src/components/tabs/OAuthBackendTabs" import CoreInjector from "/src/components/coreInjector" -import FrontendPreBuiltUITabs from "/src/components/tabs/FrontendPreBuiltUITabs" +import AppInfoForm from "/src/components/appInfoForm" +import TabItem from '@theme/TabItem'; # Multiple Frontend Domains Using a Single Backend @@ -14,8 +16,22 @@ You can use the following guide if you have multiple **`frontend applications`** Using the actual **OAuth 2.0** terminology, we can say that each **`frontend`** can be considered a [**Client**](/docs/oauth/introduction#client) and the **`backend`** will act as both an [**Authorization Server**](/docs/oauth/introduction#authorization) and a [**Resource Server**](/docs/oauth/introduction#resource-server). +Multiple Frontend Domains with a Single Backend + + +The authentication flow will work in the following way: + +1. User accesses the `frontend` app +2. The application `frontend` redirects the user to the `backend` authentication endpoint. +3. The `backend` redirects the user the [**Authorization Service**](/docs/oauth/introduction#authorization-service) login UI. +4. User completes the login attempt +5. The [**Authorization Service**](/docs/oauth/introduction#authorization-service) backend redirects the user to the backend `callback URL`. +6. The `backend` uses the callback URL information to request a **SuperTokens Session Access Token** from the [**Authorization Service**](/docs/oauth/introduction#authorization-service). +7. The `backend` sends the authentication cookie back to the `frontend`. +8. The `frontend` uses the new cookie to access protected resources from the `backend`. + :::info -This guide assumes that you already have setup and configured **SuperTokens** in your [**Authentication Service**](/docs/oauth/introduction#authentication-service). +This guide assumes that you already have setup and configured **SuperTokens** in your [**Authorization Service**](/docs/oauth/introduction#authorization-service). For more information on how to do that please check our [quickstart guide](/docs/thirdparty/introduction). ::: @@ -33,76 +49,97 @@ Now you should be able to use the OAuth2 recipes in your applications. ## 2. Create the OAuth2 Clients + + + + + For each of your **`frontend`** applications you will have to create a separate [**OAuth2 client**](/docs/oauth/introduction#client). This can be done by directly calling the **SuperTokens Core** API. - - ```bash +# You will have to run this for each one of your applications +# Adjust the client_name and redirect_uri based on that curl -X POST ^{coreInjector_uri_without_quotes}/recipe/oauth2/admin/clients \ -H "Content-Type: application/json" \ - -H "api-key: ^{coreInjector_api_key_without_quotes}" \ -d '{ + "tokenEndpointAuthMethod": "none", "client_name": "", "response_types": ["code", "id_token"], "grant_types": ["authorization_code", "refresh_token"], - "redirect_uri": ["https:///oauth/callback"] + "redirect_uri": ["https:///oauth/callback"] }' ``` - -- `client_name` - A human-readable name of the client that will be presented to the [**end-user**](/docs/oauth/introduction#authorization) during authorization. -- `response_types` - Specifies the types of responses your client expects from the Authorization Server. Most of the time, you would need the following two to be present: - - `code`: Indicates that the [**Client**](/#authorization) will receive an [**Authorization Code**](/#authorization) that will be exchanged for an [**Access Token**](/#authorization). - - `id_token`: Indicates that the [**Client**](/#authorization) expects an [**ID Token**](/#authorization) -- `grant_types` - The grant types that the [**Client**](/#authorization) will use. - - `authorization_code`: Allows exchanging the [**Authorization Code**](/#authorization) for an [**Access Token**](/#authorization). - - `refresh_token`: Allows exchanging the [**Refresh Token**](/#authorization) for a new [**Access Token**](/#authorization). -- `redirect_uri` - A list of URIs to which the [**Authorization Server**](/#authorization) will send the user-agent (browser) after completing the authorization step. These can be deep links to mobile or desktop apps as well, but they must be exact URLs, without wildcards. +- `client_name` - A human-readable name of the client that will be used for identification. +- `response_types` - Specifies the types of responses your client expects from the [**Authorization Server**](/docs/oauth/introduction#authorization-server). Most of the time, you would need the following two to be present: + - `code`: Indicates that the [**Client**](/docs/oauth/introduction#client) will receive an **Authorization Code** that will be exchanged for an [**OAuth2 Access Token**](/docs/oauth/introduction#oauth2-access-token). + - `id_token`: Indicates that the [**Client**](/docs/oauth/introduction#client) expects an [**ID Token**](/docs/oauth/introduction#id-token) +- `grant_types` - The grant types that the [**Client**](/docs/oauth/introduction#client) will use. + - `authorization_code`: Allows exchanging the **Authorization Code** for an [**OAuth2 Access Token**](/docs/oauth/introduction#oauth2-access-token). + - `refresh_token`: Allows exchanging the [**OAuth2 Refresh Token**](/docs/oauth/introduction#oauth2-refresh-token) for a new [**OAuth2 Access Token**](/docs/oauth/introduction#oauth2-access-token). +- `redirect_uri` - A list of URIs to which the [**Authorization Server**](/docs/oauth/introduction#authorization-server) will send the user-agent (browser) after completing the authorization step. These can be deep links to mobile or desktop apps as well, but they must be exact URLs, without wildcards. + +If the creation was successful, the API will return a response that looks like this: + +```json + +{ + "client_name": "", + "client_id": "", + "client_secret": "", + "callback_urls": ["https:///oauth/callback"], + "authorize_url": "^{form_apiDomain}/^{form_apiBasePath}/oauth/authorize", + "token_fetch_url": "^{form_apiDomain}/^{form_apiBasePath}/oauth/token" +} + +``` + +:::caution + +You will have to save this response because we do not persist it interaly for security reasons. +In the next steps we will use the values to complete several configurations. + +::: + -If the creation was successful, the response will return a `201` status code. -The response body will contain the **`client_id`** and the `client_secret` fields. Save them for each request because we will need to use them in the next steps. +## 3. Set Up your Authorization Service -## 3. Initialize the OAuth2 recipes on the backend +### Configure the Authorization Service Backend -In your **`backend`** application you will need to initialize both the **OAuth2Provider** and the **OAuth2Client** recipes. +In your [**Authorization Service**](/docs/oauth/introduction#authorization-service) you will need to initialize the **OAuth2Provider** and the **OAuth2Client** recipes. - + -```typescript -import supertokens from "supertokens-node"; -import OAuth2Provider from"supertokens-node/recipe/oauth2provider"; -import OAuth2Client from"supertokens-node/recipe/oauth2client"; - -supertokens.init({ - framework: "express", - supertokens: { - connectionURI: "", - apiKey: "", - }, - appInfo: { - appName: "", - apiDomain: "", - websiteDomain: "", - apiBasePath: "/auth", - websiteBasePath: "/auth" - }, - recipeList: [ - OAuth2Provider.init(), - // You will have to initialize the OAuth2Client recipe - // for each of your previously created clients - OAuth2Client.init({ - clientId: '', - oidcDiscoveryEndpoint: 'https:///auth/.well-known/openid-configuration' - }), - ] -}); +Update the `supertokens.init` call to include the new recipes. + +1. Add the new import statements + +```typescript +import OAuth2Provider from "supertokens-node/recipe/oauth2provider"; +import OAuth2Client from "supertokens-node/recipe/oauth2client"; ``` +2. Update the list of recipes with the new initialization steps. + +```tsx +OAuth2Provider.init(), +OAuth2Client.init({ + // Use the values returned from the previous client creation step + providerConfigs: [{ + "clientId": "", + "clientSecret": "", + }] +}) +``` @@ -129,53 +166,123 @@ At the moment we do not have support creating OAuth2 providers in the Python SDK ### Configure the Authorization Service Frontend +Initialize the `OAuth2Provider` recipe on the frontend of your **Authorization Service**. + :::info -The `OAuth2Provider` recipe is available, at the moment, only when using the `supertokens-auth-react` package. +If you want to use your own custom UI check our [separate guide](/docs/oauth/customizations/custom-ui) that explains +all the steps that you have to take into account. ::: -Initialize the `OAuth2Provider` recipe on the frontend of your **Authorization Service**, ensuring you set the `authMode` to `header`. + -```tsx + + + +Update the `SuperTokensConfig` variable to adjust to the new flow. + +1. Add the import statement for the recipe. + +```typescript import OAuth2Provider from "supertokens-auth-react/recipe/oauth2provider"; -import Session from "supertokens-auth-react/recipe/session"; - - -export const SuperTokensConfig = { - appInfo: { - appName: "App Name", - apiDomain: "", - websiteDomain: "", - }, - recipeList: [ - OAuth2Provider.init({ authMode: "header" }), - Session.init(), - ], -}; ``` -## 4. Update the login flow in your frontend applications +2. Update the list of recipes to also include the new initialization. + +```tsx +OAuth2Provider.init() +``` + +3. Update the **Session** recipe initialization to use `header` authentication. + +```tsx +Session.init({ authMode: "header" }) +``` + + + + + + +1. Update the `AuthComponent` so that it also includes the `OAuth2Provider` recipe. +You will have to add a new item in the `recipeList` array, inside the `supertokensUIInit` call. + +```typescript + +supertokensUIOAuth2Provider.init(), + +``` + +2. Update the `supertokensUISession` init step to use `header` authentication. + +```typescript +supertokensUISession.init({ + authMode: "header" +}) + +``` + +3. Update the `Supertokens.init` call so that the `Session` recipe uses `header` authentication. + +```typescript + +Session.init({ authMode: "header" }) + +``` + + -In your `frontend applications` you will have to add a login action that will direct the user to the authentication page. -You can just use a link for that. + -The link should be structured like this: +1. Update the `AuthView` component so that it also includes the `OAuth2Provider` recipe. +You will have to add a new item in the `recipeList` array, inside the `supertokensUIInit` call. + +```typescript + +supertokensUIOAuth2Provider.init(), ``` -/auth/oauth/auth?client_id=&redirect_uri=&scope=&state= + + +2. Update the `supertokensUISession` init step to use `header` authentication. + +```typescript +supertokensUISession.init({ + authMode: "header" +}) + ``` -- `` - The domain of your [**Authentication Service**](/docs/oauth/introduction#authentication-service). -The example assumes that you didn't overwrite the default `apiBasePath`. -If that's the case you will have to replace `/auth` with you custom base path. -- `` - The corresponding client ID based on what you have created in the first step. -- `` - The corresponding redirect URI based on what you have created in the first step. -- `` - The scopes that you want to request. This is optional and can be left empty. -- `` - A random string that will be used to prevent CSRF attacks. This is optional and can be left empty. + +3. Update the `Supertokens.init` call so that the `Session` recipe uses `header` authentication. + +```typescript + +Session.init({ authMode: "header" }) + +``` + + + + + + + +## 4. Update the login flow in your frontend applications + +In your `frontend` applications you will have to add a login action that will direct the user to the authentication page. + +The user should first be redirected to the `backend` login endpoint. +There the `backend` will redirect the user to the actual [**Authorization Service**](/docs/oauth/introduction#authorization-service) login UI. +After the user has logged in they will be redirected to the `backend` callback URL. +Then the authentication session will be created and the `backend` will send it to the user agent as a cookie. ## 5. Test the new authentication flow With everything set up, you can now test your login flow. -Just use the link that you have created in the previous step and try to access a protected resource. +Just use the flow that you have created in the previous step check if the authentication flow completes wihtout any issues. + + + diff --git a/v2/oauth/multiple-frontends-with-separate-backends.mdx b/v2/oauth/multiple-frontends-with-separate-backends.mdx index f378d7c24..15d2e0c02 100644 --- a/v2/oauth/multiple-frontends-with-separate-backends.mdx +++ b/v2/oauth/multiple-frontends-with-separate-backends.mdx @@ -4,20 +4,37 @@ hide_title: true --- import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs" +import OAuthFrontendTabs from "/src/components/tabs/OAuthFrontendTabs" +import OAuthBackendTabs from "/src/components/tabs/OAuthBackendTabs" import CoreInjector from "/src/components/coreInjector" +import AppInfoForm from "/src/components/appInfoForm" +import TabItem from '@theme/TabItem'; # Multiple frontend domains with separate backends -You can use the following guide if you have a single [**Authentication Service**](/docs/oauth/introduction#authentication-service) that is used by multiple applications. +You can use the following guide if you have a single [**Authorization Service**](/docs/oauth/introduction#authorization-service) that is used by multiple applications. In turn, each app has separate **`frontend `** and **`backend`** instances that are served from different domains. -Using the actual **OAuth 2.0** terminology, that each application can be considered a [**Client**](/docs/oauth/introduction#client) while the **`backends`** are also [**Resource Servers**](/docs/oauth/introduction#resource-server). +Using the actual **OAuth 2.0** terminology, each application can be considered a [**Client**](/docs/oauth/introduction#client) while the **`backends`** are also [**Resource Servers**](/docs/oauth/introduction#resource-server). Note that if the *frontends* and *backends* are in different *sub domains*, you don't need to use *OAuth* and can instead use [session sharing across sub domains](/docs/session/common-customizations/sessions/share-sessions-across-sub-domains). -Client Credentials Grant +Multiple Frontend Domains with separate Backends + +The authentication flow will work in the following way: + +1. User accesses the `frontend` app +2. The application `frontend` calls a login endpoint on the `backend` application. +3. The `backend` application generates an `authorization` URL to the [**Authorization Service**](/docs/oauth/introduction#authorization-service) and redirects the user to it. +4. The [**Authorization Service**](/docs/oauth/introduction#authorization-service) backend redirects the user to the login UI +5. User completes the login attempt +6. The [**Authorization Service**](/docs/oauth/introduction#authorization-service) backend redirects the user to a `callback URL` that includes the **Authorization Code**. +7. The **Authentication Code** gets sent to the application `backend` when the user agent accesses the callback URL +8. The `backend` exchanges the **Authentication Code** for an [**OAuth2 Access Token**](/docs/oauth/introduction#oauth2-access-token) +9. The `backend` saves the received token in a server session and sends it back to the `frontend` as a cookie. +10. The `frontend` uses the new cookie to access protected resources from the `backend`. :::info -This guide assumes that you already have setup and configured **SuperTokens** in your [**Authentication Service**](/docs/oauth/introduction#authentication-service). +This guide assumes that you already have setup and configured **SuperTokens** in your [**Authorization Service**](/docs/oauth/introduction#authorization-service). For more information on how to do that please check our [quickstart guides](/docs/guides). ::: @@ -35,67 +52,89 @@ Now you should be able to use the OAuth2 recipes in your applications. ## 2. Create the OAuth2 Clients -For each of your **`frontend`** applications you will have to create a separate [**OAuth2 client**](/docs/oauth/introduction#client). -This can be done by directly calling the **SuperTokens Core** API. - + + +For each of your applications you will have to create a separate [**OAuth2 client**](/docs/oauth/introduction#client). +This can be done by directly calling the **SuperTokens Core** API. + ```bash +# You will have to run this for each one of your applications +# Adjust the client_name and redirect_uri based on that curl -X POST ^{coreInjector_uri_without_quotes}/recipe/oauth2/admin/clients \ -H "Content-Type: application/json" \ - -H "api-key: ^{coreInjector_api_key_without_quotes}" \ -d '{ + "tokenEndpointAuthMethod": "none", "client_name": "", "response_types": ["code", "id_token"], "grant_types": ["authorization_code", "refresh_token"], - "redirect_uri": ["https:///oauth/callback"] + "redirect_uri": ["https:///oauth/callback"] }' ``` - -- `client_name` - A human-readable name of the client that will be presented to the [**end-user**](/docs/oauth/introduction#authorization) during authorization. -- `response_types` - Specifies the types of responses your client expects from the Authorization Server. Most of the time, you would need the following two to be present: - - `code`: Indicates that the [**Client**](/#authorization) will receive an [**Authorization Code**](/#authorization) that will be exchanged for an [**Access Token**](/#authorization). - - `id_token`: Indicates that the [**Client**](/#authorization) expects an [**ID Token**](/#authorization) -- `grant_types` - The grant types that the [**Client**](/#authorization) will use. - - `authorization_code`: Allows exchanging the [**Authorization Code**](/#authorization) for an [**Access Token**](/#authorization). - - `refresh_token`: Allows exchanging the [**Refresh Token**](/#authorization) for a new [**Access Token**](/#authorization). -- `redirect_uri` - A list of URIs to which the [**Authorization Server**](/#authorization) will send the user-agent (browser) after completing the authorization step. These can be deep links to mobile or desktop apps as well, but they must be exact URLs, without wildcards. +- `client_name` - A human-readable name of the client that will be used for identification. +- `response_types` - Specifies the types of responses your client expects from the [**Authorization Server**](/docs/oauth/introduction#authorization-server). Most of the time, you would need the following two to be present: + - `code`: Indicates that the [**Client**](/docs/oauth/introduction#client) will receive an **Authorization Code** that will be exchanged for an [**OAuth2 Access Token**](/docs/oauth/introduction#oauth2-access-token). + - `id_token`: Indicates that the [**Client**](/docs/oauth/introduction#client) expects an [**ID Token**](/docs/oauth/introduction#id-token) +- `grant_types` - The grant types that the [**Client**](/docs/oauth/introduction#client) will use. + - `authorization_code`: Allows exchanging the **Authorization Code** for an [**OAuth2 Access Token**](/docs/oauth/introduction#oauth2-access-token). + - `refresh_token`: Allows exchanging the [**OAuth2 Refresh Token**](/docs/oauth/introduction#oauth2-refresh-token) for a new [**OAuth2 Access Token**](/docs/oauth/introduction#oauth2-access-token). +- `redirect_uri` - A list of URIs to which the [**Authorization Server**](/docs/oauth/introduction#authorization-server) will send the user-agent (browser) after completing the authorization step. These can be deep links to mobile or desktop apps as well, but they must be exact URLs, without wildcards. + +If the creation was successful, the API will return a response that looks like this: -If the creation was successful, the response will return a `201` status code. -The response body will contain the **`client_id`** and the `client_secret` fields. Save them for each request because we will need to use them in the next steps. +```json + +{ + "client_name": "", + "client_id": "", + "client_secret": "", + "callback_urls": ["https:///oauth/callback"], + "authorize_url": "^{form_apiDomain}/^{form_apiBasePath}/oauth/auth", + "token_fetch_url": "^{form_apiDomain}/^{form_apiBasePath}/oauth/token" +} + +``` + +:::caution + +You will have to save this response because we do not persist it interaly for security reasons. +In the next steps we will use the values to complete several configurations. + +::: -## 3. Initialize the OAuth2 Provider Recipe -In your [**Authentication Service**](/docs/oauth/introduction#authentication-service) you will need to initialize the **OAuth2Provider** recipe. + +## 3. Set Up your Authorization Service + +### Configure the Authorization Service Backend + +In your [**Authorization Service**](/docs/oauth/introduction#authorization-service) you will need to initialize the **OAuth2Provider** recipe. The recipe will expose the endpoints needed for enabling the [**OAuth 2.0**](/docs/oauth/introduction#oauth-20) flow. -```typescript -import supertokens from "supertokens-node"; -import OAuth2Provider from"supertokens-node/recipe/oauth2provider"; - -supertokens.init({ - framework: "express", - supertokens: { - connectionURI: "", - apiKey: "", - }, - appInfo: { - appName: "", - apiDomain: "", - websiteDomain: "", - }, - recipeList: [ - // This is where you initialize the OAuth2 recipe - OAuth2Provider.init(), - ] -}); +Update the `supertokens.init` call to include the `OAuth2Provider` recipe. + +1. Add the import statement for the recipe. + +```typescript +import OAuth2Provider from "supertokens-node/recipe/oauth2provider"; +``` + +2. Update the list of recipes with the new initialization step. + +```tsx +OAuth2Provider.init() ``` @@ -125,92 +164,123 @@ At the moment we do not have support creating OAuth2 providers in the Python SDK ### Configure the Authorization Service Frontend + +Initialize the `OAuth2Provider` recipe on the frontend of your **Authorization Service**. + :::info -The `OAuth2Provider` recipe is available, at the moment, only when using the `supertokens-auth-react` package. +If you want to use your own custom UI check our [separate guide](/docs/oauth/customizations/custom-ui) that explains +all the steps that you have to take into account. ::: -Initialize the `OAuth2Provider` recipe on the frontend of your **Authorization Service**, ensuring you set the `authMode` to `header`. + -```tsx + + + +Update the `SuperTokensConfig` variable to include the `OAuth2Provider` recipe. + +1. Add the import statement for the recipe. + +```typescript import OAuth2Provider from "supertokens-auth-react/recipe/oauth2provider"; -import Session from "supertokens-auth-react/recipe/session"; +``` +2. Update the list of recipes to also include the new initialization. -export const SuperTokensConfig = { - appInfo: { - appName: "App Name", - apiDomain: "", - websiteDomain: "", - }, - recipeList: [ - OAuth2Provider.init({ authMode: "header" }), - Session.init(), - ], -}; +```tsx +OAuth2Provider.init() +``` + + + + + + +Update the `AuthComponent` so that it also includes the `OAuth2Provider` recipe. +You will have to add a new item in the `recipeList` array, inside the `supertokensUIInit` call. + +```typescript + +supertokensUIOAuth2Provider.init(), ``` -## 4. Set Up Session Handling in Each Application + -In each of your `backend applications` you will have to setup up logic for handling the **OAuth 2.0** authentication flow. + -This will involve the following steps: +Update the `AuthView` component so that it also includes the `OAuth2Provider` recipe. +You will have to add a new item in the `recipeList` array, inside the `supertokensUIInit` call. -:::note -What are the actual steps? -::: +```typescript -The following steps are only required if you are using the **Session** recipe. If you are not using the **Session** recipe, you can skip this step. -1. Exposing an endpoint that can take the authorization code and exchange it for an access token -2. Verifying the access token on each request +supertokensUIOAuth2Provider.init(), -You can use a generic OIDC or OAuth2 library to achieve these steps. +``` + + + + - - -We recommend using either [passport-oauth2](https://www.passportjs.org/packages/passport-oauth2/) or [passport-openidconnect](https://www.passportjs.org/packages/passport-openidconnect/). +## 4. Set Up Session Handling in Each Application + +In each of your individual `applications` you will have to setup up logic for handling the **OAuth 2.0** authentication flow. +We recommend using a generic **OICD** or **OAuth** library in order to do this. -#### Example using `passport-oauth2`: + + + +You can use the [passport-oauth2](https://www.passportjs.org/packages/passport-oauth2/) library. +Just follow the instructions on the library's page and setup your application `backend`. +The configuration parameters can be determined based on the response that we received on **step 2**, when we created the **OAuth2 Client**. + +- `authorizationURL` corresponds to `authorize_url` +- `tokenURL` corresponds to `token_fetch_url` +- `clientID` corresponds to `client_id` +- `clientSecret` corresponds to `client_secret` +- `callbackURL` corresponds to a value from `callback_urls` +- `scope` corresponds to `scope` +You can use the [OAuth2](https://pkg.go.dev/golang.org/x/oauth2) library. +Just follow these [instructions](https://golang.org/pkg/golang.org/x/oauth2/#example-Config-RequestToken) and implement it in your `backend`. + +You can use the [AuthLib](https://docs.authlib.org/) library. +Just follow these [instructions](https://docs.authlib.org/en/latest/client/oauth2.html) and implement it in your `backend`. + - + ## 5. Update the login flow in your frontend applications -In your `frontend applications` you will have to add a login action that will direct the user to the authentication page. -You can just use a link for that. +In your `frontend` applications you will have to add a login action that will direct the user to the authentication page. -The link should be structured like this: - -``` -/auth/oauth/auth?client_id=&redirect_uri=&scope=&state= -``` -- `` - The domain of your [**Authentication Service**](/docs/oauth/introduction#authentication-service). -The example assumes that you didn't overwrite the default `apiBasePath`. -If that's the case you will have to replace `/auth` with you custom base path. -- `` - The corresponding client ID based on what you have created in the first step. -- `` - The corresponding redirect URI based on what you have created in the first step. -- `` - The scopes that you want to request. This is optional and can be left empty. -- `` - A random string that will be used to prevent CSRF attacks. This is optional and can be left empty. +The user should first be redirected to the `backend` authentication endpoint that was defined during the previous step. +There the `backend` will generate a safe `authorization` URL using the **OAuth2** library and then return that URL as a redirect response to the user. +After the user has logged in from the [**Authorization Service**](/docs/oauth/introduction#authorization-service) they will be redirected to the `backend` callback URL. +Then the authentication session will be created and the `backend` will send it to the user agent as a cookie. ## 6. Test the new authentication flow With everything set up, you can now test your login flow. -Just use the link that you have created in the previous step and try to access a protected resource. +Just use the flow that you have created in the previous step check if the authentication flow completes wihtout any issues. + + + + diff --git a/v2/oauth/reuse-website-login.mdx b/v2/oauth/reuse-website-login.mdx index d469d0dda..cfe1546ed 100644 --- a/v2/oauth/reuse-website-login.mdx +++ b/v2/oauth/reuse-website-login.mdx @@ -4,14 +4,270 @@ hide_title: true --- import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs" +import OAuthFrontendTabs from "/src/components/tabs/OAuthFrontendTabs" +import OAuthBackendTabs from "/src/components/tabs/OAuthBackendTabs" +import OAuthMobileTabs from "/src/components/tabs/OAuthMobileTabs" +import CoreInjector from "/src/components/coreInjector" +import AppInfoForm from "/src/components/appInfoForm" +import TabItem from '@theme/TabItem'; # Reuse website login for desktop and mobile apps -This pattern is useful if you want to make use of the same web authentication experience that you for your desktop and mobile apps. -The flow will allow you to save develpoment time but you will have to keep in mind that it will not provide involve a native login experience. +This pattern is useful if you want to make use of the same web authentication experience for your desktop and mobile apps. +The flow will allow you to save develpoment time but you will have to keep in mind that it will not involve a native login experience. Users will be directed to a separate browser page where they will complete the authentication flow. -In order to do this you will have to follow one of the previous guides based on your use case: -- If your applications use separate backend services check out [this guide](./multiple-frontends-with-separate-backends) -- If your appllications use a single backend service check out [this guide](./multiple-frontends-with-a-single-backend) +Client Credentials Grant + +The authentication flow will work in the following way: + +1. User accesses the native application +2. The user gets redirected to [**Authorization Service**](/docs/oauth/introduction#authorization-service) authentication url. +3. The [Authorization Service](/docs/oauth/introduction#authorization-service) redirects the user to the login UI +4. User completes the login attempt +5. The [**Authorization Service**](/docs/oauth/introduction#authorization-service) backend redirects the user to the `callback URL` +6. The application uses the callback URL information to request a **OAuth2 Access Token** from the [**Authorization Service**](/docs/oauth/introduction#authorization-service). +7. The returned token is saved by the application. + +:::info +This guide assumes that you already have setup and configured **SuperTokens** in your [**Authentication Service**](/docs/oauth/introduction#authentication-service). + +For more information on how to do that please check our [quickstart guides](/docs/guides). +::: + +## 1. Enable the OAuth2 features from the Dashboard + +You will first have to enable the **OAuth2** features from the **SuperTokens Dashboard**. +1. Open the **SuperTokens Dashboard** on the main page +2. Click on the **Enabled Paid Features** button +3. Click on **Managed Service** +4. Check the **OAuth 2.0** option +5. Click *Save* + +Now you should be able to use the OAuth2 recipes in your applications. + + +## 2. Create the OAuth2 Clients + + + + + +For each of your **`applications`** you will have to create a separate [**OAuth2 Client**](/docs/oauth/introduction#client). +This can be done by directly calling the **SuperTokens Core** API. + + +```bash +# You will have to run this for each one of your applications +# Adjust the client_name and redirect_uri based on that +curl -X POST ^{coreInjector_uri_without_quotes}/recipe/oauth2/admin/clients \ + -H "Content-Type: application/json" \ + -d '{ + "tokenEndpointAuthMethod": "none", + "client_name": "", + "response_types": ["code", "id_token"], + "grant_types": ["authorization_code", "refresh_token"], + "redirect_uri": ["https:///oauth/callback"] + }' +``` + +- `client_name` - A human-readable name of the client that will be used for identification. +- `response_types` - Specifies the types of responses your client expects from the [**Authorization Server**](/docs/oauth/introduction#authorization-server). Most of the time, you would need the following two to be present: + - `code`: Indicates that the [**Client**](/docs/oauth/introduction#client) will receive an **Authorization Code** that will be exchanged for an [**OAuth2 Access Token**](/docs/oauth/introduction#oauth2-access-token). + - `id_token`: Indicates that the [**Client**](/docs/oauth/introduction#client) expects an [**ID Token**](/docs/oauth/introduction#id-token) +- `grant_types` - The grant types that the [**Client**](/docs/oauth/introduction#client) will use. + - `authorization_code`: Allows exchanging the **Authorization Code** for an [**OAuth2 Access Token**](/docs/oauth/introduction#oauth2-access-token). + - `refresh_token`: Allows exchanging the [**OAuth2 Refresh Token**](/docs/oauth/introduction#oauth2-refresh-token) for a new [**OAuth2 Access Token**](/docs/oauth/introduction#oauth2-access-token). +- `redirect_uri` - A list of URIs to which the [**Authorization Server**](/docs/oauth/introduction#authorization-server) will send the user-agent (browser) after completing the authorization step. These can be deep links to mobile or desktop apps as well, but they must be exact URLs, without wildcards. + +If the creation was successful, the API will return a response that looks like this: + +```json + +{ + "client_name": "", + "client_id": "", + "callback_urls": ["https:///oauth/callback"], + "authorize_url": "^{form_apiDomain}/^{form_apiBasePath}/oauth/authorize", + "token_fetch_url": "^{form_apiDomain}/^{form_apiBasePath}/oauth/token" +} + +``` + +:::caution + +You will have to save this response because we do not persist it interaly for security reasons. +In the next steps we will use the values to complete several configurations. + +::: + +## 3. Set Up your Authorization Service + +### Configure the Authorization Service Backend + +In your [**Authorization Service**](/docs/oauth/introduction#authorization-service) you will need to initialize the **OAuth2Provider** recipe. +The recipe will expose the endpoints needed for enabling the [**OAuth 2.0**](/docs/oauth/introduction#oauth-20) flow. + + + + + +Update the `supertokens.init` call to include the `OAuth2Provider` recipe. + +1. Add the import statement for the recipe. + +```typescript +import OAuth2Provider from "supertokens-node/recipe/oauth2provider"; +``` + +2. Update the list of recipes with the new initialization step. + +```tsx +OAuth2Provider.init() +``` + + + + + +:::caution + +At the moment we do not have support creating OAuth2 providers in the Go SDK. + +::: + + + + + +:::caution + +At the moment we do not have support creating OAuth2 providers in the Python SDK. + +::: + + + + + + +### Configure the Authorization Service Frontend + + +Initialize the `OAuth2Provider` recipe on the frontend of your **Authorization Service**. + +:::info + +If you want to use your own custom UI check our [separate guide](/docs/oauth/customizations/custom-ui) that explains +all the steps that you have to take into account. + +::: + + + + + + +Update the `SuperTokensConfig` variable to include the `OAuth2Provider` recipe. + +1. Add the import statement for the recipe. + +```typescript +import OAuth2Provider from "supertokens-auth-react/recipe/oauth2provider"; +``` + +2. Update the list of recipes to also include the new initialization. + +```tsx +OAuth2Provider.init() +``` + + + + + + +Update the `AuthComponent` so that it also includes the `OAuth2Provider` recipe. +You will have to add a new item in the `recipeList` array, inside the `supertokensUIInit` call. + +```typescript + +supertokensUIOAuth2Provider.init(), + +``` + + + + + +Update the `AuthView` component so that it also includes the `OAuth2Provider` recipe. +You will have to add a new item in the `recipeList` array, inside the `supertokensUIInit` call. + +```typescript + +supertokensUIOAuth2Provider.init(), + +``` + + + + + + + +## 4. Set Up Session Handling in Each Application + +In each of your individual `applications` you will have to setup up logic for handling the **OAuth 2.0** authentication flow. +We recommend using a generic **OICD** or **OAuth** library in order to do this. + + + + + +You can use the [react-native-app-auth](https://commerce.nearform.com/open-source/react-native-app-auth/) library. +Just follow [the instructions](https://commerce.nearform.com/open-source/react-native-app-auth/docs/usage/config) setup your application. +The configuration parameters can be determined based on the response that we received on **step 2**, when we created the **OAuth2 Client**. + +- `issuer` corresponds to the endpoint of the **Authorization Service** `^{form_apiDomain}` +- `clientID` corresponds to `client_id` +- `redirectUrl` corresponds a value from `callback_urls` +- `scopes` corresponds to `scopes` +- `serviceConfiguration.registrationEndpoint` corresponds to `authorize_url` +- `serviceConfiguration.tokenEndpoint` corresponds to `token_fetch_url` + + + + + + + + + + + + + + + + + + +## 5. Update the login flow in your frontend applications + +In your applications you will have to add a login action that will direct the user to the authentication page. + +## 6. Test the new authentication flow + +With everything set up, you can now test your login flow. +Just use the flow that you have created in the previous step check if the authentication flow completes wihtout any issues. + + + + + + diff --git a/v2/oauth/sidebars.js b/v2/oauth/sidebars.js index 9e011a788..f75d7e361 100644 --- a/v2/oauth/sidebars.js +++ b/v2/oauth/sidebars.js @@ -8,7 +8,6 @@ module.exports = { items: [ "multiple-frontends-with-separate-backends", "multiple-frontends-with-a-single-backend", - "clients-without-dedicated-backend", "reuse-website-login", "machine-to-machine-authentication", ], @@ -21,6 +20,7 @@ module.exports = { "customizations/working-with-scopes", "customizations/add-custom-claims-in-tokens", "customizations/verify-tokens", + "customizations/custom-ui", ], }, ], diff --git a/v2/src/components/tabs/OAuthBackendTabs.tsx b/v2/src/components/tabs/OAuthBackendTabs.tsx new file mode 100644 index 000000000..928a9f695 --- /dev/null +++ b/v2/src/components/tabs/OAuthBackendTabs.tsx @@ -0,0 +1,22 @@ +import React from "react"; +let Tabs = require("@theme/Tabs").default; + +export default function OAuthBackendTabs(props: any) { + return ( + + {props.children} + + ); +} diff --git a/v2/src/components/tabs/OAuthFrontendTabs.tsx b/v2/src/components/tabs/OAuthFrontendTabs.tsx new file mode 100644 index 000000000..4fcc4b7a9 --- /dev/null +++ b/v2/src/components/tabs/OAuthFrontendTabs.tsx @@ -0,0 +1,19 @@ +import React from "react"; +let Tabs = require("@theme/Tabs").default; + +export default function OAuthFrontendTabs(props: any) { + return ( + + {props.children} + + ); +} diff --git a/v2/src/components/tabs/OAuthMobileTabs.tsx b/v2/src/components/tabs/OAuthMobileTabs.tsx new file mode 100644 index 000000000..fc72651a7 --- /dev/null +++ b/v2/src/components/tabs/OAuthMobileTabs.tsx @@ -0,0 +1,19 @@ +import React from "react"; +let Tabs = require("@theme/Tabs").default; + +export default function OAuthMobileTabs(props: any) { + return ( + + {props.children} + + ); +} diff --git a/v2/static/img/oauth/authorization-code-flow.png b/v2/static/img/oauth/authorization-code-flow.png new file mode 100644 index 0000000000000000000000000000000000000000..ba04adaeebd87c8250b8578aca72f4502431c42f GIT binary patch literal 271974 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

    Ezo8#;O7?rev#m?o(Xlu25qIc`YC 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

    A4bXqJ6C5nQRRR);rt$M*I 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

    KQ_wZ!LF>{io$x22Woth3{<+Y}Ywxvn?VrgW- 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

    7Aqci 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 Sg>4rD5O})!xvXD2hOc9&NI8 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 !1 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

    U9)Bl9X@nv^rY*$ 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

    B^|JSa34_&}Pc`W$`a8b>8V3U&5eRP$) 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%0A2Mhlr_93uZX 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 Sn7~+mo0Im=cKOGBBL5Aho6g|? literal 0 HcmV?d00001 diff --git a/v2/static/img/oauth/multiple-frontend-domains-with-separate-backends.png b/v2/static/img/oauth/multiple-frontend-domains-with-separate-backends.png new file mode 100644 index 0000000000000000000000000000000000000000..a7267ae8cf014f4d18bc83636ddfdcc7cbec31fc GIT binary patch literal 389307 zcmV(*K;FNJP)t00r=ZNkl@3b z0SCSaH)5iJ2L4jF6+N;&&~wu7IcsI+FTd8_=l?u!soUXI^}PSR*UFXOnd@V(y$}E9 zzyH^TUWI@9_qt-H%fkAHf9fJoDFDL&zTgnE?0UVTE3({INx;AV{zO{@IO511(p7k5 zU3N1EUSI!_-KeUPhOvV_WYa3}H-u+uWmgK1L>X0kiv&?%HxNlxEq{hUmAB-*MYqM< z5Pw%I-u*Z9n1q(_#}#zNLstg-PBfWc0y^U(eMiYW_#B!l+hVfKtN!VE=#&~n^VN=H6>IAF zYJVj0EwxG~a({}t4?rNl>jvmv1%*WZMWS6} z8@cRT`K@`yajkJL%1J2GZhK*R5Zm>_kNhJMG&%+2zUVy#$Mv7E{iH;OagtD0^qo{V z>4}mKWb+5=u=)q^k$qGs;$Rhvqde$uah`y=K&%VlJj48R6L`{U%NCQtFB)CERgnF! zz{o<$_fvA#(c5o;fX8J-Cm@+I#N@s!oj;f4G?jsL&vGL7kF91Xxt8B`X=Dw>%P zq?-dN!~i=}5k&-(f#wuLiRKSAiwzqR^F&J3ea8jQwjqIqKgb4ec>UuW1H~b)P$Zfm zMRPJ<1IJCH4vgWR2IdpYWX}kfpc#`API@6ZF+)GPpp*uxJewGLj3_$5ZZNom_maTS zHcYNMR(@1rLk>|`CNK+#FFCj$!iGJY`$oSXQTp5|_aKEv^ZjT$9dQ-i$q0YV*Vj02 zd*I-Yi3({ni!fU>YR(k8&Iaa06vikcy9c_wKN=TH(A2HkVC4`OVq_E1lks;Jv-7Z~Yf9sDqub1`0l)spxE=44QrjqaT3snh+-}`A z64Jl(kCP|Y7ni^9arh}FZ^vucctZXfR%Mu31W>^X&Xo;PmnRHGhc4Pt^98($+DCB{Yji+TMh@58gJTF){@vSB?`_RJq*jXIo^P_TMmK81wd)*W|Av|-E zp|H!S2RGe6&>AFdR{w&5d?i@G^RiQ8RADgG&CoT!N}dBafn zZuE9t={U{6zu#T@%$xO8|7LiiS;{%`d(XG*-(XD8!RNM3ZOn_~;u{=u!TUPKO5P*K zn9FRWVFz$H{=hcssvElL$9dmZOUN%Fc4B*w|7^^Hzj#az%fb-ce&qAq#)*6wJIyro z$JnZox!Wu5yT&|ctKz&Nv3B<1p6)U3fxszE#!~^E{e6blI7vf;B;7Z>=Hz~5K;)$x z93o8D6RoZj6KV$x;aqp83<))j;BLRPxUOT_b=?h)dIEGUMy}3It*~DzPQ)Hg5aF6D z5>8Q+6Ee4xp}XPiBMyH-pf9U{F8ERX*nbJ(?1!f7kk|(e-l%OAAxm}PDy-%Fr=-{*j z;81gJaYnF-C*b1^7Sxx78Re1-0*5lqdoZ_X1?DMJ9GSC9qbEjLm{Xi*NWTs_WdhyQ zq90Z`ZUrQgWVtL-!Z^@xVyS|xx^Da-y51lxMH2@FJRkQj*AYe+`gTuuHvUqSG&-e{ zX$SzgY%s)YCb?SWRW__H-eFN zK0UqJ3Dki!Qay%Cx_WT>H z!f^~-{{-&$e^XeXj8(CfzL@?uMu^W<2fnI(nM>roz@MvWE}NKu4?M-?(45W`UBzW% zlN;GFT~P8F%`rq_V3RF_&xTwNPZ!dFb+P^&W}G%w?{S0F7n~8NV>LYbw}_9M1n`vq zz1Vv4yKODlagxLC8;KL85hc*JjZYmA!d5Guf^tx>2-*bGG``k^+Ne5Mx_+NTA>WK} zJ~fVo@;H-aq;B5x)8A+DALNN*;01)ut>qW0MO>%2Nf1Gq>I0hv75GWHqr`Y_Gy2<4 zEMGKw!afA?FO}QUS^7H77h<8XqeO`OObU6Pml)Lm;Wc}PZjlZ=S2o4-^V_(2R*SJz zZQ^JajO=)N|1EGHWVndvv?m*-H0^kgQ??MpDW4g9lXoqicL!5P=8ruGI(0~x6yx9K zZGxOenes+}(NdozYR2h}-zy;gbB+@0XL2bm=o|R&PAizaRFyawP#T}l(^$nT+kZIe z$RQ|hASPT_MH*H!e`P#PeKS5Bce|-#bWZ5oAx?Uc)D=Ut;tUWQHx~xS_-6 zdy7BRom}7uox8&2HtXc>W`yU9$^`%BZ~paR%U&%waegQqZ^G^g#j!JA3&la4U~oD< zVdgUaB`la6_8u`u`nAvcuLLZS(<%j(_Iw&PwCY@tka5R{lN+MhBA1rp$o<^wp3OTO ze$`zvUVPQ11wdLM0IucvPWBuRp6Tp@U66j$pAN;`$dCKt`>NbJx@N#5!c8Wl6oOk3^E`dsM-Py$<~~e**$fbU0(18|l7x<-A2cb}q4Tx<2&izU?u^Z+<<4 zcOY2&%l=MFWX^^nND_USU0N9koO!0Kdh#}EWh=f-j>h;^tUFhe!Q)uq%-ac2>Asml zt%w{MG@z`eNhLS1CZsXv6*S0;!b_86+i_Br+Tg)^8rW~xq%;Nv9KGpdzmv~#9FLta znG>`p^;$hOZGl#BmSirlN#ZZ#G*S#>B%;|J%WGT{e??E7y-%ex@Kv9?1@dB(4Zo)Z z*Ak+93i6nvkiCqsApbrdzq??#>-7{9r4Bog``lCpz2zJ`Els|s=mW7Z4=nkpXRu2b z4TXI|LR#uXgu&9I;O<)BpAFCw1e3r<{Ok3)Lwe)5I~ar;9(9L$wZ}n|sL#Kf``yls zZ%t7ZCCYP1?6n^}?;8%uy313OF()q2PxJ|b4(KG6*Pg=UKIxhh;V(pk>y#5BKxixj z?;44PaFs`{7`wr@h|I8|E_&pJ7iS`2!sWZ@N%J8SiuFa1LK$@^-fuLUrUR@?!KP%) zTIO>UvEq{opsiR?wZ%p6*hYCHf{)ihJA7<`rBPL;ITDiE?~Rn9ox@~|RR&nR;8S+} zZ+y}$i6y!1M{=r9a<3%BqIQrV~LA&Eq)9?-^`{ouG zPJXI;0C|Yp*DFcd^c+)!6nxagq8I_M!KcXx7-NnpgJ5crfoNfY3mJ30CxK7ugpK3F z2INKx?R@MWWmMYk&0*sL7nD@v7dgPqh__#H*x|=oqwJw&@&N|HNS?fMc#MQ~5Mz8!S^lc{bh;?PH=$HnmB&Kzm3A)Xr7Zkkt(n zAcY)hf6zYAj5_K3hdP~!`@S^fGkoA*5!Bsw_lahualZd*(KwDYg=TZ!DW*p?$No?D z$5!Fl&xESovHz9-4J0zk?-IecB}yCR3306O zKICx{aE+SheL|w*8cWAi_6`qs`n;*?TlJV9%GYAdNf=rrh44666| z3qI2TG@0a1-`M8Dbx((j`LfGoe--R47uR!P!!D!CeH{Ir{CfYSq9fx}|AQxjv?>5P z8KRh7JNmDMwk?w7#PF=U)|`CkYUyq-;0fQ`?dfpB9o(KKzBMk_eergQ<50G9;2`NO z*oEV_j>6Mo_HSb_^&x5Y3+%&5fanA%9%5ig(E+btMqmyovU#c>H_8=w8qTiUa%w0) zT_CVqmN)T}b7l9=cC;u*@ol1yp?$9L|gbNRz!4Q;y0X~_cJ;99PGyA`x_ z1(X2}U=zPIjj(YN@vilerpc&qZ73x<_V!)&52j3 zs!OT&d`*3w`)GOSk@=hYG$R`Wd~_x z_2mun%R`RnOxukIZAjR{A2v3m>Y|h!8_bZZ;y6-{CkL2LD{$M%W>9{@fG7W^!&yWb zVjlDQ2CVwbhm_-D!>t&ZLOtUiNXO$85198+$9_WL5dV5(a-OpO`n#?`w&IVIhN+S0 zB7rnb=!>CrsC0}3o^j(X5@~oCX6M06lQW4huf@Hcmn+*o#%XVMH5C4;?ZhCWc0B2FK9;DmQo`*Bo19vqFH zCrT2@xa=QnQDsocNE1vBR5rpcq#uuugL&vfR1#R_TAEv-uy8|$g$lMdJ~}7K^(DgR zt`f3jhNiYIo`!+{nC)|B+4a~Cvg6ab_K3Nm+TI7giGQ!S4~_XBIeWq9v75~54|wsO z4)@jto`7}^)%Fvgl)e7L3AEs8gxw1ayERaJ4FX~VF>RtbW&^8y@*=RMOu2^yUG2?pYO zN0@|=`{~I)N16#o*qnfVk_dQzPIx5w2!(~`b-@kc{gE(+*I)!ZBkh_`J}9YO^1vqW zG2&XYZ|bXTpq_$H3pE>z{Ql_Y zbLWhwNKHKyiLCEBu;HWxFUW^^Kr^bKt@XM)orrQ|o0T*6d35u;_3>6$fS#Noh|lO- zQ3J+k82_Ly-(t?mZ1UV4n^A{;L|)93MlPEH5bYy@3iy`tYkaYF5C|N%8~Z8yo!cg@ z;Wg&-4!)~Lzd5ykPqBF7=$r6om3v8W;OS=P8@TabZu7q~`bmcWUS5d4hD*wSUxkCM zOZW?skd*Pkd=-FgD{p#wfMLzaKPCA>PQ>YNNe$A;N@X09R5zf%v?bkW|EM(lX3BkdCf2@asD6$m25_rm<6Tw0B>j9W|hZ!vISeKu%p?lx)>m^36T(ZF(`6dHyV9Pi8W~<_+-_w`d@Mr^4B$TJ@iZ5agiL`WN!?`R|4ZVT3>DYgPTd#Q`xbq zH+eJR6#p?6CFHowM}aCg%J2p*oxsJmn#|m+`(paCa~#wTpiS2{9})16C2|svf1@tT zj6$zzPdC( z?o$&Orb`*Vxc8Ceb@d>R@AuP+-T(FPxjI4)2LXr=n<);vx-LN9FQ~a#H>&#gr4?5* zj%3oM-=2tV*|a(gLkzmIjhA&D#*Gv^Idq(&#s(6hRyKS9pk0=2(nnU%_C%C(aUOd+ zAE@d{i6Y>gf+irK5dEkxxuBmmDbR@cQ{n>mo@?|~7`%>X+rkGvT6uHl6Y>a^qal;S z*tvtbk7mB85pT=)rPERMI3D|UB3?&N?BAirsl;ho@fV>48Bekt61rFE z*p6GJ2@YcXXDf-vJ~!`iqwwQ`>c|q$-{Ff;S4k%G)g(Y#V^%sLu}B@YKGNor*rvEV z;j;Hu)hW1gl)ECA`cX=JqSI~g;O_p!W64vS8K-xC&YyYf5>ig6?O=Dh=QB;2!Kl-$ zO+Xrl`M3-Lr{7z^iMcsX!66hL!6s!)KJg=padzc&HwMxW@QtW(0#YMrT|pW!wUnqD zQbdL83e%TTOoO5KL60ROf?vB>@|;Js<2VmY+oa>vG4(lJ8y(FV9nQ9BfXmoy>~Q2; z07!rOuP0dF5AXPI$#<;Plu+BkE#!@-l-LaX;N*pfZa;y%Rr(KrhDC02L=PRYaf5K& zprqIA(3c$1*8gHcrzYV;lq6@rR$Q2dVfCb&7qvuffT+~XhIr>=nq&{W!K;@R4;Xw! z3)b7FH@GR0@K+2H?RTTt*uwGNr-$$z8=|skIr=5$8cFsls?}T=ok#pKE@T^0xG}?9 zmiOi))lhZ&Y^%SSIm}WdVK~l|+XOIon{q2wkI5-toT5ZVn+>FgiZ7N%2YI~j;POU< z6&@Jp3m!UsPjHt`-q6f_Wq>=C&SA0ssxQS@d*3HMj{2PRbkg7H{xn8*a#GXp5dTIF zaP16AmWf$Ud-ZJGDRQIVSKIzPmtcmJ!#Fu5ug>bft}I;Re&vH4if<1rs`+*X)wKbo8f!ozwlH zX|;3J`0Ow<2Rp!(_sdYZ5$LB0s6U!dGq;W3x{6g9$e1E-@^$2yeq6C-0W1i5J6;rY zONst(iP?#sCl6mJM_(w9%<5&CC=uo){}>|Y&4^P1;A@^KyI8}ARUdWaopfOqH#DV8 z&?hq>wtC$xs0>kM4pncWNm3hA*z44%$^J1X*?jxLTjj_k6+fmJtDE?@p1oKx&i6QG ze4}r;F!>j)Dpu5yZ{WOt(E(!-S(}WLcv>eIbj-j>hoZU{*l2T-VZ7s-|D2;v#yAo< zNAY!v_%(gS5q;^Ib53ip98hsi!ys*Z6($CuY<&K~ZzKpz64Hjk6n+IuWkwsshYti? zstN0hKb&X;TQHT>Cq!Wmnq8pF*D+=$pGmT`wTE&GXz0g7-KTBZPOhgMYgVsS5MJe^ z1?KOL)=kzz99${(uEG!f!$v28@^ zZG!tAv;KK2lgYH)lB+|KV=ck2IxgLRHXU|6Vf?2Hkt<{lEI3A{wn9AgN20SA`n-nX ze9K?iIF$x@OOGkcl!gWC=nw}!!bEq|J>_?uh!~sfgRe9qgh4Ym0%AT1fnM7FEJs9~ zzfpmF*kpx?@N4H$zTp~@8WEM_X(w|todiTVyIBP}p?rU!%2)Jmr4RvDnvuC1d4oxW z+D(+i!Qd9xA=JR#>2oKYU8M>139HNUJXw>HGy9-rl1G=<+`2?sk9^xAiL`Q%7zYO@1OMK2Jygme)>Z+ z<#kVL;c2!2?@fLSvO$>ZX$Z0SCriMqN&?ROG`v+Q5^8wp!o~WDsAW^cu)IOg?&4L66GqL%f)dM1tuRk z$#hAFQ$tR=Wl@P-7^!gzLbp>~ndvq3#@2I*>__RjO(EUigeeTF`6*kZ=(Xu7XizfL zaqNrsBh}KKY=0YO}t`E!@RjWk7Yo)FsbhqMwl~l6~~tF#46=UwIrI z+Rq33BNCo$2ZAnMuLhNk?DZ)4v7<=DHu>@bS!oJ6svPd-*EB?-0u)d6tJYp!8sa4< z630Q%{~}@-JjL^FXOpgkI5tI`;k{qBhL2v^hfKff5ztrbaWWv6%F?Dis@f(3nGx+9 z1aG|p)5;sr#SMd=)}To#7j4`u+eEZFreTF{+B_4r5Kof0%&8w(%}-|yJl`8@ukV3e zoK}%qhoZgyzHmH$vPXD=6#5Xg$$NSbBpz#T5c^mu@U^dB-_79tzb=d6wcrW z=};#Jf9-JQ(z#meRMh5>O7_5u;r6%-=#w82)Z?P{ZaFTTPl>9N`*&PEm31oFT)FM! zW~UMGNAdUd(sAUale;r#H_!OW&KE)7FB6k z=)W6<#uYm76qJmUv_yj>zOR}+O*bdrMph+^5QJF4-n#I5weRB^0&+ODixW@9{@Gi1bZ$QM z6D8X69^+9j5`7JAXa35OqVXvde#s`QiJ=bdP(2g%AZ^Sp+vgVad(dHcqEuwL?>5 zCF&XHrajY%=;VZsF6!w9Y)7{f=`UEx;(S^@bh+PgnT+^Z!OVHW_%A{alM8lPe#$RI zy$_7jhmHvK?cu}9MB#gdS0z1uY{me-LNFxK*j+}UzrVK7Belzf9VY57E*#!0r2^IT!|(&Y^wofB}HP{0231feDPCT~(ak|Y7Ln@$Epdj{JQ zl}VkmocScM3sqa{Vg+nxH~*>?;cd!u7AWm3gyCUfs116q;ukG(=g5x#2nnOyv7?p7>f~x-~ZH@qDB|c^=?<+ z7=6=d389?`Y6b2~xOEEa^66A^&gB7Lhd*Ec3o4(Gm*yYQ$v*dR{`oFU)wr>oWRT%6 zwttWQ5XY%ahB`jLAv|UHgwS%K#JZ6wEVg)yZAMS?4%hC1q0XVh5re<3LV?!Y=aW+TP9+RTPVTPcQ>I0T}>NZEE+D$me`H8r3N;)h|LE5-oZBlA3;h9|Yv^ zCqzQi58gz%$#4TeWQ}W6jQ{jar@R_1h$Nsl96JZ;Nf~uR)Y=;JS9$rzBh4G^r&e(s zkW95>$&IY9HpQPc-CC8&iYVJg9AuArFLA1HLLo;ljXc}F=!fI$U;q&=J8-7p>qJAw zk`&XF(uIpW$a!5(JcLr{qTvy!_A4Ln9YAk0IJMc(ce&Qm0|@QbsqAlPorjB&U+r_f#YL_!ifuC zO2Wgnj@$Nh6$V#_k;<0jfeI!!nHN>s-tEB&7z5r;Omj)8=4Ps~A;_b`ZuRKSpg)=O zf15qS!J8&NdeDhh?wNV$iZuT?$=G%}Tyxi!sIj?d^fP-d0rJt7R~l}@u4*LVyaV``n`=IpfBYa0yf6;5X(bJX$8Ek@{I(TIV2q>U|Jb|-}*6RfxM+-W3WZTQ(>-y z;Rt3^9b^Zc62>-Za7?^R*Lr`_`IW~ARhPMI!{2q0AJ7)B-8d3FkPCdqk##8-@K?I+ z?1A?(^eOESo0cfEpF^E=Oq7O(XqRj?zKG(yfiGkbib zkMxI$6!MA-9Z(G(2b!MDQl_0`z`s-bSBg&5;}l+>0B)F&X?nM8T@~)#Um$^4-6AIB zS;TY&Ho(F|n34`#!PTo=K|a&UHAbXvGYJ>nBdTc9*}&9w#}7NH}f0{Bjr4)lm@ zVf#Lkr~_)o%f9f-NZl3K?(v#4LukJgO13Ehl|~X4R|0>DqTiz*g-s2q!%x61K*K_R zQ40Boh@>dNxwsl{EH4PPi@3M}nNJa{i}wQe>E9``O^6Nr6sHvUEsG$~R#??|qzY)& zp1|A20mq4G9#1y>bN}<40h1EI#gJ6;Hz}NF%0hTb=G=_qKi7$-Q1EHymVGCs`rWTT zsqa|SpgqC&%`Q)soPxg$+Bx*@vEV2U8|SEk$#%>KIxkdbg#-}CmQNL zMt-=LlK@k2Bdo$C_&it3@sh_*fx7aF9yu;foowuY;1mtMNueQ^aKNt@e6iq^DRG5* zhN_59NFqrR*kI4I4%pIk2ocF)sA* zWp$o?o#e_%c5*q7pFEQj>ds6%p4qvs%E@IpSLh{EJWh-4)BO!DoThhL zqN6y-Fc2{R=Bj#I%I3+zt1W+Zm`;8tRNjFDlnnii)x>&Hy_!z^s6D5X0S*Q+FA_|T zW2S#(Q3`|L!i9JA6lwU)#o;k$Z7+s&jb8*mj_F944!$Qjewd2yIV|&hMP(fy zSRmWM02-F$$Gly+%Bs*gl;FHU?_aomLn1PCs=5!upZ9@TZTEAR8O2G(toYI(;*IV^ zv6QLBm>{)=6L8=Q{5{}f3X?@;*Wr}!(*k)*wF4rLT3!CQ@BTF#)q&fCFg|%)6%(z~ zW=4Qb3G4Oekz~PNyAOR+Kc0j)UZvr)fEBh1-9!BvV4?@DyV3y(c23UyNXs=~6Fx8`{sKn?5ej;sejJD@Kx0rG zTpDY~3>a&|o+we;BqE|@1^sV)q(Gt0ZC6?BN?6PjHNvBxP}r~<5nmBK70`8A@HD(( z3GR*dI*_3zx0{*Cab1ek#35b5PpOJ~zU(^VnaTz14V8XeI7h*o=f(lG``@>unRb% zKG3=Zgd}jRTmP+e`ks+y$Jf+{XyO;g|9j<}ye`pz80mz>A;S2Amr!v~;su!z`G9tc zFCPrxX$bj%-sWzu6M~NQIiP${C!@7G#qH|Q;x8p-58E}xM&KztK zT$<-p*!9tu8x+#W)FqhP?$j8~?VgYewYz|v2a|2w^hle z^FSKSNd>7q<3hFSH1%)zuxZN9Y5q?B{zzg&H|QiG<$Y{H$vp*MyAYS3dKby^nSzE# z7id$jBhyFbUv(BK5mgU}TX$Rn43R*+JZ&uQq~V6*60u2|kn@O=3`G9q3I)G2(*ha_ z9e!ezu5p;Q%+FvGWkh_6IwI6gwo};%vg0wG{U)BPKD+SBve|qB#L78Pf)6WnTD(NTWD5P_NsNm#QoE8VF z*y9IsX72Onyma1jztkb%d|xhAYd2674RBK$9fo5qWy|0N&l`gUx0<+kp> zW~8=AldKr)f!;fcUuj2nBqv=RRJwd(0_;9LW(^XGy$1<$a$Mgl`({ z`}Q^dkB)Igib2Mb)STsXLIRN<=zUUO82tk7)OVW5X8Ce`FpuGAqJew59Y+~TapI-~ zQO|GJw{64mHW+($<@w197yLw2C;zFAXb!Urs|I?*N|18a&&O4#EHEZks7Kg4iFU#2 zt3ET%JE_3nIPrnWGU0PPo|1wO3yl+;V)^Yr)gJ&K&8gF_B*vcOnUh}elVt8J01vR? z9uz#~$IiYTP`hplJ?9b@bQJBVK6AA(QFu$pqI~f<;9A$=F?kLHiuQ3C^9Y@2B^FT5 zH=nXkJ#f<1bgA&DGp4!7O}dT4OUKKkxR?^=>rB6} z5%WW^b|bP3;uyTbp&v8d+Jl=B10S^l{ld}Sh6`h5@o-%}>J5BBW3v}p#?7DCG%A_4Lo^bv|14Dr!2k36Jn z3&ak#NeXRAlyb5UKYOhVzC49HJ-O^Q{AWIn0|f0DH1j{P6h{p;!}@cNR)kWl+A z1d7?K-PA03Bxy1$ZugeWDHqLe=4F5Bh}X+k`jzp=V~^Dk_+2h9o6yQEd(G4QYs)1y z1GvQ0)T>RS4$3tV#EZvVn{)v;C6L0M5s?6I!3_GSI`+2u)5%$XPELI=`b9^Fn){5= zV@$wLnAQHGHG#tJN#od?{5py*XO@%@HDaV3)6H!n5+1I5@{+p~)xDVs?Tykdh6ycq zLKru(Gd|B;a^y~}Z!-g;~kge~n5X9NJciwO=LKC&)KT*V2b6|y$MrWo6j%1}b z|3@Xy*>W+mOym5B_;X&SXg-#^K6(n54}APfWu+UND;!TQlzhye>qLpx%;iJ~UoJ!l z&xz8Fn`0ttqE3ToT$47ind9U{mdkHA%MiNWtrI7R(KtBNzc(a`Op)D&JY72+PdGZD z!Gl@qoYH5u)`Aw~)&b-*sR0QiZyb zg*f3Q>W&d*SR$hGBr7Wq{46{Gvi@Hw*?PI20)J2PA;*re?~I=(B}8$6_eqn4w$7*Y zn&|9rpOm-W^aATO9zeg8c<69->FzFkZf#=+u8Ho;TlBe+>2=-&n|Qm@@iFdcmZ#FF z{@3aDOdmELoA}p(By9Fsx~slUsI!KVj3e_zVPTuJkY;~4Swnh{oGbR=_WJYSx_A;t z+4{^KdlV%ouB{6jkBQ>9Fgdm7-MZOUkAW zmpZrii{8`l>tYW3DLlV61fCL%hMN)ii%W5`&|AfPIPZdl;+00j#yBZXp!GV&y*DzL zD4a1tei?KrHJ>NV`qdWinf#$jnIr+;yAwWd_F6sUaizvT!N!vMj%>X#CA$X4rjLqS z)&EP>J%nfwhry=HUkxz&9zhTaANZG+?<=8#-BO)}BFAwCVSVs{+!t2lOmQH>+>lt0 z3I9$4JIZzo6vA;TIoD=(zd*L3PzQ*SH-w>?=5f=Is%w_^>~q;ETB3Adh>i;COh45T zHEgw{zQ>X1GiI?ZGU4~Rf7kD-?+uowF4mTOtJfopMRa#FV&Wo>gHEAaFXjH7#fj)J z)<%{f2=E^3N|(4k!%gHppk5~qy63C2i*^Y)UoSrRH~;FtA}%1^aG1t>`3AVbed^r} zSckl1E&J2POB;hQ4$Yi!^#^XG&^BpaO*Ai(af5=A3R>4+lU8U(>WyXlskP`s=ckBP6V|sYz#rY^s+>|5Ow>b0&V%}5W*~p`K z=>XfwoZ+?ZK^5m!it6@yI~=EIr&KQkE{zqkxI^E}ePU$vbn>j(yN zsl*iT5@W2p4!za&l5)!vUJ1<W||w~vGU;QK~#PH>>NyBwNFA3w#v*(~iI zJ1b1b68sQ7clYMJff;$}E#0fa>PmpDBoRMmsC)vtM%P}0B^&v_C+i|xYUsACmLNFr8*zHsOb5?J`8`M?%g$|$2QCw z^i}6Ri<_b0dNUOs425ycbFX8;&1uYloU#-*9Cp``Td+PTAmt?N8_?XLONTm?^H4g~ z(mM zbl!i^kL={c0xqwOSg^(;y2#@Tr2LBBq&qsRwS(!}Rrb-tQhi>kFL9SJ%xA~A-Y7D( zaWg!rGJy_hA@L45AWw+`PSz)TTo)oC$#{RI7Z=Hjn}c1M$np~pG6b4*FJFA6boPbu$B!)@sUv87D84yDxtM-=<# zNu%!2PhKY#v=28&!u<6Om?CXKf?dQjf+ERJp6xUQ?bko{&lQ9iAs=_3Ypb8Ud5_)R zyh?*ipdIr)VgdZ{kCk855Ju|~j?$i0|5C4l6t#t+2x!I>#+ z1av@UvP#vcN5-&2ZW#jfG(isV+>nrDj7q<9a#C>WVJhqA7r6LX`e%y24d_V1DI!WL zAc7E%uPAgVkK$$KZvn^Ju65GtU+j`csIGkOH(x1oqqmH^0iF0h-q1fcU&{nZl9wBGuMd@PF$3m_$M3OLG z=)m?t`3M?)Y*N8R*LU}|A)yVPOv`N3yHKHY6%bwFtHw^k2x2 zcW1Kj6Qo^?(wOgV4Qa}$LgRvu+l>e}l=Tlx_+%Yl(NW)yi)UcyRA2%Y{624%aqUOl zLVS0S-S>U{T1;6YAGBupIe{F-olwPp*H3LMH6?mvfxe7 zdXdMaZl7RW$5XC@F-_$Q`MfEUNn~Iybd^Rnj-&I%#Fi<(mg6o48@^Oe7sc`a3k5e1 zkgooB^Yf;*b%YyI-N51ViU-wKsVHr@rtzOC$b)Nx$~)ao#=)1>zo^fTbmy9G)HP%C zU4BR0pTL{#x=6l(ILw1G?xxNDMg`|Mmk!?~N9O?T+z$CkeOenu9OFDpqMzg3Ynn5U zsf6yAlCCE64aCNLJ=G^)$tSoy&*brk8~2|aKL-ZUA&C!lAh_{N)a7;MJ@S-sD&!{x z@)O+{1}AYw1T86Zx`OKU%0~2guKK#hPAy|J2Zw<*XnIpBy*|C?z^_LTiUSqj5C*tO2vZP2--Cdl82HhL~B5VvuhW~2) zT(|3AvCqxZwh#lm3hJa_1>U9sV7HGx)zzgy?Iv#6Q{{LqgdVCNFdm}-#;|kOE(kb| zynfOFpEgSy4~xDJe0ec}G4Hm{)~!|y`~}<&QZ|HB_dJYrzDI}lTu$v}9zxX4r}_oJ zHGWFGzK{6R6gN~Ru6U1~*#1LhGd4_Uq~RsoB=LdQ?^h6>i#RT@%s;f841qqk`&Wt$ zAISzK#to2-zkI?bJXHZZ>UV%%n+^|MNQOH2-2&_1M07*c$zk$6z z3b{5hJVIP1k9pqAcMC=a4de|S=gsA_J83oO*M{qD)r~)Hh;kW3UHR)<7-D)y-KegT zsls0(Y3kg^Ctq#332-^*)Lhy14`VP5>PzXfAPb3$O&FuI`>%dmUy|}_%Ejej69)G_ zp?Q{;Mm^327)shw|E?tmJdO=+bM)xkJK(?s*A5)nN(|%3)~iBH39cj}>XV+{a>_&S z*Ipx$XnWg8$s#3O=JzPxsdVD-1w4OvJ>l$v7W)`Kc|bzAZ;2g>#T0qu6};w_Jq$dvuhN;dSX$SDC(tYed@EAgFw$rQTkJd~J}3H8z_u zreMu|Pfmqoo8-@M6Yk0DsPg4=#%?^Hf`*&CdUCq%?!x|4YN+bBN-r4?1`fxXKWx`5slq=^mZ6b7CpZ*uDF%`t4!YF=RG^ z_OUf!0^Ndv!7w1n{zuV|1^Pc4xx2iK0V>k$8dCP6fP^>QDFN&LCm=MC;EJ6P04UtQbm#W_@eH>?8E|($?E$FvQQPeTVNVGHB zo=^t?2iPGjxF~rl2YXC~DGf^!NA@7+){8_!3ogesQ;;2VoY519&nOX>>eD_TDC(c| z{vhPz;j*Zm^+SG2vrGR1jut-l2=Px;<4kgr0ok4=Gru=VEEWa-B3m2?ycc_W^59Q` zos@nHLit?0u8oG*CWMyf^Pd~NHNkk;rbdj}9aRhpr+zcS#yj;vP{y0qJC(7^A<XU$9B+6F&D#RpJ+jR=dJ|l;J2txyIPS?4e5}fHw6$VP?q%f7=k}F3Bv+j^dqYd{t zU&6iY{AysEo`Bw$i^D9#-6kxf7HaXoLN?c1d6`UPHw(^ZEBlBO`{nC0F}f&nZ0U?T z^^$ZctqFpEsSd&fhQc@_!=h5i=lC=xEehigZ~^6xvy&T|2NVp+0DV{;$ErLx``C}A z%aetX_g`re0M4uH$}^@j`;%jJQVBJ1iSwd8=F!LaH~-y#WjM3S;ZN~Hn);v@5e%I4 z*;9MIs+1F8apYq-GEqL+@JYcZvn_kF@#}}F^qB5W5_poL9z6ZLG-IGoY=WE)7ruMI zU!#prXfl4>gg`pWN__uu2>0Qr8Cu525-HBe>ElQN9*e5@2LM>f=xs<)%Sq zWk?2lDL_7=7hA;!4%36+B8t+On&T7R>6c6;8l;|_>Q6>|5(l{8ee=S+UyG0u5aYu= zKn-K}>;;em+67jLpj4aNX{GL!YY-tcT!{Zvx33N2o;dhJR8zKlVunA!6Gcct-vtE^9RhMDBe-AH-2UD8Az5AH8IY2iIph z4Y7S)5#nvo8({EvRjKggCo-NvFVUCw_z%(H-_#g#jKmWbv}3FmDS0b$e~zOLo{-NB z)b(fJ1vUjScGT~5ff8~nIJw%RQ&YDYP3i-uY$?y6s)wy=3AcR^ zcYPB~j(<*Vxtq-);%Un8+8T77dAZAHO~{fohZ#pkIu!CrvC#oMcYRaZLLRz@e!d~m zDY`WrC%9ALdV4q41{5<;rxuWcBh+Yi7(cqn)JG)|oRa^#=kSxD?<5{RX-`G{QHBq_ zh|o!uW;2k&Dj64vP`ziT>S|X?rsuZ)p_7q zaJU9N&q@pOmD4ADkU7U$0Ww z)2?@1KSD=Qz>WKL{e+Fkzz-~v>{mLrjR_b?Psv3r#8eSO-HLYk^OW{&AGgNQh}|d-=-rV%b#s_Q*o=E%il_ zI=-62?3lHUyuGQ$%_c^=ZU@}VUD?!LbzzUZWbQ;k*~WXp=dO zqM|MGuNP*>NF)W0<*5cv2HtX+5<}{Cg~sv4ImlPbqM2=#aULSHbK@Ho0oZ%Ov8el^6P7e<>@o%f<%p+1-vl4QJ zDI#r00{tk-4UbHoc-aXXZtuP`T}e^_T23 z3yDzl328Y<*AlN^h_5h4=NkiEfUGxHr8{3W&ySMD+f!rOOTh zq;Q&(7{8(L1beT|jMvT61mYmHemqkrBLa4?qxqY=b?QT3RgtKi&Osz8_-%*voebTK zcqW@E->SE;nUx5r)}E*q;*jH?kaNVwq(Cy|#KbwN4yz%hK(OKA5b1%VD|ba=1fO=hd(s`5=3rWH)1E1W~cW|Bd zJ9((dlYPH3pR-nsjhN#W)>%I}S3oon=EKM#&V4HHMZ!iUIX^FaOnGBS!lb0rDK{MM zAk;h+c!6A7xIw%W*WY}oCEIrC5bYy#ug(Rzx#qTaxaUJVqQ}Cg zw)Y8%Q{kyHv2%nQ0q*HP$NZqMz7tH%^8|*^WC})oGIRm=m2yd&4##ZrC%Rw_l3Ll ztY1ab>>iHzPg<2Do$lD95A?pXP7P){Qfr>LL#;za&T{6-_Q_8tUk&i^tmOq^Dd&;~ zp3wEl2aa<12>cQKvq4|{i<|qrFW|^x^v1TC&bdq;A3^YmFtSC)uXtUjn2zkt;(5Sx zlG73We}dP_z3lwOJ`JD=g|-Ad z63FITfHNE~im^kl61+q)!Jd+7%L!31h6)_OVq5%WpBPsZF;c3|=BFzzGwgJI>c@0l zO8k#_KEaCkd?dme$GPhC+TnYe?pgTSM}2ay*IL8rp2{`i?|m@K;yTJQ(!krPZrx#K zi*}9{>DwyL*Jbj63Fe-M*@->9R%i|5LQ-R#6WSCBF|G9uOH^5`jzRq*f$8okhT~f8 zP$rhMY7}zu7nMVY|}uAscVfeZL=@HGC&FPJ8_cf9s6bP zJ^EyNv&!VnN+FerJmVi=PfwQ;ZXxQzHg6{w_U3``uFV2c7dyaFs(W77m(Z z)tNmnZp&nUXWTAtOdiTT`NHenw0F`j<5$+N5H^af8wPctjcwBE{p5c<=ufG?`#0aD zP`uRSW5vWhL9ku4v7r25Yor_OtK(@SVCYAE!EUd=dR)Kw_Wrv*B8l&+3a-5=zjl-l zQu9E2E?uO>67+`mMCD`}Zjg2KyM?9U9O^iA4jgaY^XnCi=lUT~x4Te&wPV#M|005k z!rDZ5%D45)H@pASPCoc1!rD-H*lCRycKv(h zh3CENghUqy_RWn&bjyqoF@NOq2yvb@`&Fpb%`%BbvW<_BPblSPeJzNxBM}8Z(!`j# zfsVNQVMLgs1Es+?3PSB@Jk^j`)INilc6<$K8ei`Hf`smRvNJ_q7hr0Ws!=gg7UqDYyXC_)CF@W83$alSMI8NB>rDDW^}# zx>Pi|-r9hNQvlx}@j>_23|;#h*X0QbSas6`GyQ|#O++})fkmXZX= zmV8ZJUD_${D9RvIG1B+QezU|m+KMvV%}}{^OCi#kh~$(+vqNAT*ibS7%Spblp4NxiwmB}k4J?~qymSlt$$ivL<_EA#6Y0hWDE3Vh zruc0W>ytgSmMOl^xkg~qh5F=3G5=`pCy;N7?Ury+_+4I|=Hsz9*UTqiX_(^cu|GbU zaV)tkk&xLWBM+Jf)YrQq96YT5x&2~=-OF}s)zPo)3@bQ zkew2G#mtNMeBIH_^l~KUe1xN@!{^fpk=mpi>^t#2^H%xmWTFNi9j=Lbhn$LBz&CsZ zFmBO}-qgAP$IFo9B@9QLp9bQ*C*_9jG{esqQ++vkGC|}Kbx}#}1KhUcL6pMegW6;h z*=Tt;bTpH`D)J!=|G`fi5;atsl4BrL@(g!GeCjVmeB|g{0?O_nchjMjv9B&ErsM^1 zicl^!O~?F70)SaZMYZEQU{9btGp3XUm77}4VXmg)Lcxw7gd|{f2 z8^n9i+4uQ*iBjlnCkIKe=bb~t+CF}~Qs9)r%N|mB7lnKMQ9pP;sTWg*FXmKw3AV*} zF`YKQv_aISH)S=%5T{PUE)OB!DZUn%*n^JOzi0LV)rVeU>^{LSz+ev+%1dlc*OGLx zNV!Fcr18x<9oJvOdGY;=2iu7h+Z1rM1m)?1+fGXGdd=fir}-=9H|;K4AE^cO?XP!i zy|SL7z>N$xe5>y1>`~1@L>K;jN@A4k1bFj@O?{3T6I@vz2EO6~0YazbHQ)5%U?at= zue;0{APFJy7{1E1#+eELNvL^wF5uJJJ_{)6U z>6369=pkdZ>zPVP=L_QoKu}Y|bDG$`aRagrB}1Q>J9{hs=n}OW&)Hym;NvQUuuPNX z(+2DZJWn2|*F>M|PHxc6_xDanGzd8lpcDtt082C|{!YT=CO%J=JfPsf1_FOgC~X-q5@`mr%N2dfIY4)dvtOB_~V?pefs0RE}MzAS@e0Ie>Qyl6(6% zMSItczGWlaw*(7VzjmpMGHwVgW*d`94 znYuiY^hs`WzfbcJjRk`513=z1IK^XmF^&Hyi)~&J1y65uAGl4fjlarq!$p2T*$j*Z z=_=*Wmf`ri9^*ojPuQT#*&^|t?^^`}&cajV$Mcccxa*V!2L`I5VT{utXQoY!sv^~6 z_6#~oxrGlr1b&dtL^H$qrg?-X*u<`zi4M+{w2H)49g=_Mjfi?ajT+hOk|K3HAMStd z(&uoki?37U`;Q6n@b`_6KT9rY6Nf(_dzW3JF{+P!6z*LIZv7BoICq?o@&>?^z!dMp zLY60_a>4Sxm)%jDbz0x+L7gVm>7v!toee=Cs&a?1DpQ0XBbV?rKx}!Cfh=jz%wl(w2goqn-7yw z+vDV43RSW3(|CV3Bpq%aVCpwEB7crw%d>&M6Sqt;;UHX;3;IfJ%k&r!X`HK@A@VnU zK3hliGg}Pc0>4W-{Q|!L?^zilpjV+V7f~KfR{*E}5jP{0n;k*2-q{zJTs$$pE#6cu zVtzx$^I|}G$MBwPsyrGhA((Wpr^C#so1CkmFBE(FP6@C83(Tj41o9lJiScj5w#tLz zd}j;8cyD7Bm%&z&QgD%J=xCkX$YZ)MO4yiufxH&5>sUF_xAk>C!>L+~3nc&c15V_8 zY+=wXeuQ!b&f7*$-~3z?$ldde+g}HH>Q5e+D#XVq_4BYnL~U%LpQFu$`ncaAZF&CtxvKRE(L2c5Y7RM>!H^fX7^&1IY4^#QW?RAxBZvx#gSW9AoiU1}iu|Y-1pu9FPt)Bqf#<-+|3R z9Uk`J1BqnGbbBl_*k<$LcfA>rM<~}~NkWw8bOl**zXFGPv->^fd@8p@i%VjoiEdz} zk2x$nT!+{Tbv1RUFR9P)AN=)ySyZ)cqG?L-wNzJeaL*18h}yo%@Pr29f|@2&Cjks> zeyZ;66c#47LCk0J*C|HdmE@8STF<&&I!j5!PrXgM`i^f(TJu~~6AC^_HCiI2{**pX z=I(6B2YIqPNWrIVRZfEuJjJ1v+$0gUCZ&xNMb`&(Pt19K66@6NaAzdYU!(~FXm{R{ zI2$jXFbT0ho@Bze1p*Bph>>U41w)9R+fc7lLlr#h(9`m7HQ^3d`$#@BYJC{~}8l{ixwrbQ0HxFFFNmcB86Y4C+lIs(6${Qc3B&U;9c4QHrCXC(L;Ji-kzcq)UKJJv5(7O1H zksebU(FLW<9?_gbC-ySFFO;v!@CmCuU4KYB!_32meTEDtVw>q-{QCF*^1l-fNA6yh z!y5ubQKyYhLSH^W?P{JHP9k$9*m>Tepo|}MBMd1W5Dq!y$CR8@Tcy*~nQjn>S6lsG z(NE`yI!_`?zlCck}ev1Cze;98b3x zhO)as8~RS1H9Q7?>C)5c=ch|FV*Cm4l9LHfpg6ndV|jeTBTqI)zl>C(j=05E>reiI zKEMsO>?6MTkG6e4XGxQOrEoK#q<; zW85VdSd`r>--|r2ZsrnB75^EVGeUsIG4vWbN)APYAZkC*g8Y>zT@N( zCYyS4!^Ub-9ApbF-iChFJ*+>4bwtbtNnXMVpMkGswbB!RT{VOE7cymrU8QyQO?K)TYut|KN+<|B`06ag`~NsVRIhgt8W6HDalkws$M*l zX1+(%)B!q+2fZO7&Pk)N*^d-NXSvH7nJ%R2CLgB+Qut=$HtcIilv%%hkz)u)SHEEj zL63Fn%TC1Ugay75NRh-b|F==ee%dNzJIIkIzs^==?3a8P`EYw@U-Y>1P27ZErU(lKw z)T$T7Bu^p16nr1ccPdkOUG?b_+kK{5dxKi;Y+{_->Ow2@GI5i}i^?H0g?pG>Hv=*q z?$LJy)QF3wySe;Sa-4C)M{YsA@de(9k4IR#0e7!&&AnaSofz!s+@Xi{`nN_5P7t{C zpr_fLQ>kRD@<(vhD&N2KgS18EqvOvFJh&Q`lQS z&zRD+Yo5#J_N;4UQLi{zcU`mL)rKI$TP{7KE#Vhcw2j_PzIf0D4Nkb15EO>3_;gcs zu(>i`@X7f;LJpe_rbJ$JeUZTJCPdCB*)6g+z3X(R)HY@scM|H?3SqTTX=y4~yfMGw zc9Ej<{H-!0!n&}4#_$x9-N4zov*I@0C8v-r@&L@>;%(#wHbJJv2PakxS4|vN(b)|L z=5A^v#TV&=BL3&GJ8LW$rNZWAS$u(AbK+s-ok^d>b0S;bYY(hsq|gz2Ay|kh^n(o; z5>=(kS;1TY{MtUi*#yno=PLnRTu%iThrV&ap)KNrcAjPycj~e?cXg+%L@5Vwxz{@9 zT?Rgg>h|chb28c;>yMiV1e?qCuN-}_=e@n3Y#!#n-1og9J5g`FKu3YXn6#@k^^#iv zWsKn+PrV%(@=lOnsU2%F{H>hSsi{lOKU3*)Hr8XgXT>`-V`M3I%nXnep&#v&t`z+N zyF`?!j@K(2#jymKVv5Ij627U9f`Ak^pYVboFv5NzU+yc>Mv-s+}+jOcrr z>e1sVfzZv8qi(Xy6p`0>CdiT&naW8u$rFdv);^8d6f7xGf8?|B$%95~IO_tynW4yJ zVXQJ+d?CA?d^Yrsc#mbuxV08pyed~Vzt7*javCpMcWrnhx*4B0+~4|$f1N+>bvBd^ zVTKRBYNs9_o+b(PWl&ETv#X+;pA*LNdSzbdFcVa!K#f%vk=YlkQB)W;9zVC5mdHjzvB`U_s*>tXKOgllEflXjd& zu$K&Lp&227YvY$Q-bQFY@$kBM0GXG4A6su6=i3RF5S4h(yxRo33!tl_{y|lY7!R7E zJby4bbCw?@>L2<4s9+ygWbn_xwK2X2$$~DN)eZhYhA!0s8*JmaYX^^wQ_@SAk-+ad=t}n6b7{OhO2j^%;Rm3j|1VyOKj|r;fEUJK zAv;}R#G(6<(cDIn@epD>z|x^UtNuI6#QG0FeVg_e&A8E86CA}&0Uw~si+7C)=kk*W z{O0`)39lH{l$sh_k2ZB2lM0C1;Jw@;yDA(n8@*n3movJisnyL)V4!*3`B0{anRMOT zWg40?o0RH1I2!Pb>>oLq>tc$FL(FLa>vp;0J9!j0GZLfc`9?g#)Fpc4@~ZfocAZ=_ z+Khzi#Cn1~w0+5@bYDJ&#q#R+kQ?Jc2apG%Olz_obdt6$(x^;zT9&p;u%uAk)T73W zyD?!mcJ|3MyEJoU=O{^hM--wVFtlWXC*Lobq|r{C$CzBGYvt#Guw>unHi)9*FdPavBO zPzQSvjrY$dp^f?s))b_{`3N=S8=-dXRYn_zzG{xnUw3ERydX*&`mg_QnD`9|F`o37 zNFv9MpYR9IS@3|$qPLI12%(T2LW;s-o#Y1*5k*^4{2Myy<1sGXrcHc>r8Ym@F33~9 z4n&%MU0Y59T~fNq6Z)MLA40vvtQ8*?Wzy-cJK-P{;-kBcc@ZvkH+^SO16D$yVBgJr3>XUFFI_n1#Z%Y z!~&4mp2pr%a*mOq9dUH#obX%?gi{_$a|NQAjT1{3=zmzbBleeQ<_!sa(1XJ&Q5|kW zNtyArAyIrK4$H1EMt+=PO*4nE$PRJ@N?7rUc2i%#T{MIy>iF%f~Is}p?1wL62)ZKihotQ^Mg+voFXwD7};`tz2W2Us^9 zp1wHHxPJXI$7630yuXX^SWn>fbOmmBx-3MxpYVP~+qsFzPXJuPpdB1`Jr!GQD%l5T&>Uk6GYKu3C$JO(Me$ikL zuD!x{5Axg`g93Bap)`S1$2KW(Yg)rFYXLf~gNg^8pj|JkO~=2M>`9bY)L z1@U|~AsasRW5?e~oO>QzueI&um;(je1s!3za%?&0D!}{Va(^Ai8xM~EltT;h6G@`f zXW2YOli@GX%(ePg*ViyJg`67ZQqyWQEM_;JvH&z%hljMHc)vUx8`{ zXjFNLd?MIz*O9q{4RnSRigvAb8*LZ%`?{9%f3zgwoSCr@0gK13%_dwLAMB^_-8 zCTim_fH$&pii>e_KsiIw$s;r`)nlF5WlX_I#`+{?^_D{OIJTuxTfZj!#=ckJjK3GG zx*u!DYQi47;X4WsU#C+bzXVt3~)LHu!7ZpHhlB#u^ ze@c09BPB{3HJOjayKhi%@n&%@ns{sDe<^RZzI`JNB2uGfEKx}tjnZ^-n3^6C{~e_& z=hes=(3_sA!JpFCh)84zJ#tY?eCFhn@e(+4W+;POoNjuVnb2?D6jopZPVa4_OFR#m zAPn^+F}dN#Dx!lmOaXJZlVhjIrU2@)Q2{!$JWlaJo#fb}0ar^m@pg2Ao{D$8TQbfX zE#HSnD5j!54^noEBj#0;V=~)q)OptHew|D@IHJo`mGjVh{z25{bIY08Z?DuI%*;gP z!Ie}vI^g(9xfwzT`#t1-7p3#FTVkTmQr7|V8vy3TF4X*A`%QUi?LgTo5XJ+%Gx#6(P@g?u0dusi4Dq7*6R->xQmM5DgI8 zPP8uA$~~Ke*Ubm+Qn?zgzFP8lkGV7laDd7Fka@~M27`nh&7O>|J|Wc3qhj1tEp$hj z<%XsrCa2<&HNj@ul6q(E@02d!dRb2cbgN>WL0oO#goywS%D!l|#*6-BefMQU+B0YO z0?!)spQ%>Koa$cJ-G)UMk1_oNK5%N@n-7Mk2*snnjCn3IoE!5>Y!Pl1*{<gI~(w5!*+UJL!_eg#7NBfQ$z`Hua=DUYD!1&V&YVvYCzVWH2we zGV9#b5l!J7+WH3+2?0E@ZO87Mj|_+R&%bIBnePm^acEvDzD+(xb=D1Skn9-SkPg65 zBb(+Ho;E2UR=5$7X!N7FF*CqWQ_nfxB-qtOjIS<~HB#oy{2Ml|kv51G=jONxo%6c4 zuPc}za2C;Ds13w&X?-u*x`PdVL6t^hv+ObjzmlDJ%@3rGNy7#*Cw!TQe@Epa1yAGF z0maW+rt~<5=w!b;1jbz24IK5p(^*bIfS8Cl{dfIc8xpw__z-hXz(FBlKtjPu!z~?k zNi@-|ed7Ch-KNAbwl&F-C#8`h-(x>xDP5V$6S>byRutBcRL>0Fq}aBhuk8QiL8IbA z?SH*|PyeirPLpk;R;Rcu@I15;jZ7cB&x-2yBiY*lD@i|OKb&LXJx}-%r#ZvK!-xEL zBM2yA+I;6LoQi8|`x#3-;~`!8YsGI&1!k2nP&~|6D`v~zrYpan2AX2dDgLDunCedZ zxfE3FBKmAgQnNa079zshqU=c<>H7K3_1y(O;e+2Pcs|pqCDo&zc5v)#jCwu;Zzg+S zKkb z%(z~y4*b?PTIz{0+(=x0pH8F%IiW@**d@HeHb&f?BJ(ZyuncV-%b{sZZhc?64z)9$ zri7de%)KwU*WNfkI3%__jA+=~ebV1Ll?Dt3V4Cv~&wh#c!?=k|K0xrNP@N#bMR_`s z4WHmcAApq(oawl0ltq)Ko)S+83%G1kVMn`t>x6l~R!KgV0DO7!p6O&>DEnKKvCRiE zb*3qq#d|uy@CR*Ed$(ZEj&7AxTT>vfaPYC7#nui7++WTmU)-SRQo|KIQI}5kcuBJw zugv(P%Ou;B4vD_VSErO?{6pRhz!l|*#~4Q8(Ml=&2fzKRf=^s?4CZ`J38p(H8J_=P zE~U?$>KjMwB4%oh3q42M5vY)&L`;yGuJPQ z0E{>;?5U#@uCC%n!m9MAdrWIXL!!)Y8TF{{>i1wj?O~@OP&c$*KZtSXQv{SBjoB^w z@RS68y@R^APCVpm&k26245y2{>0q#iH5u{_e(7}GeIx|R!+xSn%2bJIE<$u_$JO>} zF+{0}sO~SgOB{0(ish$hh$Pu@o*rC8eh%0UG@#Ipx|!#bhTotzm~f)EkuWr)gXWzM z$;!)}206N<<~i*avcHX`eYf>8`qFevzHe(CZr#vzj z(q!8^8N7U^=Y>W;3c3(-jwz~i25u<^e{8ww{qvHq|Ah}& z>Y{rYLH0*0Rf-45i{GQLR}GlghcEZF=EA6tcof=n&Pip-5Aspw>fpZS&4)VxrG z4b&z9CT}=lZ=!zClwKfZ66FoaVdKMub1EURUBF*0!uNHUUs03Zdns=w1tH;8pEN41{Y%a+|6v0pp=kOBtOfz%ij zDldWF6(UVQv@(7=i6~Em$JAqZ8zR`oHyo;)`4zz4d*)WJ`%)6QQySfOKmYb)Q|#BI z(FE1;lP!3H(Pa0t=<`szL86py)qwRk@FFfwi%Zji$ejo|wlBoB!-IWknAt9ieNwwj znu&4kty`|aiXHF8KXhD?L~eKLj_58KWK36xL-G^321tKK)5a}Xn+SjOM}I{B*1z?? zp}+t4|JU@F{?f0VZs37iC;F2=`4js0{=NS<{RjWS|M#aw^uv^{8zPpb_D_ByUe5e# zeHeEbQoO*=go@R9aXT@(_U>QSNl4yKG^iipcPkd|?mG_kRgMU!JntK;Q_A^0?eI;h zb|-@dp`zitS4=3)huq)Orct)HWPY1Cz#&%lXH*FFS<_4i6r%H(3^u25VrI^BmWR|2 zZ36&b;XzXCBvG7CWQMcc0*;*9I;LExupNYYZ_(gGsqXr8Hl`l#4!_h<6o|&ks^CMS zWxBl)F_i4d`5Iw}`n-FjdY7;7UGV>0xW0$xkKp4Y{msp18&S;-xs$A6z=2e~vzV3~A9h+qf3FQ7~nX>}4jpAfB$NLEZ>7k)Q)h1FE6aOeDS` z@mJ*zg2{z(K<&QVYlOeUP~=#SZq%J@3W{ZJCJxZyE}`2cB1v*YM= zXvhgvzW+3iiLkr@rNMvSpQdPl-puyP52unc(ZV7%bUCCXru?mg4hPCal++kkhFUd}U>I7SP$ld~SMsGfza9dw@2%>kt$eHYCdUPw4Bh-&?NT zH`=dyW$-fKIj{A`6F6#nUK>IFaXO$AoF%sDMuf)l>hAnyKbD{$=Wi=y=L6@xTeC(L zU@#+*?D+{kAZ4S~^fItKWh>wI0LJRcgD;eqJ(wH&q9QW>nt$RfwDUWzIGTqPc*53t zNq>rotc~1fH1ChZJGU(|A2z84=vN9#{tp;B@=b=E%k@DXP6)%;bb z-VPJJOyO+DxDl4Uyu*pe%Y&&q$`PpIKF+mUmLp%&q3%xG{nBZ?)7BN1e)Dp*&6wIW z{3((Er-_Yb=gNe5U?|spq3DS18~w=0RlmqeWMdM*@$2|&dGHVZ+FuXd3r4 ziTI9xBX9Y{5McmSUd$pxe2me5@IyhKh(3wb>jZx!zJc@Vw`^j?qRo#n{v-MU3z76s z^A8v!0EA1~gt&#E$)yb>r#r7}4n}t2s=ei4TeW=?4xt@5dHqLU9|_|?09>|R>+}^L z`b#3+D}FB=Pl<0ou22#BxBub)mj2;C{I_R0FgIB2#DnrE&g-91}s zyjt|6gq@7AMG(gNs^>(5a2(x>ZpKp*6zzaxQchL=T?d!dGEE8<{~I?ZKs9hBX-~r` zES+1nrS*!@lW@Tcs;zc6l&jKUb7De=&F^bxSnLFo3;l5zln+k|nXSc#HiNYk<6aau zE!rsQc`AWM^VoB2OTk6}q8mo+6UiI|S#4d6EIYZwNXXrhCk8*8bx|lJ_^zERY#8g3 ze3)q6aHVv=%rm!lvzvZA!Oha2tDx3`=q)cY!jGXtvla4vv|!wL#`vOvcE;23d8$9j z5c^E_%DBR#2f`8IhguZ!2RChjRtl3Vng1e{>;rfFOlVq^H~IAr@or9;Ve&N*T`t&U zBG@52L&*)>;JW%b1o(xm!cs3g*7Dm3VkX{y$6ef)XbP-Y~j-UE}LK5(seePv`fZ^1@2jHwp zzwY3(Uj*M_>PdB^@5SK{E^+wkhMC%>^V%FS2+kH0HUSQ{&HZ95Vx59wevAo^qq}qF z8)a_FRWM!^6%lR~8NgDFeQ{$%_U!GmGZWct88u zUX%yFnP1ANJ<%f=e2d4up%A`Ib3W!l&PIOJF&>wkBIAu}FQ&w(l1X9tpBY{m(7!_e z!@u))=>PP8{6EvTZ_i!ze4}`Mt6_bkA^oGxSAbdl-q$~^WPkPRU(w(FJAaq{{eS=e z0a$iPQf(S{#XXUg$$Br zG^*?9Bi<|IQkc_Cn?c3TavP*QnGuVP4yq>uH0O0f0u1_wkj`az)8cK%^)cC) zfD1LyI)7V@hJ%T4%JY^V7#s-ltU4Amz!62Kz#zu{lt6)zts=0}bwPX+T1RRxBJj!1{{bwcYHfek*o0cz&`PnvO&5@MqB6dQ9XanQ#v ze*M#iL~&Xe&xjj5gAiQNI9)pVze6u!xy9Yt{wnq3n91Y_@F^V1buwsS=);l+m8{2b zeDCno;6AfZ-4_n`-`Gp!%N`=Jcu8#|jV z{CghEFs|&?UJP{~I$WB3(35D)4@|ZoJ(bq-Lr^k|6Omu8IhT6RMYNWi?-X%Z$H7tG z1`3;ol93QB9MvE{4T|qq931}=km&#VfBC=BuYUEbg*9(JJl8e{{(bd%KEI_+3VDBc zQ8y=ExPJfl|2yap}-SN78Z_UoiUvp#g${AvhA z$|T`83;H1we2L@z;-5qA;xc~tHF%%%7I*^bak3@}CTwT}Z^1Yzm|LRBDoH*pvi)Lh z&S=Koamcxck3;JB)Qm~K;nR~v{o%d#Mv*up02S)fIyT*L;~>-+Bo*#F?p$OR&)Sjn zXW0MS^7EEcHu^Co+CS!pi5o~IQ_||4?dpEu4}BM>Br&cXr8Iv_t&NGG0Z9ZBrQROY z)G^hF3!_Ks$`!pF?u&AhY}~;_T6iKbY(@xTtz%R5jd3)g7WAY#69H|(jR+i7nHd8c zK1%(rupJJ`rqd@({=Y0kO#BgFe$t{>LXGmI-tqxNy1(LM?|xWie=8!Py0s(ywGj18 ze_kvA1rm+vE71>%lmXKXrZDcZ;^)0ATr?G!utT!dY+CKoj%XPspRQkwGlx5Fe*|8u<9Mge*g?Q?;Weav0?l;?ydE z_dYXyR!VA>CLzgizuC8(127oE53PH3**1$4cK1a=tI7L^C(~;hLSfUv7PD*%S5-5f z*yyybWW%O{^`$UAEQa^LHyayJ5PMV;(!-xHJr00c9u#FXQ5SR3Q*=?{o$xe;ZXmeO z?5}G)pF4F3{m=j2|APMT5C8DJnPC6Et$*LXeS4pPc%7Vh{e9OzSN*H+YFjY28S#|& zX2rYyC-{Hx5B>rD`d7bxE0(wJUMxQMz_oITgfV@!`DAU)YZx{((%bZKIwIIYbtoL| znv$3H)v@#me~J2VKpbVr2)A*Tp?1^hmu}#6*(1|lHgg8_K9LRmm8!ad%L?%aezWR4 znAdA1OMe1EV;e@M18MjPkw?C;j#*5?KZ$b##(A071zwq`9Dx!4qjiD_fIO!3R^dIj zc{^^jz3W*&)X9Kf$48JWhJTJ=Qb-Qa6Ik&6eBeCrI?5G@B4~zJlKQKcrr@`2dp9oNfHLg743pm@;|At zpo2PUaRbM}kYVl)=rdWI9qZ`gz9EfSnW|q8H{7@dQ($88AvQ7a{IBr%Fo+w16!i8$ zXHMf=;BiuEJVMinOM4*Re*uxxI`mFF~c89zq|PGyP~#9F%xdPpLu9e38F}C_lvZ+5`#o3 z7_v^2?IdE4bsQPoAee$Rvf2~_xAu_K%l?=-r8Jv`ewuX`t|z7Pb>2G<^$A!dw%oH zif`|&BfEa;#)abg3HJAX@Av56{5Su{8FvySg4gsdgK%5`t zfFpi;)d^#a5TAg3HX=Bn)q?$f$XUZ%Sx z#-EN`67rpldJ($T!zZ@R@KfG0|0N2;{|*zo+3CH-Lo~<(xZK#{aR;Y~y4>sQl6ddT zVO_;zxSFTu_1i6)BiQrB+8t*$X z*aWacaA3dK|7O1#A$_SI-$vAV@?>?nQCIK9oW3EEy8u`?9_=pd3)IavqZoX~UDzv$ zV7MO2q^To{PK89XD&I0~;jDct0yANDHW~1bbwDGv!Tgy*qSSvlpeoa2{A=NcA)?MG zy3G(b*cRL~K+>+Onh!oi?l+>M0}h*TaHCe42D!*fSilm6PPQnfRF`5vWW7Vb_+X=N z_sDc+YGRUIqXl^TS}^hZue|wS@%(6UhZtnr|EHTj{KMbS-}+ns+IvGm|Gn^h+b0~} zn-9;p!GM4DG{rg<@$?fDS}$v};&1=$|3Q*hkGSuV*T%hu0)E{ zH8*VwhlFExHdb*@xpEOp+l~(Y22uh!^#FIl8zeg8Zo^4S9xqW|Y~r38`2+^|GTJ`a zF`*pD8xeI!Vm>L8Av+@yHTXLOMEIt>S`?>mQ5Pi)e^AMRpYJnl;!3EwhaSlR?87m% zWtJ;rEIU)-VSv41TsigZO%?fYqb0cP5CzHoGBJ4*mx2b5(pVDEKb?FGPBBExH2dRx z@8JPQ-8iNn#ylr_B$~ok{3WF*8%TgEo`NWgD2Z@+E}^t@dJLOvh)UN8@0`8w!Efvd zJ}=;~smxT?25%PZml3?pagYy`pbN9~UKH^Dh=MVg*k!p> z#C6O`KKkeD&%g0M`Zvgri>vI9_ri@IaEjo~*2Dbc!Rb|u{rB}t9lv-mY-;Vz7_>X} zx+RJ}hCYbZ6#Af${QkMubvnaga$ig(RuBA<>5GU;lnJ!EBVvY;POe?|gue?BM7V&z zCaO+v`M^v6&pa1Vor(4_B2Fvr+yv&$m&s!yXi7X0nCy5uA>eiS)Mt!bnylmLA<8@_ zO-e~HMD64s=$p(;GaS+p@ToWB5*;XXS09jsid!99mkwWcQp(=f6$vPFi`9t)A4N@O z(sF{hiXe z>AOy#&hibF9C~E*b;%8}yNu|6%Wn6EK>>F48FY&X76`c9w77r(`m?e8U2<<^?*F( zUlXdQJFYT7S6*B2;{7~9B1p?8*{KGhG@((m2(W>SNx<7FjJoS!K&TN=0+Nt|;D;oJ z)lp&~c02Hde8)B%w;8+af5`qLVVDLZPIRS}4v8oO8#^?OqI9TG%v>*(Y-L3S=G51t zM(iG6bD=RzzrS1wovnfGhpa!^B-eNhmBmX@ZpTMQ_e!P;&&7a?r`OT$cy6ajLUNb> zSIbxN3H*0m3FT{dMBu_kQ(z^oM`+N9)Nkxu@zo z^Xii#{!Ng_FPOgJ#NfG{M5iU+b|}7oMpP$6cJv%{nZs3WNvX8q?Y~YHPBF$VZGoxj zHdDh0Va8oOLVSu8oY-5agjf74iK1-;_^UAZQmKtUOj~C4Dd!;mTq^^98PfH0(dB4+ z!u~kn&Oyu0sZGkt@MKQ3UlptUMPg;m^N28Q#OB3@NdgYj?R*O2=s6Vdu<;OOe?h%qzBsKhGLDt={SgXBXp@I1 zcgyKnJ4uqJ&>wPPhMVtm?5*;^4g&Vc!%9Yz>m)hE>Kj#y3#|!9n6Oe3NLJs-TRnk+ zKNo29rTKDqPvu;41`xc4L65|raCo#*n9vxCyf3@?1p`D3_5Q?g4U8m1OnFI;M64s6 zMf|96$1+91fdKH4=Uq7ONU8+9&Gp9x5pq)}O&z6nDgF7-civ!{XlJ_3B(Y5z=%>j6 zgHkEIe<(nQ8+Y`)=Ifi@ws#nVV~i4ZDf_ zTUg0j5Ap8s&c*xRTPLP+F@y_rA<s zO^f5V5?2>>>ZammD z<#qj7uYTYdop%xO=^aY=zJ)mt50hDTUD`)alm3+3ICraC)A50ms;{&3mdTG~RD#Sz z(Bcj4WWV8C;kyfzNSO{ zDK@ge7#KDPaKrFM)IKeNSeK^Gl!g5}n`^GZZz0v#B!V$l2P2@%gJR=(1dyp@NJ?-- z)yR`ErsRXw@zG@-+rv~|)3Dxy2tGcnKAzL_Xg=|I#{rEi$^r9Blq{T(0lQBVMl=OO zYquG$lNC3VI!V&(K8mA1j}`olD@)1MHhoxxOI^wtPC%4hV=8y@mEvYRro>b@SFW?m zuFVqa2p&d3k_LuJ153V#CvH?pP#Hxa!9hozC_kT*;GH(hSii3o3$G)R?ty(a4E^?Dh# zmBw7TVksl!i+jAjVKN!;%b-?Gs`@<#e^}tB2M{0ID{2M^>0tY#ojBNjs+$?RE51g7 zyl7sM&F||A%lJFj{t#Cv9I+(D8xaV+dV!%SkRV=b%yf#K@F?Q`|NHv6b)u&llzv_` zn+_}?OB_r|QSV>Fcz3El%CTkP@6&znidtWXKQs31N(EA0yC3{52@? z??E5)3=j9X!5}r(6`J#_Ch+SG?_2n3$sn_$Q@i>}x$qa_idigfObaj%TCqWOj)a>e zK~72f1fL?+r9wZpZxgxAc*{qY55P6HYihu|j1B}Awfkp^C-=H@c~DJ=oSmk%A(*ah z&ktSIpM_H&Ni-zU;1mWt{3Ytgl~bAI%JL(8ZtwW#frd2KJoKIT&$4G42Dg34l5?Xp z;{g=S7kmu%E^S!{U0cE>n-z2G0oP=nmY=J7PCN=#n;=|ZmJYE2&TmX71|<7oIaP6zy;6Z^{2~P|b#uUG!|Sy)I*sz%>zkBMN-y2%7%~OO zI80+&rP%iNOEp=W0Itde*9Ds6*VizU;JBB|^3h0ryL^5ewLC)s{fcRgTP3^O29 zou6_kA^pKYyseX18rX^2kd;3wkq`A#Y(*%dTj^mIy^Ec$UkGxkeKYa1SaUxnl8Kq` zQR`SP?0V2o=RE~RRTXxOEIb2=fT*)im}Icmg+9{jHxrudF%@Yqot&Ke&;&Elx=MCh zcfygF#*b!te%Z}1vB<9uNkzP`#OEN|ws}l@9Y80xVJ>#Nt_nW^;q{Dz^Xr&B6Fi;f z$i{AaFZQ>L_Ebdtmn+^2@{RvDfA9zIO^Jo)1(1LCgA((k2-Xn>oRbv&65+Ry!q0Y^ ztUqb>xpjcwIaFE5$5Vlw9Og$E5b)KFg#sp50xmKIFOl;GaR#Gvi8Zu0&c|wAT&EJ^ zQCIPe^YK#fGjSXg9x-#m2MWP4e8~(j>BGCaS!LhC0wt}D zscm7617!{BUPZrUp(ZaR6>pf(CRxq)`jrjkFi1{WdF#K=swZ}zX4J!uZJZHpiGd%` z&uimDo&m~+fFuG1UNJ_1G@2~L74VPqDyqW?0g6fh{^t77k*Iax%ye=^E7KT84USAB zM@W~Wc@cWN$M1-&Oc`moV){U!vCYuq}#C6h*ILS`0c|S}V zJxnAIUCa(B%o-7C+Tyf65*&&pSs z3ij(1(>Y7h1NR^+9ZSq1FbCk~#2ad*i?OiZ0jx=j=eq{##u&dJp2|-gtIy+h$7U6u5v0^N3HeGtI zKV!a+2PwSqi>Wv|VRen{LZI%zRBp$%G8PQ9PWRHotXx3qVmYX&m1Ba*E^#G0_UrDA zFDBcFXki&*5Bhfa@9OWM3)|ZOcd_RooKPhkVeUhHeRB86Qzsu1oaAHb^@ld;Xr6Gj zVEH6MB#aMJDUVZ>&tLT$2^{($OMWLwQF3%{NpQPXApea53j~nPJ&3}IQmZ4PvbnJ9 z-ebeo7vykzaKbPzlda|5_U^wY1A!Bn!ypthQFa7y2v|=>YzN(xwulokOrG)j@!a*7L;F%}wnY$O_LGYuH`+R6SECSJw8sQP!7rhyQM^5b0w3Xy z93Sp~bh#2g!wm4ZO_zPS`#bfUh)!j;XxK~I}&V!BE5W4%2QAha+11pDPnUQ+gECt_rh<9V#!Ph{> zC;FJnH_|7_WRu$Dob2-0lL(5Zuil#$dtsy-5;jRluYM5ls^1fMFZ_S{_x$!PO|9Z{A?aQ`7XPbE51c8x!Pkn-j^6OR#w7AG8Z^UyA!|{N37dTmS zl@}5%)0uNm@dyL-W4BaTIPAEll2m0wDy^r}Am7N!=E*}s^dAZQWYc56!1qZ#9Nk8e zTVOpf;$%`zZ1Gafp{J7L0qIbt*>%jtMG)rZivj*9cpca*bPHI<9nH@mWjtJJfG6JK$Byb zs8771(-DXd08*Ja>91u90O2KffdpAMba8?$nKQGf1ht6s-IE$&OI1Kps>9$RsT z1e*M`fTO`g`R0^>*_9znoBqpn{`!O{4C(lv;@{qg5T~uJ7$*X4Z}_MCA53+!59xra z{BYSd#Jri>rVNtxH^vS4U`5cB!~>x<)vxx+36JVSO+`71i8AR@kxiV_*hUWNL2F!SB9lWgV*>F6Bo)kFA<$s z1*xQg>y*RkuVN}Pc>W9UM`cr$=Yx`cDzKy1F`XB7vJO03oGHdr3i0o-ExvI|OE*#v z64dLEvpN{0011GrJUafrbIJw_uh=1Gd@w;-ulSm%bqEg-qA}QFzMM9dC<)P}8zrb7 z5=YcII}x1&(ybm#Fl)Sc>0Ul=0*i?7m2BeWi!rC=Y0_uaWxYcdEz5f6Kab4r-YQyXp4}9o^ z{7ii&`Kjr5qhyt<9nn-A0-k4`s-nWTC$_KUV4F&iU-2|SAXUo}Vk|p^Bgb43j$d{7^N#EO0gJzcSA^oR&Bd)e@ne1Xa?)do)UCmz2^nAa;Gzj*!X#`_mTC>&X@R;{-2G0LYb4{&FpK0Q1|!bY)5_HQ^ z-Y`KV>JwE?V7?i-^zDv`zOL7ehSl_xOhw%*A;lG_FN#;F0?F{VlN1|s+eAB;iO)$6 z>H5lD3T!wy{5QAzf2cA8)nYh^YWSAE2XDbHh#Jj8JSGV<)3 z5Zv&T$;U_tkwx8xhLoG!XD(9iV89BcyN{gq%Iva?$2S*L0=gI2FpTw{LM7NrbDvuW zq!Xg}Er$)u>ExNE-h<|vcFZe54yeNGQ+#&!&UcK-(#z%(ry}7>z0*B5#^Nb6Q2{kHvfm;P#HiSqOj`M?ac5Q(HZlc027l;Y3m-@*h8t$0eQA1mbN}>dEa)gJb6+ zC*vco6nmJW0fpxzwg%Zc*3&TD1{K;3=n183s@HU?FUF@na=VDm3A_4ymw(5cESnP7 zdi~45kLgM*Gt9}0kw)ZGapJtdbMHEaj*TTGAPf*R@UGzL9tU%d4TQd7v7sNY+#SMk zQ`xTw{ItM){r#pt&56HEAw>GkhVov#e0%?W!7n`WeqG|*w{JF~!BZLfzPu{qzxc2I zOF#xPW7@!t4dvxkr|-V!C+zHFxeEP~%O-T>smguh8ROPi&r^@U{YylB=%)k?25l8qnT8nVug>3>R2OGczcs!_jwVF zKdx!T6p|}Jhbh(&pLDr!<16w14i&a4-vp6j|99>FkgMrI`|xVRtZs`%Fqy~cwl=%n z>$BAQq7EZBs@P6cN-9QG3#uILhW!&l>RmV}sBP#<#f>eeUZ0c+{zfP^Q9~i}@@%}d zkJfQ?Wz0G(TnKo0xb-<~knur-)Q+UZIgm|g4l)8<8OH*y7{{8wwN5BBht#9lZeck| zmB}I|EOqWzad4_RX_5o(>ppyWEr}CpTHji+oC)!dwvtFUpOCUKm%(#(&eR;f@Q6L& z3lHHL?818bGC2SThYb=$?)YGt&PHD?=)qkSQ&QaWp>91HJ~B177tc|2TrR#UL3?7B81#WttE_?Y0*!%Jye7&|B!B_t z(3h*&?KSr4bT_4g@WTT#@Do;Y;JAjAskdNCE{Zn=?+}f#Z8F?PktpfTiOAt9x`2e5 z7-$X^=t*K$C#rJk@zh(KDeUS=w}~P^w~Jm18x)fM%Y?@pDaq?eyf@G!3;0PpaqbM- zC#Z0|&1#6&Q(}E;4@u_)S7^ZO|gg?edx&#+ts^O1boi)sxPYzFjX)VzAs~Zwl7-GLz;53== z`1{_kc*E;!5r6upe@egq`@bIiXUJ%j*( z$#juYPxy8Maq!|euh`g>A4ScWLH(qm?4P2v%*-jfGF)eEaeP&#zJ?*-XG6ij16rZq z#=nGmeIFwJdPXz|M|jPrLR3DS%KEDp`+k4VL`mx=d6=suUt4tG3n8!pve@vkNjkB? zQ1$(6u(d=HquXfEJ8s2C)J5099+A6!%T3!<_#Wz?8|DrU0Hrj3xCT5{Gg^uNp&HZ4 zHXC-G&`~;ZDW{vTQuv!V=NLa4>u5U6LCV9hQJ?P_P5?=8z%VRj5j}*-^?Q^dlq(;S zo3`z&mfPk&8nyW~DM`?nFXO3}c-qDB?!KC1U}#aDqt)@Dfxm85b8Xlg4}GYXu+cDh z7|tsw&TlY7V18rDr}v1iHlywpr#3KKC=%GLk7WOE)Hs9fnxG(V=&tf$s7tXI6o~F1 zO^7i3Pm*ypQQ+?DqT4GcOh)i;5JLhy9&6$PDJjVT9i$;ZN+K-c%1JX)@&DOmSD$Dp zU1lFlsTXxN*}8uY?GLC!+o4=&*UeD0g&B(*-RBHV)EkQZUu)*1V5S%|_z&BUMJny$ z)zzmnY7YIprqZYZo}V3Y=o5QLz(Wa=snaVL9y-hvc!=%NMo4$vD_uyAbd*+)9-A>S+1V5TC$%tvfM@0^%G#Wiwmj!e1evB z9c4qkyiYJ--<_{0Ob#3tsVSnIV^k$CmFssAxlvJBd^VyDKeB1OlJT}GU#}^^gVykb zQ{WpDxOt$?#Cvh6Y3sG%`cMAT|K$C8!|UJcq=R1Ly}pjI?j_W{UJZF|ZhU)w+xOp~ zuK=zm{n?-W+0y6sPt%8xZSdQxAH=@bE9=9RIsvvZnwMWc(#H5xd=!65_518vI+qss z%lqj!*)`jkS2jvu6DTh;OB|0pMibG*z zWGhB2S5cT?2s*kAFHt{pIkc4%CY%O1iL}CI1i*WQfCJ{vkv4Srt!w<$-+4hW*3pjzKMw3Paf~W#N#Y+%(!U&XN884oU(S6_scELo<{6qL!)Ao!{xD*w zE`@Ak(Z;>dmx8X!2}FwZe(yYXauE_iSn z-{Zf-gSJd~o(*5l0csZ}*k9m9F5s_|Y0_slue~!(@7KFL%4GdiVD1MKBY)4E+(l^i z*g*ui)&&>$E_tQKsa;|$oOOyBp^M3S_qu*k%qiZcxhdt$gf=`VfRGL;f@mDSdoE|V zwl1e5xHPt4qeV9XSnZ{GM}6c;Hktg#|M(vp{Ca&uHxs_SY1WO2XWX=SehYn{;@_k| zxIg=|e@6e&fBYXs>G0S95iGRyFKji5%c)O_-=E3&sq))XyxokXI*KP- zJfs)lDP3AbHL-s3{a}Xx$W%8NBweO_6eFS{#d(?bC-^%oaBvY8NbLM2hR-r^0k-_v zDF;tk=AeK7pIubgXyga?zNUX0c~+a}z5t^eeio0(wzy$K4a+Jb{zc&GHfQIUN+z1s z9d>E(pMc%dY(@KUYSX+5I?y~+=a6K5D9-?-x#l`5X%Z4OA|+QPXbX5GVi75O{qIHD z6E~?Th-&o={$yb635$U)sMb0Z70NjWgmqJ@hlO~>k^Hm4m(7$<%sCDTxP*w}w~{Da zn|aViN{q>Uz+xB~1l&3P6WnH+rp=LggXI7ZeOkO$#nhK3j}ev7jy^eU6wE~~+oa*D z))CYT+)ry{yk>xvHi&bt+~zgEjO=Yk%sb=oH|NM+?Nw-hVxzBfuuo!%M!OdLnllpv z_@u~^hw#f}mcDag$tq~|EE#SxNSPcs-}tFoAD}+M1 zV||lf$8ah|4)-CO?Z(co0!j>C1%O+L1uRIEM{TKpHEG)1u<_I`cG94hH^Uj~>4FO^ zcl0bI#hw}B+`rcl-Qh(jo-73%IjwM_CoRr<8xCJC9dczP3x66<5TC@p(L-w{d0Q+i z4Myu$FWJw=xN>Ij7$c8}Vjt=zdm0Df$N*U~lN`rDLXc!?ma|*7rT3Y>XkP3-6!~AX z_wUiaWk-D&SoQ1MuiH|;A8LbIQn!PIP)iJN91M1N7{eeO1GC0pV7zS4nprFMIOBMn z#4vF}GImx%>@is@D+d2z9D`RR?0^Es2xFvRBbk7aT3`twsny+5Kh#pITe`QO_gnd% zb9U|hsoGWhobT^G`nL3|?%(~MvmaHpYgg6YyUsrQC@#Y%75_VL&mf|*OF)eo+qo-? zQa$fsUcj8wT?I#T{{8oVgr0u-X}bFAs~b0(H2eZEDI`i z&Xp*{d?011bHqmhF1t&ij_K&nq{yi7KKjs+_kWn-xA7D3Z`)ruW7}V$lPW4&{Vxt1 z3<%48^T%92YZ_{o4(N4Z6*qc*6`{0Gw^=Xx)0j5TfS^qbbAl!?F)XMYygeB^d(v=PMW#G#yf^Y?ydOa1jS)@O*R>Bj$( zCEeHx%H@2K-c5f;SVgxvSEme}kK@j9CZLtA5`}2H0os;2Mp`KXD68e2(^h9tNKqvA z_5?+ObW099+ywWi$*j`i)`pRCM3E<7_6W8k9_gY%c@R6W?En{cw{KyVe!;*auEeDB zs(oYiDBwzbTG1VEdf6EbIxk9epcZ3ClI%V9Z`}e4EV*IN4mM~rBZ14h0|^7Qwz;wF zY4B?*+qx3e(Y9!NBq%FLTY9{k6;IvIpuB9se}HF}03j}L>JxMkb27G;XwB|71O7))xk+@%i-%ba__KhmH`ZKoGI~M-K!ka zYZ$Fw|C$Hxkoe8t{LLc&h0FTvy9;L2W|BVPYG3haW1tYZK}bxXB6@YOjsGA|a=VW@ zWuQ*&2x*U8IuONqK&M_D)G2<4VMfg`DEg;1I(pQK5r`dM7Tr54y4V&ATt5u`DbiIUve5_W0${k7BB0aE-ufSLLalwG22mSIP(fP(*Uiv@sMvC$&sJfZ zjyMp!C!mB*RGtn>M-vrib?3)91~e=m;{I%nG1eX|7V$}|-2paT=eCXBQBSHpDboo{ zixR?<>tg_Stf_KKb%1EkG??`oM;2@%^uV#{ZI zdNmWu?~fpQj*|}L2^R`8eIdKh6Ece_Txdmkdd*P3<4)7L&+|{d?JgWLWz6K(cu%l@ z$n)gX$r?5zp2f;y6s7Jbqx#yO%Fk&OLq zY)QMZdK5HJsAGQ<4ZU5lg)NYIOzU~8c2;|7i!P^!C2e_M+3M1k({kWxNz>LC+S8@VQW_S~@4%9@1)(m2v`qDU+_yb3A_?xz z_)g+9fg0~j5R~9bmdHMJlTK(6Rmt<1>TIR3=Ep5jT8s^%J-V7h@o(M4(jc93L~t1A-)B)RtjDqgLL~DCI<; zon+>#J%~|2Z=;<^NI)#D{Y@@pbk=*j-hw@h>e7b#TY!`6H6BK^``(ahBRs4dxQO5RgddY_l#Kw*id5 z+5vZ>$y7w#FQ6xUQ5`%=E_|e zZ3GAkKO;BiO3$mfUrO%R(j(vmfwJn6nf{6xGde*P5qCaGIy|zGPXXi{$+_H{V2@81 zauex>Ma*E)7GHQBMJ(<6-Qbd(tyS%)MG!C5JiG8~4xujc(8}s)rC8Vn4a5v&0z$77 zna&uEsun&wku_elJ!pKTeNkXV+hit_2EA1>oXU#j%&MSg(iVl^v85E&Nn~6Ge|566 zJmo^6inXf%N05~Q57Ht(VQC1|LH@)JJko5%>u}eno~C#^K!4m8lFMO_cJg_|RCR5- z*F(l+Cp~_Fyb{&E|Ni^wBlmx#1rcP|?Q*DxR{G$CJ5yqJu0KEGSKslg<~s^ zkhE7Yj=1gSn9A=2cN&&2LhQADL6ll`mC;pq2RJn0YU)v-sxrO>}97(d-q>o>zFa9IdSWE#(;(XngbK!ba0dJ3wf5D{yZq4WiixGR@H3#A(4UPMu^)x#ot2IzMlyXE_|^ zwbw9ge#c!jLBqn4K7#X=en2<*3mZJfmjVaZKCQJ+gpJ=*T}E$PJ)`L>m?5aKo2TSl zeP-33y5pev>$c5b47Ij40Nvs0!s_lqk=_{Et7|aF5dxn?X0B{RU)$&(A&Ain94VAv z6Yes7sQjZ|ffALrR0lOMe+mM^wvaSIsncWE$cCWt=Y4?kB4l}%%+`T_@1&{^bbVC? zB~YKJXN19F+g@pW!Zr0eYWec^AMo7e`}UG6>(f1W&zaFcUZeX6^N3%6XVZJ@L5du< zOuG9>-VyjVC0MIJA=}N)f8%l#-KANkmfxdVPmJrLoWbS{>M7eIrtfgg64@${3_z?a zDUBAKtO_>Qst9K^T^((&5fIRAUB@AhMDSiBI5_;bwqKfKu<;9$p82vU1_l2<)== zL=68%Ih5v0kSdfzHoVXEf`w9JyvLz_H}ch^wxF%-z|XPr0J>A_sn4T@=)4#OiuN;s zKz*Nnbj4Bir&F=Fz3pxE%rnnS3w$vFhN7D#C^6-V9++5z7NyRDOr!)VWV-#p2R=aW z`R(6cUK5#jKT4L~6M@KR3#$!HXlaV?w-{u+!6BPyi~n@t=D0C#%Du z`(*d4*X7Ua#dNbf-f~FBV=msr1{UC%H@cReIgBgN-6z7V2cXsncJP>d_%=O z0vTMRkBN-N06Yz@zvxdXxb}q69+b8Q8OTna0=5O}*mQRG&8``d<=Z?nTAB$!zzE{= z>P)Mo7AT)Fb&NM%p=73A5qU+=yqi}VG%9grn9SCGBw4&g|D=X(n)C)~mSH|0b`5Dh z1}Q9`Oc->IcN%c#bJ)x!tPW5A?dn`&K_oTeK{anF&t&EtWcAPn8>rg+qSLMqQ(Xb4 zsrH~av|n~;xUODlajS=R?Ud9+W*qMoCk@iPlg`>Bpnj1q>NN$|5~J)OsxKSxIhlp_ zu?0plXtdBr#WZ9ze5*!1D*?@jZi8+7kMh9<7VE8L_ z(DmDt<_;~zuC3?`sqsD2gwDb|4%(b6pwwQ%1)T@`1lgU7pcu_WucSIuvZmVTc6pB9TN-YMHj@VljOoYZcPh^*RODe&>$WVHxlcdTM(GH*uP*)YzI8Z$!k^G(T(^WEnqu(@5TkxttwLK zwVFqKi2Y@g$>wSN{3gTBO$-Xr$TpVG1gf`h@9r);BpQwBlbr8(=R2lzA-L>%kmZT{ z5^R_Q5BofPonzjaFzu>X&XSml^7L1p)bkThJVC$o_Fr0_7Q%sy%NWE}Fh?juw=KTD z+E*6r8VspVAL|05Oy0@%Av+ze@)bA!7a{vE3y62>Y6HD#k}+y&b-SXBJ+$yKf7Vp_ zVuA%v`%+AMl>+Nau{9}QPqBZsyg+$nvJA{Mz*>3J9ZLd2@oc8=13}CQ>qT>ZCcU{?L z(>h;Kv5B+a7VKzewBRcjT##Vkt7iqAQ7vS(GEp9AFDOwo*$o{R=!JRG0R zxEO@Wsq~Ec>SmZ^lP&|s*z+zy9)%{D<3ry<7BvU_VoCetIWpdurikTHl5!)rMdaJr z?rf07w}arWod&Dzsci>7bq?0KPA9vFzpZY2`EOd;k_ko{p7OTgp<3OayN-Y2tkO|VR(bUhqg6D1u`IALs<;)+LZR1rMY8W+Ma1uxn_OrI>{}BT_Yg!gxiD?iCr1=>!9;ySkr%ZiC^s4+9D89N+7vGQ7z(rJ0d8XwQBP(*wZ*Zd^!lW?YofTbSx!f`Ka7 zH)PvV-2?DLCaqwObc3v)VQd5ZPQGSZq&N3eKBY-bp!y`Ped^6>1(*6)U3n$ldh4z9 z$}hZ&uDbdvx#^~x=+voGbC6-bXk!z|Xix5@NCdaQ#7uy7*Tg42@dQPaC-7d}0fhv#r;7V%kujxleAR8t>qX2gu2%K#o4ear#${O$x z_*`lC32IfPX5Zu|Y1+fkC*t#gIxk0Bz(4(^q&2>?-Dh9ZjEO9(fT(*V@k=OAJno zg05h)ek21PT+5)&A$Wb-XyEl_+0l&h*X-WckNP|71Am{<++tG;ppVcp)*tj#{B_&M zM}(nj|3KSw%JsiKT_C^lfqH9o7{SgWf*#Rv+ZV*jkqDKVB>4g;nCyc^j(f?ETMTuv zP&9llW;I}R1QEWQ?zl}>D@A&m2_!58Dwi}=5=;td$2QERoQ=cMs9i}?Htb+0YsVRW zR!Dk&dtSw~BdQZ5F6GOt6}Qvkg2u=i^C&j2h>YgzAz=%@M1C&_c|7{01+JG%`=nA2 zk(zOe4Z4JLH0p=U2z(oT;_~fyBK!IHewTz$lSIagPbb=}5}kXC`erR{gmaX)1(&ZI z!6p~6!b^tNm(S8;&lB4-QO;|GYt*h#&wxh8cSgI;t(?t9h?WQ1FdUl@cjLzR-;P5` z+bOmf#a7>A>^h>u)BI|^*#yhk2s8cSD@1_cB7}t$Eb6y>o#O*hk(S6(@t`cNJA_1C|gUiPw=&1XTd8TJd_DN?~*ukjR&c;bmq z)AP?iHy58{2>YBfXU@nYk37l`J@ml*#f>S5;9qNMPpy|33+BxMj3Z~!Q`sXfuXVKd z_&HYu@)}@Ya|(25U=%egP%7N*B+fDO{E5l<%=- z`VXqt@!#$IDQT($4S~D$_8+ip?MNVx$;@EurDL*2jhgOsvsowGUQ?K2&+6rCY4b4=7NNtG@KAoaTsI$V_=1wXVUBpq`fjaWE78Ug zA6T;aHhsj8zZF}wo6v%TV#=88^SVLE^EB4wrXQ_uA~HEXOega4X#Fk$o<`B@M!Tkv z&#|pqVc~A+SXVOWcV!dh_TR6KeED9-*5)GHVO`=-2*qhe)p?9EA~CAa zwSL|Fw?Q=T0KDq~i4GxLr~Q-}4j2Ls$d1qGDM=($%R;Qga}M~Ytg$AjPO&SB@+^{s zNz2Wu;ou;HPNtz2ih>h%8#1OVUVlMbY;7Y%i+3lxKpBmg%u`ChJ6CIq4!jTXP;ARH z?#bA|xcWduyTW@v^!tEC*j^g@m{bl>pH}es`eC~d$RF_)*9QusHJTYXm_Lp2{7gTOxO-m3kk{#+CNls_1D0b zTc{lsKY&qU^$pYA5x1w>%Nrb0UsI{?EEoBqCBNd1SJ0c@_$Ipj_S@_5ywhNXNR{Vw zcf}Q__{JM=n1dBd8W4kCWT!0lgK`(z-K;tMjn3T z|os8MDB-r@%>G~YOQ)pPY>F$W5vd9zxX?6>`l84)*HYom7{0Mz3 zQ5e8C)r~$zUe)qMn3oy!L6CWoQSo3>kyT@Ri6T{e6{SZ#{T=~bqC7a^>8XFI9T3kO zLMyCw6Z_OYrnQk{Lmzsil%X5T9KQ~+WZ4DFf+l*HfO!oe=ILED1JJrXO~fItj+IOI z+JdRquvuw)k7)6?vg0<5l(ugpwjN8b1(dLL1oSDW!+m}?-hp!|eyxs+ozepBK%p0V zie;^BYs5L!A*~hNTfn~Y{nGkp`}_cOK#RX$3{B)W3J+R5J>R`X02E?940I~2$Fv3`Ek>##w8c`zPuN_oh)?C!@A}xF*M@f@Yv8tR85bTJ z;V@|7s`~&?E#ee!x}7GOJ7)wS!5#T$Z)n>MrPQBU5jyg%U~w=5nos7#2*; z$^QKo{UxthERJ?160xR3#@`FJrj##j)j9-#4y&sq|8ZhWJMOrnc5>B;8Lbd@fYe44?*kHa%{A9dfr;r=4&B`_9d^mjKmR;E_uO-G_UWf5 zqFf&Q%h4RXpm`TXX}**ogW16L-uvD|@Bg>|mY&<=S-!xryeiXt@51L5rG5Iw4hA0T zD=Dn)Z-EUZg#jFq13GWm7q*(Zc^z{b9_fhG08j>zQ{4>S109GURb+}xv)Q`1=2D{5 zLbV^e0A*4M$8-PCSP8K!Uu~?STq@&c387}6f^8f%)Henw#Pa4m-7F$Gz)NA*VUSId zyoR*}!MOaZV**2J%rA9$qvg3@aE@TBRz`u4QMoK|5EoOkn}^ec0!2y)24G+zR@AW9}lh@ zuf9(1O?}`mmSJXRmP>8H7{-n7rj=Nwtu5PFp#vR7$<-yOCF^xU{-qD&3f8?x2; zTtGN}K%&D$`54cmYW7)k9R#>-;Yaj`ure;;nJnD6L0?=4Wo~vzjROVQ!1tOc$M?2| zcc#5_a%@4{dC(r6^ytxUM^HFgz>Mr5b2Zih#?HI`;sOz#4laDVCx*mml=R669sL5BVL@jCk@8@`w{1A`?)slUAw< zZ_)=kXY$4AY(mdYC~$D>^~v9-eFwH`f)xT~9pcPgMfCMc5B2qkLMXFo#A6S5Vv!DVNJoH=ubf9aS08J#_QX6E^vv{&Gc6b&!@ zT(J*^?5h4P>|Vjk2eqX9r#mi|FMC+sLNE(pv3+35YrnzR&?!m+_%x2ZKko}~#(R7K zjl%#S3L+E&+4NGiV;62#Cz44$1A#p7AxUkGa}(o+}*c5>Zdr>ol?z?MFX=+TOvY97&ATesoz zbYuM)c^>bbwrE!7gO)nMqg+>Fi%S&Y)$#}m~)dW&rwO^GtPwlDmE zZ}ad@TrG06J&lepkWmJse)j3!Si-hT-wzo+?}$AftXRtm^-t}H2KL|6G^qDC(`pZQ zGHZT_)7am_L@nonRoykU-~pb4f}=;IL+!@ai@t7vchSNyw11~3e&HC}4pSIx#iyS> zP(g+dw*#c>6i3W37ULw!b&7iiY^D)X>-oh$S(`k9{qXo1%!$1>-h1!@NlcuVGC1xSS6`0tX$G&xBSkC#&mxi5`x?RKM3yMwq%P*WiRXxOiXhx#ymvx4-?D z_=!(HQTl<3X%`GL(I(`HpLwSSiP7iz*KB#i(Lqul6g_p1y0$jH@}c#-UuJXVu{60k z#Q{Z8Te#p*X-MlyjFyEo18Lad!Paxpx8{@jvf{9FLNfA~^*XS5qJRb`M9V*~7c~@q%P#mY7 z9~>5VaC%5IoFBAwE5CmEs@Kgs)I_aO`lMSJqiiFjhRIxhu^d|Y;|7n`>K!Wo!|P?v z$oC1z6!V0_U{6jzmT~PvEu!ERYPAhf)is;6Z58;p;;Q4Sb0vpBR4*_J>CNA+8HsRe z6F1{Rz{rJNLg1Tjzg6tamX6l}9cI9X_nWFZM*}(aigWkB)Xi|O$$X8`G8mT2^OcoZ z2*PB+PqKVe41R1POyM}N_AJ5=k|q1};P{Q~#)F^@BXLHm<6RAJ_(fbHUjcrbZ{?)2 zjU(4Ma8cKel&~CE=Xzl5VXnXwH5a5BPRj}pSze3RT3tv|%_uA`j?xzmAElP?c zxOd`q&EB3|aYh>&V{IbVKOf*we(X+z)<-CVeyc9t1MLBLJsXwL>j*D93>i)c?4&6ktje7gZ!D{y~P@-5@gu+l)+W{&A`pAXf=)G?BgQf3Fs-CZ)xTavl z8@}WX70*nzoJBdEU@26u72OoDD10q(2^4D4r8(H3fh?!UQut)$pWD-2H7IG#US8-} zm?C=ax##H@{^`&2*|TTcD;8YzcwYHar8#{~gk{Owak*x9DhPpfiC! z2q>D{_bc_L$lTWUhXPt$9W$$bHi}j>c!vT$TJ)KS@YSAXQ)@cmS{E&V!t&TBVih^| zn64fjQ`ttarHxy0jO+MTva4(7Kz-dtt@ZVx?6qL4bX_upi210#@4kZ=ywDKo{#N=e z%|8CZv_Pk8^#rFJ(*Z=_9oA;28qFvAF)Nyz>KKCS8hviSY&$>mB8pFa*Fin+bX8T^ zy9i)oOyJU)|G4fYfTQkF$VTF;`dUZAcF#V~4UWt2qDVTiY)^k0#r70Wnt{O&jy>#n zUT>N>CR@7U1nG*ab^u5q3lG{}hCiH~C}F?7T!1+{S%5k(B(2#ckHqGZOf9(1^RsHaA1pUY#)OW_=J+EEq($M=%Eyv`WWX~ zDi4NhZB-E))$QfQbGH8PdqriePlsEZ8t+Wbk*kAOJFA3k11dg!^4y4$O4Xzz0@v4d z;$81Oe>gx%l|g;FR_NBn9`ssesbch!8fiRr<)T3hesKKyJ`nhpkw}9 z%Fk19na-J*&YzG)QZffXWIhP<$}3Ot*M99Esy0%2t-(RAdU2$?K_)v8-|y5Wc155X zjL^MD=#x6VbYqg5waz$#WAo^EY&F@4(&Bc8|iXbQ3iQKU|Ywk zB;={1Yekp#EPqBSb073A@M9)UhcvJN$h%;n=W)>;uGgbBR$F#5!-Wz0gR1u>2gf*^))+pI@hDy?Zc2W9*5 z4*x)6gn>cy_L?UShs7HOBRIUQNakOz)D{~F`a)n}kN|yc2s=8C{y}{a5xNi%NsrxK z#;hNG5tp40*55jbD))x`2K}WTWtV1{=O$}3SaI~L9a?1eSvfvfQ_=gh^5sIK=6pAA1wLX2$u zHTB@9snIafhNI>^;(FEd5E32RTMIgw_>y-RuB|f3g0i-5Z%8VCK|2<#?XO|FA-3OJ3xxbu?@AwRAYSC!6i=sb zOVJ|3e+zb?FKFqA$y1}+{z^eCtqjKc>I!*Vb2e95CYJ`}Q4diUl?Q=fP)p}}ubKdx z?tx8#D{I41gM5FW-Dh=C8!;CLU|dt`LZe=XH=*RO2oR3Df)fT1YSIPo8v=`jF$Ii3${7J0t_I_yaDN^P;d#`cGW6foamWG3S3iS?^~R}d3D;s_$AcEO;w#C`)hWn1e_FY z>12zKt*;jB103jyD0<3jY}u0#WpBAyf)kitQcJs*YliWyu}bKx&{-laqH(*^0j@bz z;lSMed_OYC^MUilcRpj_1%M;pfThDOyuo?BpLI|>MC{mL>#_UAKkiDJ$^C$S)>+;K z_mw1|4HV3HBz*~q`9L3;U~UtBuyMqT3mKgtRJ(VEXUaKRbrDojv}$j=QvWqOSV-lF zla@ZXWPf|WFb6xH!!}|*j(uLoGJ2&PlXXhilExbW_x2DZAqo00pjdM>2-GQw5!39-MJ;avRigZ%t4Hq_C9bi z2QT*UhBv%{>h@Jxc5zfg*M1kBBi0LQuV*#8!am;Z8V;(ym2IaG8GA5+hJvX2O!Uo6 z&bLtAm0cIKyB?p_IR@VQcGNP7%@ODwIUi51ji^+}Ludm`{c97_qpW!qkr=PKq_9CP z{?5u}2fpn{);2$|0xS&Je0A-MV*wnk9L0Pt>rup9{8?QT(Fz)AR z(v|S#SAjQV`hcXAG%XVL74-w&(5A=)x;h>%ARN@aDUJaaKM-eI3U!jA`i=vwpMYS# zjOb!Okm`;Fy~lYwl{u9Ng+bFUkL|pv%`uqR>46{LB;eh2w{PE|+YMi)K@7f){02A^ zh`6lbMdt6Q^Ne+7K!MfLvB6QP=(|DOmDi_W(LzIDWLOkb$T03M5A`*&(qJ40s%w{E zv;qUHmK6JTGf8K_;f4y8*Kbk9Tpp?=>j)hTbjL7t&jaJLG?iw;X7%g$36Glv%IFUFLACc@=LH` z*)c&a5HZ0NB#@oy`}$RkDX6dn4Cd9e?radXu_b6B=&R}vX@G*Jpu?OzzpgR8rm+Mo z=9|L%v@2tIRpgdiZkdBBwRhEDfdI^0bUI$5e1gPpdll#;d&pqh!cPQ&4D75bcrs^9 zxGu6j1Jj_O-bXrBaY^GhvZCq}nVQcATvfN&@=)~^@Db4VV;C~v{UV5@uR}U@%{+JC zs&Ifn5F*N6vB;Q6NE#}Wj5I=3jf;EMs0A9Za+R;Q;_?)M@o55f3^Gu$v(rt2*ONe& z)#d;vp+bVTNNX1s?WYro&YKG{w}yUa44`|S65Boy_e&OylPs^+>#?jsQikIa;^dH4 zj8xhT3bqASeA450-Oz&=d3V)adn{F(*O%+lB&nBKc!ZylGO=hm)FV3>et-lS62OP9KCh^6o8{dU;FOmRG z+A)m`2i)Dy<8K+D8E0J#1DJD+TC5ufOS%O2_!l`q#f^(*kJkgPp%_|~IZ(Vt_1QrQ z>Hb~hh)?aNlpP7-;wtJau5}T+xW2MFgXIY5YjTqjJcX@`;Zh8LrFYokh2RA?uqk%s z%i;WOa?jKSSajaF6L6wrdDOaw1p!B!)MHq9Fxj>tFUF3kmj|}1vwtBsnGEo8QU}t| zZrJm})Gt)pVzFZI0hF3oMrLzbhye16qY=R!GTd2QGzwaWU{$2y^}5}ME@JgsbX%yk zmaL3iB_m%qP_xS?3cJdrXK6ycKWa}>oo+~PuSZTdG!QUt9=PI&Yk=w2TW{6iLs|6K z9SmZ3Gc3V{g@nwnW$c3!qB|(&K*bWxSb`e$H4fqOo`sZq(%lsE>ln1WQn4%ctig;q z5FwQ(DuIaw_qpXP2`RfY{=gS}LH%s!+y^^>er03F41&R@)22Te1Q~V^+aAJl%n&@V z`MB#Eju9xl*#6QiYl)!8Wg=_q*zuU*-E*D%%0Qo06kZRVs`Y=|cxY{p!QwV8qTUy5 zu^L}wOBr{KF6JmGH|H_n*8!k#3gbobY&qx{_IS$AP8vOGXDKzdg}TWi z_;snfgov=H7fXYpT@Yof%@n|2?#0zK%>!CdPf7BNc!gp;ZPy!g;CukO+t3c=XpDof z4PYqjiu;CDj>_m#eo7WXxT>C-3PTETl^kR<6C0C?1z`y9x?WBq+h>=)T&Idlg1m4A&44C z5ZW6GP4&*j$w(qa0*Kx?`n&|t2?Vd(M}4;GI*S3aA_MW54h8Sf84N4ya2dLHatJiZ zw#_{-I+%H1z2{4xq?V_`Om)(z7Ep1xw&DT~*$#sVoc9YmJ|oB3i9uz_&q+YsgoZeJCH=cE9w|IXrIpD zwnd?ZsJ8vKiH*XzGcRx6LnjxErQO3 zd;Ec|*aD4kAMor05%!fFt&2LWdg2?0wS>sj$2=xV>jrvLelgHNl-R%P)6V{#pV@Bz zJ$gdC6oW(w;$FQ7L}Bs?ZQbF9I{LZKX|A#>i}zDko}wFXxPc((Fu$U)Yr7Jb9T7tH zl?&Ygv0H)#R9?5JCQ@F&AbldFI~hdJf{^7Ujfve7xKNy;!3TXsWB%Jod98!^T;;0- zLdxG1RB2zSXI8ihGJ#e2A6!TWr(lEs# zWmtqp_U{OCW?Wev5QlVp%PNY7D6^8t;{E8Xw;YrS%0=18!j3FEI5F__i(ZHqEPM93 z{n`xBEAHD;(OR7{G$`oUqT|*ExK^*nCDwjp(_UqX-Sn49+e2=u_)^mFf6sWr-U9 z_5lia^=etTrieG{O^K6oR<2_5Xi&bJyHV>C!#z{KxgFY_c?XpbdwR}4`uU#PTHgll z*HjK9XgGdNCsk&g)HWelMF2U}m}$`!tr{~0G8T)n+Hkonhfu4 zD?0`#3_i;Hs2`YG5QAMwE#YxViW~ELJ`9(TF>jlmWa~zLE_utfE_X3-(y2tNNBsar zCQTeiKBd30b%P>F3d)eN9OzKo*DZhhJUX%a=&ATk7S3c%1 zaLj>;IhfJP=q?RCk3veoK@D~aOz3MKT;duNzCC^Tst3(@rr?B}E3a@||MKhG?ugRq zQUtQ3PdP`+lVz1r30$7U9(cNtVOlODAj z{!zqzS>{}4J$;{6%Zv4!8$lxGJLG6A4%C)P1C3r4d?VZPftOCVgL=WokH#Rq>>{~d z2*9yDT#p@!ul#aEhwOY2%Zo!`x=*a!-3|#;-J&$y2zWl~HGTkF1ukoekx{4lcJQ|W zfk53NF91RdolHVEPo@>7#x3qfM<Yao%c2= zL4BVouAT<#s*S;<3wI%z0hN2al<;g=5Sx!EBDWa%4ty1)_5}#2O;)rVU1V(7D|?nRX&fzsnacnlPqd!?|<% zwT+#oE$RDUgtn#Zc3|BpQD60_K?XS7lIkIubN0Di`|RlQm5)-Ud}ZU@3+MFEO)9T` z&^6awv&fKDR$LclJ9syO>sEE9^4iCevvVEGrOEgrY&PIIklv&qGtx)z{H@QcI|xOe zj*7wGg{A5WY2m+(Q(*n2$PRU|q3rBe)2kQ?yWTGRoj@>0ZI^J)VIo0+uo`8e&SUs| z1kP_c_>GL&f18_}pgO=Zs6>v4?`Ndn22kpSPk_7p`U!*Xf)XcBU=8(0z_v~CD4jun z%5U__S_%yh38@#H4Tv%{G8MD#Jk0+=}R)cg{b*z zirRr`fZxyu{v~0n+Hf#XxmjOfe$ZpuRAu{2tkFmaWfqfrDvVcnl*|ReP>RAqD z80~sC`IN(P7rH$Jj!TkkYV9zKZd&)4*riO=1?m=C;Lvsrp#wpVnRjTVOdq!Fx*GK* z%C!Z4oeu~Z3f#Q2ouiIQj{_!z94m$d2oii3OlLD>sC|_$uac2QX*rjtQZJrSR_J?d z5und*<;CG?3%&M~p21ie1$16@sfddL>4!1#j5-Szz>76GX$Pi7ZB6~LP#?YHo*$D> zJ+IYo37+>rmU#glJ$|28vjpsZ^0_un<{K97nibi<*Z7D( zsjXrXClJ3gBo6lY7X}(e4cz#ki$Gn(VCmWtM6o4Ft&a*LrXB_$IH5@?g*-hhgSseW z0th;>!T^E^;(-Y3uA`E!+#WFuoQ|=b6|-4a1jSd|g>9-jpx5AA>OG{j1wzz^Zr6%f z-9mqdc4m9b_L&qOrh085-k=SF%MO;)r%#iqD|rJA&Z<BCCEeQ#4br; z>~QQet-}_X_^J-4xU^7B5(NzNa+ZBn%u_#RUvr8{c=1Zas*rtM15H53i&74sx=z7Y zvl~6qTg`W3MxE=Vg365dE`3c+!v4WLhhYBMk!^cq&QV^beoj{zXrnqAyZ3ynz?^QF zpi!oF;&2e<=8`%Q_+{I#m|kzi;u5iGYi6*Ly$a`BKL_m0$WW*cf>CapBgneS&QBz- zcwFGzY$PhY0bi{zfq#mc5R}2X!BISL17y8za&zn12;bQmz$scOAmM0Mu8q}jpB_cC zqqG(1#>PVn*Y*|OI4h7@v-R|Lg3)@gmJ*nhFn4A})EfZiFV{<|PR+5V1}3QF;b*b% zX`-z0ryZe4efX& zZEv63pU1#mUA*q)LoR)s7V$L#$r9P=t1DO^d{Qj;X)!zg)iC)G}fk-Yu|vL*2C`b`nA4Z?wE0g|IJ<*q+9J&9&Fka&Y7l z`jPVP)6$gM4ln*WAfSF-u%YuYFU7-1(d&|5f+TZ@U>}^|BR-mTDa?6gu_OC5K1b)I zyl63>El~`N=K$mqW#t+eC~}`lUvcVGlbZ&Gv=32XC;rcg5mIdd++#pUW!vzRf!g&T zC=#$~D8TG05z=b*#0(=O-(EAIdIRe{5F`tkKCTs=*YQpZ`%@^O ziM%nTD-21lDX8o5Bq%Yj*+O2;wR9mhxZjBzBgFNc?@S`|$>KSgVvuG0UpF)^>iPHgOk)KJbvB^o@1wkzEM&$X zb$ZJk{f@{;o^@$KdT*JlG>k71D#v`bw06_9ewP;~cp1lb;M+6o$55hvou-)sA9ED; zXxc+tyw+mf%a*a?9hQ;1<%_s9r5h7INMR(oA2~ivsGf`|xB6wmL3OgB$x_jqCrT1* zId$bxDFx|tY{v`QwsoFpeS+_od{Q_L*(=xDX6h8G(*$T&{e?M+&VMj{(THsaqPkBSc+vkX?TI8>9&`UGYm_&y}h2V&r3Fhq0A1AkSQ#B$GF9{o)Hi zdOObp`&uggFwhxxG%MQY>ppRn=QMT0zN@{?OS6BjrOGQhqCQ@Gyy--Hb)o^D@v=pCy$4oZ>SWV7fa0Ht z=O>Jl+;?@ceneNEx^fo7bl_w;x1q>X^h}BQ)rxw4gZe+JI~)p?@>LD0yB(ID73F-0 z`Wnab8ph1lv{PcY&=n0doRf39D?;ik850lX>l&4|>?(fcX?p#n_Rk#7II4Dcbj48} zgR74{YW*Ur%<9|0K5H9MA4;c~fIRsztd0NpK0Xy0w`(bUHQ5?p&uGh1^i>E_7oOlS zM%76|1(HC42(GgMI8eTN$aayD9sXOz8mJ=`ucSUqgBTF#B797sV>?=enC5WbH0U#S z1E{qZy=IUVIv}}cE3VoW}*zE2AAJN76x#Fa2&7`m~qjW9#_9;SQr40@KMjb z&PBxM3E7~L^y(TqLrnMj?g?YLh%v`cn!hHLs9rR2@IvtSk?Li2vH{blXFPhG(ct50 zdVIb=WTm{P&$KQREdMzH-dTIW+mb?SbJ`U$w65w|+JywK5`I`RDyw4;5k=E-biYyj z7R&j-1J3`9+6mx}-2O=5-XD2Jh=w+F3YkUyz^5@i*2v;5_f0UsVSRF-#hsKQsU>hM zyOgciwp^1_bZ$>ZN=6MH2-SACrk2SXIwS&aTv{b1xch=OLnFfmpMC$I2ep-NB7Hb0 z&Xk1hq{)m2rS084D8I$lCUVZ*>M5xa&oH9q*gC1MXH4tsB_zQ8ZZ2R*11Hn-^P_zw{q$xL?R*#|3$u}Vu~^;7 zP_CumLdMn^qgQl^~^wQecO^>vbEJm7MsL#;V`(6%C)8LF>soU5B8>T4;>7elUW z#xUVMA{RVq`{|ZeNY#=03RBT1LD>@S#;~1I`@`9d;J-$ZU_X@`yXGAr<j+Y!M%kHnpC#Q?-|F9vr{%SZy) zwhhvH#hg3a>2^!#jaI-)tt+K&zp0?4^$LRo=yijCXpSxe`JjRdkqiu0hK8lqF-{jqv821`1v&7Feu6#! ziUj!rPc59f;Y1n~AR$@u#dL-54X+>8NB8ezXItVIenw>=WwR-KUz=`td)!4x_JkMOv(wYk^O8LRyCd(BiP!KELnOyRfIBkBScrVNo; z;EtH8c{F$*)Z?q1v_Yc+ny*(9Q!7#!ss2g&< z$2-fnxceA7g7JrQVKhNUAti3B|!^5DpjU0ZZPW#eJNYQEmZ2v z<+O>XuDF7(Som5BPcqp_-Jv*<){ktctuw+c;KO9 zink+y%R~=#s1y_}juA}VL$~@I!|7c_!vso^x6D4WPFqPkG6)b~J7 zxCLA|p84zq(**IH|9J{=z%~Ac4KCjKaBufx7 zJ=*ZiUmfgn*cR)Y;fQw$c=mIUXzmk%E_$+Z-X~@dl}QJMfQBUHLfV<$xw^)YORvKu zEA|freK1I0L1_IYrV$#1)EYvTFau+2uU0gil+H7StQ>ck4nqn#KW2I6A}6V%B8#@B zRo3h#6Z^Tp>H6xcuhyW#^!*BbHDeA2D8^|A#k{zmKgqcWYd*|U53StQ*E?o$*4HR@ z?XwQD7}&yLE5G1Bw-d8?UFw&QgVaMT^#Dse)KbTbdB?@6a)yLR>v#R+r}|W;-t93; zZeQ;1yT6mZ{_Fn^z2X&LL$};=FMZ`#{?I~;sCG!TV)>DmIaKTHd#WfC?az zL(w9q)Qhgx+i2_6kc&V~3x82Ws6O9ihoP^Dn-p z9r0Ur6dCPCFz>yK*Qnz*2+9+y{EC$)k?~PNj?^YtDa_lDId|OIiwx?H@=|)z)9!9Y ztZ!+Sc9n-z?`b{TgR&IxPM+ti-&`M3Bghqp)i1=dly2z)42x+r;FnT+{=eZD)f;y0 zN?2zK46Wn~*}l!R+oR1SmcbSYZ-H7K25Lt0CUOTVLP4#oZd_XLVb9_37OT!QOnpSm=!3U^DA&t)KtuH{VA9A>`T&8rmbNn*h;a9le~rv9KepLFrFDSi zI5G1*&X21-ino8Ki$~=5SF~MT3=<(eJEFdvQLd-p!a~0s8d=ylw+~S0V*Z5}UeKq< zGl43L-SmHbZDI~o%o`!7ykY^zWbE;&%$E%l)AhWAVR=!i?5dEmQ$Uxii+4NXdO$#V zO+$d^D#LT-Tnn|=soJ@+tHW!{T&noe>442^uDy-E^i6+h4niPYfBoG{4H!chaA+Q2 zEv(udc+ntbf{Y_aLH53MLT~hV9T|OuZ#X|@%bPM?)7BgSQ8+M*vnTJYT$&{0$g}G0 ztN490N05#cxZ;XR(`Uh_3qUZvBCC9dCCfP4K>?)j4}MjzQVXak^<# z%yYm}XVduW)5zg={NZ@kiLKx{)$Tlpl&1xQXL#QsV#>Q;+(b)9C3Zp{YTrcxuUHrm zAlf*PaDuPHfD>#2O@wr{^MS)MWthyw#w(H`u^A+}wq+KyIJL2s(N7fEO_oZ!P*6{n z&tj3zDS2KdsKN{C4Ae!BAc1@tIFF)&H8w)MGd!+S?Leq~$wVlAhYR}5`ygB_pi>i5 zxc7=2C`glb&}Yb7VE?1ZqW5ct6VO}JCXRhz=4FPm4*0c(-ClQ4J<+oY?5hyKa0k5u z=yU+0nW%e2nH#oN#X&zdYiplD^??YB?=aX}LtXfMExujd@)a$fdN0ZK-yM`{HCh|Z zE-z-I*UOhR=UoTOn-I&FEXvyzG9Ub?Wk7g~?(vZewOu1R%7j0r&vMz{?F(9N~E2ppGvb`4L|*sjt^KB$R(}emmpE z`~)w&Ih{7XoA+mpgF5cArRk7!KF%z1h`#H|@dNoa_?(UZJO?DOYdD~E03Z{3Z$O|Z z9$2-chy<c$2E--kme9Qz3Mh{E;yFEiit@JvorjpfxHbgV|!zLY{8Crjx zP5Kh(`xC25P@W3UONs1BF5<9jgXL~lo*K8Os#=#|OE*f)&iJDD=LI4+co-@6>#|}n zja=|VCIr8=OvPC;+0}741@nTj!0^b9PYU#ueAhRkxbU-P1)3RkH4sz2{SFfp&o0n6 zfj0VPq71aZO;CUvUbAKpY*{kmXonaBC9{ZbX{{c5v|gW{{$*zZ#c-C(+?Evg@$kdCklPFckn*X*Y&?IHoS;p zJ^>mop}M?k8(4<(`cYabYb>njq6GDZHcYYVSH8I~&yJ>_N=ltiNKmOKE)+29Wk!yd z(HKQU(F4(pzT$}Zh?dr?IHNLK-Qh~Ry79l1JC%E-13Z-s(z6aRGl&d{4t#C`EA6_? zb>l_)#e~pU#NJ2SxoZI~12M=#HukmzY3*N~ZurGf%WE=ha_XLR6J)cyHyG`cl&vjb z!tu7RuIt+N;KzT3&YXSB z>5I@Szu@1a>#n_{6T6m2n$v)A*S`GeYi~EWCwSmvzcL?E*IKkl=oNc;UVr^-DjtQ0 zAA2`F`P7Gr*-Gvev;1E}q;lW|)5DLxi=KMwBi%&r6?bTPNZzM^@>B1l$M=7gZXt8) z&2OMvZ+U~+%`?elDm&GY;#{?_r}DS#{}A^CQ`t{G@jgN+PlL-XH!b*)#|fVN%tz>v zN8e4}Kqua(HhWmgzl*#dx_(&x-DJaKJonYq#~z;E_tgU*`{!NyQvMs$^8P90wMqF& zH$VK*pEF9be6`^;-TkUJ$K~(;IY?P5PEXhS@>0sbt=w8Gd+opTrznCCeDJ5j^w<77 z-&^s1;P-yI&KCT8`fV}q(rMZiFuhhWe}ZBPPRwxtS@xLE%PHM8P9w2Q+L#5s zTNq$H#8U$s+CJr5@z0W|6Drbx2wivG9rQI{{r{uWr*Ee<_>S-RU+Dx+-~>+K1Ww=t zw!<|4d49iMID7Wd`TFVo@8gf(x4(ako_z8{OQC4Vt#C-Npe>^Mx@&9m5uIp(D=X!) zykH%SD0SDwDO+nKp*4`Wd=~G}ybWY@!G(8vE%0bqaDpls-ZbO9K(b#MS12=LvxCBv z8QlX!PiFJrMx@Q|eQjJ3Vkk50Vu9;16>JB_Iy7%u;N0-?yXpBCKD%EKf26B>?-&2s zy5L5b0ur|U%fjq+fAIfG5okc71q&9_xO*Qki10u7v41f;mL`>jPFDV*QXV>bDgUat z{NtaxZy#WIlt`@9UbSCL;)1)Cf8SD`Yye{lNMz;DKK*FH+IG?0xepjb3*sqw@zj$a zt_PzlTT_7Hu3&*X1xK{M5T?cXU0>Lj|G>V#G$2uBy1$rspMppp z%{Rs6-~Yh{zi~YS{0~0#EA;3bFsKygf3JV}Yr+NeRDKCa*Z{zKc_Or!DPRzl|Kum{ zn*$7f%s9OdPG#jEECCF3xmo$Cf9HS%FhAM)?vIqhe9Iod!dS9ZhAIEeTUlLZ;7(&aY?es-|+??p_bGSON#r857!!!aL6&-%!jG zvQnph#FOWDJ?4PK*{9FWXGSamj25K9K!lDjQ@Jmk0+t(s5hrj0CvXBMZ~`ZAI85u9 z>F@OEJ8Ih9_xy?ZcUl)rL5T+*_+|R!9He-(RU8EgFfR)_^iN-NSj!)kb#$_&DbDTL zp^BPt%2J>K$~Ev&2e=*yFU5xMD_-{PhVh8&52eYg@5U_g+B2i@~0>r{3=Gui6`~E_83$FX$#izVF}u#Js@uUGV%1 zXDEVc=fbXP$`)&E<+klgQRdrXo>xldil6gi`*DpIAM_b>_~<=@~!0~ z|H^~n*(kP!7F0nDYcZ7U47Nnsu=TY8~WK! zRF?TQj2F%+AJZX}yzJ7M@C)yDx@CPzpI@8c<*0@h5K&)H>J=fJTY?njfXgbc8O?4! zGGh6J=T3AlYz;UpU-FQro_dNOee}^e{nYeI%8X+PTeKmrSl^342_Ap^y>oEl!3Tf2n_7jhB935XGFq2uYg4f-AD7`khdB;9jIN`Z zd<}i*{-0Z3 zx&|&Dc<7&ZW&L6k-?N`~PEgPiT_hNu_J0%28NajKDG;LJh(?9xZR}TG`7(oLN}qOk zAU(aBwy{s!;+GVzHKr%Z((xnnQ}R!I>b{Qusk~Q>rTnkVyDe;xLd@$LOwGQgS1pjX z9z^!!XFhDYS?Nr#a#UPuPWyl6-4W7j(j)uwPtW+RW=y*mA`_c;O?>dDJ2hQ)J7DV4 zifPvb$xqk%t^9pdgBH~EBf~$vQsH@=u0OL+|G)=-nmkP9$(5bzKed-zT>itRoWitg zB`QD3jKF273wwH{ylH^s_}lKC!chq{O?sY}_pQb9b}X2-D_UsEVar2);&-SX;4 z`84UnAAgwdzyBj85UXF|(DO=)=!D#^k-dNW@XyXZ_cgEiPFjPXd)xn+tj{1iB#;>l z*L@z5Q5}6{cR-<|hdT_Jdz@IX>J4~7y~o#m?5jWaMXO3kHgnnen=aEkbAk$8e!1YJ zeuS5>Zh)UC@2`j_#J>yZW4acH{?)M~l7|hZN!J{IjeVixk)P@fA(RstVl@C7$d?2D zJq|BIge^L6rm%quM){+9mf<$WP|%j>d0nW-kY8;%sgtQ}glm*fKo4cTg$CAB)9}wJ z*YGQZX6x`_<%&akxkqW99^$}!E93rzG$Csk{`q2x5U%T`xcX%p!SFj5(=@XBXy`zL zs(XWU8Q2oa+RHhFkuo9yWB-)9&Y=9XhPZ0KF1Yr(+v&Lfuu8mNDqi~!uM_8 z^iw9tFfHC5e)Qe#oCmS*i`$9gSktDzUE~0Rfd}u^$x$*eFvUJBAaO86(qCN&4Dk5h z)$(OPnV~ou+!%qoAZjtD?Ykq6!DHXYtH@g^B?A~QcMR;l&xY*AI)b!ke)qJ0-tv7+P0R>$@6O>`@n>6&lJe0=S>tc z&`HJp)NriKhe_-m*|X0*OTYj7zfYh2%xCH=B?~@0;C0~$canJb_sUm(Bfa*u-xt0< zrZ5F0n%oHV&B|IyhDsj|v$T>%j@hXg>~iUbX2HS>LaQ%C{S`q66JX>BPC7 z3yg$r&DWzK0HOJ|iDP$}0W>1&ch580;Z~KacyOyA_4FzMbNm(xrTmb*M@=* zul*3>b-?5IGV(fLeueq~3~wL7a4b&y4%*X|_w*fZ%28T51$0c=kT#dLf`^7ztqmsnI3D4_scz2#Saw$w!*|B;S+PqvLYAy$bqJep}awbOr!$3U0#IW?^ z>;B-Mnhz(Oo?b79FFs0mAe?!Pf!nzui?e~xih1#?gDlm{tKFOC6y|r(rBl8e@4Ngp zjqvm?1Y8JQ#+mzHg{YeY;yPxM<5qyAj-+I@SWChzBP(xEo(+JMFUq!_Cr zvFM2h);EK!t5;3U4M6%Ycai|x2sF(~Owmd$ZI)l@qZy$-(7@C`o->3m7<81A;Dj&F zg|}!o#r!G8TwrPh1H+kXLOhU)G1v1Apa+KN~lbY?wE^vIih+J?K?FPDtLh}bZu?ID8 zX-w9HVbg$cw*Y~>nacd?92@e2!M2D>DDTK_n?2+Fs#}=Xs;YZb4thrWZ%q47S8JOc z$+$B-`Rd!PhRtk88fh9+aMPQd_Q^f3{?0k*@b2IGuN(>8 zDw}Bumx&8F;v)a{o;X$d_?ga#_t2<|(>!tmwJ8sSVE9Diz%CwI#Rg;}zfN25z~h6V z?u2$`E8tjZ#0P0xV8ln$lB~SyP_L|hVq?;?fs+CimymE;H*bsQaLeF@_SEBAN=PYD zY@_5#M5)dsfLf=JJQh&TfFaRc9}_}bi2@Np+7aU`4APawI@er%HQjK-4RpsHchKo; zPglQCYOB1;kt)^Klx|y$4Ht-Z_FOxse)^Npz1Z3K9F%zO`RC}fpZP33^5`SVY>-m z!;rv7+J(0g>eIHf)|o@#CpekQm^|@C>gQc*zIm;LgES&Dc1HeyGr9U*1rwef)u30m zFPlKeqJUvU2Za~?Qc@lpjCr(De?Z@z{GUM z#Bcr9-L*PcH8*K5s?(iZZE13QA*x{0-zP`}9J z3(Z|5zRdNyk;HR?vkz$8h2;0*^vnt|Y-;D=xzpllOYm2J`Cp^g-1V*W@|S(#{BHkQ z_rAMdWHppae?&&Wt{ih*%lky8zUQQr=oWj>b*=eJpW=i|3m6_9(^VD7;_D(BLY1f~ zTSh6aJ42}VaIRgE-f_fCjDj4Buy92a`VU~vjC^^2M(H{Tn?9(iOUlxBYzA&B-^DgA z17()*Kt!G67oZ!BgJjyw`R*F~y!dB-t!-2(* z2c>t}{X&adzgk_dcH*#wYFg6HojXTo&YYn~AAO7-|K#KQ3Bc2H+Vq8uQ>U(^<-o{& zx#=8-x>aEQvc}wXvriDwr`FRE5JeI6DB0=MOqsvfG2fNl7c-9CPF{H71)k_X@x&AS z;6o46Lk~W*pNu?C&p-PdRSV#z_u4iMj+pjr?jNB~ee!+u;6uMmci#E6_0_pY9(fmi z?BnmGa$sj<45{xqZ-|^g;=to}sy`62L5X;*LCxuRMW`+JtYC?VWy0ZK?fr;4kVeMh zVI0S>Jxi@-|F|y&1&o{C}DEl&9A+e(hcVY1i%gi!P&D)CEOq)z)4VXJdfU zHq`4v*qp^74L5!!&@>F_Qkc`qw{+LBlGh<$-qG@<`uf;c-qhfwj%*t{Wj12*W`IG5 z_Q1=#_2?yuzEuphL8&ZDTGsnSjI@*)!XkPh!xG}@y4WMVd>}eEV&svdazyr(gE`++ z?lIwxtJ9}X?@99LbU4jj3j&>!|a?1{v?gj#L1&j`4~NS&|2%`IN17|I#E zNuS#EOtXpn&XqQnL0ZuV>ysNU+?}Xcj3mHL$hFHcV_2NIP*#F|_6OW`IHGIBhwn&6 zJVkyp;(MezozAV~XXUeUQM%_XBfaLPGY1*T1?%{;;vTW*jHubYKAYfB8SifBAFgy+u0bB*&D^Y z4bxU&t@|?-jq;}S={1h&4`F(R;{*G@k&10Kf1+50GZ=|<&6Ku^b9rTB$VKsfOcx18 zo{N&S0EHHHX{jKFXrb07^6jZbj|Y&XO~ibd;iU8qwv`JHD@;r$xqr(a`3aLYeZk`W zAN=Y3({lrds-lVdBHLDM-veGMHcj)BRlBjbFW>I)xwNOD6D`kdn?y*5mkq~lvPNX< zXc?j`jUbO{%cvf0bMN_XTvpj}dsPPI>4QEw&q%A6hLyRNj8BV*%IfH9-^TAXC6bDj zoTq{G+x2o4r&GtN)wOxDKxBedK-w}#MBzwdGR2mo)_%(mU3M`De09Ovl_Z)%L?F#R zui>52>nj!Da*4>jnF3y7e|dDowU6|o2BNqenhAl(J}}^RHWAq&rUoBcCZ2myKOZX1 zUfZiEz0Fu(<0aAivzpfJ)|$Qq(%!+xGn|xf-i}tEhK{AsT!p%zgSYS4?j*z5=rOzgm853hG2N&T`F~$X)dBN~w)MGZ%(KmuH#tL- z7`p0y_bLQ}HM8Y<`YXF5+G{E6ko9-!gk+2(&CFnf`FCVIOb1|o-Piq1^BTwWu;9M?{%&1I zjYh`^_nKKoE}7{3%zrDiS2i->4OG_@auZ~P4khAd5!s+eG)ArI7o=?-yr%$u`JxcK zn-=ruV_qXN8JCwFVb%Jd|2MRL6C_cv8uL}yG+823bgI69#NgJ2@$^Q+SI}? zd#%d!!3cZIBI45!MraR&)f0tc9 zRmx^dW0C6278{q~NsXOn;D(F7M5CALMd;{-y6w=q$ei=pQM1Zcq2^^AGxdI&Tz$Iy z!SEO`-TZ~KA=mCI=aR>*npsHrV1!LW)GZ*E4dxx+0=_`;723E!HEP8W0019_zlo+f z{jgpKeUGtO*iVdh!Y(qrzHev+c;%jQ-eXJkWpYgFn{B#%RiieQo9TJ%9I@5JM`5>k zb`h7!Bnl{+%53hn71$#00DQaS*Cb71G;`H9(f}f(fa;w<2l`;_6Y>QTJQ}n8d;?ft z9B5mRKGVZ?`Bz3LXm0?=p6+F`TPrUc%1KZ!y62=GCwOUN{uaKXJYK1j$-wjO+rgCT zbjr_W;HD&1Spvm2gA`L>{stx5DKm}xag??-?|fZ!lHR!quq~g)S(|u;r*e(2peSA$ zu)kIP*Hkx4o9ayKsD~eZ*L?Wp%U=GXR=x`6k2&S`V`H=4W>Wtzv8tYgoWYh``< z`9dEsi1T@*m&5ci^^D#qoymtQ@;ZGTSVxX6RC~04@(rcjpLRY1>akBBs1&cTvQq!n1`I(YlUrxz6xtItTZOf88$J0lm@vh&Nv+Ql6^h0Rq#W9GQ;uveFwn`4tP9NInD=^))Sxpz#Nn~Up!H|pX~F<`Cb?>6PU-E{fveyIzha?n=$iUim6kOxxV5-Xw!1eP5Zeg}r_ zkMq+R^8W8dm;XuCp7*yr%+FRR4v8H8H zJJUXL!+*fDBi$_oqG<-Xv}0*82gHtr=saj|$zKz~2*+CfN|_gD%wymUeH!F>t~l@? zJ=PkSP!#^l7@mbr**CJ^A$wn4|~!W&+GH$C^<6Lc}*QW}4y$%FL3i?MT#W+0gJ*-YL#e6)Oi zw1V@Ne)89qBg*wwl60((_gF7e&oytZ$$tEm1WyKRery)1JCEz*eOJ_sK$PH#+`gyN z`xqa5T4QewM&2ajPzHIJABkYgL@t#l-iHNyhP>VBqTRo?u;j7DUs}*V(U&DXWUAG( zytj_SSHrYS#AmhpunnB-KEUg~=QJ>3aq4|PO=4TUv(^3!4P-=MzFM*+D6z#ykmG4s z5i1kLPD}6D_3<`X4PK~P6<^_>!1)D(e}+)ihuSBlYjy4?yd7cE5JP`}rT*J#FH8;C z=F~(ndQjRT%|{)fLk&daeHnugB(n)3bCw3OrD-Tj0y$&)sCT`#Y|*SiGcB({y4N^% z_`E;$^}I%_Ze=t_?$a_y=MAas_`vc}J*G`V?J6EjTQmP?Tv;Q09673S`%a!43oXWS z$vZ~geVaVq;OPQ8+XTF=uJ?a6F+k_*blt#XTg3|r@+HDKfb+J0Iv(&!9o7D zM`Z$q+cXLFvvrOuYOy0IGxfuKU}Qm{V(%Ad41H%M(9U+@j+jkX|3^k}-v1igtYz%A z2}-VjmX8*AwmO?UP4gOurw17Emz7XEvqWGq$o03qYQiCv?(?D)GP{5|&5;raE6(Zu z3lM7#V5_|WiKHx>Vb$0N_O&kX$@XE@xLBonJaakS2O-Es#fH2^_FeBcI0&;SHjSgI zBjj;&fEsky=q&fRnLyWlo-@skH-C@5nt(@&fd}cSuXHp5F`2Tc;%l0kjsIYhANU*$FsXYozqNDE z1HA5z>_^L|`byT`qx%fE8CT0cUZ>E8l^06#A{uLRrKnDHeF*S?7hi^hay}?=^UbfD zU+ehP6Yr-B4ZL!Hp~3EuxRBJ)i)Zr}M5%hV!jL^F2B_t)e-|9_Q2~aly zj|oR+6vzr^7jCj@XAM&Cr%!tRp|ASS=P2EDfaL^RgA$&j3ti_@8`E*YYhBc%QJohP z_!2R&mCX6D6HQo5W@xv^>8%SVv@IC7G|AuBMOH~TiU<|^pX-%{6xE3`e04;Y6tfYX z`{m|Q$tA#}a0CHZ{Eo)_InB9l|0Nw=Rv#7LINj}JN9IcyP*xk*9o`7DCZ)V-xT?Yx z=bw`*9H$B3Pzem71RLt7P3xpsb)0)GW%z1`TZs-Qb0Y`P9p+Pb>2Qvg7OFQ`Iywa* zy3Y8b&}_}?WYO%Fds61L47jf+J1_-1qT)|YbGjT9b7$+|_n7U1z|OoxpqTho2_ zdfwBzhY}*YkY3|ywQU^B*%wTMTKbP9=FgT!Kl{hMSN@tI4aN~<9)2Se^ZX)j{@Q@b zV$cr}&AxqoyHO8Q`EXyK0$KsfUHeQQJHA4DBQgPvtZm+|53+yCeG2lE#f0&k*c`g^8uk)OUb24P!E570m*LG)FUz- zO_vR2JieR~XDD#A$tDC?en_cI>%|K!nnekvoeNLLNcu7}e*Ie#7QE&D-q-)RIVdr~ z^fiqK9{T5WD6FYTB#iYsv6H(Lzz5z(+UFggSDEu^%Y|^7a*2ewmCX6D6S)+QW(n@b zPCO*Y^+WT>kF044g*?lKGFduz4w_h%-F8tyd6SdK0r@&HQ%prR^c|tIY5FxWj zT-N4CrmTq`t0X>}M{+2>QIblP4K=@l{pr{=25Mi<%U&DC~deLeV$4!3uC0X=XLwU~G`fCqO3 z7(6>b%@mGDN~_{e*+*0^G=FI{TIk#gNJ?!S?-%Aj!PnaVbU4B=YV! zDEd6)Evg?9<%AFt@pX`(Pw($LagBO$jp~Ol{*uTb0O8SNmrHqV-T^f?4DP@ zneM#fYii1Gz2|SwL5ZQ4G;}28y61U-@|bxS3*^B2XrS~e&Ox2yn&rii$;EKGFAC@c znENzy&%STk&@bKoWhPpkt*>dx3alA{^!K=%R3f`H?Pjy^sxuWcibC{89rX3J4)IJ&o0PEO1$k}-+v2V*k83bO*}>|i?oPA^wT`7Bp*#_( z`dU3y(hde~XNW$PleoWuzk2!ru0q5WYB}!TR=+2))ZI<(t_YZL_r+4KO(T6cg6nVX zS;A?jI9g`%O8wC9uQd*XfwrpidZ~7<>BSyeyxq#U>Kx$EdP`7_DkuIku~y>RM(g#( z`G&50+5Gf*kv>?GY1YDXpV7H5q285cuw_8#Rk3$flHlb*8QPYoXlgq#F(|hcJk2#8 zOj)AgE(`Q5lH`r*jS9+!YXl=Qj`8sdPnqhDX68h>`-|=aHFNmYx3=+Rat68!BITuw zbLm668MsSFHM$jJJjI15C>q1e^=HrnU z5n3HE!us}NP-zV!7r|YMFSAKhLj8^kaipOwb~37Tc$MoI`Pgkmivx5&SDw1A=Dz=f zKTV&UUe%D+S#2`tHmO!r>Ud$(~gTf8<0KV;5`~(FP&s8yjXNEIRt_h z%)<$DCzR1N^Y~iTO{l{H0V$(QZN-C=0b6h>U_?-je7TX5gPU1ft>&Bs@UqKqyCk^1 z5<*NIyznl-zrJ>W@c^j};mWi=)pl-_%!}=!a$OeNC@LE-U|?yb4~5)rlbP$K<)U(% z+OVr_vx{;m!540+0`g+2ubt?wg`Mbbk=-Kq!m~;QN3qsB)OMFt>iu|ErB!4pb~{T~ zUX`!y8^DpG1uDE8(Q3FyZ&h%*oa6uwQNs0W%KnFdadjY%m!r{lfh37NsZ z&d{R?!20M-$jcE?T46L_GDvJ4$;z5)VB>Bj9UhEoT}jVdz%P5=h{86lSYHUpP6XXM z{6wqUxS7sHr|E|T zpN@HwO7&KsB>|I~f+j)-ZS(6l?k4vS7Ukq5**%XOb-DTtPeXIs>J zEeiO_l03iGT{_?c%0$01xW8QBa^vT`frGzH@VE-93CEdsY=Dvduab=XSX{}!DVyqC zl%eY}ZYFFFRMcv`1R?y{2DrGX=PRh&ptdktCW{g<$p)8Bp47$Ir{0vbpJ3{$Q(&lD zaY>`&R=|vYjQTHL;1hY}8(p9YL_?dE#F1+Q``H!8BNIcOQ6(X}p4M&%_NcSlC89eh zP*!CA?IAOzNZ*j>t}aujBem^p>veS!9*9tG;QKB8DH*3>>9 z&b%+-`p2EOaR((+7I3iGNBkqjDDP5%m&=RI&v77gCzq6mmyp1oc;fwZ+pYJ`fru-v zxN1IE;(-T#`LgQst-SC}x7;k<9l3ioM5ZU|nS*D;puE zfU#C?NyVpK1ID(tGy5fqN1O`+5m6)*l`Hu=`>#dt9?I7$gE~cr>muM{dz7`&=@|ID z84|5`GtroZp(cZP*R=iE1H*yxIW8~9;xDoPgK=dO`H+yc|FOf{$b|&7N50@7M2ErA z(J6ZQ%U(%WU3HUObM=jcmRO$8b6I#V53(`ZfbS#VTOCw6DG$Fzo`3!fpZ)B|>CDrQ zlpO0Dq5~QcCZ2A-9)0Xldi2ppJ6;8LmQD9Nmw&|jK6?3GboJFY$<_NlVqSX&wWP^>JVf?k-QF8L z_uNx^ULTONXCC2($uA@PTi8}nv*DZuX~1%QeWMN&S|0K`I!wc-gO+2oWseE&xm@Ge zgu!&bUBjS(n`~^~(e^P&R?4pBZ>@*-$YUsUsDt+h!dlKX(p9MZL9KL)vAx#MDV#ML;Bn;?M_R|GVn=_NRBlMWae@)?75XqWWWauaG(PZA^ zj^vE{3EAO~+I479%j;d|A4m32N#3a37M>{JV^j#rv8)#LaO%{xbo;GewvW0=K)L}$*Pq2od~t@b*WrDwBS53b%#H{L`y-gqOu{`Ifl2Y`;~UGIJu zJ^l34tvUuxRQj~|*;D(zx&8JppZf}tOA&tA+#t<2FG}6=g>z=(2EXva)AI@7=U#ZG zrsA?8vW!ejHN9k_x(erP%=H49*Cap8P~J_gfHyGk_ejpcmW8vdwkyY4Y?c*nJLU*Co!@P)yQXG!i4 zmG##0ky@UQs*X$?;kdeU0xw98(_MFc(|rB-<)}dYrf@HiYecw+`;MPOy7x1={AC%-$A(1}@U-)^*Z-J6yKRD+?uO zZIRxXqHbYS`NH!BcsydW>wA+f)a?c3+Bh;g0p!eY!PU2loi4aEvTd}wwPyd0&Ze{^ zea*La`WY37ZdJFrwUPVsc=w9izk0vWy~a!$TemQmXH>P*K!0_0%29i`_4dq7dG}y0 zb#!#aKEQC>enI}|Tw=64YD&HS`s?Y-zwFED!yoxD{pN4|CVldgpQPuXf1b7g6R#IC zy6fsP89Ny2q$S*b_xPWA_8I#0r$0>}{NM-Y`+MJTFFo<;C+OK{pKY`}ieeM5c*WPq zJ{U0#qhQrl5n~H-EA88JqV$IAOHmUg};cr%&I;XU;rKRL-)9YaIa2&Ci^o zsResAng3Pi);(*1d?2XzaUvT^iK! z=@OJrY%8pLETy`@I4%KfWiipf)RLoeTd#Q)ON@a-uKIbfE!QhTVE!Q|GT{a^BTv6 zXn>1&xghkLQEDKWfEQ& zj^);(l%T7mM<{yAf5O^mW{dSY28wXGb%OcSYUQVWJg=^|E9-2xBo|&6lr@p`D+!I% zQmHk$EFB3BPZa@iaO2O*s_@z#uHv+T108F+Z}91b7mqDK-RnCY4kOYgOLA#SuCb#` zTRNKN%aLWNJvANKKe@auX-PV-6csvbriJD8bU-QB+P-?tb+L8b={x6O#FCBr+D|## z(TcPLBNzmX_5+`KC~7*t;(^vb6`7v;zwEj%Fzk!@TlD_gYp^Y4YrHA$(+s+(9#oQ` zqJ$Ns&4$Sxm52b_;?uKxNpNhXAGvl( zXmCRRQkg;qm$8X_Ucz+1 z_s*F|@HoQ3*CQ)`quEi1go85Z?lYz?kf3B+-t<+Cul|a^M&I&{e~<3^!f%`pv+P*$ zp4Q-igjH9N^v_v(26aWGmPPX|#eUPvgx53RIrDAS%Cz7qNh> zF=)XQkV8Act@}Q|Msmc}gTH!-y!&=aOM`ySed);lX`uFzZ`c4F{AT{vfHbw7uQ{#& zCNjaxU-rtP=<}-?rl2$lR_&}4OI^9v!x?r`f59am6EiPIU&lCD|N0)vSA3FOsy|LA=jC+ zVsekC+vTQJ*)q|!on!twKC}9i+k2Eg&@&vaYS|I4D32-bc3!z(OFyKH&`TQD*v~|~ zwf=U9b|XXsj`hZEPPAswz8(YBb=azsTkBw3N9r1xh5yB}qyAEw+gf~S;U#WHpOb)J z+_>wmZ(i1DFCi!aiEKhm6py0dXtoZZSZ#|(y;QJe^0TFGUBHwDO4ruR`5r=SG~2lN z?%~c?e9f%jr?0)8UiU@cyL|sPo0NoVVX5L6=sS_tvVs`ycxK(vt0iOu93osdNJ__U~1rqH)W#bh+5M0(zve=pCi z=8ye39NW0Iqos@WyT(O*!t%%+Kyed~P+v?dE!E zab1RRu*>hjJ2jt&wEU9VJE_Q+80sDl=hwC|E*|9h{4KaS`1NHZ$@4faH~1Vkqn9L1 z2U+TC8q->B`r^h*366S4u{L8`Q^SGjz~s9YwX2eN5_Yj6@|j3G8fd+z@cuX|Qwxq} zN25{SFT%34NQl`?jwt2Fv2y1fUsJE&|9d}0ZLt*K7^#X-EH__f1z&s0F9p>i3+@m| zz(S_y5k$jOEMLFS;f`Kk=X{hL@!~5(5|+cVp2H?TTQ7!aLDvRXN%B=jHiZfM(zZYx zRZEEzzS@qEF)-8_m*=4}Zv+YOfXJm?3{*pU`^i*N^ARVH`RnjWRKU{Kw^WuV>#gIK zb0bXYs1;mZEt04hQ{_Pzvzf@gEu>*84a+V6PH!JfSGV1I>;CD%`+@%PZLWi+_+-}k z(BGBbni~1xcx48QJBL30@sHChUhxWpP)Y~sE{S+tU;3&BlVFd9_9we{X@Z70Paft= z^8lT4**0d_D;0@l8I8$`lmk2&c=qPHAe9*(Tf9iO(&3g?@1>a%o`F+wlC{NX_(8r_ z8*%_(8;(|xXKlv(==uaMbBL6m2KSi$((35Qy=Hk)8F7D@wl*}6@NP+evEg#%>+>BR zc;M~zdfFxNQi7x0R5H`_rsvZ}xVX38%I&^qjbhGQj4H?SPzT3MHS8ovFz|YZ8;xz zzg^ER=t9RLzDOW&WrVpxGS8j*XJ_!DImA0E(z&ZKe@8RuQ!%C2geIm=^hv@V?}5;< zZ2ei+?lm7I$-OuKjr^EIPYXMzMgx{ble*{S6#<&}_?PxD;?m#%yVkaoDY;;D4bb;5 zmPOnAZw*;2f)X+>X)UR3$Br)i7G6(Zd-~v4HCBQ9U!y0Z*{yYOMS{(dsBhWgW6!rZJ(0foh)b*w4jm)~?HGtNET4h#0c(Y6JKf{L1{O}>xWLJM z=lFy27rWyx44kj}IM2|f(;!_|@=xFdE(W}m&yhIVRxFw&M>AGG(ng~+ru*4?aD(%q z&VTZt{xM)}0!bV4{Upl!a6h>+b&uPCNI;n@^=Y!g*m8fv_4m}2C!hK-ojv==3f?4J z0znxeUB$2I957Abp(?jVz4^Z4CJFi~1@fqIJFP5cK8nd3Nna zN5eexcGo&r&&YP$@+n|xV6U01Ogj8>kk=o!+1Cs6JAyf+$ANfSv_eC&^vtHc5fOFD zGux9JFLj;T3nHBFOMr{X*+1v>_UUJzK1)|!b=8uM;!~lridlleRjrNG z>dK$d6K=m{rCkFa7&VO)Cf12% z(;}qZ`3z@F6x8v>Jf!x&BHuL`j_6%1@Zz|bv|f_H$H@1J=#7bj-z|7AK5QBOvN|L6 z$?!78CWoefqLL?YIm7hY#{4=x>1!MJ&`SkQZ7Y_Ictp)av!w+Eb=RDqW^+GFKV+bk zjcJ${;XKqUW?oJ6h{j&emmBfRBP0?a^=Xt4wRO%u{V3h{J3l_}l6d@+_eD%3xCU^X z(I&y6(`k_vwx&yld1lnVS)W0Er3LltL3^1AM7l_nn~z`kVLAt_13v=%q$=Tck>Y!A zhDM8=4C(_xc1s;Zt-LcVW4M*oeDe_v;AIP#`99R?) zg`u#q5_CS6$sABgV@z}REcMXTrUZs${c;1KFDlt+PmAO)dHw6N)AJl+V*jIZLJF?RGn0q@686hRMho#Od{G z7G5_fxnF~|8Lv>Iw*hziq%R<7#3GM|jHpE#%e?Kj+xQ#4;Sbk0oX(y-OTX~*|BQNE z5slW5Lc4va=!nc~ERl)^SkwEhc}Nd+7c;B#6z8yn?0FBszo82bAo9Iye0mdI18>5W z-T=WG{&1HeZSSkCx{szuuHGT`^EnGB@Mz#32|pU_5pQ%oO1m_G-0~n_k}_*j8c8L> zEh}ZV!g1=HzzG}&9)9@O>8`uJX}-So)_dv6CqG0l1=tvn$Yuk6Bpkt-nfr3wCId># zKim;WC+fWrQSQsP!f`yvp_8R({D|7(+Yq%0SAQMSEUlYSb!Ded%6#Y}KRf?rW%60% zXjr*$Ac>k*F@efR#-hZ0Rn-$mOV;UkxUwuid5r+_Wt2}r8<7-m=QrD-5(X)7Jq+!c z^U^u)Qn=PHU9ba_XQ+Vd1*Kir5k%`V2>09dE%j~faAmlOF5#pja|j3lgNNEb_rh!2 z6a={88ZIcg>cP2ffKYlOf93~&fWPhAzSS7p>tFxH^zGmFt@M_+{0#liZ+R;+8*|T% zgWWlyqbr~&EUBk}1O_3blN&-Wuc_{z{{BBrAN}Y@>7DObS)>ZUrL`w)k1|!1;L7sR0U#&5I=N%S_FpsnOOp)*cLa&B}V%8bRd) z(_~NvHSc`;^Ei;nB1_*4BVU@8m%%TV!(V?*gM1#8zx)6tpb&ZMY#0t4T8N)0mT+h8 z6px@$`UqYOH9vvRPk8dl57+CL(!rJ+U)fN|9H5XLMWYclnh-nJ!I7(Qxcu2#2DMOd zKzQ%tlX>?g2jA3e-4K<}+A;Ky5i&%WmE8i74seiveBdGNd!#!UeRMpt{+! zppFIfw@8Z-S2VhXvvlf6X1fIX=bmG8Sr_o+aFg}H02@);2M=+;e zz8XRWM^IPD#37e8fV6ss2n|)QEv_Ab?Aq&tw6++AO2);T26`JqV2Y<=SQoF4WB<$P z5b$b1?QxN1dC5y5rBF7Th2IWzw$e9!lM7k$-NeWfx2ngkP4uGh=v zfg>(@!EV;N?3Pe28}HbDf(ioHs=Y*i?KY^x_T;JRtV zNAi4G%Vt;3v`=jM9FP#|+QwaJgWzv|0PFd~4=t64e|Z`tkwPR4G$&wjU* z^H75yvP3_Xr$|cXEDq`UryyJZ27a?!MICB}m8N%ygR&hTlJj>6pw42O&KKl7^CQSy z;mTOCu2g6S*?gHdFhR6V>vI=)PXbw=r1aGt;kTr9wIBwk7ZiBrP? zvja)ectaf=r6kTN ztk|bRii~*H#a6ptu<8c+vY2Em2gJD(+)7{YB^*hyb6pU(I@5;m(K^TLY~}z)?Tq!_ z_OD+O`ny9NPLvk$PJ`>rP6LRxr6Aezv&edp7vnnu%T;@IgW4N9x8HXA{Ip%+um9)& zCH?O2{@Yoz|I815|2|Oh$LI8K`{UnA|N3A5Mqx*Uxetkz*0Wb#{L)L?B>>D5Hp$D; zk5Q4_V|eweUQJ*B^1r+2>NoimynZ@iJ-^u{;Q zd*1sVy6djHW}e^kp7)H*pUkTwz`C{*PHfm;AMLMqvu#nhm9R=f?5Z0FTiOR={`CAi z1&yw|F8H>&e&@Bl$5W20D8$sT8K}<+wEySm0KIhmY(6MEUl)PY_jsBy*hRoHE%8u%0Lu15qRCeny#aJQBKM&Y$ z-U$y|1mgvG5YZDDK&IA_#$@@jQs)2dn~Y>4C(0)#CgC{D@k-qh zlYR(lOyLI~?e!Y?29IWSM6punRhx~rr|-Q$W4?4z?iWbNr#L>=W~zrk)ISj)TQOn3 zPz|P(JJU~EhfRIt1?9$&%D`!popcx@jUh*^QMcy|M6HYEVf!`idrM=>Y#;Fv#lG(X zLSznNv-MN5uz#g8U0=~?TUKggzU|xoSjF@6zwnFuU_|{KC%@&b|5(nPIoo1LW%0;I z%z;pKlmBwFlp_rQ6#Db8f0bcdgA>3b7J#F_@E869{pgSW=p0bE;l>;0zWvIt`bzrr zr$0?U{^LJRZ+`Qe=e%$DhHs$1^J9O9{>p#!SLR^E+u#27IUq4zPeF`t`Ic{?^lKd} z=0CM_SI&>X_b2SG3bweaBtc-%!0-8A!=R(6)+{d+m6Zrgu=}^n*Z#vX+`kR6h7^JvdVF^e?^V*SL9>H8EGo3AF zHF61Uf|ZZ@vc_EC!5AhWRHxLwS}2cE-iry|Tl+R^8FFbveK$oDjq?Tx?ju3wGr)W? zMH=dU@bJF2(Ac0ze)a`AZ{S4>kJ zK1;QisX$5XZ8B+A6D9|J%Pnu98?L{5cGNe#{5AWumsRI|0$V`#i{EqmzvuP?-_!K| z5ByJ4B6oJ6k%6-Kn*tQCfBhF%Wq8Ls-noC`etN%1|9ZN8zv%t!nKL{EDBkzGzeD7| z->ZvFc+|b@oG^yp1ta`*)Rxq4BERkzs-@a@e&=`20f#9FG3}K2!(ac0=g)Ay@r`e! zANYYEpg;HL{v7?}Kln-d3;)3qxcIrB`?*^E{*T;GfB7%}>sEV!1ASng@*5-y~cS2mbh zgCZG|YoD*96$JWi)rD2H30yxXV|$UM-b16qbgWB`Mu&rJb8xo=CuK7^jnYRlA;(vu zS0;}Jw6>(Bm9sfOR+f@-zJAoPK7C|dXp9+7+L(6&qiJ+@pXGUTiF%G)nGs(vCXD!d zv3WazmmX+9;-v(q(ut10Mi`A7I{Dc&N>fmItILRHY!MC|e7HyB?~{2c`L$|B{&E4& zXVx7Xy!KtM{6>1+7k%ISrH$ze8}I+XPp!8%l*yXAl|i|FxRJC|5LyT6qBPEru4#am z2KCH|3KVxhL`&16AvdEPrAIcv0e2$>h$np9$vv~Xj5ov?$;sv~{fxD}+_Xix{ZGM$ z8?Jv1-Fe5?(4DXN+Ib~=Fz0YfLyI<&2d=hH1;UB0NHIR5(|``dF+0^#R>{uk-* z|Kv}WMKWm@+o$U!=4&4Fs`qF)N8yO=@kqK+LpHaAu`)#;jqvcZKliirqyO!X(g%O< zgY?_`z{K130f*`JjPL*c@1OIh9TL;-i0f~-e!icA7E}HNZ+qL@mV+@Pvx}~A{Gno( zB6HjEbrs#gP$C9%a`^&Dk!J}fl(N%L35d)U{50&&L#j_ z5p2b?CdUg3Q72)#S8`3u#zjAlMamVAXX88`)H#9Ug6~N`Q}KXhN98abX~;?)A{vYh z>u^4G5iSId6F32dvu7WvbKU9prLjXIves-;fcKL8&h;hn;cKQVbeMTZ15iY^ObXK3 zidb}}F6CoeR3{>X=~@28gprum?)Px|+B;^2p8o15KQkQ}wJ#cl4w8k~31&qQFTQO1#O<8Pxc z`I0Z5)4%=Ozm?9MJwtDK%Uj_vl9^apSvtbY8hZ+0(9zLR-6^0Na_-zY5?XP-W}ALp zVG|w>GM)2)}b~!<)b3&GU|kpZJNNnA4|S4->rOo$r{hC%&d~ z|JytNxA{y716$3(%U12Xohw@0rP$pe1t;SdG3xmbq^FS1(VOYj8huq`+8HtJkcgy4 zW@O_aO-0H4E#LA#?QQWIy5fqf_Wg7voxtS-(}Z>Uo1Uyqr?gL>ihFAR8&71j0Kf=v zEMk|Qm8S#B@y5Da@t(l>LN@d9`8X?xW@U&c3N{=vtMhQay}xy)b^<4G0%KTS*@za( z-ivsP9!;Dge6?T%kqcRa%g^*M^r6u~^g+5O*h&wrL)*ylwmCoA_h4FWj2 zm)$!@ce_;4#c)K#V*X(bQpkK}#CLtypP0)} zfr#nsh@9$DSMWsJf)SJo>Y@+KI^+Z{HB7Is=>ceW-ubmPeF{iC{`h_LzyoimPd+|9 zkU+!o*T-}uC-6A~(d;1`b`-L)b?dBXP2<*PWhZa~C-CA!IYR;$?gb*Rq7aQe=QS1` zr&8qJwk^cQxVEHkK$o$AvKx8na6zH7{XvTxdbIdc`FNWX#47+ zmiFBOvO6Uf{rj_j_Rr3{9;P!OroU;o!xUin$)Ehmna*^6#1H-O56!P_OfVf#Ih`3X zeR1PQe&k2!hky8o=`a4pzc|;M?x*r^`qDSeWpx+DCV$zhe&0@1y@Pw*-xD<&+qTiz zY@9T&k@?UqN~aK!NuO@D=;{G`)VB0eKWE;915uy73pIyL3eG5q5KhDU$k{`{M0` z5-tCg@$*z$QaP`^4 zp%qH`tVqKVudyx6oEWHo(rxdo5fSr+4o#}UTZ1Gc6Ip`|6A(Lvr!%;01Km`T*xK2F zyWdJkIz^HW`!fW+pN;f+X%f0qSJf?%&3ijkAA$I2s3v>fvrJzA_l1F_$Wn@*Daiu% zjBdLnyVi_(I2#Re#UgN+H6LW>NG}~38)*TaFu^I<-D>ln>WEi{w}#PuA3Vsm(4%pd z5nr_N#DlF4x_jOp0+Vh@qPZ-Alk=(6kSXqGIJr|gu*x~v#*I(?A#n=kK`CY!NX82) zAq!cU?@0>#I>6do=7Z2I`7EWt+u(#5zQ7y4**Ly+Sw6*To1`0ZoT9BhoJ_CzazF>5 zLRe14?>Rc-f%;=VVLWg)KAQf)nKgp$`?%Z4MGg?%U^A1A}1@U+HjvKA|hO#ZAVJ5=VZY9ND{1W&_9DKg}~^znYvk z?!^r^0b_`7F_U(jP9sCbmEy>Oq^MPDSupwTboB19;0c?f*x7kP?`wSG_}wQi@NQT_ zLoCOA?2*m9j{|G!>&w#U6BKUyW_XUGZ z{*Ml@jE+p#ok3uX$kU_m5sU~Qg$tL6Fz4@ScRVj$jk|H$cri3Z(O_);V0?0UF{m|} z--T)*iPmr&c)aXF4G~DN9BoDr+!>lB3R8`B55~w6vejO^K)ce@HuMZ-p#GYYN;-WS z9Sc4#?+A;m4oCDDar`%U6csXZdLg@M`wevpJ)FDp{pQRZ0UD-$40yE){DN@I6!DC` z!`N>$@Q;y9Dn>Hk2l+v{{`9??;|N{o5qQ+O`P8PQLamo*HgQFhCASihMvWUT3&lfJ z=qw%r2r&8N+OxJBuDe9@7QD&R1LfmHTTFuZ7US72`7iS%0C=vu-^#oXF9MIc1Owl1 z1fRR!wsNY%1MhS;#lb=W=>iy!o&sJ!rs7Y|W1owBc3c z3I;A9tw-xeR;@mW61Re6qlIw9yI*(}?SWF$lSde1D7W=FmcZ;nz+-seUl={vZW8kr z+$=fSfBtvi^-m7oypHMouvmV z;@_)ZTDt@;QXacsKDHHhxF4{sFqBX^@o9-K&71vOfvFTZhrMaLh+wkT@ZE_qI}UrG z9KXn^sM5X72Qg!}*O{JF(wxv0oQ$GA=yhB(wM&riN3$C2kIr>z_pQ^$;mz>(OpLmC z`&_T3BY%2{fxx$QY2qcK`=&njjrta&xFTWF7F!>f05GIXutl!KoM1UOskEc14)&hJ z-l~2hKDf!6rMC_|Y5KUowi#R*j~aRet&Rso&D@|jwKo6#d;aCLnwpol&)IEr%wkIh zhOutKPg$37p|)+EmPU*@>cml^vO_dDhP>W<-w zPv_?ur)qVJ*WVxrxrzYWtmFwMzEK7I4e3%_E~#>CuY!Yu{8mn+LS-{rLMY{|Awmw> z)>BMrUY5+_#@RB4^j3Mt&GI|U@_rbx(u#`gNLD%q%7@r#!|83^l^qJKH)uTJ^>Oj0 z+3qU?*G|KkM8Wc_{v&@!n;`j%M~CO#x~sSe@{H`oSuxKQOY-wRa)KCsiRcG%mn?b9 zN5Qr5<{SN!Lg(IH<6JtIrPT_{RZ3I4*8Sq(iG~4Ac^?zFbvqB6J^BH6`*YE74w@pVD9QDDSz!o zB_OD%8}h!!A3F>LLLpa__U9Gcmz)k8TB|xrDe(Rw&nH$}`NUQr!%eRLG!M9vdoeb0#TMeGh0H**W{Kdto*6W{fFD5S#a}a z+-)$rUoLhgI_ICdUbpVU9jz5z?d>mgHB<$(~R4|+{22?t_jC;i_6rSS4=0{BOLvI>y(K@<{w~`pA@~51i z?fs`8E)fhER~G^6o7|R)isCU~1?A)uzp8^nvs8S=>S-m* zSH(-)u6rF&mVN4HlDm4Q*E?!24`7dQqb;j@*b4b)?!ytzYCI(vT82Pz;R1TjjD7Ri zCtOUVuMPQzyVUuV!oS7u8B0-GqqFuZ3|XB@AN6L9IyOcV?7A7`vLsi=nS^4`7msTc z#=a>e?J0C|ef9aWyBP2$n!afuQj(QE&dOtVq(T3yL;>AFdhY=JE@!K5ORn7qvJS9n z)q|j9RgF4q=z=8nI(hMm=D%~Ll4K%P*~}cATPObUU;5Anz`5+G80z{ZCE@<9^HaCmtS zc;>pL^wN?H#hG=8#$G~G1fjS8q#Gee9hLHyqNj8JmuKR`#XrN=dNPsx**#R5Yh#Io z{>Ht%V;<)wopRLc<@o*35)#k+PdWFeoa6yQ+#-7;N-DOs#bjJ=&e7PaE4&4GTkIpN z+n*?GMRKZ+sv^C2U*nSMTmoByn#z$;jg9QwYC~%QshZ>Rig1Q?hQu_FKs|u}6PZ}f8&hOMg>kU2ZnVPs`Ig<}YG)MKe4Bot+%b*CnYRFl^RPgtB6zRccdQVR=C zr8!wYMj^C#RJGLNt{@Ti%EPO!^OP?NI?KI6{fxQV@ev7{*Km{CDgpno@%4&smyS1MrQf z8NS<6fXCDBaG)WJ^TZQJQT;aRGFjF58BdP>wZVdO7}M4l9?x0(rVVMyVJPfjd+yJc zobS@WhEJJcb#!Q#>T7Id4sB<=tuN0xzMhyF*W<@hN-3W7Vj&f2fHmk3rCwbDT59MrahN$kZV8 z*{Vjs8~%qln31_&2i(nnY(905VK;McMaGZE#Z@iN{HJ%!N<(sYrJBhj^N=Q;2(nzY zee?a1 zF5~cvAzKd#vqHZ-4&ik&aNry^B*F*9oF!7oO({qT(Vwm{Ty(Y`=qC^H!`bj`33A5h z8AF`|EB7x3tGQd7q|xnP6~C|er#Zt5k71otYUIzMsyY7m0?&_qVDhiQh#~u9v zg7x(^qRmYjAqUxyFEMb_Pna62J9~F=B(HA6Ahn-ta_gs7v)+0*&vV>PP-``5V5VNoa5 z&6mPMK`stGxq|HNeW$*`*bP3s_Aar&J!r(F!^#PgoB1V2yL-1j}si2(X5>oX>N5@e2gPq13+T$H%Nn z;P>j5g9ClM74`n*sU=^xrDWadPeO1SOJykp)z5Pp4}FB>XjE;4%P?vVmUoLs0@+$u z0u9vLF0iQbho-4x%F*N^0*7^Cyub8+=bQ6uN5=efC;Y)<1j_T}$7gl0bkn>#_$||B zxrj`rs-ZgrpXjxC60jS{QeiBFSmj6E2&Z}MWo5SF?ko!5iO4+m{rg_02<8z(umgsq zDkl*?Y_mp%PYQe!etyb%d?pNfuYwh(n#Q2@`LPwA5 zY`OSD`@!dvH~)*5tNrmPWR}#5%E)`uB1c;b>7ybs5#hV)T_%ZHiW5qHJEc>hQMGpi%FIprTCXEMLE(jhOqN zhza<xLs8lI=hWZ8okUvk7&e6A3q< z;~1$Sjd?BU*CX~pVvxpt(2GYYpn->#-@rxwkEzW2r+c|6$ws!D=YM3L6I4!2O{SMc zdzLa;!uE4bXZpS+*NvTflc@(=sO=998@*D|uUXiJzwzbTU2^tGSIC#C$Xo@9xu>$w3U1(Lej zEAG;(O|a11o$bZ*)5xO|E6K%G1&jXE5AzjA_1Wal!$5WT^p$UAR7_7&yCO8BXE~od zU2*0_5z>4H(|01|Ml3YcXJM|#7C8`ryft0++jbw+v+-ZTC#Q$V-{anTZwLo~d;Eu< z#z_^_fs78`NBKg^O~jbvRK`Un{bmX8#Jq|e%ZutJ%;nYfY0&t~SG3*U$a`sGP))wy zu-!`UYTiaw)+;5P>n zyd*1Yk{|VK3TaTs;NxpxM(xF*RyZCv*Y!nXeUXBHFwo}KTV`=<_v3x+x$hFKh5A{=ulDpOSi%TjS-m?zR&G|%=1Ga(z zc|&Brz|Ms1V`95-cBty44K5{1?I~;(zeF;h%f$mytOa^bRB|7$#@l_$(*%ZT(+PT_+#1G&EK~2IboG6?zFzhFXo;{`Zs_a4C_zbHOR8 z7sKbeO#Vp12-#&f@;XY=YU97;)Lo~T+9yBJU(=Cjhi7JI@#XhC*-m4Ul6CK5yz#;ptU6dZ$uVr9|ioMiLa`cqJL~84&iysPDfk+ zOtJgZ?wvcULpQqV>N!K57iBKB$_^dF#@6d)ELyM$u4(W_wZkTg*GiST$>dWCReD-`&&LooyjR zlr?EXPBZ?J@(X??N z@AdJw>0|zp2W_L3gQhbw8(lp7MN#VrezfI>UzN*xu6QUMYEjR(Z7Hjgm8s5ak~tZ_ zqJBQz0&gY8;ChYfM0rUg0s5rM`c~)yXT$<|=n{e~;Eb}Fa>ehQRVhBM3e}WwgM-Hl3R9J z-s!Pi1DQ=IO$Z^km>%Fz;c~p3_oY^FtheZgkugu5{7KRJg$|TzV>%1t4K_4rbhy}+ zRg54)^r}QF>Z&OM$hpbB3E=0nGQUW#StMl7xH+%iM@;tEZ1K9Heb`X|7{MTRPKu{yD+$A)&e?4b(EWLy|LlxF zf3Vm?WavBdV2_^^ zaf0FG5b!)3nA&+EO#U6-Fye;hy!j^bC_y*i>@QFGs-xX;kI6qOH~gNpj-DK|JAEowWKzn>NhH=vvTJW}?SR{yf? zJ0o*WU-`9^yFH&&{G!w;pCM|a0Wm#lqvb}o_~08(yN|=%^^XbcgN{k~hwNi;gOud2 zC}D|5mKFQAGQUoVuIk%7J_7NHP3lO1a`pRPPtXhe`vZW{I@sc{?=|OIS4c02r}~cu z^W|?vrLr?gS8GKGFRj!;i)mGCxP6k!iE|4GV3vvHFLb{s~yR=T4mbv_eZX zG{vng>8>-=6k8>|Jr5KFCm_f;b0G1E)LGv7kl^BA!4xc=-WB7}e&ue&-s@?bYqbTX%U;tl$klTc5RPR}W%VO^ua0EvEcMr|o+C(E0BVo^=eap1eqduy zFyWK)^@RWRE`Co`U+u=SU5t%Tm|G;@#DyOS{_wo*1FGZgEHL@J<%R8MnkYy26g+%$ z_#2v!mtLP|SA<*(ok2tg)S;*xZAXJ2$1J~e2omfbnmjCDN?&02a zcq1rQALYLY*72~BsasM}@8dvL_5PUM!eIoAaLuzfWpZSRBn5WIO58L?cnqu8mR*^@ zbm-==n)Pg))s-Vino+-n)p4;5)$n>oT+VdgB?%NwaG@@k6qpGX#u+D1pVg3nh)6Z_ zV6W!rY%Bd~-?wzvJx)HmRMl)Q!Nq(uP$%5!KJaKPmklNSIk}=@dC=1>-oeD#)1B{2#x$hiWxzRtl*UEf5% zVQFjh(>-;P-LEE)`P167hCnCX7rMQ>ittdXkzfs&%Zq-^$=|KTlF?5gXBvs(<3)Sf z9Ri$zwuIWg-;hFK%50(DWPu+^E6dq5D48}kGE@L^Cyn{JnH)KFHab)^+67J5&TjlU zU=%V^ub1+Q{}m`c29m!Ri|3>@#J#s=8dSxV@(FSk6v?5ws<2ha(Dj-R!fpnZHWn&8fFU4Yy*ptPcby{+s4*Yr0}lA zPH=Mjwb_e`g6#{B7}W(o(c;FmF7@3tVA0jq+vmIwv1WLTi5Ng&IBUclYbJJxP;7FRWd1@TODHUHco{a^t%VH4J|Gcy_y ze@>D#jER)$_b7s>qsESg?*8PK*QJe_xpT?f^;SH2g%>FVHLMaSKi|i8Viwfv&Jz{{ zVJGLj&Jlmqj&Kft-&DF;C3cX<2S_NT_Mrq(eXULiJv8a zYFa4ebm=EDp7JsXO2**eI5Hpn+y{7fgmd>fRWN+(-JRO>WYV80OV>mfIJ6s$;}Vc} zeJY&v5Z%^`Q@DCpKfJ`AjTl}0Gc;Exs008o#%WNJ#K)D>NKjP%!+j#dt|@q$y4s)z zX~c$+^=_{IF<>38d@iK$ypAS+D8bm#)RCl#0JE;lgd9ODnZ|OJ`aM>i{`*m4^{$K) z${g`kBkkoBwwk~$w{&b+tAgn;e4i?NJ59Z}zyw`~uSOdn|} zJ!afq<=rffNI$1BzxKYRh%I=$Ru_e82ibLwWiiuQlEGfKtWF6WiVXU7GK2i;qgeSQ-aR1@@Eu=^zB#0x{rA1 zT3&}ch#5dyS*Wa{!&+FIsn9e3aA0cdIaGvV`$kk<0r@2OIG_zdJqVL=Ci=RZ0WFB% z`tkO~P{Y_XMK>7>qbPcjeSWTnM6jF#=0Srr8gtfaye@xxM~mR5);1;WB1Nci_b4b}+Dmk%tsrq8)?>~)C9NaQPhn0|=1$TB8r*(JC(D!Si zE|0hzO9PjuuINPW+tr<9W1o|%l^3~%QdI|W2#t$M|BNA-%{oVY!FtPX5+9%4{?4Nf z?K}}2yRmpNy5Gm4q1xxWy^K}Z4Y#<9YpP~$;^~70Qn-YR6%qTv&P?Kw!@jo_97STj zH>jg|g9R}}&*#LrkD20%zJslf^imb>TH9LC)_Kv{CDJ_pwm0I7=a>~p1Mkor>UAfv z`SZP;;AZMv)A9-zdl(;@NYMs~J^U(y?q`a(hJ9L?h3E_@v=x9k3@#O| zS)K}pT0%AdKg-QA3AB)WSrtr($3C>QBSo6HDB#LpLt@zCyu{p~f=*f(rUXBdxh3a)U>)@{8GeI5G_w+F9Kp@b`E=y@@J z{}gHEifyg#(|_|9O5VXA!RC)B3ZD~uPakhsr#|h6_}LyU`UW=H-;w5>VjhqP`5!rq zNvAg#2;hgH@%i?hv9!)@&_l=9K6?g|#UR=CY}oYJDga5x5jenz#`c^cSo42SnT;mC zQ1p)|c?R#dUXQWyS03V4jyEuDcd$(0`-t}Veq6TV#85f?w35An zwqQ=sE$(xTyhZhf=6?69cq~k6WFCajo-InMzdquO-8??fCk+iolAUw3dn=2NK_ssMl%j=J=wimdfhi|3Ha;yiCPL*%$(i!it(l zln=>8jPfHN7tza0Are7?;87S)BA;}wn&l?r4nRRBd*d-}L;8vmz;&iu^bHD^)YqC_ zGmh)}Q=j^uSuw)*0g7%_jq*v1BUBP>SLv5SYSkglI3QUb%KyGUY>hF8<~*oYTYwIUNq)JAP`^8-)4 z#mhz7W=4N8bNrI6;v?g~B7jy_-7SHjtr63Q=ZDS*;oAbyXXYHj{kJ%ZmenMKR7Rsz%Kv8@?4&DS*@{?a54BY-ID{|pS@ZZI&??=Bk7+_e8# zETo2r1crdJBzJk8VyJJ=Rp`6>@iaEH1j7gIh=bi080yLbcV94Lsa(r`M z?i~Z&s~&ScZW5+Iq90%A;X@uZ@&|(c08_3Pg$(%@DIF-~;?U97>M+Kd75V2P>_NEb z>W$7s0$K61f^p$DeLiMXiYzwKZy7{WPnE5#!FzD25ZlbrHG))PkN&5%2^#-UnY+0& z7g<*JB&;7P$|7hC#oF7Ewybp-fwxjknfl1dB}5~PUnvuEg+rHDb(=Y?Q9eTGh$y?m zs|kDb_^K=sA7$l|VGtrq+|aEvxM0RKzeU-HY-9cgZDOcYo9?F)^r8dA#ZrA9=fYb+ zum?XI{;8|5i+evqt9jbWqECCopfQNJRk}UOmhirM!rj(bXEl}c5m7u!zavEmA06c# zKRIp!yIca}fkLKT6?R?8Bi|n&0#D+X0I;La-GH?8i;Z#i>WZ1$3lv0zCFVBa=*xL= z6;&3!gx*w{PYKbtP;YTpoE6G8PLB_CTTh82to|v>9k?As9uL``2hD=ny9%Pue%y?r zMj{dGb{M);T;#iX&!_=BtAzP56PMn*wV1?`W{!>lZGdd#g{b#X>qyZK#8?iSw*Ofm zy4^v!onIZL!kFZIlx3s_=;7|=*nNMI@X6gNq(N(VWJU36-*s$@$Q7v!_O>w@h?+DH zWQL;K;~470H5Yn5l-UK$uMWCwk?fH>Cg$J7x$h)B@oT1%x%wL+b0Y{X18PogwX;gc z=LG6>A_GN3G4W6{{{qF)*SP%d*ZTXIm(?n#dvB&ugb0829JQ1)xyom&t?!Bp@p$W2 z+V*nAjiFog8t@qhhJU=YL&nbc>`1X@4$mVL?JqQ%>Qz^%`qK@mT#k*E`s|Wgw>RAmJ5F<*)_!`y5wq1DgRq z0s(^DqB7=Du1TD{*oA*ep@g9VpVO5DoqyGcA?E zggq}UYg%8suw(~K9e3GMa^iJkN1Q$G1IV*+v>r_|Cf?}_=q=mBS|KxQ$^9os$Yvw6 z>nF_khRBR6j!@-tVOMChrhI{y1bKoz2KFg*@H#1W4O(xc51bn}iS)O2dnrU4;}i&hJGhD_`j@%*g{2m2o5Z)c*kdfphMA{9Dm4 zI}A}D?t=P|sJx8$I$_`1$(;g*++1}>`~P4rz8!0_uO3LIs-Cvx?yE#gsdrM~)O@;w z5CgpjgdwU5Z4UkH9P`W+JDg90x`*6vg3b3R7k3vJbJufDy0?cy zX8RbLL{*7Vjst@$x%*Km3}Dd(kD_({7Xv2xR;1BCa!_K)`vyH5f}1eL>CbEE`)yFK zU5dXmr*k?j3G+9c56)n=CpFe7hXi`6y7=~fx{{Qn6;_hDc7GYf=T^=8LyHyjAxW`Q z4tQgXOVHbwOR*Ih5NnmnNl~KtI-9^00_$&J5jcc_T2WUc-QjC~=_c>#WPj~nX~f^* zJbDKGNPBat(TK{59To%wU#ybpb@oo;u=X!nL0y3R=0>~a(mwHpos>Dl0ml20y3ByH zQ3zI;+oa?sLE~N&D>iD_DJ80(7h6Ts&RNZI&PAF7ZiTs$2Zp#(NngrBxc*p!BC}Xu z)N6Nzh(za!i-~4+nyRd+@0iKY-Mtj)##gf+!ZGj#25<4+mw(=8at4yt630D2PX+A1Dnhfsgw9Y zS4{^32F{MTx*oi=dydk|}O;&m}DY!x7UDj^6c(y@3Kjv#>_D=Tn1cvrB=;+d$+ z`7r|C!qC-MESe5)(-T!EKl(J{%b&~Xk1O@#I1LSV??(F9+8o5E+2AfzqEAa3B3aeN z*$FfMJE1DlW=_cHG1Sf)%s3q}=zW$hT)-c1=<4vmva|KB=M%`RVV!&y4ZR zDL-Ju1{%@&B7Thm^2)8eCYPD-o%j!bQ_b!0RDp43JkvI*ZmO!*bbXACSg)@Ct6 zxEUcuK0rTVu{tI<9eDPp=PVxZ9dv}eUc_}Sy0U&tE+>1=X#F6Odv~TIzgwkfX3bgI zk*blnR()>$f)-%qRF&rB4IjGO%l+wApmREqwIK$Vf>QY2jmrRrYDWN_K`pTA_H_Au zEty&d@Z)AU1GN=`oNrKaZlF|4w%G^{9hO$KcMFwB5rQMZKkk2bj>r@f>brYvC0`C?ZzyLS_5l&rO_qE|`d(Ku;6evY9)N62X z_1L7n3Kd6C=g+Z=IeI$}!3xK3b-0s!&aS4J=G z{#y)MRz!m#?0eH+^X3dy-Z1<3E03BW_9%)_BD6iomnVX>nn|%smyl@j9Tp;i>eL?u ze5OZGaFm(lN{?vh0n5F(kV9L;!s)+u@NK2=hPdy$HbA*h@I?J($hJIEMQx&=!RPT7 zMn&)+^53(3r^xMjK6Y>DuAln3l$t{T$+|KBob>lg9@i^@3 znp-wkzf67(NIP%8QR#0_5P8P*xt)`Vty}t}bfPPx7EUIrKG?g>*d^s2S&@=ca_)sH z5Xoa0lrW_D`GJaM&$UdxdXVRhYeBe0p+!gpnkbR=N}KZGrBUl_}I0rt&sEwykgW=EkkAMT4;N zTM|L0-$S`O^!~St1xjlEV zi-Uw%lDTKj_69KkKx26f;H(^NhZLgUbh<1~)=d`~q-FGZ-y~O(KIO68PZ?V+Zy8x4 zPO&P!pr$U8M5~-D(rLjYO8QS;O5k{K<$jObJf5iL2DmAP#KW~Bg2c}8kB*65bVs#7 zf1~B4;q0F64F$GjXamYYH3!EJB^6W~Z~wwhj+%oEGGFq-{XCGv}O)@%V8c_kncsXqRKT%^d2)dS?^Z(uQM&tW<$7Rx(&2i*^I(aGSGon zy5iiK$svM=Lt?badYF#4M#+GMk0F{5|0t873x8OX14IP4bA=tS={$r^zv5DjQ%)9T z^38$F=RL8G@=M zNSYpuWT@8zT&lU-C|Xu=8m?$%Pv|y6r1I*QiNF@#`Gc>#k|YLIT#u~??ZxyEfYKFk z4wtRxPGEm^Sd*|_R(NEIO;=Gp&nF#8%@NU=0+g@Mw9QgxBn`CQd8>m8N~s{vSv+2F z?ZmT7gTj3WLc&nBxb&KeSt-CQxb`q%NFk^F=Gd*Ujvv*rxYnGhwsrWZ;MU=xAf^qAUcIGzU< zE%})#e6uxxC@W_uk%-mue5UUz)tD^8RT=izCPrD@rCCRdIiMt}g!It#e2(g`bHPsL z_@pfA$}Qw=14If-2H`<2^w(xC{kV^D%Sdxjy3Z4#$XA2+{ca|b+{plBUZaNUHt-${ z`6hYvyi5bBI- z8X2KK&hk-r{}mfuGJsY_8}D=l`A3VcOanU`zPs3klov&J*o>i7|C_@%cxXHztFe$0 zP-N9{6|4sLfV0zsYI{0RwV$eU z;`!z{!Cz5$^49f)f|Mn*UG@CU!~nFI{3nxG=8NSCUr|2vEV-b7mhJ-oJ@&bOx`-g3 z6P4lj9tT*I!R}m7_KURH&vOx_M~wj%uaf)g-Sr$bY2|R(FhS%D4!D=v+mMh!?OaL_ z-PKKP3eRn-l|3I{w(@#EG8!0Ofru@vtjLfEhJ|@L8vL9^d|kB{))!?bCtF;UUoXXB zXw_$^XrU1%P!sutY8epraAWYpAuXB#ULJQ)4VzR5(R0dX;^UV~Hcu=Fi$?_u z?4tW4dKn6kI5P9(_hf0M3b6$brsLhm=b|mP%eTqA%-OkHZ$9P=^;t7*{%+Y*h3us_|R-ioO^}I9ynCQqJ(TBQ4e3i^fSVRdYFX*h8#LPSx9lzg6&W{~EHXu$!n~Ju%m%BdBAZd~=hE zATUQ_7N9epX9>~Ux6m6-O>Lw*E&N?HZdO%~$0up70Y$rDaPI{Geb``ptA6c5*I*=X zJv0f0ZRl|(L(}iJsaVSznFiUC>rgT$?Tp789@`VvEcKQ8Ntssxj=1)JF??>FDGQf% zdSyR^`bJzIRzk*n)hX(_1FncWr2w~WWgj+PVy;ePRf|9IHDKk#Qv45Fz^_FIsp_rT z4yL4Iz5Y6GdwJ}Ja>&aj*Sy*!d!z=wq~oXo4BVnSYk7TzLt~3hGh|ufIvavegs-(IG(? zr4F!ZzX^)$%M6-S1gJMx+A`U1k{YH$A;o4x<4AcWnq3_!wtKu1PUGM?aUqpsF#=Y) zyCv^eweX@2`QO$|mfoBC7I}hnWDo6e1;}<}?La0=%K{2rH=jSOjR){TFfV)-tEcUo zItnhR=OMB-pfLZhTVO(6lo6BY%g$T^i?CH2?JrxDzHn-*x~@gcM2wo5h<)~Upa`5G zB=Y$!B;`0TK`?PbmqIE}4vmigW%F^{LxqsqkU~AH82S$7F94l&q`O;cv%MSe?0KyN zScD0hcgTM>bRBffa)^f&9O=wPpDl(n27AL7#MIG`RLv$8(MK&L0-@sUZTTo~dC=>T zAhgndu zSP(f0n7Eo#&fMom?UnYNmISTwA9!BZe= z=LK|J+ic8h^#>ZNN@9^gN~iA6b^`CWLyHq;u&H3eB%; zM}9|5k2v2L$=NeSKUkP|WLfj_btS{Twj>fUTgsQKPQC8ejePGbgw?PNHu1Yj-I1((hhAme<=M5*EU$mA=fzZ#Gq4@+ z7InpfVjH41Q-QbqUy0O~>6mi(vfD;oIjeZ8I5KsmcW1n8?o5q;Y$m{yR@Cb2yl*OO zWVpsfYGKj0be5|_^s;1rJe@m$F4@3~c70RONLvvTeM3s%aooMXKwB1(Xbsq+8}tsgZy>HBNC=GIn_kAUEh2^mvoWvJ*H#lqc< zkOdRvXI(2(jFF=#l(e@(=c@Utc$A1xXV9uKpgFlJ7#Wu zsMYxs6MY{02LmucM6%w zh)A%f!XrrIcRgSL>(+d*g0bg)cLg1C)JgsU2dvXOwv(N%_gqn0Z=PhxiY8K)RV1p#XMR}XKlcY zHBp60Fxr$Z_puFU<}~GxNOCY5u)xbXf8TtBPboB-ObP3ToC=tonwv> ze=K_cJSG<(c8S2!R;hB+{A6{&9p5fMmjP1**=MJpbZ+Z8q(+eL71oICKny`SEEW0D zBIUo2+p-ZymgUw(pNh}IwIgsHuIPsNL8@B=1tWFm!%UwwjArDQWNCjNsV7%AU$ zXuY-S?pL^L#b(i8ncXUZ2cn8x#Odp|yrc4IQSL~q+}Qd1l}B3=Z8F;co+YlW(a`nv z8}NKp*Owvi24}vFM}0x3Eq)lfM+E|-ppckizyZvAm}Toet(c1hv&&SAD==L20gMrP zFp?hE$5Br4FthHZmO?`JOGCQ=P}&A*S7%SW4gYIh&mFYsINM>mIuAmo68pz{%c z0Ps+=0l&{CzRM7V7?_#JIhyN2Aqd(cfDh<&>q5&yaqK7eJuQ_r2t9%BElaDh0R3I< zWP&SrG?|4ky)#2l^gGt*n$lMIFJdl-VxgEexihiCg_>@bl;vh2FcJ98Z#&Z+7fwG=pRd@q?mWI_Oo1zc*PPoC1|s{Lj% zGgBSgG_mf62!7A}2L83=BW>aFnJe6?;e`DPpd;t0Cq;hG9rE@mf`}-U7=l=s7z{jJ z?}hKiO^?@sEVAZ*lraxZbmw`-X0l{`knRwWmhKoDq#Fc;0i;u<1%{ADx}-a$dw@Cb`1#(?5AQ#4 zX7)a3U$L&W*XplCEU+!A%~=$hWTUJhAX}oLo?#A(o+ulp${(ZvAaapi(mN+3g{xNg5K1e_u0E+dWOLHtZ>4`PqLGjMWj01f2gNh&-Xp z%Znie#gHxJF`XJOk)OhU96hqT4;lX{kvbH^M0gE$3z7L>YUs%fB~7t+I|(=MvIx{? z3ls>7VA%H^@~_XN8~KT)Wg_p+vkC*pcL8yIL`Wx_V z|J}b{)W6;%zoaj~wKaVsXzx}U7V!dyS#ynOBIp0N&vOx@o5B`#LQmOL1Nvy}M8ZZS z7Ix0wBbiml9c^pZukQ9F?+LxyYBn(_aDz+ zC;ea0@R0o%0>$lppxo>~m#pjkxX4V0FFKbz9Uv32_6=wovlbC($H<%5RLjeDTi(J4 zmpj8hEB|%4@Qu!&M0$a%!0?wDH(L3Adm_Tj$KEH1hI2nF`oE{Ut-|xhhMnZ{oBx$W zZf!;Xl1VSTJ>u@%7pF@AZ9?O^cRi9!z$HB)QhAF1o~eL{{DN6y#edga?thWt_=T|) z{G_6~kVr*5hYBYD0~!)#3||wDr(+O=6F!Md{=cPkGYQxu5H#Cv+zkmt?&h^dUVUN? z$(DFNgyh}j3;y3W&QrlT**(tak$NvCBpwO=cg)eUk(aPOp&|9Q3}*XNc`Un}fej$g z$BO^0)85Uc`_B)}{o`ht|6^`w*t5N@0vi8(o$`FA*X!z8iWz8xM&`rTQzKg_Ey zi5|3{$+VvyLZBP*TibQ_vu1@z4-6o@9 z4-t~?5#3Z+k(ZE*Wb@dYylZZbv=F(xoXuRp=gJx`_EZ!Z9{a27^>B&b)6LT-vK9wlG$oJgo*wvNLBYEwu&aMRs`S9?%s^<)-u3YtS3;@XoR zqm#OZSnPm?W!7&de%+#Z0Spr@hKia!5a^_8&h!l3RiMZ|DR`eM{V^gILcP9)Jh&(s z05hRKU)Z-xT`%=-3l2Fgyg$MVzD?g>4LWs@D0iZ)v+JaVB>%X#v)(&M?%d>F^$AMH z`?#k}_i#bC%C(O>T2R<=*ZS!y0>2~nl2w)ikZgyfN3^RIT3qT6(K#5{IzO#}&cm|R zU|d(eD^O{Bu5_Y;r-#QRA__WTypz`vuCgJzLSq)Jpt_7v@9PW?n+}j#K+b6@?C|PG ztkswHp)<#am;oV6w@I|QHB-$Yt}7px{ipV%!qz*qu#B(f1_;M3f-E_6L-f`-O) zyqMV(czDzhUe&jEwHl3lV(2fW)h07re z2I2BX3NifaYt+XZ*g{!sp1CeQ7D(4I0}rh&|*1D@L^GAKTEep}yQK4`OTH8OoADBIrmZi&Ar+!XIpL~60?qEho2$&9l# z%^O!bhx&&+!F%g@&1q|NJ1=**`n~VdD_A){&F6K#(*eNgH=u@opjxCTZ27LTyi6y% zGO*$AO%;I8jubVBCk);D@DX2%i=5c@h4!p4(7iejFN_8z@CZjyAp63qR|@ znsCjGwLe$Sl44&Tde(I&*}P?V!ylenfQVeMB4;vp=NiQ?{_(3g4}PLl|In2JO)*zS z>ZbvZuu(mBxw&1!WLsU??6kSa)PTmmVq{sHofaG${A=BH7@>NI^4?~>D~_7oK=Ol( z$Hp!&`V&ua?PEj1xmmrq9Oynt*2~Q)N1pjoQuOKIUI+$3d!TdRg}Sv)mjN!n9>D;< z%lOJqb5La0aS~JZ0xCRGhhY}Nu0ay5mkcQEGXD*(X6S`E(D5e@(&@yvZ<-Sj4wUeX z1njB9))e|)$pom{vAQQZO={7COSv6G>4QeMH;ln`8?_Wa^!kWg$f_nKEW7Rc6k6;M z@@;MO_^O+A2a1g6!Ie-S6|(XWoDM5P{CORB(>SPK-JwUoM}o=UvNZ#-I8Y~7lhJ{! zXx7W=NnsJ*f!S==lrP!irPv)E8xEpA+w7Nq5jWw!oiJ{iwcII1TCr_^6ErhQfDEq6 z2sDiXN8c#8WzI9h9H9`+b^K?#W~1Ppq8ZqL?2n;sTz$I#7HYNICyW1VFlWbL`Hyqu zK(JO2ZTZVi(mTngxs!X1+_dFydOdm~${0FY0t;W^M0_JpN7h9V?yK@F&G1yx!q>8~ zi6q+Y2v*(iO8o_lqn8i|KKtqLg{qQgR*hLos@J^~fB(Y!4=cie!HrAFaW+o8XoIGb z2r{XJnoxpjn8B(Js)gFVpgjb~zLMkZomR7`FW7mLpu%IxkW^TgqTVgNH+x1_YwHg9 zE#kp<=~DU&+D#X7Qbe9`KU?Y9*m-=H2z>S>))a(66du-l-&HFn6MYqW#y=$GkUeR* z25vdqKv$)njo_h{%oo-8|Gs3bWbxaJ)?iuL<*F%gj~B+{sD=L^>AyVSkz48{YYb(> zk*;S~E$;X=!}d~%>dPnsrA?c8qAFXke7QXpC7WD{D~-Bw9J+ap%@A5T@}zB5PVr18mL?KXEtuA=DfSRKgSW-><{FK{D5PPM6#F% zeEOa96Dasx^2o{+CH#%oKL7ePNLuxxo2woGomG<^Gzq!LhqyMh|0`?Iq|xbQLK#us z!0QceMAE8@2Rom`7Ri8UPV*f6E(T<4FgFTYT(h6&*93tXzp7Bd4+398DyY+~C?+gT z)p=7wKm6cW)XeJ9?GbXUplbBYL*c06oWT&XpL7+)E~!$m@Z0&_Pu7h1#SMQPw@i6~ z$P$gYb{^p|ZrO&SK!K*D)v2$9`t`f)Et(6osXmi-)*CkCYeV7Ddpis<*fLzHweWc$ zsl3$D(d{(@&Tl^WpDQVRn~q=8LH#u0PX)w#L^O;)CHJ71k!^iH&~mYdg6M95ezP-) z=8YTIj)s|EmsqlIDcgJKBRyaBX7igrANdYCIrYQiG_Lbv4r)o5>3u#kdAUDp^$2aI zAbFk0Zz-3uhzrw>RURCZnvukf1=pW((5bavEUzVUL;eMvBv!Ptqr2WvY&2nr7sHFd zI-ZxNymZ8l^Mv;3Z9b9na@dvbZ2fVs4cL7WQS0h0 z6WrhSWinW(!y)S1byad)d&kM-RBY#I`54z%4%1U-Usue&@|V88l|5L!?7_<0y|+QY z1BCGyer~ScS1it}7RUrI;@nDBg#Faj5*Z)PHGpS|Y@@5R*{g}=j z_Em$Df^Daew|hKiix_IFX04BE17f4ID;_snAaf50+sBQBCWupz%v%iJg!W$o%~2q7 zV4%#T7su7@wUzb!+p+9aK>VsUOjdRq^pnGB6rhZ8G?@Xsyssg!8rO)qFei^FIes)j z!GpS=r^VZY$uoOp&U?uCVkz}T2-ISJDQnRAmOUF4ti9eS>{GtNhXfY75tNR9V#S|y zZSLUqV`jpq$;FnR+%9*N+poso68c6C(t%b$&&L+Nxds0TSwEh%#CITSd=ZtO5W7+f z1CrjJg5e|6QUWH6`(Cnt_up9}KVKi8gS_=8Ch^Om zmkgJ50A-D2EBKx`#-Xb}&{itPmBCTZio}Neb*^&oE=SggkUqp>OwRxVK|Z_6;#`va zrwGI-RR~{xlpi_S-G>lEs$@w@n~##O@Q9ZrXth+PaBYvocI-PzyLQNP2RYqAd9Qm< zTj^suo!-EAZm7UVvk5KG!uhOUUpLR~-gm)5Lf?)BYprVE8VmaRZo;RvTi%aNmihyq zZnFWs<^f=V3m`+yg;`)e)13yTkFudJs7W!7HT-eTiomzp62D!v{^;wQ9o{#%k?A>< zE`mZ!uN8(=WjUh7BwPl$3xqHiABp1g4)(%lz|DuAfZ@{T zZlCrjCYUZHr)fAC3{_4X?oCd@5gdf)suF@j+xvMPQ#q^a8r8%<%n655|4392Hy4`7 zPD)+PK`a4*|1Pf3cw+G4IpMttPT}%&j zlWB7V3)hm<9;MeHY~p$*Qz8?=-sQiwwH$;A7(`sc1JnsxBSmlSJGioFFZf)=xJJI3 z=psFlWs?|%(@(uVjX^lzC9&7$4*`o=Nenq*X<=s{m93E*T;dn>FDC@Gzwl_f^=}GF zwxQdXbf%l@q0Xk13T_ww<|@^Ygb5Q?oX8hRf7!k1%99;w{kPS*=fV@l%mS~kXQ7b5f`&k zta@wiMA^YW7ocmi>I>fgiLVne7k=iyO4xol6s^(a2rax2fI*t?Ee?yy00TLI?yYc% zFXRG4z);-qF;vdb9CClv6Sl4FfXQtccaNck@j=yAJmZ2TXG3KFTTW~>S*mrKjLC(iD$3oM+^8w$w0IbcBO!=~e6!zJ^ z=ENABzkr(>`@Y=FgmapZ9cuwgBATS0fO_<+<-c)pvCWX}@9~dstM|80ckk&cf z99(cGIu`e|RPN>bOlw(CJVQ2ueK$71FjqH{jqW{0!$wuMdZ1ip8<^VxRE(rYe(@tc zG14W~J3%EEcp~q5$5-f9sDVb82sV5tsuT>@L|N{w*-D*|z`*7F`*|Dn2}i;X>L{I1 z92OKr^JYn%s;&!O)ur+6osTz5WYEBL?jAL7V~Wi*CI3L3%AiXe=HU$a|WMYgp5rimLV;VHGuZ6j?QeU$JMT1GTO zMn6}==LkETtZiPjV)X+%m17Wa0er8%1Y|4@bd;xe51G=O?ZD55` z@!htG$di^7!SaQgaMD?Xbv#sOm#Y(t@dV`qGs+o{WNjyW%VMJ5fBMf#Kd&Q{;}g87M$2?ZRiu}?+VwI>159Wzo0lRmDn z)bxv#Qiwp@4;RE3h-@m3B0%3Dw0>V&(p{^TcrWIxY&`aGE}!;cvkn`6=srF`hP*yK z)i3Q#ozFcq;M+$Qq}o|4fOot53*&lNtG*rae>b4v*BdlG0MHERdMj%4VEf1LruR1> z`&>67@T{5r4ro!jQ0ZMleI+O;SWIsyY~Lm5pBP9?9yQHFzJ9TdwQVU;CB8pge-#Sm zA1&k6p%^d`_M(-&h>OY3f)XDN*&GHKk{{pdVk-R>BEGY18!0iSvz4}KN_EWy6AfT~ z#lNk-7&Drf@G5|V-6s|s&#C>JJ=TG ztsO-`05j&f)b5g@m_gY9n?}q<|5pVVxc$Wj_!z&?On?7&+I=|r@U0$aNJA%4;?!W3 ztLuH<73!;jLdKFEeAmg$Q3vQV)-ixqjd)xKP`uj)J^(s107l>(fUA!(|Azh>hJtQM zOs>cq91HP-4+v_~))=1eBOQm-1s+VHnNNLfGymepdK+wTMtQpGJ_c9R$vCsT4Yld_q`S%m_~Zxgp>%>%fb}J zx`d;i(;h$xANkqeX;OION%Ju0dq!vw-wjFu`aO=!<3{oe#)lxs2JMDZC@29AA^nDx zmjQRh0F|k&VRb0VI9rz#gQhq#DbkXq@rN8`wNUih3T2nfyMQ%K%VwU}883^E{MCgY z<9J_8jqtQPCeOimIdV{fm3c^Im=oi*z>7?OC5c0IvG{r6Op%xm1u7<;&{}DR9aDTI z=TkabN_JOFUu+q-x*kW_Z2+(TW&psmMMS~BO9#UCiYwd2Y=%6CdS&~(V;>@KaHih! z;_2mnvag_<*8qeJSq%f9@%e>duD6h}#cN1mF;Lkv(qrr|0QZhKK0KHzxu8VF;Wq!k zAEIEx*(THD%$inws_pB~vGV0Ld`wh~C7v+o)c%91B2@pyBwEc+=)izBioOK4WTU}$ z@A_g^TraB|1MMs6bn9!$EN?@)>msl!8?K(h0^99KQCi_-c?AvunS)la)tlW2bo^;E z-&J{BeOgMuBIcI|Ep3hy-vPs${x=yjF@+YIcr^Iw^`ynK_5?;)V#7Asi9DBw0AM(r@~ zWik+2m;9)n=s$IeRV%~uX4h^m28+uaed)?F^t}I|O-AqfOZJqd)0%O(839FCtNYe3 zOvi>Lw|hg$Ql3tDr0oGrFS@QkBeG4DZD#Gy6@>|14Do0N?u$xCTGbX#SEAW-_w1tl zwfW7QP+;gAbk^R@dt*_$WgbfBPC0pRVQ!%ZLpSE{Dg$`>Nag`-3axY9h-!Q%l9a`j zm4tC}J`xNgG~!D?j!E zO58GHnHL4e62mekQwmBZA0s)WD#{4FB#xpu%078$)t8xJi`Z=}_{A|5xuI?9vJex1 zi)#exQ%H%wj&ma^VJYCN$S+vv)$H~;~ zN^3vJf7s1@81}@v6q$1kaP~G%tP_|8BA(VZ-t;tq;k9{n4BIfE4md42kX%a&7|I*A zgv#|KY%!pq-h7P`)5z?J&Ha!>EB!gf6w?r$NJs8GAmaw3i8R*+TUB)^)?T>G9b!20 z?k1uFKNFLAlbqW;ySR38IH?DJAUmr2lH}uO_w^s4ec}eo&Lh zTYhxMZUv2qxfpop6#|%p;BP|-otdb}Mfp9ur1&Q)_i*Y57Kw@*Y$cWREHh~ zicaN#gBO!P>sCs%!)_ZWnhxF^S3dUhq_*}V zx{4)MevTamNIlm61za`vNZapQM@8R}5G`*mhDK+<);&j$exRy$O0TeCrT-jxiDZ9| zp;F<9kom)P4Q?GHKdii%Gm31~g72x`e$5xQ;FV%^P$Z8H(JgXs2+1@vYD2ntlaYZ!yv4iN5h(Fl*{}8;!YtP_ir-yU~B1 z#l}(REBao|nu%4%jMD9BbjpIzaHjhg5mCaB$*dW3A2O`uC6%^GLfSw;7S zjU;**+q`Q&eDwxA$oPTb&05@`;3c(Sq*n)MBMiNw$5?6`)b8^DaJW8HpX#+hOujO7 zz;4d4LB(fXPnpTnWL@X@?*$qaVKISLURHtRH0q(o;u=Rh7dRvLtTz=Rp`O}}>qmk8 z$ZPe9FyC}{!Pf5$bWh3tDd(Oz15M{KIEaBz!va%Uy3=s^|rzO$8;U$^E#ZwP^+)hE$5Nd zBl8MBj%UOwgw6R-@stnw@aWU!cUJtd6K`>&x9@`g5Kfx1W23y*;eNaIz6Uujg564& zRcHwx*&7=b83|)>>~DzEN=DMP@epo;3!#5YMqSIAV`Y2H4q3(wk^vEyy^i{nFe(lF zLRl_l4O)J%!`eMSxd#|@Y)OP${<85qX#p_X56gbuMFAIWI#RkFiE0O>;YeajmYnv# zBqH0ZtwS+psfUd8M06~UpN25UX`?t0x`_a@z+M&VVjk(EBQfYGr36eO7l{|^S&_;yjLjxxp`MZpl zZ<=H1YmL$BN?~>slW-=*NwYIT&a|nzvBl2?B;l}vm3~^5jCw8R{X|Gs8hvpk`kii1 zpzA!{xue3a#Yd<9Nw$3a(jg4*WVXZx25bCXsoKIDKGzMIX{<0sG)oEH)~dodAA^A< zCq%p1D3>aVpW%Y9!Ri4Oc(Qu@hJ^ROBqdk>+m~yn&^DD}~5f&3LhJgC+o0+UyHUBO)g`tLeZ>Y*1c2L=Yh5s`o z1@U*NxwPSasGJKgsjIf*U6z)jm}zLbm^};I8N#*$6X~vF3d+y2l3Yy+lPpVyIka*V zT0U0|Y*qBnA**5$ue`K9b`L`f7z?LvB51arD{wB}fQ%3m$|Z&dc{!(>{%9h5GGoiW z&hQo?9{TOpc?-UfH2e7kz=ac_aIBBPn6x19R5}1!`A9KW@KA`$PCmnkFM%F`lYJ`s zh0b+`E`+B$KaOP|T%cCPw3_S0KZ&mJ#ic`Z(QDGC-PBs=Z5Fk`add%@pqB&zzI+}{_{5Y6y z%uCfA8-2(bDB{u53Jla|vH448n{wpAPx1nj)!pkqQ>qL!)|_SAmy_BIi2$ z=An9XK%51(i2YRM{Vu#DmKs+o{vvC1n#SJUzAc!@(A}XQP};?qIFn2#sUfuD)(8Ge zhr9#)!&N^7EBoRy5Pi?Hx{#sQn~LYna0w=~ve1o?Hr99}LhUO1rEZo;J}>54vT`HZ zLi(|g68$zeiQ5Q)QHU7)=s@RTTiA0PSpr(EEL`uFs( z7|!|$KlxC#QT|_@IEH@qiT@P?ty$Ng-}4?hdpN8A0<#C&K~G>9*=TzlM~RKVKWz8n zY%_)~2?A%QGDotb z%z3a^HK?`woU08{P^+?}?-S{xLehVwdS1GzsdL#?oBmi0<#jJTfp=HP@T$=d4p!@b zk&C9k8&Z23#P7bp65te=b|RFu;FFSaGsQyo+ith?sK(P$!Xy5~Jvr0)u{v*(i`0zt zq|N+*nR3XrDU8HdL+9ihjz8~oM=`SI$GiD^Y3Y2$%u4!1!K^e7;-KOtxk;V)9Qx48`St<2=@iw z<4zE8|IX~$D*hr`dyBJ2xisb{^}6zU%M?o$;7e+7MBWAW#%#ylH=Ig87w%1|EW3QT)36F40gN83kViQnyz1>7@CX+%CL&feqFX9vwm^EING{OsOW66Q$w~|85kDOjU-HQc zfHS6RHbB&GzQ#bmjku70SseYOmVQ*2`}D#iVL5KQa-hEk{gDu^<1}^2J1R9-KiB43 zTAv5Q=iT^Jf2swa>lhR)dT4emCVn!}dB(q*rs@hmvULW|sqlA%AFJXLN8W=&xVgAa1%~mQGr}QQ@!I4TO$4it&qD)>c>>_*E zw~8Rc(+_T^*&&v){GK|t@5WE>j=td?n7AB$Q~5k^5D6+eK~*&-q=h6eI+sW|YE{f& z{k12cJNQgIxBhMfsBq(e4F(MX!h;MZf+^oL%xjj&Q>a7 zF7ymEv*{!QSj(^AXg4H1)gMeOKTkiw>U~sQWNWx)Q66I`e?Dlpby4doKoNdDZ)vY8e37%+| zBal8lm9{dCVriOP1+aNa>F$+sl_0v1GrpC5*B$l@tO*JH!_@TIUUhTR#o-Mo50>|p zSRoC>iVQ1b=_aT+iZ*IhVCiNuvq6ka?s2iF9cC3*nAR2R-XS)4*oZCeQP(JWfeCn) z4@yg39%(v^OaGefP3_k1O?X54PNDoEIxBC~TgFT*T3@u;jK!{o=+R=X`f-x~g&(zF z0?9Kf9*gXx(0rb>wpQLCu0BE8CCIjpAfqqvqM1B{e}t!gFMR_P-ljsd6nZte14EQ_>^>fiTlEt;Jc7eJh~8nHS8F}5a{}| z_7qHo3JZ1@jaaoyMD;zh>$l5J$c+#EP#Vu?>W-qWWaTEsA#wSLNj__rUYI4hVQ}ju z6w-4f)j)mkp?3oUTU%R42nq>p(=ESMO5OuT#Mti(Yt)dRG)uRQcR?SM`vEtz>g6-- zwv$k8Dp`chf1X_1!GBSQ(`P!k=i9f9oj-K?QumXTt{GXjXB_2S&+*e_CJTxsxg+KQb@O^o zcuj(o$l2AxWFY!lpPW(UAkbwoGH_8xk1ynk&z3)+T7n_Cec%3i9?xQGz#&Afl!rMo zTU)EmTsEi3Qd*h`1vzZXeVUN*i{{L5oW#_@>>}=));M0FD6y}{Fll66wqP%xNY7Y) zBA=Wi#R$?GW`q5&?@Y)C*SMXFPULQ%sww8++}4h}p&0%!U{0)7TsA)|;m7w+DDl7? zbywMap-P`R)nu`TEBmK@=r>6)j3Cr)b7Lg%6b70eAE$u!k^x2dF@}z?L1>ZqX9a5P zlHUb56p6tZJCt=#-Si2kM5FhwGA(8!o@uT>R59O44o%Axh}xp`nX)g1d4?wHg8gr9 zAXa~cT9-Bq^nsY21{zN%r&0W%&qW&`^@a8;2x^CI#MKd(v6~dV^DxFkud5+$*oo}J zmbM$C^9=mr%H*84{1Y<6l>Xk`JvVABgF0d!Nb#K3`0;yS@JhpsRvKEv|F_$I8 zC=WezPw=$889tCoCFy-f!Cp*IR_*TE>qR4V>A43A`SnMuj2^I-a2o0{-eMA5XZ*o@QUn&u)PQ>yExP>l@DOr2`PL5$?tW$)9%P-^S zPuGEZ7Ch*>bp6M0i0)RWB0%E(7-1h$WO_?5&hfv zfj|?bfqx%6(U_ogX-ikEF*u=`UxP<76QF- z@ePby)^v}CVzP|RKkpwwz}aBEU!(`*X%xZ^{Z%QYS;3XhK-dK%bUXBCIL7rr^U_pO zO0J-CE%Nk~08`yC+}dSJOay2goeFP%%b7nkrZY=>mOS43zP_^LK{j5v;9;EnCZ$ei8Bej zmGOr*#aS?a4H3&QwRv-PW^PM#EH(Z@G zwuxma(7kLv6XR^08+^_ZczIEEDVZ^M$=?FvdeYSGYPwM17Ro8XGVp;VK2>-Q*=N_8 zY`=kqJxUEfn6^xl^deTmDfCc*g$VDryA_s!QiB-o<<*R~L+>fKue;oA;^X}=-Eo)(D;gF)Q00R&=-R@)f+}N2asB%G1#%ggpO9>z}Q5CW@Rrx z(k{1jYym(SH8G?PuH9g=7&4J3RGT=M(Lx=YxDRUiMwA=83L4R)2S?thQW={Nx(7pmxhXTLEU!7^8}l=E`=R()shJr^4equus&=A$4 zov!x!@cT@qFCr1!dQCZ5VO(SyiL!b-9&X;UcG`%>hCCtOHagO*)gUHh-)%VdnFFl~ zK|)`LcVd$uQrPEjj;8DOd>n9LWa({ot$lB?In0>J&23qeuwkKbSFoI!cq$DOx`Ydu z(TuTP-tq6CadXfvZ86l#(hw1)eN^`&U(aFK*X?XK6Jx&QOG(z^aG)Zw?U)3xSC8;% zM0dicel|5_9{*f|O4=EB3l-+#^Jzt};c0d>>KvGM;3ePVyeM$Wud|Z82HxX6*7j4` zn$aFjBy-bTJx&*0S0$haM|6BCJj(e1$8Z=_VC6+xObwaTD%y=|rSkD-L zAGwI_EY7@$UXD;}fExe=k-A=qp_Q6?rl9~4E5!_3rqEe+neUJg{SG4x-3Lvb{DGA!e+IPF6or6MU zVjocy91bH1h9@o_J`M}9QYuGydc;Rr31fXzC_R;nVJ*LNY@Ce=IE@yHj=`tHQ#ezB zcL9&SKsn#6Wzz--7L+wg&b`5^)zS3(Ggk!60wpRKgJ1^b8Nb5;4Hpb^=JROFSg$Pe z+gKOBfFO>ypHaK8{!sbBVbgFdMF9rIbO%~=+T}wvB^4>kF$8C79eR@q><&Uk7^9BQ zqo2=k9}D9Ges*-)Ul-s!N`m?|7J>8fM<)yT_mYJEv!n_LmZZS)ueR|(!6UytA+>D{ zp?y0QjR4H-!#fjs!@eUh?`o0u|-3WztpO2V@o*p$y6t1kbcT8m29gIj{Ff1p> zu7_UA-OeLFQzQ)~iUR4K8&CbTCV9KV}4t)pE3Eg>W9lv8Rub&az{7HY3_im@8y zve2&M{o?2iek<07M5yFcvfGK{-6nmvyyaHa5vXoiK)Q1pJiu`bA~#5#SmuSMU4umV z-s=K^yVu4~n%s(iXp!OBsmqe2wSRBg80>?YPDJNAZK`n)Yz~kYX=PXhg`65I$Z0wMadkj&nwXAc1|g zswIjyT8xW)XwJr3g0q$I0#40JtRN7TX(KQ{4lKb}vyM~hz_eNF98Vs>#AOHbwIpAK zzjv4GuR<<&lh!NFiyr__H`ZOO-HraLp+{K@ti9H=n77H~gX*(|xK2$>;8-u_WxmpS zw}E5_pDk59n?Vc=D7we&>Uw{a@Yd^d%+rPR<+c9){d){>_-LjFD|g0F-fsHfcH41M z>t&9_b{hC3EwMv`)XVbsVZC&(;Tw~^(o=mzpR?Llo8tzi1_S&mYb4JirFG3`I_h5J26fqmiHCfT@J_Dg8qu_7;&IoW zn7U#$Lm?{~QS3|~wo&Yb3u^;`_>QFL0%uZWGrDUNBB)n9uUNt!yhNOw*)gQEj23!Foq@nU*xkyVGM;Zh!wk?tA~$N_@PZ&#)%nc)8bB0o zB*`SD`0k0L3&J+9SuKwi_}ozpFJmyzI!iao$%Ro3ZH;1`#70rJW2A`Ii5Q9pYdy$ z6{zgySvj%MnHw1*8Nj=I1JaXxxtfUGyglS$fb;EK6;^$J5HAi1;Oj)#{?&g=5zZx@ z@3C<=|7t|#wkjah?b*?V^qVJdG|?!MRkewe8q13 z22Z|sj>2=NDTHuaPS@8|iK0nt9p}%U)c7bSp2wdYPm22neMyAekP6oc=z6GeKtwfm z);Osra$&Vd3l|jR=`<5lPgyB?o($F)2>Z3C+EsrAB1@=A`F!jvkCS982id~9VER0K znZAow2fJKtg5!(XHVIpRIZdSbAGhaQ+zb=H#9i;@=%o?MLji+tO*QUP&xQv~SYfe? zNl_bL>T{ka+F8)=c@DtAl!*of!ANnEIkMVEcTS5$BHGRk>kjB?gqkQ;4xf?6?vzdfF@0w$e20vwGpOOh-kdpTx9rJ53@{P{FJy3xk z29Y&7{^vO1;iPjGv`W%wq$4@b0}7Om;Zzq6V!|2$bljqf#f}xD+!cWch!yyD9%#W^ z?FJdWIiz^YDNi0A2<+AiCfCJ`VUK@1c+Cx2Q{C76_rJ_q?jmLeSskS9>{eoFn0fG<%z5_a8Y%NodX~5?# zuQSK(1+%x!TXQR{<1ai)-yNfTbFRJ_U_(>z+l|D?DQ&*9e=B2JgkCY*Sz&FetSDJ{ z-LVyI=_xJfi}JJAiT4KN_eg#Hv^x(>(pJ-%Mrl%-+BW=E64yk#%x%q@0??cBh@o`v zUX0Pzz8!cdge#PeS7#Y4DSLhomJROy&h)m01a?Ps56Nx|o2K~f;I!v3^ZQ{UCQxG; zyn0VIEuvYtPUT?Mg-nIA>-i`4?dGU$1MHlA_hK`-a65SXXLot{8#Ze|HW+Ukn?*C8V! zCNok<;nW1n4OQS%gno`YVbx0}fa+2f%m2#6<#}zHBEnO9Z$m`kA}^tSm-}vteB$$k z*ZW$fj`}wgs^Eu=aelHmsu4qtumiUEQ+{G2jH+)}3jT#V)itE^NS6yW(TV+$zNg=f!*o)COmb|u!6`<<-fX>m z$o`7WGab&FTN%n!<`mGLXzI*>?8q>@&B)MW$OS(XNH)au{<(j#WQJ;~_sQ-$-C)-FKejQ5ge=^8&yNx;Pd4;D5k z(u7Daa^Uvv33*>}N&O2F_bCDEpN<=kT*ktrE=815$892=2gYWwyAdtf7oXxb6q`J? z&>4Q)G!ll$Z}1M!230%MZtA)yW3)RvjLisp{^YiVtKDJ>i8PhqdJ`hybDm1h4>(9T z6Jud^#@_3;`4!^fbT~sL#pkiOv#}4){LbDvHW;6;3DNyV4CT+x->UZ;CiBZmry}wq zx(4?4KGb3RAE;b{m;-l40@fbIPj$bBvnM6L*g?qqh z!*I#j6TQg*3_7C)2H*~Ic+RqhW$;V9@83$*xqyr~0k(^8>g{<0FI9{pG#3F zYlMX_+Jw;3floV#>GNWmht6*H*4S6S)~}hy*^uK8crPJ)f*J4(O?%)>H+;s9>|Woz zfalT^Q~e7V8&$#{^3F&uCRe6;e<^t#Ttt<>`HOsEKK})pNV2?9Gk_Hx6|F3IG!^n@+^o{F;CyB&Ix0`OAhcuO8p43&5$J+Si z64<`Tp`I4v)ilWlp!Lf;rk$6h8)*C51AKqh5Gm9>YEk1eQ-Hbi*{`Xhun`$Nr?5^|boans|1z8V|J&__S%<@oEruchi$ohzidn_~107 z9(l8}7%T!(n(C5d+b{kS8Sq-e!!=hhWn1nFoQ-X@I$vu@l-$T|kpAbr661@}xsLa- zEJY-oKO|n~1O?=`Fp=Mg_BR;kTwL`QOx;*MYPI!vYI;XtFNew)u_Ibb+uop3dZ~H7 zUe(Pxq>cI#D@a5_=#rFsM^m~KeqxwoT|wyFZe}9JjJ8C08c!8goi}WJj*Las+6! zgE1F(!dU=FK+JcPXIb|Ww>^M8=4Vhb2Ps#dK(;4sb0CZV%X`V~%d`+xCMzo4=Z8?U zGP+UnOU~?@fQ-uNEo8Is@+y5T`CPCT0o#&vl?J?%L$@(8woR$3Vva^YFFo0D zza$e~SP`L?{(Gx_#s6}fX$7=RILiOgR|NjgMlILZAtcpjVhnw!STs+Iv4MWpK_{mT zS1m`S3eqxN+5cYkN8i3om+YgYrT{mSbNKLKI(qDwKYH|-JFs}+z&ZwcFztoN!H}35 zWZ=b%7wDyzUZQhn&jvY}+cic1a~}bnr0J(}tgH6FlR<()|EE0IH(9oNRH#&y$N3q{ zVxC5>iR6`qbqh$K0MCL9g}XJ0^)=#B>BvOp#AOBxN+s+?Q$m$diZWhFFXTBIP-q5j zA$&PW30XAY1YWWYZYzz`bC7}SVH?Y8qoJJ8=oNKAb433D4zKZmFvF#WhzymsZXYUX zH$V%wN8=U36!OJ#LFj=|pB+Zd&wUhrIUm%cWvVcifzHD5X|VbLvIGsXcyGuhQPe7f z*$sJ@lkpUHg>T>apX8j4mp&gh$=^e_crFJenC{8^uL1erpsS~kmgN5wgzz%hK#a?I zm*2WF?Ve9AmjR3cBb15l%BR3YmH$aJ5R6}*2B}_U2_EZ)#< z(EOhTh!;TxR1l;5-~YN^5hc=zO6NJIGaX$6P>*y{PLc1E{U5%@1ghD~;YhPAC8dA6 zd|9sLa*pw0tfHHa-Hqgzw;oF#P(4j+z{o>E< z>}=DwzV$6Sy$DXwWc}~NT;?%^G~K_L<}6!-D)v9t&(|osk$*I3Ij?jO=m>Ao+u$n0 zT5Z{Q^wCH8QV8gz2nvHB3AJ#K5ztYCAt)E6DD?g*pQ3JDO+gd&g4nBjZ7eg{f-Y7D zz5_?nSa*8--~aH$PL(RZ$8Y}qN8?@m%@qH$HHo6Tmr;~Wvh>~d)E6$+<2a&BEXwrvH@JIKU5-Gex&90e z=({fFfpV(1*=HzonGTUB(VSO;I4%p081%7E+j^Xnhnae8GxTA0s=B4;LgZ`zq3lqY zYuS*7IV+w~HYjm?ac-gl)^j~gD%uzQkI%zHI9I@;rMEo{zHV@}!FEQx;pi*5T<{0O zvid)5>sVUNl=lkN5UeEN`MR#?CAeZ-qBo*07&#szosONmR z4xgJNbhC3=3HmG=X6f^*c@QAZ(g!Vwo0q154`<=L>f2uBLNKE5S20dqn?ROw-!cA7 z8^tX{{^TvU(93SR3F*#F&W#Xhp5H4m$_hq1e?E z**x0d>cU#Bka*^qXY|slIN@-aCcb?pC9K(2K%AEHFw*oJxyXEIG(kF|5VYtzd>QR! z#l}XXU`o{vq(v(oL4=2;X-0mp+sJ~(`yyiQdSzmtBCiZN5k*ywd!`Bd0tE=y>Ag6B zD%b5tmNw$JguLkuNEV#Rh#;(|(ziGk=A0lkPCPeJ!NYUWPuNFl>~&th;DshoR~)|n z=#CgRd}i>rFb2bO{l*RFtAQsc@dbX~5NOyp{`a8PQy#_t9-Q$Rb;ewN^TtM{&u@8b z{&7w%LGH>119I;47K%hi{Mq%pd4F_Z!*ozv7O{aQ?|T~Oi~J#gF^_M)I$NCx<;pzc z?)qz<>I=_Y79qX$H%t5<#&Pbmn2+eYmvP+W&d>|b=ZUTkzY{U_SzLOXrUm!03uTxN zO7VyEMl_m2aXL}N7sZO?toZ(MmU^tx4!KdM_LrUt784?o+DiI%6{du=a@amRUEnIlW- zf2;!OP`0DTyqpF+F*sLQY<7iYePCyx?#WFV;{N~(S>&@kPC`&rI`3pz=VkXYDLJ*l zUw0go==DUvJMUr)o%=~?!B=uWBc_zQqt7qob{1w?ALee#GPaXjtOryFB}cn!MiQNK zZnM;l*<_t}p#|S7I+rX@m%`FP?@)?|c83+LyQg)qE=Eq+inhr;4nt@TDcb zEuM2qHv5O4y+{pK57sIm!3H`^Zqo>XXCuPe25?Nh3UJhLX~p7^>6n=@zb_q#%zIQa zv|~Yzj7^e(vy;sPFdu8$RDTgRo$j1BZyt&`4{y-t>dLvx-E7n`|Rj()qm*{7KsSFgos-nRfz-K;r4sT6E z7iAcav7Se)Pu1LtKa4k(#rn`m6J_?3|EZkPU~hGo&Sgh68?-)c=a|oTGfiLsdB7j- zOfZw78tUw}xmT+ck~2@d>^B;M;q6XdvKj5o&d83ICEMq_5M<~`iN+!&Yc3eGJ^xd` zO(7ZVasZ;m>ZyxBbba7C5|H~d_BIwv^zaL~&Oq+y-;GU-MlSKnjQBi`K_1_(D!04P z7c3=oWS*>dO1tV&NJxD^B-t*kWJWZfsYYIN@Jfjvae5Xq>(7KLa6unk+6t5 zR^Wozn{|QK?%uNybV0tPtrD~BZ~Hk0g}WL8!9ixvxZgWzNJ$DtxfND>C3)S6NI z4#FT8oiq*kd8$0Ef8YSK=lqMl3H5Q^eLFjW77N56jPLTXU|qCpA-iGRFe;VCDes?g z-T4kKu9Udti@ml|00S(WJetgV15KYQTT;$?-nvZ@OFdMfVB!pXu+M*JQ($4F-Iq4`z;n@ z^*HGOW;}>fU+a8^@q`WmdAav3TUAcJ4a_v)9zaxtP6cOBr~q9^o7Z{Z8Wo>XX0m?< z>T(LFHC7D>W{L2E&2DEU)d{=v9MRyibM@ApS2lD;>YN>DU$%!|b#(@|XCn*DRHUz8 zHPD%^B#rEtZ+B;hZTfD-Rg4{UZ{4Eo@_og@C{8OwqGO+pMW%co0N`LaDBf z&dBxsKu}jtzdZwG(Qdzhq%+T5l8?c-rrqx7i?nyXdtbT>ax=cxqa2Cp0xQuWm_x9e z+pp)ZM*&Q|u{h6fBTbnIO)i}*Xj^_}>3^K_`>FqtzcjDGo4LtGbc3q{UIxf&+0bV2 zTEBa5uU?y~|1ql}XN!B#8^X3R@(NmvJT9GqhJlIL6(RS$`zJo}-8pHUlb7V1o8^^j zTp90DOK*2NA2`Uyyt`siZpZJ?Y$Nf%Pkct5v)?)L)C;TVGtYSih4--fVK>p5>g;4I zb)tKBcQ>ZT)eVc_1bgF)U~U(9?GF5*DA!ol_hP@3AtXLgnYv-uWdgfMcPEC~+wTG@ zKFZ=`=JPnD9fZ8%!YBG1%l~W>fcy-oj~qVYj~_qL2LmVtcT<)8@3Est>D}*sk9+MM zchJ$r^|52e=&2{4a;LuhDE)80^E>p^Q%}XQ;8yxvM+Z0Ebd!7X8&43qsrG-To_z;3 zyLIpOzqF5NiabrUkg7XF!d(Q+8>|+r+o6^W=nPsy*TW>vIs?k1AV8zXbhHVKV-Qk> z@dE~oFvh$Who}`sj&eFgJC$MNta70AvM~jDw9~B9Nw**B#%Bcmqx;1Q+?ajpR4}Ge zUoNW!85)VoV9Wtkf*=CV1MiC!4Pr{bRI=JgT)@kqk~wzTV8x2ykuczS{8DkNe+UgA zYOwNvW2)x@jw6mI&eQNne>Fgjf5D@bxwB{f=X~B5%V9yjQo)nGOkx8%FJg$xX8oMs zoXz{S4$i|?1MnDpA4`dAdHrs*ha!#ho+82j>>CpBe-c;ocum<6&lV{gx01aaT%@)| zLzi|I!3oz{s}vV{B&#-f=kwj&WK_p(JGhLtYf)N-058UpB_8|6b^E4$K2biU9+f|pN@K&F2-a?|HFM|J?dd;{qGH>q4-wI zWe;Q2G)s?4RN zBml!|iAZ~RB6c|pcP)Lm%rC@{y{pDCe`A%oK`|iDu{>oqb z`51^mxci>&_kHjCv-JP^xxeO5oq9CUmSkKKjp6#h!Gj@Cl>0u-5245NWXS;>SLlBy z1MCq^U#7SJiR59ZIHtNRjDeQ18n@8@1Udt4l3ZD5WKe_Eg0=hXCsFxkgbZUEbpYl8 zqddQzOqsQzp^X+(33z*3fl~$*8RacSrqjKuELTb;13SY2%Djp~# zky`o_x_TA?gD|z$w8j=Ay0> z+HKBLIMLf>0u0(owcW_qV70*z18)3GugpMt9l3^lC^_Qb|wxY*6kblNVPHg$LVbqNfQdB0RS zW$}*v`M5a4@3M0q-R#c5cFgFV(4XTPr#dkmCsH z4ISHqzTZxf`ZcZcjpt)@#D{ilP#3HbUJ>^{^+q$X9Of46&O1ZBmnLyr$}H{C-ktNx zjd_SUbo;9V{d3aNE%kN3l_WY6v*?n96X6$)n-Njr_>)wjvEzhJ&9a`vszHs%DZPRE z+$;HS@&a9g{CzZx0A^c{gkcOA!W?$sYK>lPg?dmOEV?DURYjGaCz};JCX^!gZ?~ zSZGBAJARjV;Q_I9j9V@o2ama9`?kdeX!E>2Av9vwdjbP5HM-XUF4ec&$<{6?;gfE0 z+}|Nr4iLL2e1mS`MGSpML^-zW`fY$ok@T(e9^Zm>V%Vh>C|UOPfrupgV<+q``--oijHApD znr4($1jY~0g-nc&vslW+Ra$f*-zmDZ^HbC-n=0N~#YA52M?I70wt9ORBGRdiOCj9y zTT&8x%Y`ut__H7+Dgq2T_>hGnx8KVk4?&v{FKN8cAHqoC#-jy*<#m6nu`!q1Te9=^ z+izb)y-zivy27CNs~Sw=aaXG$l<(OYJ;?w3jOtELM3J2Sg8zw%fE^k0Ha%lwtLK-* zSIE-|SMR5#Pa`Ma+lLJnbYSa%J9hM_-#T!h)+M@af`1A4T%>mmATsDz#$jhZLw~5U zuEKcEq%nmiIP#JPO3Ob|boS3sIq5pNvj)83~#xd^#6AP#G zAl-1oF~7OFi3cLbe5Cjv_{nnakXH&Pa6~K>4=VZhWd9rG>-^uJrBUFm(WUw$;qGDq zZbbi+vN;bQKH@r^n_>xQ|1VJAea}7gibdcdz<>JwpQlr&9?f(GxclyV=mUS}S7K1& zjyvy+_F~==lhCCIR{T7&KX;BCd}~y<8|RVl1vs}c7IA7DBFsC)qXT*w)LdmflE(zn z3DdpzdJHp;+-FT5uRN?(Kw{y9IS5EZK!KA$OgeQCW_41!-iVC1TIegGmKnujEHr)? zAN59bR$xeT+S4b{kP@0e4>G7&P2lPdxQ;rC<`b0;xN~w_ic*R~7ywRZ;O8zBc%V)Z zk=5e>ZPMeT{ESRfAuw_LSa_-Fkm+;EnE?F0)F{*Kqe zZ}%qY__5=3?1p1;-|K;c2l4ZFmRznGgNi5mxBU-l*eI{4c>C9HwwPvgWO_Y zQhrH=GN@|sApeu?sOW&pApcWgbae;CsXA+hzmSbo(KRFuOLQpWZ8%Tk^qDg*1SP)p z{I^^eb?P>JIQc0&?f7SBDWN8qvsQl;!FuS6LjNN#v17GY{crS(;KL!D0bcd`19a+h z7pTGN!0T^0Ko382QOJ~vPR4u5{|0X@tN+2C%JW;G8X{rMFXx41-n$BrJ$I8J@} zR3g!P-rDidLl5TXcfRg*?$o2Fgm6z9x~n|S7_jAOS^M9aHn217Yd>QDW4~ZNBOU3< zd}Qf=3_gbB*PYz*fAHkRs@!gHbznwo4u&xxt$N=_&1!}ND+{eeNEtw!$AN=Nz2eaI zni1K=$okDYf8RHf=wzgp06#K&e)|Ztdu5oh5=46N?Wzc{kkKci0X=QrXlHh~$N-d6 zxuJc!e(Ot$7N_e3gHh9ADbIo&EJt>eJ@=pY;_L=tC@2B!NsbxfLPJFNQ5MWdpPF}q z7OM1fgVlkzefQyfjRu^SL%xF|NCES~yn=t zP=v#_j-R-}-+c4Ubm;Km7=&dq5NFMx(}_KeqCNWXs>C-EpSW>O_FZ2hr!h{K8`O^{ zlGK;>mzDo!Fqbgb+vhrk-1G{RARpbT*p! zdShe5_1{g-^*MtMzP9Qq3{9`1jmr3phTd(r-R5q(=_WdS_^_o|w4;&n!?RLedvREg zD5uL}K20z8o0owAg1)l^i>5JVPg^wHK)XaarsJiTUUG{+dghsD=;^1Q#%JP%L)nMJ<;_2NZ(#R+nM^v#}5Jx%n$qYFd%g!32Qy6LvQxI-IH3As`%i5`;YTDFJZ zS!d-5=b#*ef;XM4qQ6l~zu9oRto(1t*}}-R=2c1)&JsLws;o~m6mtplEgTwuaWRHx zPM>i*yE_!$;E~5ba-KIhkJ9vWuoJK719m37Hyy@IBXo(L*O#RKd2F#yNY1;$_|-bI z!D@kXf`3N!e^*BHe}B6S|ECo@IFGcT&v^LWuqX0;Z=_6CudxjxN&PwFoqxSv36<7cTl+j(hrJ-$Cxn&yaiIk%g^xqoa#&*`y$sXHU+{ zRSra%|Cw()!P4<@`h;-r)w&6G4C4_|gtU4=uQ9-*7Nz?znL` z&ouAzKAx@xF`rNRW`p&*t+W8ucNJk|@WCf!PC}B{^OL0zw zJ9Ov}{h>efhvI3(-}uHi=(C^wY&@`L8E}TtbveM5ffd>dEL)cIFW$_>zc;`6&Gd#h zyn%lI_kW+xpFfX=A}VuF%8*b(vX~?4Iu+^X0Fmj)<+m4P7!ihXi}|#pq5~b?Fm@WO zDuA(zvITPx7^_5bb&rxYW}pD(f=<(Oi|4pFdkGMa&Fnj}iWnmou$M4yu?|4;*|HuD-j-LEe2i@+ijxK!X1|9!<7reUw z#h3ap$YDzY)@8^UZ(q)^3=PMjj)I}&uNL97p{BOwuz&#dh5`kfqhuoVf zJUed$YIKId3V?S$M0Rp|M;&h2 zzi)$1{C_Vve{S9f95RuTCsGS@P(nEMbv`4KTP8~3zkN~kcbaM?)oPjCdv!vxvQPyPu5|5O8<-g#y;^%hiQF4O5S50(KeA_ z>VLUu$C(%K=^Z#P!O1h$o?9KG7Jl0rzS7H9k-%x8oy4<5kO#=j3PaA zVM+7dci&A9Km0H~^2j4J6`XPwt`x&vN}WivUoxn{d7gj%d3xc67w9Wr`3k-6b+4nh zz3pxExzBwro;2*eH~SyUGbz2n-H(qRCmeS@j$o(=qd*%MDZemoQGk-{pJGl6W!+%) zp&!Hk^=-+kBDkr?SQ)7~*{Y2%!jeUGC|Q1vyvFqtk#=B(^|o=7qljNGj67Z z=Z>EKhFve(hxiy*m!Y56kiKXAubXY*fV#BJ(O^YknE%UzR4p9K@IO)Ua;reon-l$) z3jn8}O$8z{E>d%r`2=m9MS|Pf?Bp^#)=%&D{CZ}gM;3B9;(7XoBnZxfTt4p;;@+{w z6$pAY0=$p!S58#;FC*yb&&YCFerz1zoAKdR2erCk68|SLWznT^kT3ZkY{Q~|M7=KA zpDBIhUz}ElqyX( zK25&7#4!nH(WKO_LjUKk1Kj~&`eWEfd~3*8ve?vmrpC3|&T9f|6_9x5nP-I2u8lj) zTS;f-z*(FzVQa=*1}}~J!hqLl-iX|#y0c-!D zY1jr|5t!Pj&3T@E_E~DM`k==Zj8~^08;*>trCGR1Ie9=s5r|MUVgN7WVi~2%JCbjn zvy2On50s+x;;Q?HfbLk&e|P@8|MKo`TpIlJA|Ub0A9Hl?okU+=i1-kkIQ-EIetzqQ z+jwd|DCZR&+>ICjas&JYZ7KuWXo!LV&HKqkd238AC;#^}N=Jte-Xo%_lcnhd8gd=n z9{4KD6Cyfi@Cj5@gsCh7kHy`kq$ z>4dsw2(LQS`JeWU|FvDDGSfq@8)uXDFvJ zi&v{7ay?YB{}rG0>3~B;OEL`v{BP9Dn5)}8aC?aF10h@omnMQ$Tq(b*inpQk*WpMW zt^XIlfArhVDY??ytf#|@>KuRV;T^BsrjI^ykaCQL=TSHPVXk-o#{TJgsv8hr?8i|0 zzuTIrz7~eM3j=J0Qc<}W^sLFS}(nm zZ(*dNBd#%@Cc&4hBj_z}c}sMvmkCB#2GUTvqIndS$;)*beKWayt=v$15W;GSu)5@~ zyY6y}pahoZXlr2~!dMfIJ@v{zzrn`#5fw{`EqX1Z-_Zo2IVOZ3ee_Xku-fqOXUx;} z%`x`g+zw{0j8HO(D$gTYBC_7X2^nhe7RWf^G{$?T6Zk0yFZfGA-J9{~lj^*=jt924 zMIZd$soweBc!Au;3%i*}L42kC=ro9mX3impDtV$E&}<0dJ)9+w(Wo*ORQSJZiQs>J zIaTB>@jyGARTs+`q~FLls7rBPj^HWpS)ar06O#X(!T%Ob#{LYQF7A;1?eC(qi>9%;M_y?D{aQ;Pl$88tsBM%?!(tNihB26%2l@Zjon}xRLDb%YbSg}yo z|BPPP(phgC{F7;{JlFDfdHrANHZ21htO%@CKtfG&PQxgxX#{D*KY6vn9Uut#5ICC`57W$g3cIxaYTmshl=MwINS1wuxL{1RWr6o>zz)3~QkTEf|{@ z4ORob^zS;Q2l7YEBRw}Xuz|vJ7ZkCUHDbQtC$F?F23f}Ug_Ff{mZxfW&xb3LSZ<8h zh_^#MPX~f^#V%a9;O4vYY}jpVY{(_EU{>Qj`ovvbMBvtwc3M*!_m$xPR304N)JHiU z&^_8&$YUR@D>m$s}WPal0uo231o}-FVc-EF>LjI z=%I%wehNO(c*h-gW|~4k;+|V}7Ju9B!DqG-vMhjmJ7ng1jg)rv5&1qo(@i(IfB*0QebG?A2Pfa{!C4(D!|Ao( zWkHwQ3%yo3ynph^C+X!ce|Zc@s4+rijdOvcM%lPlN}UVGA8v=5M`DYJo`XG^PV@uJ z18op9NR35#{-BZ6U^Ri~7#KV00q{Sm@x?sU&kJ4N3_7TM!VcxVtd(F4HHMu zFHs)M^NIwI1~9O-8REgz>RH4M-$|0M3})U`rsrT$V_jk5E*NH_8UkfidI{wsD__ z*vTUo4t#&=i6{K_;y3l16dWbb)np=|mO*QyjLH90j;ZBjSM|THH>3yqGyHid!}=`* zBL1T{c8Ag$xMT5R?$!>&OW&Y#kN-X$ zKd?dXd((M(@ae6tt5Sz?*RrV2`rq~XzYnfV(f|DyUbGD66_n|jHE#tj?9cS;RezRx zFmQnFyX6}6&i-H<_5YAwXmIsmNdK#R1uucj^g2x!*LW&`@;;aIDyTqY21_#EfJ0W; zER+HdeO!QT(q8z51J%PP<`=;Tlxez;1Rbtd48C)jp$+MI?gA|)6aROFl)A+CXW>M+ z>17MKd|QyqH~4UP?rpcTJ)(H$CZL_~-bEM6x zZ~DTS6@K1DEW-cEp>qUp{_NSa@r_%6n{K|@-+JqI>@ zhWpkxzey)%@Sjj>8TXV+n?4mH$a89F4~r2XdjH0pa608ldotav*R#*5e0) z5YCl*%Pa#v?;(lHs$C33rL7y>)G$VXil7Tcy6zq$t>`YkCZ+FbpY*>+g+OKi(R?$m zX=tz-V98!J#$x<&j=-Gpmi*)*n*W`2!uSB-_(+k5_6pA}rXz{IZmJS_s>pIOai(T> za=Aax;lzm(G1DR->!MuV*yw3Z=T5NPlr~a4H^4*pgvj=$k<dAP|2}rp+@;Sa#~epC=lX_&2(sL@2W}r^5#}=-scm=>8?2B@w5Pr``En(`wqL zWa)p`uSkou_uE)&6F zi}cOS4HrHS84_N3+biQLgs#9m1r>UO*LR0v#@~4_SNV`kHehqPxnCH+3x9VWjA5Ua zy+)g69texUjAVp|f^j>5_nR&lV%w)rM=DO7xX~RxbeMkNy+25w_{9Gj_07WY^@k1~ z5@UnPVXl}xGcODTRSc+-`@tY2u)?$;Q3IY{Va0)&u|m}KDua)-P}Jc1)ekOBUPp#r z&G$Y{y6&WP$ePG0RJ2|hg3b1+k!+kgG)6(6A`Y#yg%Jz&ET#Verw)w7den*XqHWF% z8_o@`E}(o4KOCS^P{?MK05JY2r(LDIKnz<$EfyC%(c3LCn`6{2JAvZBL4m8oPkfq< z9-bgIp~cLkT`Vc5cd1h_J1wE zRZfY0H&hSHrJN2UVU<-lvaa6V-lj!AM5P#mG~14T>ffBC|N9$G#{(_@hc6wa@3{G* z|Jk=a>0a^DBJl8~--rmpr#=7e6EpflHxj+&{rur> zbqf=*_}SUsag?TAum3YaxEIpa|4L1D_k5fEG*>I9%Emh23s2fMDxf0Q%{m*bF055R z;!SUQlYiiW2PRD}Wit&58zS@j;RTZwg(S0(QO*P~mK-qSCBYy6w_&XyE%k7!dKXuma$KNcLi=YUpOXwE&68Ck$$cghHDzk54C_ zr4V`Jvhd|*>N4u4_XBpC+UT~>VLB@WO@x>?&2T= z{@{W0)L?bsZLc~Q4z|qq$X*Fh0Ajv6|MyOp$X}bEPU!><%I;*D?1@DDQ^7JN)$g`Ezu9;qcG9)oH!F?3fV=?3dmJJV~d`v)vLG`^V3KCZU~#G=)!=gkT6c zI21A=bzDgo+vtej+1aK;hY!(bKJ)K<2tsrRa88FY{vVQ;y1WKAL6&L_j?S}zqmzk? zf6kph=R#mcAXt?BZ~y%e1L2|Pw&*|k_(}R>-*%qvyX^vd;{Wl~p%|>_de(O*Pj-QiaNsl#uPfwg{O}0r?=tK8Pu9Fd(*v47)-|e7 z%{RcKgJUJ@u0xOk_kX3y|&HIn6pC;g!RGDeyx-^h2>7zxu1cD$>Vr>oJ8s z#W51&1xA6f?5vQtLMT!nh$zNb31(q5@L@W-?(~dQeR@ut%YqxMCcNQo2aC`CNhi*H zGeShg8@8CH3@gH4G;;768qR92I-6gdkZ)eD_ChA??MaRakXU6DozJvoL&D8BTO zWj1JQYcqZgBG07EPfiYo&STHoboCf#x_ z>OtmubsZXiwmf5Cf@LJzys;OY&tH%0Ue~IFNIjLZIt_Vt!nj??Lq%5@`Z_*d{B(nS~roV$)@;Ue@5thW0jXsCDl1rx`kt0EYpmE{Ulj zV3`6M)a~_iej$5zc6XA%cC?VoF39E0&CO^lKl9AfSywtY?3|KU@({Hw^}U3@Q=DGR zr}60PTAA84Q+Vd|*$^D^t~-Q@qp>kpSS`_YW7o4Ef9#-N{JA_b>F24lvn;NkKD$9M zmU-Sh`|Pt(7tY)U)2{S?`h0hgyU=Z9>_E}_KUZe3OQnz5=HSBFkHX4yzu~L-B&iiz{cca0#m6>SXK(7#1cCE9P&C}cZhxExv$V=wTY%eMR7&=>Q}!? zZ+zn$i}bg=I*9mFa5-B(2ZCus+1VQgiB(>B;rUz`jj?2hI?{%OPnMC( zTjl!xiSd!>?K1OHe@~)*M$1k#e{JL9#f$X#*B*=K&xGZ&MW7fILt(UP%glIgE?seI z3k6N&e-gT|m`Ir(zQ)O;2+(-*Jqsr4y&%yZ%>D5K3F0f>Y>L)d@V9wLqi=RgG0 zfNygs-zQ8$j-(~~7tWveU;El)aa+mu#fv`5Wr&qnvNF@;`tdMmt?FjXTYElKen^H7 zfRGu1tzIF2?(8`i>e$$rEdmm0{)1el zEVp^0^i!0_*4e?aYzgED6v?15l+nSM%xBntSy%RHW2lv6T=V~Q)Jk$8PB8+*n=bb&;Hpzi-CYp zHvGQlJ@1J@fM5K@UyOl)5MT&FiID!-V~@rB0XXmw%KXwV{ZjmU;DHA+-hchC|8?A2 z@pC`-bFoao83GUCm-B~!#y|Xr|1j4RaE0qoSNIJyguf6B3D3gsvR@oQ!2`yvu%~;a zPB>S3AZgGD8=ULYbU_`7&e`IxJDhTNcZZ&S>KRH_WJf@v!%KVK zW&4*f8+f$T8@v54_n~J(@+*2rwj&T4G~3un_6cJpu)}=}+Jq&oND+rQ0B>egMKse} z<$sbEKjOysU1EaxqMF>+-XZ7)tX~zP@F+(in~lkY)HD*%R+mRggz?m1gBkQU*Hp+& zg^<9O#JC`Y`{r~Sl#cXxMP*#60BkuLHj|EG9Fha3dB7JAuD zmaQcSYLId|H3a9F1r^SM(2+GTo}%DI~pa za{VgCutG1KZ*=~f-=vG%JMNZ~Cy6R^u^V=u$CG%4n(xOO>6)j6MF8GC{`ljZ9#%=X z@C6f+k*Hq($HD98#gP7|q=!2jcqW3)XoqtHDs!6i)#R$?K^IrTb57|yZh2cdUq;L|vDy(VKiX;oM{n)Y*AUOOXNWc(Q9E6|%Kl@XE z>Q6<7Kdev)`NEcqpZckvimMYspy5}3Y-q&~j#s`XFme;%$^|`#3Imi3WrU8OA~`?Dlisz#o92--+G{Du2CD|c z`o6BPjnm1k&<^!qMSz20cs$y;tp!7NfQ2lA?$Zu$_fg7JmS1sTZxM=F?| ztSooaiZIh1775cxyY5|WU$#F(!$<-Vh*6R)@ zIOueqQfY1y4d{QEi`q_Px}dCdEJ@iMiSqPvg!lRp`RJIKQY9AKd}X-~8tDab?IW zU-`FZzrdfc+u&DQXFZWj(CrHz@Z>wm{zY4xH` zn75$+WSP?!BoY=f%+2E!u%>+|ZK4A9SN^wi2DJ+(IK z{4UOe870Rk7IEcEEe|r3Wi!ktoU6H|Xhp_E)|u6 zirCo+19U042DZg~c!h4}N4PiXH=bMf1o-ryH|n$M8ma?C<0M_<)vvD4|2Y=Nau;n|+19d~9Dweh%Dr^F`rrr7uih5%e#+cv zaD`#5R!IE8AN&FCC5mY%@X-KJLOVlmEN8&|fI4r^qkakM5qW(@xPx;^N}rkMQ|yIb zcq_zSfzOcGD}-PJZ?_16g>Y{jw8_AEIY1KH90C-30o`9lkcX9XFDXlKJVr!C&Hr!BA8!{)S zX&J`2oXdx(CfS$IZHSM72l}@oD(I2kc8j-wt`8KavNIPx$rE-L9cL7QI&AR_g7hM6#FTo@5m_ zN(b!4X+pghmC%dd+|}Kj68w_3e-H-7uq@T|`7-)nb`uHNT+6HZ*^&Vbt}cA?)VX4u zP|v1&aaKY<@A^+TLr^0E%SpsZAgj~-bJqMpUGLRP3P|&imUT(Kr;eMt>&P(qvm9Wb z^4|Nd-o@2?cdo>m;B9RKS$PQ3HMmNeWnYce!D(ak5z$~Uz*T6efu@Znu7Pjbuypt5pR-x03sH*7LDkCaYkCs2lKHfdf4Z2Blp4w)VzthBiw)L)P*VI z)ZhxkS_LG87cZU4LXp&reO}^BWE%Go1(gD`YKX8hFlg0|Eiz%Q-@%^jF;I$V6l!@x z;35Pc!ZwQ#I0&m1!eN#C)r>I+frLNuNB&6OZo#V_LNFn0%Lpqa0`730#1QcIkw5ci z{!IQnDIb)1slW~$jse;V;T{jMB$8)2Kwsx+M?{t}fnzJ?3O={Mn8(6kR`s-f$!i9W zKN8= zX7u!T|0X9A4XZjY(D0l3u`=v9Yv+5tRS}1T+MsdU+5Eyl$k;W3-N?58+Pq zX8J99hJq2bd;|15cDr2sRGjl^US)@&H(2}mgE%e64Chr+oxY!YUf`u())(gnamFe7 zf5?uQs(%A4WWboS)8GojBhPFXy4@)&bXB>xSmdb)yRgL9wQR`FIG6MMAXN*(70 z^7?`L1pkkezf}IM>i+>+I=K|7O>->#JMZR1IP>H5OQ$J|Ulvn6?yjL}uFZFk(+khP zNMSm4!6=H+j+vX~vp}N$rYN)t;>4x?&xZ=9x#mh)Y1pYw+0te|aZy-(J_gvgOk3uu zoT;qXKl04QCX-hX)@sWJk$7V#AE0GIVwtFiEFKTEN?_QSlu-eHd8Jsqs#?^?2EXP& z#))~CIYXkxs3Az8S2zqY_4j}O_s2j)I6ESo>44`=j6uj3>I>U5LQsOshI1j#pFbbZ zj|c$<{?f(}{Pa)%bi@^C2nS>0*FG)LVGTY>G)TpL(^i_rRlNg z&~?`O2I=8^-l#+4$7k3_MVZb4izno>+Duk;oG5)Pz-K3ldKoFsdWd!OPM=S)EdnPi zzpd8#A8>fq1t610^}hoKK^-BxhKh8>JT?AraCIT;|8(zRJ~_;Tpyf5sFC*BMvyha% z*2@f`|A7wQttLXz)RV&Vp5**XGkxy4C6JFV;z75mR2Mt+WYs}P7uh^x=^CBpNjltA zsbh#&92q*yz=3&ny06q@^1tyriT{ndtNMQ=FZ&*F7F&%s|2 z(>Sbx28{@ynxj&-{_iInj746CA@sle%Sg$xH5e^8S!97nVP5tl z-aB2!fF_ey6xQ-k%XlH3dZ#Sw;u@o7+W5zNxQ>?u0@XSF`5Y(kV|^SEBq?Zw-Q?4u znSNR{a1i(~N(-z{frel~NDr$TbTC8b=PzdHvR0me4_7#ZRTuyCpZ-&kHyn(qaee!@ ze>;8UD_@~yfyYGOgSUjgLg+(a%V}Y01fQ}XMyC&q625mTuz@&hhg@ZWjfSw!LQRma z8wmc_d5zC1myY&d{Q={^%mFzj*K%Q*0K@vSoTY{Bh+&tyM6IOj=Hzp-9ABG>tc=1Oj~Jng*^d{+wFIqOI>Q`8$dKjrufh%wx9G!OBIjJy}n8 zV@)YI5N>8JZ_!9A7d*K=}NBGmuv^Q3z7a*PT3 zzgy|!(Zb|%pn7~Rg z6!r5h8uLm)Wx=A9-z9xzV@Q!s0p7l`UpTGp7M23lb?hY=!MLq^IPfg~5S3ALRo3gk z27!>{WC8&V4koq{>$0Zon83{iy%$koH-@9ZN`i272;@onEet$xgbD>(2oLb9@R6EF z;?=ZQ!Be9AMIkDPXF92$=RLhn@KKg`*~)!QeQU0{{=HA3 zy89e^&+b$E|JQY{_0Rji*817stFt@%odHt|5@5S^61!CjQCmxC*sg0kth0nO&-kCl z00g#!`O!7@73F)}{WyFdOZD}7VJwYExDPDU3w?VgYGBhuKY|!EKJi9yHQE>TKM{rJ zP7y8Zf95bSOp~-IZzrpd7(_~$7M?3QHa?J5e+hmE{qIFK#o+aV5Rfi`-O;sS-ec)A zZ9^sLz9gw}!TL#H<-LOz+-NxS3@-xP2d-yhk>HxQC>OPf^<|;IB_53ICvo@DwJhKh zr7iLQY<$DGYA`||7*SS9te>r}a7aOgm8O;7^u?{b@*%BysAY4YA+Lg{L5kJhs;#cc zAI#ufCVkqvsdYdOWOl`E81JC}-Pm1z`+7;$mZ)Vtji}-ugcv!2x`YA|$xI*vp0NSn8{l1f{qu)q$;p!^ zcS7~}L1(C{9Ge6J(0G|X>m_*w^k{GRXfy(HcD7F7?FAay5RVg00vtO7!fYDWG^PVh zlx1ffonof(vzuU&$vO4Y_0#p$}$ZQ-_`To z!CMPHs1VtWvb`q7O^tz)3i-~R|B<{ zEQbxGx8;`C9A)2!2MNkVb2PPqpuRw#Q5obZacxPEMl{EV7TT8}?=bZdhfRG;@H^|z zKKYu04M;N@gh(q7R%P1;l`V2LPyyG8Huv`S^1+oSPMnYxuQ+{414M2i0kg%8W;AaI zlF^d>SLE%5UPo3oUIChfvH6w8;W<9uj-JSR^syM~?9O64!f>nt66xT@1YoR-yQe4; z77!p3ci5M<*&F0TlvCTE88+f^1SX?;&*}3!YX_6wOxVPOcf+Ggw%ZnVoqw~ib-h_T z3TMuop_?~vlCwL8HylL$_6u#R#V)*$()|+D(?Ceeq=+kXl8cJeDbLi|=Y%;VRpCW|S`DsBIUTh&qYhZxb&O?oDE8Co zf4CC$G4k7m-#ra8atfs$^WxlCbN#a)N8nD;F-G z?ItNVRsR!dlvg+~HyRBp$TrOUXptyBLR_j{efX4s4%z>tjT<-Y)0fcp z^1u%nK#&cN{-*p*a9Diqw%u*|Ieq$cK3uaoMcf&yG6oKEHjRQZREBCmU=Tv(ueWXL zv*uu2gOWs|LqiGancu95-oZVG_k8I7$k?53jnJ~IdeW3kn9?cgh>q-<(1K{-6n1x( z%J4Os)~s_EiyhMp5pH8qwy4nwT{dh10H)aCUxH19FW{`}J@&QKN4BB7A*k{I^~0ns zrg>0fDG%>`KfbSM-h#1rY1-~K_-=xwIntZjwi>9}I@Q=Llv1at(q{b>XwK+loH+p8 zD^_&UG!2~v6qyun^zlMJ9894YwV#ryIv>T3)dIQfUaxf+xw zpRVodCDJL{d_Jv~m0ostU-+8Id%)jbbR+&MSG=QnH*{%p&<&y}asp%5c*5kd7VyMFS15Bk=ucP{iB+2~-B`;Ap{d{L02gVZlA+&Kv;d7QK!b z!ukRurE#is2h_<-v7y6T?@{Sx4oQbfrY~MVLD~e{l&QGi({eKq84mlrC*a4qY22yr zcfIRfbnV);dfN+YSD*Du8z{Jl>=f%rNm|`N0M3FPb#{vL-FT`T7Uw}W!gXJzCWIWbaicoT0R5e z3(iLn0N7NvLzdz<_)GT^IQy6uwHwu?4X~+mP#*dcA~egbSwC4`C>+ z6td8d82}Ba9#pXm^_^2z)7$EwZJdSKbxYi!|B=7Av&LIK=Ar(VO-gD9M+Ml)T60`9 zAAWnfZ#H41pS27IJy@3C@Y=F`Ukn^7OCr)@&DX1eJ#3R(3H`K2sdZp0COW#->m^wg z*&;Lhq~jS^ztd-vYv1lx_CIaG{{bFT`=9#pP|&YT>QPYsFl9MN%hxhKH(F|!S5;D1 zl9l?gK`zpol$_f_n%aL0h%t2m3L5plTlrJU3I+m3{V(0t4Zo#5TK#}y?7-RZ1K-T} zbO%QVj@wr@5}+XIln6!$A5-^=gJAN3XgC9cJ&hoVi#ws) z(YauK3`A%-&;MMES(4q*PQ-C6%L z(E8Y}{_gFakaxV}QBEt~_V)JZ>eZ|C(n~MN`giEt&x1H4Ytz`U94*WX_J@7x7@~3e zIr8mI$B|A{mmE~%)oQQNk;4#aQOR2SZBws*>oBmJwu;B~zfu3wBmrb` zNB={mZpwFXRG`wC*@PZe^^*hB`t4aq``m3yuFT&w54J$B|B28P9#xxlC)hOdywKEtgs4GCBUI zdB1qSX$}ylD9_jJ?8*)KG|3~1aI(<>sd6g{>bpjhr871k@|NZZ;4cT{adb6L-KiCHNO$r>C=dn=cu&@c&!;EECHf_~-^wCG@`RAYa z0PsUg77ZYTTl>D|3q)H%VC zV+@0yI@CTdY7^V=?YfBy0~AxI8+o{1pFekw*Fj}^(K%r$^}U@UuX62;0OV3Yydj)Y59_9bdJ32c4H>wxXwJ(-9@8%ho*7w(&vSLzwL=9i{ISfJlYiQR?FG@`THiU!u)K zE|d1e?iT)?;LJ@UA zWW;mAe?uTa?RSAgFSRVZH0*fQ^A7EV@{xt(7Lc$gn71N;I5RQAK5S*k&S00ea-n00 z$SJMmyr9>nyu<31NN?D2_qj4_>&~4!eEITadf)rrN9*7OrRyywgANP4WuU?5^OgaF zS-B`}GM^hEDw|eDq+mo^VUp&O0wsvglRyv#?TI%kW^EBXe-z00j5W{GEOv&5&Ey&F zgy?aD&f6LvpOXc=)C^{$feUn)lZd*&8X8X4C*=G6qNHW(8)>8aBu-0O@r^-#mU5!T zbO~ORhVp-9<3^1I){Y9(drK zCdU$}6QQgGsh7rsYVuDr6ozO`{amgWibWJAzo2GRItV~+B> zvZ70O531hOpn@8t(#ht=0~~oR?DUBRDC#^rl$t|F%^0sgqyApf|3SMgq31{MBzQx3 zC%2CvsLqY#ZeTBl&k^-Df&5g*$+t&N4!eAY`XHl6CkpwY3O~*w*EwiSDX3FeSg)t? z8Ze~L*~@hO~I2aHdhJjE$! zeCyV&PAPu@D+R5gl2*)ZQ@dtnK2TM+! z5uPXTU1nfynDft*jmEwc&ap2PV>L ziF82YHsF+;r3LtG4dA?V_lK}NZ?c5w9IGrw8igf}|q6sX`U ziIHwPg-Wqw6cV4_5_M z*(Yxb$|T63Y1=sIP`(3cgBqObs7;RBL(u)iM$d9Y|G8tMr|tp#P!?Oit@W ziR$?LhJjj8qCGD)Ws%O62Z%=Vw@1x*BnsvZGT#G(@24x}BO6^2_^q$q*hJqucpKnY zZrSjZoijiQ_)5VcamEDB7#SQyAarD`2q(QqMHIb#@01nwhL^10?$dM6J(ss1r2TH` zt$%X1BS2+0OZR2O1#Xy!6(Q5W#w<> zZv-K9#;mI|&^VNp>RTyIs| z2!VNcAC;pX(W%qz?-impPwbsY%YNyRM;^}0fb|KLIU~`hmCsP1{tYQSI@L5L>(U#% z{1$J0pMnyXFTY5yyz=T=w%r-#!Q)N=%*GSV?X2xhFbimur(4E}#jDZEN+>)mhEVFE zx`Mb^!ul2q=-SbAFHQ+`X)Tw3QU43PAXw7>fowK@L_OsTVteWLrSI+24mQJ$8!y=P zefOQEHxs`1T0P4~B(xXF^M5JV>0qs@4v2pRvNYMgY=a_TYe1)&+_m2OvQZk|W4)PE?(@?sHM($dEten8a#`9G!^RvvKvy-B zn19}!*4(P7@Zty0pQrO{xt!p&tFO^IIKfped%4S#xry>97?;1M$ylTLnDsGh-)@T# zD-%-Hm#8iyYJ2FU8NBceEtAW45r8Or9_jc3ZE-D&^=LA8z*7w6qm^)7AJ}K*9cx2n zzz&WU9LGZ~L#YmgHz=AVEifx*hPg9tMx`(aV@)?hpB!^|6x8V@V8V3JqA_-PFc<9ZI|BjpBnYMu zQMhGiX0STL0iV4YHZ%%ddp1yiSaOEsvqaN7I8tDAxy1iO)CJ3k`ZvV2en)qn1RTxJ z_}_|~52+nGUd3)y%pgzI1i07sDzE4}7#Zdx1n*&bCwl1~ub0{!vzH+mx#_^+M;^Ig zfng0qX!ZJucZPJ}YYSCCaHoh_6$i@e=g*&)66_$p{L+i^%9U5vM(`^$#23d+4T0$a zoR}Z|Vn0#eLpjxPWe!v~F||NM=`x$b&Hooc`M1%)CIWgZ-441nEbnD_&Y0+bZvbOk z$WtJzJKYP0`J%qtL4g#Ic;k)hIT&%~%scXLx_>iaOC36_bf|Sp<`^vN95QdeNFQWi z*GH%SDYj>*IfI2|DmQt2s75U-KMU|#-on892m6^dskaNgO&jt6{6@h9A_@Z$6!a7I zO_Ms-Kb#FgCr;dF{pwEbDvhay1_SKN4VQ4Jkf>ayvXUUZhe{<4C;V+Z?92JCXOa>oBm%B9BSF?%-lHcyfT?Yv)ebrX}3fE=8I<+lN4Pv`dC%e9(6w*1;bLmR=Mg|!!U3@hE-MaO9Sw4LE za$Z3(o3m*Ce2@X>NZ>(5bIi0k$PquY`nEBBWn)hdM%4hl7U=@8P~WJC%{}M?V1v#h ziobRRJJM zeBLxGALP@_cEmbL-zbA4Jo`X{Ku=Zny7udv?^?IFKl3)a{e3A17xr@z{6;Vx)1#3raE>v)9SdT>5*acpjJLPJ+Iy%z+&6iTu11%^g@( zwqhzjvqo3?!A|OB)Bl2cj+eGnF#H?x6XH+pQO1Y7TdRTn&jq|4A8n1^+0{o7j#WUy z84nBszbod;AEs^Jj<`3D5=5fWkdYQ4#JB2RF=4m9&1h=~8eyJku}rU&cs&0B@dU>8 zMqD&+GXY7HdZ7Z=zFj%QYfw@=uG;X<7q&0{nbByh`g$BZPr}Bup18LfwM_SxTSTHc zV&7(HeK_GcF?M%wynx}2YqKJ$50Z%tt81+OK`Phhyi=!6@yU~?L=Rm{fr;my zdzO|!f&he{TQ{FHo8xHCqrTd`tZn&K+M*6JwGZA>qYUnKnm&$kOQX)AwovDl;rXDh zCM@raQ;J}w{~>QUGeG-|>hI+B;oQV^D11RpT3RaD^|X*X9lFheo{N-aN_zK&j~F%yqoIz@y>XQCuKW( zbS;eKs1SACuSXv$^?!^?#qqb^OArw#($z2t=p~x-X@b<#7+_Iq%Icha6 zUGl6v5bCU5bV@sh;n;~E99IGcQzz9MO&;~$I2+&UOpK}A7k;Ks>$*PCna1{J#@{vo zt_d$W<=FpXFo1f2Yz8Zra~yP8-QG2q#^P$?G-mD(Ph zu~HAc6xw`vB2S#>ZG#Y4-<25v+j{TgkJG!}`Oa#|;}bGxlr+8m3(JF7R-vRBJJ&g{ z;hD1Ec3mbP5}NJ6BF^+Je-1)$A5T?*Q$8X3*kg~e1|)PoX7d)!Q3Txm#BJcS@N+)) zB}x;usLdk;ylUB|HY@FM+0fhv;|C|Fw$_QnO6$f)DA%PAy#2uX-#dv!&B=6f`mj3n zf3)z;Z~g{-_``oGU#GxC+PZ;fOS}mXIy5xeCr#;7r@K3y?C1vD>TCpUIx0f}ooU+y z@|j8?lR-jj`?~Xh+DVpeE0tKBcn}9Xn**1RcoS`=ZJCTWDmNhZ_~VcBIzTMhJ=S#& z`9*(~y(*1YdYJB7eynBis>w5KkL65l(1>e0b){tTMxdk z0gBV7PtjwKy+>+5g54Oq=j!HSX`Z%~8Gb%x(nhA81EWz^Ii21V*iyYJgKN+$Y(y`J zxSfhgyk!5k7aep+`ybKmKMy$nIL94+uD(gph{m8j zYlEDCO}vo4IUGpM?)vGF85iMNID4+YbtX9GN52k>#kpD?$fi+K11=-A(@RW z3LebnRLfxP-kc_N>_{!z^jqX5c3Tzh0-K-AIlH58CPlvt#D+nQLq2EJ~G9ROEK;x&{I(V;5Fl^TnNmeU2J**MlB& zY2?zPwy<2Mi)QsNUAmOFm>>&U5Q5DQsPb4>t+57>+g7@=l|us)b;9aoRk=$<&E~A1 zl`3E7(dShTXx2DTp1}3Z8+YDV2P2-DjUk%1D2T8POlfPI@?3&7S=y0`Z*KNK9n$`9 zu?;ra8{7W_zFXV>I1bN?-gX|*<)NeQ+9GcYv}ss#rE zMbh1}i)k=K`%v&JV}SAym)_xsN=AZ+Auw9!xH32d+_oqT!rJxcg}U|2?aL4X%x=!f z1nojjf{a6ab*bbKmnyV;M`dq3=}wA2I0%G^NxA8;zU=EK)&_o$BOONdfl_Z zc?j_70%1ynK#PI~uFD(7@1PT~>C=HbINEUGoqL^ZN@?({hhUUKKsO4ZvCQr51JWw; zqy^6o!~c~+sj=C?!2i;}r7I{^RI8C!1yk9|Eb6Oj1zHXi)cTCS+d$-m`}VNxQ%^n3 zPd@nsojiGpbRO6O4s7>H+!gznZDm9aJGbRgw0NKg!m=S|*{F`!|3u*#WJG~;hIPox&uceya-I`OjvlYF63Z>DW&ay*+|FOb``-7yN9pT$fP3^j{TxKW1z%^d|2LHL z{pMejPjwokuFkVYt5&!9DXmErt_1C9NzL*Eh_u$i9^B!>+t~lkK52}&00Ez3U4lM% zEdyu=M-PtMp_bmj*GQWZbZ6u{VQsC+wx9vFF3;|}|h z-ay1aPuF=c4jntW=NKsuoGSvMs`G9%1j_Y12IH;AjDFP@)LR zq>f$&gV~i6$3xaN0pFm~FFa5ziYfo2Gw0|(=Kt~{9X}(tTBU%@e(qb4|7!(;-`dH@ zjP=JlSfKk&`Phdqcjd~<`S0OJ9+7vy>s{$A3A1OCO0Yz)_DmD2Mo zDD#5V9@K8@s)%*YL6ubpIryM~i4^2W*U7FbnSxd z#WAUGV$lyV%NZ=}oAN#TY4gJpV z{QLLxiyKB46?hB==VWwlsEOl9HWT&sfq<$V9bFU3dqlqlI4hq+uA!<6 zf+`0>U)4UVlA*F5c5pZJ>g&jsX*hQLwQ^UkT#@x3J@UvS^zL`Rn;(4eA>C4!hopM2 zZrNDN;=Me}MGkAwnCdgiTR7V4sw#?gb>G23K4)WHCe6tz%W7WB=d3fUTuyWN#v6C! z*=N6-sBE>}Kc7D9$@LVsPxjM2_G(Bf%4+H|%+Ia5-o*Vty@V zXBcP#Dl5eW8H)m;f(l0BfCIVq&ST5KFaU=*(uzNcT z?Ruv_a`d}rfYT9R@W>FD>7IFQ&wky!v!81nGWB2%9`uEQ8=a?6k?6E2 zK7Lz}pKqKac)l|Qw1cAtK$BjXvNM87bvTc28-+cCS0&=~57s*~UPLamdR-~=cN{E%L?1f-jF_F&x%*)pJ&RQ;i=R4n#wOr;Zmw7T43C6uNms`!j z7VTh}cCB_eWkLw`zYXlA?2+l>UQE58)Y?e->%3t;K9*ufEp1qG?#=%8C3 z9?(xjGgJPr{0scwx~0*G$e=Q-@qf>^(t>){CX#2(1O7a)4^s?d4;HSLl!b_$zYj*6SNrg!s8z0xYA~{#V=Lg=gjG%#|-FTYfH9H!rU?{xD|ATPo8|pI{@CG9(WvW ziX9vt(m|G=|NQ@%e(IxmR-wa8RYV69Yo+JgV}-;wt_;qM2od)2GckP zCF+?zX)|4({e!epg3AXsQu&u(eksZ2^cm)mCfs#|J8v=W*>f1^!L>V^XB(uM5HcWund$H#MLRNVJS9^PN)FG zF}6))k;pEn0J!<6ASw*<_(HnbR4zX%OVD;FRQz1PI0igm9+{jx0cVV`d~ps2M~zhp zAs)4kb>+s_jb#O&CyM47$2H4~3{?ch8`}uVFDdXH90QP811hf!{2wS^tRL~*q4+=B zqoQwy$kVeL0M(Zcw}Lcd!EA;yoH8b=)-WJ>(A!Z_&>*8lu|v#YK}Bt#v#j;CJsKxW zuw9Rbhx_ikkFH(6F0Z`uYF@3dx3}m2r2MY3+(^Ia@5G5cZe>iTAacyR~eEs?jy7I~^ zbmxsXXqDvZiM{f>{!7~hQO1J&l_G!FzpFi7mzUMvN}B9WX{(f%0~~9)%qcjX^8eJI z`dAKvq)(7iZ@bO;KTgNF;b5GH(*Fy68XcKko&&a^{|{8uDaF8HmHD`gEJ#QFFZea6 zZcG7Qks7AH@&@}q^5ekH7V3G%{5n@BL}mv^2aeSWi7$Tfi)t{d0O!Ejn=ah}V}B5q z=m@wvfBR?-0Q8MpKnzWo0v~ZC7&}4G1eFCUI%H-a zFtK4TlcScH3jpufEMyGDv}>l^v^Wb2A9aAboh|(Y4ma zbj4k|xKoF3*SpIbr+NIuQp8m z79!EkstHFFI=en?8(PNk`LUuMs%5clpO1N2EnT|GpNDKN?q*M+^5@pSGwkL4DNmoDU~L{ZGCAr)GZJx*3+hN2uF=a%2MRf9ZXp z0k^~0|Hz~D7x7@vgId1!ZT3I#w&*zj%P(Aw=z9lmGaRdcL^942IOj1m_B|n{YPyez zKoMwu;3Red44azRfH5q+hIR@1L==biopR;cu2vWn9y%_FpXO0x zcY=%9l%Qn_!iN%`!Z7>g2kQ zOLVCQCoaEqnVx(0*&!ekSgIT6Gnmt90LafN*6kEj6_un$t`*HCncT5Y)~*cOE-{c+ zf?w8gQ%Y*KQgbp)$d}FXq}8h-TpGZzoN-0zY#_7ZtfZA6E5tSAQ`9F3Zd~hv@;f*r zq@Y9!Jbdh9e=VOWk>CR#_>1)TKQN3B4JZZPXCj}WEe)wU2w8~|RL=fnZHC(%Pm2a*C2`Px2;gUC-vrw>fJ+w~_Qq4xpxs0gFe3P^PwHhti|J}mIMu{Lk zYuTy&@7o1ig(9{@+r6IAh8^mB()HUi<>?)~eQ@l*eG(b#C_uDW`UkdRbOK>!@K^i7 zJMn1q5Jg5F$8WU(Kf@F9d_bkc9s7qm(W;ACWO5L2IyUL-u`U{`Y5sl?sDK|T_$~<1 zqu7<5;_royA1^aUL62en08b2F`4uW=NNXGJSw#Caxu$#EFbLvdMsN5GrUEli06RFs z00$~{>5*gO>jtu8`qlu-;IClSa?fUEZ07%Lm%)AE|6<5#IgpRl9+ut!9{HcBS%(X> z?m=2`p}U{8qiH@Uq1RgOy^lXm?|jEQ!7!@UdhMw$yi&t9k1xF;yLt2G+F(8_XV0EV z&ly)}=@9k#(%Rn5t1Q+AZ(b2m4z^rTHHyvAs4h0h84XUHqW3)ZSPn=8I^9vyR#Jc0So z@C=&44c0QKlk9xd`a4U<{Q98=-bQ*o_TE27kF0V3m!J6?Yx;PdBipgrV}p&> z>3nB~lFO)gYLc;no@Uu>9FD~0^ggm@1j+>nbs!6E&dPC?%kO-ro%6yF>&*qKjm|1Z z)@iR@y(;&uE~l*ji} zEb6Uy29h>dlFPxEX)^wq&BqIMm^Rpo1onSYF|=X}x|+^sumAI8S1J=b45+qaG*C&X zli}3a=2a%g?|R9NLo;Xz^dNY&+0h<~?0<%!1atTza0f>Oj@xHHHxZIBM92u373vmF zXapS*XjhM@Ujad*AR%gwX|&&|tK*9(a{}I-Gw+;eOhfCLynh2IM9QrbWX>t^IQW21 z#PHoU)U&Z6E)*y(nBy+e>C(N@>&io)Ubr#LOXMJW!HUnKn~%Uajf~RSN*RJ@sizv- z^K^6?Dx6w|h_*3>cJMZW0B?89nG=Ejkhb(*%X%g1l`uI4&tm`pctrVvH}Zcm0S`KS zv}}!36w?Kbk>agqqd27{!)|~7AlJQP+p59?|fYtz&2RtPBrvM*0r!4pN{YeQ6^FAkr2NJWC=4Cp1uTl;QO0N9i5! z`~z`YmoiJ`gOO`Qh>4ppE1&x${R&c%+okgL8#m-e4j7-I2hKep zC)P5TwLeZrpjSjD`52UW1(p7BSPJDl3t=FD?<{59Z zEzO5a<|4Y6NqwHoq0cu##Vgk5o-rrgmYM%?`oBuJGU+AoqU}iy&ZxwsMf*R0tpm-6 z=^Tu--qO9jG6r~rsE>|9KRC~Lk9CmFqLmTR*tnq}k%8Kc6KK{NSh*#F9M`oO}(0C4?m5TILow$Yr~jr4nu54wC)p?cUIG}w{}n#>pKV-{q=;0j&) zDom*Hs`8%MwA9K_aPNVGvgGl0AT;vEk}T(Med{S&%jLWUgZC_AtcHFLO(gDJl>>d& zj&uFGM)~w-E_3_#ZMpLDl{KB5PQl6asU*6&4p82>c_YgjtxGC{>#u(9GsTP7{}fqR z?7BQ@`|AMlS|+o~<;mEW=E%>(p#Ot(OpDs``PKe4yP%Mm)U9Y$t3fMLC3-0|*tv{9 z1+PW>U+|?S(MV4=HuOno16|Mt0NcA;9iiDe2|GAiaO_q{P%k`lvgQH7hXNrYQYh0g zc{Pk=Vq_S=!Hpf`avuN@3|vs_L_}ojOk>gDdJtUTl=$)J_^sbs9*iyN+Q+$svG_4E zw(ZC4e;FdM;PkWW3)?bT0?!v$DQr?`1~4z?u%V37F0^gvtD7I!Z}-bBxMBhp=hOkx zBR4d~=Q*Q&pxqrDVNjxg^J@^q@r@G3N!Tyu2!vDi9i9?Hf+1E1!dU(Ba10o(9(U%v9PT)FZxKk~>U^zL`Rn;v}d zp=ze(UNmmmcs&YXEPe~ClSnOK6o{L5+a*aT01>o@3`@BX$Pl-sSk1s+iM(AyX$YU>eX>>95LVSZaz;UM}kQM#wL@>r$EaDC)t))sy*`zt>rR-T=wIn$-Iyo zGfmP%{U6MoEX*YYB`m<8bCwCgrQC48!cUVRyDRQ+9>(GA z|6rU0Ow41$p>E#~3+>?TgJTtt_~=JJ%3uBJSBE{E8+SX&(PLc7y$q9~@ z;9+}c_;>Aqvo3Hyw2f`)HL3UD_G!a)H#8cBfEkd~0}2v?vP5ISFb$@4=%*g!W@D=c zxsFl%xNv@OtP(hSn8$2y3Wn#;eUQV*0QRa4{b+msmqx*C2kT&-OgvK*ynvr=<$yWl zk9_1K>8mregQE+7_Lm-@-}$v``Px5necs47AUg(-z~KQIv627#bo=ZV$|?88&b|%@ zF%D?Q0Qo=$zeu{-K5)W&ecNA_6=yuD4?K`Zi25Kwl&1H3O%o7j=wW@IhS#ayOE167 zFTeaUoqzB_dGCAP!xt}J;`(j-`j-y}s|IoToTom<5_GcjCUVQ|d6qe^0SRe=iGGz_ zvWb(y``zz;ho4y+y=#Man77&3qq+6z(foyiKbZTaKC~Ld!@mg1#}6j>=Rxugq3S9y#! zYdzt$C<&(WdEON*46&nQ3T(zn9bbQzKdT$I|8kYf53c3%dx~5ZmAQ3g1gV^^GP(Ta zrEN7RVY@jpYBsMqc#~ogNq!%c<1X{pHS&E4Mx;`=-?&ZR{myq~Etk6hF~Gq83osG8 zTL&qkdZGSrc19+wY9|zO%Ce7|{-+jTwZNEkFDp=>_vrHAvv8Hq{fkF&FD1$OO>Vr# zlho`SLIiO51;yddH9ZLcy&(}xC zl&Eu(yEo=qyk}hM-loeW5CKlPcQ6J9ch}mEmk!(yfy465!)k>=NYwi5@q`DPrGwuSA$+;l=soqTcv&O7@0i)T9cIn};gf1yBCpA&D~n8XS} z9?)GkZtQQ(3!4<)4&G)s^S~+!By2QRX0j+(mSJ_!J>&msx2mr<<^Q_vfXH5?_xvwo zz_gybuz%?D4Q9VfjWzp?|UCV_Sk!>v8zFeX7nbz zwH|f}&zf~vXf?=M@MmrLrqvO7qI7#ks-N~Wzx?t`{FSeKgaEz7=q`Nf>@ z&wuN;>`mZ{FTN;$_=kVUpZ@fxbKb>Em(nL3s)^p}2LL=3JE@>s2yw~yoaK%DzJs?G z9yqx&c@?dK^)_E5j}e^S@8IQ^zD!?Q2P1CY`2JvLP@yf8%V?HL6Q*6AOwD4RB~kCV z8OqdR6kx0<>#Fa05aBNH8|oCI!D)`_bCB-alZ7@zcy%q8)9SNykmUQ`|9*b#-R~9) z5~nXoq?K$Mm?*0zG9H|{ybK#Uu4h7IDP3f9UJX%}Vx_Gc2fWGw(wAO(iT?PHzar^# zpA*!0VLq1bH?=i`t@OVYF7Xx%%a~YhRm*Z4)#J9at_3N~{x@Ae+Ve!{UnO2@`hOey zKfrzXRo3);>3s)hmz%$se$Sm+(GHFt9OtiWC}GduD*8jgJVDREn8q2_Uhta$aCz*? zdwe>)r9~te4I9TqM5B-j4I?OP(g6p|{Yr=de}U}`;4dqV`6nF!L{72zdg@eDXRP*z zb2`VWYX_eJK@dUHU|zy{zCRqV6NWZ-Fo!5K!}1Pq4xTsSBLOZEA?EVYstSZn1iXVI z2|gfzijpv0%PXDNdxo;ppv4mZt0Jc*{x_%5B*4J`Qu)7lo+>s3Y@AZC=YQz}0w6FK zS4EI3V`B~SW#T;h_GtrPnfvd%kJI<))3V_d5KjkJmf%V`S3-^9)O`QV`_AUekFw0O z1}Idvq_1!6Q~F%p^&8i7n?LfgACZ?{x=gQJd4*qj<&{PJ+<1^!x`#cRhi&FHxQ_); zwPZ`LD`|2xr3g1$xL~AWyiiR4#iMfOhMix@FrhloYB86f1Xr^AkN)O=q=T+2AEazg zTHjqtL5K>MFJJB_tXUAf9A_&t=znMMhPsA!a3nzjlM(cMsH0K;6Ll|R!sq<8ulxgf z`l(WLX-&pF12o(KtUcNvFxZ&l8VF z5!_(^7d5022UX;-tWoTvBDr`qeT)6C+dga72KyiFk|q0}C|s=`1qFw>b-_hDj}2wA zUWXpz4&HV+ZUKqG7zhi2q3@jF&@rS5BWPd2FFF!K8Sm%@4s@pw8_*}f9 z(K%`TSd~n|6%-CSd}cHU=L=XloOfpk?cf+eAR{*A8C@z3fP4t$*f#u6M$=qrQtq1n zYZJPZf~mKEP?l1$^MuGgdk;oTfBypq5Tg3n4z{IvzWtPbV($b$^w5KH@!~~(U~TMb zyH~GX<#clU+5qMU&OV@9IqVrQ#JyoYrQPDT4aslbu3f(>Yr~rN52PE%#S0hd!iDmU z`)g~%`|{tAc$Tk+KN^)cHlRP|a0D##5gSP|V8KUDem9gF)@G?2Agm~n_$8tM2Z@xf(_}~8>y87C;jEKb9 zfY@HMK`O~W+e9M=fZ5TteV~k?A3^9?vG!G7ZyRBX@n+~8cT*Omi!0AAeO70%`6l%{ zy|}k`g4S|5odc7D5SoAO+O_og<@|-CvkyFwIT}{5<>{@nA?guS&8BmigalU&nm_%S zWNnhW`5a!rWi69A$>m$OZV||34)FD`ZC*4N{@VXyJ>RCuCZQH^AaT#2MvC)%2(<#8 z{4~w{Bs;W&YTRwH4%d&L-lfOPriTfIhO#yLb(u^iD5BtX!9H?A@e5sDly?gK6z{z_v(|1+gw!*=v# z?H#~p2$V*Fo&?HL@QikFgaH&{`VHldPg7?{KzJ|;FDLJ|;eV*-%Z2=3-+qMrPlCs~ z$&~-wfbwBrY90>+#_<7N_v6@yb ztb+*GIPGUXefl)7-_}vxvOz>}m}9Nh9#Aob)7Ff%^!T;cUQ2wA+buf$)Aju)Ps)Xp zCzBCO$p}tMhtpwdIQFIa@MDhZ&E~_;x4#eScv2+|E7eBdA1$nguM3n68tac;dbE*Z=x2TU-C&|NakJZYjbf_K!I!+6Fuq)eoJ_M|s_i zO*`4akpriTGoUl0vQ>-WGiSCyfR+FJ=YEAAea9#0zWX1@2Up&C<9g&Q4*Fl)X?)S_ z7izW}=zmgwvb^6$)N?;IOb1a3)DLo?4rAGJ>uGrc-q!H;=u-MNcFLk&OrPz1sL5q4 zWBu*#?@L;>untbhS}y06Y(*~H^TX|QDwnARiiP&qviP-EUZEEfK>UvMH@g(vG&*Le>-=BiX856L%dW6 zA`Noj%MA9vw~_s-2R9!BZ83L&!jR7ivERXwg5$hpgCa*2(#0znbnYt5grzZXZ=|y) zetUDTObZHNCg?lEWrmA)GQ5(aSU7c#j7|j_fe!x&52A%R;y!@lS3-CtJX2zJt@sKo zUvxo&u8n%netduz8jV6U&Ry`Vy5NtveVeXt>~~3_pmEATpIx0m2wNTNs3{iO!SRCN z*~%tkxZV%-F$m!d$*uT*hTAg#^T_}9dWGTbHu}`X04xTK%Evwsq1Uz2k|W*5@9IT$ zW&w{)PWyY_`(Am+JM!lPJ11RSeN9h?nyrmcP6l$?%8}mA-FM&ph8A<%7g{^XX8ZOVw3PCMJDp%fjt^l0vd- ztRn4*U@-dt@Un97RO_j1WM`jDMG;nhO63tQX8^3@s##2-&E#+*+CnDd7-+M-w*(TDmG{2) zyI0%h&I{(Cg-=d|GUA*_Rnl?eMDS*`po{? z!O?(Y6_EJmH^1328WI-@dG+Opx;KNj=nfNOi4JQ-|Z!Ic>zNc zMtKznc8++54~|7za0FLd5D{(Ka$sj()PBU(AqWmct3x`c-#sT3MCAKlkQYN=_#BxB z=gAC#PO;n6bhvcS#U`Pp`DN_>I-Ex*{CY!Px>Y?(LUPDk^8)SQXv6RP+Esh5s3;d? z(NG@SgZth<*pmOXJFU5i|EbBV4gBBMftHquKyFli=Cu>QugG(4MDRWW$2^PYOZYsW z?#p7COBXLzgEclFXE-JUIGz6f(#tQ)gKOjW!i5X#w|MuN5ttrLKCJS}6?)~$mG0Be z5nhuy;L_JVJ^%c3i)H+^pO_R@pbz8h1BXP{<`U+_9bSdHgnkP%k);PZpY|i z&(sPlvt;3}4GAdFvKjwVpZqla<-h!w34;;;^f&&g5hz4^;Y%AefSh|P-M#P0pI<-I z`}3iBd8>(11RD5SnM|SNyl1}1^x+R5&^A!M7V&+0_0?}?2X_Z=4*c2|ui6U;0_P@@ zxz52EU>p7KY{IU2YO;B-Dbeoh(+k0ZC|3L{6A_cRev~FLf>*Zq%l@5x4)CAyzsK8M zV|~mgTDEgIXg7bR*Y!)=w3oh4bY(4*ue_Yk{>j@c(yBL=%jq!TB%H6TrJ7VLI2llDk6Wg z{jc{x-{1~NgntN;tsMDrZXUv5#DDq4tFmpsJ9z8hSOp|5U%osL(2~M{H1SR*5-2;% z$h8q&i;NLHu4RyM2W8}xju+S*p^uI|wt)_~^uZCs6Wa9=_YC^>PL(P!H@We!Iv36X zvhh+AI^n)c#7U(p!GcAb9%+0~Vgc;120?&0~rWJUashAy{*)+(CW5i=){ zl>a;b9#(QV{x_$MdM7_}l6~GRo!TH5>(qOqps%N%dWzor-pBdm$@_8sXj>f9bz171 z{?4CI`GPj|_22uehU zB7e#<1uAxM@8H_4exEvlec;P7hk;|Ow@Lp)y0~(f2X%|MBqukU%|{xD$m|EUT;nyt zHroM~%0YI3V{Uike?pd9;QyeG4Sm3=>L41&j^&5;vs`}saXNYb{k{)!ZSf4hwM>>I zm(x~`6fj=vyeyX?5TWgC3%Sn}i1_{sCYLun*R62hRDM=}DW6L8s?e$)^l0JZeBdYQ z|034g%Y~W!uV(-)+5df@Mcm7bCHvp;qSluMew^{DUnQT%bp4iWGrv1{i{UsPYPm>& zvtMjPjqtz`nAI_caE`j6p~?polqnNTz-NJUGzP;Gzj6 z+EGQm9@bXOqAmzwRcP+$*Y1>gh5*A1ji?UP9p3Jz{l{s^?n4hfL}`g|+JZ4_GwNF) zF!0)IuTuJ}{h+nk)erFMf)VM>$xI50s=8XYKoa1D;MRo5LqsHM4vpZ~d^=b!tzpSLUxM(Ds+ zYGqsfa&e$?SOzN&{>Sl=#iqzW8Mg$~_FlJj=L<5iejv^WB%g^+ZEY$bo#P$s8 zRtiaHNUY^@K2SL5hl2Ko_S5G=(;syrImA~M+NK(akcB`*bgyYd@jTFmc9!Oug7Q2m zCFQf-x=6;h#aR%cx;Bh5wb39?x~+|uGPc^Rso`b&pQsOJMC0_n+06cTdB|VzR%J?? zJ9r!6Sf3$50rR?ZA6kZU=zU#v77{=?!F$Ydb%~ah4>AHdhU|g>wJy!ZfaRcF;z^*8 z#xZtt0R4APKa9!h=;572q0`;T5|v>DiW;0HarpY>T>?QPEi}xFy9cFi`Qn~UXo!eN zR}Y=S=w9)cKH$VeVU!)Ec;FjM4V{fbcL&DQ^&S6D{czVfBzfI6y$Cf0NHNI`@1?V%-ZcbPvEh$+`Cp0$ zqjP3saOJb?Ruj&;Q&ntb-9hXQjXW?Qhei zOOMiDTn8vnK&P*4d@Y?NQQMM6^TlB+4d#rep89p(+q;i=wMVvPqnqGXaWJSQeLj%3 zf(IXbKizlVSqnrceE7qEi5`Fa&(Y^U|M&8Wi5=V%U@w;yBK_YPRWfY%(CbD05B(ty z&`ziF?Z)c@jqWxxHX5Cgq~ctV;PRbEHLFAjzb@l{X<0& z4=GTra+x+e^GkR~_a2AN-d+bHxUPthKrU}J4jO@dKMOF}|Fm7dnxUq8&D5oisQKF@YkR%u1}qz0`?~3~Z|U#;`|r;ON$Or^ z#D5lG@Hk*Oe~o?b_koCwfte_uwe~gm{%CA|4%f$VvT$$b=QB3!*A)m zK1k#U3wQKasJT}S9bmGQ`l(NSsvGwcPdt(TJpB5vQ$E}hdI1a@BB}XrJ@xB3NZ8G% z#H%QYhLweM`;g0n&zyP3n%+K^0}<(3(?0ph|5IKqk^Xk@g9C4AGjbPS>YnY^`k#88 z-|2sp-$WJ+%l~w^RNqlKAxm<`m1}HozNN}<%OdKXPC1|^;|=eQ4|OP$G0LR;tgP?H zr*E=#a=w$xyq3$xce6T^_ISg+;pMhw%;(`^py!{GXjkscxkj z8u}i^;cW&oq>m;(rH>U*-Num`6E#>UcGMZij0OzUoaX<#6?c_?c2BMsi&XL zU$$5qz;dx1en}DD5e|N=g8WZyYlc4~0`q712lF)at7+TLiJ#+5eFr#7`5LE@6IJ6^ z$)%z|^@E+UK23LJf48>bglE;{y(dS90x^7HjIi%n%IfxfTY0lqnCt(FX{Y}W3+c>= z?|kQle1=3?8G(U`be&)ql(;wGbZNI;(h}iiMeuC5(*M-#NwXt~BFC(BulXihjd_?- zY^)xR%U}j*^g++_5g1>Q^8{rJQRjSzJhB-RZFK1Ud`VExx3NtbTFOsy`RS*h&Y#-E zfU#>|Tzy%9!1&c-B@@-tlUe%5DH-qKgxsjaF{^TTh32CKO54!cx( zuckq=N$Yl>NdLzW+W%nK+bt0dFXfURNX5W*3W~v`R2$0qf;%_{aI69n?|ILA=$U7p z(c94c=)Bk7;R~5YdYi`hQd+QdJc06V zFIapa69^aHFuu-#Cn7)ZUGPTwph2fBxCI*`U{Ky2N-&0{>!A(|H8Law=MfA8`wfJh z_UUPE2s$`=8}b#mDugM5)JEck-Iq3wHvBLDo%8hH{OW6ZySPNyrvtr3M(_Ze_@72Y zDCU1^{EyX80=D+GtS%T(tGQvSY~R%<3O~t7(YPkYozQ&M0bWOS)DeyPjBrW!)d1!i zn8*gOP`uRv+wk`Yur;Gw0xYVBXnTlo-nQ&v^41C+U}e`L9FpE5GTJ?)(WfwR5{xobt{Pwjn4DD^1%Fd5b5b ze4AvzKmGf!(%pg{Z240^^*8gDjsz(vka^vbhANCOD;b9V>xCITgYi>rZWS`!FV>e}PMEfH#G`VGlPt`2 zT`?hF`qG!^rOTK3)~(y*$Kl(?Hq&(qL?i?H%U}KyJ^S2q7L2IGGMv#c!)1mirsMoA zjcZoVU%NRBo}E}QALwb2eIkR*)GAWxts`TG_E`zD9=M8_>I>i2m+qL>$Iu$fyx06b zY3)hFS~_Q8qyE=xwgJfEoNohZ#l-LY&c9F3KmQp^OF;<@Q0(BYfV-P2-w5mqp1%+{ zwEidRx3OY#eOmnK@?6(qA4Z}=)W6^`%EhEgvkc=(pCV>`K~BE<;&DvJa)5lcH0L{bo8VXlBoZVd)D!1BLF^3u2~35jS0>PoIjA+=-uk;b19MIk(9pk( zZ_UN^W$no5Ad5@$%7c9#C{&LNE*WRnhi87CDC{K#GfD_%G~x_ruk7*H2{o_4^P4p% z1Z~{-ETPYiboAHl<=;4PE9eYWr5DWeZ6Up3UlKiRhtCd*Czx$Ew~r*e=TIray7e$V1@tHYoX;W8CnMW0Sixj z|1-e+)TSE1|LR|TJsYnnFhL9LraCDQkpd7Y5TORI;;wihzP?}IHf@Qo&JoU2RNv1d z;vTh+;}etbi7ZwohwaS)^{aNcy$Gm3<%m^22W0J0ULL2P6AWat9 zQr?jb^&4xu^tD`;ESJAt{)%EEkm> z^gpC#@mN-k6`AaMkowvou>VU7iA^e5E!hA1cshGKqz`ZZgIvY=jD8h?#WPA&2~l9UL8(-OM}r`ON(tKWLZ|D) z3lmq?`bPz+Q&RiyoM^2p;-c}bzDyh~eO5HX3+B@az`5MuKB#~KD&v%l3w+%0yy~8K zqYpd}!V5YZqo*ZWKorI^Jm;F%jXmg7pJ5cd7~ab4;3xz8U>Kt_<784-k$}(dJ^#}( z{~MXxTjo?^;D4=3p8v%vWs*H8Z5r>@B3gMXXPNq58{bTvWxQsJzo?yE8c7w)qEB_-fz(V+IXdXd!N|4u5YMI z!nXQfJEMC9X`99${K2o-=ReceIMNvtJGeVQJ&iJx=MK)H^*`8hIUDsq+*6T_x@Cl? z`kyL~sTv_T8iI}Tl^0>vhv85o(o(<6$UFie?H;{l6Mo}e#`5?Wbw5HKIx_USnG#R&vl>b=K5I(Soy`nev) zhj@Wf^=}AFkV07<6FxI?*El}kHo3NWGDkQL6TZ?1g^UJtMGnpbjJ-_^dzsrQh+%66 z7`Azy>edd%=BQV0J2+1Jm5BE4aCtqY2kCNxIS7A;@|FU%(VU-$Mm9+55h|DfU0 zc!Z@bsLzIpfWs@!!EG4Mzf9o_L+NK^5!NuVp z9J%sC{dps|Z@)(O-+#WBo2{RwOX{E%BNd~hvX_|k`ve7lA@%Esx*gA;|ApSTeT|K* zsao&a=QjF(()NvXc7z^o`GF7o#eB}h4h{p-$v!qmUvuw`{s+6p%t~*!f!!y? zrWLeZ)E02eQ|*-UZ%g9}8w;Sk+(9 zZ=!xw743S^WnlkDIC5zJtBPwYpSQ99HP6{Yvu*8z+|_%mAJ|q~&)E*%S~!jY31kwl z45DCyS0+PS5kc3>(BSaSLF8Cquml}l=FSly_%-yY7j(mx3#{)Hpa};M5|MI1rP2J5 z(W&>>qruhJV|OpEeGpjU`#=~3H_kbYNL0SpAg zMQH}<%GKN8Xzt+1f%Jhe&;JN2tBA(K(SXke<9UhywTNby@EO#9YzuKvSm9pke`o8U>>ut6k?Hv>M9xkyIonhPmDsV>=?pK6!S!;z)K%Y5thi<3 zFElscOTl=S+6wJ1mlsVmFO-S$rgOXwO60$wK5yt#Ch0`;vCQ~C)c+3GrTHeB%an!r z<17tT;6YhVvQ}xr!nX1FS{eq%Li;~=VYJE2TiO3954YrNISdLC4L;d0Z_Zb<_5&W> z!4ZOEwPoYkXP=Fdr*9oKsitq`&;g<6pLCzzT=N)=7zo=3Lzsup)G$%^X2+^(b)w!$ zCF-K(U4N>uq=4c;8^DG_6mGQ$D~St=U_X&gCr}W89}4QOf0$kzTZbA57r*=}{PoUT zfFt(3G@j1jq)wQljE;>P{H@nRyF|3jsvN60;e{O>A^30pA6K{He_)VKuIOQ?>0V`! zjBg3H=6{tJ8h@az`9C_NLitqdK)v?%B{`TX+d3y%iaFEIgS+?WV_mLYm+sK?QX((R)1Cw@0W1*c~N?YTYW>uZR&(9LS>zbR&R2zWTl{l z)D;%jZ#++T?%b>a5k{QBC$orJo2xeK>}O3X@v)X`TDFd(B))Oyb-s4>*)@->kiZY6 z|No!=`Kw#g*|w0jY<%ZCzis#LdeR51ait@ zgUbIP;T_MELt$5?TsmvZL}uySsBL$^*VtK%D5BoVisis zcorP=H{b@rjlr0#eWS1(AR24%+-Hhb>Bs6h8trJpjaMLDC@=sfys(2K2HWsIDp$|{ zAdkrB*LzFe#Q(J%%7R1iKi?Jqrz-ezgQ+>q<~$bjW>}SgPA#bDj8Knf)W*^r_&M}?5zA?r zs9g!_Z<>2@<%=Ckl>%1Wy>V^&e>(Yv_L!+Ry}J&=eyh!JX#0QCp4H{R$blgZfaTHt zryU$QI934(@6b7?t}8b)1UwOY$FSD-Oq8>i+6i#=0@~8S$>abB3hIRn2<64qMImNw z=h=}aM9a=|4B`l))f&4##F%nWGAzU z{?!6V$erWMG@h5hp1*aRP>%xe{lKJnWV@gUmXisu$p#)o+duuaYLcn5vzGwSA|Yfowb)~G-oAf*MW*F=`+@Iw71BuaC&}Ijc7V?VAo+R~GI!jdkgMsegZcn0ccu z%1KbKn{T77x(qB2u&lZ)g;dVX?0?A{+YVv>7ZTslM_|0R1^TqJLB&?ff3O$v7} zduRto502Ft67F!JNMLL<0tPdscgj)tPu~a<_1i>Ty3(RHn+~OWdE%6 zv3S9y&w@59yzp5Obt_K9JzJa`y`C-+-oep_H>)L z+opYodwghUC91Tdpe!M0@?VR!E*YDp?y(g5JJ2_CX}eNhIdS9q3v}(;_o|>w*()up zZ-(LqK z9?fS-q@YAP@Nx&+!CS5Wwa?lI%4sGbAtL({*r5Mw1FajC$`I6(M%-K%`;hXHl+T!# z;3TsX0bAM6GAZBLbPM&cKXP@WbnMI5<)Dvk_>33sx8+mcmpv_BoWyECJeW?|AAMg_CL9CMfShX+rl1>+6(M|p&cA8 zI94kpRuIwi;1mZ&-(0aFG&ZG5*I9HeSPq>F_bZS;)LZB?iUNv`qXI>!6SY7B1{7Qw zYZmTtB}G(kI3xxYB2AQ!3u+kn`SJB?UHtX^`95dY{+W2^&kIBH-zN9-0rvuBrb+{a zyz39=-dpg#><*3*yp{a#NEtP5N4M3k?bsM;5se3ZfdcLOb0^fDbNpY(-1tGaicnh# zfzGz(QA0GO_o%EO|4pv3j{XYGgCS9U-}j{4od0R_*%x(QrZ_LPOG2`6K=42_)&lA%I8R*)TEz_6eCU3a*;}4&0 zP;P17c*DK8Kbo{*{U(~iGe%YrX~n=;{p6?Z8!G9Q{HRrl^}piTuOy>*%!ofjo3r^I z`g3yiuI&FE96dNz0g1#sUP;W#Q6+S=+NFO3PXQBj&Cq5D52&L7ou;oU{-N-%3JdQU zt~;Fckh>+`T3|qdE~ofR8uy39@IoL#!06-%FX+EV(0g0do|k*3`O+H;!Sy(h`Q(KW zST6(t{{crohTvhL5!02^z5`m?!7+j}4|u!v&Ex-OY%u?C#{L)K81qN{rF*XPUp6M`zg~)Sdm{e>v!92DAJbUU;wh9!G|9-r@K4qp`9Y zXhetlO2%v~ettHM$Jd*+qvMI%uR(x12lmkoU6CL?3QAXI$l8jU+F07cQI`Hz$|~&} zz17tWDd?crx#hgFqSiwSWG$Zp8@3Lj-mh2#9`%DB`47w_C+;`t|FsO*$?ziv=T4R9 z`DW{X0;f>}5vU8WEuwxk9624)b<+i*8!mo0Y*htc9Od+KPD=?C0uG^l;_lJT;vn61 zA3D?&P2-o&E2AYBhdenKe=5us4<>VQUk_Z z!!dC6f>0Hzn`#QRkPe)wJp`*g%d4Z6;`nazim z$2QU5fw2r_b?E6IeHPrkx$4V0C2NmC^K_1w18wZa-Fbzw+0h4KNxojE+^eB6YeU=d z0v4X1EYb9ASZiL`Rx$73ZGu1hOXt$hTf+a?PNlQRm=$&_lWUuuYz$;tuA1!@<}Ua_ z)Nesj+k;mqce`&tnnO#FCbZdM_VvAUOcU_!3vD(wvHckioBBqleKtm+?Y5po^`df1 zeJ%Cj$BTITa#4M%MqzT^_tt@cY|56yAgj>}2f9}laQdP0g=?Rwu8=4sTUScZYHu&E zlGt1S?v?9QD5tG#1w~$2(E=8=ZfTcWuWWA(VL+un5uH*UWqSnM=>N40Skg;7cpKms z{`A?mME?^tryXUoll^9oHMuGd4ZA^psarp+AMXU}o1mPHd_V;BFJ0iEvsw{>~ zp%?dy`1pDtX+f;@&w1;yLjVr3>=aGYJTBs{QUz_HKBHW~EgS4`2wc3-t zbg1RQLDyE6jl~lv6R=coQ(JH?(C#3Rm045?xwi8?Isll@4a~6sBZnOx)C+^gtbQnn z8_}@s!sbTrCm>i(=OHQ&_;Q~#C^{Q=lSX$Jz5w_>%gQ9l4 z%*4UyuT2op891I@A8TGXjB?$<+W|+E|CxEhE#?>E8;%S8QZUs3zC z0OH!5;f?s<{M~>5{j|TopJ`z~8N8jtru*Y_pi1dQ18W+oFgaWarwdrL;KNFtD@m&u z_UhJ+^jGp&O5lNOV1hfASivEyDQ&MhYRQh)U`Aabkx}G!DrcRNHeK84|G6^V!P^7y zz}{5-PrYE|2^tKv<>j~9TX=1Zm68et_8(r;zp6v>??H7!v#i&k$2#TC{vEpSz7tqi z9F8-&A@DbhDQH6`Wn{xIZRkHrkNV%H-ZpJvddUBTijczKf=udpe6cLn;R&t--JV>_ z<)nL6wC7E5PX8a6{y$J-lP1v9AVv1Sp@DN`b*Z15HfU%6k0#6z)VUY-{|=5A9IJo? z0(f{GH*7Q;C7w@cQH*+H?;8ospQ z^L-zBO=zg9n=#J+lJfFz!v;YwZTXk>js2RT+UewFqoKP7CvOn!I2N6E87GOOd@w)> za1EDy%4FiTychNkza1PWI0XMkMr}>Ex4W7?p`p9v|DHtQT5K;p+X>sbh_Zh9M|ozU zv2~f7H*eCJv!}8_>>XXEG1yQiVh9+BH)Mzo#TP>H!IjvrrqBBF`B)e6=5an2zuuww z;_&piM)*YY6ZJLgpC|py+Vjuw?Ag(;FrC`c<9Rv>@d8#c9hQ5T55%PoyoqOt?m zBn1eR4+<}E-LkaGpRvoUGWJfSG)ZSq?5*~cXDpDB8p|xi`8S_Mv0}TgOWvu&O=EpT zi$V7d`hO?4j~)PFTFSlG|4_c`1MamjQKK_$b6NkZ95=k|ZL#+bJ;;f)qKH@d@AaFn z)9F*Ex)(pb{Ny^c;U;|&&E+(2_+4s`X~b_Eev8I9tG6jnf1`3t@jQ9F*|mk~(RHZ* zU0%LFbLKSNx^-J~^Cyf2wt_MUIjYKCU?oB&;~e~jI!*si@O7+nX#2n3i@PScANq8C zP=t%K|95c2;J5`Oj6n0vNL<7IBK*w-0%Ze=L68ZU**g;*v%5BXW1cq~BEB#Etx-r; zrBvTu4n~~*0se*u_ivaye%*LbLApAAjGYn{v?QTDt%BvFexaPW{u#!i`Rq~g_CnMb zmJOW#FgP{KbNR!8oKSvnI#W6PN{pw?pgemE$IZh`QSacGK*ayl8)O3Vz#F#O#t*>% z#oynC|J8`so{|5n!6wAh@>ZF!iJPiSQ+g=X(jTy;99B0NjoWGnsUI+)y4pc`Aj|!-;z5H1d6f^O>94kLdj8GS|2uel04eRw z)c*v|Q&sQ9yK4am{H^6#mmV=WTbJ2?cDWt`Aek{W>)90fPLtFgrCPlTp6F{+s9|Jk^d*y?=OYQn>a(BJh?Cr}F(ER8d9DHR25I65Hxo2Ek+AmE~B%fX);C=tt~CDbJI_K6DsIO6Bu=X|8Ov-8=J=&=Qql? zJix7+OPCwK4F|{Fkp+$g)4hO{pfb_{&Ku;B$H~#8r$=__JCS4?L9_I!c&okvSD(mC_I&Nyv-?>;-NP#hW}y`ig4Doa4*K@(QVR~0xg`rIa1;Ji zKf+dm39JrBYfr~*={iQh0WHH;uE!JSvCG3UUHO`Q--#1+=IrVG*6r%mYiP{2IV>br zBUVlK89stN7&?+d1480y5{D)=2x0QI9%7kRVc6mxrQ52rD^4&sIyr1S(FIF>VEr%B z4{ir%-FMBD^g6sX@Mhq(S-d8tdhszBvV6Z!TC##yDf$$Y@Fwi%DL z%_yJPJCRqcC3$ykEtm7TIo#>@e4SRAss3N(!+-VgOPrR1fBCd>K7gVmyoL6^w}X6s z*AVotvRmzKc5npXxCJDrFp)WM9RYeH9~^m%+C_xVP+$A-#zJ*8dsi!F&-ydviR>M*9D1l_vzI;{f} z>)^zxw1=N-6r*+#IMjwu7n$|*W@GK-eJyLeMpXAuQ)g5mKihMWYVuPT)FiwweH6p7 z_A4UzeRsnt|E|5l$J{a+dsbQm-^O>TZW zB(NXF|6b_-wG5yg94)wd>i}=j7RvYcQvXwv$y!*T4=kg+Rr5QWMbk-!H`n0wHXQ7? zu**7twtrCTspDIkQ#p6@#!b5Q`s;k=?Af(!J|*=lPTpqnyptk-s3Qg&MdwOw>L$Xe zihU<*GJ@7-Hzp=?(QTTw9`*-voA6OcZ*#*mXi%rzBwVW;tK;oWL@oiz?y*;0DXm?= z@1RJ0C#$lU%grSreNa}9X}hU7=&4?x>QsR2R=JycPXVPH*RN;!taMZ-P4UfX>GgW64A{XDfnybr zxO(*}8Wy30sUTn>dj&!*SkVzG2ot@Jj65`az4J*vPkM)*AP)B=cB6?Bjn(&K zm828yom7hY!7)1M-jq`O9HP1?P<>x^?+{TutY31*0*wM{_S?;Qgr{$_3i(djVjZ|A zpFR-X#DtgV4iZ?Yp=aVJ2=|#-~QUQ?j8&$jM#4j9q)oHvv%JK{zpeqyTJZh z`#3J!mTE)Z-%oGUuX6sJqSSAXI-^D3eivh|3&0eEJsDu>YYzEZbTxsj+ve5YN}9nZ zT(Yw#Ukvjq=G**qW6O2Z{_2A~uo3{s?WVH^DD!6?SnWsWw6s;;&aVx<6}OjRSVq-P z69K8rfgI$|RH}F@htR3B&IH|5Sz68(s)lIkI*AQ319n~KpqQ%cn6dKqTh>sB@-o+futyA5cC#jg-`iGtr2F$jfU+qqi1odzrDUGzSgG zJ_D}{Og_t7r2oAP*umQm|Ky9;qGvbgW^vvY-G%=5bR1k;V3ayql^S>(>?9EgN)$(0 zaR^?n)b@0AU0YJ)37lnUE`BZ9*p(r(+~jg-Y(4u0gVCie>iD4vidAvMYnfas%hi>} z3yN4_&>@Q3YPFZ!*x%pJ=ewv(&By}(V;!##YwW^S8t75XxuQ-%IpdM4%p3T>BMPyx zG(1>E9m+4_dY$EQIy5&Gs-IcSV_VDmq#sP@Nt4F~2aq~C-uyXYjYoL>zy5D;wO4`% zwazNj#;T@Okf4&4%{B6P`5>Q}#-f0^3>h2kl^fLA1u@zK4}(0cCL-&3HhA}2UB zW`H4B`YjqEn8C`7PKExVm9NfD*PLq`@v=5_oZ3$7ny2`HQpMlS@c~7leTfsK;`>Ly z@rsLjA}*SYzbY^XskjiS1*OI~?+zH+65p@KF&Gazr2{BEx!}nq94PNjXT6%hYA6xs%*>`P?I`gKa!sjrDZ5x9aLr{!t^jpus9R*Y;mAs-@v% zXC2rqP~MV)jt9Y8Hk0dY^U5hekb)5_Zovq$nJ6vSV2wTByu7-+V9WC;bw;vb4~_^t z+*|+zLHoW<#f-|ngZ=$NT=}z|T&!w%3>sKiahX$Uv5EY=>K81GM#>+^u2l4EX)IFRX^@FuM*)LzfNja3-CH|Mb?&i*{cB>0{g$|Q4LJ*Q~hFim7#ehpx9T78zJUyQU5cyuMUay;)_kQ z4)(dT|8apuFK3DF&i?ndPKOv#6gc)g;(2)|laDwY%dc#pQwPLoOhrB6ImRK)7f0OU z>SacfX65rHoS+`|?HzVA2oV<||2^ONFV;ijje3KKf;s|ay@Aykxz@?Vu7Y%&e;W&= zVL22K9HfWBN%N|}v;YE;Ep;3WM;r^-wAj{QM53~G(-0XG1CmbQhUtNfMfwPh95;>~ z93L172{O{J(xK;5{2i5l27A+c82-1)%?MfM|3U1bq0-4(VaNX>goX~&unnmk-dk1! zh+^A0wHgIrw%32T&H9-#eTyg_|GJ6+c?sbpnAJu@*D@f|3_?3OqRwL+JvC>aTuWhH`hB+`!&(&IaOr4Ij#nps>j+M@p(gUUu zkg(Q+w2pV6y|+yN&-i}_Zy%&*f?I#7m#f~!2w_|OkF+U{&;`soD5s7rIJAwn9Y1qR zFJ~aswu((!z4(eGGinG;2{;x^8r9tWk zoJ>j7X~F5P(SjP#t#eh&>LKsS{)%Spl!^*j*(96P)ZlPkSLAa5m`&q|Xt0-6*C?In zeF-zQhf`L~m4Fg8-Dxz8I)k~rWdI%GeJxSaC9q$dTy*+>NT13}l;hY2$mgyc@(uK3 zW!zT_cW^}DSOz4}xx?i2Pe9M?%Q_k!K#9CEW9UFShU(gP<$bzjt@VALYf_?4LnlrmWb?pJO&yakF9MK?r#+kzKRXdGg?e}*XBx@{Yf&k-FU?$Bo# zFmUxzQB8%GK089>IehEZ3-QFSKQB8t;sC~BmkjwzL+qYCFZ~8`;!ymr zZTUJ@0r_7YZo(jmbxT+eC_Ec-tCa;E3g791fb4`9HmfpLuy1J7?7(asQnfFeun?+? zJ32gw@KuQ#?*i}Ak#*SngmHWbeN!IluQ_Dis(8vdlg6ee(dasWv68_ZL|*JuLg4(#vc^$XT1uJd3>z0T+arBz^*^)|rtjeG1*H?9 zmyR|TWF}!b+Cu+B``$)DS+4}y@u^5x#+*i?wi3cB2P@vHu%+hZsxw>pzd4muw~dvR zY3%slj+$upACA9z)hXBr{I7hn((?{7ix-@^mXIc&1rFkA7A7(4*K(R+1~R=&(g9UD zT1R<6*1icTs)Ap2f#|5&o`f9e3b2)cVku*<0a=(odS`^fpE8HEJt9ol#cp#Tpzbx5Xyq z)`-nx{X#>te9K*O_~qX6P}%Tr2iU18O^RdP+ybBdH2j#U z_Y#PPz(S*AGPM%Wx;=VwAaAn%?-Hv1cl^JDBLYZU+zyL0+SulqZKMA=_KmDh{jJS8 z{?Dxp`d`a96zjPK&CaRianN~lMPjzqs;wT-JZjq=s00pL5yyiChr-_tAFBR#UY=n4 zAE=1uT0P^m!f1v57KSM+7>Yxklj0M6A&L8gQKDvhM-*&=5}KsEz0>FN_|$|I6x zgZ!<@P;b~i*Xe&E+Gzh%;|s#_W?(q`KLD(2e6bVBM;DG=Kq4|G5;y|}Y}dXzl#jS6 zWQ188)ccZ{9~wM8Z*@#%j1n-Q8Gt@t>)@};^Ui<-HMr#Rwxy0H+&2Cf&hM8h1>0$uLl zh`}T8+{4?B`E|)4^1m+!_xQGIxv{;t+Qh zYVAVQ#$r2%tf&2Y7#eoo5N^)Fz^B>3q8d72J%rMXWiAIlmZ@q@)f4I4s!j`d)T-4o zSK}GcsDrL&snzWe#A@u8<CdI>6RG^`!j|PldB6!cm#p2fILj>Lx!FCaSQuScGMkBr6)n(4HK0$}C(Z4NR zApCQ|344~<9?H&pssG8zedOs2?>crLGW#Dqyz9Xeo$LiUnLq*?OWf^N`oFe2(3$kx zF*Gq(tJf;?2Q)g|n2|>;c+lyDW;0oD2gv^bHJ(5+q&XcI}s|FIpq^*uw+8p)PbzLoI$Vxuo zS0!&<6{c-h!A+zGcXA$YZnhr0nS15ZdB#qi{u=wu0il|vp@$@wvkqzkRcWAXg*m7P zdLGnZf{7ds^uJTbB6c`sr5)8pT*sRyM|lABC)<)ZoiSCMN`s7nEh9%BjS#S}wW)^R zcJ{yWmlN5RhP;b)0=~2veCPSjHrv4wfnybrIC=7<9Hx9kzDYb!jG^LgZ3U?HoZahrAany}> z%?q@HqYa<<*|RibTt^E-o=XbbAoBJp+r84gr{kzD$U!q6h=$-AyEbYyFo$piqNv6-Gez8R54Ryg2 z^YZb57Qt!TTf{~~cCK3+tJsPW4N&D)%BmAVVnI1ppSM0c8sr~`PFATS&gqg-Hw-}v z*ZiBJ|D(EV8NjrIBLzSEk+a>slhMQT+K|7f|7F}t(epobfv`^hiwuG2jz3n7M?^^& zWl*FGqzZu=obC9(c-!^5IIJB`wx*2AiIBX4tuKaR=_1Q(h=wy7P&r_^Zb`K3Co)z<8ABjir%ezI0Sa_hiJYRrHWok} zTG+PzN;7bIGG{tY!yytLP1tu#&%VDp2MklC#=XcGTtxXYJosFr?#i^z%6MkI#Vt^xi#CcDPyonipsXM;x4N!W^3Le@+Pa-|+?b zubo`!_>mk>yZ()@Fn^`dgg#(FJcJ0Cz3pIzZ`%SsvMvI82fZ<;cURMqIJ)DpCa>u6r69J4&^{;5wh2ZjYx; zo;8JSQkm0?uSofHpr*XMh+0UI@Nk)5pW)}QWHRIlvmWNu! z3{#WW$?(`p zMd|^+sf8TGShZM3bt)OSxrmc$;z?cEmShsV5%2iFxyaI-auN)fYVfk-|5CkuO{5C$ z+HDgkCh%0BkjhZf0DvvSV78Maao$vp>E4VI3aImaP*)>B-!*t!Si6dPOR;h1`PV?x zids$`Sqa<G>qD^sNf*Hv&j?kXn@G8PAQwVj^Dl-oK`y+L)gnlyE1+XM|S z32cyrOj^}{6C30s{TRj_`}9MbFu0rWD+Opmla7n;n+4vrD@a-rjYFGF%68J!)t#%39RwH>6Z zZTO$NC6>I*|07A7tw_}G!!~2jEIH}ux}H*=EuFgem7C#MP=PUI&{N*?Co$oKZy0Ai z3{r<~x7G0WI|vxZl!;55>uAk$a^7 z_1@|EPTtc_Y#&*0@)e(5Cs&DLX9ny(it19cFVN0G`yl_owU*JP^EJDFPocCfMZVVZ zr~_;l3X*63EldBA|5p|urH=oL%wO3Xcrmd=Dhw(gQ(g67Lb1jcR5s$+EZAC|@OrQX zb@HF;*Da_DFlt%K|81trJT(~wXDIai3+0L+$%8C$kvKRrP>)@jrXwOG zqZ5pVm>Hfr78qye2)T4|d0jb}zuaG&>S23{o4PL0U;!O+(3Ey)2;f-I;IMfXk?Fj6 zk^Ym+ zcU*995w~#^XIezsD<#4}YY_+8##%AF!e?C})$zadPIiYcQ_q{m|J4w$55dgo@@@HI zE|z7st7=!agTtgoT}1oQSOa4qBpa;xO2t}jk2MK*9@}GTxYWbSibbhXrsU*_X%9n@ zY1Xy{VMW0dqziaC z6>UBc^x2i8n7<6Cp!{9y|EMk~B+MU}X9q_Iyge1ks7U|M+M4AnO&P&cw+ceSL-)s5P83S76eVK@|R1 zxu~M+Kw1#9)Gz3}{-vO;cnaZKUY01KB zZ)Jy96059cn^(iH1h6}sRn>sTc_gs^JHxyZ1KJlv{_86iuwi_rM0aohyY#`(2T|

    y}Rbop%#Y^j!%DO;#=dGniD{SpEZ;>%eF|luDs$P zZ5xN3g)x&qAXFL3vBwe1BMB%12L}h_aOviV`uWkZnx!s%aEYND`APIbn09asp$kT_ zlN*ct@AJSoMu+Wf#QP=G{{HgMPl6j5)8CUCy z=-W2#3{*DUEiD;xT1T4Urj6PLVBDCJCKZgl++5=SRkh$*&&RMiGCN*zkUI5xSVL;D z%I^AYI2{w|c9qgs6&)o#pWtrsj5<%%03}#NTt!wr{0t1vHa7=$(tNIIZ#7w0v~b^#3*$ckq@2>e)c@;A~&_(SY`M>aRjSciG zn(U2y8wj-!F`=`a#S~K?Y^=By=X}5NKYVe5>OB!|j{rHVLNtB%;y^>YD*wy&1(hCE z_?0&F^PW{g7yWmjI=IeNnUcNLN_B_z2zx5(0C2Tg$w^x%@>xRl9HqUzdgcY`SC{H{ zPHP5+-N98>5e#)`t0Yu|g_{N9^EyMvDYD@WrvG&g zEsjNh%@C5_A2p!>3QYiqK$)5G#SV96NHGv0fH$3FvgByAtF{z6|JolfR$ z2S*rQdVaqPIN{@CX3rz~{Cj2 zhKrkx2#XF%e|BhRJ0xLS!)$5NjS)xHzH zx_ZLqMxBC;On!S+#hV(^dhl86r=Zxb&1PktV;y^;3sO54=)tI@zOAH!2{paKwpt-4 z=5gq$^I(8?wApxvlqLxBQGby&(B!XY4S^OyJTm$(J%48>vyT{j@9KW~ zQMt!Kky*NC5~z1=3-7)DMyHMlWIb~`IZB&QWIw-ew@sw>VVGuF;M|z$Q0sm)bzwA)U4Xw(GDY2TQ2iFw!Q7U$GSSC4t zm4iux-teT#)`BcAi_Fl*T5Xf7WMkI>wljIkT?x*vY@1oLFG)wIQljE+&yRcYmHM-@ zDk!hUpt32W1uWR~f1M#I6qR&T6U{joodewZOv;fH5HwyfnjLi`i4lp#K&m{>G??^D z(Sxhnf8M^?>3?0FvC5wn5xb_=w#wbRw*SE<4*4=j3+-a<5A*A9ribUR?&R`Ogk$wh zs#~{i*|ihy1BeI;ZA~);z%GJ@1ROQDq@bu7^qqnM9HX}JzH^QdU24Xer6(bv5qxkO z$l-u}pgYbT`&+F5MW|r<0o- z981s-;;(_FPS|OiY6!!8SO&R*Zr%{5?m0&EiM+6bqY0n=tsC~pREbaIR>%LyW1eoR zVQ^3RpBfo+G1yvrS|;LuB9WjE>$R<|3qb3Y`)0r zZBy|SbU1tV96$2NMLPGuIlBM;lacIEoY;+<+}w77Ntjb|vV5rT44`iAa1J|!THOvm z?2|zLds>J9H{F>Zbp4d5*D1(HPDVDTp`VvdZ{2JCujRRmx#Dn5TZN8H2tG5RDreybXI4>h}@n1@8&7;i!gl?&m#V~ zDw%%kt2Z|4(jC0@aI69nU--fo1cU<$@(z$FQMfE9p8PXwk4E7#7(HGXfwED2eIKph zsH_BqBh<^ku;i~BryJ`K3_*NA7EF!UNWq9Rs!^E)LI~$id_9~iH+ZaPc!NN*=PzbZ zkMjic*v&hS&I#h!wIzrQkIUBl*xVQ+;TQ#Rd|tP5qLw4*SJu3seed9i0w`Oh_l^!h z0dr6f>8vxF59&S!Pd}dj72Y)dCp}|~MQU>0jlmfY-`|rP> zpLqOz^u`-^=!F+vps)P#SLo)=o3&jUej76VeLweLx|Kmv_bwf-b;a{)6@+GHU{Yp8 z!jfv4B|O7=(RIb=+_`hvsrbMLK1lC*>~Z?WH@;4{-?#zec9$;*Dr853k% zaG3QyYMCl&3yzs}OLQOj8fE(dgf(nQu%K+OjeEzVdwZ-r;&t&%mxG@8f%U(uHx>@~ zjdpO9V0hM^HsBiNBnA3h?TaCi!k_{n-FiF*`vnDcm6uvBC#CyUKJ%u90@Zv-UF5gx zV#^w&%3o7Hq{G$KY2`h?>{tFjdGdaG;>q`~WyKrx{qKLDUik8tvyAPK0OY$l2nOZz zmqlf1A-%b;U)by?2g(j|`;f2+m%D9aL4DBd;nO5d>n1sV{@i)`;DsTJo}*x&?@x|G>Q;G3a%@(4aEv|H(8A_J2^` zw~w|`P6wL^+rX8^(XW>2aNohvfnybraLQoHyWCsC?3qe`1E$e-qV~x#!C-ug^yfxE zn&Bc7XIs;xH|nq~DmSg$8D^SBM4?0D+KuK<(VQAvFb;8jbxcpAJ{p9JOdNmeaqsRO z8Wi+Lhz~vku)ZlU2!`i|9uM%($;&UL10LTF48}51 z3qHEvNZuTZ|7+ie=l^ynID?Hq2YB#<@ppM^!yW&Z{m~^)ms3a$bd;(BpEgJT?)2%? z{NxiKpr^n6G=2N&r#lIx#e~QiR3$Hp2k1RBUYAC#7?!txpq;KgHv6xeN(~l3yR$O0 zM}W9a9}|{Y|6RR$m9Aa8O3yy`EIsk~6ZHNM{183;^f&4C*Kdk`xkPlO0Pm_-SKQIM3lgX^*S}fRuevx9SNrIUB%=iu&Knf2{{}%uojUQF603HD4;zX5X|* zfdOZg`zaW?%3qmiE0xl@JEu;bruTjDgY?w5zC};1Wo*bGiWkidO1<{RVmDzy-F~ZF z-=?_!R|{O$=>Qt_!Z0Q}JjV`7*Wu{{5fbEcP!B=3xLtkiwfy(Yv(M1`o_rsD;6op# zr=MEO@*CIFs+hV#5X^&M^#U`SPE}=#a@EU9sF#z#@92JOxvlJf%y<0Yhdv}>Ld1ib z7U=`p!I6dIc80`~oaks0uOnqJGq`6Cup@fWvOz-(`JMcMq5?Q7vxX}SPyu0I&H?U} zn=+#Q`ML!95a%M{n+(LZTzUY3y2BDgXdC1eE&n^(SKcH~&$UfW^9DtA;uDmU%}akq?=_+@$U8;7$^xpcv%0kwR;csW_HEyP z|NWGL5nuSiAC_PQf}5e9|7p1Hbw=NWo^HS(ne@7oZZ-#FzbfIF<36aX)8CipH`dj9 z-3&Qg$ju&>|IT;5O<(x@=jq8OKR{_N^Dc^myuVq>nH*^=NBJ~svpb8aP|p8oM}q0+ zN_D9(%FZT#%iCJ!HnrZtQo7T>M!Sq@!+8-Xhf&^xoW1Az-^*%Ow9|b%d405@(ua6i z=s*_gdwa#(RG~a2>I26517+JMi5nj|JE46FS;t~HnT8R*@xnbViZ!|gV+6e2|0KF_{D=SdO<2|GkEjt-B z;)cJzew63y&HBOLN+7+Vx`wBoeu_T-ho7S--?x_KCr{=8aXKYPKi8Z|p`P23h75F6 zl@_UlH~o+Hzx06#8=jsWfiwp^WEx2IzZ+Wg0?(lKtNqJF-Yz~WXve414vsDy$3rcr zL@3VroB;EdREdmG9nXQukb$@l9@uq+0|j;s)W?hnufDP76n8-qZ?L)kwV&?I6OJMM z1D}rS#^sDIQ^Ml5G@yZpieC-P1kvZIh=xE#m#)Io&jZDfg%>(iemvMm-8+W@8HHQd zDU69{c+^1+ItI#d@8Au>)MyQ#^$w0cOr94{lx%np=``yG^OyJ^Y1PqX$N%2J^KFPz+y#GVl5PR*ltHCUc*XGo-+F%5M z0k?{QTOdFsg?MWlL7jcQ)HA-gFXMv;9OPMhdZ|WZt>DYC8zYGcif+t0CSp}QWyQqP zPd!ENea{o+OotWQA$SM%Kuztq(N!nglol-5B;||4C1C8o(5fL+@7u-rUudpdabV zkK@Jqb;M@kM>K@qJ;Mk4$7R=$yGUw!^za4Ite}{+o@d`TGQ2n z+vh_*$Q_9IU`6*kvxC6a;E6mvwEZ7k@8F2Ru?k2y=TMx|kPUUQyv&>cNBmv8+(%%& z!S46^BjGbq7(7)c9>?d$E6}%UrNMYpTr?d%3uV9fSJN2UV4Nb47v!-7ffQAC6aci< zo&6xTs>+N?W{ASV{0NTC&4(ElIA7GyA8Q#Jb&nO-bXZ0#AfPRZ?CM22wlC1e*Wspu z-P0nBDHQT9ZwE&d9{b>ZX!wd(xLZEMjdfhR#&1ZwUdAB*XjK}F?Y@tY|4GjmSSjz8 z(1bL6^5=?4`Mvn5jsMF5ieP^T+x8Kz{9onF`o9OyKS+1(?B}=qhBZi6cK0?8ioi z_ucP)hi>0~gC010F3+#-v?+gk^;t@rH-SNst#|sn5!Dchr%WtJk ziR84&Tht5e4oCIi_-~N8M%-KIf6yZYdC@8)dCv#$qa7SA_~51cMo+6>a&Gnv%1|xp ztJdF*`k$O_0`wKtHT#f)KGlxWw(wlBDlpkT)oHSz@ZnnE+JVBQ4omr@bGA*H1c3_t-ShxZ9S8-Aj>d<8BHnZ+VJM;m zDm<)ECHjjP6Rl2e=bOpp4IK!x9R*^KT?S{k$x2;KZAn7G*_tOrJ9vrKH zgeP8fW?i-?VsV9;k)!&`UVgB<@0isoEL?5C4kzChb~{VA>)MwP4H3!ws{x1ukT%rj zf;^-9`hE^Lh>k9lCpV2KbO`E+zs9+&cy$32lsN}ZU{*Z+IGFoGrcAMeK`Cwyqi3T* z8pO*Rr#1#R7lQz0W(tJw5CL{|%*gd^;^&rja5UlLpE||dzi}9x7*7|Pj<;|QI{?CqcGI;V~S$PXUfP-*z8tdD;hF?9%5^T_XQY6={0_Dpa z>tg55KSba9);CEV{ld67exgX?=5NxwfuMydUSid>jBhSh>#GUR=oz>6a`w;>H3Pis zQ!GixgObz6g7}GR&zV|-Nyd;~al;3n4yt?Tp+^|DWRQtg_yjCtpTsJgaMhsU+&b1i zSJZ~u$+J-B+R)}YsMG(bdq8(|F9-M@>i-#dzD@A)PoJh894+|N`%iT`Rc*DP=v4n} zA_swrnf`Zu;CWySWqj}>l=Jx2Chq;R7ThzwB~rmsKI>?q)GWm$f7z%AhUB=OU(47( z`IB!92zW-2AaA%g`RTw-Q8@XoY{ZDnjE3Jd@W8GPLmCPqpYH!~j0b_AJft-h+4Y4u z6OH4al~=&vjpo1b{TJxrhaVwT;8NQ!K0*GbY1U9l9Op?@Z7cmJJlP%6TIDJ{($2?e z_`t5VU`R9j1IOe8fE{56b#j{(KU}HY*(g!HPrm;Y?cnIau?k51)KC3Xr$`b6PHF_5 zvT%+i8aZ8A3gjr1GiOwPk(t1ejGE{e6Waqk^N%yKcxI$AbA$s$3X=viwu?lHV`7{u zY^PJ!su)$rEAG(7;CImkYX3UsVLnkH%D8pIiu%4_PEFP?&`gI9wgYWxz6nGT34=Lk zDEmyHNpbfkP~GIoPyXaj(hiO~%-`0+<-lh_IlZ6SZJy@thX08yzz6)#hvt7}1^sMT zUAEuJDGK->WEYoJ6^+l**##;4)X9^1yFr^1l@Y!z>Mc{I8t71AM6t;fS%1}|_kjn@ zwqJ4W85+{{r!y(y&_KLhSqp}^#yRRcu&O(kyZ*iS;)`_V>;s0eeodpyQ&9!1(HD`v zZ)$$5@8)~%p`j83*m7Zi(Tv<0p~?hd>L^nXwFzag*yO<&OtjvTPsC%j$h z-s6XKy9WDY>19qXf_1@G5o`m>MYf7}7&|+$j;+aKLSB#@oGqMVhsG)rx!&nBr|H^S z#tvRwaLqxU6FXr&f9?BmUS(L;#-;Zza3Mrt-~@vPD10!Wp=I%ps2`v21M9RWAyy9S zfgF4i5s{Q*il#bLT90EH&n<0R`24RFrxrtkrg{v}dcO_0!PO>~Pj!mD8H1 zD>AT6918M9=*WO=5Xka~1lX5Vyk|0=Y+84c`6$A%`pO11LN_BwBgGYr*SU}0Eh!)4 zdufL)qB5}hz_dJTXJT+W8PuQpicIY4t>0cfB=36HyZFL|3;Fxc;Alh#!}JJ=c*mqW zFG9vhCqq5GW>lU|@pX7O1>Ma>)IYWv%uCpw*12}=THZT%`SRs#RM)l#!H3Tt=1rnL zFb&GEQ}o>`7!cO@#$yW5KcfQ%MTUS-&}K+0J2;x)<&S%w$YK5NFlpExDP)CBkKmc@kG8q$3(xP^w_K4y+@OUEr zw9ua7{`$?eEWhvmk|H&rPi3nksi{d^KV6kS_u2G+nMdntt((hB0jXbL0{u@&S3Moq zPE39qnkthK|EfPi``q)9wn_06>WZOoWv25Hx7{kcgSP>WTRfeZzyza zNbjuM(oW~J4zd@Gdu2B7xN03~U)$*VrqRGMfsj6H_mPi$BnyRSpM948=#T!0u3x`S z8z+b3x3d33gLR-L|E=eUe&~mOh(7nZ&&jP@w=}ZbDSPQ7s5uSq!4Xss%5;GQ~sw$OGpcmty3;I3?%l2IsCk# z(j`rdUTz1?_O$N!$LuGi_rg2+DKKxl7F#Act5Uz{!`zH-{g%0P(B8hN!DPV!fnWlf zgRnAzuA7k(Y^u<|;`EwWn1p=rb$!Y&CM-eCfDF+HyW!bLscx6i}nG(iR|m> z)Y0%j|6bnzp!%O-0BB4{1EQV0K9a!WGr^$L@Nz+&8k*PZ69fIP?Q^93gSODV)U?Ed zC?j3H8NDfeDsI)L$(+e4Mv)e>)dgwRwnUTT8(ql9w3#)^LD?0LtDPd}-SR|+KtY%9 z(m808gFZa|!$VVj^2qbTV%v!LMo$frj z{r&wqOjF`$GgRGeXRLMl-`mqf{g;P)TUsvQ4XhJQ8R94r&nPc<6>~p3v3wNa*aaj4 zC(RS1R|p9@BL?eYTd05n=CFt#DlBAH`1Sc%pQ8TJ2|0J}9RJ9V{0RNYpZp1Z;~U@5 za=u;|c#wM#jF`3kcEAjmS6+D~|D{h-edt3Uq96UyALTE9`OE3;DWia@j!v`Jd*PLm zBHiQ-0>82(Gy*ie8P|-)z-()d-{0J&yX&qW+QAWrQMN>d>MzphV7zkh7DA+7wGb(E zftS5N!xmToL!q4)(Avq(Y7BNnUXYP#9uFKl3v`L+8#vNNRc~TkN&hUZvmu?f)0`k40BpP#0Mt z=&GM>>Yir0{l#DS#eDl;{a62_tB=KJk`}p~aU7!K`1ACh_q>Pxv;X`*v&M98Y+9J& zpajfEJ-;K@%F~@6?m=fHs$Xv_BB&V3tJPkeLw!a>N|wooYw33Iq#3RR&$VIKpUp(Q zJkIxUUFWGed{`!^OY{Tif568F3(fIFIZZnmeI!Ag&W7h`G?M}l8gTOTM!lUEt)2<> zzm~B^di$f3(O^py!CCNOuqB4ouCD8j*K~+|A4N82hu2=CyH$FMIF*nrI>+iTcY29N zd3NT^S^CMJ_;I@Q=%aac+xq1ZT`sFytq#tK6Qi|IyfOpJV85OLKmBk1n-oD>UHi4K ze%0z@y^EJF(WgKCY5Kk2`@M{BH!(@}xv^vagF`^$ykH(pepTN!L2k;{=_HNWI~`pu zi6U7wJ-u+yLx>533b}rzeS1;Yd>Jx}#sbuYD0O6mzpZPqTY_=}KQi~LDBRR(9a22W z@pV++^}T~51ji~M5eQXt0A0T0>3I+XlZg5+Wq>uWZG{mx36>&Nrt8|)n|wgq!2vqA z+76vMbxMBthkuwq^O?_Nha2-;pKnRvVAcos4$hl~$2RSzpiSC8_lZw@g1-30FVgF; zzn;~c8+zFr zc|1LQ56gOa)wKikxkLkwYQO?BkiiksrEj_1mPe$qLU&4dy6(pc@Q(r1&e zWc=7(WH8xsQ()z%fBF+8AmIjXMmkvQ*q-*6^4l>? zIXF{IPYWWHXOve*C|<>mC3_yd`CT5Hz0J)H5)B7Fds^>uSi$#HbJIeKx&Awg=WJ+y8wb8(51Cg|F{44-=>QfFRq>X z%lUkYzw%f93jO{6et+xc}lW{$dVTya)jln?xGb4)z`8r8Hgj;8#ENQna535?qxggMHe*rXtoz z-foeO31kKh+k(o9mQE?YxYN8+&VpM$=&(Wm4>2BWxD;?UF7PALZO2OseR#xun$6cY zF5jjd96dNz0SS?CRe}NJ`DAN?n$Y)hz%#_~hO**dOd%789AgZKe(gi_ji5FS*Yxp^ zf1HzpjlqZ+cxPKS1P-=^$ygT4@FYNSH~rrYy!z^^IWY0z4}X}x@P#jQ#smtt3ig<( z8KRnjhVmdpy-@UYKmkqGwg%&;CU+|&BBLf~FBHN%I9l+<|L={C|G^4Hx#FMW?70rl ze70nKs0d2m$tHF*3{GZbOt3j<(w5odTNP`wp6qQ#acVwoMNPI4!RZSyCnVC*y$EcP zQalfAZE>+l8`jjEdbI3TXe3H4$9WsvzwvK;0&Uw2Kk_3#obSK;%y;RBKl;P;m9Kn- zUc34loj-S;{`_C~^LcOeXFv1VEN@c7AN}DU$qhWSE}vE`JoC&m^qJ3oCg-L4=g*(d z*PmDiK%RN#S^DmGznl9^frPZWAsNG8`RZ44-|3U4AN}Y@*J)o_xBJ6%?t$|;KeesF zfE09n?|a{~?&GtDb9;vMepO|z-s4;W%h(MyYjZsA(%374cP~W~FwMqX=5O5>K>@M}cH6Rl1ZO(x;wDlJd(+ zib9*Z(s6tJPhPgGZ86xyc)!WUbxdj3k!+SepkejbGGJ#zA3-=)0f}^u0)QDqCNMWU zzJqcI3&n;A(dfJmeKG|2PzfM2xHb(^6#34bJM_(Oev`I=ZN|REoZJ=gJP5N@K;zB8 zC(YYC-}%mbw#3?D=$_U8pS?eU+w7?7#PL&aXJ1Lu2{@9CJwVtspaFCol>rw-LDv6g z_{*j!f*T0vs3Qn63Ny+g=nq$zkws+$1b;dbf)dm*BTIq{O9Bc>K$3KK(w$D%@2TaS z`kqs#?(@8zUY@sePxAJ2Z{4a>r|Q-@=UeC2t!wi-ldkUGLSA(Z>?cn0?3i&49^QW( zgJw*2fOj9y0&3FbmtQ^`)Ga{Pmf+{woU!TMQ#E0d#Mo`tG{sBoo|9(Fki8z-hG{j8 zRB(!^SmFY&YhW+7 zxwED>zVX*{5FznPzmI>y zQiLaVP7q=gB-n5N&(%&~134wK0mnn*183S4xvyKqL14+5=ty(`e=!R=feX@@1OpTj zAhG2<|Bv}#wXFng0pqCaY_9WHka^-7@&YUh5{7^ph(^B34Mce9=_pO+&#DvtAN-*o zr24iVeb3{+haUOJN79p?_{6+g;A_6-A@u#<|NZoHKlgJv?@#~qPt#{V^O+n7NWq6h z|K-2@mmDZg!H%E$sh`UE^gItsTpL}90?crX$j<#Ptw4(t= zCf)ovVaKQBo9Qspmip{xU5d|I6XDpUIw;BJ1Fh+RK24y9!2nmRqYnCU2E{iP!us+P znbS`{oj&==PtvLsmrVAj_3^glUsm^lre(6RJpcNy|4L__b(T1H)Ateb#sNynLx?dv-%JA%pH3U51H6S!wl=@&u;2uh!Rw` z)NGK9X*(e_Y>3rD5}J&G>p>8l|LVV`zPz~>mAP}2Y`~76&WLCXxKX2pn||P99&?fe zDR_m%si)q7-v0J?(A$3hZS=Ocy=^hs|50gg3TVFI1uvi{EP@eNEP@8<+S}j$_PnCv zTOai;Ir#81i@-uP26Xn>XVbTS>$lQ{7v6_HeA$OHa7_V&bIv)NKK$XoTKs*O&OYbP z^s@`#`KU)dDnF%r=Chue0}Zc!^)J(pF8JSP0eHDL(_R*7rA7*RoPG8=^o;L&M!xoh zCp;ksMIN@0qpa=-8C*A{3GHmRiUL}yE+obFkTcbXUb$@>(&db8%LFFCUm3scbD?G5 z2)JK3o@6q{pX=r!4eu;Rqc?J2M3~t7e+Q6qYYFq!y!++8f#e8mJlhx1{yAfO7EJfr1M=+O&Vi#;x~Jn|d9VG;QFY5JSL{+k?(NI{0jF9IoP zZ;4cI;-3N;Y2`&~Mg0;oJ#P_sNq!R}Td<$xto-#pQO0Fv&_MZ4zk z>BgdY-yZYeqzPC4*s(A9gP9~+fME8;;ir1amZp4V?*VRWS{llmW66}7%EOnO#ORTA zt1KraUcTBuS)}#_4u%~ZFo?B2j%1`)8hAwm)roX|wW8)v0fayO)A!}`JKy>2{F_!P zB;F|?kdE(t@B2t_Mf!%(0%4Jo0lTXQ7(zHM>K1Aw{mIwbEs-bDd|&M*k!pOQp9R~i{6CB_ z%zHrnKPI9MBL3i>Ud67@bXZBNP%}Q634S6^}Khv+d=(m3JH|gE)es{KU->{gF zr+`9Q74gEK_=(n+q!e29LD~d!$IhL3^}$tFU6md<<@_m-kX9Bv_XnPv3*U6pO?1aQ z-cib3am6R-Zx>~A9|^z8zsjCokxPaDW)V0^wU$>$g1o+w>|c^Kt%P{p>tC14oVTbq z5@F-B6+7^+Av6BUN7T530sN2Zp>EL)B*{R6sL- z>4UsI0t)wiM6v4@tm{IA#%K0q`n{2 z3_&Itdew=Z?1b|D)`+jpv@fGj3v@qIzC2WPwOU?gw zW8^^lf6P<+u-nvdw$tlN_O^r|U*k%o{CS;dS$j)hSBL(4!iJ;Wws=Fz7ya9ipaN`e znTHs&&#TFp8?mgg`61U#?I7v0yspK4617mgZ$UPn!S-7asUz51G4_l9zGgA`K7TP$ z|KmkK;sby20s4!-_zU_^|LH%`V;=Ku`85n>FOe^(TDBi759n)3Pm}qNef(qj{No?{ zIPKiEQ=7!tf0{FthKS8erzb2P2JTt}54iU@rkcv9put5KU9<=wKc0U7ZEwr@Ql1oS z`1r>@mJ6iU@2(|JmM8*h8rp)2toF zyv*0&3>w(lfMWqFAW(>z)`YgyD;o%Gh}6W4^-zp(Hv5o2oS_W6g=1;taUK(nb+O{(2Z~pBN#QDfT4Akw5TU&t{7Z3m$e4c zg7I3$i|VrM!2{CaV07Y42b}KtpyRxWQ#5H2?8h?24NK0Yo*32M4{CzvlvfizW8=uN zt?)i6)u-nhHt2`Ig=~O>$_AO-_Q*Z45jLP7pn-+QV{g4?S$^?Jaiz&tk5j}vvTY$)Hm zivM51|82_uvyOI5z~|#JUcdVTj-{E_iynCAd`}{bEnHFA`Tr2Q2~kHdK$QP>@^t>+ zq}k(uUt|MJqOc~vy2bhy^Hb|=h`SPr+uRT)H$h0JP8J&jHIpGwB0@L zyz}VsPx#(E@xJ%MeqOYggkSWv7cCwf?aUiJUVGhjxomo+A-!VpZQu57Vm~95FYA26 zH+*BBz~49h-S@urs~AD{kw~i%u3Y@334XfXMq4XKV)fBGzG`c3B_ubWM# z<3D-tpXB`?9{+?V&|@C`82a>QK9e7OopjPkdG$sLL?ju{JnKx=AL!6oo~J+k>GX}? z_>GI;%wOb{BPso?v(7951_@*+r&WU}C1pd*cmH)04%nnGQssM_eQXIjl|TiHBEc9= z>ij>yb`n}(pae9yKvWx3yZ)bG-h?)inoW)NJOur|dphR~&{R$j*afK1nTIOmr7AxI*ns?N9^AB0>?Hu;K%~HV z5FM-8>qEg@Rgt4$vbF(ZYZwO`ge#Yl;<5E^C_#d}5-rsB35E_Wz`(%`qWr$_Z~Vsp zLx1|Gf0obFYKC9>rT<#ODgjqVlnO!(3M5MJCcpX3ze%ro&3~ic|NY;mAO7Lz<<~BL z?8knLp83pYEo8Zo{_B5zRSt06=RWt<0gXs%68?f0JU{b#=R5x(%l}t@^_O`sjMiZI z(uUlt7D&JzXPyE2V1wFH*}NzumiNzN3r=XHOl|K7QWG(?DVf^sESk+IaYYD4HRd7# z;Eb`~pfYNMtiZFS+v5L&o&-j#c6bhTcc0rG91Lg2 zh8&Wa_+UP^h4s>KLWHcLobvzF@MF%*n+Fn++EfrQNo?tbcZ>Cv=P$9m&(=k|Loi=W zNU`00dIcI-&+fMqSnO|`%%=T$(!@Qzs*wT)>H4QX{b_pDtA3Go?%YN1dH1{XWIj#Q z(_dOWkb(?Z@X9BxMEHT{J~zK2ktY9X-=EZ)*S+?2^fN#Ev-G;xy*|sFRw?|}Z~dkT z0yL;CyDz})N%f`G3F-69X>W^E*PGw`X1eCuYv{z2PLzDVxkyW2&3O9%|LOV59Y4FM z_s4(y$LTkJ>$mdt6u|iFkNkD6FYVtT>l;D~f+v|%FeR-JNdfBA7pdHP-u<5H)T^Ae zAJNC@7h$N2T3Iky$4#g!R;mpywl<11(nrBS%P3c(dIetDbgrHU;K=_+419yg$Rog) zmC*h|-JMPagJ(F8<0~x12Y&Uj;j+)n`>?GWh0{(uEz%aD2R`tD@_8VnRe%Ve68V!j z>ttvG#Cv4&$pjW0$kGXX`h3x!{^_66ZJ{^4=}kF!kb)42(mTrODO>`;zxu1cx)Kjh z*7v{v{rNY2`+hU!HbZGc&m{L$9jnkcfAcqIM-yQ04gwHBIhEf1=JE>G zD*C?(-NAstaDs*VBETe1sw7f@Q9Finejeve{ZbBffrAdL2RvS*Jk1M{K{D@2Q0r9s zRL*Ny0N!go`_AVto=W|7FTH79=Cx7Rr=s8yfpaO;0AQQM*Jwcbt&{z8&N(OV@sol9 zRT))4qO^n54T@4>y_QjbIXU~zXXh_!aJinR_8&~?bD`z)p+VZDC=8sO$-^=|=s^#m zt3UUtDo4YaCEidruB47-3uqJ>rUPWS!J3(5jr?pk_K-cNkE#R^92Y^K{r3N~AB4Of z^Yl~b58kkRU#R_|Z~2zrq!Ug!D<8lA{ZC&!wf!O;NJ@4&+2=&pUHA73`}`t066iT! ze@cAwWj7833=?Bn#_UvnICuR&+ht5c42!xDbO3@$tt=|GwXlj3#4L89@kznl^sD(& zXs>Ot?YaBC?n9S;@DkU&2J^crrTi(NaN~|0`SY7tHdTGc#kCzfchIh#yCglWIC$Ob zUY7$9DVUoB5{p1V7PU&0ChFyD6_f)U6dF&dJHRBB?E+E$(g#n_(`ysyF9keg&!L); z_bb9*?twd=bw}E!t;F*Ido&Lo8*+DO9ShgypC?XLCU7HhF zM!eCB%?}ET_2J~1j4ZTSN|SmHN~BHKUi#9PN>5(aldh$| zR3@#=NWWNy)BpbO|6X|7)ekA1%N?k;$M&=W46VAqYPAFP1}~70OM^#|YAhSRuJea7Hs}z*-q}eYmc?sW zCoU;g?d9sREi7L;OyzK?C#yh)&5`qHOj7F7fRi;i02nRcvx3om?Hc|{J~$`h6$LG0 zoigVjfB|N$Y%L*tD~lj}nyg$deKs@%oGdf}Q3iF3L)rgA(tzwsT*_7JRCH zDFqGWQ*qMEDO>&gn=~fS!pFsZ%I39u8e*Lcs3*B~1zX_pAQK`M)x0u7ZR~aa-^nu! zQqX?-|Ilx;Hc57T%(QN#15cg}^_)L}?Htjd9A6Xc7qvq`>?dQ*_zbDL;zs5F>rjqh z1A`SkZ)XVl8OuNUf*9qXSIjwpR2g5-+yo;WU;pAY*HCLP*y6=sT9Lqc)0~;jKEL9X zC>z`(A`Csdo?d_`z>8-7y;mK$w7I$CcX zZTd;CtHc@%$Co>>Klz?S2%>lc(hQ^~GY68<|F<_ccs!)lh{QuKgnrY>XaWyJDj+uW z|I~0p7kGeQ(;~vXD8x4ySTn-M5%G1+)8T)j88@#hZM97;m9A3*C6T{TUrDZc0G-nr zlz@W}1%x`4ZN<4G%Hh?GuVA1PGGI&U_FmbDOD5#j5Lil+{q)CQ?>P6|bMtD4v~q$2 z1!?Koul&ldQxb zzCy2h)vNNSmeR3DQ|+2+w+Zy{gbTqySKf?)nk4s`$l`uo9>Hs8(8&kA4AQ%FZa$Iw zG=@BRW?Db8!;|&j0h?XG0LoA;LmpLt>OGNj0~lP!0^*v-PWpI5H5%E(3RLWMtViil z$(LB}6B~&;beBi+MK8)EJ%IfD*+&9BX2#S5QEGYQg3@`Nlpf-%USZ%0+nUQ{)3y~l z27Ad=IV5{~RXJde!4*!ka*W~;6gU8Z^{5pXbzDZt7d9k4-$=es6~vMSs1?j}-jKec z!mf64pT(Rx_EuUHqxw{+3dk9tEB+sK3i%!=|Ic}xI)_io<0?0Prgb83+;sjw>Iu@w ze{-3RXVaPddWDA>RDim^?nk^AfZ=6)N7=hYCb-2du;0m3;DV3J)9++^Z(Zo=1_S|f zJ*HEnG3bw?ehp;UaMED8l=ln5Tt9DE`JaFKKhvi_{VA26s6FT>eBe*$@ua>0)da6y zb#iX%M|p%_=w&9SDI+`F>eW3Q;To5%4zu$u%4ouUNNMs~Wci#`4(#uvC|)a%-SR%3 zxy5Gg-3Z@xKy z1~UZ>Qjj1~I!^mQ-0NQV$^nJ6GU405{oAt~>2;4pDPVA?JKZVoJMoLZ_>00b1r<{8 zfrAk#0FeR;iDxR4(h~2NyyPW0_`sA_W+Z+b^houk-&8i`PuJ4>dst>O?Y8#Hf@A=y z>X;1J1YVK!{SbhRz+EOM0lxDc`*)pb^MoLV&%H_HOzTYTeu=^0Net=x7tHuuW(*=$ zfzB6r+ewwAq5blBfE^0}f+Ok-$PfUeYPqQCM{RelM4q^)`ZJ%9cZ{#Ll>*e2_bb@D z_m=z>9nM=7SdNS0^0CoH3{JEp2}~4W;oKlVm9OS4?bAH5P7a>5YZ~lw9($eBYSY~E zWYP)BNzXwOqLdGE{kY?fqdj|e6GatN%@-@MRjo}y1yQTn)e81hyAndBSq_JQ}PbZOjwSjmnduYu)@%=DiUV7EGdQOfdPn_L$?~q+5P? zj_K(O8av??506(d)lpC62W0tEE!+6i>#V~>T~LKg9xX>XvSv7t-=|(5N0T0%HZ)(? z2P{hTfWK6gf;TBByb*&kkZiw7kvb+yv!r<;q}6Qb|MUNg02YkDvH#cjIDp=G&1&rf z+iIFCm$81+HT)}jfHKXr-n7*M60QS*K{o>Ro}KD!DI)PYc@<+$zAUVG-HHbU+tDol zBx<|VVl!6x%0>uF{adDIKJ%G5K#+cUHA12kL`dgveB&E)&?0SsnSujJj`W+Z^D7tM z`mNuZg9S_}Zwf}F;6cilD4i#MX(dDoXrw$Tu#kcmO#GV0|N3A5OVZ9e@4Wn*f*$-k zdOc(rSwmyrV{gux?3l6G!h2sn8$_Nk;lwdEOU*{J8=F>C_*2neQ$|IJsrOelZKgG( zf4F=%A9@p^5y*|+IcW!L@4ejwYB)CRc*pX_j*jf5{T1*W%TsU;KuAC!$`0-Y7eo23 zo)(X>~>^ zBV>+sKp~hmK%K$Vhj$x#Rse8l=M-C@hV!R@#4We%$r+v?E6 zeJ}Kih|-3Df3c2@?uk}}RfJ|-s@7V+%l(AsbQ}EtNS|Pm*f|k+cbfjO*?^hWgf9Pl zxhJ6qQ(|Kgm&HCCKF1f!)zR? zU5OsPM5VJ0VcLKRJP{3No5B2Hx>xV$8mGrWI+wR~dGZY$Q5QgPj6k)q!CLI@$ja#% zre%Fn2SL{^BWJEYX1}n2o%z+Lij@oBJ`~NCK>{pzX zO3;Y*WV@mZ{0_<~erSuaJllYo){D04D;phwapnoXUB(V zz@e?__+lEC#pQTYO*CJZE`P2AEo z4jQB&L`q9#c#jHx6$AqdiEMDe+7GWCSogB_P2~f}tnPssA1Fs0)x)>h+QJEWrUVV6 za|AP?l9vv31e$5B=^roO(`Hf=lN)C|;r&(ly>VT6xbHn1JE+bP=wi@-&7va{24BUV zh4uslgSap;ZC|Nr_Ok#L2Up~$J7ph(A`-vzoHC~k(M~z#RJ!g<*D z62Sq0H&C+*;1Mw`W48j}urD~+(ijV%_X7rG>I4~N!!bfWQTTSUIdw^$!GLR!qXXbI z;jBB}k#4#vZ7#MC#uU8jM)KMYOC7judDmM7WmPR4Zv~$z_YuZi_qwGs#!&Q;KY+V& zVEw=0PfnSZsR@?r_=mrnf$zG}-+fNslQ`kbc`^nMIRfGg#E8pyk>me^3B*ye%hvwq z@mJ-Db@C_Y<@KmCZzK6KQB-~egOhBRV@)Y~T)wstW7NuIgjN&aCbY`)q$fR@HpCW| zYgb);HC=k?r82Q5sK@K1sdTY%3;Kx{zA*Fs(1$)Wl$l5y2pZ%=-s$*R&wh5^vnPEG z#Fn|weeat;MVivm*D^l-v5yI#fB*0Qy|R1PTyu?FPvyV%qKoqJN75_Oi|c2ed1n4( z>9vb|9|Jy}>@jweiWCgm7vZ&!`d~A^3Yo3mzWllzNsu_dwGqooM1qGLrIr{a;AKUq z&1u2pO5*?F^-;9bV$+SzOx-3qM!#XZgT})|>Ln1Ig|;?eruCpL6_7~Z8>VV!9YCP~ zGYmv9$l7_RMBod2A}RwLc&wVsQd1lO`yq7i$znOoLsgk+f5`KJY2`u+Ch#Veya6R2 zr_~B651%JW!G!cWMfyvD27ZO(p7*?G{!J?(p7D%lF~sDKBg?nem9L{+H1<*Hhp}tSTi6+ZA)q9s z*QNJ3DU>DvyHKB;CvcQOPDuYGNYoj#O;28%zg(3m(? zM|A2LUHkDL|A`zpP63Hzu#y+r7h`82taFS`otF1=p7Z^gZwg4@weS1B@1w_j+qdP< zgr?F@eBu-7kN^0O={J7kH}cm&60T*toa_JX1!D_}CmH+iHG5z`P4hcEGxhLiw#92qTPh%tJ`+QvpP2DA*nDjno6*D&!3YgNyKF>A zM#*g50rrhxr3xX8oLQ|Ry2^s(R;3g$U`m08^x4luX=Ow*ifM0&6hy$UTcm3#h{0u3 zpdbYx5~TnIZ(NyP<#^xw-j_GGOvfpZz@G(8K?~lm!V<5hNO{t6%9maxNgHV<8AqF2 zZibw`!pV`nM`Y9aUJZgn-qSk;gpDj{T)lg1CyweV_rS>J(?$QyhIReP-S{pMI&qxj z*J~=@l>W!qJ@xItv$bR7*cwM?a`j}!EsWFr3$~c5Z45l_g9-Lg{p4o|5_G8TE-b0; z!$lM!P)NAxWyVZ5-uRVx#`ZJ9&Rsk5J~HLmm7IAYKcDdTPGS z`Ri^9cj$ku|ZA!!y5wWh2sMkc^YAbU(ZWzqE5rW$P zN*c-W38Ef@R`A*d5zr(`Y5rT}{U871f6#NE`vYAt;o`5qn6AG1s+=d`&9u59(S`TD zkS@I6g&CLr=ILFP^f%pJ@`Gu3dH2RSP_NhrCK5$#&Z@EE;7kCVW zAOW>a`~R9BU#|#`xY9((2Tf?3EE^NtHMiyw9$kUxFTV#K65JQm`W#)l}{?pZScWr?j81kzX#C-dSc!n_MPY z`0E>drzX>F=I^`|w6o-ks$pE`X{Vn-XPj{c-EiYq z=+=F=hV;Gq(%Bot^A50S6?Ep_s$+v_+cx<0NbR(ApF(J3&>3s;YY5MQ~{lC+%EdElSJDznGiLI=Ckb)4Y-n-o8F6~}W z!N_Nxc^3W13raA8>oJB$^`$phn_tqa*y>A0)FKcyyJiyEVewt#jfv5Rm!Z`Be`0L? zKa5FL1KMZK%fFmlc?Go3PBWD+;B;fp5jV}Wg=kA{Y8e%{>YrZVF%HI&BGg}{6i!{D z>jVlBO+dj^gMco=MBB9|p-pyaGZZE!rH*`xruKM9D-}i?OpfYIWiS}ADsj1G@@|Gq z`OuQxI_whz*Z)ACV0jO~gUZX}tRABw#b1{^!%H)52{KM`c<;cOi|v52-b7~=CF#a6 z%Y@^V%A}J)wwmxUxB)TML4e>af)lQ9Bk0v^jAOa#^7+Wf_EkVtE}OsT5Ml$kMYM#Q z_U^qU+;HQ+Ehg66>8^LZ+X7tPfsS1SJG~x@AWy(Z0Tryrlm7sk&&M+Jh$H}$6I)=Q zEt!?zfsT8~L_RN*tz|i|p(xm!hVtutRAo|DDMF*D$&$WIa@uL9=cj|Goqh*OeRu1v zdn22$a)0=ftSM5IC6UR|#)jO#e9tg=&f{uhLw!~`T7O6yDDvb=CQ#O;d%$*JhYz~{ zUuJg=j|hBbP`t(z&4zn?6TSO3<^O@78&PY^R>M$d6r+uBE>eEO_*zACp%;oN>nKnb$AA@|CoGar~b5 zyqms%!Rx&9&Z9?u!y^~GzJuQSmbcIgU-%-h(Sct7`q$H4?{Yr<+9F7iR$wGq@3;6( za-@|V=bwKb{ooHiw*(|YP!4#<&Yk(yj1*jW^{Zb)zxKvA(GUOd59iem=m(H^)kNAW zB0!tc>m6w&#itfQjY!&O@b743pj>i8>wPI>qr4g!)xF9lKL?+v%}+wM?~yRA91he|67l#G2b;O1uG0DA@Z9q6D@0tEk?HKu}#uwruC&QwL&6{MtdPO+2=7k zW$1B`+I&WV0K)qDD?gO0o7_h8bkUTHaq!BHK)xO5_N`*T=pDonF_w8s(G1k1OU|ZgeU%O6Sj;*>H|Uqy%`qmi}k~wI43OA z@cf?ezFXwYpaASyJt)U>dLk>Xi*P(IQS_TvspUw3a8ZEhefHSl$qm zv~qcSGLUoJf~T?Dq&&SI!NH9bBzW(8-jmOt@|36K>mU7S*~~Gmd`NlHUSypAFaPpG z`L&Jomo|M&t0=^Qg-}+%)p}BZA+2tB(INE-wrtY>U`9j~&ndYuoM4lf0E>o_%$(a9E;*Mt4NmCKJ&EzWP|Y?6Wu1OzTBk z?v)J&8UlEu+Q7t{=qnavK+Dv1L!uAW2}spOVWn;cUcjJ>P@@cc_Uxf!k3E)l@7_(e zOxPsQJyf(=@a^^0ft2Nh6HdtQl@oPO(D1i;h6c{0zVOWu7!x0(062=+Cw8Z!xbLeAaAeUu99yLF#T*7IbbzV2NyX|1o~ zR(_h5`evl*oZ0xD_L~r9xfi_RfbUJ&H9gdRChl|gWtmrwFPlu~oO{lqP?7o6BvT;OhV)9tH+|DL z(Vs1X2F=VCTt+|nlP}Hzifa}D3GN6kcjlr@;{EB*d|Gu~+JoX{FMAoieDV9d z=RGg4q%ecA*&ql&*nx{_L9T?fBXrulviMZ+h5O3JrQ%Tc6+3FjvGh03dEh}p&O7q| zAePmm!2N8f(;0QK;rF4<)!E0{QXLPx^D!wPu?nx54k2x+S2pf;x4Q}8=HCj4n3l2d zCX#qQIY13)635~x7z4Ec8?IDkLpjvuFS~Z_>b^8Fa5gK`X7e9R@&M~?Auv*smI4wO z&>@o5DaJXgCvpgAiA;b3${-NOF{37FHGT9Boa@*58V+RUBMpHude^(&m1f!!r1ZZY z<7BRzXdxhmp&+(~eEUIAKL4h@7EJywYh}*Ic2a3=q>OzQ5p5q%B&*&?d+V}H^Yo(bMPd*q3qr$QhPQGM-$&kAKgx}gdOs$c)8GQ`3sivFj}i;#*0C~_V0 zYHsZpYWvJ=Y}=@aP{}F52x5#WfNl{4SdVzwEcI;K{~JPE-d_wYj6*Z66$SMp$8tZdO@^V;1tV%U99QDU_s{=# zEB6s&D*RF95e68DL>bwB7z`PjolHT9Y#pK%$U9bo#pp&?pdQK3fr>0=AhD|-t1BbY zYZK?3b1uE;ML(IZee|P$FMJdbGQ87f_i01PCq4Pec@;$3HzMKaw83TCu=2tS??;b* z%(toXjbBUs(4`;De82zuzdx_4NI`yW9sl8*{saB{#kH5djNEPvX+;=ld3|CV3fNc(7XGI9`t`#A)6#fC%? zYH*rKzI+8{sQA}%H_~}t{ZgEl-Je7~l!)fxDy``MVUE_?HozHHXTY#`D~~<=Z_4H$ zn;yUk&a_^%r2-P^{VO1R$4Lk?*s*QODre&qw~E5qBw9$+1G4~8UjSs@#Fdqq9aw%h z&MtGa6gP=)Hk%)5e|7dy={g!urnK4SjvYI4GK)iCIQgESvBGf#Wjccw&68ggh5z85 z6P#my_kB?`-bNl53vA!MeFnN)gXHxHV`C8XT028cG*@ReEC=~y*Plkg8d}K8S3^A}T#6g`B+Tgt(${4Ff6~@K;S0)E7 z_`y8W#q#vERJCo}w(hzCsG0Y^x??GWU+TxIyLKG-6!#jnm-2E(MMCnnX#O!tE(${u7j~Byq81&Kk57{vE7Z% zpfhRFvCr}gc{zw8Slr>%W#6DN8vl`zM`xA(k~2#a>g%q%j?(V&o1rO3vM#j0GOk)KMVaq-$2+FTcz3S| z?yVgLU=YKo{uN}1UVT^&#-NPf7^7>f8NdT@R^xZ!?BXStT(afC?!_0sg0^qJUp~I{ z(ibkq{zvIZq3?Rmsr2qQ-!PfS8CL={C+t;Nflp35>7%%S(|-gKwoP{M0X)fKGbV1KV3C+C`nqesNMizZMc8Kmg!Q>MwzVsHT#ojV)Vi zhqRlqpPZZa5cHkWe+$=|EehbCpx={x`Hl1T*|pkOz5GJKT9&KCP&kkh)f{yX-iIvUu;+aGSEJ!7L!!SJoM??Eh1&W5y_vdO8^NE#LB+bixT|<>U9i|LL@A*B9wPQnJg*J}0{Fy1!r8=NHkDK+pO5Q|Zl@ zb#{5^|5v1y{r@SaoU&>EPrcpk_(OSZhpSzzRz<$D!BtRTvsLDZUv=km>GHq(Kb?{p z2cRa$w&6s*Ld8KE=1qG;q*pG!QUeC7@S?$S`pQQ7RA_otW2#OodwM9C{?eB?uy4Kc z>2sYYE_|%Krm+Hl#SiY^2G1R6?5vTuqFVNW4}1{)>*qeJ(nHxBLRj+s6B+ARf>m^4 zuc_s&!*Qc~wJ5BB&r@Ok#4}S0_L!!*{=e#i9oMezjILSx|MZJap*MW!;MnDLp{8nClv3rsz`S>~ycF5CAb5!6G>x+Y51|m5eDpExP8KYx2bU z_~VbKRVge9cubX>x&|_wZQs6~{^ei(C7*{vxp)X_hwEtD!}kaC zJ2Dj155)QT)THwm#Qfd(4Pfn=7swhgEd&)w-oKkL)8QtuFZH)wh%G2)#)XiR9;X1o zo;`ay3{-8KT49E=agwJ$1R&VjH?VDlwv9Jqi~5O%1S1UJ+_a7ItiJY zggE~ftG?t{2%7xNf>%ngrzk-R0ciX#t+Ic)9Pw)htxT~eQWVPtiu(R;@cM(Yn>pW) zQ05C6F-Dw#rz*E?$meY>-x_O>I25~1V23#^vd@$;SpTo%fWL+U{xk1KB+ZZg{AOqe(aw&tRG!KK z=6(TRgZ|(84#XG1U>c)mGp#9YwSdI3!K6lLaL|qg{R(w}F7UOg1Ze9dPi*g0hu}=! z(Mhnwi7~qNn(N%VcW(|#oPYlLd4kUxa&8`n`!oakUv2w~;Csh`d} z@4URSq%P6Ly&o{TD#pwbOqlR>4tcMd#bVh2gp1(=AkO7irjfzK;R)Yzo{j1jp#S^9 zo7#-9&2ZGf#{1o&!3lzKfD`>_SjWYrOnvcyQ6~U|VwbevR(XLp>QA(FqMj)osp9eH z-ndA4!d^b@nFycA%O-0zMo@*zKNO{}0&nCf04xU^7~JeD`KxRj8zp$ax1mhaiQ0TL z!?FCEuv*A6v;L<_oBs1gXoY{MfsEF7B|1Ui3knbJmv-K4f6XWTnE@k30fxD+>$XWj zc$eE!f-oEP7Um5uBL^D_@1Xjy$w1XEMtKbeKp`%_jqJvFuL#_jv{8GV1pT4`kijf% zckMm+(ui_RkT6Md-EzyG+wA{=uRZsEMQ&#Ke?K_y`E$us|Pqe6gPWMR@i z^&6pb>jb@y3s4WIS(&2w!?OHUklJ0dNwC!4{iw`dS)NGg6k+$Rt2?HYBV@@*Z-Lg%Eni?Ou#(D<|LW4S_EFK%# zryQC%y<2X%C4TXXUyNzbjCvLZ-C$u79>&zS&2*31u~|5EY^`NW&aZmnb zz4idDXO9T*4_x=|H?C<{W0cw?YM~b*$8b|N+~5#oCOav^y3KDs=G734d8ooXwxwWO ztDZ&ACL+L&j6EbRsQ#mx)P0sONT8y0OIs%q%Y>b*!sUG?T3{hGNL%*PC=>Vc#ECbK zEPy^zd-{~NqNp*7nn$*#$ZXrz9OV|tt*Ezfquq_lF@k{HHyLn}e7`Ng`wdNaDgl^% zEGK#(YB;uC!SPY=V-4b{iF&;pZC?ijis+g#&9k4z&t{g8Psz55|4+Wa0nMBC|5)DU zvvu0?>GyO0w1;L|FZ!ozZ;_|2iHzOB0EDF1<>oecC8wmZshx-3CjW2spvo4FjA;9{ z9@npCSg~5&br;`!L?L~(=-6Y9>Er;#CRa`}ec5FgU{}k(mK8lR`GzxFnx+7MHee8y zn6Wz!Mo#HDuOcJ2mC?$;>CurhkiKjAo|qQXw4Ko@-!5w3u@c24b0f6%|8ULjmHEze=x9rQ_Ve?f z|9t-SfI&@1&@Fmw&e@PFhvB7BZ{*pC+xM$fw3^FfeotJ(SAJ7cS}E}_|MD;KgcD8( zX~*F78b_LhPZ5{5&XnaEblZ?NTZZ#jL#Fx$`^(C>YCXs&t%OLRGi?sE_{Do$tZ@VA zJO=o_fen}Xxg0?rBI<%gWO#Z;FgWRIJi-{Y6978_MX)US5;*$Y=RQX>Z3&74d)1|( z{u50<%(1*-e0KX!?8zX7;<3jbtLz~46GzP)Krkkg(H#OE@LD^u!DGO-#Q z+E({Q_K`Y;oX}YJehCGpUy0!k7!xOj0CcQ`HjO+Sj>i#<0w%ZjKuHldoWl z<#irvHk;ZFRdbLq8Y|fGNxnruKL_>c0Qmnppvk6Vou>ZA(8)j3dJx;Diba$^UgrNj zTLoBWWb2pue{%dkWC?(;I{h!_+ZMmKl4qNX>1o)N`K0FFTJnv{>+@bBifKHh+*40Dt zm}8Fd#$NQ~M7h{rf{nsSqlgis-j9V0SgHKf*sj=E1uN0-`AR&Q%bJ9sbYQApuDb8@1#ted7|H#@)N0I zN}EZ>33w?}Ch_ccYE-4fNW@=cp{Tyc!hOx=aPhM*1voa^uqxR$vS9o6@wiAl+lHJh zFZe2D+e>of`HY>=fF0&O(tCn{4d-*>Z`s#-=#G)#Y@Ak^PWt~8h`9OYn-7@(H+hK+ z@I~382JXrS&$NC77(&@g98<K<9K;9{+|Z^AIr0iPv28o6rd@RM$vPmx1`fdpcNz}zeNI4uNGmqQwizY{AZUQ4Rp5Yq5Rn@Mk@Q8r z`jsUe03ja$+wyTBhb^nqVway#CX-Hun#N>{&zkpi}Rd-_K?8;M~&^-$IA)&f9kuOme^8j!)2Tk zx%0W1)|9r|D;r1wK_(s(;rv_E2&BYj=@F2rd_hmR$r^q8Td!GL6oScM6gVdv5M~w3 z+B9@x0qT)9helEcd7zWhUD*W|#E6CF{p2uc;Kq)3@)d^AoTGrhnilLm!1BR)R}JKo zhGEsp3F|Tlin0BjoH#i%GIjUHj>F-=1cJ{kk_Tp1CH zv{P7zOzfb}j>lr67WVAf(+_ONNkbk14R*Z4q*3WV=rV&918&+xF0_d$%aM6tfPw2M zyO5Ji(#vZL1#p#5PRc73g?C{XcoR#gznlkZ$N8*;Dr$MK>m}btiHcAO7?g>ASvA4^ zk%Jnt3#9Z}WE>uA*>a28o*I>ZUGb4uk?d2i{;|^M*g%yj2HxOOn$!Bey?RpK9>LFa z7FPSP-=Tks4J$Z4#?S&HVvo`G$!4Opoy-etCHhnR%xCc-8_LJIV9^<`oUHtR8rx}% z(*gGXw*Fw;H}!&Hx!F!{4N`t}Fy;vJ)O?Z#woWeJR{xK(nPaRgSe*+Y02T`rK>w2j ztoNP%FaA%P!5(w;QFQtlZ4Wav;&w9J2{V<(HjVTQ5zAm5t|J?i$MYIk?&?CBI$&<< z;8*9OQ{UuGWc??PWyfB2xYy|_mk@{0Ok0MwTtLDz@Wv6uiLxV*5xle* z_0xU;h^S1Whek$x0wY=rih@ATo7^h!PNZKY;QB!hHHn3GlIa2(bq`V7#4!Z5IT^}t z?P?dep(dmUG&^5n44s|0c+Nin@8~tqfJ@cC4%SfBfSk5o=@ZkD+)vV0G|)&0q8$Nn zOyESYbw(ZTA%xk`ZVmGAn|0oboUuiSGPD|2#)CVnH_0wpeLji3%zYf7t2n6F52rMS{3#c3Rt<0o1_=^=O z2(VEWY@|IXxco+4T@mWumNg1OyiY}pb%jE$nOjp=EpQMe)&M{W7LxP~1B!j_+e6gL!|jQKYuJAjW9!$@HWp1^m^)(;Ji7kh zt}B6Wiq&VCl`!zevcd;tC{_Q^2i5ni*Zfq2)l6%y8gm_gqu0Oq9uKnOm7mnVC5^@^y(7>yTQk_5?$T6~WXwL!~8LkiH zR`LPpq!{}zeDw2};29iovbNlW(!18Y=J$L^1Y^Q=1dksYECLaDvR2!yikm*_WU|+> zurYeU++P_}2;gzkEGs`bZRW9wpr@;_O-3i*6`E;1=>89vPxrb2*5*gBin?IHsTylF zKeCBfU+jYe>2rwrRj{=8O4LEt4sdvmy{6T=wQY#bB#sZ^D;feC*haO}sP>yMb`9Z6 zE<#5CH+UZf(=8htL4i2tkvNoU^eT!_GpC<@(B6EwQT1@6+JUl~002I;Kk!7I%4&ep zt5mnJh_QZ$Q!G#gf?|`*T)Fm1*e7;_1Lt{j%UIhHxNWTy3QJhgAY-celK}oy`d02Q zzaj%=`Thxy=)cw`_n2Cxa?kA;BI@Qlu1`<@rmx8C+_^KYjyNd(-;95>&C-94y_OpW zHejYTp@-j9-;)r+6c!`!(Oy7-{kAH6ApJjS8z=ej0_#%%Y=X8umiND^T_~^H)oZM* zXko*xd-uj2H-3fAJ?Gr~^j$!12t#0MC)Rk4%rWMNM$!~zI|sZiuj$fS1~2$gh0t}9 zHYlUEtGs-#oHAAp{EJTBQCYsXr!DTy*=L_aI~VtA@2$7iORmmLJY%;|Er~}65s5-3f8oji2%dxcqGpz@0$$$h7 zYM`M4j0SYnNSM<`by?e_bRi7qulicOjyADthw*u0uh=TvTKd z&J`dv?UFu;EqH)@MLzt4{MILUU{N`IFo0cfz}h#p*YA%iyVX$gZ8a z_0|9nLGZp?<02ptZoKhEy6L8yC~X9|NJCzo{!0ZRZ=x2hOwpNi*2z1cyZX;fjm|4t z)mAE2>|GMp}gdwdccqIf78zQNFZc^*@#@)&9t)^i+!| zK*j-!x`8M09c7*k)Tcb#>K+*>@WFu;2@q5x%UG3HfNVsV8x?;0QP34z3f71x0o&O!@z)V`NMHKk3ODKgI5X z4p_#+ImO29tHD`SRbZQ17#FO#@78^B#|>Y}dlTH{u6LtTPrU;jbL=rnIGjk^i8~tk zbj+X1#QcP1jPAw3vF#vRm%TY`Z^P(1rpMTU&^VAMKzl3?15%Z&HorTd29)w0ee^Lo zNOaD*=h5k>olZAi|7E&0eePc0dBFem6>AFEwq#@L2Fi71;spLrO~U)4(Q1;e)k_N0}K%b+b)<w#mGUja=bLYcZWz6a1QY`@e=n$#;Z(O-e3+Qaq7*zJR1W%CG)D)$xMD>S6R!?#3} z4+m_XmZ%$Nm$bFU0d3#DJuZn*8MMvZQ9_#XK0(`mc1SJ)er;`w$F4M+mc}O zuw7OCl`Gufo%17X`pBJ!jwdIne31hhF)--o7*7c5)dMao8;GIZPUj~ae@D9Df@g)J zjyi$<{_kH+H}AfdH^i)hfW0O85(tITH!99UJzxx@F=G57+-tp>FoJ<5WPXtSe@*Me z!1Ash$2g^%Gpz}k`>U{twZY`y&z1du3OsHL+icyF{-3lCco@v&A*DNrS7I+ODYdE_ z94@ACS@*y4cd`=U)0q=5(Bb%6o6wLwk1L9Cz=!G4Le{;3})xLHxfV`yiL|!ZepDj-$0>691Fq z|D%Kdu}@I`^tX5K-VXnpHoNs1J3pGwhz!U^vz$%xI?|R3NZjQvccE*qy;ht*f^!4x zt#cR}ZZFROU?7;X0GyqJr$nfD%tHY$a+EC=>XghVq^d6z>Wm-o2$&X4@BsVAT*HY> zjD0YLY+FpdXy8;moEJf(XWT+t8DR~f3lK&Q$a8#7-+;)`qR`+t4x8>7ce_F*UnT&? z(7tH<0LNlFzUy7@8u&A~Gp#SBd&ZG@$F6h}BGmt&XF%$gv%~Q!6Q3}WapF9f-LF*; zB*t!n=<5H`N1qV3pYb3{6Wv}OF(dK_M~M)Esi&Z?{29+k0>zk)KIUXP?U?&6f**IK zYp(ss0=(TsG<<&6YRM}lLSeQq@+U%3|Myj#A1u(yn>h^pgV;;KiB%4n zkG!$w*x;psV`ewtmD6tBdn;`_CI=*z`hTnj_@d5OT!c75+2X8!rXG^$Z`H?QFmmZ^ z{c6*0*}Xe|4zyk|V#z;R_o5LykPb5PWSBxQ+sKGj55g)+T4gEUX^t&K++d_ z2!5sb4Klsj+Xze-iyE-5#!J;8>9KYzACox`C<_S4b@nn9XVkVK;s>JC`XdCy2<25i zYJIQ9gSs;-;(s#!pC<6Xhh6JAzP_pI9hgfGXGnTj(Z)JDHPf2WR()lI+H%+~9Of!Y z1oT426wI_u1@joY>z z!?v%}e`QkY#*!p&TO-JnCgrO0^=f*Wvnih^P3Qbo3$8BIe@Wj`0l6UvCXAI&;NK9M zL|{c?Xy7#vMeFZa;E2EwdRDuzS(((Q8_aj7lJlL_JY#R*qZk$2A?KWy( zjrtND-!63?4*zf35(gmJZ}d!SLsNH)h(1 zLfJ!WqFQa@@sU1demHT0PvIdj^{kaUj?ngTlE$#QER>UWDX^e8E0IWU*QOPcTEKK-JHAL zDsOD!qzT8Oz4v?=Ou0;l)Bkh!00VG9$~n%oJ_M8XdLAeJzp=gD^#D$P75|_1??K$? z$iQiGE%rgYrvF+7RqaUs^AwsV_JPX=zldI@T`f;(*|e<9Izc_xdX>t zc@huyFYs~ThiIg}3Z%LpRvLt6hWWKS;U{^}_SN2!e#E}2br#bMErk9j$Va#oLtGK` zLx8U$iAfbkR9Cd+eU2ijK!@$+AoyR(M|dBjBu1+J5kPLfySXkF#s972hWAYp9&nA8 z;(tiX<0h>>tgmb!DIb82TKv4$Pn6N~A6&mEr1k$ZtsiaKO)YJj8D(~Pd|X!6f*<4u z8@Tbrd@0BPz$CwpA|T)=s4o`*k#QA;7--~C<)WwqB;9@!WSD)Yu4zL zRb%_)lh3II3b2dth_3O{V1^jK!6U6fKV_sE28~KgjyvuQ3Yy5sh-sVC{~+g`{N5Za!MK)aWW_p_EkqebhA8jo^5jPD-TCJ~Hr(UxPoWW=f8KY}dFMSA zyT^h)JGql#Ky8dfY=<)JFpj)&Y?G{gbjlqx|39HeE`9jDyJ)8MqW4}|?n(56THXBz ze?1zbhzpnc|CE-#bhH`&Pb=tuy||M8%agS-s-+6fABZQj1ThF|JM>B=T(2}Wg3F4f zU@TAiV+)`XMrq3miH2iw+KnL*?0{-gq()UP#DG)n7OiLji^w9B-h=eWD;J0-__;BG zWrSDfP)_n?X5$WNa$W)k6#4emyD6I+*X{`1!W#Su9N1~Tr)Jcv?Xr!nw^7@z2zQqv zI3SYSS~fPVpJdLrvAC_4$!=^ZLy88(`mtyC9_z=0mzM`+ShZ<3ip(2G+r;ywqP5!$7?QmNe5Ab)TSbg6$iu!z9=~5Wba%1>}VN0Wu>$ z9!K`xfzj^Tm9IsJ3-BN5u{Jc0mMqXg8Rf?IJU0!BXF5Fer7zrSlQbwKvhTgOj1z#k zCfU7Ry80bmjSl}{(p>##nWLV}1|yp+x5wn8k2p|`hdrMk&Hr;7K<_+0gmNbO(iis9OzTBoxPI?Q zG0~o)-HYgtjeR8A5C5M65?p3g|G!NC@w}7`1O0C@CwCO;1eUt5i^YcL8c(JFg^A<@ zxq{OFEKD%+29O0;U}1AYN!!S)2HICE%PNAzU_-(t(p7<^eH@C&E6=Tm)MrQ8P!?WW*L3Nm9W<}XOI%=HZw z#Q)I80ip>}zJ!#EG%Uf)mH&@5s6l*RV!Vy`KT%p8w0G|<*0$0pKjcwv9WT)Y4NP_X z!VS05OzTHmDj>ldS|TVg#<&C7hWybPyA89{^;(}TAE}>2NF)+1y8-`f?W`C$F(Akj zwF3z z*B{D-I^IKxF9$I4bw(ZP?3;rZk?TOM*$5EWAhoXoI0>1+m(N8I+&5-eR~&HnrB_lk zasnI}l-sC5@~&T*FRyZo(n}?P&{ir`+3T{3{P`j7DOpy+Ly3z23R*lnEoZk=K2}_}`Gl zMa%NfbeL#M1tdQ8sZYuA06cgD8h<-5guF~SGUdCvNrO+kj@P7!171eTguvBqZWoLg zXavw{2IR%*ppemkL<{;*4%zzw5s>Y4w3&y`J(avsJb-M+7nEox*#B6k52#1 zIN2}%pH@lWs~c1PpPcbD(*Ha&6`sU_2`m?*4xWLTDfu})rEXOAB>NU@)Uy1w3{kPB z|77()8`@&)Yqr8yuiOpNR#`AWe23CMxlH7J9ZHT6+L{I_RA=cacc_brYvn}ZJ|wzR z>I*eoUd>x*1q57I86cEV>mX{KCSpjuB9!1rz%G(|NbSyW543HHL-jww293%gj9(mY z(3LH)#4wv^8U9y!`B&M`7{~bEj$g*@dv3|&9mjVV*xf90pRO{a%7zVD0a?|U~(i@Xe%8$_S6i7t9YJLu^cQ*XnQ*Z zlTU#u0CuWQ3#9RS=%b)dELMWr<2kD zXxl`rkQMf63&6F&z>lFzle!h~lD4Q>zD@@au0QXa{wYu3TXPPE{)27CK()Q67F43W zkJe7b`gIZRmU6wU2QK5Ku!ymfE!^o&52Z6szmPUdr!UH!cG`VCS?i%*l|h6q#s`Ke z1FwRRo8HOD2@&sAz&0uO*eOr z6Upk7`JJ+{!PILp4(j!6pVyd)!lDrYy@o-#HSQL<$~Vtz za$Zea95L@t9`-hC34`oesZ>t^sms=txlg*+A zoAm%zwy{Y{h4$XE|C=oyee_AH?QExGTN+G`O?K^kz21#MwBuv|r@4N}{J*2Kfj|!( z9iC~8$+LSf{^GzMx;7H=1)Q(s{};9`9)JAt;h1BN>8_3Zf4i(ET3&l9-jef9x0n$r z*p=GCliuco_BCCO<*`4nJS+N7ts<&XhQdS4Pv9vpA7+!3G`Q}c$Tk^GEr4Xz0n}{y z2KRp;nHX0%!{kySIJ82`daBtOrsylba_Nq$c z@J*|&T*?ivUl$Q$-s6Al4Cxyp_N;CERmT!FM&nb{VC=yhI{Gu%HKIQ)>%gl6`X-jTu=}{W6RS_WC+X#VRf^=Gi8G;i_{{v zrOKuH1e9MnY6}<<3k3MAD9g&SbAHnw!V8Y|tU%v0Zy$}u#I!wVFcF=6ky>B{>&5Y) zj62HY)Gq@8$0m$b!s|6{M!suK5B-lPjxKfM)_Y199S{t8$n)ja@HzUY#uR{2m&|yK zwl2pe%H@(rm7oedm4PWJtQCC3!!M>+|MIKoagTc}J@~;7q6;p#SN?t0v%ZgB^O{$M zGtb;!*2H>7tDTph)UOpZ)%0MpWEq)LMT#On@zXOAm%(iS{pVX$p1Kve^hyi?oPzJT ziei3ST@AYfkS2Y-1Z4%)7L*yeEs{Ghm`A*sKQ9`;{BIwn&wS>OXtVUW&;7r2%{3n; z0^0|+T+W>_HMD_f|C};-Z7ux22p4%0H}?Mz{f{TmOzTDe@q*>|1O`xdQ+X^pwsXJz zf10qR)e?0K5B)zi>=6M=3Jx>lK1Thp1!X6!2ihv83T-mytFuxLG7t5i4A_!AC~(p( zh8Fr-Olhg0xQu+BzjBdsrWm-)$)#ZFt-vb`1g^?kftk;~Vy+{v(hFc3b(*}w5u_!d zhD#(OP*(ocJ07F5>r@*c?WeLGl4^L(k~r;)(0m8~_q;>3?6tqC-R3q1c+*cwV@nm? zy&>u?icmhN2NN)F$d~QdhSv|X-Mo4C&BVb777qM|YugdCq&)meALAitANcaHc>n`Ed_;?~3W#!@{O8@T*aKGE&sJV#=s@Ot4hB)grG6Z@icB6mX6yL~P|vhRwEa%o zI^A{bP(yPATNIWD9+ZtU&Y2-d$JcT2mPRXg2%cCFR|)b4!8}R~J`!WYs4DRF?c2A< zXFvNHl6mLOU3BG@SJFA>oI{I11f98kJH6y3FQk{g^gq*%9Xqv9{o^xjWCGXDDkNsJ ziXzy|=zoc0#JU;*L25fjot9nAE3bh0=JJz3t}VoF zFG=;(i#~D18|jKG-=u7N`kKbw>nA|}@gIMW{^_6J8qwE4ebL%r9!u!E$gx$94!CJp zZdrb>Y&b~%KSl+pVbajk_OIG%5bMaNuR3+eoN3=?WU(upvZ$ zQg~FuC?stKqsc{?C024%Sd1YDT)`>ykYA`4hY7a~I za}c1p0PZ)t3`C8ysH>?lnf!XoK7s%aMdB}&MjmvCjU%uOe0$*D3I50XV8;bDTtSww zERl|uq`LO(-W}7*2(PR+rVU@>dM!R4+3^w2L0-DkDYIQ(N7_<%<&;xSp&M?vAs-_+ z2x46_iK0Y3sn12MgD`^}fd>v`G|-Y}e)DxS>@h}nGVV=mgAOui1vg3^TVO+)hJcBT zkpbnDE+bNtjbLQ8@=262K%fEgxW>u0J;*#{Y|N+!cAY_qQBN9xue2|v)#YPShZ!^4 z$r5=%AI~6jd&%%5l*L{*<)^M=9vsU`h?7q~Iqu%Q+bcWMnviwHsQ<=h@%52S>v`)u z%K0uCbKV5a=C@DKIh)^GV{ddEBeki4$Rbr%WHR#Yh%{1!af^p@?lw2PaG$;3M64KiXd=I0JJCa6CEP|A7i(IE?{R3?Duorh^G*5xgjbSZPha3T>ZqgQ;xBA$Y)h*GqR~GWBf^;X+PGZ*YZnly0Jf-wr~f1| z)yN=`D=&PDfn>{C`*2?|X3~UM-)*3}&_OB*GT{b{mCWD<_XFxVw>#=}7*@f-{xtq* zQ@LNcLhR&{S?Paa?&JTcGU2Ma)+e>wxw-s4OJK$n0^CgLrz)Mr{~@4&5}YZ?F{+1@ zt5QscW>Og_g2F3!(ABrfEgb{KZZ&D2zrj<>2RmB zL~cNNw$p1!TPh%N!37u4WtUyn0b(=QmpPgaaUn3Tyj(yY<8YZYIY2!Zi+(U+N?9oc z_q}9gFpa#HKem?)FTr4B2-@Hp3nNClwZ$adhegSUjd1Cyz^Z- zAd%=%kNOr2NFcb91OlJXpjw8puKr_-Flb=)AA=JR;NZ3!u%#evPO3Z^ITK^c5Cq&y zn>56%%avp7{EWSuY{Ov86{Zjvxj>GYCApQShau*hVggjWUfDhUx)k1?|xDIKLRLeHF zX0v$Fv?ZtA{T@%DyWjIE`Px5z^7rT;|M4v{o8{bfW8#RVi`|Qwo9>gq);AET7(|RM z&`M4C{PB+bDh8OkPVbr|GFj)_ANo~pwI)KFAELED(x&R(pl*;?@({EKYYWu+M8=Vb zAWlX;B^t=b|K6DD(`u34)>EtQw&Q=RQ`YaKOXwqjm(nFwk>;*! zIBBcxA>o1<&#>Dp&;<1i9Vt{8!N@2Lx9!J1F#SPZJr*EZ>!Iyjl*!t_$|yOdP>d);F#Ti8huW`V zu<@SYcyWwpP(rldu1z7R*#)ko@y7E^TY!R|h(&w8tUQlzBDJG;W<4nH4PKikcx8C} zksjBcJY>hF)&Br+tNlh~)KDV;%o9&+?{;2y-E~TUn|8I07}G|V+qa*|FC+&V^`*#5 zRp<9D)qlSWr}ZCg7L@IL1^nuaq1(>~1&OvfC>!LFI{3b$z17vVaisX^Tm-y5pD37_ z#|`%_=5xl;$gUBNKa(av)G6cfu=O2q|8I1`wy~C>nbwRV^<#80d&621u&tZ<9&-PG zp!A>gT)8f7&_PC`?%`5E4!W1B-WH=u#sL(EP`fO&ek<$4Ldh&24XW1x9hUiX;Hs!) z3a|>Vp2zx?ArXLWci@)S#TKD84zJf5jg4e=4gvg?EDa$T2K6`Swi&tVZINIE%U=JJ z+Nel!{0VoYhkVUXhlhUME5ZqjW7-t{=Y2HfWl6X-tqTqm{s&&Rtb6X{6AO*OrjLKe;qXW&ZNFl0tuMXZY(Ek`0K?pg!*S+r99#Jmn z!4G~Qib7|dwY@>ZoDXaZ8n@6k%Vk?}p!MI{C_Xlu2`gKR<^rz+FXij_*W42&E68P6 zNOG+TuJJkA3CVbexh7PO$x4Jo~5AxGYYeryyM#PhQ95(^) zGj2X9g$|MbKM?w_O;y{ux8^3(+@4}5m(qW#7!b{KmZubDZDTZ3jY2@1TaJ58F4Y9k z|BWhos09MAFlbNVgOa96DK*qcLrse%W)b=ks!^r_}E?nf6bj!!u8PUPK<*x~=cQb*`OYFiPNyHm@ec>9I_ zJ)8l)%eA#AFJ3b~R_T^Cy$&7`8y$?VpB~sV9ZuSEU)cy6h|BM02U#2-CUyug;6-!6 zo+yAAVFEo-WdJPGwE>f;c?6kQ2WNtBl@R5E=3rY?z$Cx~$kZ=}9MbR)^V%n{)=8sN zM8P=k@V-I&&@fscFe+~ishVu?z2H8MdO{JFji&)vu=l|oX0~Vu`pGmWi%?+f>(^M8 zjkTH9fd2Q}Zj@uRBO^i}YMeHCcEdV&qyQ7|Q66MBIJUqcT3}!YcwbL!voc3aLj7Hs zn@cXaR8D{71c1mP(pT61 z*>V+RsksShps8d>SuyWGt{B_CL0+B+4Z~8dEM7fm=Uu+7ob3l|&n^FGj#ZufyX<~- zg2nyw|EN=(1}ruu71Y;Y*Aj-mSZ zzRMsmtN#^0mimeWv{9?w2myg)%~q-qf5rH%+J{JOWksa6u}C0S`!qEi5gCO;&`xo#as9qv1MWo(gV)Yas{E(OC6%tJ8_`>@?e+B$s zY*i=$97g-%55cS+F#PY0zmfmr{Q@h#b8&K{Ckk%+ z0Kj(Gk^9Yp-iJYnnCLIA~hBgqC zQ#>aqIui$U+RD&M1BhI{&Q0R>HB?*=r^fV5>qWbEc=NF^6@(-*`tRIprT?R`5Mvzb zrBepSu(gY#|1b_QplIb+a`sTi`-GZkjr>3B2HunU^(j@)t{wYmruCwoyL%PL|Af{2D%^WA zWA%{w{{yZ6k?m*MOtCI9DEt1jVZJm_qwFW*waChnS1iE9oBaS0D^$Uw?Yip5%(FBw zsLdau+Eup%FhYHT#rLaq7V?b|&bfZ!SLC896V-YdU`tyzjO`PL1HxxHD*g{d`d&Hs z|L*sAN;u`zyOO1}QsQ3sekNV<@i&r35W@=fD;mhWBBi3$sPtB4l(h z{}4=gNQ010|M9+?@f}8Wv91Rv7^xC^8I=B8eTWT+sd~^3=Tl;ANG?T^NTI5J5pak< z|FT!a6qrZ>h(zf%j(7gSAJNNR{)_qZpG=GE5nG-y9n=wYJFA^h=eJq^0|Y_|^gpy$ z#w@raht%ph>|3(k)?|v#bydFRlQD#L5@kX89F_t6;Yb!q+y^goTYI0DtAjjJ&XJKu z<8)p9Kgwv2XIf91(4VPv(SP>aFn$i1|0nG$telqjO8PHghRtY@pmMMOgVs!p`!2xf zsA{wcraaGrtC$T(EBhN^GxHL>K;Ve7w(6iBA{Cs+dlSIG1Sr?ZPXqiPH-Z1pzsqC8 z-S7Dn8qwl9owxYYBwbv>Nu|$-?{rN#@c3Wb;Yc(cxMCZwByW8fO})zg4&+)^AI-G> zw53)^Tz>iG7_D%r3@BX|Eo%EKXZFdNuT`u zz2AE)#mKv=FRpFhE}LFnd+l|!bLXyVP^i5NjE(Etg*NFn=|3B(sF$@$`^}^xIQe@} zN6nAGZv=kIznHdpZBS;;){C~1CnaWHI;;Y~)eI(x!tEXp-+{ZoX&jt zcOCsd7Y9DGeO_Zq_kA#ax&RfAIg2+i?NIxFas&u@_G$_mKBOTTzY~JN zll8pQQP%$$`#s5+HP}F0xknzR9q6!c^JwzPdh46et@2WQjXzPhD{K<~AAkH=bisX| zMaw9C?c~c}`Y7FS{imq7QHegVW0m`8Z8aT8{BQjKXskP9oUks&9>9C#E5bncrpUwa zGp!MAxlJu`+!-Kb(=cK;#Se`PC;3W8y|Y4~g@)eB84aKW>Jinnq3m!r$jRqY5C5TD z=oCVGl4qllH0XL z{n!mt^1>5wTW27E-x z*pWl=hPpZvFgT9b#(046|8a|8MB2D=6*~Ip6Y0SZd1?MF?P)7FY>YnYV2t>G=r3Bq z7Dm&y&i`}4*kcuPbV=$l4|M{@}q26KPp%-hNY8%WhXE!%nP0l1k(q(Dz3Z!DtV!P zTQ`;q*gq(XsgDLWM>%MFKkIdog_98<#P&Yil=W!{R`XMQO@8bv@?>=@it1fcHJ;Kn zc-kBWU+(HcC!N=e3`U;^v0!Bopvt^ zx5f&O*!YF|es3@z+bG9rQ%l|>;&G3AY+5lv*IxUjc<&4D8906C&Ryvh4z!8Tme?Uv zXyeE>vwWM@e_c&?-ICaU({F0Efwgr6CIA4x@=pY|56-)QC ztRf#-3m0JG59i*B0=9vwT)lv@M(7)Y_H_j5oehmn&L3fN&GbWt8$h_-lTOKKxfNg4+`KUtFOhvN&x}D^N@oN?vo1hW;P*hDeXou*7eu z%H#0$4%bgR_PO)ZvwdDq+Hxx-cu)_jpQxkkoWGMLwg@q{2m3*?I`RfE2suw(#lS`=SZD9Z5(jmwKIQuO zUO3m$c{L^`coATZ(%ZHW9OD%n+2lHst*fR9VMT_w62gu#KCeI}PRTIS`q4K&{vBOZP+efQ(OQ-TqRe)sp@x(HHS+iVJa(ripk z%(N!-_y?SX_lWJ4JBhLPeK02RI;R~f|G$6wuko9bA$C|z_Fzb_&+#4(x(|rW1-?o# zrT;`U8s|^)pcijaYUU|FgYid3kK$_!;{D3H*=snYukp6wpU7PiW6F8&9STJ>h{T(@g6} zTW*Df0dvtBR?rwucR|ev(Lgm>5sd;O56(y)e`*R%o==O;1l>_wH^Ob@2z_LBw4z{2 zPBfOn8?z%%?869=?U8ZD`nf)1?8w$1mPgO!8p=syVCwC6;gXZDy9d!99OC>jZ#spi zf8t~ADll%epWI)yjjo!hMc z)R=WoJJCmOn;pObLF}CgjiLMSccafu^xZc5Kp; zK7=-S_PGmM*s(Vlk6Xt7r{jSQnCURmNynClC#&SOwivIii~nC)|4G~PP5^_Ie3{DU zHzq0Amjy(>DTgTvUh{Bp2z@}--Y2xHqW`gBXVL$P3)QP25n`WBy5RJ2*}Dkk8{D^! zxZlHO@PCE*dv@>8>6@UVkCx!)Qv45n6>cm3C+hbTTGm&!EZ0AY|H1FrmEy?DldF@T zPZl;{zxsHlgG*a3AW_Kre_^Wo1Kd`H|@#Yv2&9alPL1JZt2-pn$0l^O5N%l)*X(=4<;6gEj6wF?>`R zBfA{~VFIjl#?ITw%~01@W-JHWmYKE&;dq>Im>~=%|9m{UPSic=l6;1T3UJ!-I~Z1K zIdP@YL{ap=o@8KG`BtZtWmD1NJCXpLVP~+X9E#d!XT5s~khatp8Yv=zx{SO-Zba;t%9j+<;Cu3)z z&WgwKKf#0?iXjgI+_>|EXIe~^-`-*~ANl{%ng)$y%b?Uzby2KUHv1U(^Q2Vy#k|@$ z)!F#7SlqAtssbTT>6X|cFK8oJj$mOek<=Za8^9lv+=hAq(=)%cLFH#Y{fF_q^B=n@ z8}hlU|6jW1iyuC$_#f&MJ7|34GCfiK48Bm6b@V8roa9qjLEmRO%(SHf5*J-`QM~N3 z%LE7-Qt!;M0>uHi_sSz5qJ9^4C>!CoQxZq05} z#6Bu&jS_-0D_=BnDA~yvCxh*z{n20D;DO4a5kmPrqf;D{d~S)1Gw#YbMoZmi?(^t1 zYCx;xA>GDqJVlt)KJ=jv4VPSU3C*PeYzy$Q;HI~cQ6tv^S`|8kwlz?PqJQ?PtI3lMKvZYHl%S;ngy5T#mrW94RPULu zmHxvxa>o!h!{gQiDV_B25lK;o{)cMA$x;WEepslu^P>f@Y{j9Nm=e%TWzf%qefrX@1#SvhF zj(~r>`YkW428;zKa(hr=36H}VXks0ihZQH92{tGt|K%o9@0@I)gq2=fq$X?_$cknA z27oUg+#;-#``xx1;M)2nN%n+)`KGl5+B-jsI|ISS=H6np=Ux!j`r5%m#H! z5rRCzV;qkY)LlpO$F^#Ufdf*RuRDgV{(JV;fE%*M8SDfy`#Th|28)A1?3{>? zrB1N-9salMO?k^VO!X%lu{}d7cJ4ufaLFGE2opDeXvx`_C^pQQbbzu7=wv&2L ztCk!(*R25xPT%r%!rKJngNzKe9D-H`zQUN237S`aV8>{n7oA?${4yEib4Q#ws*mfeh%^A}dW1R!y4SsWTpv9F`T+q9 z)1v=iG_}B_^`DC@>-sIC{}Jl2_htwP9U0?*H_G1CWAoX12Bdr|^1$J2cy2-eKLg-( zr6X1Ui3stP;6A6lXjXHzMoe30W@ppu{xcDHSv%w6LROR%yvP9zB6-(=okoBk}YAg*pHIX6TO4i0b-rS);pfBAbN8yq=kGS_fR>+_Amx9Gnz0Yx0@aGkyR%z;pyIIM|F}ef26o!j0VgjEl&;MpFYpR>9FFRqX+3F6u8?pqG(}T@ z0I}={=n(18h2?|_<_3xv9UiF2-lPM|q9gDk;9fm}90L)?lMI$$$>2E(PKUNLALX!| zI^@{tCS@1_AYyqme71i_uZc)r7y{SPZB(pJ!at{Qp6q-Zn7A}mW|zgVkr z$0TR9m#tfcXo)dMV#)uJwVdL5ngV0gu- z1HX2k9l>t~e~J!i-rSycX`>HvX#J1v6-jJ&kk8YrHU-lMC9p#}7}WaO^{v%TapQaZ zOZ$)iT?&U8{}26t9Agh-Yn7el;?DRFj!mA#|5lCw7=UfSOzTBkDj>0U?_N6UsJ!h( zbPT^a?XQEO37C-_AcjB&&-pS@|E?+5vjlv}CPb|G)=)sb=nz~Tk6?7MY=oVRt^8<& zpf0xp&RdN*{*n2`evIV!RL?1b0~r}Syl>biUC;vfy1XpKMieHn?u2m-b(wHLBkSDz zX#3h8b6Fl!rl2yei#p>%7bYFmOlwPaJbA#hT!67;Y=+7^ur+ENjy}<7tDd?h%3>y6 zknZaL%{PB}f^F63-oENX)hSK?eU4hmZn)voZZ>SoR?`1E335O?#VP-T_lq`3%oA)i z_uHr*$ur7li*eb(__tMTRsTQJn$VG|{~VAF&SaQP0N^T-1^kO=Cs+=p{{!Os@nKN+ zT0scGmCdv%4EQVYq6vO*8}WLrFRLf=viB?Y7*fu;Ekx=8nJwR?K^17H^Lbni|3l-W zZC3~f8UNEJ{QoBHAImxL|Ilm^sRS}cb(pqV+e|a9FKwxS#P!!-PusR_ONR(lyb;zJ zh~Q6F?SS=+JSv>Z2SzqRJz<$LPGphDpQ+9|16@diI0Rp4OsoTp)-YAx5sa8EA0QtZ zJnN(a@J3LIG7+@Z0|nRtWa`5}h{%NZ!a5`VbBvV-c(H8v^bD`ru>o>LTL)K*a#^zD z2T%FnxZ{osU;gr!S2g%Etr;!Tf18GO#VZ(>cv)|VPT0*j;*a`|;(%OD|EbxI8*cdQ zBA9#=jRkDWYE>%!AZRJeFZg0JR#1RXQoTENe4ekobrWQ`1-O4SxPL>k?Q_Ph)M<*yI9xIwgjReoGt*(BEftXXjTH2meBR5`o;=6*FmA&zA5D#P>6bHHW52R09WPHD3gZU0*~J9qA+ zfBL6?qM5cXZASmSF*wqHFQ0SWdn(icKTh-PCyq@Ipw)8uXWzcP^sis|2;H)GmzIL{ zKd-%Ynoz#e!N#N^ulAB|X!&Zj4eG|dx9p1l`mZ0Z?d^bGU)>hbf3B2Bf0unwpBH>! z9+;>1GeLhox$e&pJXuEL1M9*5LU3!_WO;jhx4QqIY5nL()&CIm{#`Xu;V+_o_$lhO_HWP$nu={^faj;^SwE`lu4$gBbn+%0^(>~>iF2maPJimIdjbGp}d>;sTR z{C{zAUH#0{8-oWQ|JVI^Fb(Qi>iEpk0NgDS~bs%5_t%2!`7B~;f z+v{s(t^OuHHZ{el88vA1_>Oc1LR6cX= z`2(z2ol}3k@B6_uu-W8vos!G+6U*7~A!5Vk7+^2E`r<;2li#0B?*dvrU3M7w_BbEX0Q@+HKMWMtYuDuaz_p!T z+g6grev6y?7t#aB7tOgSypvyyv%P0{AK|x?nfn&5tN#t0(8xa@&H;(7LkCm;S$7e1q75;^ZZ75z4meiFD9 z{r^mBN4G2e2RYnVD44bJNjaTbA93B)kSd)e$VWzQ0-4pM*tC~G#%S_({ebNl=|7f* zG&e8T2fra|{AtU3liW$WgnVo}CdyR3WmubC)UAuVQ(TK%3&lOq;uI*w-QC>@Qrz8L zTbxqd-6>YwHMna?cHVvVx6e8M@;BGB)*NfvxD(Ezx1o|0;bxTf>0L*tlTgIA_P*yS zzBKHE!3L+7ZT=nTe{i-{E&e$+^fGHif&qDUoZe+wESI^2Bspo?FZC9=!dK*ooge4O z|Fj&>#my;oksORsVBwNc<9^hETHwKdAPac;TOG=s%Q6_a_jDBv16Tr*?!2I^DL` zZ1JM9ecCFt4|}xFMq|D4>R;o9tOn(sqW{ZBB9z#1fAYv)SPi@HtGoG7F7|zM-76+# zgjDNybh((n5gM>TJaKGuV2u%Cv5cFx>R6H#_L@TZdk+GlthwrYzss-?<>* z1=t<470`!j=xXL$r;b{L${_R-lhd*5MG|gKE4Ii)Cb%$$CB3J~Zlt3ifrkvdbhe9? zpgl_7N7&eL-S3DoZ2!FRgX`TpCvzud`%XQaaFUbS6cuIeX!p|pl}(^7emUFSZw}a< z9^qZtTZ!~eFmxFOp7qMc=OXl7EJ%&S2@U=-X3oWDK0_! zhw*E0J@#oeG}BnCnJjBDg>y0jgcAoYKf&5giCQxm2~C;_`R?!gtDWSP9V<0>4Zk@N z7K_D3Cx;K}^S3VUXq3boIOkrDK@9?j87DnIW1h_$uryC!CjOQ}aKROpcpGBxzVWli zj0;?KH0QBZ+K$)bYCSR>D6%(CzA>y(R>w>=P7$73*{I^Q9cDHn9zdi1Q9)-ceW`3F zkQoT_T*q16cfv@TL8qn#7y;*u&TZa9ERMV4N{FSvoH;GhShv7@ylJ`D$ zbP&x znH9Do4<>(5qnY#TyIMxpak!gw-s;Xj$5z}GbYLAw6>t%R9Z0;j_*-*PV>z{;@0kuk z+1G5s>6?R3ZNJnoMo9i;r>2AUAYZ|Pij*EVt;>eT(m@XlIX;53FO@lrQidpxXvTSf z-it*V$bGbd^j=xJXj&WTF$yz;_7CS5=UzOe#57Dwlj_;$<7>>l3gy}EOSuIxF-#<7 z97C-j0X>O58`kcNq#yUx;4TuH zSHAQ}Y8yf3B}o#jZZkCV-HTEazRi652XAsGg`?_d`)GK%qFTj+`=Qi9!d80tKO+QA z%8pjzCm^he|A8z~?rsJOo{@h)Aa>!B0KOxwq;MW)$@psK%!!gm)E9yy+7gZOT-Sq&_&t zbH}86_OD+1mFhk!`RL@`kAjIR@d@HD$CRn2X`Ck z!d@KbA0(1qhJVAbVR8yF3-WlgO2s*AiF-qjAU*_>cKT48Vc#d1a)d4;?CJ|-oyX{xo;o3fRC%kDyMj7*RrUb!Z0ivXFyQLu zH4gK0!tIXc6||}LslalrGrq|JkswO^c}!)l)}X^wcib_AAgekVFRmnGbGuo=;+gyJ z3d5DQ<>+YA7Xw*YQ@DJM)$K+6*UCFjMmvT|P}??05pNl!@@)jG;i=$4By+?+(lneR=AezI>``ZP&%LKVWh^4qxTxM!>ut`yDS zQe-`1+R)Wg5BuhQ!ZyEI8t=K{0PRM|l3>zEpiL;dR$sI#VC_Ys_R9s#A>q^I<8Q|% zGq2ox;Ad#Xi_9Is7_oR_Y0hC07%S+u$@*5IbPT0sDST)v>ZURjtMR?DBiE;X0b&HB zKy)0Pw9TL@c9Br8i}+wmU6Iu}_$aBEisAQ4{~X&6h|?Tn3rO4DDf^u{JVnAoi@i|R zg%PVF3Ga;!@`_5(kNU#1fm9Ww*qqX}MVF^3&4@GGyeyu>ZDcL@t%Nt}xp6lLG?yS9 zuLS0&ujHP3(+`|?K;>P#PNa`;D=%Cd4-_GIAAiHlSQ0g*C)w$nncgm2E;HNxJ7$4M z67V6YKRN2`xBZFS{&l8mO70g*LFQzpa)@O}SLjDS6td$v*u1rPencn|WuaLZX^e-f zSJAex5F@SlxHa2)yULSPL7`Sjahy{G7)u!d!v+|kM@~6S@H|u~zOM%_`I9eOs#>_u zf#V+p+dV7q0dqyOKn&Ppeoc$to6->(I@4)i7C{K@Ilo!?SV!;h93)kIXBdDXcSRyd zP}b)?C(j(#w4XN(EGF=baNo#^$jALx=ArBc1^e^tGvNer|4Ef4K|xdd z5o`e|>DIh*UR&8r_?+U?e0rG<^tJhl=9D`LaazhT%3^=_RFef$VI`Ky zmxKel`eF3W=KEP(sp*%xS}HDR9hvN9{%FyF-7u8>WbbQ4Mtm{-k2!BWQPt@Yj|xxW z)9T;Hck?PEOF}o>;89ueWI$e|Lcm$W$XqD(UE#;McE3l*cJR%F8`0pXw`4`WFWUwT z1x_Gs0kJ{I%D2`UVE3OEz5S}-2M=e#_yRrx(1<^_&3K%*-R50>HF{e#s@Yd=+NP@O zdRR?H0~21twllnBwxii=3t_7OeIfF`y@=F_Yxb;vJZ2B43-#S+rRjLeflmW8hm}== zd&pafPbr_i{>}ISVlMD^?R@OI+!)JWeTD&4qg5DhvR`gs{4#dSDekgB{W~l9$a9dy z$%r)2GoHJqR%e~FK_eG%ZFpBk#0=wl7DNhcdYf4}lQ>}i%`nZhGb)aKCcm>Nf9Kx{ zc{v4*v)4`TaW@|v@KCk=$k9}`I?Lm(AS_jZKUIc)@W_k^ufqIhB*nAwHbO;c;KF$WSu4IBDHa zRt#UVZ{tO;d)E5?wD8#5vu73m1w+_*yKii%tgH|PiC;MIpeY_B?c zJbnu2Z2wqKAo5=KK%Dz(PkbBvaZl_|!1-6&gYL@_?_AK|xoT)UL@&^}`W}Ge@KOys;=tuxD9sqq?;6@S z>RAZ>@0lYz$WFmC#S81-%D4#4ISWjYU!jGb#;yENqaN*tp&%ui1co}sJi5ZX>OOz2R>6i&z$M~pEGrX{jrPvBhzIlTH+o?5HERPv{lV| z8X}WY>$`t;8EkeECHjqzj$A%27Lwf!$!%LD4YlTXzZyJD{LZz%^g0X&EIq&;la_Cf z_gi1UT~V==^sRJ z4BWmnY$Bwr-s-5y$wQ+v+Q%)Bb02xB>^a{b*1v6x`6z+!^_2!V_nkw0{(X5$!bavj zjW^4iQ>=|d9-i&MkPcKY>^B?i)fx%tCn;sl7sL%3yH@#P9gAYjZ;{Y$kl@VNyR;_Iw69L%6E7rvWa6Va`AQC1%*Qt0RWz&GF6fTpv1L)hHN;&Kk zQ9~t`KF+)tts#22tTJ3{(WEc(w0cUNLJ44qxCpG8=(SL20jb{WIg|z(RJLqiJ|F=D zZ^6D(HV7|yuZgIVG!-qY4A`n{N_ufQ|Rb z^V;*Wwwb0BGG;h;vW#YL%7HmBTbp9cOE%fZ{gqU$fZ6gMo*Me8m&=o$tj_zFx-eG@ zTG;FMr1w)$e+ZcU723ow6q`c-4`#tTh`0}Hc5`MU68!H=kD8z##7+|GYpRl1fk;5S z;El5(Uw{;r-jZZ@_s;a`&P*Nm5+c59CD*G@d*9EoG%J=g;Hf8Jzn|hurNjJ+=3}9wPaE#?~0lR~|^DSiYoq zCeN&aw03Z`cwOzJG~V3wisUH))%_mEz#&y22Pi{H>7DHP4y2d2m}nExF~EwMyyUe| zoHf!SuR(QxMUXAmbYi>vEaMqcT_j{b7oBkLP5;{ z?SGBPi?@FBvKOA{&-BC%8Hi!@}B`Fb{(SA<4tXYCrxnu9Wu1Py`~(hl7gY?Ix2x{%;kY=Mr!wM8Kjl)-c25|xOfQL=cGAaAqODJ zjJ^uxUJ}D>fkKdh&&d%nBT*pIkI5zyZgjEZ&R_6 z(S1@yEeUf`o0%+`SLtJ@G~y1B!a+=P@ooHDHpGZKgk^mxaZ!o&r(rctvKeNRihI6X zb2*k&3gzhkCHyH#c3<&c`?VOeRWeNnifZw=1Xc7&u~^`Ic+tFrMt!rSAAm_Yh1ZOy z50wp$+$2o2c&LzGww$)I0?XmTTR2>i$QK2=$@a&G6tLnQbUeOSRR$WXj7QbER3}@=ioftLt?1g>BI+r9=LS$AooN z7$7~PhwX~05sJ9==>JVXNQ7^3HWJDE(stG=FAV`Zh?Jwwe~rl9^n8w|{|rj zv7(v{-2n-b0Be;A>C}a)1!Z#~^YAy&&0lEkR8PPX9#}cDXAgQ&3NsKq3>t)K1Mj>f z?XaAh4<*-G2=zn+72pUysQJz&3Awq%zx<=3eUqDR>zd>D+j*sh)UyG>75yvekLe&i-p>`eGC_SVWi&X5guYd<05`-_ZQ0 zO+Iv0$CZ?Weo*XF{AV;JgaCFHsJHCMzj4vJFI>+CEk`~QWx+c$u2EN+HLbS3R}1g- z-4PIM7u8w%8j%ps`$nU$1>&-~bjM+O!yg~)lX6yHw51X}1?W&W4MK4>r752wMl>|) zuzJo;#s6sEmGw%;J_du1tX*FfBG=-06qh%KBnk&9b$Yr|v5cRtb}!RXMz98^<|>jm zm@CG=?S}J42cCugn^88d4?WDFV}UbNCi7jQ8gu9^jy|qACdxZ2VbH$YxGez&KPf&+ zO?0$LWpJUdRO{zrKXuejJH!OB2j0e;6i~;|ywD_1E*vecQ=_EfD9GrNl^k+twzk1V z6N5-ih35rxCCPV}0s$5%YO447*oFgsE=)Xu}(PH`ysKAO= zk_+&^BK7D05y0(PZmUV!cQbFXVo&GR2;OYj^H1`D&Ok-3g3Et?G5Ouz8HquwdlPSB*r|$ z93-@g`noK;^%kKWeG!PqFjXP^zp4_!vCSUUMd(F!2uHh3C;(4}mR%8qaEM+1H3Oxv zF9p8O>bT$z-54>kgSR!PbC0y<^!N7)TY-O02Ye2+6ZXylD}=B~X~9QfW%vj5w$`|d z+Ji*R2?8rQMS40}5(FU?XESV;rlyx0m&EMn@6JKgZp48BQ0bwLv;=dBb}!(WHyxt8 z1E9ZjhC;-onA+zh%D>Ac59(=&33D2wSA|ZQuhbA)3^pjg{ouoTdf=Y-W)=VU zrA6%x&F ze;VCCjD9Zw4#eP(PwON#kv=f$c(hcYjLd@A&YmlsnUP!OTtv~JpA{npjqiy0gJ4`4*dF;>yx`l&7@6{~VS8DQd&1>@z)cQ;O0~N&8b5Dsw~Ge#kFTcF}WKF^4%ibG{^y8qppH@t{ACI{$%VBXv zY=0-{jnX?hg>QZ&NLWtMGB2N*}23MJU%%-`^8AytQzid9UQ{Mm;LB2u-gC zxaC(eZ_II6fA->RIG@;;^&UtmX z%zKny-YK2>m$399(~u4pL8H7?(&*)(A8=Fn$s-ghim33XJ6w#Evz7NSqEr)&6%13Q zwc~H8Szl-I8HwGCzn-EEy4XfynHBx(w935coSPo7HWOTif1 zL*i@~4Gm0xO^)_`B(l(h7gRQ^d+g*0kyw$(#&Wc?vF8Yma+?v0Fud6%nT=vTsgS`9 zybA620$hlI@-D&jzDG1*ldM+3)89nB6aEu=^q};9wWWF_QBT5mUwPn@W>ZvIk3iud z5mp-Aogz z0J+2z4t8C5%)skv-AEr!(Dk-bDj(;*{@B(iqqy(27(Ic&x2F5%3O{9@?PHC53ft_* z9WGIFQVH--nf_vDfZg&IP_IC7!2PQE9r9^>iLh*=FxYA21sDVd)P61^_7>iK1I)6J zy5zuA=T!C<jqXd4>*~iB3CWwnHu!nio~5UOVAV zn|nLil&^lj8#xDb+sxJlh7vj#1@=>8sqmFI;Lr(p@4hhX(K~v*IIVUAAqBhjA9&xn zJwQWmf~^I^t%PHF>;9)$a90N0=-?pdT$;o=0smm4^$Ak?6r)%WIjR^|X||*1n1XMkJ-Pe8qOf;fa_-Nv@cdG0gp2 z=~sW!dgz83uJp+%cSo?7Ic9&<=2=E>ct0u}SRRJ0ZKEkNUsS@m?rrxXRD4G>v$8;* zM~Y0>?oO|QL^9}+co8HKAK>-8v3a+Zq{tVB3!^LP2FJ@mw+d+RpwK#j&GzpF)9%*) zp9k|*!P)m|cLZLY2pa)h_33qCFI+6{?WWVV*@9<9FMr0J(V1w*4<<3B}c<@j_>Crx6}RNd=}JblP|#*%7_>+qo^VE-&&X zBZ42d>X4YJV!h1#5RTvv9YvXSmxIWjYRS4D2}R~-@P9(9G1-r$C`&th2+QPuyAyT( zN+VHt_Sm?%hf2Hv68#i#AE3=Fd=%R#ZGP|}92Tay$K1tXtam$P@8UGW^JN4m<3zsLL>4_YP$ zT?kt3LwI4cQ}|`jbSQ>{tB0+6!k(M8bfd4o-y(EvA6gN4OZ^kFwM#P~%N)M=2AFE{ z{C`jPJF`2w*AxBMJrrxfsr_s3_jtD_H1JC%Lga{y?hhZ2qs~Fmz6yJb_!;kOYNfOv z?vM`fcHN3USsQ5(2exb7?h%}zi6R_f#<_l)$2WLG6ml-6_prt@EI>PFFKFF11+U5s z21YX^pw0JO>LW1(9(ipgbCxN6q`8iaVI*~dEyR==`RzG1CF_f4V9^nYej@5-v|73x zkWZE6(p)68HP9NgIJmI1a-Xc9*~H6C>OVHt^|t(J0CHPNiaOetpTLo|S6DZz zXb!Qea=K}#1a7w?e&(3th9D-AbP4B<#jOf*e*RnNp=-dedYjvZCeaDD0LZHNouu3z zoO+RHN?GT5c8%ebSlWnt@XMf|FjWKFv$)L8cym!d< zV#^OYF#3+OB_tC!h&u_Om1BbqlA8zej17*tj$ob_cUg7}<)|MO6DroFFYufKJRFjQ zWnj$uNtTn|cT{7Lo;|3@PwU6;QgF6ZqdUBV_+5>v_JAv-Ai69cfLT#QtPZX;w2v zgn)}X&29U;P1fL62sh)C*~Wv$Y0Pq$3V__{7j)a!d>)5F5Suc$HIFOIS!Gtl`DRCwgUCExNLdFpeKF!&4L4YE2_>_6ISVV|h~V zf6lm_akKdJrK;o}9dVFN<{-lmW}9;)0)XsdDQeMB=XEkRdMS~%!)l&@Iud}f77 z`wWRb16%&VUX z=dkKp#6|O)^-IO6qkM#HD#Xu2kWh-TELdy3gUO4`AITS{1qry zK>FCS0%fMSy5>BCIjqDSYVqSBmcb#R($D=6RLWKB-TwCd*CRZxw*+KQqA$2qO<9Ps zh3AdCEDgP)AW&Eg)*mbTBJboqKyeIt>;XbvADo~M>zfQ~Zuz&A{}o=Paa*4R#qV;N zeQeH-tK2jcu}VHNNc0M>SrocOw=-+ZN)j}D(33GPUk&0O?3<6#umF7=gmisFk~M78 zXr~)q+)}xp!^flhM&B#@(EV}G<~iPC=J~`lk~QDO+qFN6`3i})qQK`ct52Wv#u`UZ zlim=msDLtaX06Rw=otN5{rQMz7L&|h!dy~QW2x(hla`yT2AZxwk2{7X52z(9S0VI$ zGDz^6Z)t{*q{vx@D9xMK!3NayRw-t-QE0>hZMnVu=7Dw8vX1hhuPm;&xvS$CZ;g%6 z7J2_^kKRq@5>G082oRR^2zT0vBTt+XjA5UXWi_B(8n zmIOpE1^-I&fBz)1V<)uFlLMZU*+0_wqC?VF8#EIr{;IPjOS1lIxKk}nyBp%Skz#lS zrb)H4QHfIV-;EwddW~K)4?1$q3LxL0=289bLAD`Tm%Rmt@+a+JO) z4Vj5WXwq%{3-EX;^bl$#4Cd`=bRmsoUU%|QTv-uS8l9IC5gW5o2o6up&p)g{_nvEM zTBWV2mIHz0p(ElC4QaPNskQWF=)T#<%=tD11%YaK?++B~Qm@7lrc<6aod>X=i6YgF ze39u6gdW%3EQUs?E}SF45e}c%l0vXRoT|Gc_hpNiQ8W`njpd!J_0A6~R!5z$x9y6) zX$-2X6R>^>4tEp}lC!X{Y?fqji@V1t33~7EUnzC>nN1&}wfnck&reQdJHv>UoA5U- z133#tfcHSs!>-qjf@El-_*)hLLred9n6(+k^TnJy?Pz{ZmE&wc<{~VF)+;@TV+Ut| zS}q{kK9a+=*#6qLRm`Q5C!88tg;IoGs#i;!Pp5auBt0y^LmmhHXV|a$i7fth@Wz&3 z3^gG3=8JmBl3m$mIK^Ts&t3;Q#)vXC{8U{1A(e^ z2~qIV*NE_MH1SApBh7+@3p?i6_fe-s!mP+N(j=Qud_qbc*8Zh=Xt`nJJ>+yQ9(f{F>8T=MZIk|s{%XD_bjdM zo3t#{+rA}=IdgGj97FIf$vi#vbtL7L+d^SPF3O86KImZ^O&NMc|&Ir3jv~y_Az7kWy{w<gKd}dbRHj2$D9i3PU?DOXpR3@O%4pG%FfP(en^RR+Q2#W{LZTF_ z30Z+|oo?m*FD2|hz63+lb1dOXZAK2|9&XdeO$2&Gu zjBJ#%OgPSd&~1`lreh>Xg^LP`j6-VBBuYoH4Y=I!dzm>f5A@-_?IB?>T4cWh^j5t> z+wvy?xBEgyj=5HaynuT|YEwgam&l&plH+Q!*T@Q$ymDOs?NErXN|(-;F?f7Odtw|U}MJvIb=JOKscPk;ZTMb)5ZW#tx%(L)}Ek7`|4C>^fo z*YV51a;-1Wkw#u`G1fVM~^|wxepdsL$v(w64bKD)@`+ z@pjUl`|&X!NM#F`rX#&C@4D;J9%{cD2Qb_*|E+ZTu^$`U1}3HXu-5m z8{8r)h^ViHEXdVM&@L3z8}_@3!ce}I7<7UxYhBsF3tjAa(TdVSR;3h@fS-x-E;}-A zYOZbdr@Xx2$LX*gJg90(68t6=j44`Cti|7AJCKBVx=AIsGq)CV%fpmiDNFaJR;Mad z&iLCQ-1oND~IeMgaRd2muGpAt$$Q ztA*#bDRHHrV5WQ>8OQXYhD-Y3ho|VB8URb-80$hETWsLxOmzdo8c1h<@bR77%q-{I z9CQiQxr$-kHfp{izeKG<#V*-5=s>&c;0TEzRg^ewPOf4}fPBk-WzwQfOb@TZ$25?A zOF0l7E4be5+`jltUMm2qg7bX}A>;F>c1gi|JMMmvtIL9O1|Z`Q;`_!1k05^j zy8Pc-?i_Bw-z($})PnntRK* zP4{d)e`rflQgigG29tlP%dgb)0izn`n6KF-q2IF8Ks#EurL>ZnBzCz|re8WfpgKw; zd_Rp=u;bbj$q%l#ZKY<-+}<_ON5$JtEB*Lkqy-V7doENkjdP-7v)|;oS-`Z~_e(e; zA8g0DN@m^5`Jk0@DM9(}kGzU#lY`Y?Hd_`uG-7vDYbv9k>bf~DWVUnmn~pj>+SFrnDlfS;r0ct)Uh>-&Zm6{P@T;_w9 zao4)fTyD3XDNL8iBq2o4>=FnjE6!!xRQGe`u+=lLK+A2DIgIhX+HODg5Ra94j4|J2 zvB#avQ}5vy{OV!F*$Obo+7A4{ViFg~J2y*f#JA3^i^APHz)V%(=+Ot8ITr5;DE{-y zj7WEQ$<%~b_z7XCP-LEgyPZFii}J^i4hsJ> z-~3@<%20 zC97U!^`A0bEKHg21arE1)Bl=+l?A`fXw@|C*J|BfR5lF_5x|#@ehqSrVt3uH*k__f zBE6lC`l63w*;b^k`QvMfyU6=RRAI5w9{fF zdBBBklg!%KK($1 zcaI-DhxgYLLg*K}R#*#~Mur6v;dceSOty3&(awFXla zWzPIqEC^k{(Ul9igA~|Q{Vv_V_*BjfIR8piD?!5!ocpau4bJiddLCHx7l0R3=z{tR zBfaY-eBQG?bnHe)=6_e4eD~*_)Oe8WOdbUWO?sQf-*>|tWV^11=(rzlad#BD;KU;j zYQQ`sU$*}XjW(28yRN*mfg;||&lAYJ2{HUaWfQ@v5m zExbs2w68%xgce~@#R}Z7O}J>U!tG=}wsB2Tw063Nu?`jVmu0i!vadZ;vOqo@{hwKL zv(0Prbz0%YT*}m2uOQrNjts!P2tfL124Ht9|0eAt)y+_gky}&K5^Koqf(fMlbXemb z2%8<$8fqCt@khzhYX$L?>!eyVhl5NENKnN6*)L14lSmx>%ZCMXvJBCj2W%Er(L6Lfcc_kf}Hf(uT%5;6$1iLwh$-%Yv44&UVF)8i)OY>zv5$lUcp zl0{mIJmP;KqObd4U}(1z5yfBGhiMTw#_D%Fii9H4tYg!DR8ktbJ{v8&d~#o-f(!tk za3P6`UIXEb$ddZLI4sYg0tkpLb`7H#)RrTnPi5_kL;LKiWvJ~6_alVQ*DaD>OTh0B zhFNix`+6$lgp-ytCiVBJ<>Jp)Rz}ILv!gv(sBG*fNGRHF<)43#c()Q2l?k$_T(?{S zL1nVXI}uRX_SjNJ1S}BA!N83kquNc>UM0)JyN46KL3jT@g{Gvp zj%7pJQ%s^aiyCt=PE3v+;iF|SGq=Hr%%&*97KaJ8UaeB=mOBKEG760pzDUtjvLA%P zXSQ@an~iXurKmDK8$6CXt~u5@lxqmWV%&l%r&10vIn~Ak)x4vI!fZ>T0Dq8-$O}wY zbR7_5hv}@rwIw!pt4?)d+09xthLMgvcrYnUg844&exC~TwrG4gB9@K)=jwiLHUP-c?T$D z3;GHhj(-Ml_CM}gZ_pZLj@TK!>b|rTZUAAzX@g)u)xYII`gX*~ zoTiuFCXJfclh@{9x>!{3Nh`zC+qO=k)%Mg)u)kTWEx2W9&?>D>N_|X!zGryuM>p5l z!JEuHM%0AV^zlE3cfKqP$<(ekTEcdZ}%Kg#K${uXkAPTW%GKh*BOvGqZ^ykI0~FtXNfR3D6GH#Qy}L!juHpU)#G5C zdsfO%I++>Kx%pSvGRa<(oEJ(FI)*iZ{tV6^%P>C~PXrS3XFk-YOp~%)i7c1&;>@z( zEz{=FH?fDXgi(_2E4zh~2$bI47$Y!=#)kZWwrsb8LFD;+?YZrmEJp=e_PX_PwTS^| z!OZtc%OMixTYo<29JJ!d`d`ms+Ms`#lxnfFPA4M89|zPHF8Ufizui4gDkex93~V}49p zKM9EklPZ?@qJ-AT{lXsx@b7B5h+HgS$Xe=KAE+4L@efBxX-@m^G#K3i#eAP`p?lj< z{C)a^FY4<^NplH3N@R|4HWf6Rfv@LxuvMCjO<2M0Zwv6X#jmGCHepTxcq=f!w)xPk z-}^paq<6h-!{;bZDKM`?Z)1DT*~Eanbyf0hqwe-g{^C?1v0nVYClx+p4PIunf?eI@ zo3n(}@}00?T*?fx;quhdXX*MvIDD+SI&W~qUCw#?0r4$WO4~y5KT_jYsMKpjIT1ld z)Ve|tA+xgk8&%NNut4{xu01lmX=AUTFv4sc{EMlRgfO?^uBo1(1Vobc0>^=RcA<5C z3@^Tl`<5y){XlYMADhKsH?K7SrC?!;MU!SiQ&5@(>i2f{jV&oc1N6^fK`CMX#Oyi6 zc4<4l;yN5RE>=t4NgU9zimp?PX-(3E=4|Z>u?dVuh%X_N9=qX!38=(8DGa=dMZcbx zWl)zzP``Xzb#jmlCi4E*DByqr7N5)P>Jydhv-Ia5Qr*1LEB#uQFZSEfen7WOtQBO7 zT=d(jM@}}rGks|Z$NEr4@gHdzx0ZiIqrnfAqlvSYAE^&w2a!!8J%ant(rJk>n@arx zQbS#zV)&4IO|H-8PJi%h;RrQtr1M3lx)(WJoPd0aB!r3q=uaopwJPow=siCjc$ObV z%;}kA)oa~@tgy{2TwPUgu?@KJ_4&loA^t8}PWw1?pn6pfty@{s{5A_rBY~sG@S)nyiAo{lP@Q zqf0Oq^rF9m2p@QP`PP;CkN_S{_-pjc4jd{7J=_&~yL}A2d=wqMQh|a1_dw_|%^Q6| z&%_aoPIpzsP06y`ilBD}n4UZA`8Rb>>fRRr6(pi0`3)tj^VjuOtkMRz z#O{z2d+YOu{PQQ=fJ6r}XXM=Q`7d02l=$~A^1lr!xc$<)#bzzaVX2SC=V@oJ@E0~z z$yx$OvNm20t}6xbr**bYmaVE%p;;*{#I9!wffyYG*(#QFVQX^aS_b4>< z@wkaUaS4kJ+21KPRL}5g=}N4%teDcKEw8Pu4>)b^5oH^%E4Za(@#&3B2eCAVW~cJ? z)p!CM*})c6V=+qI<~I$|x~?=o?IsCZHstm(*EB>sIoPv0Iz;a7<_n7RHZbE}5`3K9 zhBdofi}=`Q5AeR1Bja@3VuB~<3rr6xgfZZg32oXJT_qZO}hm$=pX;_{DyFIIfiKpLLD&o%!0Viq&Hy4gMzt_5VB#>I@`fF^RjR%+k&+;#umv4qW zpGmaD1$$_of@!Xd2VuLjLQqIY&uhmWA>f)YP$XhPcI;qh?rE$5ERQQC_-*h_IB1~l zw9VPNo}z^GKv`9pqY54^`g&_*$kJGx5xnXaCTOMhM=92>AZC$680Y=W-^1?e>z?@; z(gWd}@jtb5Unx$z;0F^!Xt$nLr{q6ge#zF9`^q~jMR*P$upvOT9T5oZ(B@y}D*Z)f z!`B*>9)e%GV^7W>i-5PD=`q`CZy8Kq7xiIM<(W6yE)Bq9rE8f4%dso!ec^Uf3SQ)W zCiDVhy}YK|+~}{G9u289Fp_>kO!+rU)mXV?e*PR^_*pWD>F?A*Bs-uN%9sW?RO7`? z;h(l|oamqW_<`6hdxmoy#;b68K2BPiZP;@vt(htz$5>rS91Q_CMwG{AQ@(DEJsY%M zi5hf1f#KKy{GBsYxZzI3O%6@1%{cdKO|ekTVciz0vOk$0kV1LVkk=#?cNQIkO|WsT z7ye8$ZcC#4r3pA8P-+4m=NPuI_CWU;?Rg-#e^%!*^&OsECTRMjlDcA_b-s8wIK=&1 zTJmuSh_e)}(sZ>3gmw;%?h|hz2Zh|kwPhPvvPXnKkzdwn0)sZehdshU`A47zS%}}N zc8>&w$w5e(V%TH_;~Q{^L*Yw4uB<4~A z6_uZ*jR@aSI!sTj$Yi5{dL0%YG>ATaz%J==JZ+fRI;ettPpAO-pgB4DNSL*gtMzp` zudS}q`D;Q1olq&~Nf@-OpkG-XR4NOahJmSB_#8>k{>m|JSN`3KA|fJfwDfyGQ|lix zFGgNqR0COI(5OHc1P*u-lcK-r1j`LxQ`e*6BYJBa=}gm{36*$fEtt$EM64~GjLWZYIe**%0;svG|CuQV^4BV3#aR|{rgW&U76 zdebwCEB0+$PFOX33T{%uPYLyl_hl|LpY%b56ZTFLwqOo6ep)vU|o+c2}TH7KZ z7GvP^v)A>y=ab3sBBvXX@BnAGcb)NO>p8->;|6^+VRDO%^7bre-j%d7lv23qAg&ai zP#%Sdtv20h5}+Z`rBuEh@XbG9#q+2GQSQ%L^cKP!TNzc)NFzknSTMW#mv~&j-=>tP z2XsDP%@(Rcd_)JIl^YiaRDNuB#Pbyb>Tm0->!oo!39|Nl^A*XzK@~NOucKy3@$#G= z?1EOrrI&@tY$m}@kATu@J1zq!c5 zOy+Ai)Uow;vG2&53Y2U9J1}4rLrX|%HD9Pm(a|2{T&7qBc?mQoIa&ip#rN&Q3 zzRms+B~aTTL^s+`@JE~c^+}7zUsJyBorEnZ7!6H3l=MbcI-A1gj|2uh zqrpVQ^(-K5BRy&ot9ZvN^|D^qbjMOlXws~WhbkP}&&~|@nT7QgBJ|_hC67>cogIPj z+t$TambF`E88Konjf68+CPKCG!4-{Yda^}Q)e1>Kxclr$N&K_T+<8S@j?^ee`ZEg zl3^6MQUKj{YQ z?ZysDIt3;6Xke+A9Ly)-NbG91Se>65x%$@&#`R6dZ~!<48Urji~KB-uC+AYdQ{OS$|CHY8>5X~1HW6UD` zpIDCE_qV0rc#Xom251*vi&ABwp$v1b>X3|-1ihrx(__U_5mHHD-@J@9g zxUn1qaHH`<_Fr&>A*tTKXeagQZ^0v890dCn*Z2}Ffqq+|Z5_6ss}aUP!pgV`Ki~!` zv~y~(2{mKPTV5}}sQxUof3o)dSZlehDVF(=DnYEo8AQUPtCvIcTTOjQuPU|~QmR(L zTD|84w_t8&7W&b!bANgoZ!BDIcDPBY_(oyDKvivaRHM13v6S(JcUHVqSG?bkD6K&sijhb%J*tTsu>Dabyc5K_WZ6_T&J5D-A$4STT*xWbodC&Kq z`)@!0_84oes##TY&dMj^aSDoT-y)=*k8-@R8piyTd?%U6*ZiRyL^8%a8U49au?o&& zXaZy|*!ei-R*Ma|=MG!~M|W5b14o>%@}MW%(nQ#H*qbnztA4QGd9tTPe*QPa`%6?t zOP$AMlc)dcqQBv$W$*SKf~Dida=DUmYGcD8RYICbs?Tnf^*8X(S<~Tj6dQg|9-I64 z!3tj|BO!46)cJItbbbBr@jW(^+jwAosU|Q94WfEXo~y%iq_?);ev(d?nq#5AQgN2(Q5VJbp%36d<9iaz8zLx0@(&I+@ zcbf(wmJBIl)y1a7+{o-v!)fVFTiQCOi)+)e>gnCr)a|IEqQDEK9(`@aMDJyay<`(H zRG&n3)?@dx+HAFBvVVPsM-Y+BYlR$hM07l;0f z<9+#(5ZcERr#VNeUdXrmG%Fn8a=hP{IoeJf*?8_E2jqMdWiBgWfGC=~&;uABLKU;|;@1_|TWe^h>uPv|IvqRfu5^bsB+UDT^|dGCYF2 zuc&k#+k7FY^)D}VCn9l2;bk_l7#&R6S#>7-1G~k0AYhe05uH`8e1#S&O6uCZYb6u| zU}VPp+~Uw^$2H&~{FldpkMW4O8(y9t-1hx=OP8*Gj_pGA>g|ZNctG!z>G!1Xcv$kE z^FcnnFI0%6(pW)IaZll#CE=m7B(8#Dm=H8GK=W5uxx(D|kEp^QqhTfAmgvtET3 zJz1Usj%kxy(Ony2KnhwEh9e<9AV6njv2NFutfhtr2W z6IlA`clzOSI0uw_wa3xC*XINb2-M9Q3 zz(;K19qW?J1KEe72tUe0C0^l>3X7fkt&v`qgk(NUVw{dQCX>z>67dGK1^!qp&2Tq;!IgZSoKMM zlr5yrCNURV^zCf}z|lYz8ItJGkurg?j0*0rYOZ<{Xz#RRO^eqmt0i0+aF6Gvd%j#w9To)26E!eNAI zzz39rzhhz$1d8l>Rj#$CclhA-+%-SnBVMdHad)JEQZWP%_EwV6#;Y()N z2X0t#C>&g8^!bt}N^Zo^wNJowurYflp$5u#OgtCw>|9mweOD?wfi6F!!!C<$og~@F z5Z@cp6CtCHKw3N5hT1hY8+}1^*|1n`7@&F&F0r>@4Z<>&XeDrYT<4_+rnl*YU zhk|G=ZbjED2eK;rzFSINJqA$&zm5`s4fT#tH}zFXvpsHJ^)EAzlDu3PXC`QGyTZSt zpNJKLM#TSfB!82ORH+3JX(N`6dNcdWg^Q9QzLx8P?_;ebod)HracV5d8OxCnd=87* zNFX)gwMENGkI5sf-V=(VG;p%3M$AaMcn;Ld(PG?&KL;c7^~P(?7PTH8Ixjn*negm1FAAge^BW_AF#y%M`s6revIF> zjsas{F~@*2P9B&Uj&2{3t*nepePxd!oB4DBT0fuB4Lou{qW_zA$dpa%#z<5Xx6E2V z8Hb?|Nv7EmuWok%<`g;>U>Mn0Stgi2#93qdW+&O`1R!F9IF+Mw*qMJGVZw!KLQ)h@ zHdH`Qn*RmUqnPcqH`kmg`}HlD8{?oWtO=rG0ePiF&y~Q6=ueJ}{p6D6p=`j7 zH4nY#HrkWhZe6tLzLpK$MDU(Qf9=P}?#&d}O!@|OCFQF`D}&YK7qdwZsGG)9v)RBJ z-zR|K9c9AR0%Bp-buz$M)86!-P(WaB33tbe$UGom#v4wxu z!S_#GE3HD0>p!_a`YFmS$$>_8%SmobpS~JHI!7yll3TrQb#--#feUn^$R@_zA2jXX z(C!}w;V!CqW@Xr>S2IHGDc#q0S;^w6LxC}i{vU#6cQ)EZg7OJ@-Ru>44 z^=_%Emgn*8RyIEx1f?MB8N?JD`gKIFo5nrV&zr&QE9kga-B)232cfp5- z#Q*4HO+QYfAhk;Hbnt?uUuB4_DwCvy#7;(X_6lb&-jvkIBHBsM_NccXxXP;CyKQQ+ z5YUO~pSF2hj=y;#BvhD!ThMw%-l?DALH^Y(3}1j($=O9nkEzlYY;85~M?80WLcXYw z$6`a2bXDiU{^>?@{Zro7zjZ|Um3(N+v{~d^W&HL3{Jb==bpqoy1b?kA_pP?!aJfR4V#e*Er{Xoy( zp7^QAK0h6!frr=@eD71zz)XQlp!$l6tP%nbNPu)YX?&n1Le-m4B1r21APQsCA8o3F zwSnVHEI{9n1f1a1G4SJL_NDNydMt3l>g=WQEspA%O4dogG9vHa#AUgO9R|%3-5zy! z$p1^fJ2$i7rqII5t^fW(t~;sIRaI$Y-6{~->=Hux3xE=}$<)SahYRC{dK3%emKV*Z zS84v*BZ&0#^wDFkYVd&|j4vO|751**kBQ-@JG1lVhO<;nz=sPgw~k%-L+XEZ3pKe; zGuXitgi<=aud2t95U*&2!48M_U_zZF5h1J`&baq_lv9=RR1^ z&sl)A@i}ryO;6jS9+=u7YWEHzLL7To2-wp@l83tyEcN^wFb^E^EJ?^)IdRZML4H?R zcs1?B2uPY*lk9f;@g9hfIL2U$_02r{7Zx?MtfTc^Hl8Ca1+#)qm0OTIjX$Y?qT?h? zzG3hot@B2KD|rmN^?4obPm&$wcWKW^Bw5)KNCim^yN?CxmzUJObk<-e|4c_(QMvUm zW~^|L^3>7OqxTA8Id$k(Ubop_+f2Pwl?c0`1OEf}pf8c0tJO0V^QSw$5h>=b0*VlkjvKwB zrw1NNvmsRy?`hK*u-L8=KI0y)1O5HqxnG~ZW*~E{f%CZyJ4H(TF2!IZygS{SK+b|k zF`X?qA-&u-;e@Hh@9&rpHU=$w-jLMzFQXH1{HrKyz*6ATE(}$#$ofbf(aZ0+^L(74rwy68jEqkMb z7AvC)*OS==Q$b=}V7dTdV`wfY<>Cvos*?XvA8<)v>1w5iBTnf<1~g&ha2}0+V+7_^ZNvi{os^s(95iJ#w>Qet zgWwN;R0W3E#2)3#ih&KL)EI~dsQEd7vt>!PC>DJ>4byy6ZFck!=BS9{GIdzT3}QP* zr1;ko$2K}Mw!NOyR36L(q{w_-lbKZBr$MYkFc5P%huU;0Tl^2eWHega-|li8ROWV`L_z( zJO4moCwr+Qmb}nif-t~b8w!w#c!Z&m?0$2u>Q6EE-t^}2`Ff1r0&1kDbEd86H`s7r zYuLEI9V4ZuHcB;#e~DB<2$rQs3NDDhCsZ)v{}<@X|3oRtWo_TYYA?&B&I?>D8elB9 zw*;lRQagqs{=NOZRts0X1gz8YF75g_j(x|azmLS^*w?v|E?Qv7 zxda&KA2RC@3C2UmwZaFS$=58?C?KgI$cne*%Q1aT({1CJDs_w zC}8Kp-7g=Fd%$06Lz2uP>X1( zQ1^2%4V!5g%NPQ+c7mF@vQ*EU2kIou>J%^$GAI5E>HcR3MF`KynKxYu%(;r~yg0Ztrmmmk2rb5Vl~^fS zcM4jAERBk@y*B2wAUzJr?FKiEq-y6QOGg&;SPKbsKXpDiCdW$k`Q*3kJCNgwHNaA* zM72x$j0zHca?1J9w*4NvWW$(CoYH<11#Lc&#$IZn`K592s!p*lWofku2!Cr@l>{C9 zC8LtMaxE4O$dXd^;Y?X^1Y?f6%O=uARFsgAm=(Bi570H~mX!jaCSt z`G?MGp0G5_OX6J=oW(tZp+ogUGiRai6n||infVesr31h0xdb?@T^y`=2Gotf(R^2* zv~ps810pa3DAuvZYeohC)T^A47O02$t;`f{>tnP5s|ExQ;WY1N>d5~8l(f@}OOHg?L@?CKut~ z2{W>xbgRx0-Kr?M-eG?x`z8?kV}6M^>XfmF1ece2RW}U8(SzSeLeG&$Uc$r2XFW`L zg;y%;yO9Qz$OK0e?RLQy7IiYYHP7rg1ES~+4DLkIWlrKGj+~C~k)~n{?(UT#5rEGp^y`kD!9^W52(X{Ps3 z)U<^1(gjuG`HvGeH7V}ckbPs)8_jV>&Z+w9$Z{BJoMi39YM@=2+zU|69j>Y?KH{gW z5F70o0|+&Esxgi3)emIyvw9-uSwWQ-&-vm7m-SdF28?izYnOo3Z*(akfychEtpGds z!InST7@T&5@Ch3nF@7lOL1DQzx`MLaWVABL=M0#`wkW1qLJSK^uhiTwcWh6AcXu(I zs5`*Nia0k#WfbzXIk?FNm1AL(0sWa1ex?w4w`|B{3Rd=L3yW)sTO6{xRX->#52ffG z93sBn#B&jd-_tIgq8#wy1K%|-+0E2o_X*Dzgb6Wg0*oPo*qGf*HnNayz_)A5C@Ynp zJaz!lg=bTb97ItN{K;&ev)LFT_g`sz{9Lqig>RJrSw8ved9ii`zoaOiycjm@Dfnsu zj|euCe$wUTC5!Z8^X(1-;58#nmdjE(|7ekfsUiJB#Pp?&gK7X&D=dB(lN{Z!bG>aqT)wRyvIMS?U zik&9{xA4FdLWVJbT!==OQ`X`-x#ZV>F~uyhSD|eKdo+fMk} zvQu0V*28O=P1kE*7_W0d%r}>*xqLUAWO-;>GEQ+kM#8|vhG;BeT zL9sS;$fwah&%jS5zO*bhI@Ea!VZY%(C&LzH*}NkxedPv?2?U$b=Q1f$yF-_>MjC2?RexBaw+KtP1@zi2NT^Uh@Ni*RShVg)(|S zXpn?Nm?9^;pGMq2rrDLKi^4Q zzLSMmj)kvM*rfjfz59Fl4_o*=pys=pou*~bPIfZAZ!iNt5vDb{=EPqXoM=or7bfc^> zT{WYilR(co=!!<}TSG!LY?a*imz;w{)Q`7|-Qa&u1(d!LYC$u=g=$gP9jla53J5FQ zmW()llPMS^p3VdQT!q{gS}wU&JIaTWX{R>36%8S1X^Dr5O;PkXU?q|zf!JH31{Xk{ zv01Qe_$ja#@0UQQ7qd!Q;I~9>Q+nPPyg1_cYvAn~mfH-2c@4A+ znF2&0yH-7$=D_GBgd}lU7QTui6%FY$B}T5VJ|PAumOOq5XxVq7N9x)$2v#^P77#KW z+QBJ5!RJaYBfIQK|6(p}s@$W5a=NnsAr|w2HHab!&rB?dEqeGhJ`gIUABqx7PtRlK zDpGOU%}h6jjcnl56#z1qK6q|8;=nmo6r*g|r5r$3b)p<<7$DOL#TP;;7^fHgD~mqR z1XKhk(QQ;59Y-`_ zC&YEFu0gY^6{uD^+gj)XU2FZ2YuYnDTFm4>YrNHyrB}w=LF}n zi0B=56anurT4mi^3J%5n$LVAOh0w#pwEucyo$@R6`ih<6hI#Gu68$j8jFgHg!Htc5 zU7eTLg0GEm(sr3vIwAVIBS4>|6vpZLrZ3ZR&7mg?6w!g=GU z9M)j>?0tFY$A2G^cKsMl2GQ0-afo&z!->reIwJ`^&_Vt3gIioC801J)3hl|1LPgu9 zIXJMvFwvKBN7Hni7QopnUW3^>Mu`oQ>Kw(Bv7FtfYYJ!0`K%DF+Eiw?p+}G^<4J&n z6^`B!Bs>}Kfk*x`6$}m?xBI(DoWS@nat9b_1})iH%YO~HMn3(w-tre%k?T;h=>W(_ zBK{#t{J{rwe7hIA`Ls!c1(%Q=Z}Z;R+S-rBW~TU?{EM-;_sJ|87nm6}gaw0bB(cPd zM4sYN5}xHyo(M`|Rna|1(fCaJKjj-y(ylZS)F1~*JCyDL*KwrHu??)l+`g=tB{ag2 zIscF&C%k?7HG*l;Ucn;B%22?;V8WvvZ|EZ7y!*qcic6*cz1<4CD7|f)1&DcWzoe}+ zqH^0W*Y8aXncgexnty7f5;FMA3prJ6Z#MiG9CJ9eEGp?3@eALCQ>q)A<1F&yRNCKu zfaAjR6Y(Z{so#X5!B8QB)DHUoG}@r*VjZ@vg&xu= zDrUi9MKT0muj(N4H{+14WyX{6D)|(%{)e&4GSOH5xic}mbvi(_kM^f|Agpat6@T;r z&qXV$yEb06f7&KD?_EvIXq*I@%o=-H0~J3v*X?k^WMgaXVH2mQAm%I4p6I+J>0krc zl@YB0Txxc-zpr@2}a_U zgU0cAJX9eVhZQcb^EwrA#%g0M^lq{l<6Mo{rvqY^Sn%qSlmD7vwWS-aZdX(WBzdAD zZ+9UxDOWPsrL*alz^E10`01zR=My@!yI?~r?}uX>O-I1Lrju*WzrAd?~SZ+sKFNiPuVY?WYYzxcE2bc{R5Ewp|qyl*z1xUeS{X>EHE1cpW{bdMl+ z(HlJ_c^uoVR;oDZj@=JchTs0V#YtaYMdJ|ObSB;OFpviMIhdb}yuDHkEhqW+7ZU{$ z&pN)ZYK{ZyxF72Y42Xv5pTLtn0C{901vj)L&7Zp9@7LG=;J10{SRzI2FaCO$6yHe2 z9G#jcTdSu06l@n)E&&2MCrnF{TCkAVtpFxO(bzm;VHc-nJ{CBi81qYeZiAw_kzT%4 z$-4W=^}i!k8oD%vVT3fQ*ne6k;5$Owmwv}6^7X2)EltzX-11(mZIl`u zuDUGo>qf*L+aGXlK+blWpw;_v1mu*LaJ3CYVF{ahSIo>P2s-bF^~@C{67yv|kyN%U z$+D1U{07zn%X~QZ%7*3k8YUTV{2&9La!tikjVvCrctvi4tFOeK_{#mv>yi~)9Zy}J zff?8;eX59y;{9+zA$z(<#uKPkhTuFR>h&+*?yooJ7WbUvXB)PS<>1grvb_b~y|dDg z3W#nsJ@x2uTj%&|Rzsbj{tEKMS7pWPSp3qJKs}N${LexKAa;snL>A)kOJPv9=|8M^ z{6+!s0qnCtnJsW5DK0dl5;QLC7;6)^AfB<J-OclOQJ+zD$n1!|ILxY*DnRbb{GcbriJG8Os-;1waO)kQW@&rGX66I?-Gc!3W=m4N zw^{SRGeS|vKs9M=XT+sZpk3%O_e@R;C6&?77ai_=NKvyvyozch?Aum3_11Dk5Dhqn z?&6T`$=XplIU6-*f90<_UveTdqWP<;y}~WiE*ngjT7v`vfk|*-5gkv2R3~*jEp2s` zP}oP+<^|6k zZ)>B+z>ud(8EM!%D$lri*hb?fYq!+MC;arYUapB_vrs$1fDf;vnNZ9Rt9GulO|BNZ zuR#$mz@-A|?@{Lpc;GtkjAOROqcZMS%6lZ?INU*j`(GmATw_kH0gy4qH-m|p265?c zLmnd~{;{t{{?UgVXBMUNXCPWuG6wasl&wZo6zmmJH-af@7^VNG`=$lQ-6qFN`=;X( zs?h7U$BaW#INJ7)5Is78>7aN@9iqJj%aDWbSj! zY=>wJu~hCz6ch&l2o#~mk|DPMIBsG1DGONZmTl+p5+3QvV`k~bD8YVsII`YFZqn5p zW_MLbkuozH!e0 zmj80;5~u>9tm0^Y=&+%|drC#m^DjQbEZdQLcVRFyA=&TfxjN>|u?}3A8BfvgH~rk< zBu*No^(G)zPQc}Mcl<37++6OZ9)cy~&|S+ykaVia=e^Dk@d_Y-TIVlZ3cNLt;ac(q zf-Wry@k|`&La%>#6dwS*qF>PBKvxF1YT;WIQ(D&PKrLikhNcTouE8r!&V7j{ej1l- z0`I+tzA`H9I6dD2_3=x*Ak{Xg)S5>rwM&kQaVn{Y3B!=393%Qru9l5LFcQlNP8%*} z5Cz4Egq{ZhGgm=V#2@g13Hx}GNG6_Qx?jBUtyT%rEhm>VIcb0(+!^>&ac*uC@mna6d7V){#!__9<9G zHm7J}J9n9D>Y&A37IK1b7*aMuoHN2p|F$$WiR9wrSLaa=b2=ByBEk)?%PoACXZ;E2?R#%&v0RzoK63ejLg1u**Byj&WUgwR(-t z#2Yfh`jqcYtlOh4{4VU0#$V|;J#IC+0mb0#3wdvm{R#aa(E3B9hkBR(i}eB6tRM#^ zqQcomd<=wCO z1RVZgOc=PXuO$Hymx1SFE36|C`!J!icVAgZmH(lFrBZ7N7P1GpnXVjuc%=3?z47_M z)ZO|uGcG9kyc1X`DevyIR2=?(?>%FBX+B2SxcAdGGukjbepxEdk?Ci=g7bv)W8w~g z+cHi-%%?h_Y7dwm59IiL@~ymr`=5Eb#LH#$!g(cJnqVz9=n!+Mmjs_)$hQy*+K!4Y zL$MtM)g1cU@}Z;_G(`kK7JSwttP?^{;M=5osa)=3tq6fH{CR!v`6SR^(y_u0t&CxxMwqN_3|SBw9-Uu7R-kFFJR!bWT+uvi-D$5U z0+EBiQ2Q&3;uV#Z4eeM(tAv3?p zS=bl42zYCTEW^ln_8jxgw;*f&>B;raF8yuHC-FV#y8cv3n%p`NSQ(4`ISE6ZtHith zk(}LoIWv@)Z_XPSeRd<&ZV@mQw_1>lM*;(j9Vw1AE=;5JXRY2?i?i$qdQXekmxD^K z=aX1awFX+7HF*sNTbAWcvp%G1Foor7+_uhp{YB~3=k%t_lC^YAe|WvD|HyCif;p?s zW$|Qxxv;(BZ@?7S=f*I!HmP>HQ803SW_ISzEbUe&Y7I>$&FxP zN@-t>pRMoT5}Lx($;JQjCbi-`JZ8&J;^WC5&Pz<&d)#lZ2VIwb+29BW{4(8=hVWEZ z9hKJyRbI$SP9;-P7mX{%i#I)K-GvGi{8#DW5z_)E_!vdB(w?*)I~?~K>pFDPrYckV z#VC>2#Wha~8}e2i_d3=wf5)Ba{fuF%K%7}(DzN4^?MbCJMpZ~P$D|x`1|qa#EJhwv z1=RzyBc?n=IV=j2hVwV&He;@eA)fwF4}6Ua`dZt_bpII4xg8we!C)BbBbH3LXYR4S zGP;3;b8z6h1Q6&EY;JFt;NJ4$u5Ww~_0ASI{?UJ&1eCzW?0_>2dcX?1;Q+L?iMhQ@ z*tc>9GUoffCfW!Bs-};#%1N!??ZKAp0G>+lX+miZQ8&%FV0YBSi-HUseC!j)?DuG1 z(iSv_^3E$_f?LVDE@^eXRm8MT(dRv!$?*|IJNgFkxi$vr6Xoj_|)z8(W_QGI@Zp-E>l^^0G7%^-blkVAuA-10?^ zm`&<_z)%l6CAc>Yy(FHCugCxL*ykg|_&pqU83*J)7vlX|g24EWm;Z<0avGxoD@{8qgqB`QF@Wsep$bm=6K{BnD+RaYS2Jole!tt< zBFh1{65RR5n{G_$F_R#+dkI}(m3yrG$v4maLuCcWHBVHBd5O;c;dP7A(O}IbyCmjO zDjW;ZO9c=|r6DOma08XmMweh`<=32FnEJaVWlXuq=L+ey?UkaR?{y$D%4p2sEGH>E z$*zO2?K12J(fv3_&(t&({VS z+8aBItzaoKl1rYAfyQZX@@QwNzQGR=wnA&8g8mRULAiwnC^P zvIp{XGJ>ch_+!3>B#OEV4fgMSZmEC`b9ByG`TB1D=8vudz0eVwY!ijmRLt})52$40 z>8gz?uEC;NEAml|B%`$(o3ma?#w+I!z2Rgt?qO`TAw7r;-rZ!Mi^u=IV2M80x0*@b%Vn zwJ+2S4Dfkakm6+Szii)BbAy)dWT)QR`K;vnST5mJgi6k(6SO~_*wLMkZMwY`@)M{T zJmT=GBA}w1rTZCzfH!NI0TBCJ5#`dgJbphc+r1*5nf>3!bGK=0OX|XhSfoRV7P|i( zH~*Sxx?BvP77PWims9OxsRMMT$dJN3p1&5um`#M1HeKgTo)_0sy_KW?-@ku%S6BK8 z#C)^k3B;M4+~kR}WDrnQLA*X(s5C<=&$VvKnggX?ihGclit4KRFRxcjLihjJIX*1y zU0yxS?qg##FZ5Uiho8;xyUr?>RHu(X{nPLjOeEayI`}W-?rpy}#GT%wETpb{x*S-4 zvcQ9}tJAf9y;a$eq!$2pA;(0 zHB$Y03G^ok+TB4mt5m)$KWG&5rDXA5cZkv&xbVe0VTn9MB;XVGVUKTn+igikhZO$X zOP^z+91?xrpbEXXi&%BLohL>c2IQQcGCsHp0Y%=1 zL6dlVuNddqr#wFF{)Rf;_B zsU4CK)NVJW$LyBxKNhLa^K8qW$EHRRk2%n ze&JjA@D39mV||BD(QU4HTr(J~+q`$zx#_c?l+e0A1l|E2A8};pF04>t8jF zoy49F;vR_r6fwL{qnUmTXx*$3)bq&29$guh`L{6@tGc1~x<63l@8PJKE~Wzz{9&kH zCKKXYaUap>)Oo$gpD7SnND%NEF01<-Q4~MqgU+ZzQ)-98GFfOavMiSqUA9QKqHUGD z*8R*u6!Pr)k2o7|0h$41%0UrNj)(SuX{xc(G3K3%7mRt z^^@i?_?R%YUZenbzG^{alZ+@u90T9^PJuU9o~e3-ds^E1KHf0*+)y=0gsAMaYfzsWU>+0@q6D#crKWES65*0QaSgJNx`#Z zO6kAQ?KEcLZ0Wi3yMfAEt^IqJjKtsN?9V7CAXAT9y-Td@vBg&skKh)d|g zuuMUnDII#CWTP_CJ9u{1+miW|I}aJ@@L*N{V7V53)lh2HAW*;_0nTD;d>YLvTzsF> z95j8mvmy;dLZ*ZJ1&H+(-O}8rJWTSZve3j$tD3PlfG{N0h{*S9>qo)64p;F-V^6R{ z_p4>M+bvms=M}Hd+gau5x3N*CZDUu4Qof+ZwTZn3*@cR^#x@pK=x(Hpq`10vOIvc? zE*yci_L8XorNTwSPqi_!)Cr|p{Vb*QevIFvPiT1`7W6)3xhk^pM6lPRLrA02X%hCe zFaabLrti9Rco>oK3!0eGvZWZ4bTj_HPle!v^xAk2e*Wjh;2z%TecUs4^o9}zewewn zshO08fFj#h!zgyG-;aU7gn3zjl*EZYx+svsyvbSDhwBBXhGwc3;Ny?OL_*{6p=m=O zwa(3B{m6cY`!?zS=tOqe??(3M5k^z$aVCn6=RxoU(GN2Ud)tZIPYw~ArKBl>mTrOvEmN*NdR6{4K`v|*0{>_}v1 z?}jr0Bn(i&Fp?~q{3vIL*@`p7;0HmhROsK&bP2Af7h2MOanI}XuZn=*DF|@V1Bev- zx=mbaDwR45KPf!^ z?Sp>qQ@*lr@G5Xo7_>?$NW{jnM``dO%A_80jjUOzqBiNbI|^?y{F6{iBQrp6hlgw5 zLI{M_?%lvNqK?H(>U>=B1kiy*ubi;EwB5J>trI8j7{6Tp!c{n|O|d|yHh@r*R^JR| zz{8YDYIeY?j-fx^kb(VGHFBG}3zdHm4n=6rUghTMz5c$M5eYxm|BbSNL7|zmf{o)* zbu*gcqz|(uTHm0}ZM)BrA~AcMz~(vaJ$yhQnPM^a2j?3-@vjiGm{MfO5oFhh4azJ(X4u)QzNX5f`3k zl~+F$k^4F&1NW5jN@qx`kp-NTq3x6$G`44-6jN4_=v5oK=4mCzfII|6d|3I2LBZ~l zxG&N>!U#Af7g+44eu;-#lcp)NC%M+d^Z&P6N&9}9+-C`Ve=iERuLYhzDEe}w%d{y; zrx5((He$@6d>oEK0YwlL4tmNciSj#jn!9LkbKIzc^|Q#JQ_@hW8hBHWkH!d54u@nMk@l9wP$0g zh9YDj9*rT{HB)yU{W7b0IhP>Ddzc_6mT6uGMR&M>DqwU@SA`7eI_c!BM6K0tqUSgHB4dTQIg$yJf#eHj8XSjvB9_%~xOU7sGmKp_Il4h?X+W*bwIe~=N-X{wBC>IC_ zEz$op<01pc89ZUuFN$}X;0V7ERP!!!xXT`21i_kg))@za3D>?6v>N$K;TEQhJEAwL zRAQ}PBV60W4S0T!8~(2}P%Eu&@uJ?clx8+O`C{^!Av* z@>L#+V-_wnet;{2!*0l$!ABycrI|vNDgT6jAw`LAHNB8j2wRADt{MYb;3FxI|J6=h zfMZY;S_V^%&SlgkPzKIfa3&>M*hH13>=*uU@RMS-$o$@6b?Q|w3?SY->$mGQS(UvU zECvP~Q*hg$y__Z|9|L->EVD59BR=U=WH;xlaYNekLvg3;GHDv_g)qRPc|*fKp~fAd zND{NQEwzrQO7W#Yf@_aEpFMaPbf;VSf!--ZcDj-U#eBPycX+pSwI!V7_T(d?QiO$eNShILI{I3rrhE+UUgK4ia3mLQ z#&-oQslA;=6#2TyAhg7sGN*hbk@e75;y3II5&q$+;Y9v_7Df!VL%K9uylEG+conxU zu@Cqbz6|s><`&<^xgd|GlO~Tj2+iKy53BBTe35tdLL3Y99(*6(&x>3=96_jXnG z*>=(C$XnmqNUqfGPgwnvxpTLTKD5eUy)3!!3oI(kQRY zP*crs~+? z0&oOgi9Ku*cXiK=c;5^nFLe09J8Ztp)Z(#xUGX6=IPyCc)bWo#?N_DLry#9cKyDV9 z7(YvNkwqdA?t2DY@SUx2_Xaz5?m_Vee(?+4bj>aF6}}=A3i|U7qd@pm+$WE?m=8AV zx-B(doG;N%ov}oZ0FZ;ONPaC!vyOdgX zOn3&m>6JTC?3!3wrON$FOTNMfy;|wb(g!@9ufz(4UEMw^CskW$ zI~RXrzF>3sEb;@qxb@@2=uIz@?N(FFs7q^#1biS7ooJGyEvbF718XDbZEcx5j z{!8_E!Phst!i745^|5Na&d^-pVl1CnsS{F7hhLhNRx$=l<|g~~Z<+D7zGJ;;Yph-BH;aOHBo;NirOZCvi@`*g3wdJ32Fn%xwA{yZG$8B2je&OO2g^OJz zY-o{ub9jLa@)tjjPX5^dd>mhTUbb9YdwPby*MN$JnBC7S!J?~q=Rwo__R5x;+sB@_ zPdjYz*)C=l_$vRCz|&v_`lH5JV`ne#qIL6E3DAj>l?nJHl-npv~?w}omowAlcaC_?DA0BA#_ne zHYt^XO}*T7mn`7Ptlok-xy+%lZ3 zG*r9!q1xyZ10)6=q<#`2+one&U@rnJjwkSn-~aZO8EIhl@laEifY&YR?|VPsI|SZ< zK(~S+{eYaxHB@QsRAvW6QUIc2%wix#% zE7CW_m31-16SYk?{af#UzM~ByczJZ7^BJO~*!wkiV&vrvV&HMw*66SBqa7VIi6Dce ztZDl&BPbkaVw>r)oVwsf4{NxHcoC+(mk{XMp0`$3&=A}$KHbIZ2{({{qB*!THi@k( zQ4j+|p|$ES-@`L)`rSKW|Bq6QY6JRkHf2CtOumpc3av!>qhrn==pkJzR&&pfbE=7$1^}%p`ac@@LO5)FVBoVb~nbXr0qtR zb{7Yj-w8RSYHtzED~VH38QySRHfNkq%$G4o>}_KKDt}T@EvGwjM62GJ84rHtiQ_h} zvG9KFIDNMso@kX{(0m_|=#bIZ|$Si-aDc6~>W>AX5&ctSIe|;I}kM(*1tJwB+H}?AXx#1=6 zpMts5mE171`D9TKZ*#M_zb=UVxl)yJbeCypq{!tdAOCx=Q4#`*C+qNcQP4IK2p z>W%!vgdt5bJ4D6cPU9^D&6_GjvjmFzaf(gkN}{g)#6E2??M3w}oVM~pJQzG;hA>fW zfU0p2$ZLT4NX*77TLZonxj6U>1_VD))HAi+hw@9ApS`aeKyb@DqF5 z`ue)j2m^!Y3a89#JU`96(|&nYp-6?Qx*f!xVq21}P!Hf$)rl5_mZg z2+Fa558!DZY`?WRVEh3_Ca~#q(zg4sdw(kLg*Rcskl)ynglx61Gb|6?NdG3TqRYEo z|25w%%CnJ&HiX*R=2W6(S+8N9Hus04&OGuwQI9o<9-oDn)lj04r8=OxUt4K*IDx;< z8)K_H|Fa~02o8-;X|OiSk)E=yESvi_P8d@9oLDun3Gs!hH}D#b;D*nJL)~dxT`-3) z;8*VLSpKtJKO=c-y3bW_`sJr;z<7iUJ(aQKH{2rEI;7Ie)Kxe5T{If95za0E4kf3m zYLbeOQx4$!-iU9|frEz5dOlx2?VBXOO{}ptqY$e<$E{qh1w6=@wEx6=<Y_biTf&P!I|vQ%$8ij16&XIFeKU5}PFtP%+2IgJp%e5$%}vJ=E`d zVt-;g&x(}H9V7Jko4E!6N9Nbm4KsTA;gg^m?%84PH^WLvB6sUGK!s2fSz%u0;soEW zuVeqxig2SAH=y>0;E@-mzSldF-xomn{L3?En^9)!NL*ah&^hnJM=rV>ggisMM+GSRCP+kkjSfm)=Q{#ac3;8{y#zz5~P;d${3T zu}s5qU}zA&7k_9^Y2RN|Z4*JgXhH8^H#?O4bdOJOUB%PuaGWh$;LP!X>IsJ8BKRcB z2=cGJADt6#0(jF4suELJ9?VyTsDVJ1;jviW%+N!JHL*S`?Y% zGq+)~+Vl>8OfLM;RDDKiqETt(1^dXIJwc)vxs->%KBMY-^YJ^v<9HXc zu$KgS;WP~v8cLVR>llcP8wlaspZjeorJ%6oebzodTU`I-dv0O43qO4|Q>u3nAJp)mIS(EKIfeRJnYapR(QBPfmd<+}dx zk+6sgoU^4dIl<+KsJy8YZ3;x}+c=xG?}!A}ZvC-qlNXEUGS9eq+}23|WB{X3kz~Hr z@QA@Ff5L$Xl|c4%)zxvI$`|w#kwLGAj^wF8F=)M4BbfYU&9o;9`!SZ_N+1}ttq0f7 z6_Vbq!Vu_>r^O*9y%nwdyY}d`moVF^oBU!QCRwri?F4zYy@+TcnE-@|s?m zCn7jA0JeDI=o(sB!Ab&8i>id7^I#J-qt*j0l)O_ ze*@<;QC^Ml#@rr4ax*i+d`9R0#H!5CMALQHyCCjhac%INT%?efKd7+sMF3dvP9|a< za5E=~;n$-hymb0(*J@ouPZx=}rf`sRd+1O~f#tdR>i)g170MQjeclUI(ORV%|x3n6{+tH*$5&> zF)ttum)FKlOWlt49$kLml?efjiQrgA*?;n-ev_06IOn zg+4=a0IhgGf}AtA&buX{kvD)4J}EPkJDj%*PcMF2`ho@Y=Pa9ftH#DyjH{OdQ32=A z^>yaotLgdME=PHyR1g#Osp|6bAjWUHQm$kF@7!kZLu1I;X3eU#`CIlbh_!#@<91ck$We*hNx2aRSUa+C)AVV!Uua=Zac6(sQp*-%&9zhMtcR3DgX`K*)0JHsE%hszIw1kOUeaJ`> zbm+Z@JhSi5SXxA*x5%jD7uNpH!5{k~DBUFUyU(>_smS&AR=Rn$^~#p=q+ac0R7HBp zR{@A(-YF+1AVjP>TcXMAS~^?1#Zp&^t*wk{vDPeD>ZfcHWfR`6ci3LC`c=)YOn{{& z*3Grogp(CchZNOm-|(Xt*+g}NJe}1`|2=D1B4Q`%F0_9~Hv6c`pSu>(?7y1q*H=cP zFZ&8MHtsIVOO;Z?t4%-1=~#F&A`AoybFWckuc?|_c(f`+QEy?i!%MCg*c~}-&ZY>> zkUnC=wF6;ItTgxVH+0@x=fw7UQnC8l5&X05W46>hhh4q-jW-1Z<$LKAmy#=<5zxKv zc03sSs*`h4Mll#q%dH)hZRt~+w!r4D^=_gOv_r#2RJNJKGq6C2VOTJz+t;<)bk9*n ziAur;qEfV-n>Tv3$ASQtSFdMRx9ePgnS;?agbFnwU}2miwox#w#~P0m^2_qS2By8J zmsPf&`ktD=DeC%npk8N*Ka@Xjh~I83Q$Vi|+HYmGNk~%?6BjOh@nf}U#}cuIN-r~| zNfS7<5aFq8gM7kYG&}SUR=3O~g?a})aJ*EAxCl_=g6VMVW107X5U|~muK8sCEH9@u zLabpXhWzb@E{kwux`U&Glk2v_Hb)*DBRj;}hn2AuZl(!Sb^U^KSE14Pjc+aelddpS zmHr@*MO}X@ZLMGlHH^?v3ehz4mzI&{;<&fur};m+L(UYGBVhQ88IVsfZ*!>D^8bBg zY9jV0^>qF5IlE`(yN_pdu>EGmIV0m3qbq|ezxV9pEsiH0^!*V}O$?r41YY(>kB?`I z0sgkiD%xsEkJCxi&FT4359d#o5ozpethU!t0MiB3T>_tp8AzyV3;eR(zSxj{+CD^! zJ?4qxRP1Dq6nVLJ4Rg8ave{i5Od>lX6Dy`_4G5MZd`4N-b@3cO#PA=dV3oZkmbOz+ z3y-Gie8b0&2!kcQWn9@{rXi@v6$~lMs53#aw`*+tRU9Ps){Dc-V4bP9m(xjniO(~I z_!0ftPaBH`Hjhm{8#JJL4J&=5@LA06&;@qfo?6xcCXekF!#GHZN)_X+UO>_zC|W!L z4QpuXe7T}BV2nm@t0HO|?fC5Rcl}7q>eis)cKyoKFILR}2FOG-2Z`h~2z<^SpB?p5 z^|e}#4%BkYwh^(3fvd2S(pB#=%(({pS`J&^%Y%_W@|(VryKVY^#vu9aF!ciR4i2{f6-2pr-PLuDX9V6T6j)of>;B#c?0omYWvd8*(l@iBd?%Q&i1Kx};r;PYcM>KGc*)cm8G zud`(rdxVAgk$>9MJ}yD-pO(;KEjNM*IZy~fil#~8m0HX?^RczIrfrE#vqP>KcHSY$ zQS9nW1&Vfla00w*k|($yXa!+K43>$-U;=a4S!lb6^u8)sg=@82^Q}DPm$ym?oWhC5o z=xpsjjSa!~*nO4HRFB!#-O_ApxiM@LP-)?J;i-mr5_c%Cf69e&H~sHN{bT)~Kd#FE z5vX6@w(dUei-leT6#ao^J$N8dE~0CXs|GibwTPn#%v*b{xhsEpoK)PiidJO=1B4+M zg#LuAUA5(P+)NP)S(k)_cPsJvoeYn#n0W06()=7s2=s06B28dRvkyrya|?XnP&fCR zV$&>n;oqeK1mNTy?Si&R*!JS?l>X3V-RsA&xb_@rC9WF$AiIIkL3BfezWBIXv zxI80bEG$h?fakou4Lf557Z%F+JmXm|^c4rB&n9rx{x|T+>q@cR>%PR{y-vBS<}0*^ zsTjMIscTKcoA0xoz7KEk+?tZJ$slabfJLhz1Xx8PwVom>`K1RJCSg%DZxkTXtpl@G zpg)QGJmW&?yZ_>w7i+{hI4f*!0uo|i#AA|?hu^jS&T_HIT*e8oh~B%5K5EIQl!KAD za>UVU>PfE~Zt%T7PEC<|9lxKuXU)wEaJ&w4o$nF7!9oOu&oBHyIrvR40}nq}i(h$Z zXpZD;#jM!I9?TX0Jt8P-mvG+BG&=l;(~xA0NGd4$1u<`rmVRYL^W@=1fRw|#&zZsQ zDD#2YU&3FYal)t~w>tr!M&4%|0ntED!Q11a9Gv`}c&-vO_W33M?VBr{yDUFwhPPu+B!_S*u-?YV4j=_lh21jAZ#B|cu zH=K2hS595+ipcE!)YSY>*YEzUHZ|Sc9xUa=!GLB%&^9$^O4pK zyG6%?@?xu&oc}0>=vC#7O^QV7lgybc)-*4~?P#JWgJBjYc>!PK_an@oF{ZY-GopdE zx8v$61CtEWGVEVL`uLAVFxTICn?=7vlPrYMLk6bfzN|8L!Y&4a_njHgGro_whOSjJ z0p^-G=4p$r&m1fw1FXu3=6@>at?;8_{JNe4)z|)Pv)4XAE4sW7px;vW3ybApf>w+; zf8j!{4sT`h#cRL=1%-ITnL=0>a1K<9ED*LnLJS0p3$$K@comT{@^!f1S@7~Ugm^gp z#~F(bJ?U;E_8fIYK!v5Y`Br`uP~^kr`Gj>SuGZM%1+P#0v;tA1FVGh0$@$lZz^~{Vkk@{j5}`-WEyr2&}97dK2av0 z(p;I>j3fA%)dO>wES>PFJKNy*{ zUoBT7dT20qvishj6Sb!<6Cwm~&a{aBAMKJ^TBaB}4%38z5^`W_u2Vq?PKtb6nRvumj;O{*SIgJ| zkr z0T^xc9N>GNb%I`{c843NkJfGmrG7g!*q?lP4~;f=3d;)4p(VAd(;eph6aIecTQ|rT z7kVVQR{QHURXWX=r_@He*|(N~%F=VL#t1WbiYF8*G8$2hgyCF$-_cwmc)yfEAFo;^ zTRs{+P1{*(Y}5P4i6$5{VL62`(>#53e|0FA|$qSm$NS zYoRbqmfV07sC`R90s*z3;D{b?;I>kNZ)oVL*m`~SuBaycV=PGBPYCJuO<_EH3KH@l znq0Y;VU3stOQG@Z<^1w8`JjE2{Fb^(cwX8}DIoigbXKVEakr9RLFubhNdBFv7DPnP zov5M*vK6HSH}hY}wAvz~;u7nyB2L8eE`gzLpCuc<&L3sC0|@xbVBsS^T!!ouX%SJ6 z(53CFuw4zS$e*4a2;n6b~4P82OI z{j_v6%k$!{KAgEK1pRY()8_&x#n(;QAwappN*b_TSssUY^tZX6dp^d#?dkNRkIh#( z4hi7<%eU2<&$>aV)t;JnM*m9mwj)JyulvErIng{<$au06>q{Uwmgm!j^>aG6JELRH?(?aJB zm5k)zFscep7K}1vz`MqK(A(4X$@RYG z5x9Shga@N4L=h61pPl&&T@;kOR%z?#Amb$)Agbi~D>$01uf5_i9$t1cLj{_I%!TS9 zboVuq0y`FB>8kPG8T;gMtb-7_;>*e($QGa@DXj84k?fv#_3i=D4Rb+go2ar{ZAO|w ziCB@tkLj4wc3U%j4T^=q2{Nok{EjgU}k|2t&;u-_bl^#wKR|?G~WPIf`cq#|3};QULDv<+J(IKIdfC;j4QK3tBqV z{{WzJksWJDA|@oQA*-rWx8C)hRiNYG$4$uV`ZK^?hcnOr)#KQ@@P8zWSB?JnpSQnEivL+$c#Y@ zZQ>M@%m?_>f!Mf*NzmgJ*uX_J7Lbhwgo#tj)UJ~t{J&M@&o#}Om%gYT$5yt;GLtk0*LnzgeHuDrg#>RtN8?{x}m}OEH84ZIg9rd}{_qM<&ZjB~w0@iNJu2dgy z)}q+v{&BEnu>CIseCxAU2 zd1>F=(MGIsn3b_FAAQa}O0{$*?(VtrA1Y`{;pE9&O}ML&X)w<)-yWI0dYqrSG&HvJ zmY2ALuX&yvMsPzNKmDhL+b^xz9qjGPx`xM7D`t@kLUTVE`rwbc+=3RNmtvI67Q03u zfe4-uv_^UJvQ+Jd5%R#0hqIJ`7JF|m&8M#T;&ILM$4Jl$UDlM<`PI&aJlHG;)TKZ# zUOq{b(T1!ykd~`)V$U73=-LNvBPqa!gg$W zk7S3Q$N_O=D6K^e5BDj+b2A0+E}|4qa0w_$T>!I86|n9Fi|r_0Ph-D3xSMdaW~YY% zu@G;e!KfuadffbCit9rZDIo+kqweI(OCol>n$%!zbF?(iC6bFfICvQm~s6%{weqpL$mv5@n&7=FQ%#p&l9A<8T@2xwPyu zy*R(@>^A4chP`vQSp&K)X9@XCaij1v%WVd3UB=*)3x7N-mUcrdpX=3gh@36~BTsF1 zF>^a5-d~Efd3j;%=eT)($_$1giJ0Y?n)k}qb$gOkLO$zLJsu*!%3IL&STgGvQ`w#d zF|nOuNs<|xiC?ip6l^VE5&4%ke7G{0H9T^P0f<@%B&_S_`+VbUSTj^+BS9u|e8eXW zva)@35EW__%9KEUwdiQWwbUW@h8;f&BP5H_-gY5wezA%VT^A6*He4ecdt@2dx~YyTt*l1Nk7I~GL^o!?-jgrJNr%_ z+#OH>aUK_VGQbv)!skrsP&o}hgrpJhzuO&duj_mBT(LuMIWQ9)bhU|d(=zj2f(iJpda^|l4#KwVNv7t^9Vn=K zL}Wh9EufFd?)g1ab-9WTDI%L8N&KZxL}txfg0rVzx%@gWBtlF5STbVj z>pKXr_9dj`C#n(52oti;X-O>ADXdb?5d{Ec+ScjF;E0?2c>ob4rY<1^mXW*?(WA=S zgq9|%?`zg6VKlN+`H(XCGXk{j zt=9ciiqor^_3U%NJt45t%IkzgeK-3sUYUrg!2qk6U-WFray*a)v920fT+KSV0e-dBb8#Is? zvmAozK;sP#1R_kCtYHiH`x$QR6bANyKm}71dqpP*6+uT#RJX+s`&D2Mj&|<0d&(}K z3+y=?-ZNbpG%zl4Um74KmC%s}!klhvCN~=VjEIM%(tB{6lo0!3N1nn+KO%S$DwUs{rE4uG@20OgFBM!-51n& zpsri{NdVhUwj0lPC09-TpMJs+Wd7qX(dfUn>{fD#JP>6Ulv?%CH?;A{5eTrD+pEFhH&7ubTcDH8OBIL z;_Y*ea0<#%vel$`fznP5B%|3pD8xxTT4<>_WHK^7Y>b$ z94)m%s!-^_1;Gs~jbPB>sr)xccNV#v%BnE!N-5#;-mScbsif;}+5q!Z!4jw&i+;*U zba?B`jKE{-%s;4Qt~|F&i-cC`k{fB0NLJhPy@;;59oVmOp~jHwYW$1?)r*S{_X8D2 zNrFTYFX_1%40NTvlFS!VO5_cdtkw%shT`~G{T*oVF=}DSeEcU`u?d9B=G;;$s_?NEMEE1Yh}r-DD*w_Q;7r33atKVm^w9&&6*WcZD_ z{ooVK!QmYcd}>(<4;NY+`-}!rl81B<&y+wzjC1?-(ZP{)JsX5}1QUV)Z6lb!j83ES zyjBSZNyGK@TO%>p8%9yIi0k!!5bae)KKKr!G;?N~?oC=yz@qL)%6`&*+3HxmdWt_y z-ur;JrmIC4+0#%PkG?o2Q6CthU}`q(y?!pPFl{~dNnwbfcPc~XyZ3EydZmBT5Bn4@tk+Ix{S*t?yX^14E={wE} z*g_77Y%Dc6!D0t&o9bSt*a`^r(2A^w_MJrU7d5}+KRDbt#kTt(;SUys zK!q_6Y(TXnW*{7)Y1IMLiT#EB5bH{ixP1)Kov==(cwju)Vn37j3K+BRABlupmcW?Z z$?q^z+Wn1~lU3~=e674uB}9#OhsO0)Oi$wiOta@q0N?(rxtKSj$e&IlA7794Uv6L& zn~rDrlE3t29eOSVE*a7b32nnexS~c+D@oeh&g1!x)kL}^_N@5^nk4=&(rTLWBKrmXt=XAaYfmAF@{0|K)ZdGBc; zE7Er{MYL05-cFg7w3~V()_C~|ylt?DNUQE9JA3;dGJVS%J$j@ZG(BjK`;yl|YZfYw z&+Z{}j(I@VBw8ALx_V3g_YGi2+g*sWt=H%gQREDrRJ}byeHElj^`@P7@9Q$1^OldD zo%|N%ADNMKS0-N60~2hDDL9w5b&&hnUIN;;9<$$Is1V~lc*ZIYJKIw(-Vuu^)*Wko zwusm=nV26xrPd!bM1eDq>?ZbYe`*sQ`!(is?=<2Exk0t6=xvoQx%za@*;u3By4dp& z89kCfmOVf9TdpZ%3uUv3NfC*Gy>LGN4{VH;sqNxoU!__lc~QcP^MLA|34SmdX@ukm|&v#_X z-aep^UZ5kfv)}%^o*Fyy^*|!vH1uMzm?3Jb)*$NWsls>Z&;ek+1repXOPVZZGKjhP z$B|Ft^&uyyCMG1N_-vOE|8fx&J!4rZKbA7>rdF)%J=)LjB1!+`1cwn;eVU6ZnW?%Wg+3O1V>6zl z5t{pWf({vfIizwoN~+Tad`LLQYrQegQ>^dQR!CbL5<k=r@;;!``=5L+ycKbzT zORooS+H#9HJ$tD#$q9;_^J4)-nS~}bOD<~|-rM;){ITk#o#=^3QT4LP=z zp8St>G#2J%29pG4HZW>kA3BxeMR7sicaY|xn@U}6Kr4D3B;{D#V@+mg!k)mp&+cx{ z5raO_Jk#-e$QhJ3!>KKs2X3K*r!JK`$7JwEuifssuk&!z1XwVN;Riz?9;8Y&a4i}H zF4@?|H3ax(E-bsZdMHbNIe~DgPehX4{=U>sldaVVZGHa*ugv9fYa0v`Ly~QlI4K7J zao^v+Jv>ZP#5Qft1=*I&{Nn*CmX~EH2fuLahmGI&kO%OLvXe%xm#fD5mirs!P1KmN z%`E~=gFAW(EVM`F-*6-&+`aZOf*;R|t!6_(lb3%B=F6`F)Phi?|NB4p zz<|Cwl*jp9MaFU3BqGjXe@%ijqg#XorItlI6(|aZC0^2>OQs!W)e4Sl##om&W*C+- z5T@#{Ed#dRq}(}J@UXs@SP6xfqRa;8iag`^mc-4?HJ_}uxUWTxXVkXN=+(n`#VL2JY zk4@{x#bFViG!fK)ie@i5`k(Mp@{`q(Go|R8BMx^8lZq!_(HRWh`b1m2!Q$nIue`4v zr9HG)iEO|vBe($T;hHVS+p#-r@`UA(vXR-v#L6timq{wQlRFF(#=smJON2j&o|)1N)Kh z=w}gZ)$s-NXHzG+kRm^Qf|K@9q#pCa3hK7Pps|(@n%gSn;Y; zO@rL%-L0Z4kD|roP9lIqR*cRL`_D`Vgt0p2>ew_<&a!yIx*Z$VJ4Er^;Q|aRMX`9V6 z4v5@*2dG`#J}Y_mL#&f_{|1YW4m6MUy!h&X+y`;s_W+_{w9~YCwFtf(O*0ofu#%>T zj~Jas5%Q1zpAOZ3($w+3(n|_Yp0Dz!NsR^%5JhnX;>W+^jP($=NhNzuKuKvK9!a%$ zB9I5_px!WEy<>IVP4Ru;$_TxGK55AL8^gFvQ(uY%ij68yGoZ(kmyAQcU`i9Rh&G&W zA8t+SujzF1&!$V+KqC{q>-o^1%)%Yp~*Ps4NB1V8(1th>_i z@pO44Uq@)|E_RB)JND^Jz0$y*2@?5*^67j8HW+oxm8+`&xt8$(BTEbR{wnGo=sml% zApln`E}>)lg*b>tdswFjHg#xr)FDdo2p4XenPswgY&#p)t(Q8}fgw3>iz|_^6QKQ$ z(A1@w(PRO;p#(a& zK5IZubv=NfdxtH^ly6fCvK}!Ck9*qlISIj0rs7OR%s?LE(JixbxmgyMb!ed`yo_9` zx7!`-gn^=L&^dw*k`a$g@~jw4^l3dk)l;q7;cL7tI;6+6d z)2mZCCR0|*?^t&fMM(>Gs7-e4>$M4ekD&+S&iiRR5gwUmUr0t0j-036L}L+*l3(xc z7YYe%F%NIPEj43lkG(X{M_TVFLb(tArGXYYX|ce7W&8^{o2kt1&4-6)t#{g-q|W&R zT5x}X~Y3}|7*4HhTAeS$h-)z$0xsl$LqK4h6Rh=T;fEA@_jLU>}X*_Igw}w zy$9GNeLn>tTlL>rrwiI&hP202h_1${T#s0I)v(l5b@GxlTCJs|<%;5^#yN<4WQ5f? z2cWr?3s7pT(34a+t0JscIEh&eD;6i3jXd ztbB{Yx{iL%VhOHTzT@Twtsz?-?J@zATx??*U(RQJ&S|0qG!BtpM~$~Fr-`zAxeJfW z6hk6Uodr7vixFx*h(c>s-_G)AH!2L_oQW-HV;ab(2P9N}EGjYZq1-bIb4K^Y_|F7n z`FS&++>8dW+s!*ZEhuUP*2&qL+Oe4~5c|`EcMEq#YEJ-^>#&4dK!gzhDp9!7Z2q`I zs>vfN+E*F<1(v%hj+VnWhs7x3G|^V$dw>l7J%G=I{B}KNKh8Aow3a`l2>IHUUs;!o z5tr=8H!y73w}6m@6o-^aGz5<&OkA|PWqyiSNcOUJNB6Em!D&|Ltj6BWu+sgJ@Bsh0Wa+_KUBdrI%i&Z7$PROg9=ol1t3K@<_w z<^v6U&>oY_46hnJ#TMlMX{6yOI5bdF!dJMqI0!m4B!D=hYc+Tl+7|JudQAHP)jWSO zi4ymTOjymVl2b(b{-n{0e({5E^a5_B1?GB?(%Om2Rh|$t!b4q0igE8T_r;riSc;Cw zS8&3^XHTLytD0LhfuQfLzHPVe5rvcoS>J+)s|cvf_;|i29O-*$zej=+wvN&=E*!c_kjA)9*~_F8)21>&8Or#;arVq=yeqhWI%64_MTbkmAd8%#2hML zU-^4nx;4>#O>Ek{RX>WGhy+I30XgGYMgnQ#-S&rV5Ij5`N^uUx#_KSgm~$?!j(`*# z=ZrSt3t~^vI2_(@INjj(VFyeiC0VZ?7R8$aMJ{?L_6)opd?1Mrt_q$io$Lh<)%IS| zIxO2V;9rsk`URpI95l_3u*PDj{wSOLc~^;84GJ}IWUGT4xJ(Fq2k63_A)y>t^kDo=5Bn%(-swx!TNqY z=E?ZZ!4AsujI@uDmRb3H?jb?v`t43!!F0tH++0N`WZvu8HfFslj8kqcipZ22 ziIfQ+_m%I1!0J)%v^o6se|wr0w;OCT1_gJUmvXfqaTs&yrc^{JPIg|`na$hdv!6HN z7-Y>d@JnM&Oi_;wQ_pHsjfGtCiF*QpKifJTBFPpL0AQkS z=Fg8e!4M(DM<5X`bky=&MrDs5?lO<>`Q|CH{C(LSfuHK%1TV zU9cy94@eC69iWq#JrFiT)~!rjWb|}O0f7|1O%xWXI;zFPqZ1syqnl%)u(E}*%aMJV z9)?P}en0$~dYkm!six*MB5vE^sXXfOe_k!o%rEj-AW?vaDIPJIOK_^J(5STEvcU?& z4LMqkrK^|^Y1b;yL&Gh+x8wT`V3kJzDUYP?Yw--7LxI1bmW7AWP${(?l%~SS0ntdA z6YebHRR@p4hRf3Pjl;lq2NDlMZf$cFOXJb@4^(2o52fY5A~y03!+1~6=f`77*8c6`%iB90zPT_-X{n40;Jos)f)Q7EQT9xb9mLGyfx4C${T`+ixxlq zGZPept{L$ud|uB$Dmv`3*3r-@CA8M<1%*-87#?Ge4K==%aPa{W0TM*=9VH~)a>#_e z{B-IzsiECYCPi8C_LC?JX7oO#l2ysNEjw~JpijFS!9+B&f!J^_7;O9!ziI|exuC%r z@0cMwNTU=15FC+j4+Es7rM7Z*#qAPvUTyYG!*;Q;wtdI;1J^nO=3bCu4F0^1Du2`9 zJ;Gebx71%H`URZtD|ASY;%*RRq*%cEeghj)kWGDG4w@%F9p>~~YYgmH^n17+`6YNd{*A^*s1YmBls?&m=DO*4&7zR@I!tTqCc-<3ps@Az>HK~k?pEN-PURX4FunFj{H))VL zoZoSyT`{=eX$lJe!aBgK1|o6Uy^lQC@moyg6dvUVzI6=U=hBN$` zNh08LkIlVZm&K3sW&8;raDU9oh+4=o$^O6WR06K!ZvuTMII1EHz-i;*V&znA~tXKij&0><5qcm+v->etIzb zmNm>8E(fg!2B|}3f-wQaM}^2$G~2dwA~?lVe!!9tAIom7!-rE=MVZi3oRlP}VTOdn z-ki!=^eTkpFXoU%-BxzsMumih7ib0JN`sjxzp>DwH;)V#XXi z_T)mkr`M0l7JTqV;32}9HmmKUg1Ll0L<|n<9D|`ei6V z6oy&H5;|K2#RUxuQP(Bw!W*^vLT@g?12f^sJmS8mK~k84t6mNU${0_jzu~wI1@>XM z9i9bvqm)H9t{)HFJQD7uuFK0yD`CsQXPCBd?mP*1N7HY<&71~!pS9jLH})IaZZTGI zrB=Ve@P5lX8cB;2-B*b&(%#8H|19Z}5DRqiNe^}-vm!+?{0pP7qMU_EZ;@a^uBHSw zuSU4GQd60LH3qlbd`1g)XQt-8K^Nt7^$~XOKf!pF(Pkg3R8IKK+E10$ne(?CJkh$V z8q>V=&lws+&7fMfjuT?qH072jm}9dymfs%Y31Y-aE6~Z2x|uVUZPRnG>tGNSN%4K{ zfNl;dUfdIqAOwt2cEa5kAsc-zgZcvT3CB^^W$+2H=Y|h(^`S{)!mfMhh758LQp7xM zGn++PkMZ%`4&dfYHM!&xP1bNG8hx`>A1KX+y(XBHXCmO4C-jtZKE=Gxufh&bTUoIH z$ajjHk&bF{qC!Tadqt$z|CJ&F_0-<%;)Ii)uhbAEPb~eA3exq=Hn&B+M*Y80MPZe9 zC6^N>Wv3}{9TKpR^$PV)PACnT`j+s}o9@7GuDj$h=t2=&x$5s)=^FS>y7kOOT>-Q6Gna*6Fn{37jVnZ?#j^q~T8 zC%su(PV;zpx)I{ye4Y`SzBNfLrl6e;n^WflfkN}5O4|6qrUZ^F*9NDThHgqI~nNj!-tBhSy81AEtMHd8HMCt4YTY8i4+?~ST zH_C#x?>w$_gk&x;bZcda@2>Ohcl(8&|K&X~lACiLTZa-RbKz5pE9y`ghEs>BUSo1# zX(yPiLwQq1C59F1koqP6gcI^0zum;akKb9I`?hV9E@ZR(V!z~daF-yT9O%-OFr zEiH;MqIHXS0*lKQL}!31hYj5tzf0vWt~@vQ8m5SpYVsNBeFW!{KJz!-Y2-VquJ`fl z5M=)`V%w8C5V!lb_79=sJ>su3E51?jyrxCf06vQM%?0?a>rpMObxBo%)ZTB*_P1JX z2D1SY5m;l?R4E$+%{~ zwr*_Owr$&}*tS(c1v9p7+qP{x728$?H|y-P*FAq=ei^fm@%Gl<)}At2>GNGL zow2X}XHy1OKpGOI{fe?t)Axi6meLy>++d8hEi)7MtYT8LS39+e9i_EiNlI2w#&ExH zB}La|x;b$F3FKv>H%c2Qs9HxQcd7C~J-hWDBvq+J3mC+426~5j4S`Ie{t$}ou*GVh z`V|AmMvGO=fO&$txy&f8;m#%-TL?(~F5!^@x4rs@%Cj^(*Xlh98M?lg*_FSWbJKo8 zNvSlDsL4J48F!T60BTqt&IrcR4S_ph+AhZ2uPHo>PkR_+IR0ybCYLWD-CU(K36y7+pY<` z(Nl$)ka1*XO*@^`^|kPIJtX4~JqyR{ZWyy%nD0Kutl_|maa)7$Yn6Dyh1eCv-|52w zy^%MEGCSAaI6DL*i^~{5l-jm0!k2-}hX=(0#{Z)vq^P{as}iZb znr5YdzbT?4qb>R)DCL9L#`3iYfM#2q4Y7r z8L(G%L;Nz}Mc;y3SIs-I3Cq?UvZou*mbE-hT{{|!A8DgDSWRZ*G#LU)xw63SVl->_ zNaCaJ!(~4`W<Z+-(E)_b`2LLCCUQsz`G4+pr#m~H3fg8Jlrm+yNgl_(RB?Dm57e1pO6RLQvt}V7sM|xzNoGPF0 zK_(EQRqXrcW_b6er&*^RG7)Nzl6}f>kg}cb4iWXGnl?%vuVxry3mA9aFk?Xj8 z3sLsOc`;T>D~mXM9AZSg7gQRA&|8Hf_p*x4<=VT&hvV!l)!pi+(&vBu9LPsr!Y5Xs z;(h62lt|z1bsby=6q+zK-KA9FScrpE$92zDuE8q91%?z+x7Io^E{I>^tG%-y<0rzE zk<6VM&KY>LpzAmjD^e|Y^7^tGKzW%nC7#8T=#CJ7`jtI{LEreLm|@*6lN;Ldxwn;4 z(M*riXM{Y(XK1ID_o87~e=OeTiFqWz^wM3>bULShmy05 ztW?iYKc-&Nj~LU-AQb+e(x$neiqPzyl(Ry_qI4~rI&}N<8Pb7zV9hF$!uI&z@$gtN zG$ycNHO#6)xGQ1f1CbbIVi4d=Fn`I_Fd|cM*KlHps#XX&2Obx!fRTREZn(G?Q_3}7 z=^1^X2%GFwgi_Efn|NZCd16duddb!vKpY8hfhS~{`CTnrTjiwIe68Dmmh5yU2S!Pt zK!pgtNV($3Faj^8M0B7{JV88-qo-EPrCaA3lhKqMAq8i#S~P;3W&%-wRgrM^QAfyQ zI7!9T2hwoFJi9L09YgP1t_!0+k=12AW@CM?KPub==FN)!ceR`}0i|8BBpH}oCbE)w zF~VxC30vbUw28Tw>yb5{mBQQbL0*bYhA!=HNE+~Q~v^fRz*e1i7gigA|!=Z z8YVo7nFa(}IjtJp5HAGX&r#zUs9Z3kOQC}mvvi(l*rqLt>PZ~sUOX0nV*f9MSLJ6} zX9NlCUN;*QcHzQ^5ku72BW;2@h`8q-e}Lok zk@OX})V6J;@-^;6rMY=zc0;KXXeTrY6-@IY>N)P&rRl>@-#c2Alr!hl!i7;1 zh#^>TFd8d@p=ihY*dpD8M^fIrV<{4)tIJ7GXD4l-Z3|G)QTLPmMPC4HT8`_&zQTs_ zLcQ-7W6IhAA`PyxG*JLLiK)LarYZ6!o^n^o#s$>1cM+FB$ql!T4yj$~9g>B6PUwy# z8>|${@G_6Ecv}88at^;?zmW|or4s22^h^{vC(T6SX6iffm?Y{IuQsp8?e5P1!DkhO z_f#~s%;?$8BCnGA=3^By2N}t?8P5%CwN+Qs7nJ;>7RQsqNy1jJAW$mj3b7>)CP9>< z4SLY{`>^6qPmm;)6S@hTK@_N+HZuKPCOl0VAvU>#vsle{%dgcgirz`fg-9rHnN(TU zIvZeyAARBYC9Lh1kX+IwJ}77rOf&WVdLYJEhnyns_^ZN#FZbqtQBm*;Vfa!Dx>}T` z^8G-<1LVa#9ruYv;u)8K$FXk}x>qZ*wdWY*7xYzyo&hsk3-WKo9{(5fm zKiP_(1Pvvs=3TRhjcyJk$c}=UjaMuh5}PAu!+OVLw%>i|+r>}$fa|19PjXG?HT}nj z%L_cviRTUf*iiw#%QfhRFO#4wUITe{0mUF?xfzz8ZEkovm__Q`$_nuMdUh!;nx&iZ z!{)u{b{lGmnMdn~@p`xIu`tKv#s&^TI!mO^8C4*PK7c@U+O&!Wx8e%h_ExjroY*ggHS_(h!l+8-1S* zTYfyb8N<+`xZtv;;h@o4DCk+Tr|rpSv(_;cHQL&dWN&|1_OU2&TC~?a z6*CT;2Kn-LM#s$0N>dl3>_tD|`0stTg974{W(%ETtVBzyNAW z^CrPAR8NNwr}Byj0L$jZ>@)s*F0%Z3bM6=&JOQeq{PPpaT% z*(8mwElDNajg9gh#^T_;=4^|LF%Oh9j~Fa&t8=vxUYXQ|absXomxBL;NU<#7&wF~Z z1~jQocXasCApr;4*$6heX$(do!bOze7YfJA%LFA+BC(v1eMU-oj)*NNBs3&lwZ<8a z31)?(BaAPhqd5JRPA`KqV4a+$&`l=p?<^6IX5z<*Jotnl_es;*CzXupsNC-gcp89Z zyd6)Z^yzN5Ib?vFxNN3WK*D=Q_XtruCHU#BcJfQ@t_);l>^`*cfiN6Mbrk@xD+;_V z?e;dJA@$vB_xw2;dB6PB1}Zx$y{^7-J-rp?CR9*3akP}Ml{3qH5G?O@Ue0MkQ1h2_ z)21z4meV>1O*7Xe?&rv2rlam4KT^ZdxJj@hZAQsT+ADg!1{E5J2gUnOm;Kjzb)1s( zY=_sr4RD%f?h%K$mhZU>36u3w_cB4o<8du*>rh)Y%lAC)H{I2BRw?XH!=6I25w+D` z1{wg+@<~?eGnorpkDL44{Kwnn-Ul)<=o98xB+B$zB`|GFl=Qx8ri3x%nlw|$qnzdg~j6g>+ zrJdmV(cAtX+H%L;6RzvmkteK}Wx;!PKic1nGcmJe^Fb#orV`AQcaBTl!Z=DLk;;#^N6MP+6f6bTTyS}r7p{kyyr~@ji+x@FpK9y4M#kPL#_o@XE-nC`7yUVl z?_9T_WfOgp#^B6jxO)AzxC6Mpseon+I6=g33Vxb<$jhXRaPzri(L1(~6WT?%eo8LyF;X zIaa&77zX`ur={3}fq|6i(yoQ_`OALc`uywbSPa@#@3|T^f30N1y%i9&@B>f3@-yIh z08&{Gsgq3;h=;4?`3IFjY;#QfFk0mwxP1C=cA&Osb3OZ|C7k&~`=C9!HRNL0s@Ue! zYc~}BWHd3=z&Cv#1`=W&4{ThBQbAX?E}7KsV9pLmnFI5v%W)3`v0=UVN;qaDc^L|Y z&69P{%Sq?xvi)g+_}mZn`%+yB4j{Hov4s1rW%dUt{v6U!6JvkZLI~8qB(u*{kYNN@ zCacz@=%3@znBaZmkBhPAsTVnWS^YV}XYD*fon*)S|B$xqWS&yw^188Hw~uXfz1 zu(_`BeY^bvo*w9!I3ebYky?Dq=rsM5%)2$x?$qW29Y@w_x&qv{WIgQ)ozZJ4`)mZd z^=OAoHB^U^-f5AwA!?M`$@_aYEiN1m9&>c~w45Vu@`_MuZu>kCT+@%VTDc|<{65)T zADB8*?$r*qtLq$PBhkz9$%D*>n{2o0J4To)fjFz%^u7xCa})EK_EH4$TmG$i?FS<2 zvLR2iUZn3bsM2Ju#I|R_)4y3^p{}{(_|$2sLgn1I`rP90_;@5YG4OKN?fpl;alPs8 zRRTu5wuN>VKXvyWWn9$Rc|Y)d8mc_&n7iqDaFkX5-K#?X8+W4$K z9o@D6WHzuLdhkV%asm=bnoe=hr_w|u5)(-5s|ECRseJKv^4fQ5kUzl3(r?>xVc*## zH)5J=edu?pyk&Uofu$V0=BCkyByQ!9$`OlaSh*?N|LZ6y-4}lRfZr@3#|xRxo7D6f z&skTgh6#Yihc`xymapCMJn5eo;F(X(cl$qutr?cJ(C~h+EJeWR>?-(5)hpKf7-yUV zXO|*Tg&kHg6?qUvqoF$3m@Mx1k^Au_(jkFz7jQqUZ!eT%-?ZJ=4Cez6I-;f z9UTl3b*T5g@SyhWw}p25`G2bZHq#m_`l$X_LW~ z04c3l7HcUB;7_oLEtJOOJ^M2B+SKE;`sk0x1zgy~Z37+`iJIQ8_qH!GoYthHRUmUZ z*}}}v@rg0ZL)BSn8Q1N8V-NC@iNm^4PE@L7)kbbcB4dR4I2f$a4lJ|JBH)?5&J!fb6h2 zIP77An1IBK+4ku`&BVpYrsIOz8h>Syx_a8KhA0<}wZSQo;8DeL=f# z$N@0Ki!eCe<}&@k``xJsSku#>bUIdylbtgGhi^Xu-_w&@`*DWNT*KWcZ_bZ9`BMt_ z7Ewyj`}1Vy8~P^uaxny7w<{W9w(fxBxaQ~rl*Guxk`v@%DwSE(db6j|reWmS|BVhA zCkA~fQ@_n2{vxyqX8)v46;z6F7>ERyBqGqWE9x8iNy4)OA?;lIT~$E2BY@=aJ2fw8 zIqT4zR*D-uk8blgf_C4@e_MFn#(s6iDcRaw`xSs4{#t(i6coYGRG39h3X5jjLj`6= z27)E68(8WzDm3HL;e-!`aE;9HiG7#gIA&KL{rgqRcs-T-L-PG01Gf#CYB^}&n>KQN zD+ria$x_Z>#in=}4ry+w36bLJYh1Un6YovQ5N>kjxn`ztgr^b3yfEV@@4RVS75oZO z0S_UY$}by4V3LD(EX;#qA@Wcjb13|WbQ=P=Yv9Q|h54`l2p!%>Cjut{Jn6EEt=xCO&@iD#!jJRfxW#kkgj*g00I;=li!y`d zG1MhcrjrAA^@o}cNu{FRf@Jbw&Rt}ks)kRhOEpjYCoy;b6-DTB1$_utfOeyIomCP-2tU zH`TWbB?@=R6m=CD#3-RXo(pZv-y44(P~PU4OdgR_wUsa%=s zo4sc?*TDT4ZuII@!=~2@(mwEmq&k%w!0NHKKGj&RHbcE){O^=XY!XebaZT->yifq@ zNZJEVJT?UtDZK-k=;|W$B4({*KS1|;EoFWoUp0PZ9o0`FSR-`Y;6wnofL;c4fr^B` z&ff~nlIn9J{WXBoTj6eC&)z77QUNO=DD!sT;S51r@bIjZ#b%`}Imb6mX?Z@na1ZeD zXPDYDtjrOIDO_n$#;VkDqO&B{sPX|nLB|=h%*2XzcG{u1ntE$3C0UPLuu~kU%Spe2 z){2`6^q=@9gpfj}yj1Qa=yHTWsf7MG4?3%pEZS014lsE|+wIo5q6R)O*WMT~%JqiQ z%b(M^X$^WIrD%Nc!hjqZb6jablExn+cGXw z(Ku)89VFWN&-FYci8b`3>|68I$th2YR_*F^_Wu6*%j;O*?LPy(LxTEWso~bXiAKKl z_|_9;y%qI!R7)VU)A=+5sU~KB&?8+tgJrSQ?EgRY^=5Hw6}N1M8zN@vO)FVcGC#;f zOZUq*QwW?=Ja`>}9ZZXI!7=}2|UGgFe}NEZ5uqf3&p$7qaDHJuQCW6Qk~GjHURoIX0jrE4GVO>4akJ>p)ZzN zZKFL)Er%PU3Ay>Bm`7SKbr`Bh+ti`yPl&;HI!4d@R8#^!flIeVA2CM*l(*Hts#eiH zIGl`7<24kyR2gty?6i{D^{@SIS5HT0OC$hbnqFg;pVe=fs^@wN3XG~o{T&rI^zFgV zdj^N@dfvB^!qP^4U@e(hV2ed)e=0J!FjVk6_Go`tMIT`_Srn=${RjI(qF=CFHsk(c48dR~)plv%W^1WpqKZK>6KH8<`+9k!8Fdw0&({b! z`7@Nrse_)k+fEbu94bM0wM_do)a)hbX5NbXW83_{Qg3fOqEDkCSl;va^b``?U?DC} zJPuf)p;9JV&^$E=272gFTH30x{pv;tM`zq+tSekGU+iTY8AUXi05} z-82yzvGS30)mU{Q1AOfJmlfh*sY%A%*?E}YZ9)JHsCrCLBT`?>A#HabNC;u-^y_1Q zzu4lRhX0VT=bt{&ah)%O+>cYw{~(|x3Aq%3*xqtalTG2VOsb#F{uwPYUCb{keueP8 zkNM?pqsNiTaH1D2^RH2lVF6|&V||5)v^V{<$K#z8AK5O zp5GDX)r)Lk94I~!jQACJeZ=8_VS)}Ac|N@6KH*&wF69*<=zO}w0n&G3!}6U%*Kmaj~f1=1Oy5Iq(6(jNSo};+80TIgdR4e-X)vWa8<=oWsFHe z-s|}7AzE(C)KiUn=D_`stAUvWKp@`*X{`6b>QQ0` zG(i089yI5ItGWXQK|nXk)2ZdZykO0Zy}%KF5HBPk84W@w`5R?JT~bWUX9RqeceKMA zKe2Z)jg&`Lh7V$xb?hx9C@ga600+J*9i#g`!cUYRdUy-E4V|P=zk4oK4h;8qZ{rK4 zVJoGY4^`KS0Drbihobx9Ust&zNTej?u!%f4<9j|~A_@s5Y&PXWBBbu)$N&`qNulm= z>>8Pm>r^aK1u9?V5bxOow^MVaJ&8*Qxww4b@JFCW#}EOZnRPdJwd&^cR`q4S-qQHg zZOiKGm&@)8gJx^B&r0>`r^@k#rmxt))!`~8WGV@Bkl;~e8a$yC(VwndB}x}AR=0e? zEO&q#s_U@TFc0ArVKMuPh!%GDjreGt)0viNNy_A{bP?2;Z#g(8N0uo#jSKWb}hy~rnfn6TBoqHIHIr2VPR(&1^?!3BS++Xq>s@JFe zDDCa#ItwsbtSXD@B+J{qQVcl$U&%=aE;kl3_{Sy`&uJg_ zaL7S(4zii}ylC48O0K$n`Lk zi~3j7e%ZXNDZq9yuV{zW{jCK8U7kRK` zxrGDFt{j70Hi+bh*7Nx1EFBbHy%IG1LOAiB4*In?O-!$PG5UMN1Qp_-_jvv?#B383 z0Jd07nvK0!%m((}!2;n}zhzJH=0+ru!F8vw07gb3pTTC88wN=PEC4#FD&1`j0Xaqx zC9sKgG3xgzXLnYMtwyQ?3}>yop~F5$VK zABhbSb1AU#a%@@NAo;w^_PcSaIItftFSauj0fU7zJ%wuFAHvQ9`#^@WN=%Khq1 zFSM$4V25GGcKDYU-`^Ff$MiL`Fw}=sVDVNsOPW_~ffl~Z_@6!j?_6lcVEN9s^WeuX4i9-%WsM}pg6rdyublP^$O{F@YA@0zMU`$ACpX0 zdDt!qA@RdRqTZTshdus@KuD_vkq`cVg33?E&$3R`r5~2qZkVZ`a;Gw5FCFvvzoM96i^QQMab%aPd4_=7_R-P%8w_#ik?X-Me zVn6q2>ciNZ8W&f{kAFHMXi0tVsy#54Z0R0Q&r7qf2#-*1CsWcO6xM4g$EE8{BMEhU zwlm7v#s?h|BqPKDURe6W(vvYTI30t&W83%gz^Yh!xE43yh@J0&eG;6M!M2*_H2Z)aK^z!Yb3NStjUi7S*2~wL6H~ zH{HS*c{hypms())QDl7c4N|`O-`j;`ZGDw9u3pEhja?0n&9aogZGIMUN2?B&+HbRG{E$BW^YE!zmM(Iik=FgJXdy7&8%VAh1%F4LYq5=-*ywPl1zAvyTq#FT?JYrV^bbFw}#Y zR*d+0jcpANQZT3oJx_8aEoPF|IkmAZ$vlPP>sIRM6S`X$WONh=&>Wi#%R~^iHCM44 zg+F?N%z|fO{$1}Uc(ZR5dc5UA@*R4YNb`y#_Uv~lJAx1iSxGxo*8DwIx~J#-HqyfH zKYc@<&x6(n}6&xe-K=2qiUc&6RQ-ST=%f!ivt}lc92LJzl z5v5*beUXqj;e{nHEf!dVSvK#>Bv{%#E8PBUPdh({;TO9@$Do7^qa!>Mn{0I^sawSl6kewhmJQdqxPe(uA-_~DM;mcYSC zFmw@VhpkTXz1LXX-pc33bU2?@K;|_=DsH@_Ap($~9|D)rne@~ibRm9719j4VdwYRr zIf;}u?3htvlfxs9OC?4mZETF;k*teL8`;x6$hQ|^f9lFysFX0+)Y)~jJJHk$?JgMO zw$D!3o z+wG0`X+e+X%bT!D5E<)a<`L;=xUX6E$2dRb?Y(}4BX$tY7iAYhOUeBllLdh}OR$ui zBNxNVj#pq)EHnR^bf0}J`EKPgdVvc%CLV8M#_k$C4MQ@t8WJ>hG!}tq1AeH7r85=R zd2!71qHGYf(_dg?Pkio9P97*LR#KMtvzV9yh-uTRmNOJyON7|gw3$0DB)ZT~&9&JR> z?haAgG?^HyQI{(->k%kf?b_hetJZEXPU&TPTJ+UV#1zi0!B2-{W?AFhnjakcl{B0U}zp z6W_Yc{BY9)2^CG!89|Zn9ueM~1>mWcD zva$^$PTu9dB)N^zy-B`zZ^5C6$s9?-rFeBPLKhR!hvR3`Z#mYq2?seFU}O8QwTYNp zGXR;mQh)5rXuJ!={M@rfgt-`?ArS+&&AO?X{PIlq_+xC8#GiLq6Czru8n#gXD(lcr zmJgn*5s<-#?3r)qqbz8R3&arx+z*nDs5KC=0=QOU6hNOS-)S?SL73fCboNu-eJmP^ zaEGq36&r)kt5B+to!<~4Qu=Id*CdxQKK9!Ozw%)UOW`R|Y|C0F{32uemJUHS-ukbt zIYgvh!Fax*Tz@tMw|BW7o-kd7?LfmH13N-cS&nAwa2~@F9IqvWuPQTLXviB^&K49? zhnVxHdkPg_RreH|E2Z-+=&CrS5LNz<>CyI+9MMoje7TFJW0TR?a5?fAfG*lbw9iVz zs0){+Wt4Gd3freq9knUTtKA0+R4D}W8_RE2D#~uvASVMCt_`Uo}}47?`Xi@miVCW z8r7}#M3^CYHF}(lDw2e(|01s`eDxU`?6SmZ;74`uYjmf?o0sZ7|URu>J#GI#CvT+Wd!bRVz#6$mB_ z)ddX_b;04F2OrYxzRfP!2S!HA-ZZbII2wb0(5aXu6^ckWGecL6P{k!aNVA&C6`jG4 z#b{z-gxWPSNO(c4KTuFZp*aria8z{n&eOEjBeHzWyxGLvT-jyOIa7yW;+MUVV0ElU zEzJSaKCbIgZEfykUgABA@L9owh;p1|#|*aD%(PY;@KKc)vqDm;HNt{woi%M|NYC3N zY`+XJP6PXWd%|C;Fn@rWz|N^u#baz7*lOG?QN+@L zZEAC2Ikw?I?-H3CmkRn$q~H$N%j;#vnH%$)Yb~ws++^b^YC-~NJ>wn->4f`m!{46) zV%H>o@s6Q*7N8!3TWs2g`d0{M)GVFow*F>j4KNeOKLkZ6$NM$u{juf*9=(_!h((Q`mrI<5Sc%jcc#=%syrx*~>Csb%YRsbKRpcMPMB+Cynn9#kaloYw&BoB#JV z4Zc3eVnG#0^jIv0B^XmtUM6tTZh5YI90k$;%#*^qbEiUK66H9_mRm4F$dLLc zbl?Z}^IC-1jT5!UsqhHDCH`_{<8(YxkErRCyq(4YHlk)KcqW3~zPc_>^^Sh>2o_*2 zyFGN;h;9%WrsTlk;&eH#G^HVl9!+n(Zp?uhweiuD6RlWYn$1VJIDpfrGN-Vj+B&Ss zO0|u#*$iKB+-7J;s(TJ~6yfQ;VV1BclnoJO~T}QNCb3F@|>Myi88Fh+@KE-C7 z)u*}<)(ch!MRp;V^f92Ub8S%>l{2>pk2X*oOR#3P0|S2B^VeM?mrb zRdLI^G?N%`0BtX5C8(~j7BC;!c@i7XoElLoAR0}wGA~(l1W2=)NTyLD>8lr5aYEC1 zw@>DX42FoiXOzSxrXk_u@EH16um}srYJJhI-2;RvQbf`Z1%o&eA8vZZ$aR?ItWTRf z9MN{-H$^P=R12SwI_!k-JVGi9c|!8dG5&H#eXFdg?5`$#C2-!dW%QUElxl|aIj4j! zUsB6Z@PASlK|I-Y*` zL;mN^4eE2~Q)-uIibz$&blZWfp6voc85&lAEG_2yRtPsVf(DOtKa)NkP)7&3+_dZA zspS6{aWBSHY09lt)$cgV@*^J4K=DmvIphRSj_5lD;VN>N8_zoItEp6jEfkVHux&D^ZWO&+}3eLAe$?f}e;#Wx;^7 zm~{2Lsr?4r$9WW&7>Bo zbZ1F;IzDEEk<>{ZKGjE~%R8t*hJoY5vwjr;L7(4jaW7Uh`%y!Z(|!9d!#LNPX`?SU z{6@e#t-c)7`4$A~;FXSdv6$&7-Z~X-L6ODx>5L!-g)Z2k`*Bk{x|T6vKZtpXZuOSG zau3Xvo&g}t5l4A7#UKqSrRQTBetHw_#+5$Es*h=>T`&m6JQAw(>2H>Q$t!nM_s|2` zOx?yNLYktei(u+1w=3F{UrM#>R-}KaNwRR5GKpyLK_MCR)S8Kp%8arCn>p*2J1m7) z5ye~k;9KPBjopA9^wN1t`+mHP$l-$PE?VU>eewPw2Z6(20Q^~MuM+cT;woml%)RNp zLi-ug_hlKo+2;Qv-N?TuEqLyY^ny#8Gke!sNLikqzx=Gb09mM7y*QmhsSyc#GGb{x6G*2=eKRW-l^1@Ndt1lY%Wy9bbkmvGS_pB+ zkLtl1UpBDCU60d8^hio?eXrTo0{5cHt6OllM|CLTFs=BvVuM?8zsj<#LJO7R(AqM1 z+Y=^nv~;6Q;N7~^y37Sy%Gxvd8~=TE%*s{bYW;C|>?J30acF~_=Nk`n_e$(A={k(Rr385hP@|QO*5U2!M6@{MDdHinW{LCSInS7#O_99 z1a{%E<^88u=I9@d8j|U9#IReYF)dAf3Ar`y?c9}~T01yP%FCb}3=EuV2ZLv$JH-=K z9#|Dw9L)p~>p9glC8Qdlh{Vn_|&PY4nPNU5c4RvqjY5EjOUz_}Bh z?0?!c)N=Pb*UkOb9^$ttaDJA5cDOJ9jW0e#)4+tsK?nY71=oKn)GsBgE#1UnyAbwYNcq>38 zZrf-9!8xbFk|)+NeA+#;Pvx-7(k!?47|T)i>Pb%RqHPz>c&yW;v39_Vy~^N9k@OZV z8cQ9_CsUVW@3zQ`_d!{4M75_{BgYmtGlPd8HaBw9joTgr6|Bhyy-54??!K1W<=U;x zo-^0yO5;}R{{q#MF6LqpJCf}O zHsQhq$CDPxHviP+cebx=EVw2=vt0R>79Lpn&KF^+qy5Z9Ww+DF^3(boY(W}F#d>x^ z3*XA5l^^HYo{Y92Wc*7?t6#&U&&(;aDjg+z)YSIZx`@(K#W^){`4&gCmyrHyh3$h0 zFsW<2=uz{2vJi>$wIjZNQQ@XDBnEyOj1mz~LPC{-^!-MYoz&5<{=U&Bfd}Xh2Co8ElK+*dgh)YMcXjWG_>=_=8Q}A{I`gdbGJtp3 z5`xF*BTa9o65h@13GH(AnV}o|`_vU@G|AaJmH-WQ;2c*&=4~sA?2*UM{U zTcY%Rq1>4uES3aUO0^iP)=bMT#E;%#9R(z{YU-fB*jzUtIMY( z)nnska3)61CnDG6*iu-jOmX3ySQoM}Nf0>RUSf75f{uQW2l^F*zqX^Vl}|=S^nF>F z$~w@Y9dW`{Uh-Trt(IK3vS{txtL?~|w4apbmbqQ~-!vBdT^Qs}a$Jz1laxJw{moKY zj5sj_S9BdG|24h01r>~QsFuXjbCOf|gFy*BTdVJ_>z<$bs*@`hbtOsd(MhMcBCrx& z`ii|#$mz^Q1B71At#v7%Bb0YuOlVXmXPtq~og$`ML;sUCz$yA=rK+?$sZL_5T%_3pdR zKY9C-+^!r$Spz1eYC{G(px($d((%=P=@k_ufMH^QQkZbl+(b(@Aw-hR?S5uK_x~!H zqG9`k>LD_gst^Ynkjk>Kvvhnz%NBSLr&t<-c4t*sbu^6hSf_I4YfHJ*?4C>&(~XYn zJCh9)fJvvF=uqv@UyL^PmLa+LtzBz)Ges11_I`6Ncr#htiH4EjJdiD^TI5CQGsaS! zbE5b3lbMJ~BFkD$rae6*P&|p0q;-X z7TFa}0BMi)mm7I@wp!`Nxk9FyPL5p9J~j7&(hhq4H93W6F8d5j&xwbJN)!*j=GE0- z+9o3QMIlP{!TUac*oAmf#6nnvFL|DqEK=QW>flao|LWZh-D;_)Vy&KCo@KUbm>J#| z$Bvy(0-4+=Eyb}nl((;gtZ6KQ@UVabF00fq6AS3QTb|=#4kNsf$u8)0HaIVSZePVJX%8tsSNTW3HI2OYGL}jfH)<-qfXWP!0zo0QBrG4~}<(u-+fQ<++PqMSYn>2};tuZbGBE1@d87b#cX&bM*E0oP)ej!}D|`X@f>QOD%uYcHuNLaoDpy zDp3?pM}rMf^vW(}evR>6>=5DQZAGh8yAQ@bI4jLB&ttjufd!yS)zQ+Gkqr*GhTmJj zz~&Zn0eT>x#eZ6YB{-syx3rIiMui0ue@FfA9YxGA>o~T_^p$~&Aq4{vjU`Es2%_(b zVLD>DV3lJ&P~%0LGWQO{ z62|2_@t-dOJE>cVp1EGVYG}S3s=h9Iv|(RZy>KoO<(J>i0+21L{2&khdMjC*S@|~B zbkR!~uotMX17#)-JoQPr{8s5^UYwF;juTfHrryQjWbf=(3L0EARg>i3swN>Ahtsf- z>S!r>w$-_(<$}}FDbr!m25?cJjGIeNzvcUrmO{AIiMwP(GQ4lee`fC#th@|MEA-bX zh2=r;Gz)X*RYxV$EFLO|tWr1(fv7xFMK4v>*Hdq*vcsOghdC80 zdP}}SIXaFY`xGqYSDEcrLK1C~{+0Jf4T1wdx9m)fJ5_3uc=H(&*|2_ zTmY9>*Vrsp9dPoo#;Sz69iB%0$TC*;%f<=;R)s#W!NEA>e#Hs*wsKNoJ)j4Uvy$ez zm5(Q3ek3~RFr^1Z*662Be6ZD-6Bcgk{>_%X0A{>7(7B4K=`@u;j?)?XpLrlPOKfKC z?rty}UrzR{`5c4A@}U{MeRpn_5;!G!5b1Lx;YKa!a3kiLD;%MD>L`$sP69TX!1wOatNzW6#miVJCj8NSDLV7`L{R1I}H+lQopBAI2+!__T(<~PTDNOt? z+cFK9r+B&3)3lmZ^a8Kj!r4;kPVv~c%LmfF!$)mbLystGYDdE{|8u)2)W^D2BY`hR zcKIs}c5N33?C%0pD!*+=(JuMd76kIfyS@;+W~^0uw`m*3a4Rz^@W>t+Tl+3CwdJ&x z{BK!;W+k#p$O@8GU&Iq*)1QbjbCRUzQxMnk{vxX_8rf~ng-v;Sr<(Q-cIZN;njN4TjGrvQJiH*B@VA&_sQdYm7^OGV$zXI6%Ov)1KgIim&|x__WD=0ZmZ! zZlrs4O1e;Je|bG&hkrb&q%Aixm^O=L2cy;+fMKX8MeEoZX#W;#x&-r;--sG4dMW}6 z9w2K$CafJn#LTNp3+Q=jS_oVG^yyU0#F6j2z+cET1f}a$*v^N}6GdbSz z#fZ=`?Zqi2^yt9P^^3<*kH2o@nu4XnUJ*Ie)=fhg9D}F{xJQlCODw6WLS5eObcL;E zLgqzRJ(&R@3|tLsDe?Cz(trf3syphz%?KZ|bwkefz&D&$m?5jy`m!uB7WRpwjoM`=lhoju!mp(aS1Rg+r z0ol8sl#k$wKL?;Z)jj^d-x97kbC?)79B;Tg6J6IO?%UQ~b3CqpoJImfuz?4w*epWk zY->i^BYlTtETp43E3OS7z!6m-E6LC;a3EELB;2aVFJ~f|gUBl|H(qJ{t3$An zKRUw=D|!&nH4cgI^5f5Zky&0aSwtMSISJX-d2V_%c^OL+MRYO@cj^hDntfsr4Qz8I zVku@b)Xjryd3t18*a;Qcf3sRl8~fZK?y_7ERBo6%YOUvaVkxDu!}6|pa4~jhog2T@ z)3W^fi#_6Squ;H(Loi;)IN_@$;{Z*T2kxip~k<*PFj5&l@_X>C_-Qskat#)!|!{GE^M%E22z! zq+3d)zd4f=m+}=0IOVOzSArV;7{ZGJ%cfJY6Q%~v(i1_iYt~UH1DhH}WF|cTEKkLB zoZ1-5%KlJbX&@j`?-C`$f4JFfPi$u%NLJmHhIQ8PXiFp|cOBCFQn8i}VK1YpHtv@0 zIDhyRr8a-V{>_oK@)l7-ezB?QmhP6h0kkG(*CvmUH|!#lw~eFe-`|JS2_FCf=aY|( z?9=OLjJQ#at1L@8xZE*cDN(Nnra2(< zNxWl-D;-{AaYO zhG}QPqWmtcsglfVAglORz;1cH?@i`U-ERcU4+V=my(h{EVBdVMmcvH|+Oa;dx~2Rx zEVnOk&BbI`)kl9j{D)5i5cGB?EmcEcF1Khj4aqe5{`33_H(O{%>=a8RTYF=wWo|pbWnIljb*Ct1rZ22e)b$m+{3A!# zMA3Jk)vvFJORNY9Kx_Z}Vx_0l9gw$Po$srCDW%fC2x(GYZ*2XQQ&~N6uY6$SEp%B4KOz+pu8KviA$PesztRKS_xk<@ZwvZP}h|{ek?(nMGcV3?Z4;8vHN( zB02ApFCME;@kPi@o#=SAu^#@4yqj8OUJdD}6`fI9AD1`dRj1$*+O2!U_t@A}q@B}9 zsUWdb3~1zanLnN?Bi}W+>{sq9c1XWtQ-t-zb#l4iKlRQT6g1vsk-0>=k^u8L?Q`p` zC#%4vzpZY$wtkmMEv}|+c=0gyl*1jHR&Sk_DvdY4(nf(nQhGy>6MZRP&&Ac=u=y22 zcAG*Rgh+I1CC%6B@v_}g)}aXPgr7j+M+E}928w`625k-5y`SfvC7*9eNaD)db@ZNB ze{w5+oAJ|Vo~zS-$B2Z1HxF~k*+@I5 zO$mc|t~ad&zgm6?4;|+~4yji(5UWSUX%Ux_Lb-NMBLBT~7H#+Mq*Al3Ca8(!zAdva zd69`t&$<39))J0Ma#TSyXZN>%U?}VHE?w$8(tD$AOgoSs`DvV)9GW8q-(+YH58wI% zqz`1J61(3At0y0~nZP0YF;H+f?&Zr%SG&>TMM&Hp$)mk*%5XAq%D7o_g%AhlRh>}THTTN{j6$^g z58vaNQ9{i-V0RDRLa>WzS;$=+g+9H_^jyG~Lid`P)%a!|m)zT<(tEEb%dz-l@gktB z-%SHMPg@k{qi+YHPvgt9d^7&vwwnz&Qa)Qo+y7@b$N@^E1M!Fz+c8Zoe7r&fzaL@+ z=T}_K29px&WOG;O;|62Mpy6?~*mTkS0iaI`%1R<)mRlT9%drkZ7Eb0?K72{nS9I?YA=L2X~aGlX;(`i#Sw~()T5sJjHPqAd27AB1kh1JZqL6kw2HRCDCdOD4Dgt zd}lpUR1e?@JIn~?erc+C^|Y@s2CH;7I z&gsq35XFPM9DlQ^q6Gmv$z*xb?cIlL?@iz1a(k*#m@l9t)A@~QBVaGq<30*M+Cb%2 zG65G|#hic0Fo&~vCAwf_HR5zU(o*ay-XRRAV~jL~z4T#Nm!?KW6xGY@1Jk=D{&UeKHP8AUaz4}0h3XC5c1U>V z?0&5yU)cu>grmpx{}Lp{kWqNWNTI{xRifXl^=6s!v1yiWicz@Wk3OiHg-z?aWW_=W z{FuKAzgv#lVpDa;Q$n^QAkUlkCVpGboAQR`p~F@?0^hHuk-vT3l}6`@3BZ2nwz=X+ z&d&^R%Y_j;Lj}OO(igrn9k4d_LZa%3ItCY|R*Hu<4UG?JudEz_Hl+vBn2P#Xj^Slr z?f(28cceLO7Zf4u)-$?#(8!^+#3|$>^E;BJQrfx}-;%eMo&mqP(>NwJ3rDu%{tKmg za?IB8;$$x79i#$W>V}g+hsx34p}TwN;iXi-qRMJs!ggahr>)4ytD|E0#>xSGN}xmAV{NJ<1P7 zc|1W0!rHhAxnEEf+}LjfCDibceZ`lVPv7v3)U|?NmMa{?jYix*ku*!oGOe^2sc2Cn^=O-I*039CyI70uq%0oB z9W@YvqN!VFnN;tDKC2(^(T9Zc*q3|V_7VYpKr!rnS3JZLdO^^A?G;46R|*G)Pmq54 z=MKm!Di%u{e&l(4d9ki8H3DG=T}mH+z2;>4p};MYw1G%_E;BPh&4)MSUDMYTRc+be z7T8i>50`S2vcy^0l5W!>f2e#u_@cg1Q;D@)&?Ea#W8x;2kIk_d1yS)sxRB4l@~Qyl z3(k4XD%f^j4cA{x+tZ|9GPXT_`uI;CHaatL!g2isrEHvkKkMUcK5GIMiY{HAIem&2 z;Ey+-u!9IItg7}u`&)&mx%M5J@in@sFF*zk-4Ol8>jYWjgRv>hi+)Juv*dgog4;?{h7c5 zg!ZaZ`Q9$GKb(Jf~n zNyD9y$OnZ2;U{; z+*tVawRF}7^uQ=?WyuKyF}3GPXB8FiqPNq!Au4LCZ5GYrr>ur!_-J1+8{?|0WM*3xgb^`b7MyFTWoNV$pUx zkL?CltqKpm33j1HM>ehZ^NjE4;oS2URN_Bf&v^Kg{SOxJ8-L905JDjUS{e!qTuj5! zQ3RJKWVyDJ15y;yiK`v8!*XwuA;vBaQX=cud6SWGot(ac_&@fdY^v)S2V(YI%xo?U zgGC7t;YdO?K9l@R`bv&9J8fC;dz0Nf1vSoUm1`AM`DyxT_+w|9Nl3ysQ;NH}###|f zh)sG&RGddmaExNE$^V*dk0tU5*h7@2-{$%#QI^;d%6$_Y^g#9KakL&7ts80~yD}~e zP04uc`}6gc)PVR7EmfB9qw^HQZACn|I9EtIM|$JAl7rAF?( z=OXN|HY6^ZbLSH^?0dNfXci?1cUr7s&o5{`B`B(e`alBcMo>1PLG6b*S|0nOLth4~ z)+nxpzptz2ZV%)A_;}2koXp-73>hEKv2=K^qsCv28l#=GxGLN@Aj9MxtwDVB{V8^+t6!~dSErh@$XJK9{Ss+=^N*u=U#}?pyy23Zg5GmJ zMI?W2fbxy~Wkv6mu7Dja@3zAPE*O|BNsmC22qcc*pG;l9*msIf~uu|Ne=b z3m08UR{!I5TUF3gjc5LAv%5vu`aHX)!uvh9$kgUf#%dv7A z<+SJ6Q0lDzCJa?UXH6NK<@HFet9;4od;Ez{)O-p5_Je(ZoP_v@%KWx}3~R0{M-0kG z_nG@bs#m6si=b5egiZ6@MB}K4f|8TGMjia6!+X=zsvE0|il$7y{jY@CLz;96@#XH? znTky*JM4V+tuL%`PhRYtpY=Y89gL~(uyXVi$h7`@Iz4J$b2`N|&}aCx+Nx8rzO!75 zqgzN3W1|N+Z$XXxa83~BO%-7JxqYDfc&CH$DER(P9OQZ1aKsI|RFZ&xoltzB$Li&F zKNUnolcZ2}LDa9lQ5_!%maVTyZZJ3Sr)E3)b>1$=nw}O^4So-DWA3`>x?o@g=n{R3 zD=))WK)7g>QTYM7&my1yNYIax;r>a&Ao3Ks6X&n5Yw6Izfy03^dO%bbk+<)sQJ@6A zrEp~fIVTmL-->1G@|KQoy~BV;ys+*1;s?Oz5f4W_Va#cDN}m<)gI}=*D8=kAA2vq#S{(k@&0Clo5b5l*u<=bzEI@w0 zr-2t)j@O(Nz{ga=j{3r5N;)KMg19NNx^F`ePJ$es$5PL3#bnYjY8WUYo=!Fnx<9Kq z8MFOsSB<|e`Civ{zqfs?Ig845+1PuS1?>acf*WCLIkmGcE$3^u1=`4Ri-n!MB=w~- z&h*I^=e}US1lP=>IARdHiNKedt~Q=$p}rescgYs40pY#QD;RB|$}-ee;Zy;5tG z5A?!0OZoLl>uvttRk+F4F*S+^(YG5!N&yFYLCM^{=l0+(XB;#?ChRMj`s3^#ko)a_ z%I@^WsAq6FoXO_0W+7g_T>`e_2lk8hK-DC#2oB-af)2I**&jK^m&4`zvx zP}f@H=}cTMsW*I=jX$_A#!Fj^6o)x&E--a1Bz{d3;v^cVug+_R|ANX#0x2;enrum- zYipEt_6u=__ia)Gz@3~hfk8VDLOv4ZdQ%rEhE6L-5R{YAiUWn;CJH|8`g+6sHJ-w0 zipXwqU2$hRoT1%XlOt`C^N=+b}fgrm0r@qWcp&i#DG z(BM&_FT5S`cc5e0OzQ0(CqkQLUh{oC?>doZfwI4ibLRR$id>N}a!1@p{zOO(#` zw}ae}IkawRyF)JGGVQ`h_YoT(Kgq&zPF~joP7t?3{U~we7v?lboafH#M1a>Ip72+q5;$e<|B&>tdnQocUjOP_IqtV=h(`0ProV3L(`b5$Vd-yZ!w>NcDUcINB@<45 z6b0R54swre{D+dInPk({)1TqN5ygFVSbJ=jOI(zLQk1r}-v_Qj4!LuQQ*rYY-^inh zK@$^(7G$>9FQTAV-%Z~`TR6K(w>WF9m@n?5EKTI~EX(cV($R%`J@7y{V(E^4*0rEp zobRJ&!FE4RmS1&+`w;|If;r(C2uwsrPo^JzX9*8WFsbXD1O4Y2<=rQS|1(|%W<;(j zI3OJ87e$RlAlMq+5&P_IQ=Zd^I@3-YNX`qfF0W+THEQ!lE+zk5>DDpmnCkR0u}W`d z4yvi9oBm;yLsKJR29TS43@dPjjy;GDyEl0dxysGZzH@CBv%!9wE9tl1ACRjMm=-xD z`16y5cQ}b`ad?4fZ_~tv6*c8`_;0?ehww#fHvb_@D4z9nC4+>IF+FgtKWe{7Q{Te( zqf;md$y)wp*d7%9N!~vyUz0%gmxDPdjqg}X>X2OM8&J7{UIQ>kGRWoF!^7%`Ld|-) zQN2%yA|mDei-Jqgb)n|A))X14zxVsB?qEQli--Y>g_z?jr=9Ad%ON2JKu(6SD;7UK z9Jv>M4hN9e5TE&ezYwQcJH^Sx=-q|bQ3Cni&gPIlqu5(G|5yKKL{h%z+o#}jD+Vuf zA>T~uakGMx>*n&Rg)4}`nv7EY94JL;uwHT1u?*=enFb;8xA3HAaa%##>i>0G)AX=$ zON77)4x=Zr4KQCj3DZvFeGAEzZWdCU?EB!7Q?~k zulaG;Y)mw{hPibpe(`v4S^;`RXJ0QSONaQ6l0jf0K#&U6%QnifXN`Y$TvFs+O4n5d zE8b0Z)y-#Q>7;Sam24U;EO?yume0G#LANZS0QnSsJ65{NrIS5mo+T9DFjZuR;oXiW zi|a3+4HXXF?%y^Sj@*PrX?qq7oja2EDVm;f$dqkCtk(#Xx;vrW9<0puo%6HTYN4bT5Y_lz#ELtxAOwwA`-gYZ5 z^jz#Ic+#X-K}K~~8zCN3-S$K(67ZnWCUJA_4DJx$DtQgh;Ek=h_}Lfg!thn1_xufve9h-0qwWhyavy`W_6C99@x)lfK;$pY2I)%VH_x@L4G{Spl*6-E zw3@RH4Eat@m$|oytdtB{1*;pQFlOg;C;`#8EhrtNA29Dw=6X$B4;*@t;4zrPW!vIQ zNywPKrGnGIaR1WoN$D9kQ2uXF!d4pS;}@}ctRTTSV-Mc32Joi%(18Sf1}-4H#MFg- z>uzB#d}+qQLrhy3PZelvMXmQ9$%$L&*=3H$3cZZQ0^*Fy3a6N{w*;5e1r;o$+L&VM zE5E>~;?Tz#&L4p#uxn!)N83K0-?1`C33#goMRD{#3*FGc*s;R^0uk_F<=csmlQNA{ z;R8Yv7w@}{hLFU51rLrc9)!JgPTCvQXZ~LD)#oP1z{{o+Ak!~A@>Vrt4?79*-{u=y z;_xdF)d88TeKanr`+~^tqV#j;7kVd^d4LSmC4gGMA6?kkZKcCxm$btC#Oke3W>W%K> z2E~n+EtNkUp7;9OKMc8_*L3d!xC!8T#XL&Bn=A(LUcQp-B1C8vbs<7XINV3UPt3z-cf9QlT|%> zfbT`gVWK%YWI@gH{&|4ja}@m@gjsm@Yz>d4tpN2~sBO~C$|CcS62c~jfz zWEf0)(yWWa93)!ZEcB-Q0{g?9nL7z?4^g#<>8z4X^7?;0`9ZUM9n8MU^)hroYVS~f z2=@dp!=cbgUqXBrNt5ZNLHDINJPGk~JfDpNP1?~UZ7}Y>kKW^Np3`X&X-Ci5 zaYccFmh?O3J8ohnDI@xDCTY>)*@fJ<12T=>61+opXJ7Qdnfrh^03KQV7X%Hl<0y5u zEf{G#93GzO0>f17SW&%v#;G$wLOVECBA1*olv4P7DAhx(@}H!f&%ScCG`SHP3mbn@wSdi8O@9)I^Z%CNq$3oDcZhlS;wEsg)=U_tIg(aS zOH>IpGZfsZQK&mYXLHybH7UQywIEjs+H42b7ELQ8w(m~tSjEo*5 zyVP3)S~Xk{Q>`9x>I|I%k|fTHoUuKf;p4sck7VY3>P2kE1gYjh0sFDAXVGhChkmFy zpl-jgP-}S{VY}KWRSe$1BTOrEgJ{SwaE7!-tk8m$o*?s|ZrrTT#^|U%w4d|kWBYk? zoMZ6jMS1WbGO^EZ$m$lr#0(wc(D$V>h+2l`UT@vDfwk zk7oN4{}Q2!de|i0H!TySUysMDID^;L)|ICMuqZ^dtIxDevhUUExS0{>B;WmR8MqCs z(yAZeM*qXQOjqnj!xN0`Xe3Lq`aZ>sBy&1)vy*vQDH75Rzbq+A!*3&cZe30c_1<-6MQ@zZhz$6#XV!5}s zA$1@44c8Hh8*|{DxuvXpit3g>f_y;22*H#gx1&~l6N=p;%L9IP#+}K#U|M9Zf=UlA zuFy8aO?&*b*}vLpwFX~Dv5XA+glP{DC7g?hq^KSCf-jQl007vwn-8TQWi-8E0?xy&lv z(C40>(Vw@M(o|2g@GhNKn9g~nz`bMHe}>L&o=Mf?S=W9ma?6Lw#QLe$@eBwYBr(2I za+@#9%fD(2?=I~VXyACvFO)%gmW1th9rk1HK=#VwP37puD4X;--jl|uIW=5`2ZTZ#LQGTC&h`&CU!lGYx-CH+Jxc^b_H7oG7>=Si1T2m(HCdR@UD z8I=Gu!SzeVn@Q`pSI8OgB_fx-WamA23?G&ve|Da`T?X}V^MTiWtY&FKNswZEo)!cE zgP3HJJF;QW_uwmhv>ptT{Uu`I>UnkOqB>y^Nzv#d@cIJij$mP=(;G<+1U|3UyppC` zVbjB(Ang5q3btQ$6JHLMu$WicZ0SatXPNP`=|V01U1~%w@7T|>^2~$k=%t1|XKusD z>S+JRYf{TDKoiJ*x@sDm+xO0h!Zow{NBjqx-(G8AwjolB$TAAY{Ay0-|3W~`AF^(a zOYb-R#$T~S+WkTPVsX=p@i2Nt`rBm{r!rONaZd_g6%dDoXE_a)!G1p2*wWmr<{bMR z&mtULP^{hrP4Y^*>ec$ehOD0Km_vz%XnboO^i&$11VsQ|BHVx-Zq}go2ts0a(cNYF zoV3=W*JzhU^Z7K{?+=s^FlZ`AiTF_8}HnB5o zc_z?XnDvaXg^sZPuax?I-$RY;wg4A~XMVF8KiAP&q-$r{kn(g&U$=B0AX3D1-f8y# z%+iuvre1Pv-&`NW5xHFiXoE?VgCh=jBTw0Z@lsaXc(=jsg&@$|5ZPUXnSt))o0K7E1I~ zdOd7jylz6y66!taYQi=AHco?-B|v(Tkt)JlD$6~`?ft+|D!+e7bDH>(Kl}n-r|#v* zCDp|7OBsMQ%Dty7D2bMnBD@Uei3V%+D}pvaH2R&h3`nsT0~|7_3$-P7)<-1y^3X~I!!ce$oJTqWilzFG5Ow1Cb*R0$D zeXMHt!2N+9Rq!bsxCJrb%v^9541SKA{pJ6|jt2?9e<$hhEGBm8Bvos5y3Xl)6^*VDuSaLWwNn=t zNdCG$^UCPAwzg@-V~@0(JXdZG@rqV?1dLmYU6XhWyb_2gyPe{H$1KRf%pZeDbid^_M}cWOTl_0n-kIa#%@Vc!Dpj)41nLs6Xie^3GC zK(9+6<3|U;>_7x3o1y$kN3mw}BrgKqjL$GH+6;LL+v6 z*Y;bI+h^)g)-n49KV)!LKK_eMfR($`WL{v}h_+H0p{}CC{UcP(A^KM)edHc+&^0un zv7>sUUt2+3_Gc*M>lnd~zlV z-@<*^nX4MzAA*&3W$pC#YcfC-fl?B8wB}5|S>~}5Zsk6U)R`xg(O5ax%lF3mqw~Wq@w7G-{eUU1@0+>LuR>?&|(|k6P!7@{YLrz@w>a1dpm&tTq z0!-zrLM?uoTVzZ{_9Ww~`i*)0C@rd=_mgSWA~O8y2pQ|Xge>#`8(R$p%4B|M=6xD? z#5+JV7B#qyex$J7kSLPep)?+~g?69X1Ff)5Wf6f2<}hGBTHcZJ1rT^3wm0l~59Gek zZ@kR4lxUU4U5z+(^ih1Qgw>tMo7g-L8_a}%#-kfn-%~~%G^@mNpUd||Ah_vE>^%DG z+2yD2W-F4%(_m^a5kDtVn!}xdrVyWfb>;(|qk6@CJw_%M@;SnJJ%qmGPI!g2^qikN zoqbf%=v29%9H?Ako)Wv(jm)b4dsRwyxo5V|g6g9n@0D>^fQ~(2SC-&a1`ji_?UMOzC)E(v_yf4a zspEPn=Q4(Ra>j%AtL?X7S0!A-I!B^1#=u3{pIzN}-~su?w#Fj2_kcJUhv$EfRp*>T zRrrY0O8vEc7ay$@`ILUej&t|y%iRkgND*Lc!&qzqg(2eOy$))|V6J>Q$wSo%nzo4@ z+&kj=_j(%RElMnu%Y=9Y_n!VrdCP#y}bVRi$4v_X2f+jMXzgQ z1dTqoDH|lZ+Su49l)}X$_SQt0*D1M!Ka7hX1%p_{t|B4wOc90RUMnUH%W64}@tiVW zLiPsVlK_CF?DyLzHfJl~nkxP)?t@rkT($5gX&mxe^8LXVWVAdd_oNHD$MI%XC*Nd& z>hg3$AdM_tnjhz!r*dTP)7D?9-wD1=%UV4*zbrimmjiB>e+v0Bd^E9)Z*dQpdoP{> zQ~wS8PPB5B?t36gA2E}B#r%_CywmFZQsC?H!98rQsdj6%Ea_ySq59$LgMcG;`wOHy zT`}s4mNu>$$VH^cgz!#(EA>V2g;yaFda{$o|3$)i7X`eHa{4W~%vd}D_6E_13xE}RYH_ci)wwO2JB>7*JJ@5kABneV)hxBiVuEUyqw z==VSv@AmYl144pF_6B=IO-ztrQ$1cobz*dpka-St@JZrl8y{EDO&-_}{E_Kc0It$- z44V(b(B`Q7iOdU-leMzNIEr@nndKHgju^0Gzz4RPoLh#;NfhqFmUH`rPkM&&hLSiF z#7t%ZF2gs8808hD5QtH_X@lyZqOMF{c6KLp+JU!+z9FXD*etWRcAMCW#ID24oE#3F zKe+=d??8nw0Dj)=Y+KQQZn)qo2ibwIcI*k-80Z~KKoBXSm@|YB5i$J(LM)_7VC8^+ zGP5r(e%4#oG1qtcl&~2d?6x0i--eYxHfPXM$&%FIhd0o0Qj~ZcN<4^g>H5kRXvc$YNI zX$+!(TRmXM%i9ttP*oo_d9T~*`n96xZ-t=b5HGsWWd`U~=c!j!a4AzH4^s3o3?vTv zNVxLf{JY>CwCp_(ed~c%;4valq&t^PUT^nFAEe}9D82MzzX4viv0qJveR!R3AF5Nk z8(oAy076?I8P3O9O1g85ur?qG*i+hX!28@ctw*DBiw*WUr&m;zf^f(ROFt$~T_Wq3 zi4OJPxOiY$lfYi`!g1jhRfp0M<8;t$vm)kYeJg2A3(7hR!`DXLK`9U!mJfn{R#1+g zuV55s*UkK+E)1>$J6o%$zoA4d7;gDsSZ~l$$J^Tf88uaNl>5GY71 zBj0xuyrHl)_<7yj?P9`s#98z znkWyNx;S8tizp!8vQGSi#9M^K%^HJ5*84omejWLyF9sApYZ(I`&D#IDt*Cxzi+#Mw}*U1|bP$jbp0m`nv3o;wp1GjuS{Ob|vx+^9o;~gvJWTgnY6)a{BU}p z@^(wYc>gK8e!PoWs|~`N0OBsl(n``|iNHD}lXmlUZbLd@8&}%kMRVm+H95G?0R~zx zZ7CKxjT%NxvHF*gZ)f~<)BV;&bx_eE;^B{i!bL&>Mx-z$EJRpr*djn1g;)Zs6czjN=^R1*s%H;k&)rCK9ff*N$NCJjXifnx!%5{ggCOSSB%l! z82Eqg)&>8l`TJ{oXAC`-JQ~tdK9P>HY&mn}eH$~OJR-prVWtZh`@nxTJAjDnMKDD; z7twK|SC`s{h%G>$Dp6xH3O>J$Ee~J67j^0>e7U`nQ!RLPIHp#T@4Pe$qR*9gFB=3T z7vn7Df#@`fW)wM=%j96N@2$zt0si-HO63SBSX|@*a($GZKsQmK=Lv_%{d%sWuLC(=2ZX+b2y%IVyjWoucy61;D!|`Q`(}Dacn{-bbw$pa;v++M*JMSS z4f>vIyDsscAvm}Comh;}@d|(%IdD$+_NlTGZ<~dCL@eEb5KekaN6HC5-kd?1V*#GT-etOhP8m3B_sA1VKTcM=uiaK$tRju5BmAFoiBaM?nAYZ|#w&g)Tc z_u(331}?ijulRrNAsWNmtxpFp-*SE}$>U@1RnTOutGZ1UP3%0H%JeapA-pF7MwMk6 zey9E6Gvrg~(TD(Ik$V6Twr6j9A_vXJFaLXdUK zWOucU0qdKt_kd2ei60VW;iqS?@L!&L=xzGns%D-9W=B$c8WaIZA6C0k$`J*jj=~}R<=rO9gv?@9KyaVlUUFRT1RU-*Tf|BjWHennM`99gB`!g2LqNerE!o) z>o$AVk=DZgY7UU74+%Uwg02SS&`$-gs)m}{>6v#dVchXjK7BjtEbBdq9^Wd7&CV;7 zhr(x<9jN8&kG!=Gt>$=uKB0(sYy(7qN_1)f($AWTd^e4nhF3VZ0#X9m@WDd8nWEiz z^3#=N6_aUo6^rM(D!1Fj1%9FO;_i8Dh$qkBiJ~B!9S@9`+pHOB`l9A&i4_B__8lcxb!&zXFRj~|y9K_8 zE0~*7Uh5*5&i|PEU!EwatVdCrX_^S;vmcEa_ELIJiE#?SMLtIy4ujO4>{e0$pv6hs_$V*V8+gCV{+P`%Z8`{g zscA`a#cpt*pc`F*3uZoFf@j=_pg-rr^q|pPP3+bJpa&72^d?9rfBkpv^y|~_^AQ6* zRj!{yPwY$0qlCfc2)Iobe}gz)RjMB z>uu|_@;}%xS}Sk6MkM7l%ycgKm+`=_*^;1+OpLM+vLBwaxoU7W3o5i~vE5E@?Lsy5uUj|g z3bmJ+kwj9V)?#}k|G5T>oQ}`E*VQfp4n-$C$3NkhSEGJi`zZl=t-kPM?mC!qE)eW_ zoD%x86P@qK2mh{?Jk_E1-}}zXu$vOWuBgqYl$JCjeu)KhD!m%iDIO?n|Hj&2IaJ@z z6r_aRmP1n*{9sF(tl+>-a$Mlq-qD{c^I}T3Ec=>3YU9AECF9OHrmwez%4wF1_Q~!9 zE9F`d-`tqun?nZ+@*Q7hB*QoUev&$dpgXzO*)0f^0s7nFi2ump8tIz2R@n9*(ov8; zw_{eVFkoNG9omjKck?h@^ zuTl}g(ufj^SP739jE16lc-igr+Y0EqzB~#vS&OE1e62A)ybbCwhF|^!M^Bc7*P3JD z38ZI=V8yDz<+&U+Efh(JXO8AoS5#L>z9l10T?ck2Lr2d;|&~8dB4VYKN15<^j z*`0H6pgtKFR;H@wQ(AA|qC}vF(Di>q@J{pZAV0-gj41m8xdb|-n^Ek|`mxa9`<}ODXvTkA zeEUI4rXb+h>?xz>k@P7JdIg+64LWT(N{I78?Ap(L<;A05xmCNV=z&b!O!Pol!$t&O z7o1rPKfzR*?wZTT9jeC!H^={ae!M++V)+6SkWL176*F1TyLi$j+-|M0442as33kv{ zvo6bH`&*djFJ^&0c|EGoV|P6)AnZG9ea8eCHI)U`C(+vA?k{$luR;O~5p3rF&8^q} z4`)u2s^>8#HY|oRJsvr>|B5jnuC&|!b9DSV>Lrof)Nm4Y%MJJ6Ou0R1%7Z1d4VFPN zLm~OSIjef+%AVb2Mt~b_Ks}F!v0ZyTLm6wEW~1-JZ48!=S)p6pnH zXbHC`2BQiNTt`83Um9|%>)?CM%_p{4Uq~XTamunRfJ4Y9o}=T;t^M_GP3eW+f0*}x zmoam1$ZX{wTK&xM-YTNQa)3zhME9w*qxZX@Ph|?RoEIi<q6w$3ItYO&TZ?6)k}f6uh^ z1|oLZ7~W~JAYhY-?r}$^db^A`=8p5_6aPCGSJKnrgBr=Pky1 zR!7hH03uZHd)EYdCVzsI0t+h*G?d`AElh-`Qv=5Ek55!ri);m6a_SVX0XwO_;*f;6 zB6+dh1cshNiTgGNOpzC1v6>^85|vxsqWt+{xhKLI5Mf{46&_@Xz}2~p#F_Wr=?!+I zE`e9Fd2CRDzHLE8pT@xt*vDa<0W@9bj^M_G!?w&$svQDj6V)p^q!=OH-l&%-OZk=d z1e9Jf|M$qGtnj%#m3(Z+5AEgF83pWlrVZP`w|L#VV12c3db0H)2dL1+evBd2ndPX#F@FXSoQo128;>)nEzvq6F<1c@M2-68D8N81PUq7=OR|Vi36o$H0yGM8Fr+O?~>x z(GkPZbB5OLj_@~2*xg{Oq7!=38cGhYbcEq3^int#qfghnV!=;t|U4!%LKsr3ptO1gFitxg3=GHMwbo1{Fo9B^s(`HQrG{%Vsrwr6px?+{1Kbvcu z`k&Go-HY0fDhVV3*j($~1J9IS+kRDPkexi@2ul4Xe)Sk}D+0n=SdSkaShMQxfK9jSDNE&%J<9vmdj36Q%S_}2*aoi%gcJe|sxhWa2ia?N=zibZ z$P_+gzov`bK54DgOF7==cltZ|Ag2FdGz9jwGN_I?8P5$!Syy!b8wSsUYj47B7E?cx z$W^crA?tpx5Uy-j(a43FKLILF9&`Vvttq&2VImY^m1k3+3?Ck~NWZm+N}yiL2H8B6 zvxU{E$o%BOD%(Bn zg*o$<1wyjDODXK9tk^o=sLC_|?|cVtqXWl?i1K*_6uxuUyX4#pi}P{?Uc%#rHm;aw zi6_hdpRfnaClXiP{bbj^ReWD4dhsH3VE=k@mqut2Z+eQD(dYS>FR5CimOKOZ48XWD zQVGx_4I%jAvzy$Cmt9vyba5oPve&sgWo?^Tfl!e+0)vx&UYjYGsNktSIf;UdoUJZ= zUo#6qIWq-T4+~9{qw4GAOXR!@Z#d~LX}Q0Go#B~_{fhzcX~Ey}04x)*q!J~immU!< zDSR)M!z_L4mygXhy=QK$p+^q}KQPlOd?G73l`xdoc{e{B&FgMXGY?yx_e&Ft{9QJ3 z#|+%XZ&?@-1cM=rf&>vzVCRW-%uF=s<%{3AR*umd1TE@N?7poShtq$>`+eSS2zF<4 zW$mc-r_M7=&IS+tTpg~jM^p~Ik=V|Xk*Pf|gdT_C;J?Xw=KB{lK0~Z3?O7jy{@Lv03?wecBU0a5b=VH(kL)FJ;!PMhn%)HC?<*px;_YWfrGjC_mh#&|f z6f3(m3%{>=qO2S@j!+?4(A!AnI|vpiE}_#V~`i^VTvKLu^i?a4k6DIg6z)2e{PYMNZuB9 zF%DaGO#`3)wQEX&c_#~Kw+Srz8ffg=gXWdiV%AvMSnUaz@-gue)Wc^Y>ImP3>0{5R zG;-%m)h@AB^N!fjOBSrj z8tvrC73?`+hp9urw*A!W@!Lx|;pJT&vR-=Umb_+%!6WE1_$~Lwu;G93{7&00GhzH7O+2@)DJ4r->MsjGj2qdN_>z({vX3F zOQDL@{F`ESI&j^Ga|P;Av=(LziQD zT!GIT5(o|T!})kEkFrG4H454zvO4#|o{Af?t^83d=%nQ1krD#({0})6M=ZbW%@@)DZ2JFEb&lb2wr$rACsw10*`PsV z+i7eyb{gBZ(WtR)+qSL7YLW>W&zJkz-urpq@6Y_6?V9bJ>pYIN*1j&V8HAxnE88h| zqM|F*!b}R=p^FM<+(ynP@wvzzza???KCFYPY+WKF3+d~B7i#Bxe)F7V10ru4U018e zo2GMPSCYF78zkFpL9(lpDRMum><~5Ly{Nvg4&QZs+prk6(iJn-30Rc8Lp3n1VKw7^ zvRaCsf9U#AaZS`x-T1dizpSYXSnPQ1|FP-GTUFoV|K&t!GimlcNX3}6H(cYwc{YsQ zh8pSG-cx8loUd}`4msjLSZZ?po_z(pGB&vD2~QQ^S+$XOMjJk*gJn3&tsb@(Ba`Rf zM)2Xh&oX5fDSmz0JQj%i$6=kkv!d&#yViX(uF;)e8T#RhB#2oh^nWDm?5xMvWHAUiEcO4qlc9tORrR?UlK%7V)6B zZqeX9E;awMNdH*_mP5!uc%_YbPC^=R1$(;j$Cx2Z9@k5orGP~(N!kD z-c5cXfRk#Lz2DCD^)sCgS z97H(3-P`5k`kY5e^=)u=zN6fA?c8pC-lEgH8Ba8K1+jvWy}$Q7O`P_aB(;?HpM;gy zd);PKf8Eh<-OE`>wV_yiu21=F*Dwlaf0T@ZN9wV;Pa>)RV5+bFd#OUOVtr<&`{L>~ z%dvXsW7hN2p8pb0?iuQPui+cw`;_Vz@jgwZcVzjEeVLiee*P>gC_l0S|2C4PjJ~3Q zPp^s&m{-48R~Ef>Z!msPKH_hpK_X@gE5`X=vPcBQyO@y3Xc+p)TZHwZe37(|I?liA zFFfOWw>Z%u^{?&cgW2##s`r1I|PU2-3m z=JW;AIXB|ZP3$D~nKGhhb;w8~%Nk|wH>FN@d8?niq9|GVd!`i(%2{gGs9{)|T@Q|{ z+}I@rhdYnyL2)h$=ZFH9YZh`x{<|(^5K35j(&(757E%*c62-{~_GOEx%pY-(*RekT zroRaFbm)Vcb}?B_h2w7gW4c#e)H`wHai3g=&pr>aRm+85iv_()D2AsgIHR-uk$^*= z%g)^`RG`pxen*6?vuUWIXyUPQi-KV0QR!PNUsxHdiDxoB+MsN%>j${hoM~Rt!J#fz zq^RW#zt2?0WWFIX-O6p;w`uRrm5kwh`Rtn6`S#nT#;OB9 zn~uE3zO}nDrFG!!&SS>Qc5U2Y>wYD52e0+xdZbTA>J)R!DtOC!h#Y?P{^yF8RPrck z;dKmU>1n2S&<#APfSdlO^EMV#;>>%H+!vLzHu$oPLYm<5`ny8kCZrGa`T)N7OCF#H zzXL2rH`pAXKX?#Io=(EW`z?Fax}>4f$2 z$mwRh7_f{F`BOL3V$V3P-&tycEvkQLQO~uv-htq0_kREmm>&Y`2f#sr*5?o@wr~Z! zsT(ydb7sCH5pSvd2x^IF9D=L3Fl0gB0<1%xQ~WGOX>_1=O2MzL5-21PE{ zqN1YV%}f74=As%T=2`RAIQB*oFje=ZJXVU^hiJms1s*QyQy@|LItoEI zih+kwYqyH+*I6^Sy{-0l^cQjGN2AOTUrLsm)04RZT`pj?%%xAnA2smU6W=Yt*P|Wx zC8Ce@>q&^dBlBB{VCMoi(+MF;CO-1OJC7JW({{LI_Z!(Tl8qyq8KrBQxDG6&gJMl9 z-tDZL^1bOBH}?}xEG5!1=xXNqqT-b3>d{!`X98h)!)I?8&D}M44;_i_o8QG~zO@Ps z5vdx=2TnA9I``$3({0Yfzr4r)Eh6y6wK?O?!L7s1vpxi%mg@+HTby4A=`keG?iAJ) z0*&5kM=Kl`a&6(q>lr4u%U*pajo&%mhI0HAbEre23H%5-y&$lMcWqxKbtwG$+xTS{ zAr2V$;9q3lvs*wXc0SP$!WS8%kvPxr0e`mUIZp|Q-GcS*k3R5hG5=nT(E|6-k@Yz3 zm4V^R9)zj|bCoaWG9rJ>ZCJOQX828$VZH?qGeALq$$6Kb=#@@$FlJNNL@{EIT$7s& z=g(YEj@^ysT{E#`r4=Hbv)XFHZ`_&m{N}9_qxe`oNRpB-W2wwf-H-b4Y59w7gAE9m z|B=COW?0h+uqj7M@zQx6ekEznAZ|t{cwp+#mNH$J+-T9Lw1y-*C2_o5TIei|BT~yd z8!c_#fV^0@vTkDFWZ-#BHS`b$fg|csm1Utzl}1QWtL4MJ)+E{ml>#xE2Whk3eeQ%z zyoD3wLU6*wRv(~njf-=+C;gW>Alre>-BNVKBCa_J;1NSu3UbLqajDNIUiRI85v1r{ z4WOZ{wm)B|@9wPZq(LTFE{V?Ee6T~@5!o*>jVE8g&%C*KrTehq?PRzgqK}6Xcd*)X zJ!J^7y-{;ONC24OGhOo?j)%?NPCPKlrs3HXNdrZ=QrMyBVdVK4MiX(|#kA%jW@qWw zr+`0LAO>T(zSSBj3+=1v+^CP#yN0v+9?|d!7-k#-!Y#o-h~EIdlW*`u&=;L>3|}5_ zeQ@quM;Bw*(Wx0!%b*XbFH!%cZ|Ile1v~f;NqrU}xLaW1v_ob^N3l+s`~v+cffIQb z=Cq?LBMru+R-txb%NmI*3mE(Gi;==r0%26uT83)l{nsKSHGBSGr!jjGtc@mf(A*~d zM~`D)rm-P8E>kUcJiCAjuM_E7;_*`CR)M0gG1IVzp2fpOb2wrKQ{d=e7H zZu&&vPipBH)zeQE1o`iXbig^9(-e3_IoY#p=L}i<_+OvXUz_ph8;WI6I%nO2`dLxD z1CaF$S_~d61AVl~%{uo#N=BmS!fT0)^~ikj?0D-8!=66P=@Xk{{v(V? z=>OYIb`BC1eLCn`_6GzJxgV`Ys_nrn8at#ae{miu0VG=NtLY>jZH^wCpgcvFU|L1s9UQ094iF9)DOXUSYEZauRo;t;=7?hy8}7Pa=G*#@XH zBR}kAcka9kbFY>n^u8+ge>V6*>kxRCERuBhED`PL0izCkn71cJxr$2l zDSZF5d#bBsca-LGkpR4oew7J&>~de2GTN&h=c?^wLbHTl){6)1=EK_>ZEg)qH4R1V z+0}%?r2UTfmrw)Eb04#fI!9{Q5WffLPnz4EpOJP<=w*5VW>~NU8&~1R^GYER88L)^ zo*dn0&4^|8luv2x3`B){iFUZ-G^+^coaXd!maG4UyKu1AoK46g~SSx_m%BH`0oi-P;xA*rW zTD~&PpHe~OzQEEjW=6z7J`cXMTn3l`uUOusKhQk(*Smcrx&Po5e%;X)#cezPQrOxz z!*uSAEfs*)thFhOh6n2vSnZ`=Va;6ZW9RmTo5f@7_tNv{VNC5Bu%yWBJ9Ti2R9k+J z`Or07L~m2N%4rW^SrFARsERa6k(PPstYw02jY}n($9rA7g}2QUoG)3Dx{=J7AAV?B zEg7;JDJE&=Tq4TX&MfX>Jkj8B<>f|Hm`iJZQzMU9Ejxs4>-Q>`3RZvlmW!Vp(?tBu zW-P-g#NVy&1W{FJu*;YYwd!@9$^bT6hnq|$Vyi=(LVX2|dp zBkf0GdtVTmnViT)Mku}JuR;~-)XsmGWY zSJxRM%WwP1c?J;9FmnrZHc-Q^@ke#+GG8iyvB^L4CXmcq>syZVRKaQ_(dAx^0n=#L zQVYpZjbnbMAVPX}N4Oj4UIqjopoJ5~C*O9pY$eHOe$#omEmRPk!u}s}vGc1%7Jq8M zJRuXFPYZs52oP=HA=3vX)cixR>^NO4TZo!tCIT&|e~RwZ>o`m{QwiuxyPou4G@D^Y z86VLU?4K|*{8d#oT}MZe(sp!g_UiBuU-wOOKebci{!D&AR+&5ts5^%3VFmr!CqO#J z#I$n7@oX7@2&$5rXPt1C7)z1-h6?&{6VW18

    L()*dmJ#u2lHGW_w7fL4>%fF%_4r9TXM58NY& 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%0AO&8L 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%0DwxOO`=Ya4NA@nL{0<+hM+mM7Sb~!9 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±8v3HM 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 literal 0 HcmV?d00001 From 6aa257ba34c84e808472f1601f279d001b95c890 Mon Sep 17 00:00:00 2001 From: Bogdan Carpusor Date: Fri, 27 Sep 2024 09:26:47 +0300 Subject: [PATCH 05/33] Add more corrections --- .../create-an-authentication-provider.mdx | 166 ---------- .../add-custom-claims-in-tokens.mdx | 110 +++++- v2/oauth/customizations/custom-ui.mdx | 220 ++++++++++++ v2/oauth/customizations/verify-tokens.mdx | 312 ++++++++++++++++++ .../customizations/working-with-scopes.mdx | 62 +++- v2/oauth/introduction.mdx | 19 +- .../machine-to-machine-authentication.mdx | 13 +- ...ltiple-frontends-with-a-single-backend.mdx | 185 +++++++++-- ...tiple-frontends-with-separate-backends.mdx | 151 ++++++++- v2/oauth/reuse-website-login.mdx | 180 ++++------ v2/src/components/tabs/OAuthBackendTabs.tsx | 2 +- v2/src/components/tabs/OAuthMobileTabs.tsx | 5 +- .../img/oauth/authorization-code-flow.png | Bin 271974 -> 239782 bytes ...frontend-domains-with-a-single-backend.png | Bin 304702 -> 300446 bytes ...rontend-domains-with-separate-backends.png | Bin 389307 -> 381983 bytes .../img/oauth/reuse-web-ui-for-mobile.png | Bin 0 -> 260913 bytes 16 files changed, 1066 insertions(+), 359 deletions(-) delete mode 100644 v2/oauth/create-an-authentication-provider.mdx create mode 100644 v2/static/img/oauth/reuse-web-ui-for-mobile.png diff --git a/v2/oauth/create-an-authentication-provider.mdx b/v2/oauth/create-an-authentication-provider.mdx deleted file mode 100644 index 5e6dc23cb..000000000 --- a/v2/oauth/create-an-authentication-provider.mdx +++ /dev/null @@ -1,166 +0,0 @@ ---- -title: Create an authentication provider -hide_title: true ---- - -import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs" -import TabItem from '@theme/TabItem'; -import CoreInjector from "/src/components/coreInjector" -import FrontendPreBuiltUITabs from "/src/components/tabs/FrontendPreBuiltUITabs" - -# Multiple Frontend Domains Using a Single Backend - -You can use the following guide if you have multiple **`frontend applications`** on different domains, that use the same **`backend service`**. - -Using the actual **OAuth 2.0** terminology, we can say that each **`frontend`** can be considered a [**Client**](/docs/oauth/introduction#client) and the **`backend`** will act as both an [**Authorization Server**](/docs/oauth/introduction#authorization) and a [**Resource Server**](/docs/oauth/introduction#resource-server). - -:::info -This guide assumes that you already have setup and configured **SuperTokens** in your [**Authentication Service**](/docs/oauth/introduction#authentication-service). - -For more information on how to do that please check our [quickstart guide](/docs/thirdparty/introduction). -::: - -## 1. Create the OAuth2 Clients - -For each of your **`frontend`** applications you will have to create a separate [**OAuth2 client**](/docs/oauth/introduction#client). -This can be done by directly calling the **SuperTokens Core** API. - - - -```bash -curl -X POST ^{coreInjector_uri_without_quotes}/recipe/oauth2/admin/clients \ - -H "Content-Type: application/json" \ - -H "api-key: ^{coreInjector_api_key_without_quotes}" \ - -d '{ - "client_name": "", - "response_types": ["code", "id_token"], - "grant_types": ["authorization_code", "refresh_token"], - "redirect_uri": ["https://.com/oauth/callback"] - }' -``` - - - - -- `client_name` - A human-readable name of the client that will be presented to the [**end-user**](/docs/oauth/introduction#authorization) during authorization. -- `response_types` - Specifies the types of responses your client expects from the Authorization Server. - - `code`: Indicates that the [**Client**](/#authorization) will receive an [**Authorization Code**](/#authorization) that will be exchanged for an [**Access Token**](/#authorization). - - `id_token`: Indicates that the [**Client**](/#authorization) expects an [**ID Token**](/#authorization) -- `grant_types` - The grant types that the [**Client**](/#authorization) will use. - - `authorization_code`: Allows exchanging the [**Authorization Code**](/#authorization) for an [**Access Token**](/#authorization). - - `refresh_token`: Allows exchanging the [**Refresh Token**](/#authorization) for a new [**Access Token**](/#authorization). -- `redirect_uri` - A list of URIs to which the [**Authorization Server**](/#authorization) will send the user-agent (browser) after completing the authorization step - -If the creation was successful, the response will return a `201` status code. -The response body will contain a **`client_id`** field which you will need to use in the next steps. - -## 2. Initialize the OAuth2 recipes on the backend - - -In your **`backend`** application you will need to initialize both the **OAuth2Provider** and the **OAuth2Client** recipes. - - - - -```typescript -import supertokens from "supertokens-node"; -import OAuth2Provider from"supertokens-node/recipe/oauth2provider"; -import OAuth2Client from"supertokens-node/recipe/oauth2client"; - -supertokens.init({ - framework: "express", - supertokens: { - connectionURI: "", - apiKey: "", - }, - appInfo: { - appName: "", - apiDomain: "", - websiteDomain: "", - apiBasePath: "/auth", - websiteBasePath: "/auth" - }, - recipeList: [ - OAuth2Provider.init(), - // You will have to initialize the OAuth2Client recipe - // for each of your previously created clients - OAuth2Client.init({ - clientId: '', - oidcDiscoveryEndpoint: 'https:///auth/.well-known/openid-configuration' - }), - ] -}); -``` - - - - - -:::caution - -At the moment we do not have support creating OAuth2 providers in the Go SDK. - -::: - - - - - -:::caution - -At the moment we do not have support creating OAuth2 providers in the Python SDK. - -::: - - - - - -## 3. Initialize the recipe on the Frontend Applications - -:::info - -The `OAuth2Provider` recipe is available, at the moment, only when using the `supertokens-auth-react` package. - -::: - -Initialize the `OAuth2Provider` recipe on the frontend of each of your applications, ensuring you set the `authMode` to `header`. - -```tsx -import OAuth2Provider from "supertokens-auth-react/recipe/oauth2provider"; -import Session from "supertokens-auth-react/recipe/session"; - - -export const SuperTokensConfig = { - appInfo: { - appName: "App Name", - apiDomain: "", - websiteDomain: "", - }, - recipeList: [ - OAuth2Provider.init({ authMode: "header" }), - Session.init(), - ], -}; -``` - -## 4. Update the login flow in your frontend applications - -In your `frontend applications` you will have to add a login action that will direct the user to the authentication page. -You can just use a link for that. The link should be structured like this: - -``` -/auth/oauth/auth?client_id=&redirect_uri= -``` -- `` - The domain of your [**Authentication Service**](/docs/oauth/introduction#authentication-service). -The example assumes that you didn't overwrite the default `apiBasePath`. -If that's the case you will have to replace `/auth` with you custom base path. -- `` - The corresponding client ID based on what you have created in the first step. -- `` - The corresponding redirect URI based on what you have created in the first step. - -## 5. Test the new authentication flow - -With everything set up, you can now test your login flow. -Just use the link that you have created in the previous step and try to access a protected resource. - - diff --git a/v2/oauth/customizations/add-custom-claims-in-tokens.mdx b/v2/oauth/customizations/add-custom-claims-in-tokens.mdx index 78cb7750b..ef5bfc393 100644 --- a/v2/oauth/customizations/add-custom-claims-in-tokens.mdx +++ b/v2/oauth/customizations/add-custom-claims-in-tokens.mdx @@ -3,7 +3,113 @@ title: Add Custom Claims in Tokens hide_title: true --- -# Add custom claims in the ID / access token +import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs" +import TabItem from '@theme/TabItem'; -If you want to properties in the token payloads you can do this by overriding either the `buildIdTokenPayload` or the `buildAccessTokenPayload` functions. +# Add custom claims in the tokens +If you want to add custom properties in the token payloads you can do this by using overrides + + +## Override the OAuth2 Access Token + + + + + + +```typescript +OAuth2Provider.init({ + override: { + functions: (originalImplementation) => ({ + ...originalImplementation, + buildAccessTokenPayload: async (input) => { + const addedInfo: Record = {}; + if (input.scopes.includes("profile")) { + addedInfo.profile = "custom-value"; + } + return { + ...(await originalImplementation.buildAccessTokenPayload(input)), + profile: "custom-value", + }; + }, + }), + }, +}); + +``` + + + + + +:::caution + +At the moment we do not have support creating OAuth2 providers in the Go SDK. + +::: + + + + + +:::caution + +At the moment we do not have support creating OAuth2 providers in the Python SDK. + +::: + + + + + +## Override the ID Token + + + + + +```typescript +OAuth2Provider.init({ + override: { + functions: (originalImplementation) => ({ + ...originalImplementation, + buildIdTokenPayload: async (input) => { + const addedInfo: Record = {}; + if (input.scopes.includes("profile")) { + addedInfo.profile = "custom-value"; + } + return { + ...(await originalImplementation.buildIdTokenPayload(input)), + profile: "custom-value", + }; + }, + }), + }, +}); + +``` + + + + + +:::caution + +At the moment we do not have support creating OAuth2 providers in the Go SDK. + +::: + + + + + +:::caution + +At the moment we do not have support creating OAuth2 providers in the Python SDK. + +::: + + + + diff --git a/v2/oauth/customizations/custom-ui.mdx b/v2/oauth/customizations/custom-ui.mdx index 6e7e4cc10..c5f6c9243 100644 --- a/v2/oauth/customizations/custom-ui.mdx +++ b/v2/oauth/customizations/custom-ui.mdx @@ -3,4 +3,224 @@ title: Implement a Custom UI hide_title: true --- +import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs" +import FrontendCustomUITabs from "/src/components/tabs/FrontendCustomUITabs" +import CoreInjector from "/src/components/coreInjector" +import AppInfoForm from "/src/components/appInfoForm" +import TabItem from '@theme/TabItem'; + # Implement a Custom UI + +This guide will show you how to implement the **OAuth2** functionalities using your own custom UI. + +:::info + +The following instructions assume that you have already have a custom UI setup in your current project. + +If you have skipped this step, please check custom UI our [guides](/docs) based on the authentication methods that you want to use. + +::: + + + + + + +## 1. Configure the authentication routes + +By default, the **Backend SDK** redirects to the following frontend routes based on the specific authentication action: + +- The inital login action is mapped to `^{form_websiteDomain}^{form_websiteBasePath}` (this is also the place where a user ends up after logout) +- The token refresh action is mapped to `^{form_websiteDomain}^{form_websiteBasePath}/try-refresh` +- The logout action is mapped to `^{form_websiteDomain}^{form_websiteBasePath}/logout` + +If you want to change these routes you will have to add a custom override. + + + + + +```typescript + +OAuth2Provider.init({ + override: { + functions: (originalFunctions) => ({ + ...originalFunctions, + getFrontendRedirectionURL: async (input) => { + const websiteDomain = '^{form_websiteDomain}'; + const websiteBasePath = '^{form_websiteBasePath}'; + + if (input.type === "login") { + const queryParams = new URLSearchParams({ + loginChallenge: input.loginChallenge, + }); + if (input.hint !== undefined) { + queryParams.set("hint", input.hint); + } + if (input.forceFreshAuth) { + queryParams.set("forceFreshAuth", "true"); + } + + return `${websiteDomain}${websiteBasePath}?${queryParams.toString()}`; + } else if (input.type === "try-refresh") { + return `${websiteDomain}${websiteBasePath}/try-refresh?loginChallenge=${input.loginChallenge}`; + } else if (input.type === "post-logout-fallback") { + return `${websiteDomain}${websiteBasePath}`; + } else if (input.type === "logout-confirmation") { + return `${websiteDomain}${websiteBasePath}/oauth/logout?logoutChallenge=${input.logoutChallenge}`; + } + }, + }), + }, +}) + +``` + + + + + +:::caution + +At the moment we do not have support creating OAuth2 providers in the Go SDK. + +::: + + + + + +:::caution + +At the moment we do not have support creating OAuth2 providers in the Python SDK. + +::: + + + + + +## 2. Handle the Initial Login Flow + +Now that you know which route gets used for each action you can proceed to the actual frontend implementation. + +In order to handle the initial login state you will have to redirect the user to a specific frontend route. This way the UI will end up rendering the correct authentication forms. + + + + + +```typescript + +// If you want to render additional information while the UI waits fo the redirection URL +// you can use the OAuth2Provider.getLoginChallengeInfo function +async function getInitialRedirectionURL() { + const urlParams = new URLSearchParams(window.location.search); + const loginChallenge = urlParams.get('loginChallenge'); + const redirectionResponse = await OAuth2Provider.getRedirectURLToContinueOAuthFlow({ loginChallenge }); + if (redirectionResponse.status === "OK") { + return redirectionResponse.frontendRedirectTo; + } +} + +``` + + + + + +:::caution + +For mobile apps you will have to reuse the web authentication flow. Check this [guide](/docs/oauth/reuse-website-login) for more information. + +::: + + + + + + + +## 3. Handle Token Refreshing + +On the token refresh route you will have to use the `Session` recipe to perform the refresh action. +Then you can redirect the user to a new page. + + + + + +```typescript + +async function refreshToken() { + await Session.attemptRefreshingSession(); + const urlParams = new URLSearchParams(window.location.search); + const loginChallenge = urlParams.get('loginChallenge'); + const redirectionResponse = await OAuth2Provider.getRedirectURLToContinueOAuthFlow({ loginChallenge }); + if (redirectionResponse.status === "OK") { + window.location.href = redirectionResponse.frontendRedirectTo; + } +} + +``` + + + + + +:::caution + +For mobile apps you will have to reuse the web authentication flow. Check this [guide](/docs/oauth/reuse-website-login) for more information. + +::: + + + + + +## 4. Add the Logout Action + +In order to perform the logout action you should first ask the user for confirmation. +If the confirmation is passed then you can call the recipe function. +Based on the final response you can redirect the user to the provided redirection URL. + + + + + +```typescript + +async function logout() { + const confirmation = confirm("Are you sure that you want to log out?"); + if(!confirmation) return; + + const urlParams = new URLSearchParams(window.location.search); + const logoutChallenge = urlParams.get('logoutChallenge'); + const redirectResponse = await OAuth2Provider.logout({ logoutChallenge }); + window.location.href = redirectResponse.frontendRedirectTo; +} + +``` + + + + + +:::caution + +For mobile apps you will have to reuse the web authentication flow. Check this [guide](/docs/oauth/reuse-website-login) for more information. + +::: + + + + + + + + + diff --git a/v2/oauth/customizations/verify-tokens.mdx b/v2/oauth/customizations/verify-tokens.mdx index f0cf7b96c..550dfcd5b 100644 --- a/v2/oauth/customizations/verify-tokens.mdx +++ b/v2/oauth/customizations/verify-tokens.mdx @@ -3,7 +3,319 @@ title: Verify Tokens hide_title: true --- +import OAuthBackendTabs from "/src/components/tabs/OAuthBackendTabs" +import CoreInjector from "/src/components/coreInjector" +import AppInfoForm from "/src/components/appInfoForm" +import TabItem from '@theme/TabItem'; + # Verify Tokens +In order to check the validity of a token you we recommend using a generic *JSON Object Signing and Encryption* library. + + + + + + + + + +For NodeJS you can use [jose](https://github.com/panva/jose) to verify the token. +Here is an example of how you can do that: + +```typescript +import jose from "jose"; + +async function verifyToken(jwt: string) { + const requiredScope = ""; + const JWKS = jose.createRemoteJWKSet(new URL('^{form_apiDomain}^{form_apiBasePath}jwt/jwks.json')) + + const { payload } = await jose.jwtVerify(jwt, JWKS, { + issuer: '^{form_apiDomain}^{form_apiBasePath}', + audience: '', + requiredClaims: ['stt'] + }); + + if(payload.stt !== 1) return false; + + return payload.scp.includes(requiredScope); +} + +``` + + + + + + +You can use the [jwx](https://github.com/lestrrat-go/jwx) library to verify the token. +Here is an example of how you can do that: + +```go +import ( + "context" + "fmt" + "net/http" + + "github.com/lestrrat-go/jwx/jwt" + "github.com/lestrrat-go/jwx/jwk" +) + +func ValidateToken(token string) bool { + apiDomain := "^{form_apiDomain}" + apiBasePath := "^{form_apiBasePath}" + clientID := "" + + jwksURL := fmt.Sprintf("%s%sjwt/jwks.json", apiDomain, apiBasePath) + jwks, err := jwk.Fetch(context.Background(), jwksURL) + if err != nil { + return false + } + + token, err := jwt.Parse([]byte(jwtString), jwt.WithKeySet(jwks)) + if err != nil { + return false + } + + sst, ok := token.Get("sst") + if !ok || sst != 1 { + return false + } + + scp, ok := token.Get("scp") + if !ok { + return false + } + + scopes, ok := scp.([]interface{}) + if !ok { + return false + } + + for _, scope := range scopes { + if scope, ok := scope.(string); ok && scope == requiredScope { + return true + } + } + + return false; +} +``` + + + + + +You can use the [PyJWT](https://github.com/jpadilla/pyjwt) library to verify the token. +Here is an example of how you can do that: + +```python +import requests +import jwt +from jwt import PyJWKClient + +def validate_token(token): + api_domain = "^{form_apiDomain}" + api_base_path = "^{form_apiBasePath}" + client_id = "" + required_scope = "" + + jwks_url = f"{api_domain}{api_base_path}jwt/jwks.json" + jwks_client = PyJWKClient(jwks_url) + + try: + jwks = jwks_client.get_signing_keys() + decoded = jwt.decode(jwt_str, jwks[0].key, algorithms=['RS256'], audience=client_id, issuer=f"{api_domain}{api_base_path}") + + sst = decoded.get('sst', None) + if stt != 1: + return False + + + scopes = decoded.get('scp', []) + if required_scope not in scopes: + return False + + return True + except Exception as e: + return False + +``` + + + + + +You can use the [Firebase JWT](https://github.com/firebase/php-jwt) library to verify the token. +Here is an example of how you can do that: + +```PHP + +require 'vendor/autoload.php'; + +use Firebase\JWT\JWT; +use Firebase\JWT\Key; + +function validateToken($jwt) { + $apiDomain = "^{form_apiDomain}"; + $apiBasePath = "^{form_apiBasePath}"; + $clientID = ""; + $requiredScope = ""; + + $jwks = json_decode(file_get_contents($jwksUrl), true); + $keys = array_reduce($jwks['keys'], function ($result, $key) { + $result[$key['kid']] = $key; + return $result; + }, []); + + try { + $decoded = JWT::decode($token, new Key($keys[0]['x5c'][0], 'RS256')); + if ($decoded->iss !== $issuer || $decoded->aud !== $audience) { + return false; + } + return $decoded->sst === 1; + } catch (Exception $e) { + return false; + } +} + +``` + + + + + +You can use the [Auth0 JWT](https://github.com/auth0/java-jwt) library to verify the token. +Here is an example of how you can do that: + +```java + +import com.auth0.jwt.JWT; +import com.auth0.jwt.interfaces.DecodedJWT; +import com.auth0.jwt.interfaces.JWTVerifier; +import com.auth0.jwt.JWTVerifier.Base; +import com.auth0.jwt.algorithms.Algorithm; + +import java.net.URL; +import java.util.Map; +import java.io.InputStream; +import java.net.HttpURLConnection; +import java.nio.charset.StandardCharsets; +import java.util.Scanner; + +public class Main { + + private static final String JWKS_URL = "^{form_apiDomain}^{form_apiBasePath}jwt/jwks.json"; + private static final String ISSUER = "^{form_apiDomain}^{form_apiBasePath}"; + private static final String AUDIENCE = ""; + + private static Map fetchJWKS() throws Exception { + URL url = new URL(JWKS_URL); + HttpURLConnection connection = (HttpURLConnection) url.openConnection(); + connection.setRequestMethod("GET"); + + InputStream responseStream = connection.getInputStream(); + Scanner scanner = new Scanner(responseStream, StandardCharsets.UTF_8.name()); + String responseBody = scanner.useDelimiter("\\A").next(); + scanner.close(); + + return JWT.decode(responseBody).getHeader(); + } + + public static boolean validateToken(String token) { + try { + Map jwks = fetchJWKS(); + + Algorithm algorithm = Algorithm.RSA256(jwks.get("x5c"), null); + JWTVerifier verifier = JWT.require(algorithm) + .withIssuer(ISSUER) + .withAudience(AUDIENCE) + .build(); + + DecodedJWT jwt = verifier.verify(token); + return jwt.getClaim("sst").asInt() == 1; + } catch (Exception e) { + return false; + } + } +} +``` + + + + + +You can use the [IdentityModel](https://github.com/IdentityModel/IdentityModel) library to verify the token. +Here is an example of how you can do that: + +```c# + +using System; +using System.Linq; +using Microsoft.IdentityModel.Tokens; +using System.IdentityModel.Tokens.Jwt; +using System.Net.Http; +using System.Threading.Tasks; +using Newtonsoft.Json.Linq; + +class Program +{ + static async bool ValidateToken(string jwtStr) + { + string apiDomain = "^{form_apiDomain}"; + string apiBasePath = "^{form_apiBasePath}"; + string clientId = ""; + string requiredScope = ""; + + HttpClient client = new HttpClient(); + var response = await client.GetStringAsync($"{apiDomain}{apiBasePath}jwt/jwks.json"); + var jwks = new JsonWebKeySet(response); + + var tokenHandler = new JwtSecurityTokenHandler(); + var validationParameters = new TokenValidationParameters + { + ValidIssuer = $"{apiDomain}{apiBasePath}", + ValidAudience = clientId, + IssuerSigningKeys = jwks.Keys + }; + + try + { + SecurityToken validatedToken; + var principal = tokenHandler.ValidateToken(jwtStr, validationParameters, out validatedToken); + var claims = principal.Claims.ToDictionary(c => c.Type, c => c.Value); + + if (!claims.ContainsKey("stt") || claims["stt"] != 1) + { + return false; + } + + var scopes = claims["scp"].Split(" "); + if (!scopes.Contains(requiredScope)) + { + return false; + } + + return true; + } + catch (Exception) + { + return false; + } + } +} + +``` + + + + + + + diff --git a/v2/oauth/customizations/working-with-scopes.mdx b/v2/oauth/customizations/working-with-scopes.mdx index d4a126be7..ceea71f24 100644 --- a/v2/oauth/customizations/working-with-scopes.mdx +++ b/v2/oauth/customizations/working-with-scopes.mdx @@ -3,27 +3,73 @@ title: Working with Scopes hide_title: true --- +import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs" +import TabItem from '@theme/TabItem'; + # Working with Scopes The allowed scopes are set during the creation process of an **OAuth2 Client**. By default, our **OAuth2** implementation adds the following built-in scopes: -- `email`: adds the `email` and `email_verified` claims into the Id Token and the User Info. -- `phoneNumber`: adds the `phoneNumber` and `phoneNumber_verified` claims into the Id Token and the User Info -- `roles`: adds the roles claim into the Id Token and Access Token. +- `email`: adds the `email` and `email_verified` claims into the **ID Token** and the **User Info**. +- `phoneNumber`: adds the `phoneNumber` and `phoneNumber_verified` claims into the **ID Token** and the **User Info** +- `roles`: adds the roles claim into the **ID Token** and Access Token. - This will contain the roles returned by `getRolesForUser` - This only works if the `UserRoles` recipe is initialized -- `permissions`: adds the `permissions` claim into the Id Token and Access Token. +- `permissions`: adds the `permissions` claim into the **ID Token** and Access Token. - This will contain the list of permissions obtained by concatenating the result of `getPermissionsForRole` for all roles returned by `getRolesForUser` - This only works if the `UserRoles` recipe is initialized - + ## Requesting Specific Scopes -The client can request specific scopes by adding `scope` query param to the Authorization URL. -The requested scopes have to be a subset of what is allowed for the client, otherwise the authentication requst will fail. +The client can request specific scopes by adding `scope` query param to the **Authorization URL**. +The requested scopes have to be a subset of what is allowed for the client, otherwise the authentication request will fail. By default all scopes are granted to the client. ## Overriding granted scopes If you want to manually modify the list of scopes that are granted to the client during the authentication flow you can do this by using overrides. -You will have to add a custom implementation for `getConsentRequest` and change the value it returns for `requestedScope`. + + + + + + +```typescript +OAuth2Provider.init({ + override: { + functions: (originalFunctions) => ({ + ...originalFunctions, + getRequestedScopes: async (input) => { + const originallyRequestedScopes = await originalFunctions.getRequestedScopes(input); + const filteredScopes = originallyRequestedScopes.filter((scope) => scope !== "profile"); + return [...filteredScopes, "custom-scope"]; + }, + }), + }, +}); +``` + + + + + +:::caution + +At the moment we do not have support creating OAuth2 providers in the Go SDK. + +::: + + + + + +:::caution + +At the moment we do not have support creating OAuth2 providers in the Python SDK. + +::: + + + + diff --git a/v2/oauth/introduction.mdx b/v2/oauth/introduction.mdx index a787170d9..15448b36c 100644 --- a/v2/oauth/introduction.mdx +++ b/v2/oauth/introduction.mdx @@ -24,13 +24,10 @@ However, there are some custom use cases where you will have to implement a diff For these specific instances we expose recipes that allow you to complete your setup. :::caution -The **OAuth2 recipes** are available only when using the **SuperTokens Managed Service**. This feature is not included in the **Self-Hosted** version. - -Also, the feature at the moment is supported, on the backend, just by the following **SDKs**: -- `supertokens-node` -- All our frontend SDKs - -Additionally, our **OAuth2** implementation does not support magic links based login flows right now. +There are a few limitations with the **OAuth2** recipes: +- It is only available for the **SuperTokens Managed Service**. This feature is not included in the **Self-Hosted** version. +- Only the `supertokens-node` backend SDK supports it as of yet. So if you are using our `golang` or `python` SDK, you will have to wait, or else you could switch to using our node SDK. +- We do not support magic link based login, however, you can switch to `email`/`SMS` **OTP** instead which offers the same level of security. ::: Before we explore the guides let's first recap some common terms and concepts that are the base of the framework. @@ -81,8 +78,7 @@ The **OAuth2 Access Token** is meant to be read and validated only by the [**Res :::info This token is different from the **SuperTokens Session Access Token**. -The latter is used in the **OAuth 2.0** authentication flows when you set the `authMode: 'header'` option in the `Session` recipe. - +The latter is used in the **OAuth 2.0** authentication flows to maintain a session between the **authorization frontend** and the **authorization backend server**. ::: ### OAuth2 Refresh Token @@ -93,8 +89,7 @@ Using the refresh token will not require the user to re-authenticate. :::info This token is different from the **SuperTokens Session Refresh Token**. -The latter is used in the **OAuth 2.0** authentication flows when you set the `authMode: 'header'` option in the `Session` recipe. - +The latter is used in the **OAuth 2.0** authentication flows to maintain a session between the **authorization frontend** and the **authorization backend server**. ::: ### ID Token @@ -128,7 +123,7 @@ Our implementation supports the following flow types: Authorization Code Grant -This flow is best suited for **web applications** where the [**Client**](/#client) can securely store a client secret (for example in the application's backend). +This flow is best suited for scenarios that involve **web applications**. It consists of the following steps: 1. The **Client** redirects the **Resource Owner** to the **Authorization Server’s** authorization endpoint. 2. The **Authorization Server** authenticates the **Resource Owner** and requests their consent for the requested permissions. diff --git a/v2/oauth/machine-to-machine-authentication.mdx b/v2/oauth/machine-to-machine-authentication.mdx index 233eb6c2f..404b90573 100644 --- a/v2/oauth/machine-to-machine-authentication.mdx +++ b/v2/oauth/machine-to-machine-authentication.mdx @@ -30,10 +30,14 @@ This guide assumes that you already have setup and configured **SuperTokens** in For more information on how to do that please check our [quickstart guide](/docs/thirdparty/introduction). ::: + + + + ## 1. Enable the OAuth2 features from the Dashboard You will first have to enable the **OAuth2** features from the **SuperTokens Dashboard**. -1. Open the **SuperTokens Dashboard** on the main page +1. Open the **SuperTokens Dashboard** 2. Click on the **Enabled Paid Features** button 3. Click on **Managed Service** 4. Check the **OAuth 2.0** option @@ -41,6 +45,8 @@ You will first have to enable the **OAuth2** features from the **SuperTokens Das Now you should be able to use the OAuth2 recipes in your applications. + + ## 2. Create the OAuth2 Clients @@ -61,6 +67,7 @@ This can be done by directly calling the **SuperTokens Core** API. # Adjust the client_name based on that curl -X POST ^{coreInjector_uri_without_quotes}/recipe/oauth2/admin/clients \ -H "Content-Type: application/json" \ + -H "api-key: ^{coreInjector_api_key_without_quotes}" \ -d '{ "tokenEndpointAuthMethod": "none", "client_name": "", @@ -82,7 +89,7 @@ If the creation was successful, the API will return a response that looks like t "client_id": "", "client_secret": "", "callback_urls": [], - "authorize_url": "^{form_apiDomain}/^{form_apiBasePath}/oauth/authorize", + "authorize_url": "^{form_apiDomain}^{form_apiBasePath}oauth/authorize", } ``` @@ -175,7 +182,7 @@ Now that you have an **OAuth2 Access Token** you can use it when communicating w Just keep in mind to generate a new one when it expires. The service that will receive the request which includes the **OAuth2 Access Token** will have to verify it. -To see a detailed example of how to do this please check our [separate guide](/docs/oauth/customizations/verfiy-tokens). +To see a detailed example of how to do this please check our [separate guide](/docs/oauth/customizations/verify-tokens). diff --git a/v2/oauth/multiple-frontends-with-a-single-backend.mdx b/v2/oauth/multiple-frontends-with-a-single-backend.mdx index c69d06670..13cec6353 100644 --- a/v2/oauth/multiple-frontends-with-a-single-backend.mdx +++ b/v2/oauth/multiple-frontends-with-a-single-backend.mdx @@ -4,13 +4,14 @@ hide_title: true --- import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs" +import {Question, Answer}from "/src/components/question" import OAuthFrontendTabs from "/src/components/tabs/OAuthFrontendTabs" import OAuthBackendTabs from "/src/components/tabs/OAuthBackendTabs" import CoreInjector from "/src/components/coreInjector" import AppInfoForm from "/src/components/appInfoForm" import TabItem from '@theme/TabItem'; -# Multiple Frontend Domains Using a Single Backend +# Multiple Frontend Domains with a Common Backend You can use the following guide if you have multiple **`frontend applications`** on different domains, that use the same **`backend service`**. @@ -21,14 +22,14 @@ Using the actual **OAuth 2.0** terminology, we can say that each **`frontend`** The authentication flow will work in the following way: -1. User accesses the `frontend` app -2. The application `frontend` redirects the user to the `backend` authentication endpoint. -3. The `backend` redirects the user the [**Authorization Service**](/docs/oauth/introduction#authorization-service) login UI. -4. User completes the login attempt -5. The [**Authorization Service**](/docs/oauth/introduction#authorization-service) backend redirects the user to the backend `callback URL`. -6. The `backend` uses the callback URL information to request a **SuperTokens Session Access Token** from the [**Authorization Service**](/docs/oauth/introduction#authorization-service). -7. The `backend` sends the authentication cookie back to the `frontend`. -8. The `frontend` uses the new cookie to access protected resources from the `backend`. +1. The User accesses the `frontend` app + - The application `frontend` redirects the user to [**Authorization Service**](/docs/oauth/introduction#authorization-service) login UI. + - The [**Authorization Service**](/docs/oauth/introduction#authorization-service) backend redirects the user to the login UI +2. The User completes the login attempt + - The [**Authorization Service**](/docs/oauth/introduction#authorization-service) backend redirects the user to the `callback URL`. +3. The User accesse the callback URL + - The `frontend` uses the callback URL information to obtain a **OAuth2 Access Token** from the [**Authorization Service**](/docs/oauth/introduction#authorization-service). + - The `frontend` exchanges the **OAuth2 Access Token** for a **SuperTokens Session Access Token**. :::info This guide assumes that you already have setup and configured **SuperTokens** in your [**Authorization Service**](/docs/oauth/introduction#authorization-service). @@ -36,10 +37,14 @@ This guide assumes that you already have setup and configured **SuperTokens** in For more information on how to do that please check our [quickstart guide](/docs/thirdparty/introduction). ::: + + + + ## 1. Enable the OAuth2 features from the Dashboard You will first have to enable the **OAuth2** features from the **SuperTokens Dashboard**. -1. Open the **SuperTokens Dashboard** on the main page +1. Open the **SuperTokens Dashboard** 2. Click on the **Enabled Paid Features** button 3. Click on **Managed Service** 4. Check the **OAuth 2.0** option @@ -47,6 +52,8 @@ You will first have to enable the **OAuth2** features from the **SuperTokens Das Now you should be able to use the OAuth2 recipes in your applications. + + ## 2. Create the OAuth2 Clients @@ -66,17 +73,16 @@ This can be done by directly calling the **SuperTokens Core** API. # Adjust the client_name and redirect_uri based on that curl -X POST ^{coreInjector_uri_without_quotes}/recipe/oauth2/admin/clients \ -H "Content-Type: application/json" \ + -H "api-key: ^{coreInjector_api_key_without_quotes}" \ -d '{ - "tokenEndpointAuthMethod": "none", "client_name": "", "response_types": ["code", "id_token"], "grant_types": ["authorization_code", "refresh_token"], + "tokenEndpointAuthMethod": "none", "redirect_uri": ["https:///oauth/callback"] }' ``` - - - `client_name` - A human-readable name of the client that will be used for identification. - `response_types` - Specifies the types of responses your client expects from the [**Authorization Server**](/docs/oauth/introduction#authorization-server). Most of the time, you would need the following two to be present: - `code`: Indicates that the [**Client**](/docs/oauth/introduction#client) will receive an **Authorization Code** that will be exchanged for an [**OAuth2 Access Token**](/docs/oauth/introduction#oauth2-access-token). @@ -95,8 +101,8 @@ If the creation was successful, the API will return a response that looks like t "client_id": "", "client_secret": "", "callback_urls": ["https:///oauth/callback"], - "authorize_url": "^{form_apiDomain}/^{form_apiBasePath}/oauth/authorize", - "token_fetch_url": "^{form_apiDomain}/^{form_apiBasePath}/oauth/token" + "authorize_url": "^{form_apiDomain}^{form_apiBasePath}oauth/authorize", + "token_fetch_url": "^{form_apiDomain}^{form_apiBasePath}oauth/token" } ``` @@ -134,6 +140,7 @@ import OAuth2Client from "supertokens-node/recipe/oauth2client"; OAuth2Provider.init(), OAuth2Client.init({ // Use the values returned from the previous client creation step + // Include all the clients that you have created in the previous step providerConfigs: [{ "clientId": "", "clientSecret": "", @@ -180,25 +187,56 @@ all the steps that you have to take into account. -Update the `SuperTokensConfig` variable to adjust to the new flow. +1. Update the `SuperTokensConfig` variable to include the `OAuth2Provider` recipe. -1. Add the import statement for the recipe. +- Add the import statement for the new recipe. ```typescript import OAuth2Provider from "supertokens-auth-react/recipe/oauth2provider"; ``` -2. Update the list of recipes to also include the new initialization. +- Update the list of recipes to also include the new initialization. ```tsx OAuth2Provider.init() ``` -3. Update the **Session** recipe initialization to use `header` authentication. + +2. Update the **Session** recipe initialization to use `header` authentication. ```tsx Session.init({ authMode: "header" }) ``` + +3. Include the pre built UI in the rendering tree. + + + + + +- Add the import statement for the pre built UI component. + +```typescript +import OAuth2ProviderPreBuiltUI from "supertokens-auth-react/recipe/oauth2provider/prebuiltui"; +``` + +- Update the `getSuperTokensRoutesForReactRouterDom` function call to include the `OAuth2ProviderPreBuiltUI` component. + + + + + +- Add the import statement for the pre built UI component. + +```typescript +import OAuth2ProviderPreBuiltUI from "supertokens-auth-react/recipe/oauth2provider/prebuiltui"; +``` + +- Update the `getRoutingComponent` function call to include the `OAuth2ProviderPreBuiltUI` component. + + + + @@ -270,17 +308,114 @@ Session.init({ authMode: "header" }) ## 4. Update the login flow in your frontend applications -In your `frontend` applications you will have to add a login action that will direct the user to the authentication page. +In your each of your `frontend` applications you will have setup the authentication flow. + +### 1. Setup SuperTokens Session Management + +First, you will have to configure the **SuperTokens Session Management** recipe. +There's a thorough guide on how to do this [here](/docs/session/quick-setup/frontend). +Just follow the steps described there and then return to this page. + + +### 2. Configure header based authentication + +We need to update the `Session.init` call to use header based authentication. +This has to be done because each of your `frontend` applications will act as a third party domain to the `backend`. +So we can't rely on `cookie` based authentication since some browsers do not allow third party cookies. + +```typescript +Session.init({ + // ... + authMode: "header" +}) +``` + +### 3. Use a generic OAuth2 library to initiate the login flow + + + + + +We recommend using the [react-oauth2-pkce](https://github.com/joegasewicz/react-oauth2-pkce) library. +Just follow the instructions from the library's page. +The configuration parameters can be determined based on the response that we received on **step 2**, when we created the **OAuth2 Client**. -The user should first be redirected to the `backend` login endpoint. -There the `backend` will redirect the user to the actual [**Authorization Service**](/docs/oauth/introduction#authorization-service) login UI. -After the user has logged in they will be redirected to the `backend` callback URL. -Then the authentication session will be created and the `backend` will send it to the user agent as a cookie. +- `authorizationEndpoint` corresponds to `authorize_url` +- `tokenEndpoint` corresponds to `token_fetch_url` +- `clientID` corresponds to `client_id` +- `redirectUri` corresponds to a value from `callback_urls` +- `scope` corresponds to `scope` + + + + + +We recommend using the [angular-oauth2-oidc](https://github.com/manfredsteyer/angular-oauth2-oidc) library. +Just follow the instructions escribed [here](https://github.com/manfredsteyer/angular-oauth2-oidc?tab=readme-ov-file#logging-in). +The configuration parameters can be determined based on the response that we received on **step 2**, when we created the **OAuth2 Client**. + +- `issuer` corresponds to the endpoint of the **Authorization Service** `^{form_apiDomain}^{form_apiBasePath}` +- `clientID` corresponds to `client_id` +- `redirectUri` corresponds to a value from `callback_urls` +- `scope` corresponds to `scope` + + + + + +We recommend using the [oidc-client-ts](https://github.com/authts/oidc-client-ts?tab=readme-ov-file) library. +Just follow the instructions described [here](https://github.com/authts/oidc-client-ts/blob/main/docs/protocols/authorization-code-grant-with-pkce.md). +The configuration parameters can be determined based on the response that we received on **step 2**, when we created the **OAuth2 Client**. + + + + + +### 4. Complete the final token exchange + +After you have obtained the **OAuth2 Access Token** you will have to exchange it for a **SuperTokens Session Access Token**. + +To do this you will have to call the **Authorization Service** backend API in the following way. + +```typescript + +// This should be called after the Authorization Server has redirected the user to a Redirect URI +// If the function is successful (returns true), you should redirect the user to a protected route +async function exchangeTokens(oauth2ClientId: string, oauth2RedirectURI: string) { + const params = new URLSearchParams(window.location.search); + if (params.get("code") === null || params.get("state") === null) return false; + + const state = params.get("state"); + const savedInfo = localStorage.getItem(`oidc.${state}`); + if (!savedInfo) return false; + const { id, code_verifier } = JSON.parse(savedInfo); + if (id !== state) return false; + + const res = await fetch(`^{form_apiDomain}^{form_apiBasePath}oauth/client/signin`, { + method: "POST", + headers: { + "Content-Type": "application/json", + }, + body: JSON.stringify({ + clientId: oauth2ClientId, + redirectURIInfo: { + redirectURI: oauth2RedirectURI, + redirectURIQueryParams: Object.fromEntries(params.entries()), + pkceCodeVerifier: code_verifier, + }, + }), + }); + + if(!res.ok) return false; + const data = await res.json(); + return data.status === "OK"; +} +``` ## 5. Test the new authentication flow With everything set up, you can now test your login flow. -Just use the flow that you have created in the previous step check if the authentication flow completes wihtout any issues. +Just use the setup that you have created in the previous step check if the authentication flow completes wihtout any issues. diff --git a/v2/oauth/multiple-frontends-with-separate-backends.mdx b/v2/oauth/multiple-frontends-with-separate-backends.mdx index 15d2e0c02..45d852e1d 100644 --- a/v2/oauth/multiple-frontends-with-separate-backends.mdx +++ b/v2/oauth/multiple-frontends-with-separate-backends.mdx @@ -4,6 +4,7 @@ hide_title: true --- import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs" +import {Question, Answer}from "/src/components/question" import OAuthFrontendTabs from "/src/components/tabs/OAuthFrontendTabs" import OAuthBackendTabs from "/src/components/tabs/OAuthBackendTabs" import CoreInjector from "/src/components/coreInjector" @@ -22,16 +23,18 @@ Note that if the *frontends* and *backends* are in different *sub domains*, you The authentication flow will work in the following way: -1. User accesses the `frontend` app -2. The application `frontend` calls a login endpoint on the `backend` application. -3. The `backend` application generates an `authorization` URL to the [**Authorization Service**](/docs/oauth/introduction#authorization-service) and redirects the user to it. -4. The [**Authorization Service**](/docs/oauth/introduction#authorization-service) backend redirects the user to the login UI -5. User completes the login attempt -6. The [**Authorization Service**](/docs/oauth/introduction#authorization-service) backend redirects the user to a `callback URL` that includes the **Authorization Code**. -7. The **Authentication Code** gets sent to the application `backend` when the user agent accesses the callback URL -8. The `backend` exchanges the **Authentication Code** for an [**OAuth2 Access Token**](/docs/oauth/introduction#oauth2-access-token) -9. The `backend` saves the received token in a server session and sends it back to the `frontend` as a cookie. -10. The `frontend` uses the new cookie to access protected resources from the `backend`. +1. The User accesses the `frontend` app + - The application `frontend` calls a login endpoint on the `backend` application. + - The `backend` application generates an `authorization` URL to the [**Authorization Service**](/docs/oauth/introduction#authorization-service) and redirects the user to it. + - The [**Authorization Service**](/docs/oauth/introduction#authorization-service) backend redirects the user to the login UI +2. The User completes the login attempt + - The [**Authorization Service**](/docs/oauth/introduction#authorization-service) backend redirects the user to a `callback URL` that includes the **Authorization Code**. +3. The User accesse the callback URL + - The **Authentication Code** gets sent to the application `backend` + - The `backend` exchanges the **Authentication Code** for an [**OAuth2 Access Token**](/docs/oauth/introduction#oauth2-access-token) + - The `backend` saves the received token in a server session and sends it back to the `frontend` as a cookie. + +The `frontend` can now use the new cookie to access protected resources from the `backend`. :::info This guide assumes that you already have setup and configured **SuperTokens** in your [**Authorization Service**](/docs/oauth/introduction#authorization-service). @@ -39,10 +42,14 @@ This guide assumes that you already have setup and configured **SuperTokens** in For more information on how to do that please check our [quickstart guides](/docs/guides). ::: + + + + ## 1. Enable the OAuth2 features from the Dashboard You will first have to enable the **OAuth2** features from the **SuperTokens Dashboard**. -1. Open the **SuperTokens Dashboard** on the main page +1. Open the **SuperTokens Dashboard** 2. Click on the **Enabled Paid Features** button 3. Click on **Managed Service** 4. Check the **OAuth 2.0** option @@ -50,6 +57,8 @@ You will first have to enable the **OAuth2** features from the **SuperTokens Das Now you should be able to use the OAuth2 recipes in your applications. + + ## 2. Create the OAuth2 Clients @@ -68,8 +77,8 @@ This can be done by directly calling the **SuperTokens Core** API. # Adjust the client_name and redirect_uri based on that curl -X POST ^{coreInjector_uri_without_quotes}/recipe/oauth2/admin/clients \ -H "Content-Type: application/json" \ + -H "api-key: ^{coreInjector_api_key_without_quotes}" \ -d '{ - "tokenEndpointAuthMethod": "none", "client_name": "", "response_types": ["code", "id_token"], "grant_types": ["authorization_code", "refresh_token"], @@ -77,6 +86,12 @@ curl -X POST ^{coreInjector_uri_without_quotes}/recipe/oauth2/admin/clients \ }' ``` +:::info + +If you want to use an authentication flow that relies on the [**PKCE**](/docs/oauth/introduction#pkce) you will have to set the following parameter in the request body `"tokenEndpointAuthMethod": "none"`. + +::: + - `client_name` - A human-readable name of the client that will be used for identification. @@ -97,8 +112,8 @@ If the creation was successful, the API will return a response that looks like t "client_id": "", "client_secret": "", "callback_urls": ["https:///oauth/callback"], - "authorize_url": "^{form_apiDomain}/^{form_apiBasePath}/oauth/auth", - "token_fetch_url": "^{form_apiDomain}/^{form_apiBasePath}/oauth/token" + "authorize_url": "^{form_apiDomain}^{form_apiBasePath}oauth/auth", + "token_fetch_url": "^{form_apiDomain}^{form_apiBasePath}oauth/token" } ``` @@ -179,19 +194,49 @@ all the steps that you have to take into account. -Update the `SuperTokensConfig` variable to include the `OAuth2Provider` recipe. +1. Update the `SuperTokensConfig` variable to include the `OAuth2Provider` recipe. -1. Add the import statement for the recipe. +- Add the import statement for the new recipe. ```typescript import OAuth2Provider from "supertokens-auth-react/recipe/oauth2provider"; ``` -2. Update the list of recipes to also include the new initialization. +- Update the list of recipes to also include the new initialization. ```tsx OAuth2Provider.init() ``` + +2. Include the pre built UI in the rendering tree. + + + + + +- Add the import statement for the pre built UI component. + +```typescript +import OAuth2ProviderPreBuiltUI from "supertokens-auth-react/recipe/oauth2provider/prebuiltui"; +``` + +- Update the `getSuperTokensRoutesForReactRouterDom` function call to include the `OAuth2ProviderPreBuiltUI` component. + + + + + +- Add the import statement for the pre built UI component. + +```typescript +import OAuth2ProviderPreBuiltUI from "supertokens-auth-react/recipe/oauth2provider/prebuiltui"; +``` + +- Update the `getRoutingComponent` function call to include the `OAuth2ProviderPreBuiltUI` component. + + + + @@ -246,6 +291,10 @@ The configuration parameters can be determined based on the response that we rec - `callbackURL` corresponds to a value from `callback_urls` - `scope` corresponds to `scope` + +Make sure that you expose an endpoint that will call `passport.authenticate('oauth2')`. +This way the user will end up accessing the actual login page served by the **Authorization Service**. + @@ -253,6 +302,16 @@ The configuration parameters can be determined based on the response that we rec You can use the [OAuth2](https://pkg.go.dev/golang.org/x/oauth2) library. Just follow these [instructions](https://golang.org/pkg/golang.org/x/oauth2/#example-Config-RequestToken) and implement it in your `backend`. +The configuration parameters can be determined based on the response that we received on **step 2**. +- `ClientID` corresponds to `client_id` +- `ClientSecret` corresponds to `client_secret` +- `Scopes` corresponds to `scope` +- `Endpoint.AuthURL` corresponds to `authorize_url` +- `Endpoint.TokenURL` corresponds to `token_fetch_url` + +Make sure that you expose an endpoint that will redirect to the authentication URL obtained from calling `AuthCodeURL`. +This way the user will end up accessing the actual login page served by the **Authorization Service**. + @@ -261,8 +320,64 @@ Just follow these [instructions](https://golang.org/pkg/golang.org/x/oauth2/#exa You can use the [AuthLib](https://docs.authlib.org/) library. Just follow these [instructions](https://docs.authlib.org/en/latest/client/oauth2.html) and implement it in your `backend`. +The configuration parameters can be determined based on the response that we received on **step 2**. +- `client_id` corresponds to `client_id` +- `client_secret` corresponds to `client_secret` +- `scope` corresponds to `scope` +- `authorization_endpoint` corresponds to `authorize_url` +- `token_endpoint` corresponds to `token_fetch_url` + +Make sure that you expose an endpoint that will redirect to the authentication URL obtained from calling `create_authorization_url`. +This way the user will end up accessing the actual login page served by the **Authorization Service**. + + + + + + +You can use the [League OAuth2 Client](https://github.com/thephpleague/oauth2-client) library. +Just follow these [instructions](https://oauth2-client.thephpleague.com/usage/) and implement it in your `backend`. + +The configuration parameters can be determined based on the response that we received on **step 2**. +- `clientId` corresponds to `client_id` +- `clientSecret` corresponds to `client_secret` +- `redirectUri` corresponds to a value from `callback_urls` +- `urlAuthorize` corresponds to `authorize_url` +- `urlAccessToken` corresponds to `token_fetch_url` + +Make sure that you expose an endpoint that will redirect to the authentication URL obtained from calling `getAuthorizationUrl`. +This way the user will end up accessing the actual login page served by the **Authorization Service**. + + + +You can use the [Spring Security](https://github.com/spring-projects/spring-security) library. +Just follow these [instructions](https://docs.spring.io/spring-security/reference/servlet/oauth2/index.html#oauth2-client-log-users-in) and implement it in your `backend`. + +The configuration parameters can be determined based on the response that we received on **step 2**. + +- `client-id` corresponds to `client_id` +- `client-secret` corresponds to `client_secret` +- `scope` corresponds to `scope` +- `issuer-uri` corresponds to `^{form_apiDomain}^{form_apiBasePath}` + + + + + + +You can use the [IdentityModel](https://github.com/IdentityModel/IdentityModel) library. +Just follow these [instructions](https://identitymodel.readthedocs.io/en/latest/client/token.html#requesting-a-token-using-the-authorization-code-grant-type) and implement it in your `backend`. + +The configuration parameters can be determined based on the response that we received on **step 2**. + +- `Address` corresponds to `^{form_apiDomain}^{form_apiBasePath}` +- `ClientId` corresponds to `client_id` +- `ClientSecret` corresponds to `client_secret` +- `RedirectUri` corresponds to a value from `callback_urls` + + @@ -279,7 +394,7 @@ Then the authentication session will be created and the `backend` will send it t ## 6. Test the new authentication flow With everything set up, you can now test your login flow. -Just use the flow that you have created in the previous step check if the authentication flow completes wihtout any issues. +Just use the setup that you have created in the previous step check if the authentication flow completes wihtout any issues. diff --git a/v2/oauth/reuse-website-login.mdx b/v2/oauth/reuse-website-login.mdx index cfe1546ed..745d06dca 100644 --- a/v2/oauth/reuse-website-login.mdx +++ b/v2/oauth/reuse-website-login.mdx @@ -4,6 +4,7 @@ hide_title: true --- import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs" +import {Question, Answer}from "/src/components/question" import OAuthFrontendTabs from "/src/components/tabs/OAuthFrontendTabs" import OAuthBackendTabs from "/src/components/tabs/OAuthBackendTabs" import OAuthMobileTabs from "/src/components/tabs/OAuthMobileTabs" @@ -18,7 +19,7 @@ This pattern is useful if you want to make use of the same web authentication ex The flow will allow you to save develpoment time but you will have to keep in mind that it will not involve a native login experience. Users will be directed to a separate browser page where they will complete the authentication flow. -Client Credentials Grant +Reuse website login for desktop and mobile apps The authentication flow will work in the following way: @@ -36,10 +37,14 @@ This guide assumes that you already have setup and configured **SuperTokens** in For more information on how to do that please check our [quickstart guides](/docs/guides). ::: + + + + ## 1. Enable the OAuth2 features from the Dashboard You will first have to enable the **OAuth2** features from the **SuperTokens Dashboard**. -1. Open the **SuperTokens Dashboard** on the main page +1. Open the **SuperTokens Dashboard** 2. Click on the **Enabled Paid Features** button 3. Click on **Managed Service** 4. Check the **OAuth 2.0** option @@ -47,6 +52,8 @@ You will first have to enable the **OAuth2** features from the **SuperTokens Das Now you should be able to use the OAuth2 recipes in your applications. + + ## 2. Create the OAuth2 Clients @@ -67,15 +74,22 @@ This can be done by directly calling the **SuperTokens Core** API. # Adjust the client_name and redirect_uri based on that curl -X POST ^{coreInjector_uri_without_quotes}/recipe/oauth2/admin/clients \ -H "Content-Type: application/json" \ + -H "api-key: ^{coreInjector_api_key_without_quotes}" \ -d '{ - "tokenEndpointAuthMethod": "none", "client_name": "", "response_types": ["code", "id_token"], "grant_types": ["authorization_code", "refresh_token"], + "tokenEndpointAuthMethod": "none", "redirect_uri": ["https:///oauth/callback"] }' ``` +:::info + +If you want to use an authentication flow that relies on the [**PKCE**](/docs/oauth/introduction#pkce) you will have to set the following parameter in the request body `"tokenEndpointAuthMethod": "none"`. + +::: + - `client_name` - A human-readable name of the client that will be used for identification. - `response_types` - Specifies the types of responses your client expects from the [**Authorization Server**](/docs/oauth/introduction#authorization-server). Most of the time, you would need the following two to be present: - `code`: Indicates that the [**Client**](/docs/oauth/introduction#client) will receive an **Authorization Code** that will be exchanged for an [**OAuth2 Access Token**](/docs/oauth/introduction#oauth2-access-token). @@ -93,8 +107,8 @@ If the creation was successful, the API will return a response that looks like t "client_name": "", "client_id": "", "callback_urls": ["https:///oauth/callback"], - "authorize_url": "^{form_apiDomain}/^{form_apiBasePath}/oauth/authorize", - "token_fetch_url": "^{form_apiDomain}/^{form_apiBasePath}/oauth/token" + "authorize_url": "^{form_apiDomain}^{form_apiBasePath}oauth/authorize", + "token_fetch_url": "^{form_apiDomain}^{form_apiBasePath}oauth/token" } ``` @@ -106,150 +120,76 @@ In the next steps we will use the values to complete several configurations. ::: -## 3. Set Up your Authorization Service - -### Configure the Authorization Service Backend - -In your [**Authorization Service**](/docs/oauth/introduction#authorization-service) you will need to initialize the **OAuth2Provider** recipe. -The recipe will expose the endpoints needed for enabling the [**OAuth 2.0**](/docs/oauth/introduction#oauth-20) flow. - - - - - -Update the `supertokens.init` call to include the `OAuth2Provider` recipe. - -1. Add the import statement for the recipe. - -```typescript -import OAuth2Provider from "supertokens-node/recipe/oauth2provider"; -``` - -2. Update the list of recipes with the new initialization step. - -```tsx -OAuth2Provider.init() -``` - - - - - -:::caution - -At the moment we do not have support creating OAuth2 providers in the Go SDK. - -::: - - - - - -:::caution - -At the moment we do not have support creating OAuth2 providers in the Python SDK. - -::: - - - - - - -### Configure the Authorization Service Frontend - - -Initialize the `OAuth2Provider` recipe on the frontend of your **Authorization Service**. +## 3. Make sure that you have properly configured the Authorization Service -:::info - -If you want to use your own custom UI check our [separate guide](/docs/oauth/customizations/custom-ui) that explains -all the steps that you have to take into account. +If you have not set up the [**Authorization Service**](/docs/oauth/introduction#authorization-service) yet, please check one of the previous guides based whether you use multiple backend service: +- [Multiple Backends Setup](/docs/oauth/multiple-frontends-with-separate-backends) +- [Single Backends Setup](/docs/oauth/multiple-frontends-with-a-single-backend) -::: - +## 4. Update the login flow in your applications +In each of your individual `applications` you will have to setup up logic for handling the **OAuth 2.0** authentication flow. +We recommend using a generic **OICD** or **OAuth** library in order to do this. - + -Update the `SuperTokensConfig` variable to include the `OAuth2Provider` recipe. + -1. Add the import statement for the recipe. +You can use the [react-native-app-auth](https://commerce.nearform.com/open-source/react-native-app-auth/) library. +Just follow [the instructions](https://commerce.nearform.com/open-source/react-native-app-auth/docs/usage/config) to setup your application. -```typescript -import OAuth2Provider from "supertokens-auth-react/recipe/oauth2provider"; -``` +The configuration parameters can be determined based on the response that we received on **step 2**, when we created the **OAuth2 Client**. -2. Update the list of recipes to also include the new initialization. +- `issuer` corresponds to the endpoint of the **Authorization Service** `^{form_apiDomain}^{form_apiBasePath}` +- `clientID` corresponds to `client_id` +- `redirectUrl` corresponds a value from `callback_urls` +- `scopes` corresponds to `scopes` +- `serviceConfiguration.registrationEndpoint` corresponds to `authorize_url` +- `serviceConfiguration.tokenEndpoint` corresponds to `token_fetch_url` -```tsx -OAuth2Provider.init() -``` - + - - -Update the `AuthComponent` so that it also includes the `OAuth2Provider` recipe. -You will have to add a new item in the `recipeList` array, inside the `supertokensUIInit` call. -```typescript - -supertokensUIOAuth2Provider.init(), - -``` - - +You can use the [AppAuth-Android](https://github.com/openid/AppAuth-Android) library. +Just follow [the instructions](https://github.com/openid/AppAuth-Android?tab=readme-ov-file#authorization-service-configuration) to setup your application. - - -Update the `AuthView` component so that it also includes the `OAuth2Provider` recipe. -You will have to add a new item in the `recipeList` array, inside the `supertokensUIInit` call. - -```typescript +The configuration parameters can be determined based on the response that we received on **step 2**, when we created the **OAuth2 Client**. -supertokensUIOAuth2Provider.init(), +For the `AuthorizationServiceConfiguration` the parameters that you will have to provide are: `authorize_url` and `token_fetch_url`. +When calling the `AuthorizationRequest.Builder` function you can use `client_id` and a value from `callback_urls` to replace the example values. -``` - - - - -## 4. Set Up Session Handling in Each Application + -In each of your individual `applications` you will have to setup up logic for handling the **OAuth 2.0** authentication flow. -We recommend using a generic **OICD** or **OAuth** library in order to do this. - - - - +You can use the [AppAuth-iOS](https://github.com/openid/AppAuth-Android) library. +Just follow [the instructions](https://github.com/openid/AppAuth-iOS?tab=readme-ov-file#auth-flow) to setup your application. -You can use the [react-native-app-auth](https://commerce.nearform.com/open-source/react-native-app-auth/) library. -Just follow [the instructions](https://commerce.nearform.com/open-source/react-native-app-auth/docs/usage/config) setup your application. The configuration parameters can be determined based on the response that we received on **step 2**, when we created the **OAuth2 Client**. -- `issuer` corresponds to the endpoint of the **Authorization Service** `^{form_apiDomain}` - `clientID` corresponds to `client_id` - `redirectUrl` corresponds a value from `callback_urls` - `scopes` corresponds to `scopes` -- `serviceConfiguration.registrationEndpoint` corresponds to `authorize_url` -- `serviceConfiguration.tokenEndpoint` corresponds to `token_fetch_url` +- `authorizationEndpoint` corresponds to `authorize_url` +- `tokenEndpoint` corresponds to `token_fetch_url` - - - - + +You can use the [AppAuth](https://github.com/MaikuB/flutter_appauth) library. +Just follow [the instructions](https://github.com/MaikuB/flutter_appauth/tree/master/flutter_appauth) to setup your application. - +The configuration parameters can be determined based on the response that we received on **step 2**, when we created the **OAuth2 Client**. +- `` corresponds to `client_id` +- `` corresponds to the endpoint of the **Authorization Service** `^{form_apiDomain}^{form_apiBasePath}` +- `` corresponds a value from `callback_urls` +- `scopes` corresponds to `scopes` @@ -257,14 +197,10 @@ The configuration parameters can be determined based on the response that we rec -## 5. Update the login flow in your frontend applications - -In your applications you will have to add a login action that will direct the user to the authentication page. - -## 6. Test the new authentication flow +## 5. Test the new authentication flow With everything set up, you can now test your login flow. -Just use the flow that you have created in the previous step check if the authentication flow completes wihtout any issues. +Just use the setup that you have created in the previous step check if the authentication flow completes wihtout any issues. diff --git a/v2/src/components/tabs/OAuthBackendTabs.tsx b/v2/src/components/tabs/OAuthBackendTabs.tsx index 928a9f695..5a77ea8ab 100644 --- a/v2/src/components/tabs/OAuthBackendTabs.tsx +++ b/v2/src/components/tabs/OAuthBackendTabs.tsx @@ -13,7 +13,7 @@ export default function OAuthBackendTabs(props: any) { { label: "Python", value: "python" }, { label: "Java", value: "java" }, { label: "PHP", value: "php" }, - { label: "C#", value: "csharp" }, + { label: "C#", value: "c#" }, ]} > {props.children} diff --git a/v2/src/components/tabs/OAuthMobileTabs.tsx b/v2/src/components/tabs/OAuthMobileTabs.tsx index fc72651a7..00fb75f12 100644 --- a/v2/src/components/tabs/OAuthMobileTabs.tsx +++ b/v2/src/components/tabs/OAuthMobileTabs.tsx @@ -9,8 +9,9 @@ export default function OAuthMobileTabs(props: any) { defaultValue="react-native" values={[ { label: "React Native", value: "react-native" }, - { label: "Swift", value: "swift" }, - { label: "Kotlin", value: "kotlin" }, + { label: "Android", value: "android" }, + { label: "iOS", value: "ios" }, + { label: "Flutter", value: "flutter" }, ]} > {props.children} diff --git a/v2/static/img/oauth/authorization-code-flow.png b/v2/static/img/oauth/authorization-code-flow.png index ba04adaeebd87c8250b8578aca72f4502431c42f..3845155dba90b0a35117e63b9996864bfbe645e9 100644 GIT binary patch literal 239782 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

    Ezo8#;O7?rev#m?o(Xlu25qIc`YC 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 z⪼wJA|$l_Af*Pz$6qX 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 diff --git a/v2/static/img/oauth/multiple-frontend-domains-with-a-single-backend.png b/v2/static/img/oauth/multiple-frontend-domains-with-a-single-backend.png index 5c74368acb039fe8e9b16e84c95fc337ae078adb..3810090d9089134f70509b8f1ee92d45874070ae 100644 GIT binary patch delta 260463 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�wC`rv;AB2MEb9TDRNM6;}sCaONg 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 TV2snR5mk^;l`fDndHsI?gtTG} delta 264753 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ⅅk094iU;`7g< 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؛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 diff --git a/v2/static/img/oauth/multiple-frontend-domains-with-separate-backends.png b/v2/static/img/oauth/multiple-frontend-domains-with-separate-backends.png index a7267ae8cf014f4d18bc83636ddfdcc7cbec31fc..3f607adaf3dcd7f2a100c4e4a8c76caa5666173e 100644 GIT binary patch delta 339874 zcmV(yKl@Avn9@6{{ui>lxI-kVEAWMqFtWMx8lZyYHw`UMh*(IRHjP2Z&MX8?mFfU-v>8^rX?rHOp1&O@1qYLdH;tQ zej7gl|F->wGq(K|I;o@u_vm8oEzs4$1?bk*eyAS)^(kgiPSp&;|i@ z9m7O{3(%lL?SIfUHX@UH#tP|rX7bTB2&N81$paqOOm%ei>=|aOaAZ}!n{pSvagA@~ zDbO|C_$BVTPQ~nTRGoi!2IK9ZW~u-Q0#v5o83+;u7+M)46Y6!l)Agf5RzFM6XvvU9 z8$qm2?8~_~fA4p;)L$=SeTJBtZu~D<(v7X4T+SEi-Sl^WRdkzkb;{8BIPM%}0$SNB zQHZu1plzvRq?ICovRd9bZFL5P6h&fhPf#RCx8$(HO>mEz%qo8^ZfzJTM-+MTWe;FG z;(;z2ln1c`+YWGHcl#D*>Bj~haU~{|SM3|CM*&yj(~9nR)633i(0Ng!1GN}Cl4S3( zf9n=dV95=8cCbO483|n09Y`3cwatxXPlI1m+18byjF9g68v^LAhvH*xz(Sst={3# zq^*7E(CEMZS%7*sG51s#^293pwy>{H<-D$yv1K{rYVkD()FzqQPz@d&9I(ZCcwd77 zhw#W@Fydn$`&iux(O%7f*D`kVmWu9Gj_EawR9?hBqmT1y*k*&e~>4+-AA1=P^Wf;v_~!-h~hk;Q!ftc6u-kTqh=Ts z{ZktqJ!-`W#EvhE?j00eY>Ndh_OF_()-F8Y*^&XCdhsdFhKfx^T-@3xdYMCH>SrZH z{VatY&Dm51W3+Z|{iD9K`Px#ZvY>sU3naB|cujz-mbWoHXeqK- zJuY+C+-gf;d*nnG%_E|2QE~YAN|iJ_90WGaO~fS5l+2L9O=tC2^qyV!GIfs+)VB~? zKULz*mYSa?!uBi@t-8rAYZoq|9+nd-uX>vgj&6^m2_7cxKo33-)M(>~})t;2;gr!9Z;mP$8fIHSyxurTlv}YR3dX1xz zK0}SN%}=B@zx~_Vj9u9#F)eop;>H5UlOLavHl`KVQ`^52oR|}N74j2F0y#DZ645wv z7jA-3UWFh|I@PaBG;*Yfyo`mGmB)mLZ6SZL;+W^!x1C)hvad2;Gx4Vw|qV&zxciae=Ja)blu z2gW66l!+c0erk0j1`G;z0+|VmK4}%>9MOwN#{M?8q}^CO3K}TXvA>Ci-mcif7RY}* zruDp4JFC64MVHgVlD0g_FH662kAAvNQfo@_sNC9N7QI5GPl{^!V%RkRuwbCye%o)G z*DPcwT|fcPgD^pebL~qVn1|<4+;`u7^odV=qVR??VzaAaw^Khc?Z%KM2XJPxb7w|q z;AJ|{khyae+An~jrfd7FEkY`EVl;oa_sSEMfwFayOVmx21?zV@TPlL>m!7A#Ff9k3 zmNadRp*>xyETv%){SGWiTM+6ZNXt~u$9>xqBa-0WjPE2)6R7dd1VIU|WQpukH|c~H zQI$Mjd(zxiAEAFHkL@sW zbvjDjM6a*X(Us|`}WpC^<71yst%H|5Ia6I$V_E|R2*@` z7gs-li*PXpf=UER#m@0DgFJsAND@YE83r_J~k7zOk;+KGe&#M0W| zkW<_-)rhx**Q^+$ z-f-2oMP0$?(2{;&=z|g0f+B6eCpH5CiG#}hh!1${ja3`8fMZ|yo0?OjRsaq(j zpK0zvO6#MpYpPQ?g=^pg{Pv7ns!uV#im)8vwS?_!uH2Q;Mu4F3GjemT^t_7urR07s zJpxV;D61Zs>92?}qZ3pSap#ky!y_B{6hO|AoXfol_V{!mH<4~w#0(Z~@rBn>#L~Xs z4KB&qTGftP1o2YMvkQN}<`C*453Q_@R*HpP&_K*UCLr`Wk?D-lsA}P}6ItU$+k?he z+7|^@v`uC*Y0z6G!>O!T&a4W0CT&sp9a~CaokYfE@K+~0%Tq2Cs#v=Ua0FQ?@E|Sn z6PAWR9pq2!z$498ybgDL>S>C%1N6sjA-Np(XeXZsOjXyWdp&<-Om@=a7sxA7?Yr)} zi#~qW$6F9VcHJ(AdT6B&PPj8AcIW!@Bi{7pHR^)o0c3rmtXzpvHf0o|1F*nN@r0j)Uf}+ctkO z)Y{qrbcd@8tGf$DdShs>uE88f2z(Nmxv~*`ZKHpLAVx26q)>iMxXbjR@{f82N>tiX z9n`@5DF_JLLed1KPLEw98-m84_W{a_kmXr2TL=EVld3+@^;H#=Kz*W~5eA2Cd!_LS z*VOB%<;#EDf53B>@7qhRtWWpgJ!eJ(d5!KP%p-pNolWnp2PtycGU@Ikc}L*elwhs? zglsoE|BcI0beCqCT7C~|Ju$9}at50-sHbd;n7+d`OJu7+G61ozq%>M^vMShIt0J7y zbak}7MnFKfbsdL162W_k;NbAz+J0$b@@PD-u8DsJk5#%>0_iR`FO{ygp$= zI(L7PjjYC|*+m2!n_v7wspGoW@GNAy0NJW@JaTz>9r(%0g-au_%ia?){2S#^nlC}B zP!8GfKGzEtN{#Uzhx*;fSC86)wz301$I1ifPOYatj~1fyViYLa&jbSX!}Nnw2i2cW z#eVS@e~})0?6GNqFDAfHbh88{rd-hj6Kj9aqSRTCiIhNvOt&BY@Q3L=?|%34n#jBZ zVprSLrrX?PO(mcrQp?r(xlv9HUL2Sm6XMN;ou2N30#LDy|J0j5Ssf1DC%a$0E`MGx zrkmX&L$H+=e5pYhAyacF&42DxE(c`n6KUvEO6dmzTU1cb-0l?T8!GM*$lw}%Ok{sF z2HoNCNkrAuQ+Lt=ACrb9s%`>bWyJI-YN_Dd$@?>RAbBMsyo&gwN5SS1;VCqe#FT>=G!55Vp{&?imTVNxW!Eq1Pr0?Z|hW1 zcbnc4i6nYb%d|Zgi|GqltB}5~*D1L6J9n%O+whC(w8a%`QJ*SM!z#0Q;xOiMG(w0Q zN>QJP>~1Kc{y_;_N8GpFg224R{smiNJK#Z1UaQiMZp80s0o&1gH!gpmZdH*=uhl%_ zL+me`Og2yB=QkO4Zemb~Mz*nhCQ!Y7dv|x)A<<||pX7Y=Ti!gK3&CaAgDg+nmteyj zcsR_%*E!~$3Dd5MaX(1fQxQszu1#^Hhblc+Vt9@m` zuECJ{^sz1=%H*AFAF_Yb;VNHo<9`vd|FVF1r>-{8nBATm!6?H{G$+5G=z5)7Z2)a#_Gc0O%ylpd(2k zCQhtLbCI;OOi~9{gLG`2UL&@6IFlyx@=R$If_xANOHZC zync25sK9=5=h7-e?DG6?#4O}_$1Lqys*bR$BMuMLub0kg&%eO{20JJ^Ua)f4m2Eby z^A#1FIQwnEj&?>1zH-3@2?oA;R=^q6LRKpi<$?Bs5=E2U&~brYm?vFcARs3R(!)B1 zXF+F64gou)lGA_ge#z)l51x*1o6q<4(9cA9PH#Kv?dolbTUe_P#zPsjR*Z&hVOf%nK1CvdZ!CZ%1 zd#h|=Tr(6H<_tu3`~#iqOvURpjFb3@B(ww5S8UUm9IXx~h3$oh6Sbb{tE|r*@Az=S z6swEFMgxE4#u0MYZZi)c+m@)Ws7JT%AA)kxJ(1Ok&|WgvkSH~qY=(kso&!h<$Ff8k z9ix5gnBsgt&G03v{%}th`&@ZYUNOqvDXG#s;K2Vcgyz>C%=l7tjde!>RmC(qbcplQ zpZ+vmf8BL->n*n)&YhWe@PT<~%Obi37R)^7^MZeK{+l!Y?Z5qb`rKzfM|!Z|yy#Zj zqVgIBEemd;^6H85diZ;)7-M~%gZx=ZpzN?v@r%b!TW}EazG_0n)Qyjw`e`|>I$dW< zA-(_5I;cqkiqUI$uM1I@(&ls?vJ|c_2h>GUv6T&8g5Gk@!3qS>A z0(gJ!+dL`g?d z-*VZ&S40QynOEvWJaWQY)IJKzWYF?$D{%(TM1*rppg23r;*}X5iTK66=?|iAl5fPs zEj_i1?B2^Sx{u_Q=|@Bllscs0t7i7kl=FWd@$C8Wx*u8SNWX(Nb+{tk>Fvk*3#(JU z29au0yOV@tAFTEGBI{&oI=kRj-9_xaZMK$#ytrQQ;)_Ieo)BqC*Hb!W2rBFRKZ822 zJ_7H3Kq90-1L5S+_znrfuQbLp6NpXBPQT|gKph1!u}os#$Yp%Z)CW3&xpfI-PQiae zY(_XK!uvVRq4I35rK{Pj`*S`C<%sJn1b%t}hqKIVykG@xehoaCqGWo5(KOvtPsXK(K%t7gC%V7iIJo zruvs)pbGX4*|t>o0Q`_iE0`nQAnRus+W^0lubCF<%{`S*X;KrYK8b6edb3)=rT*oY zT}C(Gd^0`g+0UiR&s;7y+;9V(K7D!)G8``2*aR}#le;Mr!7VT`6JXsnaqoY<_wo}@ zoR!NizicM|`1Cpm2xTg_1R0j92SxdHyEH=wsyya{E2*`=rXL)DY?%Cv0^D^VaJGRo zu*ZWcYrsR`bEVxUs8yAkeUqQ0X%9o6h|dS=$RtJO)&M=cR^@(f;l_VS(mAqKa%mjn zZTGGH&3TU6V>lX=S$?@5CnkTU-BkOBo6Zp$TG2_Ufc3?sw#6rg`=Mn8m&GOl+h%-1 zzEoBfxp$CWE}0yWE2e(Lz;YR`2zS&koZwnZi}KcH0JM=GOkd$8u&bC0b~JsCdE`YD zU28vgEHOAS3c7;H`jHHHa4my6`{4Cyqk-3#Wk)m0U$c8(KkDzS5Bz_9MstfzEr32k z%UFNVQ}NerA0H8hs{I3P&negc`gDQ(#s})H)nNoXiwJr|$8BE_D@P(!YLes&pkT5O z7CG)EKW;J9#X`~WxtP^}(Gf)WZn*6hS*;Z5X(o`c5U5UM}sENxd3d^Q-k{6D(&V%=C+|5CMXV5EfFfsPDG^OjqUb zO4;p-$ar38pFVvVz4%2hrsq8OIdtOB%Rbn2XObgu|SNAAVRq``OR&r#|(``HLG<5W&CJ)Sg-|GZxI7 z0~iO+qNlP4Twd#F@9}f42;?=uzUCC@(7-5aR-jb4+ew^b=J^w)4WZYMrQeCVNE&Y0 z+6yvosPx-z0V&^O&Ga8suj9Yl`BTzV2O0u*>+L^a+1h`RKpvBs!PZO1WQ`g%-RWkt zPPVm5iJ7}8%^xS22?atEXV^hRjiT3$c1!9fO{OhYXc1t)*(He^g!y#9i=*xE*j7Vl1WfifB~ znWvP1cdphJ9e5w&q1cvZ+>^0^arJ?Sc7^wT==TAOu)Q?)F{vD&KCR&M^}}}Wkw4-q zvb%`ai0=`Nt+189k*p)Rjd0Td2mX2v znXrEyq!tpC7qow<ba(31X}*ip^(#B;+1Ql*{2brGZ@X$jK$)k@xGMytq zW>Uy?KZzU$75L$Y9+ta5`x$=kd*6Fl=fQt@=Yvkh>{$|Q{Q7i#j^HUYEZlT=#6ekP zihwk`1zpL*ZBiQ)e=2@}zLh8p;G613A0w}7c_Pfq40^bfG$xUobdG2ztj$h=MAA1*1Cy(Y9G_u$g!ahJyOchjb)Bshgh=gf@MJyJxqVV zyoM0-^e&nKXx*MB;t*HI%B6d4!PINmthBvHwD?=uahpa;+qV&0kEPcFO4vFA`V`dR zKEE69z_}E^R>#FoX@Pd2(2G6AvevdW;vDLb){5>eVBh$DY5lW({x60m@*9N*EuNn5 zUbiL0O@un%+C>gmT({?0^T%tWfq#Dh3b7srIu+JqT7!`mBh`@Gk-MY-k*|Yl40zl$ zsFn@mbUc=#X-7c2US9y%KOj+S(wc50$N$VmB)j+5Z|uYL~fXp|P5d>QO=?;wLII z@@<}{>30{D(}#&#*7t(vV~xiq4>3CJ!A{PIs0)e}U2*9>9wM9=b+n8=F3Z|(brVEEY$*5{X#TA>;1_TT{xHHtQmFXb;f%#b+%E zJGVfYH(|1V`m=F#(~URM*M9BS$!)jYRy(=s#Ee!5J3wlqi4Ox3bj1}{Oo55%RSw3K?bvd?Y-}N4}E{=gCC?P4)H8s z;8NDlB)*mZvxWRoPXVQoP$F8}J7z>pgAOI_Y*dF~gSBiO2yQ6OYgE(@H* zPo!f!L_{*6M5RQZ-s=PE80J+T-ENrbo3*qHvU;0|jVzW&%xN5e!aS_Q0S3+K={Pwg z{Sd945TgFH=^U1Cbja|>gX_ktuakRIANY%9nAw@-Qd=;Fu_b@Rx`}w>IY*W@gkI%` z>{S}zcZaP3JvZ)|C{x4rhHP~{#|TFcNOYJeALDsc%|2_cg8;WJ{D^)ZR>mbflZ6{M z=!@&1%*_s|aiAa@_+As`_}7q zTp+^J!G&-4#E^eDkcFqyhLOgX4W;2T6D-qT_16u54n9BAg$!qQO)Gpwbv7l+JQ3z!=jd;w1&yu*NgJ_*-$<^P;azFihKxKacKAm?h?Gup9Er9e@U-c6D z`mg_bGAGCDWB~eS`m85BQY+=#J_0@SVSZghG1!&S(oEg1P}n^TU@+=o*=WIKXM{Zb z@WcG8zxpfm$RiKWJfD;H3fzIB;f0@5hry6t)xU+^Q@ngoOUi$`<6`-;ht(|vvj7&` z2d2FC8;pMqouVXwPvgk@^Sxnj*l4A!XDTAcgey<;dRFLh6k8wU6h{|Fd3|6aVZNA@2v4-I zvz+CN|FyDP0tpy!(R<5#PG=w9yfh;i_4E*}^UHrV$&o~VwjW~K<^^RhN1yK3E~N=X^UoMK4_^EJj!(?wrF`!2}zgh z8JD!{%#Wi#_Yc60A7{s8mOkQZgy#ao5|GIH=De|&U%(&um7p3nvg9CkIO8=Pp>5T~cpJ6{eM_k)CP;ZM%@1)J`&*c(lLxRL9zTOQv3KXoUw-&^XRT1aoWTqGivhuF7!y7&=R=UdK?mhCp_R+Y>NX*kc!gSR zLsWImCT&{<{;jy`xawTVJ`mLlj6!u=qo!QdSI-tW0 z`0##HRp)3Rr(SXH{+GHL?lqaOFe`Xgb$yTht!oFZJv|X^ zk6#-CJkYcXwp{yH2%3K3>q_Nbd)>|b)IqmJNs$EiPTa29+mkEKXhUPHO~m@=102ea z-D%MJ2xZW3)x~?DJpiv~qcVCO;bn&*!)fJK(rQ0Y7o4d1;_=#{n<#&_QExvvSnVDL zN)+pgP#EfJJ3wVXAGz=wz1OXNu=IUN)$b z@x1bMS>qh8V+lL#=wQ&aeRqw=G(VAt( zuuYePN}kcJlmdbno9j;b6rwr~I~$ynBGX}K>p*7$eGpJIx9?Z#O_8~+?e_(=xH@K5 z{cIGiXz&gNe6Z*<5#g&n&8F6L!nH110EOkTPsA#6>@i(EI--BFjbKX~x8fMr@vUT6 z*Uo|Zx{X@v>wVd4!B*+IWC#)SQGMTidog(25b6F_`Yp{q{=&3Cr)%{DryS7%MBp9P zW~Um>C;Blfnw#nvg6kT6Zoq6iKl37rPkq;3J@0f?RoS};U}H?+;+g-r?nQuu?or4_ z;;Z^vN5Xc`KF^a@$|M4|2a|lt@d;-<<7#^8OJ6#ZcFRP6vdd2MH-6(cRU4_i*5Dvl zy*SX_Ad?-4?{{hwyCP5xM(Exn^hupwx-m)3TIZd!?04RGMSVub1F^}W;uzQ{mg*D{ zhxQt!jdVGzD1*Equ&rZN67tm1wW3RVmOmqvxexjl_%RcwLmF5BrAljyF3weGe}MG~HDVrb<3j@zEnPgj)CQHFe`9O3jc2B8#0Cef19;6Zzk&U4 zA=){AbFm_->pjC~!;g~?BO8BBJ@{#AG>o+2sCkdLUiCbLM922lf=(vB&ye& zbaDB(I3wyO&af_T3p+=d>U9lHEPXZy7NlN( z>uQ{e6_qrZgB4WhEE>PtotwFv`Iv$c%k?~KngbdW;+@p?-+a@}(-%Ohk(V#SUyQ^=JimKw-fnP=Zr~@t6 zd2k^!9vk9yAO`OR-OOdtf`K)(b8LG*{tNh9uyVr)_eyIbZPIsCry%O71e{hNTw_^q z8Ff^EVn1N_nEcAsG*aMyni6~8 z;snmC)Aq(Mp)PK!>I~UmvqL4|q-aYgTYPMNwO}9MKu<)`Q&wZko`fiS%f%9$!1R(@ z+O=FWjBkxqLSKc>5@`{Q+no+@&7leh=I-bFkwKmhoG-rf83T_24txWa4m*B>^Ljt) zpmvDZvBB13_ltkrl{Az40sX9hv%CxLD@i~bD46j``VtcJfj%<9+$Q{By)r1 zjW+`B?IB1)67*q0x!@P4YE9Mxc-cur3|1zq+A3G~)i|hQUsq`T5%Dd5j!xsw1~XcD ztJB=sj1O{HTDA;34P(HFw8Y2@rR65^*&sxb{z&gv7~28A+}pW$8|R)5x(%a$j)K5{ zc4rQCeQ9@?c}(14C#WN|#r}H^(SFPm0I_yh|0onGb>fBwn7$%>p4{px=xYe|zLdQB zs;lXin{SyH{1b{f@UWAAW${1lR9FHJth*dEI8lQZOF7YNRZ`%3X!n~6KE)is?S8<%;bCv)m_kx z@#NZwN`*XxHo(-sHX%LAnpY8t@v2J-8`R?O{QQgq{xYM|pMxfM1vz55w|lx0h5n*VLG@wy`k<9?ndT?t=)6?j9Y4@gQ$(;{JCQ9s}fZHi2w ztK;DqVXy8@aSX8dfjHYzsFM`ccN}Q_1O)SCL>B{sRCg@sJ@}eftL8Zul|{V(@L`H^7-d#3c<+F@FbtooB2w0}8B`jtq`UMc)nL zuDm`4ixwIJBg3MgLWXg7xv#I0l?LN5P+hwOqZJrnwWQd$n@KtYCeQlFM^yWC>{LG^ zJxxL<0C;d4ctj5uGj<_KgniTTrjur;5m;~3NzEyhiH*;P3qu8ci0gzVSE+tk8*ZGV zH2HExBei{hNC$^=BS6e&>N?SDR&lNMSEIrGbhfqENLKoL+;)q6`=Pta1!Wh=pxI#K zr|PiSKus68>DtolooapTZy~?4Lz2m0^%c^(s=7Gs2XKFc@|C8k4I2SZ&90>&5OM~l z=|)D@M*vo*l~Vb^9>$=758$94qo;J-cUNNS1omHlSU??NKoHqS)fpn-vHwGh_j>Gs zoio~jEg=u854s57NgF+0^r9CnuW1~XI9C?=CD^d+n4lJjm|zML$jG8r)B+7yxysjDae0cs_%s1K1{tW>+36;K!RtvN%W89glTaZ+TcouMi}urrMCZ+g zm|H`?GX~H-Pl;_Gi2Egr#z~e}>-AXHASuIf32|~rD@H191_j#!D?aJ*yKd+~jJ&(* zu058j&FjncX_C~-EIh(bNtsx*9O{#F4%Ge{J=7auw)#+ptj_-1y`MYQc^h(C`nU!% z6MzTo2k#o1qjo&aK`SQ}FEDPrn>JJDwrpoX88cQ?J7uGjUEpC=FaLOe4BC(SanQ5c z)DZzC2TnIM5HM{XICa1^z;yG?H*4^rEc)vX2C=&tmf*rdLgv>p4wDepHh;e2_S@@c zJLf*w3G^!)J7y3JKAkrG$sowEgV^>EmScwCfz8KV*KmwL;l=isW?4%FJuVYjTgQ&a z4DX)n zuBK@o(29CWl3&Ct6zgfb-k<~L1JK=ub|6P%9E5EELt$6kH>?^z*FX)%usqRDwvzBq z)?U3_y>*hy%gSMsm|~M?^}G-3uMv+=_id>ELSs~I(Z3m867V+M>wj59%QnL9KB)EB z;`ewO-xB*}KfKiTh_Qbo{rWYeR%L>nG~RFwLDWEk(B4pJs&_6q8 zK=8VK&}W;jvlt*NG7yhxU+@l{!LYIpm!W$nhd`5T+uQ@Ay_xsbd%pBZYI!QmR40vU z0TqX9D=y%W?J$_Yd4IpK<1=!cofwn`+j>eLcP0q<1tNQ0`7deBfwn6K$`W-nHAfx= zq3~%jI(+*I0h9Jcgx}-SnmYLrvI9v3yrPbggZAkRK90-j_$aFmy>OMW(IslK_o`ie zyY$W*`8I=!wEkCJ>n2{*^n+bG=38c5I#IX9+9K#oxW^yZihnK82=@WcJ`iDF$T8~aac=;OnuB_qO@+HH{}-t9Yl%!yFTsg-}#yC_TQr?#7i+qlpyZai$D}6pU~DF zZm6T5`<&(~yRvvcec5Tc{<`Z3f)4X58oRbDVc8KORA0H!9T2-ESU}}8*|!+=g~jp-zTEkqhdBKDEAAnU0TEmZAE0noua<>tig=^mlsGA8 zgM+4nv*xN+^)PGb3wHYjc;@4(?ihMG{;a+to0wE7#%>eSddJO0XO3z`^Lf^xn?cY#kIeTP&~9 zJO$IyS=DmtqzYZLO;^azPdnblHB}v)ZK|}kP}>@XPp--E-nO!1fWqLTypQ^UsRc3E zmDCa*m!!Bczvshn2^sUY=}ES3!JrX)urq>QlBg^ zD3rfC2?m5X2}V}tcCe?L*njXF>oavi=w8-YIz&6b^7=ZzuT{Sy0)p5vj#(r^T>yfhEB%u~^%?SJ8VY+rok zmm@l4=Zjcg90JpQV&(33NSNvtrQt@v^HHzy1K28XSxbzJI?cC(zYPck>K1tc5L)PD zg5ptI6STAyNrPa$WhgQDz58{=eW!$Co*LWZGSZx*PythdS>ibM_^)y&l zZ44$|xC_Y)sNCbFglEHo*nC70xy8tL;Hx0DFF-(TvZCbxGuScia(_ZCI4I?D;xJuI zL4@|1*kxvddbCWogs!~e$|=~;&UrXo2%X!VlW8Zy^t*iFq6uRPHk>=BU)$Je+LC@4 zjL^1}-43ifCF-jlHOK&mTT(qFbIv}uYo8rmzVcDZl&@@@J9|zK-K6sB2VHT+6^jg6 zWyN(-wu5&gxNcQvDu1tiEIB*Zv0R#rFT!R6o&)Jk3Nj;o^v>V^y#P={9Rb8 zu8a+`fUKEUibvK%dej>=q@O6@&wjUe}4pQ+Z2z|8T6<8Mz5@; z0KVF%3;0A+9*7D4QmlJ*f$mhSzOGbwE~Zh_5Q)LhIZaQzTdbPCB;#9%ny;p)9he6A z4SnEW61J)h2ZMJBC|i6PFl3MHhFu#X6VCb=>suGt_dz5JxMYw$J2Rl3%eg$2dhv|1Lf>PH0DX2V zFAh&z=(VTx493zZp!2FrMO+j}Ka7cI)LF0qUaZMUJAW`OYHR9`h5G0n_xzZA>Uphx zOYpo0vdjzc=<)l!nkA6OEv@_t{90mU%988HUOSMPmd~|uGT*Rp*R06?y~aoUNo^IA zIDz<`A#t$BzcA1+YT(8PT?FbP220nLAc`$XYJF4~G4(J2!3j-DDdg#48Pr7~6F|_3 z6$TJY5PuIuSa%(jbmjJdVc>L(?W~y1x*{mP+AeHU)d9T*-%{@(tt}9uK6JZQ#OfCM zJG3*~W46zv@G#YD3-JbR5L|Y!Ty@n|q_0@)<{*TA2}3{2Sq`{7oW4(i3y~JOoy#w2 zb!Ua{q?k$U>|vNCuLdr5%OQa*%ljGi6_E*j{eQ%#1}*BRKHJwmNIy4PK0i9OrSIHH z5(mxi7pKO~VKbTzV-{Gc6nh>`R8faHD8umZyH?1&788k|NqK_U5a;2!y1qt10wL1o5!m%gSZVgF#BLoomB$hJK)=O`~zKc}kW#=c7 zS3D|kZZ;AX-hi*xm%u+oO$f?h-QXx5xB;@>Ho3X=Y=rOZ4B#}a6p(N%6|4_FDVF=R7@m$ZWN}rYORL)?+b>n` zskbE=v?Dc>-r<7y{l)lZWK=1wfabzHF0#m^ji?W$Q%pdf{2128e|#UGij3Q}6uz2ljjw04Whwe91gQ&8a2TWNB%uOH zpg;uI*#I0UUp-{I$jA==tzr$-k&0JRAErSJ2y_uXCeX1REkaClxNjQt8M^`0+KXN@ z$O;`0TLCntTONPAUm-FxQHD{2%WonJ12{oA3fKwExadret6wxM41h=YsOMhiBI5Ie zY|u!0bq$>%rh9$>1)2nBynSUlU4HFPb=bA^7`9^|CtIfa%jS9zD)z@bNS~KHnd* zQr^>NT9*ly|FQt@ti9lENujkl?Ft!MSM@CIIKiugAC`ZN%IerdMA5Vy-ES1X#d1FI zfb&12b^^E~w?7iN_eY))qM;3)MrKhz@M%nsHL`fieG?3DSf3ndaVMonY6%?4E@dmW zE!X4}o!gUwSM15#&oDy^VBa<4HSP=yCbSTYO(2_Z%ntZ^1uSnTvJ`J zS+R<_#^9PUTsspylSYzcQ`*iNba;p|56U!zE{pURD0^A3>mXxQv_Sd^7; zXCJY^cv0{i5QRQeuf5@U1s7MwHl_qT7US|`G76#Xh~S<_;?B2X0AjfpgS)3?Bmr#O z25G%w&YkUayCw8SD`2J8NOv#oM+XQ2p_!})0vTjI;W@D{q%%8*@IpEBGwtxiqDB#`K*&;xXuM=#L9?=n(=C8B* z5kG7Bkv!LU-O`q)4Ma+s3(t4QsJqrgb18@|QtL=Hx_UaT^S%MnO&P93c~?gqUR-~R zdK`Z3HtaS}z>mv3sLv%JA%XJCCNGew1@#E^%18zVD?`Il>lmkFQY`5%dO;4nqMu;T zzal}tz*7sSZa9$!1xQGid@)_&d&BF8_0j$N*x8o&h2POVU^3AL_z9G?8UWlQvtcj> z(wKT9@okSpw^e6kL%NIzY%qn+z$1S=E^Te@HFU-*KmA@al}T{vhbmL}t@VhyfQ2bT zWEQw1rfNBXF5TKDhbJ7jw{)IMTa#&8J#ZUq^+QieRPSL4_uch!LlbzHZiW6!5$cEZlW2MMdTHsveEu|ng@jJcpcH?^uW;al9 z=N5jAZlGsNgUEau!1ZURIKY3S$y{o=wU-= zA7a@OD1%%7%_Oz_v#48hGIb~GP)JD0$wL)oz65Kok?YdOQm);2Z*X@Goha_0kwEtc z!%C9A=KJ>HB>G(Dut}}E#)P$;>#A_D)Vy6#p4|18#>ob{LOq?MbYXua4RWH~I85UXL)(6TTa{9CH}y$j565`{_NiB}-bkh6GrEpP5wT2!%(+z0 z&s=P&U*|Abp^#Pze&OLCzI4}y7>$j?k{sTT%CXCf+8os%>GRs$OR@wZ)1wXF{MErO zhi$RW8IE|DfM-7kiRL~L=%Obp=Y3)ZQJHj52xv%BE~K65ovUjcx%4`JOtNDCK+p$+ z^c95GUt$`eK}fA3WC=4cw)Sd8!%68pQ^?A3hv_h+kn>}fXD)J*Ix4bgYg%Q^ZZff- z`Ot zv9sS!MVuIYz#**UeJ{+75Elo!CmBu(_;F)YSI!Sw1x~j?#4ZzXU^D~_@QOni zMCv66jtyGLJ*M-9k@F6mxS!}6<-oz2U0R2ne_eiSoY}tT=#8G3>zv6v{NO=Z3V0{a zbJlOJ52+F4io@y`Vp&SJbODCNG#cq zk?grT#Ed?8`-gJ9 ze~bq-RNn$7jr^n!5QuAOJEMUJcR%^p$o%qSoBdN-2Uw01GvDLdP7BdI~Nq^vj`AuR{AkL|6TFxBkGnj<>s#CU{@c>YP0r$DnNHINdZV<~d-gvuXVGY2?TVkT_~t0%V)7j=af7z6I9^^bq4C9 zN030i44g+%!Dzy6xyxZKzk*Qvl8I3K4j1&9_d&Q=K&K|AaPJj=IZ%)$?V!()x4`~K zlSS{>3@4zsrcE6Cz|6}GWgYNq4ZFSWpn9Tb71&oHfZ+~$2hiyNL^DzMh%z^9t%`$w zY}VF3gX#kj7T%TiF)oQdhnq6MZMz5DIYtFk4mNy}m zFIkkgD`YsVd~F$Pft1%oYBPZE zMcvPdz9uqjos@`5ePx477HM#yEY1#=!#ow|^#8)wZtjfswUAwPhYTV&549I0on8|3 zBu9Qh{RS>Z%Sx4<-OX6ta8ir7_uEmQuzaU3`>Qk%Y4+cLloy2KCjg;M4ZsI52F}a- z+A`4fV}P>Fww|mwK*o6nJd#77q4#(`R!uK;R2*jXEU#!(A4+|2yXlsNtULXv#Escb zOcdZmT$yOLmh*5_m6PmdU!mwV4eqf#{$kk?Y$>}1Pgd{9c6*+6Phd|-oKVe!Uz`tO z4!Bw#VApzo65t5O0|#|{;mD8pf=PY7#v!5ngY(-NFXktB;mzr^@!h;XYaG;Zmn}_) zobz#Jkwf%dPmUkRufgYR{O36!fnCD^r9A+d(0c;{Me)F@C8ggw$^jcNS(tBw$-^;& z=gP-SuweAC#J}4!RMbkZqiQNy9cV)|+o8JWGehftud_*C0)2mCRSC*d;dv>MJ;_BJ zSVvb1yYkeyJyq4Z1Y5dMVs^$Cy+1DyxxvFov0s-JgK6Y~Co&=Utz|0ClF6=)!zq{- zj0J{Ac6?Hxr{uf75ygd{H7n4}sH=gP^6ht+pm=tHz6rF^Hxp%`{cVB*-0+$;gJ8>& z5l1_J#26@};k5@S~}ax$93jz4i%+H&xDGs$AZ&^goYf>Q^lXnDJ0I@I!@e)XcfmNC1P<)BNN z50I4QY==1zFy*)N7|!7eP6HWKHd^qxb^%(0Jwnoa{At09kh)o*Xb_@smguXQ28rqvAX;ayM zNw*H1&x>TV0_v@*kI}IR1%*gRF8l#BJTyqFu%Ml;Z(s~tV zRA#F?TxnM~{+Dv6bFZ|Ar;)*)sFks;B6&rM*ZUAMVzyhy*05E_fv`)E6NEx=_U z23g3)-j*P({j1Xrzc^}nO@>WQ-IH#DY`3R0H{fG; zeULtXSl&;ZK|JuIWzv2b-?5}vfDa&*DkJG2`zH13YNbCFC zpS6^i4*$pLGl%7o$7yi6{aMeSX(0C#eEth})5kvkA@T+~we^KBxTEubB=^qcKSCi(kMUvOUQaJM>|>9A>Z=ca`1i=eRQ`^y`r6J6wY+}{c}*!#WbJ6u z&G)?Tw~Ss*^11x-GxUl(zp1n1x%_*7%e9JUUH+QG@@D)w?4ZY=n9BclDQbJ?)vx^a zwu=eU-|;)YMiIRF>;Ho>Lh;aU-}%NmTk!Acx5d0mr)gKf^jgLI35qE=F~e75Jv4o?qm20#J0hD*Hvu%mePNM(|HAl+ z4Zul_4sRSyXH26h7_88;z)Q@;U4Papv4MHn={vw!I(9bLnTl6jJUg~?aTF#0kfNrD|dLj8O; zs4D}MLmsj|8-dqpz0R14)O&AcPvGee=3$Mo=h!iFajfKf6-YnYa*MC=%uI@6J;1?)Nd)T@8Xq=&d0jMAGv1<1b9SQ2L58gRQKyP0k zg?;Y$LX^5|;M?)<2oegB$Ve%)GCS)`g+Wu!{w*$5gN#0w^`_%$X|=1Ah+Bnin+Fg4ox6%{Tq& zaKSwVBy9VaiNveF{@W-54M;5I+WY5!^5x$UFX;c^-SeWXNoAq4RvtQfSbkcZKk&f) zWGB5-fZSZDDy@m5ZoD|PiPlvc)xfVDFK5=AA6L~oH?_MgS+~Q#!PbwUhJwo=3NJ;>W+#< z>2|tcD|R%MT~_&1P(r59icS@m9U05#I_q|KQHQz&4yH3Ev>AnWo>l=La`Fclff*cMuo{p4P38;s;9z!(^PT_bM5uhVX03bi(7fJeizX#cWx-qJ+ zb#V5q!o@{B6GdaX>hLliv|ULhlT4svuE@1hxPR!A4Jrg6WO-4B!qR0l@Btmn4)N1w zU@~l_5H0Zbf+>rWQ20tBwB5lMEAf1x}9!Yc` zrGI6v&gZ4flI@TYtmTi&Iy$2+twW4M6*b|sr9cCeYv8>xT#tm8V#D_p5x-S`{O)(G z71VoGy!RnLqRobJT#)XdzhI#r(Q@jJ#8X znO#2;tvvW~6LcPu@$cAgZTGVJX;_j{%fJPbr8V&Wb&I*7oYv~#9DORcTkV6bdO+Pe z0e@rM>v)FszywESnf7p7+nZa;Zyo8h_&%epuMAZX1KZsIn$~{dHI`E5;GnQR4S$@6 zneTe{yXh5o-gy{IIird(zqX;D?X1c&%Uk%|*>iP9#xkE?S$GiM?R3lfls>;U!OKw% zEg+(!SgBWpaBc}wlmjlSyk<1J`N)Xn6P~+eRtW8;0@@> zw@<4Q;Vv5Ux)U6Fs%>2+TSAz_dmGLQY;hdbu))ev7}=*AO{bzz;TjehTBioIV250_ zyICl%(}EeNz-t!*gTwUiL7^)<3FZ)96H7gA<9zGKrA*zy;rxY}>J@Yx_A%T?n~dL4eP1r4>C?phj=QW^p!VRCi!a6igc#yw7@|_J@lwyva-^uapUQir_}p{3 z^L+yiGwpMJ9nWA`Y_aSPWPis8^sg31wc@fNuG;n6e&>y$s!1tncsl%h*Wpv$>8Wok zzsU26Cv_!EyBdV2M)_q}ad2-UQu&Vz?fl%?ZG<|pgAlK|mMhvmI$ zOy#F1_n$K5mt1^ZgMX>n*Yv6d=4tNqiUD@B(wUy}+wu#1{tKTq>ZLHfrm&Q^FzsH5 zOl(Sj`(d9&<=ODK@Hw?r!tx&{3|gpuOz9E+FMQ$d&RnMJ={1zM|IQmbt)AuM%1-s~ zT`BMV#v~hGe#(Dvk{P%xbzzg9yu+U+nE&mYoV%UVmL&+r3jbDx>?fGwJQ` z?Bz41_pM#hr(Fv+$i-Fv4Kty?jBV904e`jjX#aX8(C^x4b%1K23V}XYS^^?)rFHpy^jQ z^t_VR*LK$ks0i$mXp_tqh{mB2>t-NONC+xvruPkO>ktglBzC;$#ty`>qi!+hhc*V} zbWGaBcK`f=ayZoo!MKz|_ZIDve))?5<}YMm$9qprot zk{PV=UZhR0in~GGMEW+E){lu@Q@Qc0-O8X}olD_B6gb7fHq?9^H9>vcoY3R*hxSEX z!QO7FtlO`d!Uigc3xY^pd@O3Q^;R%a9c-7lHgHs)TfPU6->ZB^d&C!(!GfO841rf) zGyQjj1%DWg`Z6?IkB=;mz6{dxX}(_pm1&P1QPp2bhp2_}s0JypjHux_Vb0jNs*q`e z>N^MaRF9KEeI)7wad<1pk8Pv3VcZEQfD7vyK%4=;M7HhKp8zAK&%LYydcG@q$JF0% z(S6>KhHTVAYl!!Ogja9#m>xBsZ@Bp;S#5P_ZhsZU;93Ud9qN%snzDK8Q~$N}C@*ul zLAG;z`}W(B!4cbYJ`{HcQQrXeg-6H&xrJfJNDqi~V*h{r8~+azkkI$@->&C8h<#t& zKH(Z`+Vs~&VS#0Fd80vz0^CSfViJ2pB>jDMGU^zV(}-ddG2rz@|8YJc!1`SZZ>>=4*NH`Mhpl*{&Twzf1<0f~;x>_P zH^YE*qVsZ?en&(*KOyc*DdiUX7n7!N`t)gf&U2n4&wA#w7LhLUp3i@nze+J3G*MRQ zOCQZ=Kaie1Q5Hw`A#B@PHYd-oi5vzde1ChUKt?@pqL6`3D(Pnhin|Og@B!MZx-lH3(HTlcO$43zRg$@^?%`v zykungDogPm#Ptg~b*b&vr@Fd}Xiqm%I&rSoJ-(&b#bG_NXM34^+r+WE%m5k@^}FX8 z?QpBgRXpxY5>KxZK)xZps*W4umTTx|c5Nv5%wo=(TBidZzn78M0rM-=2Vi*n2!>;E z+IP^NuDqx3a8r)b$|;~@%7(PLw0{*mG(^MD{6mDuEA$rzA53s9l2J+P2Rkx+EPf04 za%HivO}{!iLx8@Q#KuEhk^KvuH*9qcUPo&h@Ua!w)_kIM7nb5Fd_`rCA~wF^mYW9k zj;S{cu0azwDoGri@Vp*{cjt*Cm%?O~9jk}4h)Wov=5kOd8kkorXL3XgOMgFp!`FZN z{BHmB^!fwy;fwbZ9tdZiR&hHwWN|id7?&5nI>=JJyxP5KPGNorT{`8D&LG?3J3YPQ zfaAbroO$FaiQ;Y!i0hb1lDBu{&`J+ei~19_D1WK+ZllX(cLkw(mBT9wy(Zx0q)V!w7+v~? z+ZQ;N?~cyDR;&2&#~!CIeBtwS_uZeRb7#*key8v-|5wTN@@R5H{(q_JH_A-Qsqby7 z0s0pCg020XIi``L)b5!0f-@rs)UURS$OT8yZlH@OG=Go>L)~qS$(k^18W8RlAdojx z;r3dIk{1lNMN~q0M|Run8Ru8s!n{^h-J^2QGunS++JCxQ+w4fjo#ENf^e*q98qnCJ zrC`$)(>vHBN*$t;Djp=x7}DB z>5-??>5W%)=Q}$7UHJ+eH`&Mp%9(t}SC>b&!C~-C6uCfg=j)jQa}N||)NkA;s~sah zI}jxXHl!KQivWUP90iGTW~Wr$+8BuO1|b+h^r z?`!uf=5JuD2yH-OrE`x45i1+D39CmEW?yvQr^s0sX5CuyT)56mio4Ya)VY9g1e@88 zG}1Jt;HEbx?UO(G@^6}h4*&jF{*@!4TV*pXS-dPdUVR_9y(dnUK7OV%;ypC#;xsj2 zfy~tMFbIZEGz|9a;-OV+K(^+*R`HkN0|6U9BWKN~nHP;m(fr*-qTcn-G=UT9A} zuBC*O62&%3u0)jTOaiEN3dv&u^$Zvi-SrV6w3R3j5u~+GT=qW1pG9%SnKN|Vb=T2t zx7|ipU3pdY3#GQos~o9PeNE}M#n^CxXlKv0bLyu*3EhjGjn6@eC!TzQ9(wR0`t0X_ zK1&Zi@SrxLE*N!T$IRXN5VoyE-IHqYXOL=iCklF{U<@DNDE;q!&KBJ2$FSYd2DAc( z5>ddSPutE~XAXg%;AAdi^28Uh0irtoX#xjnL}u)a`~hcj^}7ltJo?I_GFF04Eak4d z<_7u?zwIy3vk!w26a4%y{EOv`1HhF{di^upd`x3%6E9mU>Lqe%QttG9>`J3lFb{u< zBI1NA#P1SR6*|A`BN|37evq_(yFti%IOLrMjx7mPWZIwVn4*Ef%N7Ra+$a_CM*)g> zOlu)5{kO?e$;}U{NuM<<`OMFFp1is%-S)5L%W|(eq3@&vUUUo6YUowGn;`(9x-bp< zy38s}UStHs>w<}3s2IlurFYrCe$e{`^Hqtt>e8M}$A|{{C(}W@XXx60Ypz`Blv@_z|xpVy3qmR)ek32&6 zfAM~LwTu4a9p1z%S4Df-KXsltl z>UTw0D~$buVX2h^H(Sep1+p?vs~uy0Ofx#beivakx=H(SHvTCj# zjMo^qLNKyWKkWO*>kd&YK%dT4AT|%ndOE&bxr(~cGGo0`KM`$x!1Z4bjUthK#>U}DuQi11La3eot@V8DVX50rfsgIb+Kb|B z3{cvJdR+*cvpA&T#s!^e7|^9Kr+xBgnoDlZHvLL+7Gw?aZo$_!xFmDb*JaKp}m6c|z{ceT`dLPoBSdZ$q3N3gd#dOhE zv>B06o1>~r)PW<{6Z*rxhdq&amr$#X_89?p7^(9$KInjI#8A%QP5RWPXPQmazph2( zLz8VMVT=oRCn^>r39u7#?Q+Z*7H2M$m7t&f0e2mLj_4ZkjRFTzTE_QCbvm6}$j^ zZhnVFbS{_)JaX)-GIBM;msycRXabQ;_p$A449V<`V%~;nE3nr6nTkev64a+8ZRBD+ zUn4qyMB7~67W2>QuEFxk#*mBR{g^Hgj64@5X#ol?>e5m{4ADZZP2}5CiyjXkNt=lI zLi=pjf68Emi75#2H~#8BFlq08-*3$)>_7JSW1DcILsij4eKFc$VYlC+ruoULeU{Xh zZ+G?yy?fub@a>sxlL+bXvf;Q*)`)B!Ekl%lr4i&YZ5h?0ZSFnajms)Kc$$jx^g*AT zXQb6j!^&Js#-~L@Wp#A5Z{zox5=q5M&eK5p?RvS2)2ZXsJ-3wB=iRpLQFlk(>_>jn zIL{AVaxn;eb-~(|B$`4*Ak99n;hoa!D;3~!iJA9j+PBM&*UiH1!0rWNdj_F2) z$p8C7st%Y>w5`uQW1elMyvZ4w#L!iL_q$gi5UiOk*VErY!Lg&Y=~vGW*?vu(kc@GJ zJa3gTZ>SUW+m@Xg=347VWwLtF{g!kJaCrJ_?e=&^dY18?rD2}u%cnaW`M5hd+G&76 z2ZQ%g@N!Sjfsbc|B4vtq+h*;L?76dHd3~K>xk->FR#l%Q zQkjGq65k^G%M1jzlE9=AH;BZNX{r zamN|E>)r)L`wDCtCv-<##X+YzPhU@{FGa#AJF~^cC3sR}=NY)+qA$_trFs!MdZF&! zOI>8n`Ru4!Wvfv0GLD&gKTWPaUHV{n447{I!r72(ca?L=<5tZqBz!P`!lohW77)t@ z^Nw!;U!eF3ZCs!lwSrew&`05KqG?V)tk*%`V{BFxt^`l2{9I&sec#Xu@X9^qypN}7 zYd&Q8H;@+Ls~WYb+)U47=ZLK)J_@_Vvx~S)CQ(4qRAzIpt-uy}2jJVyF?*6+8>h7* z>BuOcdMD6lXFNSWBR+{}$aho@B|Zfs#C?x+P9qtbU=tB--E9F9Fw($k^JWm)qR0SVe4_vAe{5b}m=#usDtO znuZ1s#`=qd8y~Q%W8nT9-3*FN)LjX2sn$+5b;JqJ1Xw~ps&s-je{=I4waiwVT2pFl zoZo9~3VDRf^~l%l1MJ!8?7yc@0(o%Vi6$BdBx@7iOOQJ{u+s`yOuA(vwV6QdbDsO8 zRA*y=5asBh>uNQ59mgZu0iFuJp7R;rZD(5Lajy5-MqK1%jr?wbt#;N8I!V6&9pTwR zYmMI8HPM*wteoC&f9$KhU`zWjk7z~Sey}TPen-R_EvTk?WLVI#$mOrfYYUt&4zNYI zrNo8gX+hs~yGsL_?CG!dDf&7h^T5E1U>|YpE4npv_2shbr_%hl!1)CvJmn)-+}iZa z>WQ{9Alu81B<>A!g+yJjP%_aItSDqxDQ<+vGFwUN@b3lJL6;oM=(MR77FahtM9-Y_lTW3?<1r33w_uA}86wZ2S!GThn4xSoe_ zAqX_)!G@)8&ry}Jvw!Sh-@}yB8ZAD(9zcb%SwZE;uI@l6bMw@ z(H9ZoSGx9qksk`oC$1PFioh?=&jYp^8{B)HG%axUk1f-{q^4t_VIcv5SMm^zFa-Xo zC15aW=+?#MageWp2~mCP^JUlC=j&J0XfpxZYe9%^f4mcD8;C{#pKqU6!*ECsa1o?S zz*>ag(~&`w_J&9v%D{z&)Q*GvH6e^}5RJ@#oKNQ=+w+2HzM#qzXhsr{FnZdJQ6&jb zm+4O{E{+AFG&sJ-{?JG$NaNVok*gNjiOJ85#8=v2|C)9__Mh47QwfP1yy)gXqP0~{ z2XtIee+H+cRou4>uiRrjareAljS}=)oddL+ATC(n7sfII#Khf`&U{L`HWTiJ9M7`Q zF(RpWEpJD0*tgvDtj@@f10sK?>7I4*ebP70POfE8*U|K{Guv`Ot&9Uj=O{{pyGfYA zN6Y6&4KF|^T^npQqs)|0y|C=alYr-w$kfcWf737D9vSc}lpv;R3S4f4CB_rD435g- zZ-^%unLP5~GV8nONtp~-b1GrVL`~oTN5}`1&*+aJl_%b3X&hInxLN;jF<&ZoqoG|y zqYcZnN^<%%r;`*`1aL{MM*;`awyM@Ap@0j&zOlH#m%#TdD#p+bGC`IWywEhQrQ9b- zf6H&(DMq+M3))$S7p`f{8%BgRACZ+`4R$yMsYvmTsoy=d4qIP6kt%aCKC*MAj>S3w zrnVTU)w$KzT~ZBaIqwAY&F`iIj|XNY)h7JTm^p1X&^t&wU~rCsh-TZ{QJs3=?wlyV zhcqw%r{ji^i_(Ot4>qG|dZVwuB+efue>~J{ib2S@lEyovR}qQzo6#JI9ll8GnA#j5 zGdIImR$#9R+fh}>c-xcCX7i6KdGPa=tPJ%wI)rWRA*kc+M~w?K0n0`27>R3=YZvY; zLVM5~h{MDD9}%v!!PV{R33UMvQzoGyN%71sA{y#5I=heb-`$?C{k!D7&5Kv^f0*`D z%f!{ra31EL(&S^HHELfwLqh0i1~{VVJ@R?sABi5zME8+6C8-7D2KRU7ZzW&;`F<_J--_H&*rcIuODH!pW|Ki`D{pzQuPkL?uK0=w}QqNo6z*h5@JZlIbP#&37MV2{%R%mVT!RxJE zu*Ee6YO@I^kIDoJx2l841dg@|t_cpH%<|;8Ez4Bw-d{5KGUM}Cqk`_?Mw>WZZlS~f9EP>b^)^$ zj1mYd&gphXz(}KWOljUgc~PG_KaPD}aHvkSCxS(@VwLLg%;ofJJ%U_RY{*+=-}Qcj zgD~+1(>SU+LLN5<&@eV#8Pv~GF{NlEUve|pnZ0@O{wW5SUc z1+v1~g`2GQdoq{%YoBpF{h$8aU!yZ;uAD#fIls)MOIx2Xri+VJw^Hc&~ zBnGyUIUjbS35&@L?e-|Wb$mkGf^kce{Jnqg^dKTs?0>FT7E)9v%6P`Wl7bt~>w<*Z za`T|%65vrdfB-C>e|a*0PIIo?zk;C4>Vx7Nr@P(ZBVF?)3@ED&><({)S(8%UG+b5T ziu2D&6^_#caHs@^P=XEZj2y1~a6#H}!|>G(w-Oyr=0*-c$A{o?q{TT}TBzP&>Hdh_ z_&Vc@LbGM;;AnQsJt^~A2Hb17zz3OH3y7p^MYbFib7$+|fB3%#__k?UT}ZF-wAwa~%Gkxs%3hj-^1T?a?dAr`r{wen<$WNAkp@EN> zw{O`anE$5y3=WJ`#r>WS2*p}TE=_`Z`0EQucC)4)k?Clful_}A;9uO zN@ZH#?Zb*@Q9^0w!qc&6PnY2Ss3l>+TkgO0n_oA7f8uk3>EOx_e)wIqFRZCaB#iYs zv6H(PzKRX#8|LokaFA+qN_O!o(u)ffRUf1O^NTE>UA z&7H}PKvL5+RZI&dC`(44Y$<#I?ra?C32nFkee2&#nug!wkvlg9Opu+W0S5b`^O;eg|4r8`8UyvUT{ZEdBYq3?eaB^k(Z2KTn)JH zc^;rVV%~)U+4DXce<;0*b5Q4~W_clGav_}VQvx~x=045bv+tWW^h>vYnTb|s>uXxF z0&7Mf{XOm`mB=nlyP3MPZd?#z`SfZ_YaXaEAk@C`Qt>((meE$fEvW6Fudj88XIk2% zgbgpqb1NwDQfgc9xd|~=FLigKJ*ago4GHCmNY&Tsp^|nme`q^H^r@W0{SEx-?gGYD zh`2&6$Nk&t_av6OyQ$q30Tb@NSjx3&qz^}M{l#-TT6uA_%;c5&q2FI?90mhzRp<3m z?OfA~J+yecm2uTMz@hb)pd3|B{AXgV#I=pq>x=UZUH7v2>GL9euq4y0h37t_b6-Ne zE6ZTZfY7UAfA6X!!OMd(v@K83)OKQGP;M)Dnrl3mvP8pO7U)?d$s5%h6_gFv2u5Ta zcGSwZ;%!zXM7u^SH=J2a;ZQ~1x?tb8$mom<=Qy>v;WvKUG9N^;M8gc9kQJZ}} zmh(Y}8F(Fs=e<-5`!#YU9Zs>lqZ=O8NqO9A|Fm9ie=A7f)AoUVXdMNPs#7C4E}q+? zn~}Anb{!YxY(5@&5uw!qBdl*P29?$zauM96_%fSBCDiYz5Jwu?Vke_YhgZ3dk&oS0 zv^YTbbLPwyHTUiBeB<(}hP2LVlR>vhwW4BAkfMME_l(iS0^XQ*RNUEs>;VVw(Exk# zBxB*Jf1-QQArQ1+9!{7$p^T=PN7t%uLLC+eNEu~nD;}H-*n&#|BZ6w=%Z-#A+|1f) zHRmjVmtB6_CBf~L5Msi^9xFZIUtc@Gc!1P~aAjJbYCAVd=EZhVxh{)s6qSt^FtD`J zheB?*$;|cAa#6WWZP?Ye*+sdO;0w1@0eLaif7ecQ*TPP8x5#dhd*N9nf}>dL9csHv zD)oN6tI{g66uX_JE3eAe_6^`j(E=4-j%YR9qqizJT~2ZUhbc@Jb1AC<3)BP6k4yt6 z$Ht@-pVRT)@Py1@UuWpi1YmviCgdeMo;*X94IofQva+Tc*tlCsn{!BTs{;y=*ZF17 ze;ZNQrWNZ80ojS5dxxKBb({P?z=OVtGy+`@CwaaOQS9C^M*J#Fk;?vbS7?I ztKe~)L);Fp*5Q@%`@p4W|3~TnryBOoH3sVlF#^7W~A_f~#BaEzU}na%~L>4yZL zj(L*g??EQJ$I&912Ss(x8~88)@iBVvfiKSIN4(*UKTmd8bh3#&AnsYN`!q{Iv{XFX zqTXv!z)zOs`L*ui0q;>J`jx@`r2>~4Kj#e`{AGg2RZva1K*P?+{#Qvxek`u!f8Uf% zbuP-#^%yr3HU}zdHC}=c{%iwW+|=_G)NN2(7%h`U37BMqOD9k2V(e3IO4?5_b=4^_ z)UCLr(QzwaMn6XF0M5o6wRRM~(FK}7G_+Ys9Jn^HpIvc0GBM;CRT8r6Y3+t!k2N0gYe^T4dwq92!;eiO{CXPEqu;z^eK@;VT&+-Q7Llz<& z(Oe;#1BSwP^fG*SeURYu{CHrxVD7V$*hj_}5w?u``pX;ekSi+#d>I~2cr$p|;vfB30ryL z8*aK$x;IJOaWu9+>(kogn1!JxgLv1p{m28up7J>=FGu1pvH!hsWfS?3 zkhTA@!`sM(1hhxKU@t`b!Q}@B^e3*qnr^xLjNEeh<)?{o)3aV zpTP9x?70y_d_@0~)kS&_KKLL#@W2D~xqCiGpZnbBI$i~KmQD9Nmw&*g>6&Yvdl*Q* zLC&1Heo6y^kx?vZG9M2iNyBL}85&kV~tEkyCR*prviApuH%ND#@IR%GZW@X=)6%CW2#_3(_-r|Gpf-Aq><`2FLpBiq~Za2A5=(sEsA zj%|U>C9fqseD)mu#(iI)M|ZpG7n(0o^4#?P@b}6qub?|${t7yG?i_vkGoPVPf9g|z z^zb7O(@~+DR%c^N<`x^G7+k#@uD^kZ2KU8a22oKVadSsP|)B~55QJ@hoU zLdGM}(cD~STVFhcuzl|yC7Di0=zBVSoK`ZI7Gp6@BxIm!6BzwUTb)&^a z)cHOa=&1cBYxa+@W$H9YAGVEuj^-o$DvwPfWs}H1d)sYv^{LZjcPF$C(C;u*jH2XB zIBfn`>iZ292`M*z@&EAd9R2zizCdRWgA%(bFcB>HR20`F}y~-Ge z&-Gu-_9yIfz!;%p2=Ma;W&=>BNB&^CKIqwrrzZ|q*1evjzhBei(RetT4sF3rdzQP< zI4%NgwVlK)jFrnqI-~A?8{^6xoj4j1rq%*m&g0=tGRfLAQtdT34pSiNE+}gv=~ogOsijhDvJU8Qc&Z49gByQdR)yF0aJ9*y z1|!4^Zuv9#^umkB79hVxpE?|5=j$T9-a;K|>?qTgj;8r?WLav#h>`u1%iEHcr1MHq z3Ce7pCF$vaQm(asef642&whFSRaezu1cy%6JQGv3oqM0rXzaLA9YXntBujUo1Rc^n zMK8MQYQw&mzlHXdS6)eXzWh#l>s#NtcQB&xuwE!}U;P(2f_l=|tH1i^@K1r2-}cU#%O>v)Q&_(s2k^~hctRPimjSta#-*^_AhHV;w((rKL%6Okw>-uXM z>RE*y^?FGZAbAB}J70 zKZ`3VCa$%AvJw$sTYP$UFA0vV^dr|U2@Ou@Uo2C|;1V{G6L^|JeyC*y90h{Wp+^6G zo$l~9E!`Esv2AehxQ)|ox;)^2yInF& zP}^aEzDE4UX7p*RhTYL|sRvP8JEKAaqDoEW%2=+NPGp$aR;-CKgnG_*Xdb#4%sd+t1brVD-x(pO$|35bb1bcDx z^$aP0McC41EuOaGlaD-7`<$UYTICyF{S9*<;xl)DhV}s-2`(5KyLCHj<0v+DENcnd zavYa??D5Cu^cTPA#dF*0;gyAV-E4BxO-!!eS&UpXyYzir>1w)Ejg2RN1J3?uwGG4;sk1odJ@59S0g}$Xt`U{r zl0MKg)aP1ujfT(T0ZpGq8_H2qZUjQx@H|antC)_1lDB}kqkWo=@ItXN`TF*rFJS9N zs)1%PQrE~V1|#XJd-^h0*AqB_3S~IMcw06Tzb)gf{ST=lBBKi=-l_S2Jf!89)ZR%&#>7x}e>lIkjdAfH&*yK!Jqku>8AptBh<46ZWNTfjFv` z5+{7YiHJjBs536lLuK9w65s)mOS>4ThV=H6sifv3P9F2u;ghI`d*Xk-i<~lMcdvBL}Uo3Xq27mVc+W52mYIZoZj5^q~(y&7<2~2Tk$Gtn;D2 zE4?)}@)BE_!Q$&qpZUyZ=$X%ara>sBgJc&GX!m8a1h?xYqiCD!%ZM>@o;=K#<^ek8 zvTe+;S1Jj>biW+g;_es_(xSudNlcI>O? z*oK1@q`SMjgrSE4X6E7Z{r#WoI`bF%@g8ThQeuG=V+`w>apT5OFtIe5>r@^8~ImJk>(%KcZ_ctOxEk(xLzJA^$gS{K9GXg+_ zY>kY^r_gB$d*iRldo4sY#$Ot-mUBb*_T%BQ!$|NwBMrL)(&pNne`W4rDqtKcfW7B; zyXLl`x&U^QAm#pz$vR6wICtmwM-9?E0;ByWoK!DUzFAsVz!n?(sgfGqb=6cbKEe}QTfY%R8y_ZN#? zZL_#*$mifL@RFisCkA_5*C)g3aN0VSiyg+|fW~6_dE{jn=|p_qi!wUvJWZ+@xUED} zH%#L|%0mN*Q!VJ9j}P-D-t%e7HcD+#_%6+yGn#nMum9P$xf51sHJ9Ke1pq=%)sPRn z`!8GE!OEQ2DbbG$ib`u=|Mv5M9#)0y?Pe zew3~qeoevGJTo{rexaX;1&D%eGA$$&enLEggS6zG0GMJw+iOK;A?UORH?>f`q( zS~g7eEtgi;K`Zu0zo^bNPI#h-4Nbhb)7Y<1d3bq6MJm6Uv7)ybGytEN#W5C*NR~dw z=lpDpDh7rYZt%JVph{(uuj`Oxu*x9^ImkPIihq~1cOANN_9~>0cHLfEGG77d zU;57Iv`?z3vNKYeLr>Y}IeJke*@(P&u4V4hbU;9h&A58)=d&PdCPAk8`RTXZf19gx zN88f&iK5!GxP`Wp6#zwM>EjtzhHoe0cbo9*{f)aR{uIqJau4iO1%B`UQ=osz?$ zi-CD?#Zmm{tQR--^H#B7>#ej>m5o(_bBaIYg1-RJ^%9ueg1VlwpZg_bsr*#bwQ7j48OV%YIqf!HDx?lKCYe7LtJwpfr1R-680N} zR$d&by5P6r>UyGM*xdCPht#!KH5^N((KdTNEKVeI0y$lI{$9+FU#k_`rfyhIw^5u% z0=<=n%ayE|6LA{L6PBJSlsKcYoDbj%Vlme&`O)DjR9o(MP&W?wO<#iCFs8#jx#bcb zE-M^JK{XI_HY%yyhC4yI?|?4=I7I5gn@-WgmBBhHTzO^)OKF6Yc#69@uY$7^f{A}UA z;Q0^JOFS}%_MEyC(SWZ$SX;iW9R(c~G?jQlQ|~ie%n48#OdY@v2PW>{)6w2^Uru3d z5%b5+ml<`U*CuqrVH0_D-f-lv%C`G&X0~n}$H1p+E5tT9KO32hj9v@8I8LZ<7?y=#KO^T7Ns?I_gNzgFZb5lWp z@mag8ARaaWXRkV`auc6hgu*1N4~9AroR-~%E1qe(!~XJFDmrOR-dFxyd6F*&qQZs( zVeC7LL|rR%gzFD?=Ic)-i;#e!klbGF4?GF;AUq;Vi$>{ubn0C?8h1r682$kzTBll~ z1M2tJ#dfzG#b&5*&gn0`WKnio9GRl=OI-el=Az7;$`0CUw4*bODNNdF>pBX6TzvCUZ3jNpn2~)O9 zDChf5@)nU!S+WwNpG9QihKpVo`0kNN4)9dy*|+WK!2DlP@)RXy61i+hKu4k4_io6W zPBo!5r<0oN8FcooUs+$i+YMy{WMN^gP;b2r3+ts1J*&N(diFOE?|6pRRsP7(A*%~F!!LNI2elSmY1&SW@A&#);eKb+?A|_UR*l)jCl|vfLtX>4`&bU6>n{k<||>={io# zp``5h^98_GY+x?bStHkb%ffLz6xne*(GgwsraKJUu|spsCv`!>$14JS^y`GnO7+fg zg|o3<94~Yv`NF_Rn>~eI?|A7Q(ptR5wr&Qwra!r-#3=i?>AQP}1I3DGJmN@?i6VRW zynUvdRvT>0zS2rWrBnORt7*@0d+T!T#gF2?YCn0r)<#d6ctp z^{*6SM@q1><6@562e8b@B4j7V)1m*~gB>hbBbx7SMV5Hu$_p6XJd#E*IN#*eTRP89WWXYE;_q9%hr(QL^~ zb-IELcv@`cuf@|ym9?b4F!C8f4jEM4#ai`fvE7hET;<4*F?6YSxn9Axyz$`~tl23k zL3wWn*j*J=?g55kp1J)e#u48;P@z^dSC8$wbWDC_25OSS18!l3K4;$5rlzyuoAaSR z&JK&INT~)FV`&d(9ZlQH^gP|Fjq3(OYGsC#MK#TxmC_|# z{U8GrQ#EdyL$F2IO0y}|id6R^N{x8iqd(mp>itmm!`jWlSj*k8ZhL&kT_5+f zI`Uc_m~rzxa2xli@))x@%tp*g6##btGSvC)Hom=k4|VL5KnZ=noA-d5#(jM>*;V#( zGy8$U<^#zOT}(qGqv2>woIooGn2Rakg)gO|xiY7|Lb>;)c8*Oks~ zO{NE3P{$^}6hWm19_}mh=4JEF-(F6LcTvEnLt0pJVxzKs%`YWLw|+Bc3(bnyEk-;P zlRqKjbC-Zu^ivZ;1HK*@&Y7bw4JmVjuj+7hB#%d^oc*!QQv6uIot3^S3(Ffheis0p z?-(-(F{0AkP@R(7X_EhA)O>(Wm|JD{L7q7~Bd z$MHz79tBuj6>bC<)mR}aT#^$z5!MksRwcK*WUS$aFvDdh32fRdM^1R^ik%pqw2>^g z*kkKi&B!6fZKzVA6^NoUh7KWdz5DALd4H&&6d0w-KtRlW`SaBTx6npNn#O6A_bX3}%dgTl$_54^>FDMbY-|T73N$A(3jM+TDO>qb9xQ}6cKkMj z`80sX$yfRK)XA`_B4YVRiMh7SE?gr#;Y>A`M}fazS0{%i3N_OLh7FD7`OP97HaB}D zsDSKI<)Nxie3!}3+$C$z7B}m`o&yWhW#AjSNpz5RoaD_>%+$)ph0Vz+zD3QxorOjv zogMQjY0$jPNFp?>exz`tu*mv=pgCA?{uk8%+dBi3y7Bl#jk zm`P;mu^{_TLvnfp>;6v5h}zVNoyTi44VT>Pyi2ANYVCFRr@!eZWgt#CIL03kb|9>QmCnj!j|9Zg`#JJB2fNY zT&-u#Dew*Qi~>Oe-vwa5uH&TcaM~ZStn@O!&5g2YN^oDIupAJi%{J>o<;S zI&u!|gWY~z;5NDdUA^+S@4}XB17<%;F4_s0Gs)|(?|ikiSxIPCdd%c9-*W2M&-Z>+ zYF!BuVKv`1N-2@S)m?9T=nCbXCldlI@=t+8(ow#?uO^#FqmCiVRr~8wwVRd{73oVI znZQmv(eGhnc8*Jp>8*aB8iCCr_9pa5QC8=eaLUwHFZ8M;(t%o7Z4)DF9B>e=o43{S zgT_CO-@LlmvMFS*%l1$}*N|&ac{aTiq32S_wP$Adk%ckvNFNa#6qho82HHxqvCFX; z*&vO@8F}v<78b*K6-e5v_Le=s{o-_HC4hWHsVf%4B3CWuQk-DoSCzV4`p>t40tI#A z+qoSeuDce`35R61QBg>g3D8S7z5E*cwbu`f`IH~hj|D5)s=yI@#}~?=yXmbNxRmF$ zrsqZ=XcP)uADUq*RDpg#oADiB6N+D!5M&uTuS+)?Lv(!~3@E7f(Mdr*$G<|KZ?cS^ z#yZ&)o7L;vKWA6*50iqo15=y6Gu&{m`&SZT?16#DE z_q@(ln{ztNm;1 zg&quh-;wl#lklpN)hC1~w9ogd+|)W@qv_vhnYX-obHGO z@~K`x?n=SBBaX8Hcr9?&Z0<0=_EkvpF&c7be^fJ4nWJ6ACH1f9*XCvcMvVAnGYm4s zLRa`y!I^~ufFg(*p=K>X-3Q&&>*bPQSNBTTiE?e+mhis{_MMHqa?~Ll8zxj2yw{BF zcrQEA2<2Wc_Ie85d-x;lFV|-MJ-N3zJ^39Y&gTM%Lqr_(RDDt2@rEgB{ zNe6m3O7CYH{@n|2zH?WTN;4Im-p!}g99=Mgzez84VwO|7%x#&fvhu8u#J`IOY7i`W zxmUFnelq;6$m3CA4^;A=*T^vV{Y|dvvl*cc2PXJ=Bv=JF?tjS^umNnM-j6*%@;2Ha zlK1c)dZ3r|=b&)7ia=|lHDT9O`@eOOmX(4Ct`H_ht_i-;z`FX&!GSFLksY^ti_cf>N}xzPxkg(S0Kp*F|0eKj_gIIBMx`m#>k2cEQX9r zc}rZB11Z6C#rBT2H%0r^goTIavDVlRZ#U%SRSBD zaUH}pvTZspUD@x%&AKVKFF(?j-oDBP=zK1J+2?RmBMf>j7ZhBWSJInDMsK)(h!*;s` zJ(%xPccO-kY{QltEPRQhL^TZ`!+;%y$~uIOg~`_UY|r!nEE^b;|5S)e3=8qJj?qKc ze2b=7qj0)yTCI_KD?Q?>swEI{dD{3Zv~e98EP`{f;d4Lp8f7b52&XEq{cnQ!;s zcTG$k<*U7Ee;8PO(tgJi_VQ1h4=VgrF~_VnR=j?j2zSKSj=WjP9yvjog8>&lP~R-y z|rA*>T1bnO$CUjs7nt4Guvr+eC(E9d2jQvl=N>pl_4ml{51zt%p70q!H<@<8K z-5&#AjG^H=1cH3eu>ruLQfN(m4}2j|l`?Y76`_il25V2MaV;2YA;ng?#~(*9;b;8_2RVj##54}+0W0k#G%bI8-QK_38X;k zu?G->WKn{ar@FkS55Sd#QOllD7VaAMAAR}Jg{MlNh^-j&u|rW4xHg~;=p-$8#ko%g1`I6TJ}{nkt}xCs%5z^;3^JsqLn`VAqiF^C~LUvmUa zcZY<=8k1%t(32e?-rnzxjPPtXF=M^_BgtK+5ZI!CVSI-inCPGhAc!i&H{e(hT6MCi z05;m8v)qm?sUc^WWbXID*VJYrd z-UsyAcidD&|ElB(R@v7}%0IDh%BoB^nPWYWat8y~Z3j|Fhd;NkT9A=Yx49x360qoK zIyxa$^=0>KbKXnYxa>C;oiKGDzV?$f$n+eNBgVPa*;%S>6BFp4~5hU%kaJ z`T;D>g#r`8c#^B4*z}d{XTdJ;t&RGH_OIiSrq5KoFMlCl!l$-2aJ^xHLM2l^=9YOS z+WaI?ciuFj^09mM&8If@H2TAmy7Q@OvKRLjOQYnPY?7~xjNq=qnH}le#v~zkhrz4j zNWQy-&P%cQ8*Ro7RO-GfE2oodzNY^BCV>BVxM_=bn~zFULEOt%Axh}3A?am)MYlnw zCc^P}R@3p-O`-Y^1k%Kp#i!Ow!fcu7LLG6QcRkO&nmo+yWcUnjjzbK;j6T)g^*HuFT&fYjDLunV%1%FxT=bbvsk{4yt4E~?S>Ucn z>OSup`zbYCjYm8&km9ljQ=zoeYm{R(!z}OEMHubYYQ6Ci4xE{Pd|JP{>xZ%_)iD{5rmz_;%)MOUduUJxZLL@WYNNX2 ze3+(eV@9=bD2V^NhgD$bLn~6;2Y^5kun)(bT-`WJ;aNPIPaiL;&Q|QYOL;`N?ly> z8x1t#P03}BC{c=O&V1qObB@eQ+%9dbDGdIvZo+1I{;JPI6#Gr2ncPOVz7K;SaRe}k z?}Xt|Al>~M?Dk@SF7NrX^j-4&vXtIEe1%$x5SEx26557CL3_4Xj)?m?C!_HRYUaBF z3~bGEio9T=B$>3`!=IJ_v)5hdQF++Y0>mnNRk?Mx_qFEzQ)RLKiZJftRHbkvTSqlh zX*pze%)B52;~W2nodAr^$1aWi#nl~04%>J{7bGp`%d-r|t$dyN?spKc12OCSntlx6 zA=Ec){UO@z{Au^sT2gA;wZ5O?togvf|9WuL|FH9Rg(ivy&Tj#{@FJiXdp=i#E)y`Q zX$Ueq(6*IgjkIl$GJOnXTc zQzfA=i4BPY)vC$SjpH0>Co=HbALRS>Y|WCO<~pq7R_0w6+Yw&%&g^<+w|wVRw}ZFh zS!0)`j=tfEi8+um9+QIbMfxDU3Dm?7nvqkF_aT2t^Y8ZU5iD1B;UM4;{3_HmtE=GI z)GWQTW(}%($V$7WF3LjPW5d8Dagh5{Cpud5mI8%qcGvDZzshKS z(wO`qgPJ~F=ECc`EV|C7ceD%S225#&tK9}miYDk+k75&mB%Fe~xhLn&D!VDt_c4#| zH+QCljpH;5H~{Dv`xnY8fpjQ~v|;~e(u)xNV#Y`P9@=h%p=mD?dLy+Q#wX`M)iO*JBIEA+SUF2!_`hxJ z(bSQHjY+IOr=)f10pbSpi+_oC^a6X;4^0AML;X2TeCFn^S+nA%)mFOrDW!|gLi8$E zFgEL}VB~>bo^!oEMEOpS{vhw-G^{Paw4VNlOxRJE=7ZAw;-OE+u5ZLwacYIP)yT1s ze}ed;9aBQI=GI_#m{F zjDv1#(0s7Fo!PsxS}B1$BQI{~*Yy#wO3xQsL1M6hoszU>cCTrky=24-0a-C7B=qsd z4O`YRdQR=G7d*ks&UoKzb?;B_c}^ql${_a=_sQA!OrDRc*#lSUhu0R#Q?3hODePCIv>tb# z@5h85-@rl0$LtY`vv#ZgX7MPnoW@4OrUmNQ^J5VhI!IDa5@Yzbj5svaYTQT$JCp(> zajhY>E_ZtEiOZ?P@Ql&Cl1iy1^W}{)GlsBWm+OM@(-Q0Ob+@bt>pDPnE}AfKv(QQT zRo=F4R_e+M0lFa^AyVlM1NolIM$CLD&rn9K+f@cX9y%FLd>}3pd|mlo$499y8-3Q=Y`%B~n>BjHt8Kb} z-r(tKE#P#8zOZ40-jcp1$o?OMGjH1%-^sgfmDH zo$VOJ8p$or+?y>PW8WU`9AyL`@0KP?FbYwFl{IpIhbD6+eR`9;?J`r*I2rW>%)}dIyh%nE?5~Ve>tC=`fEAQ_RlBvHtx!Ws z={$?$>f4l@M*QW#@e7H#DGnC1(W)>F!l7rjBy>dhM@x7$x=I$4s{fd+_O$#XpE@&V z$2U5@=ICll$Ny$5O}0L}bn1i}8wdi1xy;~u(_R;cJ-3dl)9WDx+O?|8)KM-$+aqn3 zU&YE$JNeyx=uP%!&2lTrP1uA8vuS&#N8_k?c(xV@o#;9a+L`?nS*H78VB@<63dR7_ zUT%Sk%dw-0EXW zgKKbDn*&%^XL690ucd#*iAVj-)%NSLYp)QB8RlXkR=O?EQuz=1&7B{+R^}W7b#=2F zw5&w=&;p5&@FJ=Az!?oBhg-rUDOv?t64ccu)-cKG^^42;`wYrH@cpoNN@a#LqH-wJ z=SF1ia}r9>tVJWo^I2m0N#SlMef#Shv~vshVpJkpD{Bd9vH%Y7JgZDt@Ic_@$o0~M zPqbb8o=%Gv=v~yRS7A1B0!_0sLqHGp2#7?1Ci@!oqzsqcShW72VZ|=*36x1OGK)as zg@voVc?5zA*pp}gJhZjf@`cJ$N50tlRMX>ElOf7cN=g>en7_xWq_)us2X&tt@5yGa zEBNSMV8Plf-PMVV0;(*iF$)8^H*UO;bB`YeFqAd62afb7?y*GuBcBsL-XHNbpL}Z} z9WZLW2>D;^#)!s#(l^*6tBNrOtv|HY-`RZRDie}U_5j2>vA||afwno#9#7Knn^fBR z_vDYP5Ki9pWufQmVrO@vo@0$2(I!uH;CM+k@^S68R0gg*1jQ^7W{^xp5Nb{EBZW#D!>Go86BDTwc7#heSRW;OlQ-?XNSYg4pCI+_D3ow0) z$S%fX;mlLX;2U|SsX9T`8XU?&&gExWVJ~h{Xj9ehpXKxL{Gjv68j_)yebzN)V@V@2 zJkfDs;>(GAE35d!ls!L@ar$|-iW)atisTW@neb;O(UEdnk*d68FtM_KIhSKhVX7mDlwiBN)36+B`s;9$w9*vqdEA<+T8Pv+P-0 zVPvtsqmflH!HPL9&S9l7i=zaGZU0jLNV+#GR|@T&c$&dCx5kzMamKL^R3qXTR&d1g##LxtOOD)KM{cxjiT?sKet ztq1c|l-T;U?4~|@AbGp!L-n?Jcm_@HwY0xQ{vMHxf_(Igjeh@o8JJU%+>O##!S_z!SR9gt&V>lph593HUN0yJUPI$+;(^Yr`L?Zt%F% z38?ryK_~7#x_1VlJhG1Z$~oPT6peq{%MvkC{f#D$mfanbl`^3gB_9?6-}id!!zs_5 z^s$}StQdk(&O^brIi7lqQwnsR#T~hmCZE2d{(4RKyEatxdPvKG#$m!I`_ zsIke9r@C4uoK8gKutr+&mqB{2xv)-XK#E52!01OD!clT}wJz4O>`SRk4R&28 z2CAm#H-62T;)jYI0`M&6?0KUE_$a9J1kp^`e8IudNU~Uv z{l4xb*nQpkRlv(ru192mJB(J;OGoko7-U+_+TuHXGO@R5II(5r@2ugW`Ei8K-~O{7 z8uT1V74%0Xl1QK19<;A2Fp_b!c$R{R|MH^*tCOT@8XDSyk+WE)q)%T4gYsxM>qluf zI?yJpa&J7#CxO=cTszc1SG%D4XJ~~$`dez0si`}FIH>7xGmv;@qs#;zbHFbFSZ&8V z|5xUdx*+x6A(7lU1?^cF?wq=8xnnGZ-i&cbrKehzwc^)$y)cUWsX6i_)OM1wx!k6> zo%q0EzkwJezgU#&;E{uuuFB53F|D`xnfCvCJ(i@N>-fMYq5ruLto%-tIMhA_!}T#h zyoW-De@tQ7J+lCI`GV$e&2%Nex7@+0;`0{Gk-j3@M1y>~(3l7~@R+F5mqNtFOd3Ku zV?+mM1+~fahghhf44QUGx#sk|9E3^NEZ;b(kje+H^!T*bv7M_VTe@`r>J&NE0a#jvFYx0~3KRohJ{_SZ(h1~rLR z(9$?alltTMG;3Amze2(6f>wy{!)J$0o)E#8Cv#Dh=A7MLD7lO1DUE)0tDoNnKsp|1 zo=c$-6-*KQs{cHFNATweNR1KkFTyCy=@nZ?nB6>?NSnxkZ=M(gFcmZ#1*U&2i1+wc-~bV@FlTud&^h3^rzSMU!kr7_o=_E{xyeUXtRIC7VLSo1=z zMoU|A;f%R~51j02<^RYz!iy!j$ZZ&qhCYeB zdE%;jZS%wG1|j6!icI{{et}fw)k>_trTF8MH<8;)lB3x`hQ5QHSEwZ7sd3xo3@)JH zGUgo~IU@LjRW!p{jHFda*!Nk@@xn(D-JQv9cc1b(>q}l`$$~|ASy*AWbS<6Wx98d4 zObsF5qo4-zYytb;Dla6(WeD>%Wr7}`7jXd={sk&Ad>Do)51|NNY3s}ul{y#WNdE#k zb)$yWi7LR}ZT#x|-%~ztCy`aP|NOp z`?-U4&i{2XM<$SZb*yo9RSK`xR@E7#lh3LsZ0FkbB3ql|uQ=LBh zKx)?bml#oF2E;(aY*W;BWw#xM-z%f?Yj0J>L52-7p3K?p`k>#BeKBr7`bgCJg?iE{ zvy$$D#IN7p=PkvD36ri=oa;lQqhuuQy)! zW;*>EYisi__%W&eJMwPUrgZy`7v+3;K@CFRV3@?;%S9BOo0)j`snaz6U?`mr0A8nE zD*c#uh0}s_MJ9!?-@j8tKkCZ8H~C&)wo<$A+jwHBU#(K)A8z7VtO5$V+(bBa)Aw1B#jPn`Je_xr8EE4*Vw8gNj*Pno;ztD`hKErkLV0E0xdq89ipSN1|nObh>Pamp$1K*kydZXw4yTyL}WX@c!60=-fdsNQ=Tf>7wG3VkY309wTVoo*C< z?Z4yp>3<`Ko$%*@Aop^^*AK^%EzDiH{TPlLVZM zEGF-ehSw|ipZ1#GN$K{-;>$m&Lw6Q3bmM^5%BY^v*~-%GBlY^XhtSGh_vk0moOKz^ zIP=0n7O=PHjuw;pEv7U`u=c1bD$XoWCNc@FX5Pcj+_+tmxq!SsMJ69wgVBy@45vWb zJJ2eLQLVB+iU?6GjHUzU@$oN;*J?QO`LE3f`npw@eMicy59(Q%DZAsUJJ4&Yy^yWh zb+c_+qQUo$(J{6cw+kC`$&mJ_yDoX~^TUDEem<5Ke%xo*2WFe71;k8BJGmwnsY8^t z-oNvuSbE-%eg-<;wZFLe)SMkT8~vzB_cPYxL*C5T!gQAxM{T-b5t{mk<>xKz29OVa zNny!c*?AjCIFe_t6E-F#tq{`|^8bH_y%)q^4|3PoJ`g+8?HFcGR6k&NSe8+F#4j*Z15t?j?E>|ctn2e=3e*U5wAav}=jqJ9E zvya;p+3pz~E(kJKaJS~Q@kBx2uX<5(vm>vvpIIzLU#Z{3n2r_kA-bf1-{NvhN+7p1jytI~A|M7KD$!6mrmr{&GCid=^N?DF!8) zm2gqhvxbeQ{ey(X%{mPlEC!>40+NovsXPMUl1s7k@Qr=<9mKflEU+ljwAW(etpDdX zar2I>-vJ;t2@J~nO~31EK%%F>TWWr(4B&k`PFx+!j}&tjiK2~3U`V+N_<_eL19~%E zO3?c3>%T0zeqq(={(M~Rk_OH;S*_$Z!ucku@6J&Oaz7vO%-dB^S1N+kC0wN>psQBX z@Eeydi$E-VD*i>9Yw!|ffcXwP+0o#9o4aCW_|F7wjHYJ_YJu9tORs-DjsYHaN1*fzFj;U}roV8!H@cd?R&zvt{uaQ&mCH zLhbv((&)3$J>iAJoM)V2MGbm3aQ2Jr)#Y4>_f46032<>ol6X&!v{s;9`EzDdSTjcu zlYatZd^6yS7f}r3H}jxqLIGD%_+T$dSDl z&yS3*6t7UfvoiKLMrULLwwvzONPjD@HZu7>jF&}o1fXw~ElT|5LfHcP9$1Dcw52`- z@P8)@v$)s#SN>{$if(Ze_I<#eV7&IFL&pRCyLGoEeMWcYlpTiAp)WrlngIv4Oy)b1 zB6&3OmoIC5Gqk!slRNIZQzH&G6Qi1^A3PRRadm^?!W3UHVnfofQr}#Z+bE~$xz7>v zShjMBRA&|X7bpDFNjHMkf34VK+O(m1;uRpzv(dl*mvFI!xJDxq($q=#$%@G`t4@lX z@Y0fN}| zPYHavNKDF|8<(rO`OA zP`-00W&%$mOgP_klYhLu0#|I-kXH-nCebt193;Q_E>b$dR`Mh4A0QoNH$aSXPjxZZ zUndVG!y5Y*l()S-9uj>N`bc}w%c!faRb(`@0 zN{Gjsqbwg{?wA+bo=E1~Yr3>$)pIH%_iO`7p;BbUu0xQ+C*NZnP!#@&RyjV-q z>mSz*^x1uKDo6(G3BXI|0OCFZjXO1q*9N^vb%jlFEy!tpQ&r%g{D$3vW-j$BUR6Q` zCOb7gDBnbmU#me-P5X}UHrQr=zX!S9tyKl3b^sCn*YR1?TH-+2=T+(Ukht5fGoChahbz;D4L zrh_MFDAIBYXnnf;8P{&>WB8iOCB*W=XA$T1mKW3j;fw0)VU<;V&B<5(m@KWY@_W?6 zKaA7Z+$_rrGAE>ynjJeFu1C$9%~=MrgJ4|Y_Da~sg8xI4FG2Ty7)3zBo@}#>=G96q zJtpOEeNoNM#6+CzG}pa8t=$e=%Ot%hV#31kg|~CF)zqS8d>Bw|nsB0-ucI}&TgRU$ zuYf-`NsEl9Szb@W$?O{sd0P|U^cy$XU!T^kbMfv|t}#Cia9g~zD4Cw`NYAgo;i;1! zIIKYB%}W&0aa;P4gz9w~x*$MLuXz@&XQ|@Oyip2yos|BJ`e-kgrngdfio1bPOd0E$ci$pvEo)SLRF0KNjA4?}3~C5! z+_?zMeuhli60d>k%=i(eV!- z6)Q3D@XvXxN2!{V3SGyZ*IRo&TmU3T_rLk94wVlkW)NL9qmBh#s_ePO8*EuAn1i4s zz4SNn`QN>jWrjgh`>&_-uW_7_`a_#(4>|IWJr02wBq>+;IF(;lExsuP5Nz8f)&I1C|@iHN#8MsYeQ0EgA|A*3xYk@hJZJ}l*-m6 zyLyfVRQ^4CDMs-it>)eL{)YPC6+Dh3udUi7YjM`D?swTEL83Fi53bN6aE@*CY}NO{ zXZF7Ui*Kirl3J2P6gk;>E>?b%`7T0?iJ5QdbHc`R0w>ev9Mz&K>&-OmFluJ1Y4@Dy zJ)#qrK{v&XSRv^hnAsdu3uu(jniD8n=QZxRthX+%=bb_39+K7knx))2%m-&|^xXOi$Y=9Eu zg>v6Tik>XY0|^lgb)0*7r4O{F(Qs@NSW1eXy^XWxJuG@#?JO`- zonfl`r*}(+I8?GXopKWYy#0}{4K7)uNn&aLy{ZaeM`d$+Zph#IQl@!&Gtg#WK(mPv} zjo%Lbo&+HZAT9$jw73>XBnZv`KaBg0N`K^CnP(fc&K?P z*UlRYSKrqZ>?R$rJb8U1oDxte$jybi%w&JYf*K?tsE$dcxhpAtxk10Ld|+AQCVP|+ zy+N7OCtb+gg^BhBZlWm4tj#9nZS~I6itAre_o&c9F)#=pS@vFf8>ETzLn6|ZID8S9 z*gbvnQxpx-RrLF5dw_XhC4upgQtWRgkv@tHG_!V$PD^q6?WU~C(rcw9=D*RQH~n%c z26My@_gTfco*!wavJ~yAvCplP6s7+n8~pwk!&coVF`1oCf<|cwwWW{otUVftKdpSh zNS`mx*F1Ch5TG3-teSzk%%dl$u?27h)ysdQwX29uFeHCHJ9qVo0kYlq++~0CIl~b6 zWuX0LF`nMMak3ZfzhjHg`JIpKBtwP%HbQ=G9QMW0uASfFiDWMD z`U8wed%$2~VRH4vNp>NO!jZEFQD1LYaqsJPx{=!&Cf6IuS}k1Oy+0B4&P z4pkxB8{TM=PC*ZZJn>FlM&@= z{Vj{@WPUt997@Y~=Ps+L3jq8d=xg0cQiM;p*HcX3|4*#Cg7Fu)A)_@K0^5CCvwO|H z;P%Q#(Y!XTT? z=ZYREBk;Nhi>+mKkzP$dM)v!W$ihNWpw1?4QezZ&=fn4YKva8S(2fQH$CKCNS6r6F zmRKjKvhlthO|?$!)vTBbsG?N#D7qv}ow3ms+D{PAYZ(Z1|8`luJRc+;6&d<$tKy}7 z=U=4H(lccG<+o!|N5L0FK&Lb6l@WPLY|S?R3BRU<9?J^H-!++}E$8ej8ZB`0AqKVQ zRxC@;)8-TlkmV7Q^*GFTU9^D^&YC;q2qiv?&a&1*(K5W}YM4LI?(OjUsk)-2Xx|7+#MJ5mYTO96o7g1w6k;^oP z=pZ05@BaXyaE|1I2-=7+(^n!M?xKsLx^eR%3~dh%OakasLjS;|nMMC}$nnSqnp*D~5v|E`hd6#H)9LSi8;+crZyt7C zTYwIKk#rC-mNhQkPuVd;DvpmzS%0PaL^Cz4q+q~XRSFr}`WA{9PK z8#AI{B6{IZqpJ99AJrPZ^(!HO07gpx4PZM_`FmX?HM386HnALg#jG;P>rVHZ96kR- zOS(p3cRebd_h2A#qvrpClRu`;CDS9KQZUICgxk0F5{m?2vi^mAN&<-($`Z*dCe>uK z8dcTG*_jx@T0x_}rAqp~B6D;^9=tb`4ZsVr9%r>mb>^ws@8uKarpiVW@&gp4D$RQJ zUpiEZVNiNxLFn9ZtoJ{#*q4)|su?ye~aZ-f`k z4urIYtpj!#$l@07b|OsuGj=v--9tYvT6`Y!w5{JgN;%tH-hH5Q-n#66)d=cRPFgCm zd}+jRjvD@p1%kK0qTb=_h@|{~R~y^XMPT!T_}KfmG#qJm{~uFt8BkTbybsfz(p^eQ zcb9}HB}k`qcM2>Tq>+-6?oI)blFJEvJjc8)1~ zb=f_Mg~5<`2M2ef-6_W;N2S>Eb$o~F>WD3EL5o@e={Qs-&s^dpzEJ9MKN@SwKhkSD zHPs6IXqcYgNu`v*mHsF#cQNTgosB|(Ej~qXXbc0Pn*Zmu{IQH#pO`vy`$)t{lXr@a zM0=6aL>3lRI9a{$G*rsrG!tj_1~y28c<7O7tj(C4OyJf&PfTm1IXl5duE|oJ^HP4E zNL07ee#{;7OIffmUSJZvBrWN~Fhs zP-OaB5c?BS*i8$n4tyuv8kq;PFtE=wf+i}ew<@>lA(|Z0e{h&$V)!%Ozfbr$fw^Qg z&XTh!ut`@-!x7B0XK8j`0Kna@iqn7!#MP7KS2BXsX9YKJ(*$B096ZF|BOJ66<)kRb>M5Z5GuigH_Wi|Yn}ZxzL|FwlyU3}I0$j}al#RX?!xVA@W3OmGu8PQ%e9 z8jY-1m3BnKzND9@Uylh;Q_y%}vqk+mgd2JC)XnQm$PI9>wi!ZA$e z>Q#mgQ147zT@`v7m=Xm|Io>r*&@>nx_PqUZ+_!>@cV_9ql=%F( znhO6ejRBbczE9O86ECr&p<=C^?q~9PNnLySM%!oDe)rQ+!cvllUO(!+$Q=5LPEY!NSCtvL)4%$kuLq(X+8V!s74?Qqscq{Z2sN@mbIpH=s4Bm@?# zbrS{axehO);XM+|WfsOBEKtqJc-e;C2;%m+#3;rv!P8f=+sJv!UJsWIBwb)OIO`;9 zRZP87AYfX>oyqTgA6!#o@n1x%mmB=kIfTW?f^y{qLk*@m*w{MsX*2*k&v~h1KLqd} zFR3G5akD%P)-cR#lE^i2T2+Wbputc=$EPhMVsXavfr%+SJ0?j`pU|Jdi?6i^shtuy z)z(i~PBNchva5YJIO85maJ2Q?PALriz=pPfaH*jh*VCZKt$Af6lt%2nAbZeT;Oo6Q zr?U0rH{{FrVT%rUI5*6RKT^NRV1EKuI%;dI3LysbcNWJp#0W?0g$g_Mw$1e0no!d+ zA0*Jn#91ACRFFo)y#t`mP~W(7ybBw9WJZjsZ9NVpoORr$K@Y)M8lsprBsX4ze8e{> zFLhpB70$QOx8sw3u8M;GiZ}$rBW7#*^{6yrOm`^vqXD`{m-`2?#j35sQD-0q4UWL> zM+X-d3GM$w*^wI2*(l?Lv<|hbpD&h}2KPbxB3qD|JH%=ne>R^zs47OhxZptIgLMKo&GafFS(AnaPA`?7Sp z@WP=iGyWQ@&ETW`3GoBaA~C!q;O0d0{DW;$dhewmGjro%g>21B-4!ZihZ+Vh*V(zi zcP^45BH3UaV}2(K48Ji#>G*82*0Z%2 zGS2Z-ak5cj{4Ix_l zRzXTHmNiP6zS&G{hU2;BUzkpd_cAoC^zl)gst|+_(ov{gN2i#G*l8hQe&$l+!QHI+ zeMKIWdxmydEd<1M@reDkXtTEybLk7+HTY=ZDKfg3-sdd zn#(58y&*1)SZ%;4?&{_{&r#6?`4hQ`gfYSlZr7~_5h6gI)N72bV)A-AG&cC15_?cu zkw`2f$EakN-Zv4xB2>oz%^zn;UFHKtchz1V&I8fgl8sou%~d=|x6XGlmzart#T?eX zEz>~BON7K2$0c-u<|exVqS-GC%>6eaukZQ`{h}2eLTMIqr9!=pQPX(Y)bA( z0nI`PWBny3QgwudXam#J)U4fyj+W)9!Qf~`n!jub589B@Kl*J-C)hhi?D z5z2|H&NJ5il6I4`gy7|VFC-#B2lwffmKTRdBY?iN*!nZu;q+%Ie_4CJu|TvK%YBYs zx2XEP{dstTzAKyl%I{T_fALRt)(Yo-(4tJB+U1`V#7aCZ2RPh4;zFKfXXil`RP!1Qov16Pr& zVON&k*+~2A^iFqYYLc*;yf4Xq z?M#ENv~+3k{W<=E53-+y8LuubGe&TONYeX|no(pV1V5WBgkaOws5kd-n$ibAh0TIK zFsqpj%8gmUS%Hm+aea8>jHNVqnZ7Ke{&C4@15GLO**1p02BUX;IfiApG5V$5ggZJq z3XSD=MD5d9(dX!do4Cmpyk0WK3aM=RR4GQ zac_whL5(p6p7<4vbj|&^kF*v13pSNAeDjfL4jJ-&JJFF}%@({BF>p~5Li%nVra&pl zi~B>@K)4(0_oJ703p0p&-z%r`IIiQxGb*gIIQE~)A?(Ra@dQAc+QAnkaUmWpvh;|$ zNC2lS!s1BeZHPf$S>N(~9E$2J z#_s`+-r-te|DI z8I{l!?tb9F+z*F|8<&MTs^oCcSXWgoJ#=qMzGX4^3f`H&cJq#tS9$9s%0@)>=S#wF z6S=(W!M;HD1Sv3xu;Y#TY3161F-73zu181Zvx>y2SDg(tzXr!2rKnZvCmH3H$hzsAQ7n>4Earfev~kgq}Nx0lDGr7m{jB@GTu`e zhXnyQns9(dUz)6u5U`SnLjJ6$7qi{C-L7a3T}ABO{(~B7l&o^$(PZRG25&Vz3Yyc3 z=>JZi1ER3C%!h8XZ?~(Bk&yTgtfNJ8p584*QIn<<7xQX4yCS%fGYf4F34Wa9AGRzN z@<_}WcD^dP8mcvCYxt<>)3Qp3*9m#EMfU{;;ST-=L>xLjWqRHpQ1**1a;aBq8PipQ zI_)oqlf?@yXI@!m=nLy9F6yIu#T2P>?TQ<7!ASG^;%+1(e`Ut%p%aulp{d;p6*Kyw zKimG$I?sTcIHq6I!w*>RLNIC4GPV)tqtmy@Z80>y zK>%-VPQApz?v?f_J4qn84t~ZWn!l?SO6mVjBgSdgd#`!jx|tW1DWs84a9o8WcI!W z{kl>0MkIY+Bw{-E<#b08LVn4KKt3OS$NZgIS3`*Q;9vsF3qV+;P6}U@G zPijb}U?5lf%ZJ1?@D7Sed^W*`(yRJ+UPJXQ>}QHYlr9Bn*lI+x!s`TnevIQ3!O+V` z?!LGl`&pLojPAGDV<5(I!dBQbeOm?xQ@p0>t6pBS&$m6E*PJk}leYMM6UG!k1Ep;R!T^xHMezCBFe9yoeOluEqlW$n(A{USCOH-S)_~~aXuYAr8XCA%EwzPq4A|z&Xf#o zuu(=1#vD(Oh>VmgF&$bs>4#v^EN@|+yvzoWk*jEkKbPj-0Vv`gEB8?TKU}Bqb`e~l zP-k|I1{-t;wRiF!SYNR$|Zo-*iNB4QL}SHl{rK(NdBNGVn=1B*X~ z@E&gbYAOKJYZEkXxu`=`O{c+EHI0WA2);u0s_t6aGu^2l)jO{0tz}q!?`jt%L>usV zFR1M2$J8h{SJ}Z`N`G>=WIq!TvuqerjnEP z3^WS8l9`-cSnT=$j@t1m25NN3k_N)IsCeA3faOb@W^}APo*}NOmod5%V?nHx7 zhTo`5OO4&aiGxyru+zdyZHYSW`CGpdz>M8VD-WWM$*hMM+hDqehWkgophYNB%w=@N zQJnD>_j;Awozu^vH-uPYSr6*$6yEMe)%5qO&|f#atF{(ZTRY5tk;4Yn4I8gBYr7hP8`v5^)MoqSuFNU;R3Qzmq6vB6te z4>6^nXFyx*`ZThDH=B~RqPGPL=VcQfrFJhCxg}t_Ngg_ZyB$VF%xrEUaUN`UaufG| zU+9fTgCCYnNCeyJUDS~YcA4`L7h+{GC)Hm)!M4u=r&cy2cBTVXBoTww zkjz=llDwrI$D>=t7LG`JKNTQ^55nay{yStU+<%6A)SKq2Qa4WoG+Z6r ztQsktu^ib3vQAyB+sEJGYt3FQoA$RYy+=I@+a>>7E5WE%dHCU=mhiQ`@DVXG?eq=0 z@Cm6E0h)a_k6i^#?b>EH+5aDWfRDHBv;g%vWn7>5#)C=6S=U{}F&s6bz~x3+4r2P# z+!GA*En3VnJtTE7SH%9~M*llWv#Dv5U$(9mvL1|7f6<%0{=-T9yJNjy3*bg8srM6+ z@SIQJ68=ohw=Q6D{7(FZ<+t#tA=*cI$c-tuq`NPe@V{~Y`@?nZA8Sn?=JJq!ryE8{ z3eS8sJcQ>DIQ;*<`>*4Y9s-}GEE;Tjv`VuKZh~HM(f(;~I6P4AKI8du)T+87cF=Jq z*THqS5%4E2;J088BM?ibe=08R%J@S0m!8Qe!A+U*%Tc=hu7R%g?xzF&EB@4thyEe{ z&aTip&;k5YGTrq$ar*OIqOF!`eW%8e;q?7Sh4yJJMbaH^dLou>R{V0G1bk@9@SdDdg zAy_9Xuqd|?KlKyl@44~fn6r6C>)b`kpH#~qBJVf3^c(5gpUAzN=py54tOJ*t?gxx> z_y>hz(CJnm+@{Jc7F8F~zAx+F+#;&;Y z6UMdf@P(+f`v&H$1lQAxFqc3-ZQ(xCh5&o*Bd_aJcgui)xBlU$$rp!XvC)LN9js^e zyHR^f7OvCi3mfwZ+<6)Byog;dDrxBH4uy%`aS=Z7ygiOC$|vjV=sneOdy)K+{`LJa zUHe(_Twnx@v^9=fo$J}Kq_K>;j#6Dz?CM+K5^4pR7~+}^NS1J^o2%vgC)>7N)iewx z$mi!B00P48&`f^r>F#?nF#kv6jG69v@AtD({H}}mEl5AU^jmm_4q=C;nMMDMW07zZ z9zd5pbNixnEWVx=BjR-XghbH1fNoPq|@Y|%bC>MG$r-A`ysnqtQ~-IKh1(= z{}^&TB$G!7=ZXRAbo|8ReSA+{&f3<=Sf<+xv`EDQT!h9^1&N4l^#1AUvazBX^zKQ% zXT{YLnuWH?22SVEFXFEIh(wKte)b~h;bUql{(5d;?bi3f?=XzKQbMj*A-83zm!RsxyMS!xp3dxj{2I5pRz@ASOwzhCBf*=_w)8|Z672Jc4H6U3!X)wb55Tf(rXOh^4=!bZA;mpl zrPI-FXhoIhYNJ%}IPtVC#B}Bu?Yetk6;lzzjSBm3Hq}p`oZtCqz%er1#^(o1--m6K z4$(U&q(K^3|&_^+vv*esoqjF}e!HKr~joS+Pw|FpKbv&MvGXsdOm*nkBV>u$SjCs;i) z{&WgKWNf&SR41@vT)w4NR_o?4wN~wky53w5zg5f4DCX9(=Fs2YiC~&jt9maQ2jZY^ z2#igpN3vbcPD_aL?WK;f3@3Q(&-$5|oD0x=wT_sC~6m>mopw+4>h9y7@McdfbQ`LA9g^hFi;b}i4dc5I(N415DZOc49i#o!CiH(*<+VqSkQGd zuYYEY(}#=?^(PJRJ?~YYfy?}S{0DVl)@#IbOMRE`erWLUJlqaA$D|-fj$qK!Y#vBq zvZ~G;)Ix3M1*#7J6!^C8HI8Sp0j@oKEWh%DGh6T;) zlfM^)1f(mtPXs5lp)W;F7q4FMgr(>>1Y5iaY{XG7ir4(za;TZ`ZZUm3_b(=6zg7p^ z35UV8k;vFR*|`KPyW2e>@1uLRT}3*jk?OhD)!%j+2(WB3Rf5b>hXTI&H3;hekkzw+ z4Vi^HW4q~lmP-jdbtgi=S-kIw+`dmE8LioRCg!$E^1|dOKtee9c@W+tslxRH`5zbH z3mO%_i$Ky<-WAG@fRokxfv{P$e!&uo@(E9#ud!v~k>;_g?SxQ>o$id(is5pw8WnQv zURE!_JJ6%OV?yq_j*t<>_3D@S68X3*PtY=pqwPIsQB$ zGWW-4yz^Y-2*0#quo5icGU!($NZru*N)LV>m^@a2J+#Oa1)-}KQUK+kAHvYLB=n3AVh!%;)>zQ3%P8W zg`w@f7lj|sd(oR9T?s>v>EAjdloh=5KAwvD|7{r3s7HZUc@wX}r9Ps?dv+3~C*c)a z;d9rWr(ShM;-_s)9LHPNhjZ6|o2E$b&pNNvI&KyXvCS_Zrhu;|{)Z)u!0h(}4sM9i zdCA#v;gmo1!P;4nFh$SZ2GFgjijGIU>GR{*SRds#S%+)yS-md-s`>D>h2NCqooBdw zN8F2q*lwfixd)iN0aS!*P%DO|q@G;KAkK!+?Y1qD3RBjxe<~%9o0Td^`mTLy2A=nJ zrAW5 zqfjV*vVK=9G4O78aAkkMz$*el!?WU+ABJuroF+{5;Yy?V7617c;wdCVTWu<3dqsSYNvg=~)E;t;8vP(9@Onsy9Xxzoc#sAPqA?~?<*H-ma7FsBZu=ZTCyX=2b6$jhYv(k=AnWKha{?2tBhl&Mc($LLmsf5gGOA^lg~VYYL} zC(3G;&f_V%(w%RP0tr`s%lqQ}{sv6mp*p2n_xVCuO$vPwrYdDG1W>pJ8^ZYgH?k8n!WP0>@RjdRZepcx@p4|Oya`6s3V$h+%xhSkt&pb4BO4S0 z^obgV+7{$Tc$*L?mtg5(4H4wO#zb_kN_@SO|DnN_KU^sUf9#VSa}hS0q`X=vSJYDz zivBa1ug}wzw6XLZX!#p+=thy<%RXRY4;Cmnb%5cHyS;JYsQK6{Qd*ykp2$l z(V`xtn69_UY)sEFy}*@0d3?!NN(t1M4nN?Caj_tCwM#;;_yY7A2bHIs?*aDmhDmDV zHMHr5W?3`~t#MAHB{+^Ur(6Kwpj~T1@Wfp{(CQity;}bD}Z|)LRV>2kifb5tgav?Tuw{ zXJc;|RP)x6_P)^+K^+dxr0;RK;h2%>ts+tHtD3>Zu+=RXAr4Z>1PVjzzi5VMEPNg5 zG(aTp4vRsHXjl0b2WjAC!A3*TvDUaR!|u?h<-vMsfCl-gnCWUaKXt?v`V4yBkN;ku$8QS-J>4-93vHhO@*xmta)bJXdmO=NgZs%MSOh*k{awkAO zT37(*%?5hjJToAA0@UFyQx2F7(>=MvT+#;NK4MILIwB@$@>HQ!whXw1`dgdJpIgT2 zSm|>tCx4JK^PSk7**GAd(z}1{tMUx%H7={j;Fq^v&zaEe5M;RmQ#RuEFx!;u%HvwP zCgTu_0`f=bf{Vs_y=j4jF>zX6AHz$c zKVR9D{Hy~6^w8n6D!K$@S4|!OBu)x02ijn?u>+3507l|o@*KnYyvl&X_XKtYy;}?5sgT@KG8*BwGle466S%3ai3$AWJ&OK8AO{yQs5kgKyDJ zAs4A0pkRihpw#4G^qW;XiPUb@Oj%n+87%*x+2>cusA54M>Y_~VLGhlngd_+mZ6SvM z+4pQG+;ZsJC#w=2W96}>A^A(F&YU!3*3*)Y8_H{5W6SUp(YH~wVODcfCtY#)uI@SK zqC}pkN2z|>F;YC}q6g!~I!OlK=aJ)@8siNC!HNeIBUJoIoakIoZJfz!iYnD2-vwDM zr|Jlpi|a}6)Jn%8(C!TFUWZBxoK~95fu5*0KrC_H^J-(64;B_o7@-kigDnFNzl(ZU zQxkgc)fzeC!gkBkxnoT;5M}KazMy~-WEum^QoF+6cII z+yS0%!X@3_D(>Xm4ukW@yaMa|$a;|KxQ18QN6!^jZC3?w8-reF2^1{`vL~XJRkJV} zU_YH%AqeWR-47$%EWQJ^cEIWbv2y^J17&)!4#7mJ=|7k3eJiNXq2I4Bo{^{^OReVHB@AMwlgEB5i$5A}4e2Fu-c~fMxZTNG8-BSBHuc+)!+Tn)Wtu zL%E|p-IU)9b|9C@XACv)(Tl1ILM)AL+FS>OGO(3#q!oH|q?hwK7Ur(6u#Q2rD#YVj z5LI&rv<9{2K#cF{*@#rYRdt}_(1&xY6~F$jGyMlG}mWVycglw}5Dx9{%= z_eTz@#$sn0J>C&PO7rV524y?Zh*jQWF2|LY)4Ntj=t%0m)<0?~stZXXP0}NR-+`Tr z?!v^|Y;fp6vH#gk>dYPiu|uDz@WHDQUz|7>lIo!CtoNQZX|OT?jRO@vs-XjC=*C|F z{t^lQW5^;~u#`7DK4TMK&hwiwZ_ey(rDV$$7 zRg<)ax~M9>W}SO3l&y%HeNgV;r{4%M>n-LGJ}P}0QhZz&etdy`>8!3!w;*eH&N1RA z)g30Sup7=TXCMTBQc%yy7P?W;hWN0-){(p%xCP|5A5_-jqs~$`o=>|{{qpbgjy#~r zjAEa7B_M$3PzF*}6IcI$p=VKn!jID2%h%HCGjQv)YgW^l_5G|XJAqb`vR1PPVdsTn ziUgy_7zvj3n`C0AjE>kASD*B0t zi0%Szk_fF$ISJ)Z<{@&R`nX<_yg!bsMnIcp&H1*Ln*9OOB1@DtI98y%fhX;IFnzC`hCzm6@zTUlF2l3NCI!|0ConKJOUkVKT6~nUT>}15H z_+WNX2J!EG!}tr0o$7v>fOztmXW`Fb0&6Cu7rd>_C7ByXRGRI98d;j5Ovgm*?~rX+ znUbwlzggiN+*-Bw7hHR84!?03=5W|DP)Gnm1 zHq(DCB|LZ-Yb`P=hL7`7GnrD32-ig$Y2XXu(=SQVUQ_vd((BM3HA0V{QLMI%<=zpC zuV*}14dZC$FFdzIvao0`iT?imdmqLLWXl-4-D96gp8}L1@^4mXqTk~L_-=y_uZ7UM zI-^-)Sx7Oqi((fI*SGNR+MjWP1+NCYY1LGsY!V}uCvf6STFP%iuube7=0i)z*)$3< zJrahQ2ExipL4G}wCs23YFOIUBwt6-8fE<-SqS>ov>>vU+PT;wxKngFP_$&~Plo*VD zVO`hPeK^4+WjD!d!J#=M zNt4>b)eYisd6L(!@L)WLUcg%R zZt=Qqp_PilU0(@q7VJD<2(}#&l-cFpNN;CY+C#aYSJymo|GM-iNOFib?0ykqhP0QmED2^UYxVJo3&&kLp8ab|z%`v$ue*A5H|PKQR|4yKh^SO?;$G}_zBire1kRv!hxGl^^0A~r6>>Xf zkCk7oQ1DuI;vAgHt;O^ci5zK6IG#3W2Wsel{%ZdW1xjwZOT#EZ?9-NJaN%9@P3qC& zb^4+UJkj|dF=>(CgZ?iZul(mgTpfHNyZBAm;nY{~FMigkUJcR6m zO&gCoKCs+xHg*{QxRqc={95v3_uCfY11L1A!3N@7OBVXH^IL2u z<$}Que8=5_w=w8nmK4G7BO+8r#>@DyA-EjC5zyAn^#FJ{j5*PWymD^U#CDEr`IZe` zJGUp93b4s;t-*o3So2CWCYX z@VKhM3A`8RpO;|~tkSH5bmr*fW(CMu+r9~Bu1V}G1F$YDJ-!IJY2+FomPr=dzlO_@RE3Bv>GO>@t} zPn+h7TH727nygx0_{~J?boX9|lkR%}80*rNMo-R50oN9FIGA19Xy%3{KBysTUI_3N zPLU9A&Y*e7G9@rH8|Naw%3qXWuRO|x70l4$UPm z!4UbVwch?A+t!A5QtyOV|6lD;qtEdZH43H);V>Cd3S=Fv4Ajrn4bPxKSb*|`-8~Dw zl)4_moCvwCk$x3SD z*3!FYuLN#3zq0c*{puR3qIe%vQb!_R=PH%T$TTlmE6^7iCz*=e;dw0`ymy4vBZWC`-Kq76Pg#pWiX!jB-2Rq|(>oNv$$c|BDHm6(EmP_HMo|Cb zzw59U686VOv6?E{Il*6O?CR;F7jyK{KvEdl&77hJETG|+k<|t|Ym+&v+Wufu=y9p` z1*>dhk854mb;3-CgRN!i=&LXzKeFKi~q@fV8#i9Ek=}WP`d;`(TRm z^2=Ny&R&>oq@hnPSK_w|{BCkHE`?N&X*I_8Db6*5l;p@o6D_mwdylth0-7d5yIZ`1 z7cto_lArveWl67Vn>rkib-;G*cAs};r9N!X)YEL?JR3Dk1aqrAi)s- zN*tk4IMQ{gckj_!`Wp3q0gN%l7PXzJxVM^uN(1yZ?uEJX`lp32ds_P)DCL8#YOYm2 zDr6PsiMWL(&`C?NJ`N!~fL?VUbAOr48_N&#{o<_mr6`}`=>i}M&JQrYBEkc+4XB4`~VeWFXK zH7{bqUwm(bZKqgfpwo6V=A2t2@^Q`)-0_)h6$sA45jV+}|12nIIA)&3@7W)8EW+wAzbtk7l3z&QNDlr!y=tIB9|}P&*Y?MB?&#p2YH@W>YfaM_gwJ} z+47!Ah!?X`+ z4h>Wq%(cyM2<>H7gY@jof9ZQ=>@dNfxbf$}XT(9erM7wHIt83|>)_zcWo+bnH)Edm z1vJ*@=rPavr+0pwR%P>Wks6Z%Cl$uzER?J+H?qV&Dq2qsIDUMydNUy`-E`n(I)!Qy1M_|#?WI~kSb8N3r9Z{9Rn+%!(|!H+0f0#dNWKo zlKt^=I{~C2Gl{eK&>sBo?(Um!FdgMPS%mJft*;+XU;9FD0`Jz8;CYuyeaB-Dxdbp> zB($!tMvs>;li7`@Q^3dOJB@@Ia0Ud@B9*rD=^0&Xl`UMF)f7y`p=*Cu;hrq1zwX{V z|1P9~#~vV(7>&P5I}f_i)cmvZEoL=RkACNyvfA_l&!;Kk_+R)oofO*Ax!EZ%;D}ZQ zwB62FI(}rgMYXzqk@jgR;z(MFoo9SBISp#FrqpH&} znTN_`<^HR*nW6|%O~QuO^UOBmQ_JWJ*;Fcy=oBv#tKVAL*e14-r!oCi&a3%#Qa|`B z{&rk+Pt$u6R-0zGM-co=PHKoxjmv+2dPIMimO^%2=H_pIm9a zH*KNY96k%k1bozJz3V#n9fm`T@+2md= z3a3PZdcZaj!xveBW8lvfoN3fNM z>Y8OrxV_W9-q}W34}CA()0hDDd$P0QTx!T1Q=M`~IdS7$=FIRYM)l^jV$y=Jrj(fo z1MX`*wioYSz58@o-dYg;x-4v)$e@vx2ZjYasJ##M$2%kZW73MQVj73+R!pPggda+d zs^Z3np&q&+K*qCZx29qBBjg$DY=v{29v%@c1rzQf^6BGk(V_o0Xd>3qHt;eEn&?0s z^8%S-b^gR2He?-+*Iz!~Ax~mKd{z_GBSMT3_|wk7 zW%r-Fds8}wjIje9u=Rv5W~5&oCwl%CQWYN|85Nqhe8G_AVLJ413K{c?2n z@aAorr#rqSQu+e+`no9|ec0&<)mwiYszFUO0X^LN){l6mWDq*4&(2AqUVi`upaXW8 z2Rl4h`3XSOK{g}o`<@=E_47yqf^$GN<_v_L;eTiCg6?w9p-Y{IgztyZLCuD*deKZz zGlC8?4w&d3lraSE%?6+DHq@nWEu=|93A+AHfzYWaU9oU9I-G~oGuSD?`2E+jhp$Pe zSHMFCAX@xU%wFS|aT5Oy&$sdT)2JCP)vYue37%M&J(w~(BideqN#Ax`34k09^bTY%3PX_}!PPT6cRv#I8gJ!bb17mPoLDurD5ZXsI6{wPEiMgS_KL%4xdL{L z_nE~|`@m$Dm&#=`w6F8p5{-(G2zFV0>!;ZC2oGf#KHMgID6u$5mx`hjYGEs(yurk- z)KH+v-6JwMtZl}08lg5g1eWjKidtlgz$%R;BTJL%ujoCh54c@rXhItrzT$iiT@iDJ zM}X7dqm0O>UAIw>m3>`AZPD_T55}TbB~XChhQ|rh-Mvc#MSbuZ9b&;=+tGXJZ3PLO zozEB2cfIk?9nu^}{`~m_K3rY*p|2~53)A4)!3f5(!Lq0rm@Wj+IG3hED^FMdFsw5u zbfY<#b|RDX!s3~zuly5v%8@$r9Wid^SBhhzgs7gL)Bdz2IKV>h+@;T`sstrzsHmu# z+uJE%Ki6gb1wh?J^Ip)BgmM#Lr&(eL-vBRRQO5?Wo$|X5=){i)$Qa$Q<8Ip1Cuj6- zJIuQ9N4Hr|#5_xjQ@N??lc+(}cn+6+>R;xX&o8; z3{s6t1>m1)FT`!6mc=Qyu8b9{XCx}RoSc(5<&-+I$G5-rWkXF{5e%omA|Wxzl5512++P@&7s9T$C-g^B()zDO3kH6_cVUDJ?! z$dSAinD$}(__PprgjR(z9v7fYbZ=TSXF$8%Y?<@^<(qo=zpdjKutMN>Gh%Mb$Y8pj zBi#`4${iwx&y^A^*aR|mH~qIyC>MT%&4K6=c!?7oB*pe;I}c>sa@dx-h;_+zA05s7 z`itHmOU0$WxX8MR%b@q{eb`IRKNVVvJk`KJAzd5VPi53BT~m;1FeuCcx3dwl!ScAo z`>nOrcXJE}6?EuW%mq18rP`ENx&kt}Ogh@WOuIduxzkANgV>xs7U|CAEB_%kk)CO@e=-oY?spxp+Pjrv zrPkKT?B|Y73rXQcd9}=66y1X%7qVk?YdN(g85UBzGP{(?pr)d6C?!KDn44+FGswI! z&}t0B6OhfT8YMm;8~B^r2aG`?EU3@);}hAc+kvc40?f!Lhl0eid&I+%lWz9aUF0;Z zjdCLFVK1t}5AD~pd5qDAA4D&@EnoAdvJHcJlUeROq;FZA-bP}YIypMG)l6_2NF;k) zzJ6mXmO>(s41Tg@gO$ySFug<5j0a0zlJxJOJ(w{v??r-cD(FAW+U;D`IC!Oo}aCi^-)Wc#?j zo5@Kv*C6QGZp4gX$ifV$s$EClmNpN~&gFzFpyP39k=s;f) z`Mz%Ni$vIrG?wYb`AyKR4Io5CRE8wkB?&}^gOI49k|l-p+6?~uj{$Pyh0b04x!I$L zYvuTE65p@=W~d>wX1@Lf^}nV2!TAg0PQX=m%uaG@ub)C8>{{!Qr&O}! z6n&_<*Z$uWfy_k|=N~sZCK!}X+J>>2nXxsw5t;>a8Nr1K3h1n%=g5ONY*t%1^5dOo zzpX_%sd09BELjt7J&LLSKLGnc1iwc9oub!rIbeqT(ztnT6Z{a&~8CH8S{USdYJR4by`nmv~vgU(xpqh zy}j+!86ddci+*2C{r_DbI6?pO|NBfcfJflese9?Y@BL7?e(t%?(5F82Q*@=^Z~mE+ z^pOY73>CTR`v35uL$q+e%ik&AZru%hwdc!#D>44=qa(r_PsMDlW7CQ#>@& z|1u;r4*R127c!d8pFdyBe@$i@Yu}RRG{j#z57)U*{=mCW(EsbVU!n%91#5Mvr4B|A zneX|TibqQU|X!~D>|?b^x}&zPS>stt_ghg=^Yp6vQV(HHmIWTD{GOMN1_pi zQQCi9_G{P&A&wn8#_?&~TJb;Tc~;j|_rm`QPZFt6*YArU)h6^^>Po*-aAA=DjWVuM zHgl4!@;wcy140W^9`KN|4s}dO0K?VND;036UEMEP6DbemBQ)EsRb0C530Rz7s- zkUMhZ2yJa`rS`71{!fJ#@cdWi!wl5ms>6R%XSWNTi`PC&&LEMsCg~dXL;o+(90K3)%9~i)3ga;L{9K`KG zUjIOP^e>jjV1$&3>nL4^_ZOn6N}aw)%S*=Bqv)??r-}pnpSbHwzLN#N?$OUPBTTc1yz*&beG4Xz2S+gCO`U=Sh+PPtdc zZ?@O!MVtkD^dPV zq0p?_){3uaTbEaT!|}_;QtUrPE)joKpFj{9g|mwJoS-3F6F%rLpuo~bvGi+-0A)?P z7$yV;v(OB4BIc!_z!3j)|3tpvf2pcfh|wI(XLl?0ybVcxzk&ZVBn-4TV?2K|nGlUq zqEh#zHkolZfXo|#QCd17MEU3VxZCngibm4lT)s=sFdQ?nMy2jVhbg7^YP8gcdhPnB zgNF|v_D1hY=znbccmCZuYOq@HzkDvqWega|5-48DNrkU~{$B)z*$0Seg8m2IG=m1v zezF;*UM%laR~YzrSNv~)v+jR8M?05UrP<~S*lnN;(7!{#%+-6rssD67$~Z-^nQko; z$wHid_$i4LX@d>>pAGw;igvrQy=Y`6!~RcSvCHg#_|xOHFZzG6#=YH9)&JZthC<#d znH)d@hJC-YI?}$(UDgK=|L${5F0Uf2V?e^y?ok1dVMu`TK_gu|w}gNBk{lXR##>D5 zy~)L;?1(@o0vI$gJ@N<<6%3>LhjlEY70YG@6*6bMN9CLKLDz+AQCyr0R6-n~9OXl& zh1`^D#FyxBWiSTEHwkvg&&CYe&~_;p>ZbB?H5w~vg;4>GrM01m$kwp5Z7ViM4b~FS zDD4wnJt(2->GfC^EaiV*w$K+(lHGx=0}RU#>k+LG{}T=Mw{x(4lOh%_gBaPr&LBpqM}s-3z^X>>D)i5lIxTXMsKbkm@>LVz9~Hw^_s}YJkZ?* zXc+13N;{;FhU8AByRh$Ccd9``UB!T_02u@L%f=C|UG3f<1h{_)Ok7j_FKxRfs8<@) zye0h)^O}`oTSo6m|Hm^UM)f}{r`O_tf;B4k5a3KasJjF0OtC>NnaxUWLc8ToBBC%b{o&{Q_eMQ2cHTGxMg&;2$rD+q!2td+hR%bKim z#@K4b&ldfXXBfk5HWEQafeV}sRv&`)cm2D%$^aHVa}}N)m3g&hv3>vRpTuo$ZYKVZ zYwMcwKP5vbH(qN7XV2SgrOOuB?7qkEYXXPCxZC} zKm#)~N{Of{z_+t5X*v|E2gUbv1QyQW3tbu{#3ix}v}pno-? zZ&Qpn?@`aQKCAK3w5N2W-Q_`>>Yp14N?>L9%-We~}?qkQAOkPn~tAGSETMB-Pfm480 zSA>7K#-ogK%V=SskCZV+V8~dw(J#ov+Pd5rjz&pl zd_enpT~dR!gpB`(=2fj-t@xeBsq0gzd=r0cZKcC23rpZy^1uA%RXZmU+YtGt`5@`xVmgq zL%q1j`oSR2LYuKZM>?S{X{Uf?%$(~TiioQ-=7_a^$>xcu?zoULYGu6{vdw{<&li6< z$Yo>AC6L2fc>py1(B7`~zX7%M2G=>%vWn}U-bXx)+YO}8mTt$kDyJ#fyAau zxv%qo7mTcsnc8*Vxbx0CEvM6D^eA962!&lbXfoVt z!A>+9sl!NH5qyYkhaZyckG92F{c**^GaUG}Ht) z;?sC=p7eXb=p1EDLtBPH-2(_feK?ad=*zBqMVT4XnZq_Dzg#{6ma)qgy{JgwJ~^*~ z7j{Y{oOj)I7d2RUKqX%ox|H+sR0XN6MjpcDjoyO?vu%@!r+uue)|)#jCYboF(K+qt<1_imlcg zuNWASofBEWEcU%e+Y#alJwT=IMIGZxI{Njb*Ohbxy9=_pBiI#Qld1px(`T>eueAP$ z{#fJSDtyx58iQp=>UAnWYloVI36n{FZiH^cf^Fx5N_o^^H_?#ZfibN0G$9|;q7#O=FdId!;*m4m+ z9#Yx&O=6-QP2GQP4u;d)`~DYtBny0{fxu`^{W>e}oSUrwy}|3xlpwk~`d{}^sx4$d zjphc|2yQzbgOe)v#ve9+fQs#gVlp|Jk-(xTzJXYl~oT$Dk=$9 z0>oLrXy9sjD9ixD%Z!#I4y5PEeLf!KY#{PN-=}FBe7In1RW9 zKwL$U;@D0pi?`HZ<>5X5yCWI@$7|AQ*1ZB$v?l*&1wl~wfCQGW@xS1v+y)CgFUE6? z|FK^+;QosiPDGn;2GFu}rx#tT%m1tlH6)R!2!4N52M2W!(o9Al;WrChMwyy!HLW$A zsxJ{iS1itXoM-7528^?SNyJS~z0roc2tg(n-#^yIX*z5aDrI^R@u_;@J{}l&#q@v7 z)(SAy^Xc#T_M_Bbwcy*|ax?`1;#zWwzrv+l;8{*?Owdix|C^hesV(H8tI7YJ?9C6I zMOJ_IeB9-c!T;H3B)P}Ix*bQh?7O1;Pr2RARPr`K+i8aZjup%q>X1zT#4?lZe;Tsk z+;a9mG^2&91KL^rj_7|$&&LSI$vJ1~JIgoHeaY;9ACv=nkw&SbX|ICTLzrb<`|{s* z&*4$L4X!?{T|k0G0_JI1y1|h8nox+>nlgXdNHj>Apu=*M8#&29g*?ttGaCjH8|?~X zJHQ<($x~1z;2n@_GAH%pkt?`pGlXbV1ECH@y)Mp{6w zqkPP&QLaNw{)e$Ibb~XT7~|SnQ<*_7b5Yjqzk*?*5t5B|v|*`U*U860FMBY;vvJh@ zrhI&5{rdOxH62oK&-x#6sj@xKRrr6n!L}p{{uZW z{ann8w@+Njj7k5)xb$h{YI489HH3BBw_+_k(!yLVW{V+-DBG^aiXno8R=CXelwjhR zonB2a+I5OywJ?+X!k*FXVE<6LK|WL6;KDwjP|mi1iJ-E^0u4H$xsq-w%y^H&E{ir3 z6%lQTn)d^x`hxuvn$%oqWs-l9qv<9po|usupTZg9(kaqwG_5&V3rdNMt}oZ*=~{p> zQ7Ch=BDhYh2^KyAUd#;T-l*u-34B$^Lj=-z8@g=@Ps)|MxJ+{|q)|WWOjAo!=3mw*Ir#zT*G< zHPZ@cn{br>gRcnupNxN6X|F>_YRs}Z$c7#P9$E<_53gj6pBFI~DwXV0Fc^RK+( z$f5z4;U(MP zw$da$1sS9rv9YW^8p;Wc-mER?PBuP(gEbxyX1LW5k)hJo{X-?~256D~XuO#)g>s>u z7kXgSCx=nW%NT$8UnvLeXqlQB%Rp!0_%v9309k?tS-3akQdZTfgT)Pbmy+=mcZF}? z`JeJN8!kB=HYwjjw|FiEC4}zD{I3D|-=M3fkCx>B7=++F*g%5Iu}e=~g?5&c%ku!n zfDtOhcJ*UmqRRi2br6hSSq8CPWeDoANcChF3>uJ@oB@A&xtrH?C}y;?yG|=Ph)66$ zI9q>OmvCt;BVV8$Q1HX%=9as7@#4Pe|5Vx5FQxKtu!7)B{+HL3YEa1wIF{A_a*jd4 z|8Y%$jWf>wT=IWLU}v9T5F)S&bzk%e^4XiRM7$*b6FT1Ld^(FabRRVTCjr7)PyrRh zDF64ru2+9Vk#wTcc@F79N7n(=Bb}5}L_a6pqn~;8?y~Mbm%ZI{@nKVWqRR-7wF|h zaDpc5f0wOgnL|j^XnVh9(znK zGXWhHL17R?q2})~0y=6ic;%uLg?@jEW7JKWDQKcz5VN}1#ki6D z|DbB|ULY&lI1(OySUKO=DNNJ2B~Lk5MSF+}?iuKF*eBIK3Y4rMk0<5;-Rj+1|gGKnbD-`|kojcqvsndbU4IAH9$m*cD;gn`KPaIj3gM%pC?(BbR_ zWiLx9det-Tem&0}B+?-4| zJC~FoC($sApI=Rr0CAQ+XhG7wxCDRLpM~?fuX&yG!H9lbvw7aA5_!QnPdeELjESc|QII4$L2r0FMef%(vAf^ldMft@Q|O46ONIZdtH_nywC*dio+9+ZD-Sl zc?NH1#-PvFPuy_58hBEYT;PA_4S|Mz<9`OV9?K~HXK==6)ERT>$(tCJoSyR7{NtS3 zg51^h2ISo7S12MK;b(_;()-b#4dX#=NyK`Zn0p%Mi}F5zF%M6^I$NCx<;pza?#62# z+w*xYiICp zI+X3mSXR=2CkEH5h|PblQr;fe8K`?wSBCiC!$KBulE+a9W{u7}S=M>ky-bQut@qcR z1SNVs;qlJ97(?fNQrz$r-Oqq2mhR}|h1^cUEa}5EOi9Lea!d4p8ldQCcio7hb1r?( zbz?GF=Ur%ldqwA><>_Kr+Up&P@eroIyl*spFLi+^-ijh}u|I$Qi!7UT`yH?4t*rwx zafIeVwqCn`di_JP*y6mf%tSYwCvUnbtk0KTd@<6#y#24%Q?Vv_N&BBFvbMsPmiV@K z&MDc)>$p_7)?*-!qba!G@|)m=K59Mykh&~kj8V?N(WG=TxcfIrxo zU?xK|)Y)xwR=X6UGf%SZHyDEc=}y|R8SKr@$PSjJ*ylSCWavl<#v(;)&Kt8m|5N{( zLNwU(2?!P|Qx}2g#(*Ufkj68NHdc%D$OE{}KaAX1nONe{jcUa=~>kOKJn9^xFFu-2Wf}W|s1cvGMIm+kHPfffg!+APjfqM6fRUwUFH~Zy1$|^OWA7 zaovCU4leAJxb@YqCLfG&N&BJL?8?iFEgd#dNTB~=Y51I3Fk(AQH{X0Soj-q`E?>HY zw)=qor-}N1_x67l#UQey4h9H6f}fcAg>df{G9csa2CD&U6_C(^JEk!h^<*(eCuI9q zEXLY#xdWK+AWnU)%NfQKIt0Y|yKl*=a`}JLz(fPS1Bi;yso)F>6`%`gV_gQWQSm8d zmXFUsTTbC*LwRTYmTUEHSSHknbd(y6UIucA^cV@vT5@6~ZDimap&`JABS@45EpSb` zq}2?es@85cj=DV9OHGKbF~m9dmqn0C3|;~j1Eozw<`aa1|BW?{b@$Bwl-70U$g6*L z#Q4<)ay)Z~NLa!@U~`=T<-%zMes{voJVi95?p!@}mz@orkvbO#n#=ykqpr@tW-+qB zOhx+oT?3uzO1Y68%I$1#i%s9{xC*g@?x|alUEDY9jpDd7BsliTSafQafY99aLna~X zkgwIX(HXhiPXu-C^si^2EZXTekaU0Mxr_4A8`rec9eokso$sEP?tt73kM$@;V!FUe za0uoQ?3VuP^~)%LsW%qq>1m`X6QRqclLdWCd6xdiHNT(wANfo38a$bsY(zJ>Ho$p+ ztX2$d2G;tW+1|Z2RsUmAL(UfWpf@tx#weT7Vw7?53^WW(grV@I=iNUchr54s(mE$E z$~QMlJJ+N!c}p!m-RXQ_FB{X_6^nY?yiK!>$p0Mqj5=q(bL6QPR>5bU%MJ==*!{2* zX^m}mvXwf~y|c3u(!=hCMQ}pA@kKDV3%qs*{!ox>BI|px-^mclK2aHmVaFu`yGVB@ zhQ-_O0xBG2aWwN~9^xB>vg3b(BYjTff3gWcetOhL4j?C4Q? z-}}DRz5dQS>FDD6*s){um8ZYrPJiJs`p>`p+w_&Md?n0<^paB>9o%xuE$-@dE}-W{fdsho}`sj&eG(ek#MrS@l5aC1VQ8Xs21HlkPvXjd=v)qsPSx z+?ZqPR4}H}UaG4F85)VoU`zp3f*^vd1Lk5!L$)MfDOr6asla(q$(%cFuwp}yl^O6d zf3dnXK7ZeJmyH<>j4V4+R?MJw+M+i*HE4|504c!!;#GJXxe- z+~(}%;3D=d7`n8*2u`@pTBWejBU-iIJD>0DM58*qwu9SfyB>eVT?p`CEL!4WY+U!= zG^Z2gJ+0f@^JEa?I`RL`JHq{ICq4a^Z9IHP!{sq;j(hk@xkQ|>$2+>73p zMB&VzPA1P8_0zn&any-xhMi?`@;M3jH8o|JifwJn}KDC44N^w$Rt9`u2tH1=_Q zWO_U;mK1-$afSYOd4N5j>Ff0NKT&=dD$c2{3v-}ltj3+`e*&F>Hc4u%Gcu^bYQfrl z_LHc5GD3zijXD6!fKi^FPR7F8(9lMUsRY=5t-vXRij4Y}BGc)t8cU5*$-vGqfD*6b zjg&QPEGe7eS2#nuoJgJf4M~Vw&U6&~*=f&+pP+v|4D84_6yui(Yv=TM=zcq-k2!l6 z8P`SD9vA{n3Fd4q>NcU@<~oHFy=Zsk?h$m%#9t_gj@?5q9Fwhs_zhBhGnnvpWOZ38QyHebb-|jf=GK=qM@62WA#@xpoy7#L+{d0fP(k+g4|0+pvBxb=S@h8GBIyWPt!ttkE zg@%F4bZV0Il z>Dq{K6lP&I5lG%~cb$amb~lL73JA7&hh*aciF6FFTsR3H%fR-13meepX@7$6#11oo zffqa7>i`$q+v#L$7nIqsE(l+*TVxYMKM+BV?YRCmz^F+2-ZA4-uucrS zxC150zCI8UWq%liorT;!a^wi7vF?8~6v-EzWbl9VZ~UJ^Fyh>~bM(+>K20yb{BkJ& z>esx6?z-zP|A|og`#<+Ty1(+he>v(=SqS}DZ7gsfIBP-i=o+yK4?D*$U1ka*qeUPq5V{d#q)Ce|^R8x3 ztwN$~_oJT4Q(xKMhKO`(<1!O&=_x5?@0MrADBw?mkf;bS=-@*Viqe11gFFO%LcFB$ z!gypxigX?=0IaXaTg{ER-QItaop;=E$0F)|x(U@42E||1V3N$c+6|$6&(7#U{+B$e zJ3RqKbovYaCn^GVWUSkmC&pIKFOjd1rz5W3Pm7;Mj=neh7cA(&)&Y0y=uzG}aG*9M zx^Ef(67YGJ-gSV;pkEn>o%syoq3XH{<2jSY7@CmCOPnYz|47l<=b?Xc(rwDX7p)GI zm94}z;eoW5ed_F8m%Rg{^+Rau(&fwa$}6w%g$ozLc@@6MY?cnYbfpgKcNF#_uprT- z*X6of8?8v2)+^cC<|Xw%@*vT8Z~vPC$QbEWt7F0uu|T^dKESevCIaH}OE^P>vM;13y{L9r8-y1dfQM zBBN4%SN6YAzs~>tSsDf28eM8UBJM60;70U6DVy`~;UlioxiOZ2_WuI)+wZ-XUb6^1 zc=*45@F(c>>BkaX9^U@;d+9@e|K~zb;?BG73ie`pB_^Va5v+gkd1O9+o*aB@RQDU# z5%&UI`WUJ>^%^3qJH(>{dI{886+M#X1kwr9nOVWuWwF*cqoG=Fgi2x{Y zB4mqB9fVn3l&&`-!>tzjN~k49u^0=DAHhex5uFqm(j4FE%g~S#nm`XSXttZc)g5ph zbUenz6H5STcBBD~acNc1`7 zOaOka^^tSqwdjAUC<{#wOet_{Mp3}M2+q0o>Ce@MJKnHGPds`V6|e`^YemT(fsFrA zeknz)Wlv_@bcpuO|MJMZbH5vuq$w6*mEGa#tLK##wc#!|ec2so0Wsv`=FuJ;f z;#8Y8!#|UaRM9n*8?lCaxI2CD;i-+F)^dG=B!Qz|+c?{oe) zcxzex5B5}A-^zBW$wi{vwi9{bBumMI~S5cP?Dndw*G8qjI% zGPi$-fc-Vvj4X3vF51+nNmD>%j z4a|RN&A~7Ra;u*Es9DW$5M`m22q^QW)doH2ip z);JP43s5dEkgu6AcUuPzgj3pYy6Gl&)5)8{R^;$0R7&J!G@;>%AJbU!$QFnjxrqzv?2f z3T+>}`lchgEeYu8052WgVmVxsV}AG7#ihenML?z+gFz$qe+Xz~YulA}Myh}7T;2Y6 zOY8rP#)|&W%DMO6)#UOj!nz)6=^+#1DBo1R_0%szgp4jmlU#3XY`Ffr$*DbO&>`1W zJB6XiD%z-w&tT}?e*5k2mRoM2!-o%BibXpb2|whO@|v^5da`=DE|$~u%D8bJ2p||c zOR#7fL-F{Eh8yTtR!`_Sd-i{Y2z!ITq(9h56N>a+x_pXv+^?Mpqzt(H(lOD zf1|d3i{W-f`QMPUg^_EmtC*HKOOWMMU5+#qYYEFO92&l~n8R}~pL5$g+Z3MQ5n~`Z zts7iNarrrT6R#KpaVCG5O@}ej2t%UR^`7*<%q@-ya**c0i#w@JFH{hE`*a?9@fYVum_=Eeq}IO*l`Ngrf%M;B?| zya+U&TXg-C7ccRxCz$@?+sJ+4S#l3Ny0F!5a&+k(o8;y4?CF1bxyykl@xSnGCs;Z@ zj-L?jy;?WHjuAXr6d~?j&^r#2M<4TDI^!Z`7r~Yx{_ka3>TB=)Ghv`0@jsA|aK`?d z-OH4F7Ziw}q^5jNUN;m(U7y}|>T-eSZEwGKA%|ZMuWvY5Gk4y!lU5pYdXJ~;K`6&j z-)x9pcQUY?eENSZSd77#u5)4im8|4)e<#UP0{WbD#Y0-1pNQDA{+~HVZhYM}xazRZ zhg#y|WXLD#4QebG(hWhM8Qq`|GNWCt!H9HJGDK1^%7DrYs{ArLC&C>%bco*i*0+Y! zh@X7&N&57sKOGLNSq7Y8bX^H>WnhJN1IyNx@{1>P;qQMfZ+Q#7@r`e!-~HX+r3)7> zprMG$oJkoHN=O!KL|w-!{Td)L9l7-Mf(#?VFmAD&c2snrgAHS+!KwlnyC_?*1c9+i zl<)3Qvc?P)z*^90dTq)2&tw+oyN@!tiF6t~S{Nr;g(O-#p7C;RYio;qfY&GfwZli; zUsxEv9=?CLFpmG*Z@o-!dtHbB`~M$~p8mdrZs#^f7r$YHPW;1*>@I?F?aKE|rA?ti zjknr0m3OWm=ZGBA^FC#sZ|0byE<#yCs;T|ve@hks?y+D~78pi(D5DwEv|F549`FYmy3LKv;0*uBk;9ba^3IO?Z@+yZm%pZ~{QbYMkjsDdAbGib;l2$z`428S zK0kl&0}hGEoF`%rQ&1vv>g#+)l)o}j3I`c;`9dgHETsdX{BXYg)TJETBL9E*(BEJ93op}OegFSn2nhJ^ zJ++kXzGVrf{?B)> z*Y&>=01Z|K)^djg2!Bb+6a{jSZbY^dpH+7Ca{zQx zH5|yhSDXJUGP5w?G))YF2t{|oO!+z>tM@|ZVt$=J49{EDvskeEoZmd7HPV}K3oWvC z^zt|C`mBG5PjGbw`gINIyVn1@+ZGOJOWPa`RuqQ$zdT6Q!m$kh6BQ4)3N(McInjT) z0B~lssX#=+MQY6opP;R?NN`)5om>{j`k9@cU(YS{$U-g$JkPuo1;GW7%NIBz?j38~ zfuMII!1MTi=R}475`v!oge=vSY~ujmgb!bJP`eu@@qZLk7F`+#amoK+8y4e}wdWVgB|5q}FKB=I#3z0|oX>- z!*TJYEsjw*XI+Z@D)fIEI?x>eray*bB)5iqC5uh1JT`%Y$G^Jqp7*?m9(?e@aPm6{&TOd|{mKm2n4g3zbEXI78Uvkgba)zU27q?|mUp$J4M8Zm&EaEXjk^&RC; zo|BC8kPeih_~5Ghhk$?X(9ZvK;R1hQXD4h8er6Gn_}Py;diPyKUs#BEADlS+v5P#v zZNqJRWj-k96&*5+7yxnu`~`g~1KMbaf&ne>lV|mpU|DK>=)sR2^4ae?g|2 zH}u*molw^d;Z=t^|I@zlzqX6C+$ZJWDV|`BC*E>j#5B`w{4&q^D+{^&p^t6QH@sm^UwEdI%SS(UiFR(A(Z*Bretf{o_N*^s)d^zK&U`jz zD5tRqtKAW)9jbrW|BBE0bikpaC5Z+C{x{kc%+=RD@bwVx10m9e)Fy&mT(P`rN?t?h zulqH;hj=Qr(1b z@jiyq|J|#Z>T6-ByD-33C>14J(U!TQ`oF>Iz*+?)PM?21Jrq$(Fth;U0u99gMaC?y zk4)>WcllG8+|bFcv79D>%iR(5j(5BxIMvGpBP;`HC|%J!3d@w0HjS~FT)$Rts6PmP zw}jta^5!?c*)4(+SYM*8g?$KfO*r?|EC2Ka8~aC8Y$dknwTym86NKiN5Ps~j$Ed+- z!y^xxr|W;4bIfeM4rcC*P%?=s`2j5vSx@0I8EWtr$hgdD4EI7O@KXw2$d`h;C*#2< z)n!u~4_v;Sjlq98-8;VH<66mNwX8J)P>R%%f#`oL$9KJr0^S?9r-=fKQKSQVI`oF8|oq6u&$Qc6| zu3vLxhu(hbGHrA2!1>O6{A0h;z2Y6?A5!Pyg){V?+b_|tJaVv0<8DhtTwo+B!>esK z^Ly}W1+791$|~qC%tX(PolAsujPO5^7_BjZCVC2SP@vOfP`A)l7>-M(+JXr ze*_&kNcU1r7B?C&V3eR?MWhrIGZ%&w<;*9_iB6q5MLUbAw01IU{lW2ACVe;H@`!!$ zyKI{Sb5yOfOn>|s`foG)vn5`5;RR_Ag(%J)u?o`rdwD7t>uEz&8}bBm8_DG&=m39Z z)4D?3U|45L(1Njb(O@;;;Xmk<9>||;9qF~9K@1dGyP$}*tjX33e)3A|VvuEWUpQGJ zXJx5&_j0%*W!sJM8u50h=kY+WuG+U9?=OFiN{REbpdJuOH+Yd9um4?*#RQy54kM zky>OLzK|ggBnb@H^m=hmSpVCVfk~Demrom^OqVsDJ}~%SanJ3or3Ppk)P9ihshrfeC)_k5s+@)&!6+V zBVN4-O1${YAJI)Q(ZA~b&_fSV_!NAk@yppikj;Zqnbuz1sAj@MeiJH?C|4+c*%V+Uvrx3}DKi~Hk0 z{^O#fybCAa?ZR0dsw3&O-(^A9+YP-|J-mPV>8I({uYPq1NT@kNWsPe=qDINMR!Ute zhac&OT1VL{B6WV(NB9AF)2gIFNfSd`We8c7XS6J(8nu@f_Z|4Gd+mZ5%K==x^R zL6ytwP|4SF%;2SH=t??U{0~lJ-Uej`a%XRP`)m91_QLR;)A8fSL%>kZxk!D<%?lSF zWQFbj5iN|9>yeY#%Um@~9KpB*c`#2q5*Q6&fbH#V_w-kurpteqFQ+Zq!P24}B2f;; zW9$_Sf}o0?v%H=bG<|X*ld?rs(l9J5P@8HZEA%9LzRSQOuy%UG9FdC-#EP8xOn&Px zlNF~^4LXqDQn&W{#;)|gvMI7(J~n~YvT@bhDR8jvUt0ytxFgDrvhQeC3#e1xKD zyiqoQ4vZmxh>d^i^7LHp3QMYb_;@-w_KE)%f0q|>d3$?@PnG3_6l9!yb?7~hSIe*~$SDt!`FE4)MxaESQ(JW~&>jIAAigBC3=AcfJ1agDX?? zfB%ISErVqTWz4hIZH5cSGybv~&r%P@A=d2>$ZQCTG*}^+(V77=0>~EAI4~enIF0XzQY1y2@^2p}7Xvnx0a1ikwD654p)^Eae#X+wNWjLivf_cWZ zMnr7L4UXwG!^%p|)~_yWq`{NvuzQrjNJpGVlSzMqk2yHdGRKY{3!gL&UtvfVm%MK* zeylW>FjBN&yB)Pz3$arFI83bLnAqEcoGfRtzRF<4&9~e_x7~L8B4~1gHa0i-_S;`e z2e!6)ozQoZby^0a{4c)){ErJr&9`!r)8YZ0<#<4_TZ>0R``AdLBQKRadlaY=_UU%F zcRPP$q$ku_xEX5b1IXU4Zl{~sTF;rhmcC-z(6C9qhpGC%0#*G#q!$`odl=IHs$9WK zATwE~>FOF!1yJ6ndaQy9L}sug@eMd+h0Q`S@X*Hv#3t>9pFdFDe`0o0~Wmqc)MV zj6o`$-YNWFD>Ec_D|Vm`VB@?6uYR5m<8kz3@9a)}KJRx?_|$*@ce|hj`CStC(tY>6 zhu-(TZ=pNyyo-+d!!0kKU6lFpQ1<)+k>4fpJ$GL~gFvXmNpSEF#{h*8oRvwHvul4n z)x9jnYh{azt-9ROx#T-#+vrULLgs(IrYIdgMNmXIu+FV@*o5kOfOd8W>=Fl0NK`c| zNI@#C=By>(lyZ5K8LL7U;^}2oSG-@FR+-+CiQ9Cs>15A_Cp|IK|8wHxiBSLMg@JkN zt*;JG<2c$NGAv@K`0cAPSP|0a(X3^PyOFqm(&x{t;CUCZ@c&1L)^)}F*YAHr9haBc z;a6UHB|LHSaLcP+#kbvd8(q9`(Y@+buc9ZPdeXh{{PT43rkngBvM!s@IB+=CH3P8hV2 zKt(WwS-Kt`Bdr)NxhAFWX`g@eKchk*Gk|D58P_y4SPigbubSg*{&9`Knqfl=QRjW1JNJLG+rE4`)IasA zQ}mjJT=oZ*ziM&))KgE=^Ik450^83$`)qaF|Ij^i@#MWIUt1e&$UkSvYNH(`itxTYS%=vSM z5d{KG{xYM5a|Z+!N4UXlOjCjR>M+yPcHBM(F7}F(Q!uo*2^fED@?5EQRrH#OXGx$z z$vA%?n9gIu(a7#k%>dLuE5F9Zq#Vk_l-Tc5NXs^p(~I=Y%?;;259t$Ld;4p{ zE`+YaJO&kdgO|HQF~jeFyqBwTNTwLDsotCy#_z)4oqJ=LF&VfgZ)gNL%YLFF)4%$}GRCW0yk zRLT8d5E58nT9Bv-kB_jz#LPq?>UNdEM_MRqaQ*HF7ZfrFj8likDCkqfp>=j<#6mku>3_hf10$gwb)tOMH|K^8=LXjnP(J$~2~a60 zWHU+tn17Vhu2Mfk46lY-ES~X1Z?}YEPEfn#1ZD>gX1F^1B&XRpspta-)XU{i?)KN- z5niba0b35|!jP7Kw?Z%4yAn{4yq%pOah(^!J6*6i%I!s}Kc9z54scBJzDwH)41e(8 z!9}2W;e0PD9zSuy9a_lcZ~u<(q~BP`Wv@4UK;qD$LpbhB+yAxlRy`&5-B3Fsmr^>+ zgjHAJNV@v+<;%1fhoBTgkmj!f=>PD>m&1XU|N7y7qx7~{UE&{m*VFDbXBUBo zhkq>~@SpblPfyM0tv3<944V)3(mdD~H3 zcD?>j1mU}ow*FUYs=JrlJykcf0bh91wow5Uxo)=EV0B@w0uuM!a}Pi8zyp&O zm$I1#g$=RDX&^b5c63rmeDf{dviUod2|vJtlxoX`!Tb0^tO>J#O= zUqtWiW=zn)AS#}EdtPV(i4}*t-+3^cvagKJdXKh07gD|< z+MNMGV)aCN6Q7d=4mwk6E;ze98HiBNAF?T~?&Zsu$Q!;7e)>T^boj70h_gPUj>woF zGIe=>Yv86pFz~q#1_XQ}tNf$6lfe>d=*;ZQ*@`qLnc0<{xo$@LgI0mYNqS+o`rjOjJiUf54Y8L2fB3)!YOp%+ zuGby(2V16lWUmM)0I^)1|9ht^D_>imPU!@H4a)8mnao64{47VhYla22Ose4>GX>m^s&bd)4Az}N3iKYj1fvjs(p_*@iM+fIB zZ@Ug&2HgL}CYM(Y*6mPBEpR0b@5@Smit!C4p#=jP{nqxPOkqI2W%#FhO35UrU^hD? zH2m$q{kQ4Q{kcC^q%Q>cl0`L{oWhvm9A)zb zMuD;ItdO^vP^3N(QOvOt%$d<3hw13HV;-sY^qMxe1vgktc;mYc7N7mgojCJ<$p{e@ zPuN15GOP%H(a6C(G@R91bvD1aOulix+Y6bnwlng|crV5~$pA#BmePshfwqOwy|cX?jWg$-dFGkLQ<)9g z+S&|X19|S*XG#VX%il6wsRVR?+L604QdY+)PfnQh3wfv*3PWFq40uIjDg93s z(D|xtxb`xj1teAr-g!qJkTB-ilEYm>WD%494I2gR4v@!1@WWV>q{<0@J-WPpnl0r> zVkBLVn4$%3^)!+Nc92B z7|@{ZT|dVQ*}J{79R;?dgL-B&iiz{cca0aK|=L{?@-i6wL-AIdteJH%Yc=L%haR-b4pR1{Z$KlzhC zp*OwhO-1@U-tmrR5@;=}H`h3ZgoftlF z;Pd>S-22@PpZUyZ=+mG6bV&1U_%?l-|MmAiPwHSjX=68_$HbZsr7%$Nr7dFOn8EtU zoW3qAz2{~+Yn%svKhl;?u=xq-zyQaXqA~+r4OSa!h7Bf(9Y>{{NIMur@4~vw3^Qy` z>XKpXVp0E!1L*UJyDv&0yHp!Q@+r7fES&=(w4vlBZ*5rQz$1ASkLcU9J zvh78%FO#r;MS2MO(eFfvfxs>-;6&DCJL`lWL``%}Fr9hnOdf3p2|$$DGlb)Z{UMTw za0)~S4fr&N(tX5~$&t8a|Kf!U{N*oyDZEy4`O+m0av5SJmaI%PxqdzjTC2Jl%hvLT z>JQ2A0mx*ACwXC;yOSqx;$9xb9feX}J|E@Cfh%r*>i>Seh`QY?#OGf*?|d5@8?!|~ zBCdastCZxnER=qU%G^3TIF>Ad6oH~VXbg39FedRCj$hK1eVQ4N5`F>I7pmlQz)e1{ zAgo(JBHJ$K0c|5?q-a29$dr+>pb7Cwd6(OH$w)%m4Dm;XAuy)MuwN6NNdvG8NAzF) ztA7=L0s+3R|NYi){nii!`01bi=@1z30R|tG@abRr(w9Pc4-$Crb$;e&ekS}q@W2BJ z@4x@||3180@#8=Kre`SIYZ<#y|eY|2VbdartZCmjCrM_&*;E@p=At*)NWu z-~r<{v!{EdPBbFSxqH4AD{X-H^;qg19eYVI1f@V_ugD867LJYQ+NW;x1ijh$!u_GPtyf$L^@}SzwU6#ote`O3=2uY9V9ode6@6c>xBibi|mB0??5VY}IT9G1u z33CA6#HfmBp|{Halw16W8=rS&3xtbiQeS(ApqsFMSBS!+9ED^yMiWxgNI+X%9w`wf zOG6B1(BINhAvYC50$UQtO6zAuhO-cbbo}Jokp33{gP1fgK@rn2YOu0U%zI@G;yf2} z9O@TSE=6kkA8kv@ZIp`s@0PxzGnXTO$*zgN-5v#pa)ddZ_7ncy+1YXa^-oC)bP<>Q zAL9`nauDEJ=p{Ef?=3-4gOt;$!8^wymxZ&U;z^%;@UMMbymXNi1vRM2-$I@l!p)L* z#rRMu)2+6hLelFd*Y9HVJM{edMi-uco-SS9cDJ57MO0af-L!L>Pm&#K+|M_E(lw6> zivYZP{PD*n-S3ic{tG6QN1}TDA11F~7eo4=q8{#S;8_-IMmtK@sR8kR2ZDaK?)~~zw>wgP6%Z9 z*FSt4?|%2YLqOvG`|qb^0fP_%_{xS>{NQ+{djcaj0`6SUYp5_l$xudr==dp;Q$C*b zt_|L}j-1h7OF=eRH5i^Jy*8Yxs*PpqNv^D)!l7d3nsG$6`{=A8ZOLd5ff&{*p}`t0 zP%$%=p&brFi(j_zU$c1h(MM}E=)qwqXpNDpSc$oV-Qy{O6XIN>k&A6I*#Qmi9du{3 zi9wUBT#jBDqjf{I_O+#r(97a}hae~Y73F3Z902m%xpObm6Hh!5URmr`tN%Q= z^M{er#?00Azmu!iWjhv%UFF*TMP9^TeO-)68I+LmhF6}c!3x5R z)(Fm??LJ?F$^(QqKG~CB){7ni7Ah`WX`^G)QXz@5Nen3IeO0uj2ir`BPNm#v8iIG| zYxh1-;DZAGSJLIR33=_pzfytaC0|~p(1&IUNIid!h2IT-A@_(+f)j|#2R;0s4~+Og ziEj^s7|VbwpK7J7ILkDg z*5$|lWBR;*do)uQ$k<;BrcOjcr0YqeI&BP(t}p5MYo#H6O_xO@w#&IEfr6)4ADm1| zyI;~Ct9vp)=hf(`)kk`2ebnV$SO+tTj!~%M%7wd8^uG{l>3?Yp?;*V~q#LXr#9cBTaGsNY(#A9b+fJ7e{SVgy{-K9ci&#H2 z%ViSie<&Z@?bkj!T9WxHsuH@~wLUeEN@#_N=ys z+5piwN!PIY)$N)5Un!^YxREw90hcPd_yS_m#Y9g$^_2U}Ll4n&U;S!~%@RW;QM{^6 z48C@MeYkM`0zL8gf}A0Lv0L!L26^4W2NwLjb<09B89^RV&b_28!O0vE6_M{G)T}@Ol)>PEx!&A>or>#L3DvB<&wu{&)L^yY)4z4T zNMkS>jJ1)9#iy})-jm^mirSDlDNV~T!R1^!L^aC3bZ$e)1|I02j;NqVeA=Bo1$2FX zpg7i@IsZvcPfuvCZln!@uBY!Af(3Yw`QngQ>St--_-8=~Wtp?4sn%|d?y-K>`s60y z6MA&NhRRsb(x6p+S{mUKzFr;eMt>%cJSvm9Wb%DeYnyNj#&&RmJLjJLH7WR)RE*WfB?mVGtW zhNO+rM?{0c09T=<2AVdSPNq9=8JCU^@m{)o*)0MI?#o~Pa`+0=fddDBC<;(l zs2%R{9yxND&b@rjoj-rh?@|oKXB)FlTF)H&xLHSwlUFCx`5xgW+6N$F@ztUc{hytY zmde3;?1>)sdECf-<^yWpMBU-dSw z`)AYZ7P9NX2NV2j8GfgP$L-IP7y@~Hq z#yTxKBC?DLoZD=zV7>*$I?fDc)lPdadClPQN5d0{s$nGtFBrS1G<)ZN(`A8H9rV-& z6|1sjK-%Ko<1#~M9#jGq4P-{?f5VO8e^8h%ngR!1CX?L1q!D{XZ$ zq7p!WfJO$fU73UeuN&#}7_DRJL%1WoiGGWopy zziMPdO^*>}{GaV`z+bB1uC-V2B$YbO4V2}9_A>q-slQkLt?K`O0a`k_6sV1B%>O&@ z)`UOvxsZQC_<~T`J*nK_*IJQDt;;B@qY?vQ?_EM9{D+p`#$_7#P#4gW3%Y?FR zq6|eC544J4*qD@mPyv6jQY@^R&e{`$Uvr?~#InnrAyH#gA0*H_9EO z{%M$%9TMRk&opO}rvw^YW`+Z<1F0*xIF@0qOawTeiH4$op&U0^WgDz43>ih)92>^0 zY5b|kzZichU#%&toUHFkGqyYv!-e}d1{fcb2=2J#!*}Fa4ByIf6^C|;vyEk`??^6N z!2#E0b-6K|t`Zce(4OjII{ww@(6m@>X?iR=bepxYL3*Sd8*OO(n1^Fj)ae|sa6-PQ z&1hAJh0@1=0ysHQ)XT{1tcTD>@APquZ4o$G>1nmr|A2!<7l2G2)&C9{1a(9{G*qN3 z=Be?2gKG;(|HpfV_2jS&f|l2^zKmd3DnhyJwH{_<`XA`vZZ{E%rk)g8_mr={xYFk= zJ%Ms^5e~YIwYu0Llhp9P!@iItDbEyrST4zWHXRHGzW%4_e8S zls+1N{CGW(*IQ0t#G_8KoK`fHgomgUKoT(w?Y;G_Z*~9qKmTXC7T|X^Siy|F;L|%C z96VL1!PkHN*V7lj_(fV4)SRUIZ~Vq@^so37b4Fluxcmu8hSvx_B}HeRHbDvUFSZr{KW++VxOb-S$|$p}xztfYkAaTKaF=2LpPBpOF)P zR1nliYb=B-GWkk|ti?crlHa5H-=94te8bF>^uPW!&`z>De7Q>(r|p2ek>S*-d+ELJ z{ZP1m?zzvvnQyH5ByYP1+u07X#!N&mZu zOo0Poouw)LkJsH!pZ-iVDSzh78SPu`W=t_HFo+yb&$Q&J_!l^0@ zJTQJOV@2P~Wwskgt)uMGG^|N~FAq3E z!@&BjfusIuJ>rdnnC()qa1Es)UWMDNGeoni@jsP;0K|j&)-|?e{$7TuqOxea@ePPtyMt=aVXbX;xm7)hh;; zQl^1<1>Nj)AS?b7{1*COi)^w%>jfrQx&(Gdh9h~8U7J1-*g2=5Upgl;eiB%CZ=M1u z+|%r8bP?D-a9!&Q8`o|^ISVJ&=YjTyc+j$+SlwIKJV1|?HpKt6{uTX-0S9*Qb+;7c zjXNA%4EWCaU;o9eu=Bxx?|O)3{dL$`K`}@%+nDvcYr+RJTqxr|ZQZMNAP!`9q^;<0 zq5oCiRlemLk(Ti;y&96)z*v@yal`{RQ(3g7HLeD$1#1{HclAi4<*GqZc)@WXH7iu>VYiMRrekA{^Z#kJ}NprzLsD@()Y0 z)IT&oEIDGjLlb^~bdMd~^TVVfdLm{ltL12oJnkUbqD5L1DcckYkOT;V1W*9#g#zl{ z)h8b-^II!d?sIOj0Gz8n3EVn+=g!B<-0ShJwR7iIJvIphAb6SH>m_{!{ODJGwKDan zpc8m{fgl^=aiUp3qX7^N)3D|-9ciX4JL~8aGmW3!1Z0YT&U8F4FxTijV;_3%^P+M~ zNon-7`TEik6Id^^6(I40e+S^0}wNWurR>eD%VhdpCt)V+?! z7|eEK2ULyfGj6aWTigGzvP=WSw{?H_>Ge%Ms1V^s*&a*!0GIiyg)dsm8$F$a2)$no z)=}5VgVU;i__u-F=1 z-njDAsZ+Az6{jz0fXXc_(6D&p8ND_H$!N*`EAj1rfu3QjHeLaqgt6gDwdpD~kE18L z9(^o^I{UrYb~v4=fJEAOF(m-&;?60Ggar(U%pLZnZCXG+L^-wn8L$ygBM2GQb55V% znY@m2$I>Plyd4=`!fspOI{##0>w2?xG@Uzlj&9tzK@N8ePdJFo=jU2mJ$B)J6!S|^ zPXkSV{X$o;2ztm6Wa%Hk06K=Mm{pN~-~%7nE7cuOfBXl|h|@vFxN064VZmQW5m?4@ ztU3kT2OSgvrV0p3nF>T2fBEjDt2(0UuR{O18iD_*fIgk3rJ*DZG>6V^B`$Q}c>(AJ zNOlM?Xn*Q>W4_Ou(IVi$`!cifU>#p(={#zGPXh+Cu|S!D2HrAAg5#OZ$*jC)q@$z$ zR9BT30ckb3DrI-n+Kf72{jFmxt3zo&#{R=OIaS+a55X@T!~VN$(dM)-cdeh)lym^? z(@v#7`L471S9N9N-~^b_@nPeUr63kQfHL-e$^IATPOxmwCcu*fI=`OQf0#ndDouQU zxM!0W05)~T=#8W;!uQcw=dM){%qFZ4;S{-!jQ{|$ZNxw&67j+rOzd0k@k z71#YD(#i%dMwM5Ujq6?#?YOR-;2QMGh0ABVNyXr;|%cs@X2!gor#(AAB0A}GBT5Y4pay1({81cwyC909$>4IZa{=a#aIekP4111 z1Wa!F17IU)FxUq25Gb`ePUz_R_3Q1^m(cd|z>gU~kPVLhrt6#1ap}3;cDL#0?Afz< zbItA)u>q?x1`hIN8Wm+|3>83N5JL5@$2Rp|b1<&KNFviAP(ps@*J`5o>5iv=N8WRH z1a_ydMrhep-DyfDLg@^3#7FIz5JB|h3^wD}3Wl%I^k$vASa3`SBHYKKVo{?Lx@@=w z0GMKje<^KZd;w=&&#|wiJ~D>#Kv4Ao+J{M7O!J_|(ltEy{rJA3c?-sF^0eJ;=-rf- z=15O!+X_%KI@Q=Llv1at@@D;i6llI+bX;=)*cw)J(lig91yq?D8z85z7wtdc7z6u{ zjq7QozmpE2ecGw??n`&&U$oa4G;sP4e{(e`Pd;DU)kEY{#C$%lmKCeJ%@@9A`X1`zD3Hz7!B^_m654NleUL^?Bp*RXm}hY z-=79WJpNBfb-+IDRyv7a+1RKo*mCa70buUY>qsD4UjS0Nq>9;~PG*J;9o~A5MlVZ9 z+Eg-q@d66crnF6&O8XsuEjLSIpXSq@N`9Q1#+~|p%Uj+;SFc{Jr&d|J`nmy*clKMJ zmLm!sKd%61!4C3(Iv6MN7P&Dk8Nz)!0VxV@i9?{8boY1m%ELB?btMQmXd5jv0Lm>J z^cS|neNjX4=ZJcM0?TFIKQiAR&q2DnwnCB5!1#jm5d;7>l{LhFQv3ve>0AP5AM>Ji zqq?*qZ7L%R^1Rgdwtdd}#~_0qFVPy&f_e2r7|JV!E%ajszyoRrRV_n(=akj_zWQey zXJK~SGdI|OlrJ`DykEy_X#ZuCk=mzSN$hlOb6oT~{93;6m@u->S_Xq2EXz-L+p>IL z3>>PKMWn^LuU7+qd)OxT68dS4QtPO#m@s^;$4j~@!Xh(#Vr0hEH}-6D?AzT6|I-%o zAJ8$y|76EQLBBGoM?v}Hl;t2VAIo^(XsKOZRZU%4R_ezFxoB%rcJ2#lYX3bT#$*B% zG}?c+@~4y)3f|$w#XBzFFZdInI{NMKM)OjK(OZ#WO3=sCnG)=tdD^RE$8K*3z*eQ1ix1Q zRWz+nyzQ_keLr0ZHhV>oOPYt}W@WXEOo9V=eb(-*|5?)d*slH_9GsFjz3E|2E8Y$c z4)PZso_p>&S^o}w`*{!tvNnwk%hAHTV1L+`jv*RJL#fJZfN@mLUX;)I^vxW(MN-NZs zFbv%5=skD*noIAp_t)${0T!_Kp9moWQRtvT(^Qrr35|Wi*OREdcbB|V^+=gjFT3_- za_)bBqp}lPL*m)Bvnlb0x)IGuFVk8t6X<1G>t$BGOiuo3-Y=eSnggUMy5{Q|T)E*o zO|B6|G_}zIt8y<2=DS9d#efZinSJ|(VLjh7PLsnHhStCb3FkD>uPBSn*NU!B@YX)< zSUPC|i4KrDpvg>_jEFw%uGc+4Kto^zgBJpSXB;@^Xpo$NQJMy@LUW~&kH7x)udjjZ zn>an$Px~KillV0X95l~kq0Dj9CR&d(mRZ^Ks>Z_)KTJ0ijz8sK~O>g4g0i{i3dQT_trT$9O$d)xTDn0Q$uin z0sFL$Unz#5l_7x9#Y9*GaLV^R2w`xa0s)40jqc04cUxFwoZ!eYhCxpqYJV+i6Wj3Z zx{2EOnb28ZdVJyh`Sb~Gdho%EY4fnwM%sM#(xr#^l~-O_gW#9wnP;Bi^om|Y$81d7 zjDaWm0Nae{#s{;3J=x4~a(S$m?#G=YtvM0fobgo}ZhIC_!Cr z%_DC&Stvns`Sa%~>E(+TFUrBG{=L`Jr_ZE^S90@}SNQ5WXuQ_Tq`5OWWir)n` zz0|Vs(9p=LmmS(G<(*9@Eg;cF zO^ffo`x0Ngc!^SQ;+bcEzDAcXzpy^Oxp6+0<_WLKhM>tTMdO=|Il6AjiZ0zfs&-R@ z3JOTY=;kg19C`4ny)OmI!b%%~R7_UF0{a&*FLAyP}%ANb0fVQ z;KlGhqTMFYpXxaI_Q>gBcb%a==;+ajLV2jlkF&~k4q7(~>J%1#(X%{W1BMhj`%AnV zIo#28ndEIF7g3v}+*co)vB1IA}gpWzfVzIpSe(aWyg zO*DF2dz^97G0H_{#nFKI1>1zM0a;_?wK=+Cb z95DG z3pV&Dw$wUC>2^ES!3F{v37l(iQVGi=F{&@t3X#{5T3I{RYv6h@2PV>LiL^oEHpv;e zmKV^obpq$boFBJ-lrWz+1WKZI?z-!)y!S?mf~VsYIIo=r=K5d;r`6CBr!E??fa6}3I9x5b>tWqF0ng}kx5@tdd;%H4YfvVfuaEzK`Ze08q3)fM8IJh?JS2naeq`n&B5@o$y71K(0S)?{&((P0aQ=BSZ4c5%;?^UrXclZOf$GQa#@fw$(2r9y*e0npWvMM?wF^5;Q%n6D4Zn z^AiT@L5Y696v`r>s|*m0@Yj;oWF!ja4m#f_2H#It%10Po3HaxKaD5Yh@6#KQPUI^a zp0o1>Fao|(ut{7K0tZG02N4(@1uLRS&(RQnMNi+2u_6n+Wc_rXzWUX#=GPC>`)=u} ze{!~?gvM@`@5_h_+%OL-LZ*R@S)QKjlBrpnGkQ0Trz)9&hP3oBMYYp@5$RViX|-Ce zox}YlxHjBt002sp;5BHEBA_6hQT#YO&(bV;UPZv;#ZpKFTRJaup?E&HVhAABG$1J*lK=8Qz|R^CH_>=RPBb!usvu1inw z@>9I^c?wEA`|LO9g%@62>$Y3NJb2oFDM+*NL~}c9dsCVPG|JsAw6Zb^4~rp` zd#J7;E=X9PVgX+}p0?_gz?Rl>`4{cKzypFM`yc4$CXZ;Rd_in4{XX}#L)xd!>H76& z+VNd?-9xWs`r1o%FB_2%FOrx4QqI_5t*Q=Cs|XGe)Q8K{4)SudMAF@VX|nVk zDZZ;-H#KLnG}*swgDPO_gibTLV?Fm}qdYvvdNZfoUr(#l=;EcdUVb3!W$9B4FXre5 zx@wuE`RCnf&8>1-h`-%PGBdL3xl?kclOVpMT^>^r`175g)hwUPl?;-$GS{X5NfmmG2Vm+G79mo_z`Di7a=>z+$ zveVj79k5Tkl}_TOmZ4S$#v2UHk`Afy!nvYp_5hYM%4_;RLy{MZLi9TK7)~AKEmWZOz%W5o#XLRo8#r>lt6CU zaQMLoFSfw21|qb2{lq(eLq5oL3spdHr>I#~2P*3qE?kfj>>z&jxo^k|mtR- zFtPt00ApJyQ=qGj?FC@IXz%u^q!f^N_0?-R7;*00oAPfue=XC0mNs-)=}_yIi(|0N zIAk8bhz&BZ>%-W8it!9}XRwG&l_pOQ)u?5aX8}3OuQ2f8(P0)%vbfM=+E51IHwq>Y zQ5cAzpr5F3n$&6i!`={d>eOAWUwu=%YGdl5!GQX5!X+FkB&wIGtRzU!p;Czym?*&s zNv~4#E*1dW8={`0M^SY9F2Q zs6XF#dg}InzytT^rN8SSLCatDmA}Gu8L&=mzovk=ov4#tpHK?v9O=GvrTfMPIX!gg z;rw^==F4UI@Uze66%?~Mi{{S<8E}pSZd5eKOq+uo@ja_g8`D=d4s>Hw4bW>56M%*K zjf=Rs2Q~mU*gT^6YgbTyup4b03-({Li56d@3a?>*-?Z1=Tc;Oa`~qFN^vCk?Ti)_P z`tq0m1-*u8u>X^Cc)w{@KDbUZ?1*)gzflKAblO0JKu=Zoy7udn?^@U5&-@zQ;h~g` z3+-G4zfqcwX;NR@^;vyhq9yIwbN~JK^QDI_>FNbtebw(rjv{cyi&VX3*6&-Y*2zuk z{OIz3F4ogDVI{~6HdXRwNS7XZh%a8cM6cY;n-nL#tY1))$(X%Oj^@&zGsW|`Gn5ueKUJMr96tIDmI>d$P^m4C34df4s1pq=BTS1K6(4dn^xr+zErP2O9p0siNb zJdTfEjo#zx9ZV-GAmP9RgTgn(eEH+F?b{K5_ry_xNHhW&=@CMFs_qRFcI(@WUJXGI z=7ko^Sfj+_{trke2(AZl(Y(zRBu(mt23Y%c<&dtyNb$I8!#iKtzW94aBUttIIJlpL zjcGk`Pc>>8^ORdeqB&yUW{5tV@|=L(eL7i*;fZTUkz|8pBE#yMR)2C#E`L$}dv*+e z25SF>-H022Q-7~i?t4g3K_RsrToSBwX(UQq{~YJ<1bIfJcD z)7vq=(x`K&E!25sxIbvC3ClZhN>Q5Gf4Da68KC_}_4oSv`03eaKhpvdk3IGuyp{op z!TwJRf~^h$SnTQxflhb)$iCT0zYPLtJqUVrKCj9J`mt>kU$M%4-7_F<_LJIwDVr15 z-*`@F+2P$(&yRN|TRbUi@aS4E^ZgI3_430H^Qp8-O*9Zu)JF|ERHepQMJwoI=8or> z{Y@}5>8FMB>n<%m(T-a{IklJen>c;?p*6oglwTKq?zw0Asi&Tb#^}f7?fPtPzG?e! zFLE8fu$t{Mc{KuI>_4eRLsABR`_I^yn3dcCj+eZlX1!(}$O8RCJ=MK5=S4qW0YA!M zX^`3JJnhpPn@;2_8=4|Vt>&deo|OkiowbWjsSy~Co%q3VB@i%mQaxz$q+4({KGm6k zsoWQSrcdj-KGB)R_GaL3n*^>2FFEDd|6(wJtU_*pmCHU3x~y@y?X?4ccHjUzrwRT3 z^^}=HG*9e2A8_paY5TGOSdDT8kV9?K?D1Zao~$&0)aV`tdTa4Mv+<3roX_Onx2f0x zWmo04?;$bJXXc&h#mN4nnYvr>ep!pAdc9+up_+ zkkI*<&091_QDXBGw}JP<&-vJwC{NU)Z5|=uRm*m>S$U7k3(YndKR7wHHKP(MuQxeD zy)HKJ_D$P=?<5j+C)4TaO@j5^(**(^E4*5ZU)xD~XSGt+*T7Rr{@T%(Q5}auJN$5MtMbSv# zJ~tg5==`kzYEYtoO>+(qlPcW0@qGT7WQd})A#*Y-kfbPkTME4g3hI6 zbQ1phx-}`9jCujr%rKNR($GIK3@MFa6Qgn zjlubn|46Xfo!7dpj)`^376t&cT`$ z6--R3or}J_4g4>I$+y5->26xov0NO zXU?2SKPcc$6RT4Spu`&zbLz1JDtrX@6}+JF5SMRgL?aVL47DEQH#z|92#y8E-~%Fm zKoeuX+`kNAoRXTy6S@t61Nz!D!*A;!z#Lv{%0}scDaE;KbpSZBqh(OOIA4)7R_}iv ztF9h_>#aXOR&2M{GxrAPA)v>AYvn=UMZFiu3nt?0+qJ{$fINLVaG!QNU3~L_(M>52 z?zK3B+Uf;-qbUT-+@C%mucAyUe;!MJ{uKvzF*_RMU+h!5LQ*BQ?&PkhMd~}L%nN}5 ze_rb|{%(_mMkn02hh-ms{0V-?JKj#GPoE*3hw@kElp9!TL5sFBB7xNMb&d2Ihhnrm zE4s|L>B+Jo|N2Q)UOk=eL;en1y&q}iM3L`uo$?$W9;PoZJE2z^+L?+0re8Up?fh5Fa^rGGaSj~q+YxXa+onF85G3V4*#vC8vvTTFvzNJ_YID{@eeSe&7f2wT<7*uX5bU^yUkvLOtrsIm~3rMs>XX zCkpoq!da6zdZ7!D}5r`?P!M zq-|>H0e(@i6OiwW2LPdRohXjH5jEyV0mJ^pf&P44FGTH_F(@tm7~4=(V+B6UQv|EWc7*R|rq>f((!0gJ2 zlcCl%f!v_cFEUUN#Z>-@+owOt@qaA;WdQ?zMlL;75;@F$3(9|gtw8WwI~j$s{%3I&^mb8~d!!xT@1G!Catnvf9ymnYhK%yYNRYt)|c5%9; zy{4N34JCt*s;)Z9!3PaYq##E+PPjUO+$W!WGJ{?Pyf_aqhr`&|-67*9ooq<{Euyz>r3{Z01QL9ro+h& zXq@9?$p1c-eI(K<3EfNLJHPX%=(m3BuinuwZU_y*s(wwzSAG;%uyt_Qm)GWq%!3DU zb(-_m`M8orHmC+PA^APPS>+tAHd6JqsVadeGnL39K2`L8u!Gy-S6@fA%)_zcZ!35C z@?}~7(Sr{@NN;`XTlv2G?$=l9@{rUH)>k(2iiI>OMGtGxSXW`?S2#2xQJ>aj9h`HH zj`BVm>oRFhR#{i`T0du-S@m+7!&hIuB~Lx|m86#?2t>@rxJ~kHM0(Aai{_Q^8ms*m zG7lSaAvU*vK!d~jWfo!$-5C2%;JdiK0RQJ3QW%jzzb@i`IM%`%EDrTFrX}3$d>N&A zpLQ&rxG<4pI0F(Upu$8)YchiG>P5n@#o8VQnt{ejX+goFK&haCkvQN$u03=DusLap_5KH4;*#zDG&Q32sNfo8^I=!achya&bMks&Z+ z?s;vm{knN)Ki4{BvZ(=F=nDfkI!~b?(P>e7oC0M(-#ABbe`f}0pLQ()PkLj@4g{0h z@G;8ISWjZ-34@xs7*f$`C@`eU^XPCTAgA&#-95}eHj@9|zS(<1YG19Mw#GDfiuIa| z0SLx_x*N(;)DOEhurAiW{QUFjkM6tgK6=~R-j+6#Y%3r*KZz>3o^P?TO&{}@*vcxDqL)%|;?-9VIlY>Zf)N0C!+Ba7A6|p9;eH&^y!bhd=F`wr zM$#C9DhmjJ-OA&6z#7J&#)HN-YEaDg-&RzAFq01w7&`}gm?t`Pqy2ZbjESZ}3SkW^fIsYa(jK9t}5T1S4pqTJ0DmBSU` zZK!ixR&vp*tVmm>l@KdgwFiP}#YA~kE>*a-*2`c1@|R_;m$~X?o{U9;aWBo~R&%gL zJ6NV4SGKOq8`^(mu5SNVwHav~+)|$xdvp53t;KJ*ry#&3kFh?;{!(H9Pm%X zGgJAm@(c3cyQL9CKLZi%iBx^|LJ-}xM!1zQzu7lrAP2BkxkmXPj{k_M5E z10vGW9Yc3_hopiW8fg%uySuwPPkiV7e!^UH&GYQpYpr{A!j@g{R(c*E)S(V=+b2jT z+~JS_4u#t`{+-?V3H#lR^^5Z5r!L!3={qEVC0pVO2Ym4-WBMJ@lp?{C}Z4k66oqCT6DggApTx7|L= zzS^L161nS`?JVQy05&F|glZXUh>PL^;igdh@}j(!X84vLcTVs}*9yq5N9Q;vPXk_<06HWY_?-T;%i@ZTZ&q!FAr) zV{+DZeh0DX9;tXa(r38~{vKAEZJgHG)@;D8CGaog`gZ;2jgm4@m0fzjn+`GwK23L~ zItSp-!hxrlXMkxD1?}N|7}P0OB-YdZK#)ow|?); z7xKu(h0pWhW@>^nS3aV5k~Wwp0;5=q2vwylALhBH{vjEIaVjcOG$Si_)iFCPdJSgF z{bAatGFqgMayAK<26fRT8GppQaQiC*=iYwr47i_@VXcm+oHV+ew_4 zwY}0_Va^|FAabWkw(LpzcD%>Cw)0ifyJRK>hTx7Yf#1c!^_q^eH5OXKRp!!grO8g~ zH^ZoE*~V4)I#X^QLxv@`!d*3U!#P3Ihfj3R=I7(m3BV2Zr`iR3PPmiA7#`-fSQ->` zPvnwoue+Mt8<$DG#6#ZR$6+?c~xiMcbl7Z5~z^l@Dg#qCTq{DpD9~e@ZKCV*x zID+tUh#+{%C*#xDis@XSy&F>OBGU|;8neT=Jk$k()RMGodbC{YORHZmG>$Py13WS` zttghHfbf9L6`?Y*Gjy}KRnIUpDT))+Q2k+fB`2M}w(%-5x5yM*nZv8=VNxm~Nzg~p zs+9?^i2D1O-2x;)%bC71^D*$_%vPWO+!D(IJm?N;G%NvicvA6eT(+8Cpn1m5uA;*|Ms?l zO{5f}`yP8ZA`v){^r>KjGqU^D^3Zf#4ON(RNyE92N`I+6m9S3UBpq$5xtP!!f=J{%>ttf+#-Ck47vyvum8=fMD| zDBYwbN$_KEvymvz{lvcpBcm2q>(i5*;RSJa5j4orK#K>J)SpTge!hgmpSViJkSC> zqd^@t{asDTuDr^t>RVNzR5dxv9^bS#*Fxw;*eZC^Ll_g_!i@UL<2^F|ccv0j65k^uQRQqo zra~3(#Y9O{q9uBGvbV_^gK+7f8-gfh+DpbI@iAWFuDtEm-a*-0n9CO-1^|YTA<7qw z?S4;Z)2v-xnA&t@NT`)o!FZ9$JbNv*KYmx4@>|=A%X4+yY-RPE*z;x$S+qk;r-sQM zjpl|Gj+{K56mw_{LD-oeCtW)ia(+kOa z%tlpR@TKi=L|@!rq*DcvB>;=y^JRu2o&42)=VjE2r*`A!zMnVEbfmXM&wEETlIrt7 z>2F^NiAk?~#Z65}x-QaFaM3k4HpYIO2G=^?CdSQSii}M#CkfTlVO0b;UEA|vQc=pt ztd9MwS~@s?7q?B5#MdX+vSO>{)cRs>0)!&O8H+B*9{=S^2c3JS3E1# zD209r>vxHobt~2^R=UeizpfNslV2)`8+VFe?1=r5dzAN&K+%oUjk%bfy8=Ob&4(ok zuGDX>l`b}<4@Y~nvyNaWa&tdL+Y_&sMRIc#tQMIMO~8xnAC|A6OaYmB{_TgGg1h7H zac4@I!4d z?5RxNvUxu-Sps8kmgP>%e4n(Arx~qpoJV?XC`&^5-8pKgQvPZ+RdS1R+MgPbX{Ps* zRK72l%~c(AypZj~O(1`6rI$2ukO#kCZG^@zxkLF(s~X>w9P0wl{wmL|kQ5!o;(5L` zIIJ@Vm58;Zpw~PeO5y!<7(bcb3E>(k`_QDQ3zEoM+{w~yeTpTxs= zmLmNC|JZHB#An`_2aaJ;5NV-fwkQUBCa~o((D8#W%xv3IrwgN7a@(ochibBD94nPI z+x4@>tmh}{fVttTE>wbx9&N6Qr1t_}bE{0+{|bILDnpRCN!xvoQqq!Jnk}>(28n-{ zFL18TIMdvux&>q;`;U|J%(6?MZY)p^2)i(0LJ+dSTUPR`6PNKp11{dt(J8w%M~NTX zi@uKnmZ$pye5PYj7H;`MOh>#wal>(qaXvGyJlV`z0od^D(AZoOX}`HzEy(#YdgX^i zJqCBMPrX^VNWSZ7svq|kgdGBYr-(ME8E92=L-6h&AC4Ku1AE7Xny(fq{)(x%gUY+| zig`rP7Wt)&=pBKZ5P5~*FAf|jweG`(f^nv5jribe=|U7gs|{7cze(gMJ%RpUSBPh( zFpf7aaINqvrO{(mqsDr9A*_{b@;S@sTHKx-?b5o>!IPjAhnE}axxNQm;4{x-qWShQ zMvM8=4ARgB*mTx;49~(Y4IVSR(KY}eI~(BNnE&hff_%XOm!+ZMyl7FM3VyNYI~TY2 zSP(*M+pIw66SD>>6-4F!Wz~N7SyH&HOCbIn7)oWg#oX?rfSphM;wu_{iXw+LCSSx~sn0faRlSyMK9L z)1--m&y8dO=6pR|o$fi4A7~pPazF93>#~ZwzwShXy)-FzwMpZ9`PrlHq_#V;B_~h8 z6JwW^exO+6E}~S;{fzy1SFkfPdo~ErbKumlNcpMo0o39wcV=+B>oc}0V>$0F{JXN; zEqjW-Ya?7?WWLIzsA7K3`|*MsR0TeDUUZSU^3aL)svDE4#XuaT~5G+?)PlIrfeJl5IBv+k4xpI;et!O@u=sgD^2@!O@86$ODHg^{=? z(Z6t9Y3#iV=?#g~k0RFj(3Rege+gf|A=D{1d|Sxt+FMXcn`n$IUBvMED9-w(Bl+ic zbh#tSYG0;@8sFY)Z>IBgBMq;7D@Z3kaKu#?AsHQw=ry=DoP7YgD zG6%-$GH?DQcx2s4Fuq=TQws9${;#<!H&^XAAzgx$mlrMwdNC))h@m4 zD|$!g>R0#Dpm&x1@J1g<=umG;|5WhW&-x8IJtAue3tCiWKxgLDs2M&ySqwi^b%4=} z-=DxI>_jhi0`4PzV5-TjlKH(oy5N`4?mi}r|0Pk?VZPQ`jUgF7#LPk9Kx1RZg}U%_ z->gs=r0^${Y-sdopoc&_MUKrO#^}ulm6cTe#}(#7-Grz$&Qvg9+{rob()B>S>H{+o zPBmGdfC>3c?rlokFvddUG$e!yicos>_(a+yB-p|d6?JQz)-R#64aPo4gUsUJ z46_I_N90^Nlb^&gWq@{8Hj|n)4+gzDV1eSS!V%>xA**+Msnw09VlzSFaJfvEWtYaN~RB6Qk%dIlJmNzm|jK z8_xH{ge`hjS*sP#`Qr@xkm3m!4_I!3uVeQ0FdyF;P!IvJv7*?-$e(%DHWuf)hB%1c zdH|{Y*7<55YS%Kp#odozAdtW&PPf?)b8SqhUvxzXDPU9*qD}Ph(0_yWIr4sAgCXgJ za)EKFsgDOAtDU%H&8h>f&w4qGqnBQiMReJE!ydNduMtR}yEal?AG0~n7s~KrOE2%f zQ)8p=pm{(K6ZZiDXmi~gS*-uUFt5zcGSz`&jek?;`U%lOv?pJ@98{0~Z!(cDH{+w< z?X2O=%{0guE}knmcT=z6vehq?oow~JTD*`@Ec{+c`{|dO(ctlLpUXz-A7RY~43D*c z^LzE#-xX5TfBW-286NX>yxPvZ6>#W>q2d+3^LYl;l{O?+Yf^NSi#wIm*YZKjA3Hrf zi-zaDY5~0&2ofX4VNcp|JuI0?o7J!$vIrn`fILkX`=#998gci8|wC zEZ`RK@DzJ2EcMGx(ajM$JMLHNd5NHoym(PHob3JwpAhWEQ(=-9<7XWQ5yQQc9O!Q= z=K$J|euurliB8q!2>qoUtW#`r^U12KIYu(HN)E#HpphK0CvASCXoU)z2-`VDuc)a? zcO$<0ZKklp>=tKEHJ`)`kPO&zI-1s)7%`l&C4(6>B$Kk2z`g>BpxN2NG- zF?FTQrwLfZE};FC}Lfj;(J>Gnmu15*v=cZhI8f$H5Y>>>IfhmAd3&2RGcH0SsG77vMG?aTajP zC--EvHPrQarV?Et*Xd!>1R;;JO$a0Ys^u3}nw{{*)0ah?B7!f;K+#t~kt&Cu_f|BV zM*J~#eZ+^FF!ni)b)7f-;pfk#r=KCe&hbo?j~7Y#gnYD2G+Ej4a3HMR6Pw1~r!HYd ztSstza}oaO>MtHu@#jS{r$DpAwR6KS^BT16KA{l3p#*zsRubvI z{Ssf9P6!XjOx(2aRaHH;Ex>yfD!O1UD$2rUt$)?)HfmYVtZ4f-F9Ghc*P}BHCRO0` z@X))%SY?FY;}XH7O_#iH9>+U(ysCAW3qgM2&Ao*j+ISjGr6B>7T4B>RhIg&k_t>p( zx?317FQm~XdlQ@)>k0|T6lr2Vl&R>A8}LVk`lVq`i`*2g`!Ht+)|@|QIc-8V^cWp) zF0z6&eoWSwQ|(yUA)WuigIf8((&hiH2+Vcc@?5HDUNR8sAmONHutg*%{XV(eG}V zQTmq%4kWG(#JobAe2~Mn2g*0pWx{ z!asEvyz?G;I^1+c5Z-^D3MLw!-PetH;eCvVFs3N{kq>Y?p|pV>hteMh`45ay*UZ+w znaA(V?JHc9vB6Bw(w`=52nmiO=A2afb8|h4(PvWPlh0Bp3wfTj3Tj0h(y#>BFP!xo zLB~Ob#oqxy`H!f z#2>n~HqdJc8|9kj1w9MhnSbh+`()AAmZVIhm9|w9Nvh9E(ASG1M(7)wjiMo;~Ri~$SPm`9Zag( zJ^}N{Nu;Pan*Xbo;*oH0m+u|WfZo?DRw)(weQ>wik~N;GSKO2IULz@IeW!2vYm&&A z^kc!G(QD&iTKGl2&^UaQ`QF=W{y%G4@c>T{GTH^vN2CkWiFi~-v5NRO)Bf1*mb zV4$1&z?U~parv*i>34=|>%EW1!i*V!lRBnk*;4v3*XMHn?91L*MT6IWFnlfhVxhk+ z%#yp8%LIjTTRmP1b5nH>sgUgs@l@is0OnU9Cw5k;!br&cJic=U&WQ%h0yksMj|@M) zy|eqoWAOc*#RT^K?Kic1Wv-5ae7{RM5x>0{-(k`9!Nco(^pnPMPXX}+N88mC;xqo^ z+6kNi?+eRV-|3?WG0i7$`Cs{K)(AM!{zF|p^j*8}wMFJ=tO|-?-Fx%JlE!LWpmF;= z+OsQs-tgq-yYGiWLR@K^0g$DT2CBy|?QdV*P>LSA`urALFqj!#Pl19GRNr`bJD$<5 zv7A5OJeB&WgR?rKbh^L0jK3Fdb(p#y_Y3oPpo#h81U*I_EBKq=RkTZaaNiBHjAa&~vk8z*RPDY5iu2(=fyoP??)FU{ za}g-=#%=Uy->w&qeA)w!Dos~D7ZoyEgZ#VkfsI7nS>I17!iMBgi5ZAlc{^D%ED!W; zK5Pdx=t5MH|Ja@k`FP{5PQ6Kr>FUEKnk+B=V2WmujTqVLjIrNOa9xO?J`5|F!xX8I z5_#Wsy8B^dF~~Ws7FWe9kiSQV_(vr#egw zNQ)qHd9>0-FIB~DQy0y|4R8!g;sy<~=g+%@)oNkdD8gnFrjsCoWi{3T(y)>t;8IN6 z9?LZ6)5K6`MgS7a$UkkOouT>~jCqSKvFAH$nZG<9>uzMAc6WZn{!b10vfjx8yUGz- z+V0=k(b2DR_ueQo{)fbnm~FrZH|3|NzSkw=v&OCd98Hfj=Wu*4gtzN3beQYn1y@`3 z$9yURp6F&o@^j&vN$|BEvi4g;Z)3&zB36Yz=9?c9e_j54kE29|kO=T>pSze`T>gBq z?7Mc)&RVX4@7QGnjd;$~OO#7xxhlj`^3~Ucv51J*SK7Xi`$qza=lk8re)xJHEcxGi zox4Ahf9Kv!J81tNVIiOyw|ZnVOAT+fIie(dNBUVaZ2m_8u27!vG;as3o$^H0crrcR z@(b`PLXSfHJnA3s4kJ<=Ucw${w9f2{zx+A7zt|V~wwGB0^q)NSJ4>bAZVl$-^-Axjk11ps|ZoZJJq z*DtD%kJ{OK`Sc0`2K&t^Q(Z`IB{4$ONvm|CgMxZiS~k8c$K$!x(uUJ+OSEqu7Nft- zN>IzFCq)4Y&T}><-WNyGTY)%Hhe_U#9I>1s;8iUvfTYjZdo#>Q} z6Gime)5ZB;Zs*m@V2uU&=3pkipO_*|qjH#y-G(#^EX-aiQKS}a_+3h&_Mi0qvLmi4 za2%ZA-4pS~NyY)PIDvIe*4 zW=cLg<`FiGuc1cN?612bz5W${YHGM~XaH@1!DqTzJK(VA9R$SE_nh*?rd7AfXtUns znG)%`{eGna>|F2DMR*_fnBpG=w*TmV<$k;LQXkb;LX4O_TGE zv%jFCpTJcm)(X+jMZQ)&qM{HN5|XoRS5f3DqYp9Z^uD!uf;hwePKw{JWv60QnhsAJ zTFT74DNj?~=V5(a^@kF-$#iJl#0|qxqsAMg|-| z3bd~Mpmn5ox-XEAy7tAoMd^bz>8`ULbP}3fbiTG{hn%}!^vx>vkkgnKlEYxhi=o$!gY-zo5+VRKt|Qt47eV9CXi zEeAvwg1p`x0N?nQs%e0RySNQrw4tIdbrcKMKMMbC#&Ewp;oZiKYgsBtd2zFGm7O;x z0_FR|p;w@M|Bx&7py&e&Hn^XZ7cX~ce~)~s)W8-FCWy18bbl+?BK-#dsoNhLM7>`h zCy<0VKDk;xcun%_saCw2lMboKS+kVzxqAoBpVRcS2#zr2?Kk+nUVsuhT|r@ec&W_Q zp0Yy?YT~{r+iq3QPm3;7XC_p^Mk_1nvF7EcexCAuc&~8#?Rs;6IUmzatYYt-O>0gR z_S=0P^d@iUSP<`rG)rwjGPvU#NQe@H@a52E7)$P9BYkSBLY!aRGuN!77YRoC(Ul_OA1xtQP-hC8E%6m4O zv$xJ(#=Db_n=yL_Uf~=F$)u#T$CzGOyZErmayjMoWVa7B<}wE|=hinj3yZa19B+hF z-a4BM>fAWD0uLg&M;1qcUkZB~IQN~casb0S9Z5L|o->04BTq&a-KgX-~9?kGA$eIS_nfd>_KPreBDcD#On z@v07+G|XA;BNUK0{VXyFwj=+hB@yC#iGh*Zn)Pj{7P}h#@FcTSyjd5)hUV6~!T2*` zb*UC6_=%LAd3)gCGd-5;je;v7#|Y6fQWOY#GxlO6qQSgG*Yxqn3u4a%E7H0tR9CMA zkr87@u*!wPicfZx17embpck^(P}gGC`1@P!xSZ2pI+khOxtfue?!tkiaAoCikR3oupUf2+xEEqAyOC6&r}9YRG>>0Y-a@| zCWH>Rj%@vxX6*1j2qW*@uqk+pcpyYj!CD)s@QJv$j<TKm9AA5RVHpVhY^2 zK~Eq}xBx5!N6a$5U30m%nc~mve{$2Vb0Ph)u+{Qc7fG2-Pi~F1ZTXL()k+Z>tJ#n4 zuusQbi-V%}@Ips4Uv1eqH}$(iJY`}bxx_R3N6+!;zEpMbN3Lq|UZ$suH?`XzqR z9uV+cPjx7Z{>Fem3&v5a$+IVg_>)ksGi)?;!DgD>8$$)Iuq+gKGo7h^fFvYY+fF1yl5xH(h0x@ zM)#j<_4W`(SvJ#HtPDioh;c+pBM>>0Hw<5dA~h z>XHhss(S&-pz!}Mm)>p1L)&Dp2`8&%

    ~WI7eC56762wxB5~oA92(cDsR0+Y#wU zwa4~PQ$v}}8)l))1?HXl&+6Uv1*#Jg!0{X1vg<$U4k}LrW#D>DLRkUR-Sgirj$!q& zP>+lWKJ~8b6K=*WiR^qoc@#jq@<#VH3Z2$7YixRy5u5}3FueI&2LAxGWf-q(d3z}` z$uqWDuzKSicAnm7&E=PSaAm*@@|QS=CWGoeR;+#IDjN++cJ4q#l#eA>$YPo7)t=kj z{vd2P&|ee2VtQOz?D{Nplib7ieofcT``Vk|_jukgEy8+m|IU5_m3!8V@ zaQNI#1T~AQb}sH;6$|N(Ky*m4*V=a?2K^F}mkFMCiydkpnEL{HXf41 zyWOyYZwlRLPulo}Ot%bm8g&Vxyc!u)Q+`jHWL%9vr)L?Q6%ghdm#9-d9~bBm(JA6d zDg;jfpCh#U;dBdp)c)UVOwR<5TSJ@t<%Tni!tIOi>8$C4qI0ks*(bE@>l{oKKj&Un z!b;=}LSF@AYdsPi)fW=*X;aB=FVsLL{O5+_#pTP+JC^UIt2pu|o8|_SZk)YS-=N3L z3veA~F|J9k=fWyU!X*|KvXBIu%v zC}Y+dWs~|=K8%u%TVo43MF`PGgxPl}+s)@!gj5j|X&f2=4MPb>q-v^3s=Sm!{D8k) z_Da7pR`fLA|FHrJg?VncIom+dNFVyq!;H?U=4j$_zu0Ccy{7ppU4OoeieJ1eW`Vl& zMvi^5!G6y_-<|!@N9UXogF;MFeHXamED`p&Rd8JOotZjKf;5HOQ(tT_pb?*z6N3b8 zEAki>x^nm8{7=#bLKxj@z!FrR|ZC?@}cL+WeD2JP;>7m#Irz@lsfuCJ%+%f0fsL; zj17P|w5mB+2@m0ofn?T@?40x)${b3jiR`nsm%bb)l4q}XPc9@*O?d7k0Y|$Z8{mE_ zs#D3>r$tO|6k3bR`EPfi)pwWDi3Y9avh=kq=C2ao)9wzq%9uy(aJF#1xP=PUw5J_a zkS5(F=pFC26*^83pr7KMmW_v&O7gG?7wf)SDy57_2$hm`t@4t+6q^WhPut53x)Nh$ z+^t(}`M6gu&d1`L=3l|81)Q%g0C}#4R9qG|+&^Tf?DJXr;IaaU;+g5=Jqnn|e2l6F zWrP5R3*w^t$m~skjT188e!s{i6uvgEZTXs!h1oMM-N^Wd#ddIzlp4J%VZmI6DN>FXlw2)03IX@3`-4iWmWRtZW*bpHu3dP5F3A4U{87hZgR1FKfizJx# z%DdmF3`OwQv{lfb8H=(ZOQ&}}c$6qiO3Ij1i`~Ul22;#`l?>6Su&@TOr^$<1@Ms9$ z$-1Ehp*^wltq(Jl0B8YRVC0KX{tMN>NYa7}`)Bu>(+s|4y1DLkk(w5UAexQ#Q__Mh zdC93=fR#38OrI*4J>RXV_NAjyGghUJsw$EMRWv^|hDU3OX<$tU}5@|A4bffOvfL+{@6W8jzB;rhi)&<|0Odp`2Ec6?b!W1`oA zCTlj-d`x%Hcg4u?X?N%mdg#&Z4^B7P=kaffu`iHPCLFEc;v6(^QOW+{L2fRSwULcI zN1+|wvTQ#M;LCre-US51{Bfkbn9uyAE3;Tp7(*k7o;m85;HTnZCeJ|b+D7J!`p>ON zlN8nz*e7!8=gpWXV$g3ZOSD)P66|KR&&sX z>HD>&jSd2K6~Y)0i|7SbI4>tn_PR576t`bQLujX0P=f=8iER zNb6(S$OdA(qoR3kIjnOyJV(d?V^oSqts@`d@47auyPRR<&k~4o%Gkin0}%&Jf%54q zzwA2T{n+^%7YeSV6{QiOL}!$*^sAe#0!-*D-d-y zy0=!CYRpKq=f*uhox97g9PKwR>Wst!W!BYyUauL%cucj8x%yBd`({KW*BMb@F4%%8 zj5{VCmpK;5e*Ap-m|d;barU3P_A05aa|U2?5OQ#B*5&NV+rn^dr=1;_t2g z2mg>WU2XexaybC!XKKb}Yk>|}puS+f5{l`KZgP#}P5C;^qo>0l9s^z%OGfg*6UKxi zE0*-=x0LI;rTftnL#t1lV%k^e{sXtxyANHR`~%!B)R8TT*8Q{xwkGz`#(9M$cf3HQ zRhKDRoZN~Q{Yg4AJNjoU=?PVkY)uh?>vL`0PHK%>gsi!TJq51DF`v{Rb%*7+T4aOM zCz~NW%T9*j`FFu3O8& zvR5ED8|z^frix5s{)M2KKWrS>zJ$(}OMr2YNh=$5yT zuK?xY2vW$J)mqx{%m6zZ>5Wx1RMD|_ye#5XJnFi2XgGRHf2{5*n#3Of61wNZb3+Kc zn5TOqG|LoE(nZWBaqDZwIYILa7gaw9+I{a$yaiA`u5Mnz!d*a>A-tA_lKzyX z`e2i|52AeJ;QOHX>MkF)a{1QWaok6s8!CuhrHVZ3w9}bmsnMzlvu!>xXA^C7-ZTD` zdL0M#eoiV{!%3o2P2OILA{O=g_hu-131M;`azeGZMp86>U#PzK0C{}j`gF4zbNeQ% ze)J|BGz#bigNzuH0D(zGZuLpGk^V_j1uBRYRWmb2u3@$Y=Fc<|8_nbI$!xK+ zs3eylaw`!cSHDFCl+zMMaA(;#=K{oF0T4g4|0iIbzji^o1ovJ#YevIwy&5`QfFqFz z`}gQR3`GM2NwL?~uj;!R z7JX_SMJV+%v~X+d8<{bD2D=`P$*EuSExdBg@;3SDB{zE%L~OV1eqS7@aiYBJ0q!qA zZSqtnTCo9;K}3zAkTAc;D@T87)CP6HLH5goZk^{sMrttRU~TN|wq~a@g(Kgh@_W8@ z1(sVC_7&*Y&uv{p&W@jc9~YiZoJW`JSm3D}d&af-T=wJ8qsvbhUFnxw6s za@H)=hC{hb+GL*wC(2iE(ou+D6%=`|emv%pXf7{LP>pJ)2(tIQxK}y8br~xF_*db$ zveRL|jTYo)xizDOO)pvmN=EOide6{9_I`*Lqrz-Xg@m&gw?u8=tM4aiAI?nKn$S+` zJIiicgc(Khpk+sTv+Bz7;8J30OX8@3%zy}~RRhq^vzL}%rI3Ab+hIV%n5ru_dVKTg%_x2CE2+ELR(=@R7aPsi5Gk{AWl#{hRHyoX^4twH+mPrNIa2y`m5%BiVgYYY1Pxv@)DjMCcI2atp<*zM_-;~1y|@}6 zw|c+-9T(Lx^CB8y@qV3EqhP_FKqUB``rPE_nJ=YaU9ZnsoT?m(u!opC=1yl@9Aawz z;qR(zh@N7)O!5ep_yU|pgO594`KgfNAq3Or>g5fN5ReVKrqm* zY$9)lDSiQb|o6U@wlkjZ3`&oh^6CiCla_s14+X@Ib-txes*2*=K0IQ@M_ zDt^2@+}7(KdmoI%RQizM3#l`%*z9Aczfz`~wk8lE!&Hqaz0;;%n1b>NG_PeAi^@eb z?)}bo;Kh(!WYa-3Gjxj|G(VAwLZZkFhVN{ZRHkd0{+)62k(Kp3^pYJebl&xf5)B7Dj`Jwt=M zJX;*9%$FtT`a6UI&AEH0!RmM;o;H(2ke17u*pni2pv1xvHlh{q-PL{rBQ;ISW^EV_G*Av+)A=Qd^G$6igwD-CW#ad+5~3w%=D5bg@iuGk@tFH!E{$f> zy#hCF30U|HIyTMR&-01P_d64A`HVv1>gZSyh&89nyU=hBL|Q%Y9oj*NR{0&s$zb1Y z9Nbr%cK2nX6%ALJ?JL|rcfZ6pM6|zD&>%nPL ze>#Fo8e!HdC;rPC#uWHh)`j?c9JkT83pC?T8~b^FYI8svzRCcCQ(?gMJnrF*IiIgk zZ`#Z#B6ixg+hAYCwHuGl%UgNGwIHY|`RmAJ^?;`fP83VM1@Jq`gKQ~imIL6oSv@j< z<^;o)A*Hk)=&e6T)}8hKlp^lOf&@=rsYb_h8|_AB*-m8;}e*CXg9)*m}@_x-IU%uvP-0+rycKH;)StbrX5 z&mk$2qJV#GDCT))_p~DyZQ=IM?~$aefO?j3dQh`B74@j!Qget@lKf+TaZA)Y@Uzqk zQeOHFDEeUcQ(k$;a(+c=74sGaaz8|~N;d|iG zyy7$MJnlj(kzD$MJK3!Aw8*Ec_gzbTJ#4NUv>u*Mrr!B&KKMy?^a8Z~(M z^NBC3qNgr6RhS3pLcNQG+D(prIk5cpY>nugSdrpF-`2Nb?=?O%;G1mIU}_P_-FDMp zfTQ1f$>j44GH1nGFu@C<9`&5SsNkeg*}Dtc3Ht!ZZk5?GRcr+@ zEU15-j>MHBr9j0l1u{&ivtQ$-ME`lj0@|-%O+@%{#r7kq@eEPBx#E7mXrd)JC7u*e z-!=FbiP%Zvm%z{A*F!p21Snr_l#Jgek85KNKBSo1KI-}vUScj8z$_8~8+C94{>-sD zNC+>G^iQ(!%hz4wSqi{4UuC&z>h&O4QbHcoXnrIe6iFg+`ocPHsl>d#HF8fMsxK@C z`mu`eis9McVpH7zB(Wj-HTTo%w(8!%?Pyvji>!&K3#1f3_DhDOYvXhem)mBEZg0H5Tqb(91oWgY;I!|fb-a*E@QHd`?M^LTEjc=5RzA0J%M!oa) z!u*eLSj=UI1}Gv+4HFXKNC8&dVSQ}dwpX~~E|l-bJvUe`WhFlBr_Nr~m+VDj>P=Wy zlmb<4Y@+JQyxu&rld8m@2`5S8#)gCh$}LF+$jys3`01VleY&LqRD0TDV!UU?f?DcN zd~+KeNNARu&8MO@T zv2jOIyE~jpWz~Al98Zn=Uz`Jnq|iz&9-+%_=8002dA-@vkHKaQYDaxas=3G|!dm2j z2-D1)?dPRZhxL3g$?fDdF+PWB{oKyn2g!-~bVQK!DvH$Pq=k&8o(M=w#s=Zv$gO{pZ7)5w0j?3 zlpXB!2w{njj9|8C@N@UuI{&o1Y?5r=7;F*pE?1LE*=1vYVp;B8nZ*xx#_~?{)gr+=XVXOsm>X?trq1^544ESB2>ES7fZnVE(vnT@teU}!L z_sXVR>mq993es25u42zGsv2m+gR*m9gK-&7JD{rl{$hITu|5a!17DQZImc)kf6j}o zO6PmWj~Hd#6=RrEk(Hwsw@KY*lmiy{-bS6UPikE{nR&U>>tLbfJrpX36zF;xjWReK z8s2H-cKByX!>f^h`lu+6%YrY7{$nR;COdz*9OKZpw1x=BP$sW)EbGR<)2dRS6!1Js zHsM%glfuqZ&TKa0X?C2x?yE7uShqvpp8(*S<5k2lq^L1I;<3%K)hG}<3=DxkMO4J) zYyyMee>A9YvRA(wLDgf#Fwox~27x3&mIG{Kuzh2w6)W+{*sUuhqvGz zp~~*DQVg15S=H=OU3~ofR8lXeV{8|iAFE=Mzr(#+Oj}Cfz7yK>QR77b?EtVEv+Ms(%hmnsWch;L_9T=Kh%~10@7#YE|dZKyWvE?HM2cO zhiwvsthjpNh>g*Iim49aW>#Pq4K5S8ws%^%`fisH}PB?~+D4a%co2jkJ^1=OH2~ zYOojCf?gB4a^>IHsLS5ZMs>+ts5ZaI%g zPy&t#wWq;12p;Q7K^%s2OZ%^z@S#r1cVd=80(^(^hRU@K^Z_WwYKNJ8XM&NNp@38n z(!ovy=fOHLd4K}nlB4={A?AzjOQD3vozUzwFGj2z0=}pBXo4@KV_3`lFx%?YnOSmM z=eOtP)eyuczW!jyz55WxNwI0~t+Cc9Vde4K;<>0hl^@&f^p{(6v>j?g=&f|1JhPkS zBGK17|BFuQ8(!tQW8RhvBd`x81u*0lzCIt{H-s}`)vEpC^o&VSkP9XpQK@& zkx+BLz|S@KsK>D8EenXB-cZVMb7D^X$mfS=unoA173mDz1O*)jwBxVWxWZHd+rbS` z<_&Q?*#eHP#`0P<4#5Si=~(O!9tIG{KiV&S9aFA{EuAY0+$cZzZjBLH0!|6%Ed(?+ zI8~!dlWir(nmD`pRz*GWe&3h-KecZnDwO5i1V>kY_`RuyCrLINlgV+PX?{ZOGXmY4 z)jeay?-)LFZJh$}DYC^&XIU~gh#3~}`x4$>CaAh9(N6T=hr(&x!pG0RyH8Q4>$aFx ziU(WU_$-2)h}DZJkHZ1TiRK~wf_PD>(%)?5cy`)!5v;SD<;UM>KzYYT?Ih~O8Y5x& zF%~QpGV1WkC*r>dT=a2_T`Qiq>VAZ9b>H`uKK7K+I0+WztJ@eSu$1{+SmXA~cPo)Fb#FO-w2*OtWa)(a`DsnKRPpNcg*`_00xTv>)vst;f~sgjETh_5MYFl2Bkk#8 zTdu{gxm-f~e*han>xQtcAMXU} zlc0P#Jt4>XtsOCe1A|+kt=0$8qC+q47wPf!WYSKE<2PJis<){OZDK;m8RdRII44j$$^<}^;gQoT)W!LdNQgF;qeQ6m%q z8FT>fI``BZ3jjIn=pd^My0H48AZN7f@P_79%fUjIHMYrARe-8h2sWsDZP^`3uFKzhiz7IVn z1gh$0jPt)_y!_L!LD5TJ{v`k|+q_f{$J*p&&|r?i$r}_qjz#A^0I3{Z2LMVyYq;c7 zCKIpay|Q=o?bAt0$B_RB)YklA1;d1gZd3j(i^8$=P0`v8+qsB}evLI$8CYm+UFOD( z8+7iTe=`{ndq7y<_3feg{HWC;^_3W zM)XAU6ZJLgpC|py+Vl7Do_o&n&6_u~e$MvlU%Su(bb+7d+*RE zIdyQbej>ige=py7na-X$V;=nY@{{8b!%g}mn(Jxa@VnF=(@5Vo@)nJ8R&Uca{f){o z#q;FpX4e+xN5`T4ch~ayxpQaf=FM01YTj^I;8oDZgIb6C>lWOOlTPPj;eRJOsH3&q ze=s)0|MgtlF~RxJr|W|vT2LZ!QoR8#Yf}x)AV)Zj7+I zHZ7Rv%|OKWrN0$?u^OfN^l|`k`UmtkI=Fmp51sai9-}DOK81?LXpE>Jl7#lO3YL%h zg>vHhXBdlKXHSa93sGNKHgNhwa5}r@f36Q3azgpR=}hI)a(vH!9@HS|9^trom>KGQ zIw2{Nf3ko~Kp%t-)i)>q#oymX{uRV)&nW-Z;mq0471w_0g$D-fvL1^d5GZ%jf?doArh zf%8<&d-3ji00Mt&dDf*zOb+Y1AVn^lWeem$(Ag}6i1x3P<$a85#guNn`YK&Ge=pH; ztP*G(lE5DYWoC7bo3IZ(kLdGse~2sN^L+bwPd3W`q}(?0@B8wyc*)@Z zy>{Nobc#+^YVQrX-zJ184BVaQf&GF!ag3W88l6aJSMzgmvY=?u>8+PMe_d@D9psxl za@Vw9os)L14h-ZIl*hV^&W`5E7)@+#X?dL+JM~?updU?Lu^|1!#+Ytwo@Sii=z6;b zw3)etx$(a*;2L?F98Y?FWS75Jsk@%4f8*~ffjnWJyFNHI zP8Z!F`KP)3(-!hi?c?MPf3}SBzsgi!zkXfLojb=5J$#X`UcJ5s!nf$C>@#4%7ZZ4} z)SUa4I?^X0wsqX(bonnw`PjAB&S(9Yn^!U#LMt8wwa=n)(6?__i?GfuwSWS5xr3u2FV&>GiY!g135~b|JynTT;UNcgO8NS^jL7 z5rRM&R`%|yw&OnF@m5x0g?=1CVT6*D6;x6ZX@y-?_DWhVmmJoYUzW4y&hn*;7v-_4iTj}Y^r~s&)e}gs!-uAPqN7YD3ky&oJ^Q3i}eup~ZdI;3MYU5^{>{hy1rdLGT z1X>iR&+T7v{k!r~mv~i$%El7;_6WvVwRqF{KxJ(+9&4XbK6P*^uUJbDGOw=na{j^w z8~dJ*)2d6g|10JawaS}c;Tb~IP1XW_*ry#x zCoLdBMTnXMXBg0fd~oD3Y8Np+Lw)VTgArRHb~40Y_eKq9>iWtWEUjmP1v+FDTyzk; z6M~8-A|D%ty5fd51SlL0Xq(}Z8P|-45s8lUwmBr*na+1~56IPTV{+HD%|XHAyy&rh z-9;6fDmiirf75}LC@3bbKDjYTNG{ffZTC7>z)uGB#% z1BuWsHPF^J8G~D#<{NoRtZno6S^GoqSa^pNgqt9f0glaHbz)8aty{O`#*MWDvkolj z*b@lWHv8CkVZ}h-@KSxK0)PeS>7{}Hz%G~usncrag5Ci8zt#b?PrH?_+&scl#6tP} zPTGI!e>zzU3-p0yRJQ7MgIP46WO#B7PH(57{T6Xq2ha|WYCUy)OLMB{Zd|`XH(!34 z&)sv+S~s7O`W2_e2SB+#G1`a$qv%|zOm!7bRqZ=nlL>5XnlUjo7rjlh*2DflZxh}M zv6vgCL4!KwB+**+SRJobDO>`Q=C)T`DWH=&e|<+qKU>`oS@}WS*2#d>^8^s8D@h z?c5QfbhLiSfdv{B)a=*Hc|@mgvnqL`ZLtoVlh2dJ1|c<@1>VsqJ7%! z^gn#$syPSXgc18~l964|Wv$)UL;lfGf7C9pzurEMtG$-mhJ1LKo~U2p^hJgo(jY>) z%&9!kld{hin*dA!>cY) zx~aOf>@8G*XzBW>EE?eEyc`wSy6V1i)oX28?)qZxBV9i@I4A)H)QkBGDSZPGY5tEo zXZo})wJY@o<;~MbS*r||C2tFwewNqC{(Bv;Pj7ts z=%=qn_inJw;=C=o4g2r;I5=*Be^D~LDmCyn;3N?UN)$(0X$T&!)b@0ArY))Q1kO4% z7r&Y?b`{91H+fb1I8yx8`^jyQk%z7*R>cvoWpb&kS63P@C~Aet1_RUYYITs?I6OS0 z9LK0SH4_W+k9E8~tg(x>(m-GE$`$*^Ot=OCNcCB(4>#G+r;}Ft5N)IDe=p*Cob~ZR z(z7J`nbkbDwXRS0q1im?`nb>lT1Usb%J-qhBfR}z|97xDD8YkTXO($lRr9LK<`y^4 zw=Ai44SKAA%{%VZU_@7+syBgWL;UYl=WXGC2mJP23VQV zsn9<}`ReSL=3LuIS8GGZsqOTxc}fo$Rs1!M4;TvVOPnGV-#;cCuehiu(xTb;s|s__ ziVKliFlvnR?h->=;`{Y92IE1ebV$li?$@-bzkl!te?a?m@)9d^e}dz(MIB$=I6=pe zf9k;CSn|&UNMbAhtTLoB*c+-qGyyaO##%3LnAJZ^SFRT2fFK1Ue^%Us5!7a)v|NKV?f&NF)#U+Oo=2%Ol7T%qB5-qaHB~dJ`;HC| z3v=bqc5*@0a2qtRu;MbO)MFF*ey!@hCCVe^4|Lb62Pu>i{kQQ2^(UUF!%=KNKYJT( z96qhrhi&HIb+`Zfw0kMw0i#=I*S59)4!e*mM?w3_TFtRTe_VylcWvK;1z-!Zyn%DA zL4i(x)oHrX?BT6LE+tEYE2pn&Gx@mc*|aextIQ^vvkwf?Q1>XvwbN#rxlUE1CDdW| zElLVH1ya}g#Y1Z>weBUJqJ@-pSlt5N(0q(vKkFVq3fL~UCB}TEOl;! zHENNA-CWkbe^p(&YOh38vZd)t?I!=Or0Qq5clooLCFqd9K$HXOMW0jG*;#?ti7UFc z%*#Oy&=BDNZbvmReMt3-;Z=v`m4G#VB*=)lTeSa`c0yjm`%QIDFoE1CgXvfYJxg?Z z_}^n4Ll{vMIQBB)WqGfYcRZcQuWX=G2h7-niY((ff59QWE{?gy)ysk;9p&>TnxG!` z?H%?82$2>d|2^ONFV;iwMivlJP)DGw2UrH=woWFv3i5IO+gKnE%b|kcAU{-2daWwV z7C<0sOC1N`h+_dvi){@c5{94C8P`0pdSb9nopY>Ncqyjtbu>~-g+S9c3O07En^|_OoJ84gzRvH&+ zPZ|5FX?)FLRj1=fS7+p3LXSi5Mhy&9xLoSif49Y@?#YqHTi*K}Um09wu-%nO1@L(V zNu3nGvQPSI1br%2`YHLf?G)T-4ve#NwN@UJv5{?YHDN->O6N-X0rLo0SnENaksWC7 zb+i97`QN8EE~R^dul|zNs~%&7X+1z;VNQ%4pY+Rocfp1J3jJrHVJ1yi*^ ze=5pD-BXV;M9ynofe$# z8ZD>+-8xsbtZwqI;;&@ZPN|rXRh#6dH8nU~7x~$HL1Ii;9!m-G)ULSGd4yFPef77z zo>*5jP*-rJZ)RPMAZ2Pq7ocVO)hrc-f3ER_X6GyMIRMPf;)rOlm(|uNpXhlBGxeKO zR?U@w5_Q|zco=O4bAQSJHpKf{qO41RUz}ca_J7Eq>Pyt)*aqllQx4?@`e|j{R}1%P zN79K5NT73v+3BBvpV^mnJUk?2@+yp>1L*|HwC~FMd;vgJfM7Ks;toe70!4|U6C(fGf>%%o4l&=~LsV|&wGFt=5g#D!&}SGhaP`qp zO_i43J3`_)eCpN#0%Sos27dGPE#kKGvQImn034cZxUM|J?%wm#Z=ffRCI8x%uhS}^ z{Hw!F7$j-k64nC_&p>XqYC(r0e|NedAUokj%&LwR>>Ju_I52}ls`#=i3!%EW!_Yy5 zk4hAftFCPq>pRKRJ^k8d8*l;N85FlUZK7=CpWBLzK5%@xn85ML0U)(+Fi(Zv#uGSyc&n@Kf6jc+d0xL8Q5*!pf4ilxul(7wkgsOyy>jhu>@GRMJ2yT6?VWg0vA zZ(B`t{Dt}(Dcsjx)u8uu(2WFtt%Oo99)uVNk zN7UMHN{XuDS6d)DYHoKzj&udsO2Dv`vDbhsOsg6+Zsn-FrjlkO&!hBvr+u+bUCEWA z`xXBm4VJx-r!kdc45cW`5=>yFJ==^Lk*I;DroMROp|(F%S-!|Uf6&04_j-^>l|Iq% z;Q;ECw$z!X^JHs=7Vy8f#t+%22)nSSu_^c zM(b98YZ+g+mBA?|e`la!K8E{376cCWAONF!%rXL2ar3OowDlP&unIo(x>v?#PBDp9 z>V_Xx!9ra#Z*XnKkNdPk$=%C#Prba6<#*3F2J{k*??v8@{Ff80LmeT3{A+!9Pq@6^ zP{m=w;tc=+uMhHH!JYQ0n|0;lWM$C`eYsc^14KN$oJwt%e=Df1^cYZ9@nQ{*l+%Jq zxi`}0@uDg8tml0inq*DZ936h!D$_v zmQg(iGgc~<_mHW+ZUOqI&P&dy4~~qUJZb=1fWF*Y9x6Bb`v!IjrAcY5FSo#FKO23_ zWW5BUA+XT-f0&wC33$ETdU8o#WBYG1s{MEJzfU`okhi#R7TI`Xn|rp6{pZ*>YJKW& zZO+MmZe_6lTE>xB_buo+rD)!)v` z6WaR^RMc~=o@rWPv_gN2z?2mX#i366wiuZz^sOOjf235)RE&Wt*R;~3E6=7_%StX) zWSm!X9re{0Oc)R8!K!8g`YUQhM@k!#=%$rY^kk+g)4=ItL8PiUZ*`=QO`%IK7^Sp0S{>?Z>8Skt5w%y6r)6bOifqq#)DLVbw-b?QGGrBA}arnRN9D zb>k7~f3iXU)@-OZygp~_KM`%j|J3DzuzUj;4*v%U>o&RAtK{8HCoUinfr*qHfC21k zt3&xnnnFRCwL#XG#Oop8v9e`^stHOUfDHip>skkY-8JtFNHE^k|D+sVW6XkEJQKD^@^5g zm?K)?%YE9h^x&Hh@YD#uE*V7m_vPRmpEel%@Xg4-K3Qj2K#S!9UCPikjiej?S0Jh@ zfS8LzY!GVgLKI_h+lS2Ze%%ZWJMRQ{=U|Z246vw%4p=v#Y+#wo#*byHdQ){r`o5~O ze+4{h)r!m&JR=!(&~-1h`Z@%$g59$GIo}oqz7rZktz>Hfx}y zwyz$$R?&qRD}6tjl#aHd0)d|18UVFK@SKYa;@0~^1l|?F>mqum>c)7TN37k|WzMlZ zL5HvNe_Oaf_~(KX?OtMgs5|eZ{U@jQe^I6{zU9Py$n1}Nddq#MjP35bqo(nx=&t&g&BChgF~L2y0rKC)np&Va?I%(7R}Cac)3!Qhf9Z2% z(RE!d*NBz8!LMrGx++ZDu8NyTH}2#--rQ{6cr*9PrSnXkI{h{Fn*%~MPeTt$FJ~Ln z6{_+;c@^fUZs>Vbg9%OLaA5zPITmS~Q&!$lTf}v|d2&<+zW$7(Rr zNmF#)ARMb7A_J(r@E`~xEe8S~^<~JEMnBzVNA@2-*n|?+`Q8ZNgvQ z(>8RvdQrQ^aC)UAc4;$3$3VZhJiK=d^D&I8P8LB~bL^Vt=zeOq9+Xlaf4Jc(MIxx& zQE|HQFj;V9#=DjU+Na%4AN;X3ykREKz+!CV0}ke7vDWakkf6q>YB!zHWW2(pHRUfGW3AR-Fhk3+l0YzxCeHp#L~@ zvPvCsPM3_fVF*&V=3f*0AJtv!0H%G~sq|ytevdhKI(oQY8?GtsDmO~AXN#};H;7V;%(RC;;=Dj@NJ4}4$%3+>4CC6*FdS z*DDy;PCnN_h@TIqgwQ#NA~yq&1!L~-wSQW{kdOD#&*RWP-Uo)H=kA8Gqpe+E%L47w zjwh#^@Cr@je?Mmg^6%sV{8yt_j69N)Y1e;~E4;qaXo3w`5Dy^&W{({j@a?ZaR1oUf zJ}-Z*IumK91`w$`x!JMToyPN5C<;g-(7Dw?E=z^;u|8!Jfz2eTksNs#6~q;MSBWb0 zaDAtti=$Ko2FH2l^mcptTd9$<8|^Be-k<}_5E+Xj|djqG*n-Pb&rWk z$6zyS+ih0ag5K6HIlF}BKHON0H#i^w0_+J8cC-L}I}yzyu? z9c@_yfA^q*!A(>*=v8$OamXMR5D0&Q70ARNnP2NbP_xfH}c+WB-+H?_3rcw+N?xuUpL$#lCgYYXc)i^1cQm715U ze`_wTfgeC*Q+ zN>(oz`S&^`7n0H0fn#iz@mJeHzS>6qf7vXtcL=SFjpqXrhag0ULZ;I4I9 z%a?&4p?agdO16ASf>miL0IUOQibb7{`XuTI?wPcAB~qEZNJ4|K=_Rc1!U-8}P(=a1$4-zZnQ%nfMY?x(dJo1rt{)i3V6c+V+6IH4<|}<0LJ@tqLP1g0(rnV zH^F&MDF2Wpz|XfO|JaNCC)YSc+*YkS)y* z5h?4u06RDTAq{iIe|8CZ0q!d`o#hsgn1Giv(ai^fK214_<*U&Yl)r8JAJqkegx3e* z*{9t}9#2I&Dzg8xwr1Crry9ePS%s!unkv+IwCEfn8SFne%0vbqv{x+%R+2XM?Ldrc zFt*8qzOJE9(t(M&`uYqp(AIFixB^I122tc+^`fe-Bk4iRe^S5vgHQTNUGA!pRPySY z4`ZpgC?_SXYVE8!a}B9qyQn%YtEEPF|9C|%u*yM$RaYu?&!IwWkGVGGO^E;7sNA&RmxO06;4YQRtKxLc_p#xYHst|=qmwigIU!KXq-m^ z{BMAHWd_6-e?CLAu0SN5|Tby4c_nLpk!3=#?<-(+Nx_7{yL+EXu#X2H+SSwl_@vI~XIyT`G^H zug8`h!7Cc9m`vw^3u@GLyN-UU@}G2Gmw(39x+40tjSWEMMtjRkKu+sO2X5MEdjS|< zOi7ape;_Y6m*js{5j^Yu7;TOkj#nC_PQ7l{kXo#|yM7x^$3*(NO6jYrj*_2uaBuO9 zI!_gV5-cLFDywdO27t5A%~9KFKG$qdHCb1*aDC^!s>*ynk4SYZD|S|v!ajZ{bH8x;ZG_@!4eIV3B#DvavR#Qwi*jQ;R zf6n<~m4Eo+1l4mQd_4m6tSZs;-HRg)?W+DSuP>0Mc8n0lY)4wYSGAPz2tWbFwp{oRVe_rd;G4Vg?9kl@wFKeNG<-lKK1BCW^c^A`3 z4M=!k9VN4IRjUX<9oi}x6|iteApV*GI?j*{PcZ$jb7*la`rCkzSbwxB1u$p=Gz7-1 zfiIpY33OOcnFxS7Y)?YL?%t7U-#IX9jJ2N`C{&H8#!)MiquJ*hgDo!T0QfS$e>;cD zk*vdo;~sBRoflX#hVzW)9`N{kppImFk6C}AFT>2c^HZX=mNff*MwB zAbG_Y5GoGBs;;mo_oNS4%jnz}`j5DxM5$w`_l9cUiC$ej(dI^-f=o<)dR5h%0%_g& ztoKt$?8gnWvd*!Nz3>Gojs<>bTvDG_QlW&pUE#J`A!p`s=&thszzuJ9f7v1B34-fr zzo<3P^{>&$P;{+ot|Kno!qnf<zO~ocJC?q77IrzE()G6}6>N=DN_Oe85REO3(D5rJtRC}$2 zLB;4F>3%*0@}Hgk@`hS&e`r-!Oi8Orx^Yc0AElz1!!pVFs~k)k^oBcCUMKfPGJ%a#n(~tM-~%$Csp|Q!P}>pdx3PC(Fj#Rxm}1f{Tf&@%1+x< zAPn=-E|4qe<_&2w_c7v6l!blT&Ghkqe!bl?HR2P!W#k`a%=1kJ26t5csk1Q`z}DN- zGLiffi3EK#`Rz}wi0Z=}T+N`4pWwVC@=Fk*ZNymRpQtR0f6WJZy=^LS;YU=rq(oGu^gI{;+n4(HGi)ax4huulU0?|C6gs1LE7 z>({T*jhC;}i!Z)FFTC))1}7R&#QT!*`l>(4t$qkK-;22op?%iRj#kR*ivpVkf-qGM z+Q{+-YDY&nfBt4W^Np^b67@C(<;dyC?ljnWF?Q=t+kY)bPWP{M0PWLmrCGe-1e<~pHsZV`MKslfyHwl>%mCJ(R$v?C9XjCo(=<&)3jE&Ok`{)HnV$%8oIig)I~DJG*SqPFw>?Im|NOtDS6;md<}@$!P3xNT?a9l2%N`TdUcq73=cr|> zq%SyT)>oo!;A_%80kcGg}UJ;+wYruHINUkT=?=T}s2f z_Phbds3$3~=ZY_eObUYvgnaAi81M@!f9k3)wOr0h=c~NuO%DYsd`Mm7r|Z&|HAvOJ z&G?WGS68Q%=lpV5<^S~QyXo!k_?ES-2pZQGIv4#jB-poNTD1UufRhAag zll%IGO*=VIcF^0$Oq*!A-8L4?2hDCiP4cvE(&HD-U!Zrt=RNe;WAC7U|L;CWf3K_` zP!(R_JQ0~q`b4p!;W|m>OB(f+mb|Q{z5>L~e_-oJ40c@)G^mXBe=-dN{twFg_7N-P ze85E52Cg)YezlCDeV=wGov46>GX_)HWs8K_3zhx`LZj_O?UNIN0ep+teIp>R(IOLP zTl2(%IxLIEP3sz9rg=mZIyA1`e`x-c%qiG{afs{72tAGVXizRPas0{BZq6MU6!b?( z58eYn-xL6X;l5#cpv5PN?(0nHxxR-nMZb>kX|GUEM)LQ`>o4U49-j^jV40`~AKh=H zZ;mDZweRE0f8P|G0VB{6Zv4>XyF9gFBmd?7=yFY$Q%DVTl&S)sHb?*Nf9%<_{EoN3 zi=Oz>6ZEAgo-i6niwThfROMO}572XFJT8s4VpzWY1MQghxZyuDl^QI7c4uW~w*YCK z-X<)w{=0JJ3SGT=g`WEAQ}p)7-cH~0u5YC$p7;X2{PGRaFPDg}RG{_w!2#7(4#aS8 zbqTi4PhCk-=86rkyC8u&e{=T9qJGuIskqvQ0m;LvH&wm2We9TY=`cZakZR&NYLYsZlss#p` zRqv-@m1a>q_4PLdFiG6_vBMg(mUVrPI}jSzKx!E ze67o`UrVcE>I;GZ4}#ST%-n3M8e7z>UROfBoCSV|`K{%)!vA>P$%7yIkcAnM3~F9v z4``ouHl4IRB$o7qf8j|yj*P(!aL*iI$Mm9QgN7Kc8~p=C1!z=Z4ObYT0m8nV18j_& z3Znk`x&-zR=OWRY0AgP*JtTp;!xBVj8~Zc#)oV>LLOmv@xUf%0gE~;+K&qihR{kCDt89|z=h~*`c|cK}_>{`d=B2;J?=_+@=sP97>H?~+v%0k{tWf8#zqft& z-FH(8Mttg1|GEStFu57B@=wFDwHdYv-Q9peGwHF>Zfy?6epSOU$9<5gW6#U|8|!L4 zGeeFRaR(UgapCX6?AMK!vjZN8b`m zKUbaGWV(V4wmwr{&n7E%p3NLKs}859`x)TxBp&OyQ0SS?e+C;r^+AV zb)ieLP~YPfkEud^N@N4Z`U7SACyBcpIh@cxg{)&~e>63WMw+SGtd*-PD>NukRYci? z;O@KDI`&=f=1>04C)a_?CkF2lXm9yw=zO_h-rR3AIqcd9>$CxSUCynnKp9W>kWaMi zWY9<({`&gSHD7Pm5B^pLu|Rd59)IF-`rUv1NqWaS*Sh@l=^P+Vy9DXynlmfZeLK>S zfsd-ue#ngvq(?}ipVz-y`YtNqJF-!9%NXvgQ%KJ9Kg ziJMwZnNXbbIZ4c0awQ5vbvy?lLjhtNJZQ%e4HV!SsE-#Sx@=?JDKlxUu?_x-~k8MT6=n^ps`l)<=Bmpq$vtBW*rl; z8lJLZ;)%x}r$--od)d=r#cdP3qq?D{cHH^O=r-kr7HpETM?~W(k+O+sna>r0nqwa$ zaJGlkoG=e|32m|oXkfmXLz~#^=UJNBe}DXJqX*EK=a2VkXHvU&pfimgbUK)Q-FAY4 z((7-u|IEYJxgw0yg0QS{UCUcdcLL2^!(-vjLt2$3-V|I|pGJoPTlsf+6ksfvubZV2a0~f9I=# zZZ>r#=toTXalBZc+_fcB6V-d^rI+%(di1e((qRc&l<@x1QJIrExvGb8IGH=tCc&p< zjoF2vbz3d?`g|w{xdRa&tT4Yb90XW{C;If*_&+$_ryWZtDj?yULvcn!Hq^!PGIIhP z^P6_rMqoW)_wV{6<1@TpP@|^yXQq1Q>f(KwSC&r^tN~3g}_(5!QJv6Zmi?lZSsb^>vasue~(tB0c_ho zLis1%Utp!OTS61k>B*lfCYAT%r*`=-8z=()5N@xJaFze6XV(ASci}#|b?Y!c}d6Od7x+4v=nj?rq?J>~Eo|(gO9xb%n>( zsPuc#{-lnr_xF{re3@Q(f8|xW_nz~4e)Ub8@^?`0rSy3d7!Z6>Y$R^F6IPd9ywc7fgIs6ILQ8+2}C?k(&;*b#zj(JCZ)X>FQdemSD!$oF!casBRQR+)r5N;u`OZv*G!f8j{#=kG-K$q#d4(>l?IV?F6X{nm@;x{@ zYPg`n+xibHQ7rJOe_H`xL03$uTp;hJ;~L10rq#3sLvGXH^sQe}Dy@?sF@Of`hbRmf zdJD_%dFXE1r`<~@Dj?yR7oAym*)y@Y!pta9wzAhB?9Pp_I)jC)4cO7-+rn;V`R%y& zB}79+GXH7-;s~@2^|>G~=)S(60}i623+2g8BPtz&dg709e=aLsCSZa(=g29{N~a$O zv)yE>8Fm1a;^r{AHyWftx;!{-V{mgZC{SjmK=}?4U{|MsT;C>sZfT!(GkxGso?*66 z90n)G^M&T)DI5>4jS-EXJ@oB?pl%ennt3^o)CZ`SQ>abpUSql$NFALCx95g7k@N&q1vLk}>30+VIAwjq2{d|3QXVGN`Fm z_yjCtpTw%0aMfU=xp%C6uBZ>y=(Et~wxP{!kg@-0e|x}on1=&=2krkXdAUvL13!3{ z_G!1$pZu0H#-=J(3yMzdzh-g}sF>M**9Yzg#!$uwKSDi^Uu|ORm-XOYlUpKHEakI~ zEtHzInB*@T6~&Mo*9&VM`-gw{`GEj02ohWy&YS*p$xTr>`L1jvh|G+@ZyI=DSBD`F z6_L;Pe}6c}qrgud^16vMeId<6^5nwdKGS|@o_pm@K#$eq#6FeG5G+XVeFtzZnM&dE0qmKiR%5px16DU z+P!q50utZ*z29pLNlJl}8YN>aoMVX~$CRZ&e~&`B=8Wnu3KKYzQ4>Zmu|1$O|2UAv zGmys25e*a>Od4RUiA0JMVw@{%#~5ohjB4YRc4%YpyJ(VX|2pPjK2agc`07S0>idE@ zZMuGeXAC{q4z#7$n?e+kFqnft*n6nEYfs+&Cdp6~e{+NWJl^QX0NILKL0PS2;f zf6epU?Z`h-3-E#b^ReY$ML|CsR+sG?Jw<{1gYM$8s-nwT+PffKK6CnXe%+wYiRuX7 z7FlG|A-^31K3RI0lZ#+oz$$`mK)DF3c!$y8#5%UF zj|pW#a&WdtPTMqAiOBWNo;yod*E)9a;(}uit~s?6*7L`{ALmtuW!t#)+yyR#e<%!` zV9)@S4+b=}EdCMM@%cWmPQMe<%3)nlNK+szL0{zPAfP=3m+w7)z6Fn^#(XuPptg^S zQ8&t3v1{eMwpv<04J{pqv;L}{)@!;V1KY%*pj?EG3}Aymmq#qXzO2$c)A7`%b+4Is zF`cNdY*1(P27)wFTvL;Ew$ZyKf8*2SUixN>Xbf6?5L%wKGXdOA2iaX;QHWi=_0y~S z*O)-hnr_W~DXMhyyN0zVFl?+i&KmX{4Ze9_W6BQ<) zp^Z!f9!BCSYVFUA$TT7ze@Tv~y$s}Iz@$|o2c5)SmtN1qEOu>}Yt=cqdGlqu>(pIZ zhU=FBoqkTg`6*l4@RA6=exYC3D16cNW7$hW^(3{CaSz(Evn7qM!B$8hD`;o&YXOzq z4w#w!oetC1_8*UVw6#kzzE3-pWIJbMu>TW&EC(D1ErP^k`P8&Sf54A`Lk9bgwA4>7 z8f>C%H95|8RBj8QsxUk5%6m&t(y<9!8Djc4jpN^h76<3+_`yTo%*!+i9&L+n7s?HK zJg6fT zpZo0gzszInYHgd#e?tMOUtj|JPsmr6k83AQe>XB!CnNpUeuVhk%aOK8@f7Ncp>SoU z^AWdwRd%1=fOOIV5-AxYfX1TcjTJ0VFl~r+*4xrf=d=#G7s0&>n|EBbj`Xi>n7(NQ zSWO|M&)R+aw|{$93Qs-t6#bij^Ka5~s^vO?t zQf}V7sgYe{?8Qb@rLB&mEzL^|?*;?O#>xp7s0@nMq zbE)YE++SuY|I~R2c_G3&<$%LLqAkqf=M9xFX##q=Z!~Lp-N{eGPs;B_cJxzV9=jGS zlbltlU-V(_f8blcW!^gIPhS);wcvn2Facp9*C&8D8m*%gOCV8f%6FXGeyImFdcS0X z2_8{un>iRjwJlZvsk1@GGT0ys)B{?uAI)nw5Zgn#>@<CNcyH%ypN~L7N=(;prc4n%W~*A5?ibM?^FY!bEM= zK>W}ae+BflpgXWl+0#ORLGo*m*$Nun>GqR5JUpz!Y(^Y0L$%#)k2PceJ)S1AUmo&p zX}Lf)uue2(NTWnDqq1x&=6?2Sc^A`(3rGY`nrB9D5K=NA2J2#5Xn+FYXc0d&SSYOU z>#t*diuy+<OJpy5B-Th@hA8*pZQFBddjGvs-x5Kx>a5&E3!=<5criPAqdd?4z3x&!0go=|9-Q{ zcgLn5+NT{)qi%@`)nDY%0laeX6hg$VT8Ip~z{6hP;TBi`pwRaV=9m)O$pvY?*wxp5Hc}Y`~S^zIN*D-b`fmaXyFRI#1o|ZT;|wo-M0d zTOFJer$%d`cx48b!G65}{@@S&5Jf4iuKk10eXiBVdY2x0h<@+~e~|v=zxx#S?e_LmhG-mH?bVU+Hvub{N;Gmlj69yG>{mT38L0$J{ zs3Dpbpe7{Aunqq9t^v0Mk>Ga^}*J`dCln9rri{@N$<~n@Pi+uPk;K;^zzFuXR>^Kyxn4>zWDUI)r-a@v4dyY zBH+mYuxLMmpw{!FB8t`-5xMidQr+?N-R11w!tSQP))r@KMv zMnaI36j)M_mhL4)KvKGgl1?d+Zjo5&WIUZ z@Hs!j^m+P6K_#nD{C!bO{m#=zX+tzJ=QYA&bmM`WdZ(AotmU${?GTTK3r!aYVXG}7llw0`Om6b5a^B1V>iOt5 zNTENY^y0N(ommG~dssrJ3(E#-(HgrKJ$+rjxhtXP=gr5|0wNYMu+zU%2snS2v?vgT z+5rYpHaPWCECtIPgnz~#jR^AsP%%LHkuw^waoE!MM2Tt!^0Lksh=JZwB3NLcplgHu zCg8EjL_Abt3tJca9~#P-c!nL>pHC&oszT_bRCsS8pMxiNXHaopMS7AQgW#K>T=eIw z!6+(O3N)icH}qzzzO4t{kf2}2(_`qk)ha2dc{h-9Wd}B>b8;hq`vD7oF>FXBU4u)y zdCH;06yNzizX$6P)a&zWUAxQDG)Za8gjE$k(C2rcc@|_G^oaNWNkk;L1~2L{W&^w& zLR%+q{krgb&%$db|Ax!46N&dzB|R-f?vcwn(Io7nGv1+aVAF@T`3J! zs87?5b#g3d!m|DaWJn-LB@d1Oi(U|OQe4MC6YCx&mM-VNo)@rC1(s#ao%4%jl73s; z$$tm_n5d~|oaJeIiWQ@Cxvw`J{sqSi94yXE+H(uAoW-P0`cBV0r&L=gFFl!NtuX7(R#@_FH{3}+_1MB_rK_YOp zX|!4#vHI9~I!Gwl!keehBYD4-a#fQE@PJjX`AnOW5<$&G!N{9BSIE)-#cd`UuDz!` zfYyWDHf`&^x}Q>d8hGkI>zilR^e8O>oPG(AYN+ZCrtk>7noybv3}~NNI<=Gn>*ZAJ ziWwwbP<-A@{LauGlEA(AIMNkt~vsa ziP4ExX0j~ggNw8x&W!!#0$jDwygxZCeGI$Pd9L$LkAx=m$C%4(-6U25)G6*YF<$#7 z{pnx=3t{K3L;Hu9J z?crwA)aru?NM3ZtCg@5DhzmLzhZ{Zgf$!d2U3^=5=jXJ4?XHnwFNp=-|800ySWrUMMweH&boL6s-XwV*1BBpA?6ngG3S!*- z#mVPy7BNwIzh%*Iq+#-`UK3cgkD2>yP(uL<}eSsIy(Rt(VW^Rtg0n(;l; zf;MxN_T^Qjx1o|?Ao9ucgtqjbq+qvrt)ZNR>kRv1X?n3?sVV1fjLD~_XZ37JJ;lW4 zKaQlj=}nR|Nl(G);x}hz+g}Wu{#NKLq-tjYMprE77~Vnm1lilbcc=L$7a)BTMuJ=3VKL`-f~|J1GlG>dG|t~?8DN0#ZMeCsq5*Kt94H>`2NCR zuPo@GY>xxDD09|MXhlY#RgV%4p_~VJuq&KQ{yyhVXsJGs05FZ{4aV?) zMVU~c`7wQ;|H)56x?NVZH3BlFheID`;V=IIP1kz^psUR*dC-;o6%>&OFKRblYlA+v z?LnT>pmNYNd}z`z99h{sf&0-MZcI#=jM~T=f9j*-)aXut!kQ3XytCC+hb1ySh;5fA z4}8OH6KoW1c*ZPh?4fA2ZQEB7dB7Q#QH_}7gK0Z+H>B)6U3;!=F(Og`?E!P3KN+nT z1e*fofJrr+V0Vdt9qe}ZvgHQW6trXO#wN`_3kv5>IIq&s~qur_@Q z26dQ62dNXfy;=ZbQmpoIZh;NYY1mEyy*j_({Q7Vx1Gvy7Z>7tlQ2Nm*W20gkhc2>Q z@Ws6wlQ8<R)4dlbL@+`*4{=tSIuKfp9pX?Fny^`YCi3J+%IB;2|o;iU^szWtc*r) z9zo0fS!mxu_bH%v0HZlJE8K$qweqa=!$jiFvuB`-B2ac1F$hY;qiZ9RDE+_*8%%t{ z=|I3vixPp2P3q>-;BMc|Sl)3zErKYGZ{mX=zdTK63&2d9YG1e4@n|?N1lsow z+9A+oeipspF&JJ+hY=6?Jrx{(d5vro*m@(rp~cyTKA*m3)eI%MQZk;sLahb$$5~Gv=4!x z^X>CZWcTN3e>!a0%`Jl7iy|P0Q0O~Gvqgr_m#X|oxuqU8p`0rt))I$a{GZ030Bqb> z?%#|^kT$+Cgk2h}m&-dRJHS}3V1{bRA>4?FxHDGk!@g(S{=-;zy~(0By?`xwye&|V z{aF8IpDoCyC?qRr;WqV0Obc~9^=g5o>li8;?i53MSY!OJ>453sUf4AXtC&j6O$x;) zbG-JxyQbtary&ay)$OL^%LbK2;0D$J34BHUt&vnyuRSifIRP{A{U6@}l6!|Wbiqa$ zEKFn*p53^_kh=R?aodO3OH)n|tJ!8DYj%q<_=Au8dkE$+LHpiH(}3XK>-8bV@y9C3 zHyjh_7)^W$(*J~7U#D^V6Ym*LO=>OERkTd&GIVb7C?>u%u@UFmzxYQq1cX0Oicxsk zb;*1JX#OZeUhlx(YA8(CL=9hk8eJXSO_aQ_gR65t(_Z9aN=jILT)Ayn>*tU@ zkM>+KxWLg~K1HnELKfQ+&DHY89AM8UDfZwcd3U%EXOYs``}yA?SMYw9)Xu32#xISJ zg7o{R8NhwUen~@o^TlK=a7BxNx%|b3o`!vF_Z!eMiD^5$$L7)f9(jeLb{nvFTLxtu z5xzrhs}TA{a?ytvS!oM)^3t^_bbu}IpM)37S9g)fF$D+Xvh9)3p?0@nh!wF8T}$$> z1pEAL;l#@o5*mL`k?s4j-IY3!?u;{kZJV?ux<|?s?Ir1N7?~OxU`3Wx%(s8yf$;47 zX;yJyR-u1<`q+kmK0bc$_zHz~I2cqJ>$S}oyHuIAd9BFBs{lg{eyT$$b}bOE6lLMg zzvH3DdT_>ms-0zBL}K)huqaS*8D-5Od5)I0C^dg>hYNv7)f*zUmTE*(<4jG9p~jKj zgg#x<@9~YMA^$mGOiO|G%6Tw!Hj?^PtWy;{_=hBr@m!ZXM_ptq`RPIpv|G3e{Hxeg zck$Dy{hXMoK4>k&Tpi;BA4dcnt7_v_Juo?kws^00)<3L8&^kvEXKTZ$l%u%utNl*& z%FpP%mt?)$7ME38G=nb4ubS#=%M0pX` zUYh~sNo%pwcNrnyZa(-~K~@2KJk5{gZT(Tdo|5S6nEdn`}CG+A&_)AC9hq&q=uss7b#m#kfkKUWramT9b}H0JQ`2lGML= zqQ6IK5#ls963NsB3etrJdFP>WvW^Ge#9i;$aY5$Cf2RmD>lvL9|74fN4r#}g-?n9c z9sKcr65H1wgJ5YkauqFdm@V*I$Yz<$rX~ST?=zAxXX0`+eeC72r{?O{>^pPny9jg7LXJ0*0Z`$!3Zd&^PTd|l=2gv_x;6Ro>9C-*AB2W;1w>xd8MkDO zzjsOwfGmO9c{tuxPocxu83+~aUSs-!FwSMurOX@`! zyecgp&CxkC;@dCHia+7B(UrgM3#QesnGW21%~T)Q>JVB zM0J-Dda_yXf{=D1lYg|=V4%@~JvLkC2Bag6RWW>B~uenpcIvpWLAJQ|jk`6~YG=pLxKWxe^O z8)rX5WNp6g;ELtx_-fNI7!QZSs_;cYnx74N2w}4Eg8eEaYdA(3I=~h%(o&3B7L>{P zbFT$;WQF{D@NvjNJI8l3JXX|D*X&SirLcxZv^?MAW0Yl-TmInpJ-7gs@$T2>R~Vzu zh$eTE2%PHi@+B{`m_(aP^o<#IA5)cL{?WlWjWNyz zVGrom9d?l?s0N0uCr{#556y5u8|M>a6a(|Mo8n5_>o_1iDGI!^=&w`7}jAGpho z=iU8-U>iz0^Th247?)J%&N;Hvf4K4+OoZ>H=;X`d(st#K+#Rfd7Ni zz(2xD7PwOI>`gibQR2$CxNbYDsqjPT&;1Bg=EUjZzKpy-kpi|~bYJUb1>}6@`W2^s zwW%=5O*?eUyMdrQ186T0g++wqXZJpFv!}qk#&^4xy$k$FDO~XYxrvMymdccEh_taLml&FvOxU(a!)}8K@QD_EHFpXyAKm(*M*2_v2qzfT&#k) z;)ccg<&M3=SYYoRvf;DefURZ1+O0%zp&RQ4BMfxMs}7w(@ht#RBeZR~O0OBs5tkwc`gM)R%lg`KO5Rocl*ur@v$d!C&2Xwnu2wwio4R z%|}3J&VcRL*Ao$T+nu$jy_Tq3s5Z+lE_T{|m?E3B3Eu3ykNkl~tE*xv95RM9j7F5j zO|$Ow=}Sp&F%uU=N?#Sce03sCx9V+@8mTny(=Rl6%J|gHm|8Dj-qG4Wq)_%OW26 z6X^(;LED9&>hONO9-CUx>=N>`vK@#j$z~iV5nXZWWEMiPrT&?eQTv2uL4Cg~*=%oF zlYtVPsT|_YD}fA~iwrIQDVuG|{mTbN#HQ$;C&Zr~ zHZm^B*Wq=Jya5#F-9_hR|EZ0H9|EvzinY5Pmre!j*J$PM?vQg4D9Z;np9k~(ia=-d z0T%F!M5sFJ-=F9avRNeJYeq;L0!6L5BCqgpdmeWSusB|8m$rIilt+JCNL4%bdOq?o zwV5S6l*T;-#Wmuuvlex|tp3{kWX&BglhS4Jk7&Fg!Q&x#*gHHC>~2vzrK*sz?5=b- zsE$3~?ds*2DlbURIKt7$4?fU{N)k@hf#ctlwr}%!b4-n6%Jf81FQpkE;IPs z$7dAUGDi)_tsK40ATsEO^G_mZl#eDHb)SJ;vCoN+Prbpi?LkP(#1sVaplY|;3A@@s zZhltZ*;J5%_x(c`7)-(#57TOXD!Qj)PkOWR{2;M-1%sly^1*@GcX_>kM%_WJT*JUKj9VdK&% zD_2A7&ngwK0QA-{)UXo_{9DD~cjo0^l`-EQQ)%1-Hra2kGu(dQlX;LxC7sg@O-T}= zeYMdHH7%PgTbGQ)T8ZJfQ40IQU4glsQ7t z%z{3cM4LMnYf<7C-is*lxi3Q;SnivU9aU2>ut>J(j=&BQGJ~z$Ht(d3o)%JE4g~+s z?eL%46|Hfsd~mLF@V`ASfj!=2Ts3d3+3@)r;mPz`IO8dgpkcn7=6Rp}gBV-SMsEtPdYgZfzl_xRU~_tc=%o4_6$J;afrIr*BYP8U$m4PRKM#<|$=z3$^)GcV)c45V*6vuZ&CNC@wn<>X zS0_u4sgQY;&u4Ea!u{dB0t-Q_J_kRL_@Rh0i;?2_Vb32SY9qTM3XW^C)Tpd#*ne;p zu5vF*9}+#;^PmHjyu9BrlaKM;Xt<*s?oFdUryN#(Py#(n{GO@~irUw9u3KO@n8M?) zKY;)IM>I_%$V7R-S)XD$&UYv~6b0+szuFds^(-UTbsd{DxAVG!5iz45 zXoUm^&o6%=6yI4}WArCE{YB>Abm9r$rNXocXi_!%(##X)FLqZ|tiOGf=B?z;GC1Xm zl%&?ubi2e8Nk7+OS77<+YZHDj=kNqgDWfgUFStj17_hwl7# zBH~@$V0q4+nV-VCpO3>gVle*D?v7a9Y(Il23s5op8znUt%p)FePQAJN?d=IEwmL%d zrOw5$ux@Onvz>yjpP3$uJoOW>h%Wef)UQY^+>wI~aK)(-_`EHEAt_uEg>$T8YGu8T zxNJoTh>P=}PgDizy9heKy>0&ke+V|qGm^sx;Ae9Iu4EU)o^;)uqED2{aH?kj_1tr8 zY7HpF73JfuS}09dnJo|f%C!1pT({a6#cUEYH8_kD56AQ6VvM^|YEK0%xLbzfLzjN} zqQ4F6NM@3WyakuW&1POe$0m~U^fo>wG0;%XXX2H5{7-S=@e07=`*oxV-_o2!WI+G$ z*b5lbqZ1133H0-IhLWN)3&=2Y3vYa0V%j?dBP3wR6V>lwT3hnQuF}l(!D<#8bk3BF=C`>weq9nY+p8=anbbVdR5?)pg1A1s(UoTNmZ z@29!7gc6Zj0|blh)}%gR@av z`w&GM%&Vgph_3_Xb&vIuJZ_sD#_SjU>YIqLT&C-%rc`?${hW6Y1D|iQm_IHLgV>N} zTJwHy0{^B|+>^EEy{E-oXTgaPWvdf644M1;G#IElQl&a7)_)l>VKmB3>&4v{S}S}w z?y!2xZ2))x;N)fij8fOH_#r>oVf-;|yF z048Jj#!%d#W++2V=N;{E|I@i~06;wKSiC%AZj?kIqeq{Dn$^Xf)X9j+#OlhILLPA% z5P4%}yCB9KmF(_9CO#pk(*f?Y7-WmMf>{f}cc{aH_3|$%OAYgAE>!rKNK4{)G2NP9>ZJ^NnQkX772Wclptxira}*5d8bmhC^qUdM&< zkwj#e&vex(g?{N(#mi#;Q7X|b55);p|0}X?Cc_ig%>;4ZyZI46^X=!TQ-4l6uqfj+ zdim`Mn&T6LFi2o2vu5Qm*7*HLa)oj^ic1&GZQ8!fCF`#|c=zd3D%4c`mnIPv@1s10Fm1`d}MQhQ&CX>nv??1d4>bpg%AWAGkv__C*x_}SK zrDDu(GT0QC6rD!kKa6MXOHzC3`G4@{i{rvrUKOao9y7FKR(>a0`1Os{%|Z5`1nSsV z?YG-0vZ=V_8g%jv(}30MtQvd8FQ8{IVH@4lZ^nSl6uYt9!$<@6_TMa=YZ>RWv3G9_ z{ZEhCwU%ov2i~NMdez(V9lM~8Tl(PfqDGOC;Mic_qEgD=m*&!BC)sK%LMPFt!Xk+X z{HZIh9NmTo4Ej(zP@qGvO2{!m(@GE{J?I-+M+XPfLZ6W1t-+ zuR^K78Ew|BY6voTz#ZSGdIB`_EWXZ(k@|Rlmo{0xJVLkJOK{&poL9MG}qsP-uI74O%jl2gL52HS3vf<@YQ^^9U3&p zErxNyiic0cqHw!VFVLolnSV@hy=nMcSn;}x)lY2E^s;~s3=STg&n&KX4m6$LB5Xd3 zuTc5=#-Xc+lRw?jC@$>@V$oTxG36pI_z-T!!lYq10%kbqxSz?JeAGj+1aL^Ftf=RU zSA|>w*%t2viwGg#eJ$)M z1y%LDjvK9${e)rY~ zm6R@wqy7+UW|3N^z7e2O`0AZ&z0=IRaI$PWSp^0<^j!6hi|=S;`xwQ);t-*dXx)&mG&9+DyS=1Er&^d-Zd^slQV#JKD$*V$FWOza02Bl+ZDci^45Ea zRFu*rQUDXu`rg+`srVz;oA$%1(AuBRqnkpksyOsLCz^F`K7ZT# za8NPai%gb7vld4aen-dCeb z#~(4jPKlu+FeW}*Pzw5$Y5qk`-$kl}SLuav_R0cIkBUNQB%S;#=G5SfXUw8ySSf(e zGXyatu`q{MWO;97>dAo~Wa@7Vs_A4;O>7po;LDow!{I8rivjPwH_cIwyriLscD%B5t58l2E4r%p^n;Iv|2--O{+*Q z2YrjF)S@6d$eF}0$v~`gKdX}q)(@nS{71RKVgFpu6NkL7%uIXD)S%tZQT!1IJ;2a6PKa4y(dO=#^q z=(=2ULSa}_42#ZRub*S5?@to7yxfUcZGgMkzQlr}HDg*3RU3Od{u^|D0FN_z-*;b1 z15cGan0}XImz3@W$!p2Xic$la1`kzufZ>0?w7>S=;yGjDkERcw2vk1&&2kuW8p|h3 z64G$_EN6b5d&LIA7R4JuXQR!|49cvQhpDk^k$6DT*TN)bJuQW~j21$rXtG6goaDuA zNqoHm#^!g~`2Ek;LIN^@;SR&$-yf)lVIvmx80z2n30TaGIo=v#J!ZunrwAw<&oyq6 zpL}{Fx`2n^Gm@p0$7b?xJ)Va}r$05c--1ho%!(TF1E07KPM zwWcGi{qV(VqtoKt(HmJS%b2QHlHs=LxU|BPD2{Zc9aklMPQRvrN2|XUHyqDs$jc6J zG^9ElK)3FoJhTA;CQ?HEE4f4F*I2(L2G*wSeL;`&*?4&W zB$C%j*^hS#V1*%3Eb|8%<=zIX3>{cq*j>w1RHAieRHik`1~%dvT6$^Q9fk0|3FesjVPY-}HD%VFDW;&#?rX>X2VnyDxm`r=CU) zDqw8Zh>nlmM`iXwVYdAYaJ5FCX#4+aQ%FGJAv)7EY;<;~W?!9vG)@bN; z8HE^By!mFq&Y^Py;M&06eb|Q%9rwcMFI9aK>?O~iPch#(7zP5)^}aSIe@v}uYT14} zxX+zUH}9_?Vs@g(A+{yep(8Ul7~21@t;uWSN3NT9oTEg}_38)1jJ&1zQ9vx+5Y^5$(q)n^ZOJPg!xZNi&LR6y%&!)U#F~UQmY)^&VMXY+aOf=&`*uA zg*upS+(W`Iplpaq9Gpj+jZ=COV19?ahVDcq9SBI^1V3p=9qURU^B-(QZf7h?w@th3 z_aV$OsumGzxkCyA7!4}Yw9_0dRC%RFP(oj>ZwBkGlJA-dK!hfHhyo&COcKcFvfOMJ z>rVedawR(@|Jkk7s3koS<{zVXI}d!R$-vJzK8%VOsD zr^I7lo>#s33RcGyoZ7NAsk(ndZN4PcllPg75wh&sLntKaH(Rg5Jml5gaiW+Qu*ItL z5Wl~W>9JpF`UIOBkWQauS$_PDzi)oq3M5G*g13d6*O|&ai)A*uPXbfYfDQ-5CXMAl<^)$9b4^g=)al0H6R!9)=mRWASW& zO~siZyaSS-zZmx}C-06Ur8}k1$o3kCMo9xy#yYxJQ7TAcNHc)C9CPb=w=jT&Z;;A@ z7qx-#5s}RZhFB;qO)3mxtN+O2p(S5>ExOAk`5mnr93ej8MwaI}W5m7r%KK!=s4E-= z-L25ki^OmCOjN)gyNdql1z}Ejc9`IhFn%=;SkSlUKXeX`986@gWJiv*jf(eh{QN}* z8Axd7r(}@?N*`ZPvWT2Ez&j(%e)@KAvGaIwk38>AK~lFHZH8P*nDl5l?^ER>hd;(< zx5l1@qwpq4e-V|gD&gX|rI&Uk)!ffZ;xuO{l3P-FI_v|H68xm4MHq0-C+^gYh za$I4kU-`A4Z(rX(1ki}bx3A@)-2ampmpG)8*v)pgJMCQD8%%z~6$Ftk*7Po2o@I?h zu~v}AH~19wXR)!n3{Vm*d9*#86`_QAKTy*;^lMtvB)7<0!-41R%M=JGPPOZTY$OrZ zcROFZT`%viLfPRh0|*S-K}T|Y;U7_4$G+f}E(j~twR~+LR!~LMr1itxM>{X0GJ4@A)&qYe!*Mn%dfYtcnN7UHU zy96Z;aYZ0u(FNKe86JxoTM_i|b8>9TwmS?Ia9y#F_Mj&*(xTyhoo(t>1jC5li-a`;RlH zjB$+z4aH-;KNVMIZVgF>x=37b(JXE0;wBk!UFgI#e3e;U=X0jQrzF@@Sk}O&Ah$r-;qKFy;E})kZ0D zxZYa4eY$kC3gk5lIEQ^)yQr>rpXI&q19*ZZYdJ8gwUhpU!ghvhJX8oJrxnU8f;$QV zOPE9Q!!lL16wru5qG%dy{in2oauRFRhF)UYQRo?MWV{=bI6S)YIIFBXRjD~mpcAL- z4JW)+lKw;EW2bGlT-&IB!bm7v*cz(V|8L>@L#5j)GyO8tvv685t>Aa;U@kun!1;pXKl6t5wz4tJXskmIN%JnL ztkp-&$$)~{D%dy7 zNeP@{Al|)QeUxrmtgl5&PxszeyUAY$Qup_tefpqv`!e&1BA`$LwEkf=Ea1Ui85_*E zl!j1RI=n|LSbrK39gXJRCSYg2$O5w)&pbDYbDUxplO=z}S2fK|yF`18UjC;uZeBn> zF>HEA2oHl~W<2k{z!VtWdY+y4^%)u^?PU6BuSD#H+k?H%w%BtrqoXzlDt}(zyLWq+FO75~ z?@tXAezpSw>Xsw%1;J+lv3kRT>nJEc4x-hb4%r=Xqqh_(aQpyr9%JJBo;)!Qy3+N1 zsr75tdfU@kyT==PAq&6fPK%v^&r#;zE)$t_=@%d!*1WUZOXeo^L?(HEC8cv6FOO=@ z5(A$>OG%;HZmy?rtJ8~WnBe=bYq}?g4Lp>ip_GSQobN-4$$Tx{3|tEM>ehsZ4b@CK z`*W8{SF4jm<(7Vz-sYCysF_ZAg*!?A)Q0a5_Dj7iwWUKR5Z!=xRb;9Qa-G zr*3fuk%FsB@T}~1Vv^kMuTz8VyT%I4sbG37h+|YV?}kFZ@3po{g|DHb!28^;p@?tA zX~T;tA=#TWl7yq|+vnFfxX!&y-6ktfJ09@*GO1T)h&f;&Vw7%kDDoS}i6Z;`Dgu66 zGAptHUb+&fF61PN^EHH}A4a1_G`Fr(ew2;+_8hz%#m&5NK#=(xinNAmKm~%&b&!UD zqlJ$BxThi4)K}U8X3_f$-)$1)f`E0!|Kme9KzZA>uqs z<`YYk-hTTdA2@i?**kZuis$mEBKC`K0vXLR*KhsIDBiYRjn*ATqQ45mirmkVl4K)L z(6Dl60^K;~3GJxcoPX@ed!dzlD*9F8jB4JM4@7Gf5kwNv$3RL*c>5U9^M++;F;~sO zPNh6$IbOzoknA76p%Ku3vX^XIFT4<{&zi|$)n zdlbGXd<3VXk(nXp-K)Q?Od#+?LjLaKiAB+7C4)YGySj7s2wnW+gd<@$gd#KYK_B(| z6##b+h~h{A`!@NCX+UhIS>A~x+Mptf=AY3CBLwtJ(+M^*($`i)*d(3I(!Uw&g@4S!iDvMre{@W=bwWl`t2}By( zXyve_5=M3~*hHnkDsmr9uNC-C)|uR5kC?Gdtp1{8YtOqouKm$^Au9OiFeur1e7ibm z^_OVhK*0A&co|;4V-JP7n{EBPFVPC`e3pndB()NeS8m)3?GoHf@nW^yfv%5 z>u_-Qya{SF9N4Bjib9Q6^ilVqvoA59Z(fC+7@#ygeUxE)o%lsGx%YAc75F5h^O+|% z6j#f7&h-USds83+%tHa-vLrg8&gh%ScYym3dgXweMX`!8f%3PGXQ9(&Idy(4k-_PM z7@YY8XrJkXK7CD}lIr@@t?W*SU3*q3}_-G?TuFfvitd(h-4HR)yAJRnJsLWHSP#Q2;Hh@nN+OnVKjDy@H z@-?Z+Cx_)}b+Ba~x1}?r!)Qx6-UzR$Zn}Z0)FTQeF<9M1=nVQ28FLUW`X{XYx_7L@ zI#d=+WHuC!mi%l6Zvg5rl0Om{+)3V*82H`s)iP2qpcpT|W~=p8n`aoj?VV-kZ9iMN z!iS#4?k^zyf)l@$P?>w)ID0XQrUne@v8(Y}aD3Y(JK9yYLu zz(PnY#rx#yLkY%Io#4D8w3C%i;6X$WT~%XMm{8?du%(MW12Tj!RUIUf(~YZ9Z(6U7 z8hr?)i@2kwB4j=ieZ^osZaWW`H|o~80EuCuU@JVouQxT7_WOBg-Dc( z$altlJI@=ReF+-Pf;MC^*L$C?r1ET#P-(Pq*j2jH$!7MiVP0-gDkg)PcQJOqtpxnds>jnDM5>_Dt&P+4fy{r7}*hU$k%< z^H(K6jl@9DNp6sv0t-=R9wCo=m->&2zqhM13BxnuZ^RLdKd#19*V42d=-JB00)^YQ zi%AC3|6FKvGI3uOAzrptJxdmt^lu7n}M%kPgMDJH)8L3dhV#$HU5c zujWH66vHo8aKnCIp!0n3{V&@0c#`dRebBd>IhYjE5?T3(4ZeOtPOt{#4@9H4)w%8X zkWF9O zflm_)S@@DI2cL=hKb9M+xSy zjEj0yF}>_2P7g3J{fsGfYMYzUnfv+RNOt}desVgwxO$%8;dE!ZCv)x@@AC?aKWJkB zFkSX|L&YYue*Kv zV$8NxPyW5Tjgyq9xI+fzWNWSZ9ad3zC$8eei+{B#C`$W0;U+K?(A2j43V7R}<*(@K za?FnsHrVk%nZ)dKZ7EI_X7dz5Vru;gg(0|(1}bDrxpJ9%TPZmwl?kmq|9@G}qSB?< z=1-JSQvW{uvv>Aoc|m@-x!Sg5+hTn_-pN2LYuXr?ZETjBupr-1_z92*s|&`B1L8#8|X`xLt#TL_QbNQT(BnBss$FT zTMQV(Hf?A3z;({~UtXxzFa0eVD^4}7`t;#$f9lo)yY=-(zH89?{z5Nr1u9afF z=vt^>Ajd&?+26su!A%JsM-5Z-dA};pe=O!Gc>}*MqHUS)hp=9cUL%YskD9$a%e+Sy5VmGDS?1@Re|Y(5tETaA3)x-g z_A2BI3VgpBUi|T-K1wS4zLVeeVun%ziuVnhJe9va6yVI%3NWSsp;K_ol;!%pe5E4E zu_mDJd_*%?c`>%RSmgWm&~T^^{vSNJKMaPuN$iGbfBx9eVGS61io(V6QklZ-Vi#{7C5Dh&V>dQz7HjhaQU>ba8@aOo9s9F<3T-ldN^DRMp@fg zY=HCg>9?G|N>mwDCtq`1oE!r#v{}7B3MsQtH2dm=% zpdx&xxM!==uv5#c41BxdH^;HyrKoNkO}A&kj(`k{pb1|IVaI7If;29;vNNyo>6= zWp2JPK9CH!bH!6x+LgY2M}AZq0{@UH`Mu2FdKO)cQ_dCS-dfT-g1;LN^O#ViEJ=Ie z8_jzH3!eCAHNw*!jtk!9Jk^UeWT6c{v${ixQoa9DZp;7KrC>%*#>!i2FYpbdVyU|++dtT@K7*isr zQ-zXNeEw>51=2UZ28+ni-nkP2AErBL3&}A$E!LP}+T#_+BE6U%Aiug! zemikY7O>$FjPp^R6D^XKvem#2>;8bBjQ$?|D;J^{LrMeFuJVd*8?d;k| z9%kYs`Q|w>hyI@_!Fu6S)F*PVQs2 zZ3M>!iz@pW_vU~=jk<>fw=Gm(J8&D_!>;BRqCom7AYAVO@iAg2FZM{`?_hXaw`A$u zR8@zS5qXh0_8cwB7;>N3GV#Xk+PRDFJaka*H4DOJ&Z}6WZ;E$^`3>Tm9NURFWo*nZjB~@Bxe?0nnVSzT%y**WM}I37koeMri|{9E-mg;8YAKKTJ#h_RHF1tBCBFRSFNf1kJB{Ox!SOYYI0+vk zX1$b}bOWi=ZC%=E8OfgwSu=U)$+&1e$R`FLBIt~p1I>Q%-XgHYF;Kv1PGhKF$`Rxt zq9#~GhNou)*?&n_x6%H)pGF7H*~NFcVGnIT5;FFzatW}E8_-GcrA(4$nYZPA z9f->c44G#@)x*Y}!!(4mnN-VgRjaB=3S?}m3e4udPF2f3mBJ@)jvC~XuV9PI>pY}` z5hYNAeSc1!u>$Ey{#igj1@&nY{C^(MWYe)uQ-5XX_l75_B`kSI^gQwotfxF(Mkm*;v@_Qw}1#4-7pvl2BMGxGypWLW3YCt zfPWY)OO5Yp2=m#9pMWrFN6CXuFP_IwfzJLK2bl{NdBF%+;D{6H(jIE;S-`xOuYgE9 zNht=vwt>LspfMs%;Fol}b0QiMGVPH(D39<_s}n+faHz%wVIC3jHzPlEblV7SwE4mJYw)J4!a#Yc6ehi zcygj#VlTl);iR#M5rW>2g$!89{M6Xa*jNQI!Z2CQ^ZsFPgy9?L6|+LnlVM_;aD9pb z@Gx)A-%hXkPxVut1+J%8Glp6FdNxBT7$KkUH1`t9s+AVQf&*z;nZ=7SD>MB7L4S$D zYj(1J${Ovv@bs|zhJ8$j*U|0{{X+RYmdbDFuG!Ce4A!jGVKro1OC7SlF5_ZYyTK*M zFjNk{O4;@yImmp*PH4am4-L0_f`AQ|bCPe_=X>am5q36C%S=c8e+)##m4s;Ln|sHL z`+t*{$N*oIEok7beDFleM}Q%ey??|pWo%_*f;~Tump9`7spJ2#yx9174im;OoR?sP z(z%p?ufsLE%OzM5FCDyNKb>)g4oHY$MKB_rhJ$?F2`CV0#ijr&A5cd-SURXK(wk|L zQ-?T}{FNmg03ja$+w!3!hb^nqLX)3RCX-HWpSQkR~8l99yGQWA74(;|5MxLG{=@& z8(zjakvpH8Xh~_+_K-kg1ethDg!6ArJ&+QrrAI)f^0A(9lQsJGH(#^1h}mQ?3Y?M+ z2(t=iZ5lc;hI&eyxl$>EJb%zh>8@-73&n_W^?v1$HElqrXyaYM~{N*&Z_W;YA zzE%9N@388i0~x9V02E{U8#!@uW@KvajU9*Gfe8ekTO<$6EXrr16H8)?AgNjUZSFN< z48 zW1KeG|J(Z6xNm9&!*Y|IUJX)ywKL`j^W=Ob4QySxe60Q-Wi!WE7h9dnn5z_F(Elib z=zXLAv;X5}uscrKPG_G}_b@{vZYRTyFk@-*Fo^UF5zAm5u74xzl*jWNSZ?Yvgicr6X=-o%Z|NlaIe!;YG#g)H44s|0c+Q`Jckmi$z@_S62WzNmKu%k4=@ZkD(odzWXrPf0L^}fD zn81l(?TkF!nRzm_t3e)qv(8(QGqwm(hE~JOxHD<8!+$J3J&u3vW`yL~Q8m^*{SSdG z2=OL;2$)4z$~BP_H#*D#2BrV;N`6NfbcoTW=TAejNKqhIj@OWgiTx6SontV~0s`8o zliZj5xG1Q=LR#&>V$X5{5zNwC`_kyYc!BuO;ZwH<2}Y!iH6!!kchG;5J&joPPi@b7 zF-O&h4S$ghoV?&YA!GB<-$k-CA538+3~MzqwTjC z>M(3v6F_s zU1LGMZ${aO{2MUX=e9jWtvu46(7A^FN1<-ineJgej$fENXBIrV?VoQQ0@#$kQbl6> zi#>)nmK8o=aa+N~|D@+KZWp5eM?#&*`GUa^Fiy2Ye z8GrPR0$^V100i~{e0lOH>qQ715VXg%lVN_!1_WP z97vm$#aF@N-YY=|SsTFNIrf~E>(;g*IFmRzgs*56&=ATryv84JzX@a45Wb`$Wb}Vc z_E9k1vbM$w#0ihcAyy+_=!oZ0b=P-oSKntAOD``u5S2)PpgBG9wA6`6he_Qll^TjKxC_($7Z`p>b~Wl(|*m}p7pQ5Wlb z;@M(y#t`0D);OtI39*^}pR|oD`G4?&=o4ZSwCxG|6}uqoxTs>n8aqw=j~qT6_U`#Q z-TT6Or>E})hO^x`BKQ^XuWJ`8gKXdEJ!Wk4;%wjV}D_YFJQ&+ z&>;Cr7CHEzTYTNc|A0-p_#bt^_#9P-)m@{Pw(fFlZNNm!K`R-Mz(EbvRe;`r4jKtd zTCXl^o0KkacmArc{~*8h2_9Hf4j&9)6Mr1A_DyYe7u3Wka0e`d5hOFbtYHg~k9t&rJ@xpMY&HSw zDi!82D*evPi~8S*P7qyizhM(v7;`cn%lNm(!U38*;>4v4o?3_O+LX)h- zQaE_Jkw52oI0hlY-haJ&GG%R~1&*S{xljYy# zksS+T{y*p#*tXNhUr&1z-1p-9 z(V1u7m3Hjhp@b7tYQeE`a`{+3m5KQY%NX4YonzZUwk~^fIDgm6z3Z4BLSwW;M;?au zSRMwXDp_rQcR+P0<~!w-9Vtk3;k_@Sv(Gx4_T2V0Iubv3ukSqI|NM$IF}5w**kK@X zUYR(8|6`MIe<0BVw7s4kW_I14H-A(967dfiH8f?KbmNCgItB^vckZfvVDcM-R_d;t zciwsN^NtFz3x9zkH57usgSHv;m_NAInn+EoLwz#DhHnGxNh_O_L0hWIp-~VS00EY$ zAt-k#uP}6#jajeE;9h&N9ymt%70@IIYy=&&XdEM)qpkM= zY#yOemA=Azg@%+pd`mR?aKPrNiMnxiNn33k(7ETH8-J#aEtj9<-a3OfjepeZUfFmo zpPkEJsVG?p>_2D@}F51T#U(@=)db|G;`XNqW~@7jmj zZrfJRH{!U#GNrA?XEgykNZ(TbpVJyKu)M3sA&lwfL`y>E{(@Pm_g8E%`S){S{~tG> z-NxH&-J|}WjD2%3n8`y*cMz|HR$fwSRrG&7>3{y$zjh0qvU4Y$bM{%YVDGuKZF?Kg z;raNgn{UxHyk_K9Wjvn~TKqZ6YfS!m<*n@V&b{=W%<(t|l@H%}hz=b*5DxC&!*Xc| zYM0k=Vo8Pn*VMksHC~-IN?uzW|C8hYgMu8gpTum|$V zYpdt@oW22(gGHh2I1Zcc8F#xvC0!-}#(&VhVEX{aVm!Y1;)_{6gFDgkQoLspnRo0; zGa*9#XFUT_zmgq}7n%5QPsWjRHoIS|AV>(!1aYqZE89ZKj;ekL8dT+~B3LeF$J(aC z8~4b_h7T1K&_zt*GsWFGa!13DUl;Hmu4a zV@JBx`oYF7${0c&I-dUD>V!AG*#ptc^K^2eB_MCCIW~B1;8@soc%`%>hmX*<9Vs9& z*Z*TRz!!DK;v&Qe$`&X6GxbQZ5`VZXCT_4?(zH7d9!#GD70aN-D*tHR3r1`vrT=9z zOw48*nc?f1$%+Z9P}0OY*N+>U*qAoc#H13AI)Qj>LY zSlrH&0`yUF=8|UnGs~i$qJOdm<@Pv0UD!74hk%CN@&RyKfIg9LY2$U=C=O+iu{>gI zJ)k|&l9A^yEy$ILm9=GPt86*Ln@60j9Vgzn@jym1L6cMb?bt4qk;v#j84x32!?A0S zRn$$M`VABGG5s%$M)bb|xb%9-VAIRDEAmvoHa+F00vp@@jzT@<34d4e8F#r$I{(}2 zKF+g0Y&+(46gU7v4LQ&uo0Ad28*8D2Msn*(`#b5h(wFugfz6lpkv#_N>WU4%RL;BO z!SRpHc!Mz=diL`~`G1>F>Kw7rb#P6zG&FX%hU;CQ-Pp#4!2ZXZS>=Y->T{{?e>m zt?(V@{%ayw4peZN+z*&3TFC(_a=ui802myQwp1a9V1blRbq>O1!2tgcXpeGU6?3pf-W3{Sb( z1Z$w52!(F%}ruk3`bnar7cUi9CySHQ=s-nAK?nBFf=&Olc0DYO?XA(Rbu5Zi2J z@brI8o^&a6EBfDpC$xjKp#Be!0|g8QC6*vtF}aT5DSz!@-~8b4AAana{DAx1r(FA; z8Rx(I_{R$jmLK+PLgJm;C`KV=TuV(@@7a?9;re}A`Z8Z{hGS5xPqX<5JLWl&{$H{$V1uh8o@l8^Zl#P%<9nU_{#X?D!sl*x&lkfoj zOm$@hR}nbNP~sdic`uWEaXYeL&E5~}M~r}QUZ^Hh`@*jV1kk_?UrI{c^us@NG~PXc ze3XMElp_^Gj3Ku+U#~VP2N^1O9Ky=UFVVX6Pk*jCz%9$&L^w|$vLspR-6}ql#kCQY zP)iL}^n(n;?IyJMr(vp6}R||7M0?A^cf)$uY=S>y|p-nIOf);49$xBMB zx|WfC-jdm-;=0Gdv}46RfauS!IKb!%B5nh!rO68VEAyp(D2k zu7B`}P%(V@4+AYFAKC%0k4+{!A@}k#v=xntGC0yU*(Cb{3wqba zKs(nYeY71ap`sQwrto^u6FRnl*^yzQC8H0%WnYtq<5I@6u|HNPIJ8O|%(1(45yz2t z9m^XT1L(SX;$Zc^05)B=IDP3x6o9b!E7f9#O@N`ZbM>=zrcqXKL<0`0LOaqru@LSwerfrkaNgGU_+=R$-G!*$6O}o!wLy$OJK0AxS|39aj}n;J=kQ14bO<6o?%y= zY{~1YhESItq&EU{rVuJnqvo9qOn)&mWsted_*pvu$}2C@%8(o<$&A)R{z}x)cXBT% z->=~w(>(l7b<+s8L7afSTnezlz(d$(s7QS0urHJNY-8&!er`zWKXmYr#qo{mpgqpx zmx%nih37MXk888v^2vQP(elx%ePyGdB74CZkOG{DXnf)(h8lsgzpG_Cet*&eOIT`y=Ry2g=`EW9D8EqO>j4z%5RAY(FeS2z1D_*#XILIdqNw zM9V{8{mK!W6a*ZgQwP9VGk*pXEz@aiz$JP9*wNMC@Mn|e>c7Y=V-sv8J7txf2CyuB zaMb!Av$MQ5%L1q+-=Ky^qyJf!^g|MODeWGz!qc}Rwpg55Fd`j&`R1D`zoJp8tEmDB zhi1zYMGEST>EbWIcPRbm$_6;ANfb)KWmol~H}eEy=+~hhky=k);D6rgP9PVIVz8P$ zd10KDam3C*&c06gpAi2qZ2-OV_z=n&>8oEkOcN~^edV^pJs*ws6zyI>e{Ad{(NXyS z7?6-Mi~9e0`j6*BS?=h6l{xDCU@OyE(DoMezw%W2KQJjdK`vJMpM+r}FM}+w0?W+q zQ`%azSzNzb$-_AfpMN!F-ML6aG?aIsq^NZ+IP?OEs;?3Flq@4Id&uQOZ9?^N z^_torB1@I`o*3d1`92WWo03;|Sb?*VO?yygnS=PN>dT;y2Z8HK2QkIsL!sl04=-VN z<%7a8;QvT*buiSowCR#pPsegckY-ov~z!>8OWE=8F zXV6cd?I6ze+46zfNkn-wp8V@$@FV`_I zOd8P82rwh5!z5rMF!HKgUA^ZHXRKw1NaYS zvV*+ExWlnqSAQe`++^x3r{)shdh4w;(Q1&@e{KP-Tq8)waa5EGCi%gfrypBq2*I0} zHLrh29l-RA8cb6Tu*eusj+?en7niaY|L0aTK^xD z;wNh(E$aU_qW{A+(G@ML)&G*8>dcv{aT@0TGC?l$T!~^xu!5*Ob1(LCU^z@|Wj0St z*nrv9HGhV{29+fnspwEaYPn3{hbRAFON)if>lUQ@(q0p~7pos&!oWy=s@L?Z@P+*? zxYktz4CznyjL2;-{Ux$;HL*iwT0A=~7neGGs=D+lm3Qn|?sX{JWCjc`Nb4;AXI=#V zOHkt2@xSzEq*)-2VZ-U*jNNhp($s{Aw2ry>-+z$BMf37cbb@H50uo>N!WYVM2RwKK z8h;xwguF~SGUc1PiO3676a}_e+W{{*>Upu&wrjKS`C`xFq>-@4C9z+lwSX`!#6m*i@u9~QS0=r9)*!> zuKb&&|3tViglh|fuo%kAbuNf9gbE9d9Z33LZDs*?d07IfC2&grp*Nm73q<_RYhTZM z_Bl)R8K(Kv>UO}xbf?#)9eJM%;lh@!^nVN5b8`>zK4f$aUBJV#TQ{ZBK~!jmL0f#pKb!7~P%P{Rt@SgvLERQ4@c%VlLxh<~DD zRsYHAKMk7!Q8j@BU%hgdOIyo=0g^iu|5?i>bVwU=FxNE=rBI%w$K0G36X(jQn(h+a z8S3M_av+;Gt_5n`VUPhr8MzLk+G$0M60hJPID+QiGwNl?luF06#z&&3`|LwU2!zQmA z7?E^34*HKkhBW22WK1d#!PLr$^3Y0vTw)pjfhX`0IR?P>tbVf?1mI6He&+h?`}bx5 zlqGL-tvuKxG2&8fvG-h;YJX$NK%`cli z8;5CRhCJ&DQu#Elj3rN&W%2)#&#SlBi4!d!$vs2;_v{}#`ft*Bj&1Jx|2yuuBgC(6 z$hAfNKf$=y`XA3Rz!xkZ!Fs8TB-MHwbrEAUWJ@#SAfL-XTPjV+{eKmtwAf@ZPuWnf zm0$^xY>FT@nN@&dD57l$^iW-|u2I&3Q^WI1k7x{=ri^tc$5S9!5Sy%~Sf)R3|UtF&I$`;27FrouRZ* zEx868kjlarLIOBm>(H?cWcv)y8TQ?v+GpziV!v70@SYUM!G9IR8{>*#+B$J%&~n?F zpb|{lY`>Cchs}6xt{EQOxi--flXI_vO>=H1gMINpaPY>BwH5Oyc!rc3yAbSk$s;yb z^dD@;hV&nJHc8fILOBCI@zMY?tNs((-VBDT*jSxdFY*NgV*~!BCI$2UZ*~}D?n(vh z6{(XgmX^214S(eVKFrhRBm-(`Wo~>0#ltKD`T)(9)B}DjfS;142V?7!Uow8K+*hYO zH9{Mk$*jPn@-f&ShNmPS7ys|*EJJ_U%M&d*nK7r*tZfaB{u|p_(l+Y<_wU~y@}3f| ze87X9%UGA!o?&*~PLic8=uDm?%T%2JBZ~eL>i@8RLw~lVB`6?~24g72K~N5A3}pvy z^2!8Bw(RjpOo4bn?1n+#1+%VE-t&RQ9!hXIK!9Ob4a;zIK>u0#lC%B~_3IUM3FPLe z)LQ;RiS(lEYmu1+>2JLzf!+B(Io zp}8%c#eehhKNlCI}$lMbe~Pl-&Vg3r#LiUNU}63>_Lg@tFePh}?H! zi+u4NM{s_nEkq?cTFSteE|e2S9|<5&fTY~FB7dvMF8NJ=6kc#_0YqtQ=Haclu(CBl zB%*H6Cm7j?>ey4W20Lz?`pZDTu?b_9@VWzdCR##z#1Gu1cc~e--cveo!p)d9PPQ`U zX40g7k-y{*p$`nqcnr2K$0nA`qG~Zbp6}HspZ*USB^_fxbLdqwCD0J265kGJmO|)F}0}q;i zPhbGG`k%+5V>^%9{~tJTAgz|jW4P=8sejta09dl%Ff;Cx3xRr2cA}2{=iwi!g)Gcu z#+r>vU;kAUGX2(oMIdE(i3$2zT9YdvCb4iS&>M56&p;P(rQpz8WwKw~3Rip1@e39~ zcnysJ)2P$RD;!)}!ui#}5)l~eeZJ!%=(tdBKxzLFhzY9UIZNcU9-#RS{%?76wtwuo zzp374@GUuLRMLudclU`jLJE#SG7GO} zvWrz3y_7mpIMgI~TbH*}>{ek$=fyiaH6n zb<_1fgGxqKiSP1Odq<^Ouxm!_U<|l?BCak=Kx^+dn(OkeP+)y126{lGgh(%QSj){? z1CXZi8dOmbCuiUsngw}nfD4#;zO#sqeV+Tu1AyXJh|JhDdEGQ;tl9Q0h5r}DVs)>4 zdwlLaR`Sd0CpF#U%(?f(+JCYkQQvoEqiGZTe_YnSfB$|yc<^8VOw#y&_~lN%V6xL- z4>qR%*&H?cPp06TSGs?CA|b5$i{3G{(onxO<9xv7b49iIx!+ZDcji2~z%67)IvaQmrJZ4M2e2o|6 z*`!O`?!J4n%gabB6_D7ydv`fDN@bOU^0kyz@{6+KAca9L>^y+M06y$>eOsGG$O_qSz+l{%dEVi19BJI%Q@h&^M>P97WsN{BPg zIHUCv6D<`v^HNlx=KhV?w3fHdWA(fcUPrNv9kgTAK0zyX27mAZK^l(p;DH9PEo69X zx&CK77INX-b_Bx(u#+-RVR)QYGN_#CfmpD@7KxqHp;L?j9PW~=V^&32Ei?!cWFTM{ z$d^4e3_y2D4-gFZ`m9u@^99Kd8QA0vAp|e5!|&*BH~%jH+0z|Q z&WV>+uTN4|)(?bImmh+yKxhNxkw0I7^xW<^Wm>FUey;8OT5uglENX zqKgQUOn-Si=hi_eCu8Nc{IR`c4T#7_hM*0eA+oZSZZo_z{%)&Kh9%U^bg-=oD0cXZ zJRZm-1CBiqpvrgJDCa>t;Ccy+yPVrddQ(5jh~$*DhPj+R_`wgR_q^vlG|_UCrf2<_*0WZqc7Y`!+%q&lNtmafBlEPS3FSvWx@|jh*74T zoO96d14xROiIg@^)hU5SE^r}cZl_UF!!X?=K)UA zIL`W_#y@60_O%X_!6kbiO?~)V@}Fq`FRTpj+{ZN0(vcoBj{T7PF83RC!|tV`#>-~< z|9``W5A*Dgkca3M@Nu!6j908r+C*B127?v|Y@pVE)0UL>y^s1<`o2efYr6JV@BJHk z+tq)|%6z3TML?5R+pXgrwoe8ba>Zc2((NG1J8M?q)5kl~s~BMF8ojHM$onReC-IYd zN?W=7tMgb(L?l*U`;aPc$wSZ{tWEaRpnp*PQz#;k1X=X1%%#iJ>t)TDYSVHNBF~a- z8vY;i|DspuBY>CEB~_8;Z-WyaoQJBNmj@}*!R|=~E zZ3SaQ4e&-~BU8SV!((xVnXzkPLmPkyre1Z94$UYuK|NhZ3Ka%0GD^d3`>_v9e}9ly zj|GUr$w<0yT;@{x^TMGG zN@K;=&LHf@KCnKq;7I8YR>Yx2AT%X5oL} zWy`wfPTrzRnd`J93I#Y}(022Gw?J^h}+Jynp4&cI=7_o;8*> z(L^gjI5yzkCbIVzK?IDSx%zKxlp3SPuJuSO1}VU0WmNW(Ms&co3w2cZ(-!G}mR*6G zh4i1Y-5XFL_66%m2y8xAOS^r{nz#N$P;L-`WEtTmGbYJs!^}NVwhHW$T_NF_Clt}z zanJma!vMjf$H$f{Wq(L_P5KocXkQJTQ2%drvr`}Br-_z~oE1=(WOA?cAMZ16K3NJK zC;z`0`mfEdeD{*dA_CLghC(Zs(tpYr5IS$b#Y0)qHbFDlC@^BK;kec0p&ADLU(2F% zF2J(Fpgx6XB~6vG)Q}?$IV}t^iy+4mETOWYaS<5szxmH}R)4iM^^Y+$AQH0N(>#RE z+I@O>?$e$~mptGiy7LC={TpL5sUXkq5>ui6ChK6G31bjf0)-knY2zCogxY*dAs)w z+J}bG0)bw6Ye-eFLGFe0anO?3_%8y82)05g5wz z{0X;UStdH>E;owZ7USHJ0rIHvl6Nl;(B~KsKp*AF9kMOA`yZf)N}OB>MIOD+XyxaLe&pz{vk|7@d=#`II0RIoRiiZGBaeq!S)WEE68vb9@|3hB3`6Mr5AnOl| zZ)%9OVK(A~@Vbxeaqa&^Cze+JD;wTmvw2)bpbR}w4d5@G!(@=fDFDdjF=Z6K_;rVz zCgttZBdog^D24#VSo>=Cv>=gdAfku?>703sTxbALj&kl+5>(Wmdh(g;%9?5xdVU6J zIDe6AzUK_akWpqi4?+2HcKXI6J1M|l7t}xlyvb!S`5U3oKwCpT(Q?xMz21Dxy=~rn zHHaf-7`&Kwp8i+!rP94J2so{cRr(KOkU*|5r%gpBycjA|vUSr2_21#8>fD(ATij(E z7DW62=QIGj5dQOTy^Ox)hn|%F{^uXRK7Th%8qji1eDZrA1HY>OxozS%5P-4~w%8Z+ zDW!_(R=#6fA2a?v|P0B zU|?g2wez1taPRF{J+A(Lv-LmZ$#%9zVmL!Jo1_jrVuPPh*ONah=B|8cBTe`vsDA*n zV7y)e*yR@0&aXmc{t`cty`Y>m3JUg#+Q;#}Lt!CZpXm6~N`D0;4jw#MKtfg$aSFu=;6Po}!C*cFAwr@!1;tV` zDP-dW$}uQ!B6-q929xK!y|#pTayt}k7U(yWsR4f2UOdOki2ICVly)FL^($$d^R2-3!nZU5AYXO2A$OmPEdoS%qi_fMFWZKdY^dHJVHh&H8L;S1~ zO|%kZbTIvpo;)cKQj4|vXT~@8>JnWySsF*~$e{G!>O;kWLDggIu+o2z5L6&gqy_aK z6H)$S(SKNI8+tMaD&Mfr#!Ei`HqET2g0@Itq>_ka0w)AgR`a*mAD8>ix*Wy~#$|3?|^@kGl>BlCYbVsK?1J*jBOjf)*`1po&Je3wZ~2sR zu-L|GyVMiV0DqB6W1o@jX}sK*tF5YQswEpC8;JvKZO$;vI%f5_*7yms&pX~D5qP5sdZ8@rKy zdt==h<4KNnm7P1VM) zt-6^?m58O<;(v?8_L8ILHZSxI+L>ar$MnC~)jgXx(w>q}^xrEJHW~lNjVu3;@BUXb zkG}U&-$M7i+qs2R_DN-L40uIkYw`av`v2hhe`a?tA&ZMf^vY7OJSJK$TDeUvaU2^U zWYb*3;qbG{!`8Z^B3ow#%ApLsmD4d;D5oOvf#h3$n}1&!HPVxZ@`rMPVag41Atj215w=xnl-pp{+8ie$o4fCqUI??F-&Nq;P#*)QuhhZ9UOvnk*&{b ze^c1;&ZZw4fDl4ZLyNG`WJp(*tS)8h>c5viv=b!u>W`X(nQNk40sLGB3T>g*et|4C))pSx_|yByQiC(5~F=A(TNU8J#tFa>a3^# zMC9r}w8P@g6d=Vi<~NY(V@D3f8|rFIK<7AM8^b2y|GVx!J#AdM2%WlXCq46rzc2j` z?Wrp_>?TKG!<7Gr{-OnJq20%4%lyAwAVb#gK%O3!3Bb3=GSTwUN`Cg!8%)7~crh#s zuz&0hXy6?@P{NfO!w62G@Ff7skjCsdN03e0rTE}Akdr)z1G1L3<>+#{gxB+-awORZ zVRSb@I<{Y&fU48Tg7?SD3Q5|*+k0+hk>t?CM`{~8B=;f&9SBl@9We1*eS6l&yQ;8oi@bV@m2 zJ8&4mYe3uHxjzN;A|P|d3;L&GkA)T3oqzzA$lWBgS%z)uVcB;9?sp@L%`dzSh<`6& zm6y!_dpvvoe4^!`U;o87SGZo}>KPntr*)hJ{vY@?1|0L7^QNwxRtPIHynmGtjTa0x zcx0|E1hgkQvGmv{oi2xs{#(5*89R2(=rh}Ewt%r0$bTMKR)9c29%(&Ox`K5rs{dG@ zk-zN|(i7GAoA=@w+E0#g*`WTH<=gq<+TKH1kx3aElBj`%7Vw0I)v_XIqyI%j=N@GJ zF9YN&dq{4r=)bXfD8C5N+f7 z?YU8kWiGz(9;K4uZj`x$!plJinniXO|BJm9d1Y+i_}Oy*54vIdoM`k_C`FjWej_1mkUK{r|%HPt~S^js&Nk(D|jo zzR|dIDYy+1D1W~a2e0CS%$rh{{)j)U^*Y)DE}Nj6D=9x?HX~IjN=LI3;gzYxZooIN%ags)#`s|SS5MP({K;) zxcYDHr+?+$Iam4*WlMjU`o#zY?qlUfZO~Sx4IA@uTJ3dsoz^~ebKrxA37ttu0f=g8 zNMab-bPwOV$L-Sf^5~L=4IPq({yTJ-w}0|xxx^j$)qRVKx?oa@1BVjR2#0V3BJ{C!fFJ%lw`X ze}Alp5xVp@AN@3a{Ig$NI{be;{XY?n=@>7d?-QM1+DI{ z02v#w$cM<;g`L?0FAaEeK#!`2+lhs%m|#@c)K{DrI!9w1N}$5ZFUBLl3Sq2Q@>6Z6 zjSgeEV6NLfQUICF?^eg2FOL7x@2V3b4~H3-onL?_xH zI?)n@(fjCS=6;iReee7Gch}sSrp#yHaQzVpnf)bI;z%CKD0l4}E9*>ucuJV)S6Wxc8(XeJMMK zt+g+xJf1q%%7vRST5=33qN5c`WN?Ll#IhfnuF7pjD^U0vGtXCHiXsSVf%E~ns(9*R zmQj+!>`$vr@n63UkP7Z<%ZYy-xjjP~nmn5J()?HStY+T_icLQnz?r%}yuvxWZnMet z7{i>imi}H**Vc~Y-V^$)Dk7JBpA@$ZjR|Gmh z`qc3p^gdncR+->4(M*?i?+$x&ibZUmWAzh6^P#Mmj5$%s{EItc^{Ob(+Ke=OY8tyT zHJV7wh9hxWdmep$_^tcg2~`NnDn7Xxy1^Mk(r(5p9UyDg!+1o~>=$K%tA&XJPyS8s z7YAl?C-o$1McNBaU{CA|^go|y+IsGu%G*$`L^vBv(v^#3WN4Xc(T!e3HcuU$;EQ-W zi|cov26yn826kSQo_>%gfTxhJj^xoo=-pxiJ!%@&FMVI@C49DT`Qh$FD%JHjP`Lq} zeyR9CYcGRu74fvQakkC#a8eJt1Zr{dS+A1ZCJeMsIMViEQLW|&Hc`qBhk0Z;ZrY2& zX`T`=rSc1DTbC0m#(I$HXwZL`$@ipid?&|7$kf-(y=L{h7Q6i3HWbzf<-pfWYwaA0 zVBDS-I(>db?E5l;kgOnNB2*=|&fD=9i0co;`UvFEX7X!|vIL5nx_v|r(wTEye3~y7 z=75HL6DS!zKIyRAJ6oKs)qKjJjPqjOWwO74BYX7MB=?#{3h^ROw>Kdgd<)G?{}Hnk ztx&NHrd!{lU8#t;&N(aecs$J_=AIjC1sl=(wa+5Ix}s*3=5XvK$gL}sNP7E%a^@=_ zrq58nm5}^{w26W!B`U}D5fv$ws7b8*6#j+o!3&4Es378xvLdDTLd6JdBYK#Z&!|^O zsA-?zNtNWfMH@Z*lUVK=`j@mDeDMwqVrR-L7?L;T{0$`uNxnbt5FX=xrNsEG(^Bgw zq8tDAT(*y`xetLg!S9Ob*x%ZB&BbcmfK39~VnMn4&Mk*VR72%OZ1R7KDR^--1m8!E zo_QQROi5+DRL^EgFd5|AJGuG{OJXLY@x^hPdt2|6A52u|RHl{i^`xt;l}?DdZ7aPo z(|(HF+oR=*(^jSPyFsaxNX|K5LcF2GrT9i$NQn?Zx=Hmdch~gX^c4;nPd8K<2C$H2 zvsL)4?O8<&2I#kv&7||<%Tac(e(h;&hqEqODLF12HoCv5byWya)On^#5f%LyLRDuJ zMtBEZ7A!c2WYcNxJ_~P)CQn9Tq0uJd%Q|_!yA?vx)g9&Y&j_DL9E@YTz2G>JUOn5% zpleicU1xwLDd=&^>3BDBw35RX2&`nH)YX+Eh?Q35}0;>cGvEf}E%0hf??U~BWJLpLPiNV&QUWMmb^;+$B$ z1uCot+(Kh%qh5sl#jr~-I|Ze^rk4sU94}t7<+-nD7@`Q(aYNb zI7RV}>WFI!SyT~iMDuU5J0dfo^JCg8B4_qo{iQ($v~1d=%YQ?=m0ThiI%n1#1)lJ5 zbT#w#Jq#75nIFTkEBlOyLEV2@3D;9sb+mNyjru5@Aon>oBV#uJ1>Jgs+m~9)eBY!0 zSDEMRwMNmGpxx(23=&&F#0k$%4B8c0Uzb|_^$|#jIN26$7@2<=aXi65;PjJddE$^j zZ{qLd&q(a(Ku1*0k@NM>FZ;jqFag1XoXB^`?<{KD_f^S+AqU1Sc4396tP|Uf&#h_v zs#MOUqU*q6*f>exY?+R0?>uF<#2Ed{|Suoh2z&u-D~2Et$P-wUSkj~^>`$Wn-d$M8tg%${o& zUOA7u126|Zkx8dcaDxT~Ry$ zQ_K{=d+*UllKJg$yj>je(-&ODh_~lI+@IGq`?cz{(YY@4vtO&hEGy@C7V7H5EpfqbtGcwKI(iQ2P~)&5o?iM zuEwULVNF+%_O?dYnC-P;6?3~4nm=*)i{2nsz^g2H?<2|P0tcr5=Qe#bmj^9|vB{Ti z@QwX<;K3@$|Bv+y?ZH}_xX8U(h5~Vej)t~fi7fdzY?=f2Q*lH_b+|mlAJa0FQBY*_ ze|;EK1fv-8? z@#)ndMAhO79ty;kL?O1vZ^n{bdFkCi3#sd~y`s_3eQ(L}?Fr43CDuqq^f`c%ooOpo zqdbI3j)twwp5U-Jp&QNJCBlij67xh^WJc1Hpwxd$^ZdjFwCr*loqvd_;O2R0_wt9b zx$28uO;fP;ec$d|+4CD*RaTdTfII5_ek*V9pQwD1V8{~VU5zju10nT3^(YKbguR2j zUav*R4HOyjk5POSQ*UBG-7!6Zn*(0sQ|vi%mOr&=xKsf1x;?>{xEH?slMTa#Gsmb{ z3d1P2>`x97Yoz;;NRxB*7U{$CT#V*rB3mLSC2J?hb)vI}{c^(CD1OT%CGv+mgi|Ep zIV;N|VZ94G@!gb1BXPz(`Lsa@C}#}y`4e?ithW-QQl(-UVfiB zL~2SbMtJ90OoK6a*JkwDc*vY3n)q^zs`-kuI$lY>uDSWeDd!Fz+K_RRU{l%hE7ya+ z`#+5bGBp0QGf3yiW~>zm4mzwK%%{a>diC+<|iHVlz7aus3f zW7oWfwVB_@%iTo^68JnFonjW+1JZ1ilaXpxTPbu5R<%Eoma2`@u7y z$rA9|Vo8Abv64rK*mZ?<`}hquiFs6UmY(?iv6?K5s=&*v`!A!jYO*ndq4guTyqAf% zoE0GiDx@NWdqP=0m+8$~i}5I=V|O=U^{)Xr6(gbaZ&axXT@kCFI8X%C1&wotn-2a< zUpH93KuWndQGzZ>s#Fb}3R*m|ULrqa-kbp$49|_-yZCz3)#!wjtu8D7Y==yM(=$Nf z{$$3yM`{mI7c*LGOn8P1Fa_6sM`)6e5m)Oc{d~vyODwgc)?LOx@KC~@qQ4ocJCnJJ zhP5B{kyk^(My!1q9b~k5B_aI`^lCT1qHaL6ByGH2Sl?0(uZFEB7lE^y55!MQ0RP^| z`p6wJa?<|clKrv0 z*r4O?hi!^w7$Q)7CtRQW@zGZKw)C#Z{yprQnj)|pl+EGg>Y6BAECBV!w4JLt86cH`ac!Mt;jV|TFW*STgpXxIo!M5{y zLJsfp*WKiENbNbJ0gRx~pi$Ln=+hMSB#08I{Ba9A*-fskG2a#}Z56at;ux_WPVfdV zadj3-OQ+Byy8lJ&z!tz7=m^0d2y)NoP9W8&^8+c9Z>$&d#**xGQjI0?}ohkA+0!T-U!Wi$d){V5M3?H5^jy^f4H=omFQ?pN4HS0j8>TcFg z8Wa_=d0^+3^sgZNrI-cbB?@$-V+q=eIzI<*yOMu=pQw}p0eq~Tabx+Y`XWUvAyO}* znexyu?_OesXkFEdr;cu7T^_u?htB8zv4{5&~4pjd?!{v{h2UNbfeAp zXKj5Xh5HlGyJf8J0XkDyUA8OQ_YtkEAt=PToj}~Z;I7s&y9|!|rN%10U@fkan|dYg zA7T9hh0VXXfiDg!E59r}^Z`cefC6?zil{!tWBgRPzVeJ=rExB!iQa=*Rpa0CrjQ!{hvWE zcBwbKh{!djH3}Am;MM4YJQX1sA9suX{XoZoExvOXhC#=w^S;Z+mmrqL_pBEjI$bRQ zljxlHyjkDgDO{gU`ujY`lDa}J@E*%yFzSn?=Ph|H&^@#)58Da>AO5(SfKxRGC{%RR zqj~^x^-G*nAICi!O~@ekp#JIN4rZjWk042R0Xh|zFaWmr>ep-3r{czH!@--4A~h5~ z$079OgsF`AP2WB0k5|j>Og=^g?y-0pYb``tZqnmx^B3lvw#HIK7=<;k!C-W(?W-$R>@#6D#7r)tv@Mb z?IO*@K&LAP>%UearaVqIUJU+NWqk~`6&FndUn?y-Kc<)H3Co=Zpo=q>@jf7*<=FOH z9|)NEv#DF%O_b~Tc@~sHcffvm9*BisvGOUX;b@;$BnB`)U81O8lE@*=*$4bC)Ou;PcRkpLKP0{)F@sKrpLE__c zKa|!YAw{7l)Lzi(I=BCdWEXx3KBx_&@<@6)05*^0nY4KiUjg`l}>~zB}js z5YdnNHvM5$%x0c2lBhK*MPX6+gs>(1Xld5mf)nBU8x67tm!iWmfW$Kn3M>$sX%3p3 zuAsj8R9<0K2sFsImEBc9c~#tRqmN~hA+$WnZ`E@R$uJR<+JSuCt~tk-_2Wq5kK z00SXdU9-18{z+J7D`vN&D{zzb2_WQ$^T1v^ z8jts;grove)q8Q7Vj-{dd~Uru`Hl4E$9K*TBAQ1inOgtiqR&;1b^94#ofR9hvYm$& z5J)?AE?YHAvX|Ru6&oL%C=!tzn>z zAt$yMR-bEdD{j^OOhcBvAF|%laXhLFA5pq?3(4iB9H9=~RNtD6Et`_}-!G0<+6 ze7f8f>4T*ye7f(omEoa0-aLPXHLFyJ3&zE{d-n<}`q?A> z2k9^m4`$;(@^nT*dy(Qgulfgq2G2)wpnAI50=;@W<3-L%VPbhfSY+VQ${q2r!1;M?hx z*Gd1et^E$l)NfXbOr)A4rEBYeC!5`Mf+M(^+vZ@4IS{+01^w>ev=N;5PB|{HttSLG zj;_8x1yf)9b~gdTp_##s$UAw}^K`i~^Tue-T4{Z&2j!q58eZMgKjL2p z#NFRkHLYjW4(YQWU_Vmxj9Zfo>F6b+@x|1|3@rGsh>9re?g=u4Z0p}lnLq<^_)p+^=2ot3QaCTuN&$w?`8|Vj+c)Ih zo-|#WQmi?1_r5PDGQ3NuYK_Me)%8=WM}*QZ^M`U>Ix@SJhJ5t-;8{9vJG7wl&Y^@M zKhtND$lv(wO|H~eV$tA0xlk$ppXSV!yE5fb`c|>sFl@arB$H2@gS$o# zJ{<$c8n<8=kutDV3;>s401B+fz5DtSd(rtAx7LY`YtZS}yV0-nQu?)R{zw@ z@zP?zwN-e=i6z|=lToSLTla*Ewaj$skn6lH-Zeqg50``!J>Lv5R$utM0~vmAHZgm zPb3NN@MSp{#x_9r>w*^)v=T<(ZLUQ0QU+5ptIJ3osiGgl95gZAIWr<&|m)y_@r4I`R$Cx*p$lm5Sw-^(hM)EbkE~{v_Fs~X$d^pi> zdGyM3_vHerD`jDr`sPo(Uqs~T%))2n{FnyKB@b|+Q7Hc_812q4y`GiXwuwjY*?&@A zI@-HJ$L=I&zcGI_1*UB{V2k2PVS_991Bb;Y07#t>>`PFZ2m}3ZK<1WTeBG^Y|Lz+19r%4MN+4aWZrG zpIftvFL6Nwto^zq*0cO=2m+cQ38H`S$Jh^}AJEV<)qBZyR`kdBq1HT2fO&jh9Twk< z;B!y<82OnX-IkV{a*2^3I(A&dF*313v|M0j_XF(Cc%uU8gUZ?)f2A#oEa#?8oy-=$ zzy~Kw?DkTWF6k$n_pw$+ylBGKoO)3&{kQyX#P!}Nu-!Hh1STB4Yv(lhp`V~V*tn7$ z_q@~Z^1yIhU^0zZC2Il@`rs8HL_tqm%p54Beb~tof6Qo|O$*QCY2 z$aahaDb#;=_|iAr=rykrEy{ti&5t?k5moi5JS=lvz^F7QyC1>T`S7-4=udQ(M-mlzvCONfXLerxh46Fp03oY9+g--eJ!YCmPG< z&&RnRNRV$aXH^s1$uik@MKSmn_DW6ZERRbB!uZ89fYj$(%0Puh9F`8HZSe&F6Gz}~ zSIVi4I@f*E;P5fnz;=uTA2C!oMNyk`nB)h@x{zt>VOJizg~V+u6+&b0@8?s3mAD{?&#pp$rj zZy?!Br@$orSy=0JwxlC2kC_4(nv5|^<3^OzD?;8d>l+=@K5Ld|F6G0Zrd^B ztQRf@{VNo|8?JduV6F1H>4Q#Ztx$!5S32`p;W1V24M)B)gpYz`dE_A@z1=fCO zHh1OIE(mW$Io$!V68BE3iB`&VML*sh{GjQ#K;G#j9~N&6!M`W8S=@`A7j59mI0^8? zm0aJ6O6k*pi~5Op(A`dPW3&+k*4y|{&94OjcPY}$i*I>Mm-opa&&89H|UAoRE3 z_t_X;5T*lCsy7NI#{7FY$L9)?y#{7~=s|*8OgA7LgI3DI_M89rMx=ly%g`$H1>=dC zk|_5b9G>6hqqzy*@sE7MKLs(LV+KI~O=m11#-I1! zv-8*ZJ+r&`sg*_FmZxz)yjmmh&r?grC69_O354A{-y-=2{bC6xekNpAtCGtAt8F!n z3t_++B$?V+S6?KFYE$47F(5;fn{)=^SIO7a;`ToK1=u>4B)P?L|Ar8gJQuz1dz5os zIpGA^s0s1MgYLEt5Djye0>SpWC7#zB#&J?`ot<< zxCRx$FfW>!fvM#mrQ|WXv4g)H1N*Wx=uriPc5j0*mOrre;TF3CmD7bpe6u)PZIaUEFvh|$YI<#1pR){ZxegB%H6iD+f7*-K9u zeA-eQ_TYdCvf$Th)yfqVP8#lCPChGt`uI%zuhudJUE(Lo2@&gD85h+z07S@kjmqYM zQ?-@8;*+j(g;3`{I_7-Wok$&6(9F}XUv;196%(Fm-^5TQEKrBa4=ocX00FgsW zt3j?Hq39(C&?Z0+104UuPF4TA=H#0>!EWbl4TL6?Z)o7ZJwLB5C(rZimb!0IHbn$`zJc>nf{%@T9c(++gwMHA zns1^y6V^!_w#nj)X=#O(wG1~0_ns;iQd_08waTa_2Sd;2vTFjpZl%a~h09I7E#du| zD|qyi=${p%|5BT~?&%Wq0)H-sj=}%QiwVH$E@u%4G)f+1rC5FQK!No8wf`Ap{l7P$ zT>|FK?ksAay_>}sBYszamPBX*t{JY`J# z=4+8(Izgl2i@f(V@HE($X4ooqzU8lQ^8UbI@y*}-I2npHY<&UR&s&|a{kITcEr{kM zwcne7X(apR1X}T!d==K|BU769ZiEoJ5S%1;SA9Ao5sT)o6>=oRDp_!!tgN?5W3XBge>CdDo~%68%fJZ;HhNmMBvKni=jxbO)ey7&S6{zDS}V=LE2Z02hD+7+AU}Tl}t80qY_1 z-+%q3sAl;LWu~%#UeM?qOrtgN{ij zd&nL=0JJLbcpnUuSupPKJGm`HHm{~M`MWK|x_hi;bsp5wPX5~NXvzpPc!}=kR@wr1 zXFgqlmPW7<7}$UO?q9%b{Wn~8Nc<%{R6Y>dFNW$Mogey2%xL6U!1hXN$6FDETK@8Pf=5F=hMj8R(qXcHz1e$-Jr#9x-yucH%gc zTK(oCAqyiH(8mrx50J%vnE+F5eQvN>KR;LuUIm!kbcplT{IErVS_l95cS`@u%(PeZ zy2_b>lN6oxVf%O5_vzVNJwj0e)A-15N>a=E19~eVk{1Nl1j{ zxCV0g!>1Y`;lNX!uTbe3EzM_c7XCaF<1L@U-iw#@1r3QLoyTUtP`j^nPdR?Y3X2BCgYbkC@rnOsI#=7u9C?h1A~Qd!wpV6pJw)+nGR-+DK3}Ol zBDD^i`(0T)K(M$T|Mr?#+s~xxiOXcArGYGPpkS7qWUGmzY+f+`+8a)BN)nEZppar4 zF*vT)@4rJ*l!F!gp(HqKa*Y))MXOUyK11vI{+u=TwtmvzcF7TPo#gU3_IW+-nFv!5 zSPg%fhPy5D$V;}GLN+8)$R0(|tvvpdNUzg>VDmw6QV(2c8el^ij_QNyYeYq)%|a1k#9zN{PBRFov6TkKb(DiKKRjMV?SIK zmyP2CO+RJlW769vCZTE5_z|DO2;x6sMUM>qG-Y$bP|$D0P$B4()>fr-1#fJ@fPPXO zO{?D?<)+9nTYrB007iTPC_KH=?Jv~*ny`zaYDuoH%s3H2;e;NEbfrzWVi(LY>hWU^mcnpD5=$L_`q!5m&#ikcm0M zq~l5HeD8>fB=Ky3uOuYTt$8McuQp?isv0k*hSRN`gA^K}6L@(VKw?WC#=CA1ffDf@ zl?~#1CID|NOt$EcN`lcH0**aerkDX_cz%`_Me(7i( zpxzV<7znzTV2Ii1_=_+eDgYmPbWSf9>)j(%V2Op{euI-5y8qkZ1OF>1cnuDCapxwxp#D2P+vkKW2 zo4Th?^VeC`S(N8?4YhBkPA9@F*E!ai{1ko{{;>ltd3CTkTMVvV0dANMkt-y~PNrhE z&(znc(I1XYA*4lf1J^(L{C&qbaa61;(w6q`P6&?(bGFZX)yy@5qXytIuIXfyNA#-* zLoLh9!xYtrb5@3dvEFIAwlDt;&drX!%Tq2NmH( zMPm40!5cA797i53`5hR)HNmh0NYKj7oxrc%Kb`>iR~RNDHE)0o zpP=8X9GMuNwzF^5CI8wt_38AH)E%e?9curWHEmd9bG?lj>tOdQbke~E)zxgjlBR_| zBoOO#S|SoEU=?~gebU3Pl+uu87rKPmTUspcZx1`p29|QJut{P=ToBa^uKs{jD?aZRRC9 zcVKpn#vijB+nE}*{uo%V&F&RTA!AXW#9`A!aD%Am#*KOGH#8bCV{J};5&;r?{|F=? zW>qic(WY0GMbvGi919H}>dpoV$-RuUv{XWvQh4<7lK2kzb_qFGPqW^6Z5vR19Kd74!o77% z94EVPz&eu@8p<-jd%9wFdLba{ELG#(CB8#Svv6kLqDP01h@|TlCnXJ9k)*Dareo2f zPS-1o7TYSA#_|jAoRr05bwZ_e!8NnpTe)wqMhyUA0$K9 z)qssUUc$bei~MbVKrTI|!wIY2Q;P-t3~&Zq2|Oc&D~NYtH%$2f-K>i$z#%b^%r|-@ z-EPOd!8*KQB*+Mg+9)Jd`)P0-gq^o+H3HX-tV+iyjl4S3o_MUOun&j8r{2{MQS|uY zJpQe(uX)Z)^#IH<9B%C$+pjpM5Z9IY{XQ?ISLuBDLQ55_j{f1LCjFL+Z435%k3S0+$&=K> zECUQ!xquDp8e)uCN5XmHuZQDD1!b|;SI;&(kcx9BO9eWhizUc-1kO@?R=u5gcRQe_ zLd`f!)*1oEzo)3F>p}!hT!XO&3i{PiTue=rSA;5o z&QHUjEByqMd+Y@NJXebT9K!gRSIpZezWR;$w`6XVvIIKACt`Ba4u<8&B zU`M?@Hs}Pafb#2v_!Jead}DNlW%Y++`zo8@v7*p<#&I`rTRqZNW2}PqNxs^CspauJ z{~wCel<{{ztZ&Qc{D;mnNfx`RC)1R~`e1N9u5Cuj4s)TQ-2VCv{Q5UPKqzFV)G}y0 z9%4^#%GM(;5_W`jeft|(E!{H^Lc!L$Oem7CrF=CmuuQv?xaI&GxfiK-hJA43)3LRU zwkQwQ;;!R@Ovm!!tw_qVbTZN!jWDt5;^AvAEef20SIOVWcr#*ALyxh=*u2^{t^swK zdGtX>W@|v!B)v8w|4sssMk`vFr;#vCK4Pg@vUzBD@WI&K1jg98uxZk|%%$DU3QM;c``WCcDGRUpBGSK8TD&($Na1F*=~0v)!C^Zp z$`uj90v^oydV>Hf>PGovZM?k)mL%Yio|%eGT0Hpzt<>>ok090yn|m%a_ylToaX+eF z&uS~ZcQ{qMlT)UZCq}|mAzS$S$P({%ZNe^H?RcnYtEs6S5VL!0nI_J6Xhz%4P-Ade z>2_N~?^D(~FYIx{)r-9cH2Sj@dhYiV5!f2qah&E!Jp@!q%Q9Po5-EyaJPAN7~btuUmv!8_EK&2q@eA6 zhCbtFFdbtV#9h399IXVQuK zA&gy@YOI%^(@K&rEJxDWcPM~PAn*MN3m0jp8qxvB-p^5sR|J|=hhzx!+wSFGUSo++ zsRj}ilmF~^h==m*!A!iI`x!x5v}^^tra;Er>3~JdjNV`gjdZhKAX$HycR%CWm(J8LCez%;HT3O9qb?2ag_7G8czy_ViVr@U0nSRC z7Uci2_4NK7Q`(*pLe-2tOW)7cZeZ!8M>9lscZ)gsw`90&B$pJj7#(7=A)2zQuijzV zFI!uuq&d4DZ`TLDJ%uCb10g*#`g~V?1sxq%P>q}3kIk?b@IgMAcOeBzTgrDif8jF@ znY|V3G+=LD851<}@6XD$6#9{g9>_b~PHLjbDs^G1@yyI(ZNf9a`$~z8|JcoK5w^or ztCrtIA@3D~`CxMX%F$wBSaLLy;19>-kezaPM=nkaZv6AKt*5}1>B+Z+v#~<@W6V+Z zQlgIcsm(p2J1RIVMS(NHmq-3a9IWNKsQuX{S8mY5vDVyJ`i1GK>D{yiT^go)3fhhA zeQy#~ejb4taFbRUFFw`!n{69$shNR_zR*PZV=ajIKm0q2?wGUF@*ks^ zA78>08FwErc>YLGB@0aCZm+V%zZH+%F|sV-Vl`i>xOFrgRUNwLdJ>IIv$rhq?jKF& z*0R@iIlS-VyFm>;s-!+vyc~cSbhHi2yieaXRlue_4-h!QfV_*z<=DpgMIdzYqe{6> z$ZC^LBrZX@2Bu|_D!}>Tg%U0jDcP0MPgvo$p0A+S>WSLLbN(`Rd6(72%)Iq~Qu zD!qDwx6Mf|FZC95o^#hcT)f*?J6U_)#SAaH^4LkS5x|E}QD|!QpLo^hne8XxM{k}x zsm97vu@yhsyj_jay_%o#XgsA4rDZm%O2#j{$kKF%13nerHOzko6n2(ntlo4H>Idq& zMU2{dKh0v}g-mCBb4O5LKi5C}Yh7|jpxVLnHGI`+=um7XGKJFJJcaz``{yVeaU`l? zwbj%+X#kX;8C#cHWnM^K7$Z=Q>Eo=^^I35Ta$J>3)jL@_`6Qh_bL;I&J0;4O)Y6kC zl0YPM3((c=x@*slb&At{);{O}uB}hw-?nMOJ|?1c zZQjh=0wsHt$&z%&9?@P8EY7WMLl;0#hzvS+<~WZt04H&r*#qrHp=o=|bUY%9jcZmD z`s(2BnF;bQ;^(K~l8(bgF2JKTt2P|Ufa_mQ3`mT*<7vN5bZS_0M?2mg$qJk%yejLT z1YF4n$9E)d=XdUuS=?h?ul^qRqkTwYaaPp+yTkCgZY%KTFH?ji=u)vc*1@%v}^mdQ^>W!HiHpGK4fn_xL)x!=R3B=1am8SGj zQp^KBYxDDmcl*zzK6D!o%g?Q0)ivMscoxcRWz5`L8N}1A8z`~bqM2OjQOI}?bcF}( zhjQEf%m4T{YxO9IG&n{BN4$;YP+dE9nQs|SVsJ?=^_-ED76L~JP71t786vNHY&9sJ z^!T(i_Kc^xwF}rFW4iKZO>2d)S@%rQUaW+;F_R|l8glZHJmCC@-7(W z7SjBB$D2K*ss@*T>}AN~f;?cNvpVQ`n(AXwoX7f1X3FU=IpCF8y&(a*pCQ~bbxk4U zk!04F_0)^nrJ>83+v8gY&0&6RwN5`~iNXfYjSBA+He3g+&PwnZ#{NJ zKdypY?#wwg0U*#QK=K1U;NQ~r1E8qO}!IH(Mh(-o`hezz^ zBRNjEOcy_Jm`ZDK0Ae1<@CtTh&`siu;Y*#bjlB)s$KVuE<x$-i|J~6-eOla zV&-2vGWp=C#+mpsfn?PL{pi>|4f&9wCDnd>=Yt2WxyJq@Ai%%}HFkUe06`f1DE=W4 z%ulDyUN~AXSFqmRspSQaUR96-oMCRjK?J~+H;zU>blf#@M6N1*d9JZeS$tX*98TZh zSfG3xe_!Dp&nu}&2PsIkxN@d+#A-e~fN=RX=F*(nzGYzTta`V=+Zw}d(ebKuX2!tk z4}VO9rB)aaEb%86=Vbc#S$5rbo@h!D>3hZo+h*=~97tl5N`twhR@&|D4^!R0cPXJ= zoyO9ZBCuNdQuJg-oSz%7FC>MbW;A1P_NdQ+&oy2*NY?E4uaOd3i#mZTaJN(`Z1auNl-+Te?eb9FlAG34O5yn9sNQvc@9M>y?QTxY8#3|M z?Wfg`v7fV2d1c1T$ugZbl1Gf`Rv@r#0)OmiucGlx+f2R*7@g5w@KSE6c%8q*0&*S$ zz$kCWyLSIG#;t0naCk@1!BX;Mhr?CS&$Eor++U8slFp0S-!)jJZSz~VO*?%>^=7P( zV?chMX$Ud3M^d|feW2u*WHZ`0x+@tY8wXy*Bh+va!d_5R^gwRiLW3bCm`qd8r)~@_ zvQUtBOXE4t?h5RWkCKS;O-3ovW@oM(F!!0R8sXWat10wSE5g6!^mcz-FpC`8gekH^4&J>ivRxN?rSgR_p2Oq255ze88iNf zo8+}0p3{{I2-NCBkBA?iIK=7h4M~_O%|Z;RRCyZ~ZrSJZj8Y`bhrRBrLTbI)ng-~^ zX}4~Rc4^IYaRfuzt||L?>bj&2PG?iiofGvd6Hx0j>4rK@^%H zTe>!du2oHZCH*rw_BA|2v@3Bj-+|BEM6CajOodGKcM?{G#LQrZJ1(UKn2!FjFmr)T zb_wcrHqTjwk3cMBV6(*naoB^p-zX zclJPVbP}$}l;LRRmShkASoS8H=5#7ghB$Q+6n%PNQd#7qsUZh^N9}b(Dg`r8iwMh{9Lwwu`x4u7B`WiI~UAS#xze<=Is_j#(MyDc+1F(}SkW?uN>F%ygcY~xu zmr~N*E!|y`Lk-=`d_3oz=Uv}FFl)`;Yv1|1t~>TYUh(GeFtW;^ZBTJB-l{Jf^<7cj zXRKRT&=O`~@FV*zSQjR_DgS^Cg~GC-C)oay;sJg#u#0NwK1Zy5nC&90<%aw27RC#9 zOB_v=im3lc8}wH4sZKIGC0)WlF0i%JpfZ>krFG*Of+)L z>o0EI5=j1_zo-?u&Hj2>@~qW)`|a^!uG;gW=3HoEt1S}pn|#$_ty$X3{?hs7?~H`6 zw2k}3WNPhg=wK5AU+3EVMugKuH z`y}C$0_@zS8+O{%18`BSAFT(ZWQ;j$-~D@cLBy_iEs;_`aUwBfotVX%PNecj>Qe;r zsoS~2Q|sQOi@oJJ6*aXoPe9AWW4wi9q*XHrDUOX({0-gP`+R2}o^Wp1uUSFvibyNS z<@APZ^^e&(XReBArI_cH=SI27m-R`T=VLa{giL+Kr5SlCI)Lo>$;vUCcBRd%iDBy^ z-=D8aIdjc(RU=g}e_Ld0vB4jVEqo&>&#yQ_0n_*k?<+HdVm!*U~FUk85$&B3MKS&lut`jpvu}CaMgv4Nx;t#95 zCx28@6$x-l8UfXGXsyTeYH@YZ@zMn0w@ zoXWXwYQ$4b8GM3k>N;#Oz6xzGA(~<~E?W?My(_1xs;1M3P+?QE?U{RaDkZev0jE%y zqA`(|5`~3T9g~B^F7+>3Q?nNAG$i@kD~5>O2WBl0X=v=k|IfI>9V__){n<&uq4_{! zy#5=|72wYjuJrW4&BsTJosNbiFytcOiw_Tnc9H$8ffc07zwZ#vNd^YND%w>k{yyphs|=noo+9hoC!!^Do>zX4nd1UfyqJ8&!50jvL`Z%CEx7g$zEwp&>P-7S`oZYU8#-d z#3Po|PjVwcSz;@9RT+rgTt2Xe0((=;M6?eV-VU>({$nEe8}z{Xcu^p^ywuk z_de=5{cQFq;x$AY<#}%U3+BQSCw!Hpf{I_Vfh))TI{KMq{1F9JeeM%o1Zup%B%l!} zsz-}dTI{-3?n>3BDr!#BlweRs;0w591d;<(<&LN?n#e$>8Og&tb{OhX$S}}t2AqXL-c8PJ5io9<2{YOaHDCWF=EuI0^-L^#G z;PCLUeaQEF(SOu`=in$jtS`ECctfc7Z2lD<()6*Zve_~Ul37}H?}!tjUDjQT@c&zW*H{GG8y#?2__SIc5+pk|t-RD$dP_XfO;i=UrL z0+o14U7Z&EP^Go$0>iWyeO6T&*lM!WPSLz4gq_$x_~?di%`+(~JkO?xmIh8t@40XwI*Fn(8=rIZIRGH)#}w-Wt*l^w6R zk1;ObFd|_1N@t9LJ-N~qgpr6(DR0{-@Xj8`beF5MVI0GVJA&4tNz zL}5=#Aq5|JvsbjyZTlv|zZEYKvtUqzs3ImU>pmkFkq>d%S_X8r*&eG`N^nI>HUZ5~ zTuNi!4}wJgQ3uxizBah_=l#@eUu|-9b~#f2dZM@%g39nT^{}eNFe;HI>448XnKt74 zCaMy0B?n+W?Uh|=trCey5Ft$_YGbvzAAdzy5M#e=3h4a>hC_H>vSaC9}^ZmsQNqG6JwhKwbn~5V}KO+a034FH&wrX7s+?z=0@=o z;=8lySGyd^fB*HcL_)9QC?`up0(8V~9^M0|_c|W-ej?Bafz3GZg&rj0bdu$VXY7c)N^^#aa2<-C{kSi`6@}$SHCgrfaSmPb3qaqF8q^u0omHUYY=%X z2;V;bYPVGboUFcVA4!(9e!_GHKi$_nJYd!)YHpC5avBGZL|Eg(05dn}nGR=In$;Is z#CV!8fAjHjN1>WVo-%wwQ;#0ezx&1&o!X3Uio-@~H61T9Z4#2dmA72H5p#k);LWZg>5d45CW-MdKsBnA{Wc498GR=U();y+QwC1EBS zLnuC>+am!*JAmFmn%hF|KedtVD7ZK=!RdPyZ31-Nv#s0sSlKb%4L!ot< zhgZSbnCjUhL{j7G!xSK-exSUQkYn&plrz`{srQ+$iqxB<&v*+Wm6BAq6eECUg=yLq zvFSzgZ}^@uG0Zt!WsjRKx$a@eRG`wTw}bm5X!|I0(dm~0>%j6Sfv2vykO6jOXK4;3 z4vJ^gS~`xcvZzK0&BrW)shF&cSfg$lYu4nR#h&ZFZ<-B#eRg-8Vzz=SS({??zFNHSjff zfhDYTCi-zNKFE13b&(Y{Bu)uNUH9RS071{cElx4pN67}$0b>%TX8|??Xh`#T9V*dD zQaMp-=>aMxJO-fb8mZ2({t4%G?)}zI)b6u-XH!X`H6K9kOCLgp)SSGhI#&suRoXet z#_teB%(;9Kd<{H}0Ud#kpTbnm%-`8EI#vpz;E)Fl_j2GdwHzKzBfNhtqUsMXm4dYx zpZ=|I2BZg=N#&&=O}6QVT&qmRZYg9eaPf^QC@4@0T?0(A2U6%2M3JEiA^UXF`(6oo zN_-?OH*M2apT6d?$K8;6F>Kn3t{`urL_K`Z)cNu5lql8?@8h}y&FMdcMm&7}ydb2m zw0WUon)K9Xl0BD3LIUo-Mp!IaYWXk3a)uXE@Ld)*2o631b(D0~lK)S(#{>f+$uQJ` zmgCM{i5IYR^ij8a{1gsxcD&bABBxaK)27T%!mNlT%S8G);4eljE{v|~SEAciAnjWZ zbzJ1G3bG*L?EjE^?FOPyvf6+ec>In(cs)UVP6h(;GCQOyg}WoTzkUX7U)JHJoPM>Y z`OnW6tFPvhpo-OlhujI=mI&PbxWvvFzif#&<^mZ2`sPV=z4M>$fDwT4#=$gtsSSOH zp>xyX`GCsS%8fF1lnW{-iqdvLJ<3Z46W!+If*NsJYJY#YjfZuUdpkcVDF`;N|4O-& zISrV8Qhl4K^BU+2l;3fg6b#VJB&tbSIJqkxnPd63|U_ z0=##12NW|pI&9<`?my|tg1-`W_r@CRpbVO=Bdl^+t_jqFEi{Fy2`!dd0|!e<^RSTf z+C!aJwKaYZ>=I;-^A&6w8!L~d8}GSt^Z6f!3ryL$mfE0Z_ZfKYWG`rcus8T}j`$Ca zkDSXU0?W(IgJlK*S$ub>@VN!Fj2Eeg1CUbv1+hv^rdVC(?(!qZC=7bUn#RN7?f1~G z7nI8vX3phHP%@ldqd?+_ZyfY`bKI^vxs3<4DaRQ)Z+aSG>4)c|Ne5voj8DnW44L+x zTHX|1Nwqw0TUjjEYxy)p2O+kr?a4qcI*3`v_FBL|g6EZ?i;+Z&iYt0fUc z_SIsI&aA@CjVSm7+Zy+Qu;xAvpMv_%+W$=faso=&81z)3Exdvzdr4;ZBV5?BeUB>* zwiag1_z|X^N)5!_!wwXxz$ikjEy5E*Tw;dgg7kI8r!y-vzVMIhrfd89v-sRshO*Od ztrlwR#MM|+9xw#-iOt9_+zZ*}$hAlOgsTk7gBH^AYso1&S_VYqw!&8Y#5mud9oxB` zXDz+ALJ(Q%|CFrL@CJu2Q0kL@{3MN|%}UT*HJwSuKzcX%WJ?BV3XtImeH`2wN*JQV z%#eLrTZDysYn+N6sv8@xt}XkH4b0w|oav zi128Q$BHF21qr+VZIk5-!X?CMmWxSvn}9b9J$(Wec!`f-^12r4y+(>tHID|$;N7t- zE_>@Ob?mu$egCv;fGx!IQ=Len`q6^0z`E=l;@859*HvzL%o*jDuQa6Mk@ohAUb)AbEID5rM4VbiMMt@%O4ALGoS)Evy5`%Lyngko)-k!>p>fGCPvHL*sAJyMtaPhJc({7?7hT2$hvU83O7oWBs$3dYnPXJ}w1K z*n?3Y@>GbUx(?B1{x6{89r{A&K1CtYkmxzz2Ahc4V1DLf%f6)+gEST{r z6iCyANVjq41#3(#eVij-a*CII@pxR~IFz_S6(Adx5(v6f=p)4R=9>}zONF5#2*jfx z1D00Gf98TDC(RId>^OVc99~hav45KSZt)?XHibkox2~^*qHs z@VVptlbZ!44%9ZjA)gZ#O5WHv zU2?WFW*u6$@^30j1Wf;GNNS&Q->|_G8)j#UX!krsHB8w~-Hx=eB6ey71ZN70xE<7Uo%WIYg!0dJ zgw&ol?`A4zdPHnCIP2v(o5Dw@r#0vh`+Lr(!d6rZO(7~x%IP@&vaxjBfCel3<^PS? zd5+Lq)5oE%%VCs9E-#)A#b|*#Bd3?6z`;@6*9VM*5|@O%h}NM{Wqkg4h2uc<7JK*D z!dh<3YJfDYwyAkTa5NX~s;K9q4VM&MOS^HmoGd$85fPDP()$I(T?nt@_A*tUa9NuVjSi!%BZI zX5*9RuTA{*%5%W-_BH6?EGg{~kGKombC}(Evfm2Z&Pem#XmyV{6MNxX_ddd+rZ(!M zXSvz6=uWJRJXpP|_m6|D`=+05cB!piU5W2>MOp5+qrJ@wO@O_7c^@`l`&WOo2VF_0 zU6+#oMu-e%4M^b*baUBeZ$g7?FWoB6*+g=LNMpp&!usUs?|CMlxTEj8s7d`oV_ARl&0zv3A*h=EPcNK z-|2|P6XC~YKu9m-Nw@qBOMEHew!xXz*Gr67;evEk81IH#&@XDx5?PAeEY(|GfNu^q zmA6xH7uSC3-QC<#Kqu=o9&)#S4!%xk9LIFzSb*g_Lcc#r?sCKNiv5Q65ud>9B^Ve1 z4V0q-3HzMMN8mWOO)>W2^jJU5h@$B?#a<90Z?*bXV(y~;!l}sD1r&<%!M_AoZ{7Rv z%XYs|>DK=4J-Sbpuzc>p_Gd!G`}~U7`L{C*!$rLN_WM9z&~auwTX6T4r`!?T^pic? zZ1e27=qgtn%j&hYUEz82Vk4rh?I2(Vn1iOvu=|zv#&Beg z(Y|7Tb_wEk7o2KE2M*HG8CO_!a79n4-ZT*rD23y3xNkQO-hYJL?`+2h5AqFiHX4bC z`y)8qcR+hA1+wejw;Qr?R`CKDKq$(OWybZ3KuGOQE ztoqqe+lN{%Yhm|)7=Ne!T2)v6m8{>XoXDek7DnVkwvRmb-^vv>OiZ#8=9^HkX ztlKv|Im$2oVM1PZv)rFFj6I6}GVt`_L~+blx-;pUK}eW`*RYPETZ7WAuw>FT$k!<7 z4>O(Z&g)tC(oYj4+SMuVjI64(0OztdWR`EpZh_x{ze|#)U@>hT7tqO1upvv(7FSj5 zqi{br?WNJQd&7OiW7o(buzy3WZP*;Q8i*@r$C6u{v%p2DQ&_h{ddnG|$ctOi*P7M+ z1!qyLPNmY__-~BEMl1d1^K`;rtXLf1_j}5}-OXmQH2vh9K9~Pd=fI|h01PaKJ{R-> z`^%P`LePXD)K7U$UpZO6lccO(NNU;fy5&itt9`uWC|x=^T^2F4+6g%4!U!2 z^^$H-9se5sSo=H=vWP}B^2!Ewi(gg*c}Lpt(PGcr0-utIFS0xu(}~K9uMfSP zOTX9@f(Alk7sPL9ljftg^TiFc-4IO<)6WjN{shwE*Ay)U##TawftA~KYG)@F&W|;S zVF62`5yW7p*D>O$>#p_nm|+8$6l3T;t-);P6#Vss=1p2D^~KzIiKDTrVoQaQ(z?Ue z-6vQ?P47E{BA7lYU)2rsq$TmjH7swkJb=;d{iqQ#^K1jO0FM*SVnTb=W_6#7EHhp; zmu$SXrs4@;3TR8Mmvg6;=3HIaT^9*dzizzn%xu|}7UrCaA~jwL`ylaCn5~x8oXzhl z<52(0Z>aJLOXd0Fu%bjVw#=7@$^kAWUR#Pi|5^lm^q|A;sgp`&;z{v4G4ZQ0Ui45w zd$-AZBkrG5{HQCOvi(cit(`%S0dh<6&B4TYj|qZ6ciHUF%TovVMIM4($xi+{lGAhh zaBWDLgSJeQut=g%7_{`B=FYTy+IX;GLfsR&mnosQay>>Yu{=uuB&~9Y8JVqR+q@Bh zw+f@1Q^bt4#m;C+Po|0U20urp^-$(gE(IQQpj-KMrR=o6Vx|ureEF)~%5Xc7df_@a zC$t9awvX2S>xZ_d{*prWt6#Qyfyc_z(gw51^M=io2kmWRaWsGL8qfV{>Z@=5#@SSI zpIKBN42m>s*L>WVt7lC{q2mz%00!uLdJlIS4e&} zak=N4vVkR1W`ytWU!6O*EC2NMXPZos8RKRE{hWOlQ>7NH;Yho- zJI~YCFnJ)4k!R zEeA}s%`f3`|C28SRWoew5^ef7L9~>2tol}ZjOU~Xl)${2BqEr& zjn=g8NqF;xVvn0?k66qJ zQA~3YR0<$s(h=#mQ@1Vh+9ChVj8d?BZH|D9_3nor%Q)AP#q~V`!|^(`Cu>jA|jcI`x&SZY=#nK#eFKc}YNXM=b%CnhId9*RlUiuQ_E z{5~3{4gOAb$zpq(RQ(oUepjS)aFAwUdZVzvB;=LCW9|@ZY>y&L%}X{7zE~t%p+Vt7 z*pVSg6BjaQh({h|m6d=B2|3dxz7q*2ku)0OHQI>5(z%9CRR=(8x>iQoZf}QQ#vJ43 zf~^U0x6ai2E$Fd#=gVv``|OP;SOw&*`j*mbApOvyOYLsr-3j1i0{{LuYUv>h+Cu1o z{vqtB+41dR;?AYQ6M(z+%?ZULtR4&Lsq0XvdtZ$)HG_pkW6E3#GqSz+aw)%%oOpgh zWN^23cV>Z`IgS`ST{73VfI=`2&aTDmA7tvYyN*-Wol^L%b*!t@Iy3$x3H}%XqN;NL z)+B}F-Cv?It_-}RjCf5F@}3Zh*(2FXitjE=kH1#crmXzVG=NePFKH>bv+)jcK!%)yJz-k`Mlsd+0|X$ep!o1?-q1nG|+e(Wix*))2l7` zYygK3M^bR+U`LuYm2*%CJ@UWSmV`wT8Hnoz_P=I%fXD#B|DmolK%86%-fT;w-J%Gk z(6v9Jd+P@obKskCx$!AfMy}9b{L$-9$aEio^5!pCyX=3yHS3s+SPQNYLx$&_i2&C_fIVW^kd1mfjBp`#0wuOGj^`VbgIb_G^% zt(-IO0*(TXj{@y?&R0U`TlDJ9P|8RRcQ4a8yM7c8FRy7IR|&x+vMrSTf1ohy?C3J6 ze-9~Vo!kDyGoqU{K=%eOZ`_XXa53%QhiQ7%A|{NnEChAtjgRP8z~hle_;i0NEo zjn@(=BEmNv*t&KXqiNqE-9hl`u8}n9l1B7i06c3ZgPA@_Dp3A8w3)Ir^j)inp1RA) zMGO3pe`@S|wsQU+Gj1ir&_|4P5=+o$fv*1L-R0q<^eH*k6OV{5krAKF45#RM&AF?a zv~+X@^#GCd^7jP!@YrS|`Vv;wW)oNW(xp~To56Gp1E;nCxXB+qM;kUxE1%Wn%c{Ov z83DL+uD^OJx{Cae^?Q;j7%SzLa<0RANNzlfGKoL|9{Z|3UJ-O15s)cw zdmfv2*C%z8^Tc0m(0Np&wGZ)g@A0p-VW6%wY1AUff)#MV2_?UVKySJfa$nXCP}lr? ze`RjRkqcf%Cs#U}XC}b5B^uQPElo%p0I1NKmUjLc@R*J4Zt;@Js56ka$+s#l@$?85 z+Ad)H_}^lK!6}ri@a`RQ`LtQ$sT69JnV(3XNFaussp-ho{HBFRNcWWSnYMi@UucTH zNnZa%5WP+Ss|a-$ufe38G#amk>rrya*OU<&30a-m)igpBvsF3GpOs_)ow=>FZq>0s zPPM|Yl$1x+uBV4by?s|{K@PaJqywi!#_gUB zTYii3njCmCO%+AEo2UoELCXUTFOaN3rfG6o++mw`bMNuxSl>r~kZ1VygSWF-a!)`b zd+w}CxgbXT2OUMbV-{^-=Xo4M4;>Ds%XQ1m6vu$G>!ca6RkuJ?#!&!U_~@bk97zt^#4Nu;jZEUD^ey9chz>`L)MxoiM}j zX#L4}HXZG4!yVA@cYUkiEcI&Kk=@HU9G20N{C$O38Ns`hZLYvf5}e#BogBbPvO>tDh%@ zgK)uGIl0hNKn1uvTOXa2e7)H_Gt_yydiYD!^NoFsmY&)ysh z-cJ`saERhH($6h=v!U(4;J*kVY+rwk1zbszVlxG7eEO;Bl*Y&Ga*M00nb@UF{-=ou zLQ=fsL46DqBD0cR>a-lLQ&m3qBGN|Y72U#Vy+Z8**4fmFg-188Z@4soEobq0FEm#jXBhoOlNn=-Vs!fK^z<&3E=SiUD+A_W~PMTEi4~I?p zyZCCOQc=&Gg5#mZD*@!P(h`_yc0{Yyb@L4XoVlAU!Yb_6MEm*z1X`=N3A)!AU~g{# zHWbW5by&n@%0f~CjL*5gSY)S#eXa9_K*Iq3aFst6dQT0bQtg&4=(-SuiuiB4=2mar z#1DA_chsd_HxO7gFH=%?)a1bzyj_}4-uZh{d)HCtsg+eSZo(}naryC~_CZvK;{Yxk z@v05VJ7e-%&$_To#7bE*u+O1sVPnus@;T+y|F7Gi;nQRykuL1figG$vD0J-3MGpUB ziW8U=6XIkl7x+`?-jyo=ZPo=u&n+5Y^$qNvsj(7->zNy%=V2_DGvDHTwQogK!)(%= zVBRex_Cb^dNVnMHlLHw0Am54HQ#bj?*l;F26>bm-dm*4aZH-^ zIQ7T0%)#{=O<6~K-}y9V;B$0q-|DE;RJ@%=WVAF*xKfD`nrJ$xfKxA3xboe2 z@jUn?N|n})8j=ODUzWZK_+B1OH*Zh>linwG|0aH_DyfJvPUG5*&=1a zG<&s_n{ISImpx*M(Hra$lK=jU@>CWTb7S`@dB3r@fK}$WF86=>2ecyOy(woFLoH*1u1l*GPoV6Sr?vLviw`z=dNWv+wAy{0jIywJOyW{Nkqt=g*8i~UdWhz*@ zNax@G!zx;l9)r{*270FWZEior&+uT!5@(5=kTh-65^hBXl+x(*aN$pWSI9>IaHds> z+@3EH<1Fi_9>`CuVW<0tk;$`J7F)?RZRMnokd5XMNjE=nMn7=XR2LLcCinif*XoIF zwh-9Mn2>BHok$Dyvp#1FUuMG*c{|O0BeHg6oo;0{N&lpjZk3FTckH*c9xF(K|NBZY?eUO+0Q~gIyln@mr~vWq8B7jT_Z)$ z;nrMgS$8m^3|zIH8*V+qcX$P*AsjJ!Nai0lZ+bsu$6g9xLYJES#}xd4+ZxNsXbu8Q z%QsCbfOU`Dx5czZ7kI#!Z15|xFWp`B)bq}G|{e^+ExU>RkVr0DG1NRTc(mJ~8ca3NwLkA5#&c7RbAX${x#)dp#V$vvuL z&!1N3E9BCbk&*jP*E@oaEj>?Rz6aNm4~wecHVM6C7?2Q<4F1vOWQwA|B@T5w3yg)m zj9`J51iV9EiaF?pcX>?LtQPYGD{feQF+edw>8QK?9Rp0%4&{eSyjN2=vbqYj0vqDz z?~W`U$RCg&#%|wWgI}>2?>A$sj$H=hTGm)U_((A#r~a5w>I>vEfqMR)-sT~v<}EDO zZsr$~0R49~LQlQ-{AQ5R$J(?SXPk@mj`MsvJ-3EKSx*B_$r@;G7WScuWx@{PQ4Nm8 z_NzCLx`3J@yVbT2uRl5+e3W&A*1~uj6Y#)1HGXh#y#uVc^S%tg5NAgvTW80qSHSyf zsNz>${wmKTgMo*}5%X`pGEz}Aew5PvrWX1DTs;PC@u{>`BkE$Ss5}AUYC^!?FQ4%g zXtk{@Mz!&!Jx`_1S}^@rsu@0B${ZR$A)mUFFr}skIwc>rz4*>2#O=2dZDP=l-1|FW zN~ecHV0$vD>iaIEbou zBbXD{sPyuE2!_3G;Pb#TqxXN{shZcY5vEzr_}ZWwC}>6AEFMuLf)7jK+>6vag(xS6 z^mrg?E#88rHqxv!Z=&|kiulmbklV}s(&&TUgUYv(C()4Y4O2`&@j+a3hr^#kED%@P zB87h;e=&2={-+9`>a;bMg5M6%uBBG^2Nj8iI-E^76n`H-RygbYI@8dp!o-{0>Ft#j zIv&MQ;z8LdI<(|2n<9$>`y8=sc562qQ@3t>)t3R8Ej2y=CwC4vC0V0_j$sfznMcB8 zkmEP|?>yf{FYiYDXb;?{@e3H&VYE3$rjk9-gbC_;Uxb$HgnU?&y&emIdNkq!utZ># zN?w(KZ?1kjLLmRv1=pV&(J@-RJ=f=?r|3Y2*|#xU&x?0;k{hV~Oq3S|uXg~Ji50h= z8o%Jc72Nm6voMkm=SiwmR!<1{XfiP#y(61fk>j6i3HdqY1#autDpMT5Xz|eyPfd){>5Y|IMg;VaRc4!t|B(capPnoRI8hxZ5fTIgjXzv7xDl(+J4cP3usUv@cI^sX}9{HvlWX=u+kGf^3uP( zJ^i$kfxWX^1)z)$b72+RAK6U*$a@g=mVE3gPI6v7q&OKA#Cnn3mu<*(QrbLDPD}`c z%@rzoo6F6NSJSUQ^O8S66JF^R{t}dg%$&zed|}vmc!FUP6%A8tw(PrXQyLWpvXifo zTri3L9r&f~S5 z^j&POkS)}Frm55|M)WV-_SYb*f0Deu?>Zd$@BUJ=Ec29#@>$+V+|3SIbrPdu3G!YB z5F-19$4~`VMlv@1A%&5QwnyVjsn8pHZyKZcC-TzLaosmv7s8?y_N>`W9=!XGApAi{ z+{cwCKeI?)UbTNQNQn%ClVNRKMV>ANLW&*-v+I{>D-Y_1lJq&MEO8Q;IOF6|4 zAV!p;a7gO!!s4_}zCZ-mx?cEQ<`2iDz>iATFc_^m>oN{LC7`P9M zlBWJTR#&&Gf?fU_2-x&@WtLfWR7czKe7}dPa$H`v8c~xC9kG+*vLrtZ?~;XI069>{ zN!oNfnK-(<*SJ~ZlF^$J>xJGbT?th&G3woSp?VFJZm(N*k&y-TX{7|JU)2qZM4Si zq09fcf2E<_wgz&(@cnW<+71*vuNZgQ6?)YHJ^wA4_=v0+^w=T_qzdluxTswQ5$8KH z_|MEIh4p%@#196@ct;4hDpt~x9-}`r2O@IyJ_Zgnk$&JSxo}!k-Otb4<+aCfal>+8 zCO~6vb>TxG@eI*6lfvTLZUulQM;%XTq8nQe56Y>XLk&niL zm^rJbBO@PXybH_L}TauR~rwMI> zv-EyEj3It^xG^DDm^amyH#M;lo6Fob5cH8ywu2vhh)PaIycvrAcv(7+%egL5+GO}N3D)(0HrRYwe-_OJpnU$X-W*Ns_omcO0%|#M zQEvNkk5AXfLl3hB0;)tmjtL>;B1dgR(Ry~Ud!r4io2}X=)7d_`ab0=Y#GZcxV@JMa zs{|UH36EYK&54x_hyEpR{x3jIRm0X^uJJ8bl>p9HSEB1_75jZ^x^U@^?*yQBD*~Eq zlhk@(utJ3aBqKzomu9G{HhF(?@-3(331icLpH%oG@1@my8M8oiD-%onAliyXBg>Fl zc&hP+A!0tEX{8SrlamwoKeUbV*Bu)eu)74Yx~#0?HVAk4+a=?pBEIieay6k`YuNL} z5p$17{+^HI#1?m12yG}WhU zSB|p26RNHY0B;Sy{*4gxdqeKWgaE-~^Ti)iSZ#M@+Yot2wI={hn5lkrnKqqdNL!2# zGci=bdgR876{Q}ifxcEBq@n(g;I`DRM(3hjTZV#t^^EADU$RvG=ja$2`q8b?1gk(^ z%uVzomQs>xhr~K~SKG)tY+_=9t&B)1DJxH_jqsgeQKN%N)^}J_d*q4-?=WjDY%b)~ z9%`+x4z)d!uJdt5k$XP$OeMrgFoIdiK{{2guOq;lPx_M5Ff$aTwKgE(b@w{C`B>vv zj2&<;OMla5R2*Rhojg3dp?i$k1Rf%x>(!L$w=x23BsA>c&ztM(B^c>;F7tvk5a(yd zzi`H(1SSPkVj+(^@Q|#LZ=6G7*~k5mgU={zt$OuX4d4EUHp{E-@LM2d^B`56kX7Ii zBjyuhj(x5$bMC9AGxY2^satP9mIsJylQX$2Cz(>C7#UWuGe*N9yI zvla{mFVf%Jrx^VbTMS&l{(wC!!{!n1UzF2EMJM7LIy3T%7=dswoD2)hte5QF3>vDEbV0bjn_P3!*Xc?1P zH25TnQU&eA%UD&9k{=8BzGv>6{)<~FzhkER+>JEvKCVa9iGqtgAt2u&VnW3UDcg?@5{-RVk2sTf{mGX0DoS>yZaqx1M+OlB7{-Gym@1^Rjj+dyV#za@=-mkKSM z#HWU1oQZw@PZxUa4^Dso$0^UNOtX#XiRPbA2HdQB#0(EZ#XCR~()cT@lX||s&1+Kf z&TnDd(3E)cJ)q376IdX!1pI${By#0S-T&DfsfLY0a4 z5dT#=qpLjo9$*NNXE^y{CiP*yte@Lo0Ge>d9EdyD^hs{yJb=qjJze|6HPO-&^snpr zc3HYJW&_Y;{a?Nl4;7=pue@g(9*<=0CW@UoY(q1)H>4({#;tL4xKFO88vI>B+Ye1-&&}g(7E3I<*eBg6wx>*mkZwc;P(}-X>|6Iyl6+` zTLDojZzluR-|u3wqH&8;M9b^`h*&xP`FCia^Ts zm$-BX!oaJ}%DnqW2<}S=jC48zMqhya93!^~nF4b>j#T;N`dsnKiR7b{NeVq46d9MY;He7D5WEB|x}8A4K@Fvdw=breCC=ixOa(%L(kuM#ZLs z3d9D7npFM>mp0=U`Z4g0TToK|pgnk1opOo$-*FJe=8<#^c(7aIW?*<=M^x7!;5_iY zUf1Lcw==x7$s6F95MUezpNPB)$T!=aO)bknd+j-$PxWi9-YJp~09|g85p>V!HJnI( za_qc7-fZ`-gU4%s-Y$065}E!Oa$uE@)+uKaKU8^o9`Jme&_07GGc4J?R)W!<& zZ0&OaKJOHb==#`Ve8SZ%HgHepCJ5fINWao0=bcsq96BTF6ecsL8HhSCxj8;aPX2(UPdfj;E?8PL1 z!NVzBOldSUd%)sufp)6m(_I923tTl-HP5{^=>>{2ki%j1^GwWjA$1pHXc2g|l zwXltrld}1XiW_RAX%ewmP_5dWxcPhdH1fhZPCLFVI8Kl23xc1Y#ZsN6^rlCOHk=Fw z$G&RFoobS>AR8kZVpN#R^vzT0>!eDvsB_z>omnf38ictxFrKOp%2!#hhJ!bfmov!# zHfaiCZ{xY(kg2aI{X+rUfyg8cXU3Y?B67l6gwixahJA!jYGwbzB)<6{N&RsX*IN$c z^M19rQ%&m6)Cs;V0(Z12zcq9-4jVwT&yZ~#Uc4+{R=%LE!(vxuxK3{+Q@yFn7|Q$_ zIlW%5Cu6xSTciKN8OTrchIMzfKF=`~puSI5{C!TTKSky>4V}9A6!as^N+Mho|KGmIbn$HvwhPh{a7V8OUh(YIQ(@25i?u}yKQwxD|>q=aV z&&F3CYsW!Hp?Aw>S^+OV(JHXK7US|agYf4}B!a;fX0N#43;$p_LG1yPvM0@k{H6YN z=j;?|Qc%i|0L9b1W0;sYMG6-d?)ZwLU6;Y?cN75|qjyIV)GLvOugdhV2OS+4123E} zF{d;+>*JP^cgsMqN}gIEpF3hZ9z!8jCNe4#D9sjcPVym%L9%6>tM&}LdQRa!C{rU;_K)w@g} z{nVjpo@6SSq3{Ugxxu_pRX`T-X{$N907Vy0ZBl|(FfR#L7X5QGt|1j)+Q=&?zpHHY zh}hZ5>oe=JT>n$puc1)2#tCwwSk7o*SIE|*Wbf7IXhl7n*~O&Dm_8_Y%q`(2o4NA$ zq&+V@S6J>x^}s}lmAGONSu1>O9+40r<=qbYVQKEzvY@)Co#)W@hw#4Vw&y7Pm27u7>hZG{=J;Jzh0Bcp{~y zhc8c!n+t~VJU_@C>L+fn>dB_Bh)5&p0!&k={a$)Uzh1FO5f&a_LCtcBz*7P&E9xv3 z8w%=>VR;v;Da@vKU8A`8y@=%I{6rl~G_ndqnw$1LgBALoz%&#m%}6g|O@GKAJTseb zH*NT2=lGuKB6=|sk{2_xs(z%5ej_YXU9M3UFv}|$`1SGdLe~5Ev}yJ?sw&rjMS76` zWdk*g+|J=TzVF^BK7JwGaxWh6A%Slw`DARM_PBR=gPYT5p42OvRD>9?Kda1X#Q)zQ zkMKGZR_MUOG@xLD_u4Yf3r^Aw`kzHt^K>F{zQz1P5d#uwiVcZ(+4 zw(Cd~&4VC(<)mR0$w5QcoRi6dBN|a2n8t3uZ3=XE{aXe;^qN=by zK_0hcka0xo*Gi@%v*$_$6vsZJ{Alc)v3n4H)gC)3*}DMpy02*Ph$Jq%@67q`$_yli zxApcpSrViTIfYXBzZ|=Hc>Lw;xGw0caX(~~PyQ`Yg_wF@7YjX3RBnt*o+&j{11kgP z^gQbWtvPS5%YweJNl*wVg*MUGi$;d$IZLDxmXGvGZ<Sr2uq zZ#`t419(*eD~$d}3G9X0XOH*UT)HF=2O+$Lr-!|WPgt4D@J;$@fE zDlNuDjyc1F-tTJaqa&cAOpAT=FuqH+?=3|IbV0jgCKc%nxjtH#655#_1=UFV&Tlz< zkCsGK=N!XHspRWb6Qtsk!KFy$K3_Co49;wMOFkWwgYn@_<1L6VxULStzTUM&hWwWI z{YlEm(q{yx0eo@tpOEPPkE*wPs48l^erXWt?iLUvH{Fd2QYsSC(%sFXJ4B>o(;>~K zyBjv$-3^;=4$u2O_kGU!6V`{h=Dfx=#&76!xs7#GCPHA}$#oa~g?0~1QpFz{0=ysF zA)-$&QX=Hzs9th_xiL0WTEv8hr7!EyO?;>T-eHYDB>CVyHSPNl?^f83w(!{Y-`4$9 zv5DwoLHKD|7Bq&yB?^tPkNbyediUpv7YRMwd&E>di7}hN$c#3pvNdM)JD%N>rT1{c zpO>5{M}yCvXo<%Q7WxWzmj9gFU_msTuFRzW=c26Mi^%{6(e@Ke?|G#O*}kDDvy!E( zeZ;K^s9)YZ2;PBX+Ws=-PjSMWYIOvfjbaOejQ2JX6(`6^*huCy<+28=MI)eoOaToi z%(oXYd1EO-0(X~r{ZZAdYO;yIfWXDD^)f3$rDzos+NM?KHp!y)2@7FWGjpw!ZQlrSAcHD;vo z7k}yDV8Hp8CefHWGn|LXl@YcFbYkQhB3O$9=EnQ_xMn_kWr(BOoz^0 z#q5oPFK()PRycF`ld0zW;yH7Mch0}wZ!OLQo~je_Ad?E5(bK?nVZ$R*_=c=SUNAp1 zx2dj3vC(kHdH1^hwMj5hw`H7c6}bksAu;@ev;khJ)jl{)Vag06@~G##FGnRf*X0Ff zBH817(S|CPaa$~ZUVB+Z=AeriQ>11;=Y8)!!m*MC%xA>hTOtukd&Jw5w*H7ZAoe5s zEuiP|cTU;OO@gi$JhFvey}b_K6QvtuH=;0^*g6>=fmJd@kfzGbKdtE@{>cN-W{RrY zU5v%}BFG4JKR=wuo{%*qaF5FPupTnzhTb?#`@C)@_bh>nFQd zJwglrPgv>IzIqwN;T79@na81UztMknI2*5u;yT~A@h?sxZcf(iV5YQMM@>nYdbd2) zN)g@`1L7Ye^(LwhIJcMU^Wp;7tU{4&$j@mzE-S=BuQrOAK9pw;$?Mxj2eVQ!Y9D5w z@ROQYyN~1lN7Xb|k+_yuiV{_Z+WBI_yz?>B3K<2Lc<}xLgH}!ydjqJ(I-~Q5WOuYR zSh|FTb0R;f9Vw0)yduQTvSzZtxCn3P;q>*~w(R>=`>Kh<#DUMm@P3;2{hr{+kOPxd zi1ecz^kzCM_;foqf63}?xsMpuy@Z87IoM#b0b~h|S`W7#IRSwwp?%PmOo;aE?d1%v z$V~dq1Qd&Vb-P)pfH0$2TaNK#gEGop4rrzMnw_%c?zg<$WuysBPj<2VUbnB(Nc2$u zo0Mkd*%6N@KwChF3Eg)mHky!>iYU#ejuCNG&hdyTUJr&>wA{Ic#7ftgY#!%Kvl=P~ zm5aWWO>d95Ce8TyR!8wV*30E3Bo;_W*t4VjJO<={WZ1+rUPl6_gNK?BoyqAzvbUQy5_~tuhr(&tITuX7l= zOr703($0vFJM{|NyRXT|HWL4wNsRo4apSv z$8s91Q%84NqtJgH3VFrg6GDjw4X&U~Y8(;lkkxQb-yQQVJiKmK52% zBjpA4bkB#=@u$|-@Kdn)2k9*k%R?l8z9@sE%UVsTThqc;#h2Dqcyy1Jfq%eU%IS&U z97pbtv#3X1VkPEmmEnjF6r)s5o8rj{msKFw-Iu`YQ>Y4Hs6+FcGfgGydAYCEqRswo z@r5rmdw2I`yy z1@e;r7)CmQ9G87Z0Gr!yO|&CRvh)i}%fDDx;=Y|_%?6F|sYXLAM zO`%N0$>E97bGn1N-@{uGcad-b5ocjnm8X=E8!;yrie+_hzdwEIKt^vRDpNO0sL)>g zEPm6r|9*kWmY@^I6MkC6W(HTgH61dux_1y-JFpv1t~eXB2V8D);JoUR#hWgpW9gcXf^Ftgj$Z*P$bD2oImGL zjZWOW(D@4G94OX;gIdvGex7gI*g?mrtVugp9;%wZ9H0U95FXG8fg&!2fh@oDm;}b(aV*hK>pRln_5?%_x z)j)}0K2nVg2fhD>$)LkM??;4*-6i!KyloE1`N!-tG%mFwrP|wgHI#Jhnu$Lgq1KFY zpsFBzmECpQ;&C*hzp~%t6*}+d7{r^5ay!qc2a$4~qWz?(@>-4X>c7DOYo;ef!seM{ z7F1)Ya#O#VM=r=4g6#9>S}Hps;;D7^)52s$Mam= zei@Q$C@lynn%``;Rd2R2TJ`}HH%THCg8>ro-P`jsv;fwA%6YUz*f_86hIFds|7Rlo z%>(HKJyf*F#q^rCF4RY@8#RxR`uk~_S*h@zBz>$AUu%HPz+D6Q_0!Zy@>Ts`w+aR0 z!}wuZ%tW8wGOFm2N_Ty^CULy|pi$@_T_rdVI)mFB{T2DR0YP(!JnyKFn#6E;WsSe! z&T$Pf=D)58VYYN?*!)rxmV9=74rO@1DdOP_ay zFK?bFjleP(9zsz25RaDtZzwduMvmJMAc*L zQh6h@-FK_u7`rcnvsS@p=DTiCv`wAAa?P70@-m+3-X+3Rfde!rViHE(j(=}H0tx-6 zqLFRVD*px)`X+=T4{F$D6u?K-ZljY6pLJzB$dQ#@u`d;V7%!rd>b9d$6*|;Q0g2e-i!#hoZ>GfNb1Jjouwh3W13J9`QrmyWA=Z9eui*FgCtQ) zj3t3gZIW(SMHudpSDuayAkvIw5CtD3@urRslsJtmGR!fu5K28cQhVM)wzK9tNhM_} zAT$oCck%A8jNu7~ocbUUtnp&|!YxQ6z)5ZKvP_C4Z=6PMyp44KdHF=b(V~2~Iw`K^ zi{^E4Kgkosh>eJXW<7pcw=5K`pPI9*`wkSIJb%W?Mlq|7>mt`^6}Z`TeCbb9B6Ao@lMXuD zfazXgs!L^Lwi3j6Ol89pI-!u|TS$oEYR{zuJk{p2_zv|ZXO!_AG4aLUj;GLF*~0yo zDSteoV1kQPRGTe8&l2_L50YC8L@VV~kKgY$K}|})_G2jK8w)$zoceDa*hH`$D;>BL z1ODg3gxp>eRh4>pVngcl&@1SbX{hi-!9*3V)dMOv)vG!DzXIrG0PsA@JQwvFjU})H zM9$lhWiM@{e|hh?X!Mz|{mg2@$DHC8pA|Pe7+@b|5B+MQ0^!-4gStgcM4r&wRmBus=<}~%hNNc*#~XZ;|2p3Z zVxHxUaTDLfKWT8gYiy*M^Q(DsTl{4iz9sQ_xd6jnGLmsptL>Fe`hhDey8+sY?vM1j z5V#psccs4j#*N1BM@$w%(8c(Q9m3CTJM$h94r^pU_;j~28ivM7VF!Q%*72 zoE??0X5A>*k1k_`C0}Ow9z3s_Z#IUE|8qtBk*uu zh^xvJS1u&cZia@U*eQG+V7Y={XRf_I51=hE$1ZYwcX~uM(AiwHfxZL6Jz0YXxdl5j zd*V5t=@C?&X|Ue3W~tVH5{|jNu1Z>u4u1hB)`vBN?7q*<|jOWK2_7*Qf z^Z#hjP7g||&bLKi*?a)r;C~a7>;M9soTA9 zxdhbJDcu8S>y2RnTaS;;_Q4~PeVqM2$s{d01Q7@*D0cVGjC^A2@}k-xw_M_hVe?Aj z#5Hb^cL`O)>CY(o$JYjUbMc#xUTArGDCJX&yS&n}i$ z*0H^*3iuj+6WCY>ujgqj>ae7vhv@6OzYN{*nGQ&DB%QuM%EY(M45Ab~Q~%XPh+}N2 zrapt=@jiW$J2TVcMhyF$$KdwI_Q9!9%FUnMzZhQ3kQ=Le5>y#m zWQi`;zFWo?=wGp_4`QFlOR=>t%BFaoi2fr-o0y;Kft+ngv5K~`O2G#t>y>kf3cp@s zlG2ZxD%Yys`u9qvs|}Tx=ihTJ|HqN=njiNQ>ZURk7&C}KtnaI=(C1lK$KnehHi434 zs}3)ou-V)#XRjXtRU~?xZt<|0C@N@W3Xu&E40V^ri2W5l+iZ#T7wJOFV}k|9 zbfQyOq!lfcX%&>x@ZRO#9x>!yFrOF5(1!f^_^;zAvN@d#P(O=#o`1nwbw6+!-RB2( z!4tMmuLCbzha$*wqcMp7;!It~Vca3tr3EI|i)f42*(lbsHxLKkf@s?BoY6CB_r{!F zTv=htYH`1+mmGBgXX+i2%!gACo;L{OvE|jidS;&61Vbz`p0#gvnoBp_cQO|G=S% zk^dKqCOL7dU~gBWF+xL*q9ek9U5{ta4>(r3S{-9#xSS=bdR;(~B%>YDC%;Ln?Dnui zELeAv-(Mfog4P9u8tMB)deeJ04^&)~L{K;F5~zE3uXV&Mt_$su6{C|iKgHgA|Wkd!Xzu6{%`>ty1abd9J%w}6E{>jpb!yd z;LU0ndHmo9lBA|$V87{^}9{;S^9p2lEwflJOHOvs*}7a0W*=T zPA9a`Rcw5Id3NWO5as_}`%WErc;+}}(n)>B-t%*cYZ{%UG)TFT&acETo;~5LeFFZL z16*N0O|nrqdoNSC@LgG|4-azy&cC9;F=_WCrcN>D+wB*Oww|&9xBpV}?nEq27)IPV zC9O8YN zZvNP0jCf3E(KoBvh6i`T;Eyrh`=@a`CKet6sNNg=525Q1T9hgP^2tqKN@s(Q-e(Tv z4gP~QGty0cg<@pdF54bR7Bhqar*@+}TbjrTGqcDugH1@mae-``QkPdunEuF*vJoX6 z*9{Lu!lR)H|59~|_Fj{uZ>JkHguWtV)ekI)O`B31po^+ww}$*HN!EFRx86QviLwQV zy%SaDi1e>UCuU$!I1YCkACzgXY^>5YLFX@lm=WkO*P_z)xhLbWq&Q(tFD`?ya%52p z<0IVas+N4b^kUK&(Moa+%VVrB3BlOr>NAWwhx!QuK04^2PqEj!E!0dG!_-PA^NymT z)^PGp2|YU`t64D~>DG}Y+t+mpKI8xCS;u(Zb^j=7_ZJxcWaCuZqa0mz(hzejy%@=3 zjhUfp_s?rWyHk}r^flRuigO} zy!u(5tNROZ;RN~SBI2Tt0a~2%BbFp6Pp@R5oJ`R zQ9S==!Abf{msDv>?U{g>KNODS{oZXMjD>85#EGa}EZ>9(vn+>eA3Cl7`|PJy$lwd1 zBd0;Iy}s3toPOo=T6eST-hmi~jyEQD9zxz>gTY>hkjGnLJ%*2~oVCge2*35)6V7cZnhOhBF#lYO(jKI7 z;*3&?v8-%jePB1uK9Vrn4Vezu_7^eo1c?8d;;;ws$QY%I41V3&Px``N;F|dSN9p@= z+9BPciOs00+H#d7Wx5lL-3OlLj}KIzOJsF>viU|*Feeh?(P58&h<2x1_?EOg76&Y) z`*h2(pfpUO>h;x_vW7$iW_+ zGYFC2?VGZP^;g4vuh?HpmY$sBgH~Mp(V1lJ&W&XsaM(Zn=~BP;@=P2vZ!n99Ir7MU zxln%Md0GXo#j}BjzL&nHCUK&nAC_GmXoyOU31y&xchtpJoEgGEmHs4rL>bo8@v7PC zo7rTYw`6?GNU`Jaoqa?%>B>H+qPO_eBeSz@XGEeGu0TliiWk8}uBaGM5u|_Z7qV&0 z!Zukc{#y&uACtyRu~$tWtC?KCO}mW{hl0Yz(Ie=FDQ?-tk>8k2JsnLZsPw@o{6D(K z_n56!@4gq=cJ=T8$X4fr`jRCD<($KvxhY@FpAY1uOZLtF*`<`~vT8NfzJKb*p})sD zpR6t1d6Tmd$@)GU<33Vu7LAdHBRfB4gKq|Q+qRpmI`#S$DE~Wdt}u0WI8>LYl;_|k zboml(VhPaD z5p42A!vcXV{=rGN0-<`Jr^eZL>ScwpZHVu*4wXB_=C$hHS3OkzI+RTkD(7Qk7Z7{h zM|&w(rH491A4J^1VZr8eA3YCE667&X59{kcPkrbgLt_vCMIMU_KYQd#+c>D@+r@j| z1yb+=wN<1;rMEA=dQXSv^Bi7&eSF?OaH4Qb5_`6aa1}~~$U}oqhvD>`YRqFUrf%43 zHMdsQB`GcRWwPUJy%Sb$hhCgL)@@&itXJGJt&5Sxvk`;uqy?}y9L4nJz*A2DF5kG! zZvWA$HGem$K8guPAy^eff!et#Kt#DKEfVMfsL=OTRw^s<7Y`o)vb}uu93tFdJ+#3l zx%`xrls1ycw)h}FDIbkLt>VH;@jWT$o$^l;_g4oH1$vEpkmI6jV zcM|p1z^lKTN_Yf;duyf$uCXe}E(TWm#x*W#a8b!42WoTS@E5rIDCMB~(8o6|AV-XDq73Y%>= z#+C;(2_Uhqdx%|Oo58DS8GWm;YN7yWK1HzBhOCgu*^5lIGpK1pe&S?wXB0EmwO|Tf z)ASZzQCof;UxWIrN1V7tp)GEo3C5P5nisUv%6dbkQ-U}e$)*JPiO;_O)cb7RjCU8c z_t=nnxzKijD4e;WZOFJc*U&`?7eTU$5R~FDbz2hhtRXVJxRV(sMTpRsi?I!$0|Y*) zkJ3UaY*8Tc$u)1MJtHl)2%r&ks7g-!CFX#-t41_nx7A-ts`=lAGb*;tX@znK%AGs| zaVUfXbEa!=VdG*=vt&|EHJ;5`G5AyApNkr->`ClzDc_8YGSlHi`?lX6tJ~FgPGghl zn=|~aG{+Vw!b{>Ujz`P=^9%tRD96lmCPeKVpol4cM->VQOeoRQ8d?p8f}7TIcQRUwoZ8+IUBcsu@la-UZ=uJ1H*Av3vM*&Lli|-!m zv#o~SJxyuXA;F122i25^%XfhXvB>wpGKz8ALd{VecvPOHJoqMei9W<$&%j+dDendr zg!L6vixc|_(GGPaO&`y$V*Ln;&#A>H@YWDl9aUZ70vkM}^!vot3-t0k*ioj+)?`@A z;EU!pM!$UT1J$7T*0MbasE(?ka4%@=ByMNCN5E&9ENljdZ1aB@QCqdkhKhT%DTwPy z{@368k&&oObY?Zn4|g&;jRNyR&l6(}rO`YodZe(T+4?%isxGicl5iJ$qIUJ#lwa7 zAaEu!Z(fVgx!IGR8|=#_J9V^Ygz*<*k}j@R`oe^HyS zv?#V@thT4>Zc63uy>}kzOC_0yV*9-c+?ZEW2IYb%0yB@rB2;C7J7&BMr%k(qfe@A> z`y=K*d`l!U%oKr-2bm&E3JveSR$y{`j8F*nwyP`D=Lwu96xg@MXAFu=hYjl1FND#Z zI5prJaDU|;6)6?8XQAN|c#Q{qr~23AhaYVKTj|7tk>f#g10Tn+@7W3(9}|* z$On5W5)lsOt|R`6A!5_egZhITn_9wS?iyVkMpWtQ90v zyk8Cb`Rro`JZYo_^Iti0520?xY$#0{>%`aoOIqM~N&KkRHeopPN$_x14#xR>h*v2j z(tgX~rldYeJ#1o7p{!W1zPI8cG*?DPlBHL<-p>DWFl)~~27D!M0sluMMY;!xyVMCA zQ=9&vL-QNA;|%hfq1fBuRD2UcZKz=sX;I6E|M#4RjEX%-!Rz8r2n>YSitpZtE_sKqn6#cITJL)P0i;APU(X3X;CKz={5$N79KB-fRA$FOfQzi(m#vE6376K(Bp^5(F|nx@A-!EPzn)aY>=3U6)( z9Aa~&T6jobC<))jQI%~Ne8-A@NhpH1z<@<222SI9hGH-ATf>Rt2+crUFXdqQ1c|r3Q%!BHnCSIh8(jx&y3tofBV1~D`?Gq9SCS(H=JD;Vzv@0 zdIeP9Zn(FqjBsc<*)Qmdhf7vSWj~_GFCftN*v$+3*v?J}$5?-k6EAK`_TDdwv&5UZ ze8Kr4)oh=b7Sh)o+eSgD)5S*As@3W9wc&IX@YU<#q#EUrT@c+ZNexT6ywz53@|H%I zxDJG6SmtWT6O+A!Bm+d>m!eM!rCY|1nPkDq4R=F4)ODTU zEf%PTSDo}$%rFygY%D)`0A{bPPyZ)*L_2R9$UEe?nK>Y$Tb1 z$wnD08hAUQe9k|_3mz!D2znatfzry;HJSmUt8nEe3p z8{{VIT0;UocVS1V9yzokOu-NZ4cs3>{|=8`YIFc0xeYJNQS)KM^Medn#%-6qr5)ww z@U5mm@4$CLXHWwfJt{rHa3n`5tHR8Pu!>#*LSy|hD33a4Dyoh-#}avb!^d+e1uwSQYb+&n#> zfWvI*lAsPv45$PqM9Drg=D=kb?hyE9(d|yW%#y=gUW^lid_+na+?c=M zpKD}{jaV+dit0V_&pZupQ}1j1({!D%RE$nLPabnP%vX+viwYQz9$K%=fx8WkW(dX_ zs|;|U=MyaUK<>`E9JCTq&3r`gK~B^S?RWhX>giaB&q>7V_4Wzk)#8u$oheJH{6>mU z-s~O+DHOgy@oJ8CTf1>)d>n<IV)z_x*^A!R`|I*>u&9c-*tzud zNSsIrO=s=i|NIy!>PlAth;FOTlibeRM)y@>x};t>gpgesC!DFd0?TVZIx6L97?$$# zp38{;MFL5<0>3c1g=f)b8v>3q-S*lm?3l{X%PJ0c*cyGXRqC(#l2VJUf2qHD=+3d{ zYj?!|nzOfKv1`rx7cxc2^bHt&nK3fQN#p`}F?xU9{n4}mj+xd&Utyu^8GemqxMmdi zaMU>RH%~v-=)gufSIG$Cx4)t+K3c7PcW{z$DL-Er{k=%K=H+ypvef1pa})236wc#?>Ja%W zU*f^daDg!jsP*+or}T2p?=P7CbNAMIWHV85O<4WVNotrQ2R8zV4IrjIFXNb;Rd*yrVJi&GXXZmp}ovX)} z)9?4~9M68eoi?(Wb(jjj^L4Ti3kDi)V_OwPfuL+6ps?HS$;KgH+Eo*ZYj)NfE%4ZD zNt)YGC@mV!AL;mTeT;-Az#K>YQJd{w!Q`DnTCKU_IoF->w^}4lhKhPrO14iEZ&Htb zQJ?mPJ5}toc-~xJz65MC`NUq&fC&tPKcW3=)B#745UHlX!0w#SU->l+9*1&~ z&w|4601SHT{t+^v*mah0DtrbnqB}AT0|Q8-)@9&-S6P>9%QmtSh*%_hoMid|u-85@ z+0IK05-fe1BwAujZDkYlO^_?i&;{qv421@vB%yKqhSf+jw}O7-AUx$7JhMRp8}&bu zwP`E!(7S9oMaGAVw4O6sF=hQWQ)8uKfL*ZOQPZeRB_cb4@^&+=fCLB@Y)Jk#a zQ8TLf8WQ%c-t(!CnhU@lvi*gvUT%iB2(UfqzKe@Rl;kOV2sw@Zfz0ON-~^mjW_B5l zeqM|=Zd_{0fn#x;8lXBIe=qu^pqEPw>{@5*D(?zZcz3$tpYgbVGnp{mvd{e>jt&|l z6c~r6JnEIwtWzRXE0lFNjc36k|GL-y} zo>IxGv0(#j&C~RWmCsE11q^HnvpD9yje0?KBLP1?U-ZQcHZgT_Ww3ZyHAW}@`y92| zR$D2(+4d1R`S7=-z`B32fC9K!kC@yaH=*@C&CTL&=IDmSq!(}s`~NwA+Ab$g@8K}^ zTIZNV4R)fA=FQ;p_bzK-A0lk>kVtwXA;c5q4icN$fabN?ydXa1)ThuxiW&*~sYrNJ z2Z$gYugAzHIr$MjYQ_zT2cl&iA|lR*Pm;E?s%(*M>CNTF=R>QlN5ba{lusU`veN6V&2P~O+tV-bBA0hG@1J_W zK8c}NLM#z0^7q2v#zeq06ES37J8w@B@4!jSSBK)&>zMJ-=95y^^2k20+|&=flTM8z z>Si@mEhcu*!_i2W`=uxT+rg~twxjB}Kzx7_7+#OOmZ-gbq=T8RA2J zI_kxk9|b}q{@zr2r0-=R-XV3Nv!E?#Opa^pwFvl~&0_i6kxFosx?JF!zw3i)wx}jd zz*F^suk4SAnIC-r$B~VP=7)w6*MXFRwIg^U7jr?BJX~Fa=xl0*Oh1F__(0FAhH5V0 zk2`GR<+>3{0@z?8qskA{t(d4nN1>D?`Uf5GLK0qU?oO{IK9w9X8={aopC7#LJx2`b zxK*y7@vbw^s8D?_txRi-#auj^$ov3v!HQkTcwWb^0zs^U(paz=np{5|(ni;`;4uBU z`N`Fw9WovAM+cpIKH5sVKMQ%H=C&g zpIf=-AHEpfF8-sn5tf~lBzc8>e&R-DiA^$9jtZb(=VuDICFqJeEnW4Rr~V1Nbf#YV zfghE(Z{t0mmo^-c|9HpaoH^=6nq{BH6Z#IYSJb21O=aifpJF7-B4}_(=*rVt5pWE8 z^waiLknmedlbcqxE?NB~PHc+;G!2@L@2?f*A~zkj0&*s0;r$_0EFSKgch(lqU&W?o z;m3Vi$PZ=Nacrppl9xB}&LY4t;Vbl_4%c0 z4W70iKVd?8|Ka9XibT0;>g!Q{3%`=OI7T84BMvrk#Sh}TSVOhgx^f~xE!8k_P*IP>SsXe@zQTZ?d72xEw|_^;obuYB+E7D9E-S= zzi5ICQL|4(^2#x8zh0DKY)BNuPIK~!b6mvdmyK1=$`aUx=JCD9SaN=j{$rHuennsjTW{Hpjla4oCrBT>|!s^RATD!7RGP42YKKq5Z!DZ~D3a zlamtDEgHD1MT{>STgsJ8Q%Jww6!(0H zwRzlisnJO4)^`IMj6DI11!ml`Yo4*3_fY+-uEO-c!$~1G9qL+6LFWHE0}RnR=iPVU zj(bX+aIuq7;&qZlnt{TXGv8H(r88puvbYXP5ecYBAr;Uc1V2SY5a~dFfV%QYND)21 z7XryBM^R4)w1doE-3rH+^EYWIcl?hHf1k`C_Vgp_AEpTLdXmLjU6ur3x8&Ot+v!-+ zoA;#;mxOpXe)VO&IGBHuhau;YTOC4paMbl$u*qqL-dz>%Du1D!-LSDSwC-!AEwo^n zHioCvAF(0=)B2XV9eYHFmb@A)EFHZ0b%3Mr;%|lVT$5tk#jm*)Axu8yr@aq31EUfu zq5H3{+Fu_R;y)}qYG=9lU1EKcOcMUW|GaK&DV={62GzB?$8&q0UK-iBeBI0|tP% zmqk|hcf8i5ba1l}ZQei#$x7Vm+B8h&=@EMq{S>)F$&Gh9KxAjrW7+trl^F-O%AC*j zoJ%n;6t|E%rnT>t*x?M;^rjVIDn7(n;j6CdN3MRh7hZGwL^^{1iEm*!qo9&}6RY3w zrJm@u1Zj=qtf4Vz=;j890vLn+U6{-IIH4mMf32%aN0uVDg^C%)rcLS7fJnf@B_E4-kq`ZSoBMv5KWYzJtM`L?7wa?KtH=NF zkl%*+U-f`Oz*n(U!{fX6Cp{=DW3TbObXvZDtYkO|V8mOT?Z_)(U_<=#Y9E_I%JP{p z(uWkYU$=6W-S;QIY{9csY35>h8C~H>wER$mJLHZKG-ee<{m3O+VPl`T#6?eWKba^a z+_!=25oKsuC$dkW1}0@MQg`qz@@X_kt0*MCo?n5Kpe`Tmf z=a6xnJ+!_a?|@&5P|nnRIe%zwSapHAHr`u~;P3X0ycDSR{Du?er^Xy*>3no--K^q8UgVFZO6_eG`-sq_twumlkjdjocT&$-EOi&lV({jAa;Uq};_@;I z)4wsDowLcTXm3 zWA|8lQbJ=dT^HV?trTdB@{;`GpY_^5{*#3d#cUSiTa%wih`4;SE7?l_{H3ksm3#=8 z2mN&EWo0haM{16{xBxW*FJdhZCoKjq1*2STDw=KM^$?Fz?)~_vm$j+GMl{QEV}bcE z3=EY^Y&h+$LcL;@|RG~3?Q=FHQb zKVpSRD`)%F8TE?Xei{Qe#Q_Z-hQJ6Mi?gv5kBR(HcoRGiSz|{nib^JXmm;FWJ%*{T zcs7^uN|C9xVX~?Omcx`L%@Yxc(%AeR>h@%$b#PQ%Gyyy^mP9v=&j&?BA(@rii2bkb zD?Sg_9-C48do{DV+duTYqg+uqEB%r9q}5IKCJgRe1xedLD|=ho$!d=UV4&6VUDbDD zD^@i;n)5-{@(I@RRu;X7h1tDj&ztjyP9b5Wv9Vk+xho?tLkcl{8Yp}Wrhxj%o@3EU zILz!b<3BmuH$_RI^QrT`V#JNGo;q{K#u{ap-w{WQmM@8>zWlATi^9n>fxrFmMx}=( zhuXXxdLNt0$&%FcF*yTqFM%BRr_BF(frUIT-K@;Nh3opjB9s`L!r?@-Hn?a0eK=?G zDYI4hd8};A-BOFc4o)f^lg}$lZ2unEH`$LEUOcz{xqsQa@=Tp^k+CZ#rlJStq5#)$ z|5zRtUQTn~+TVXOE$#cJtO4%rcYeoyL`pY+Lz91Xz`Bbd{>)_a7I+Cj#Wv<=Jn9Xe zbt_1H=hs6@X}+D0=*&fS!O$DwSC6Q3@%Sr)u&8e)i?|<_Em_nS?R^tPSl3F}O z!4P;PI6r{2akLqnHZ=aA*}!$?rytfs4>DjCuPhKM+K407RED2;VwdPwNNt)(Ia!R2^{A|doF`eru)WrLe)a2yp4Q~hE5SW^TVP zN>{uNZ(|Ou89Xt_r`gUI`ao((JR*vA2BCD=jex#fo3ekg6@r2caUlZoos#&jgTpBQ z^Ze}It-@*lc+Q2E|DW{IXx|{5l;+`Zb7AIdE{5I!r4Lw>!ZD$(k9@EKJw^|&U@Qw% z1U}^X3#;+zY(GODvX-xJJf@vZkYecdiXd&1jPQ`w9SwWq`M`N<(ggVSS{9f;$JCyX z3-IkyLmXR6D6c-enKNsWqTCqI6$x$3H)i>QCgWx@mmZ%+#m`W5QWE+iIM{fHi1Im- z!j-}iRM8xvR|~Ao@>FBtzffunqf7Kl3|(i%f2SxT-sXD7N)|F`y~Pa&Rc(p#;R36! z=rsG&qVe4Pq}(6MQ+s+&`feVzVv+}q(VWU29_P0e+ghg9fw-z-n7#205q1#%9kTob zqE+X(j|Wdw@)u6*Zf>u_!Wlv>CtzsN+$4bVJAuVehqd1xNc-dr+TW?> zHiQ&07q$tHTC85=jKcba+U>~xnhQLm>hd%I98=TVc8|~nb)4<@VONjT#$(X~LhCAy zelV~Wxnb^5*v_VS(6xI;{+6c|tP2N9o4W-o-r%G<6NRy-O2Gg6ccaif;#+oR$>($(vt(XsFf zN-J~grBsAFrp@8Rn{E@-0){+lt4W=V+ofqUEyFUfY2LCovV)V6+F)za{7IxW2FV!N z%0TsZ27lI#ou`WA)Us&0rgAkmO)z?g&Oq~YrwgLiK3fYB&J=*+o#0TWIoy!&y3~O+&pdc3#c@a6AEr(3e;U2w)ihS z#ClUu&|5DHt%rX^qNRW5_Dy_tl1=ws#oE8MYwyPROG5=#_II>D@!KwdWJMHE>|Aa> zzfzLi-Jh;z@BEEP{qS;x;yXkq>#4A}i7x;Pid+Bk_8AnG<3P06P$;kUvc7IA7KSjA zxsmFlfg^brj!bWbpKjDs2&$K`W~4kh0N?ZfCae^mTRiE&$V2N(qnYzGX|`NXTPad* zb{R3(|bnwbSg#BwYA#~!Z6+7G$VQvN(h~uBm6>!Lz^#?s+z%+uFItv2;U zz7E@vAk}qajyyE`i(X9k>-pW=(z=x`%{%OIG~ZBX@`E@NXOVvws=7F8gS7_HkiOqj zn8RO^$DQcEA1Zvlx89%!W}MG|JWaXx^X2my&!iV@ztV0Q!6wc~hgn%D*_wK}wffCP zt)EV`3Fk67@#jeUEKN>6f33Us-Q`+*w~9p-{abfB2PeerNTU%uiY`ptvKJYtrN5xA zK~sG-!kXHjCZf#quxM1kwr*Fp=%>n|?j-)TV`JdH7_SA@Lvhc0q&5ryQUYBdNrXv>Izrlrd26Edee%!p4 zd;9@ni*t;xwzEJG(njs= zXgq~IiJA$e#HuBnUrn)P3zQtV`F_M6{VwWM8u#zblP2$Y~f*pyC- z{)J;@FyQ9BbF!?4^~5p|d!nqg)*TC&lpQrp%m11MOt25%9P?tudk@skCO^UPih>P^ zeQuJQ?szVlHw#Znjzr)nvEm7DaZcgs(K7n(w+$Yw#4vaD;)h`K>XE4`Yg7UPj7ZwS z4PHe--k)6lrH^MyaXR4D16TybOO8mS$S4ME7=7b~q+S^nTTD9FMQ!VSx~B-y3A z5^l0ZdATf`928BGVHRKEjKDti(7eRfcrYZV<-x*<{2h)~BVF;)Q%PpDvM#96M|NyQ zzXqyuqqZs*a(UilTK!r@{2!LG#LM39Me8)y9Wg1#DOP)D=$ML?Pu{BV{A>RlK8Z}= zSDHrIF6DxZU)sGlWCcsJ@o*KtlKvm2-hn-=aO>8Nlg75w*tU(vYSNgE?PSHaZM!kr z*tTuk{PKSL-RGQtu&!%8^TC*N+~afsZNz6ixXCNKif7*`59c#30Dm?wfln6cH)1tN zmlH?E!LbAm8oN~t$1e>NJAOK=-uu+oy~C4~1!b{iyGMcg?~65h3OTKKU~FXJUHu(( z2AMcdzQ0X<2c?=$Hjyj&V&jZ};;4UFKPwP_N~iZ&lgntCT33)c+!g%z>8#9(F5AGp z!q(J40G|K1k$(xxpk+L1lm=cK!RUk1-+hBaA1VgAg52l*km$_%@ax!odEOlNz;Qm- zAND~wl~jfDhSkmyKZrI<4tDhvHYLW9 zU~-(Z{Uc1}&DcPV4bpY6^{Jwliowe~avrQZvo!W<>tyAXl!v`#gc6L~>yxceG~vgx z6VlVYnYm{!LY;6>)wL0z7kH|K1?gM;lRobD=^1z-# z2|&PKbqNn_MobNTi+Ow4cXx15e!$gh9~k%1TGgne{QU$hV^=~kH|s|Ke8YRVMWOn! zS46{LuuX8e^R-$1!Tp;xMrNmP{L`=Kuj_qZr988j3x6o1>DftOrJ%alAOY(E*f?_3 z!(ct}YL!p1yctC!QBjQ9(f1M~iWQnh=VFhAmVV;Jxr1uyb+{}u?e09X(?2-yWvrfj z4!_7N6-iG3{Pi!iC_V1UGy|$e68-y(Q<^WO+(M10e_xK^S`BiD}eIQdoJY% ztVF#tpsz*{3loP??L+=B@GJx#4YThzME27czOzb)WNT-7U!S?B=XpKvryTR;?Ag>G zec4+B(p)ljj?>X>oPWC1B%b3wuOz=7D9l>Jm;M3AI{)h9UN)~f`s^pAl-w}iuadhd zauD{FgprsYGbjVBX|QB}JpcS;yN?P5a5q-uA?-0EdhaVh_N>_#|1fZ3vX;k0bF@z6 z`Z(&OSmX9zjJGbc*t}|nGX^d#aUiqTd0Rq1&|_(J?se<0$pjd>ISWZ|ihkyp9T)(535qwv$@~`N@k30hW|$i>hZgbMX{>q z0N>@B7?4+R8$2szPt=FXXO2Wk9UAcW?gqIbtL;U&>#Bnw(zNgkC$d!v7nVAQ{bp=9 ziR^3F{>=w+57C|$7xhM%Fiyeg=KT410_6QUapwSx&Yv}UTXwt) znedPpC){YqgqZ+RlQe77`^$QYmCT>CjC%4u`Mz3Kuy6QsPxomej>;+9p6t}V-?*uc zw7fQsub_(jpK?=vbaPlM&pM2u)vMzNkYp-8s%MWx!}o!!Q7VIma4@R$Dfd)vdH}&4 zi*JY(DAfhC!vPHiPrBJxoV&+fGn8DezRWq)RKlERkRwlWzL3C}QzE}B54g2yH6d;Jr24gq$z-usD$ zYw%HPO}N`>RkO0@#-aD;$NNp%1Pi%Xzx6nPy5l*1UzeftrDqbE7`@2y_Huel7c33Q z9rAwYJ&$O(PRcVv!07W|8Gtu};+uBDj7<6Q^mrT$gk7l}oej6xAHb+n$2PHg8*>SF zdvD?NH_<60O^Cf>!5bc?efaS|U!dp9>0`fMGDLa12d|a~W(X5;8o7PpYBChfqICfb zF7_yJkGMyRERfX#sWTC4Z5nGf*9=5t^Sj#P^cVIV8@OyRr0irlN=wCaqxtQEKj3mo zm@P5aMoZ!ZH`9&+=#0nHg&}BCwbS4hn_jo$I!hW3K)lnoH;<$9`14Ql8wZ1Eg$~Q(4MY&<|q7CH$RS$>h^Lu^3rTz4)e_inj(dE7 z-b}ZP1sPG1E!*jlTbr4gEy2AP#ksNNy6K+6A&Doj&X44!G~m6} zPE0d1{$ymD{R7Q5*1NS5xGh6FT;mD7c>IBH$YBq)1v(J+c+Dda^V@WhERB>rfNeZi zymxMfyxmpBY~AUF`Saj?^w7km>gRjx4299-9&o)2FCmsD5ojW=%Y5F^Ho%1iY9sNx z9J&k5 z!~l`yCoW=_w(^X2LRIF62a4GvskQrF>cGdsosq>UM2=AhpHxZ?xzLw5iZB)BaJ!&! zyw6H@6KmC(sZo+;u#pXb#X%EGqM4CuM^bubM~!etI8wb^y)nIOO+&a`;ST^ixY_@MieN!#Q<+tywgCH;gk9O_>>bM6~210L61Wpu1l(?#hE4ac&kiy9U>sE0{Xd&3N;e?R?d;xpB{zg@c6K zoT3lXcoP`p9bpBdtrYkn?;Z2pN{V9G^bXR8dJ7Gvs7R^`|JB!{7&zV?ky|CdD_e5G z@fElvh^ajGWBlhdJr;>K@1X#a3$HrOd)_ z6;DFf@Qy090;?p@Zr9y~6)=zfV6F6kT55BFF9fs<@Q5Ol@buO5G_;Uq7r3Q25ELFJcs*PbCYj|#${7jyK`$~}%dy7W>Jd7B={Q#- z&!o6P(D<0x+bA`-HZG6H0Vq8yLLBwG$LeL`9|^sFNaU}*a?yO6PitHYjNets zWTAm#S~U6FkAenC2ixlv9Tvy}r4QB>gJ?xuxwybIf7b)9-#weQ4R8O~YAH*UC<^St zS|egZ4|hBoaYZPH;pk|JqOE1SV>klJdkuv9pe>S$>kDREQJz+HuDxlW4UqbZVKo(x z1eI4Wl3|9LGiow9I+@+G&uIUp+@KrJ^TZvR8!pYUOTJ5r6wVZV9&qgsIEaEF^*swh_CFK5CE9}*KxJ3)cf03S|>ePw`rnd^OqFaXHc34LQV$)V$ zx|wP!z`LTvFE)~v3%^jk!s9GNn9}!|veuON@OscVB57N>!!G{Os}4~wzaH^d_d&tu z5%g1k;@$6?9%Nh*(6<@R5$G?2ON*_$WQvtiLg$LkZZQ2jwuq3K!{@+vmwW95@7(9h zT?2|BhswQxK>k#nY6p_?g4Yj)s$2d7t^vg@RvBIh_|OM1Jm!nYNh$;)w+=@5oc?R> z1C&v|lg|P+=s{p82byIVG%e#=@UuRsMi+hnU}zIOq|6QN2d)0%MVssG719LvJ@Ci! z`oq1B1nsY`3ZSeZi^<+y`+xs`us|Dt+dh8Wvl2Q^^pZ2vc_gos$5bdHn%A`N@O3w6 z0BAbBg66(&eW$ZaQ0OCe4%ml}bGdjI1GMBKsbgaz0ULJE@RFhu-f#U*)xpeC=a~dC zI<6>{;*dZqiowNNe`Z+3`a$uoo~M+Sb5Gev=T#8l%!MwsLw{yHyCyuwwVFhrIjKI` zuic}Yqi2j*65NG2zRNn>bP2Wt?`gbyb%2Wf=d#WBxJYy7}t?4*$Bv)LqaQ&p$~ z7yc*ns|{kX3)JqX?$tNwSU%$v>6kp5eUJ@hDoHe`cRM|83&;!wWn&zm4!A0Ad;5+BhcF~od11VL)VRtjWInl&z9Lc?}m!{&QeQU>|~ zw6%JTJn`&XZr>9f&w)Tifdub4StfJMJ~0GT=>qrh9N8{Sa3(Ye+uWk;JHiA%JCby$ zyVY6@NE{}%1t@@5X$32x;rGp05eup>_Lkbc5p3IAdogQzc+OwOI_@8ev0EY50BK+O ztvGGIyfPmhJ@(eYU-o(vb2&VqvZ5Q+I0wNh6GU=HQ8SLN$|RtqZh%(clzS6TB9HDR3JJgMURFKvKHE8V&r^FX3P7d4rgv6~ zga%NgV}T0GUS0ww%aDj{;{OiehlvHh&OV|dZF$?RWnOl1Cxg=FoP+GHs`GU@JGK;! zmIaIK9_`PzsfDM;c!l2;$gtwst0s;p(GHI9}M!sgOC6`0w#&{_573#p<^O@Hu#) z-mj!Lll1+rJ6^JztNonziWgs{^np9?580O_P5t#$&?Vamqa%w)M!G#dc?UsiKj3#5 z2Z_|(yrAq5%8YwsNuWNhj$#j3$M$h5oYc8Y!C()#?t~BFXrNFmi2PjISoW)0Gc^HI zchk}Ivhmw_vI*%dx0KW_PIoW@IwQTEatE;fZ=QjGGa@p4B3ErYC>H!Lq9IW}|ArsG zj8ONx=tS^|nysfe3-Trg&P^A$JTH$HD_Bq5v3j#nD)no#tCaJ*Lps%&?xcPwM^9=C zs+^Wi+;FmfoID3x(Og2olselOh!40t=;Ed!2bLcGXqf2q!vF#txMI}1(sQbmx-7vh zrRc|9;KCKxH>R6uD-uR}_pBp-d+Re{ah@~b<-4afibABOZ>#$bo@r31-Rs;7whP}y>_RCmtQLKLkHUypGtNGhf36Wmk%ZiQc;X`E=&(PH}<||)kYUT%#vRmhwNn_3$LPkFu!3Mg-U)yj9jl-Y=z7l@^&n84l z=nL@#53fRYTaJTI3^2V^8CmgueDStF%=HniA(={dNdhiNMSV^J(F{=LT857k_@`Pb z<|<=DA173TsH45^@CrzjvX0_A_#K6DuX0^Kv}0!RT@~cnts&7!HMfXGB@f;-d;{=+ zHtkb?LfBPX#J+$_^z!<=*988-2w>LP`Pu(TY*v zLkmEW5g3pvd}*M<~a zdAl#m{j)xS&%UK(l)6m?R6&3g)fHL^^%{l!1Q4WWYUdyqkw3co3D6>_#R`be&eqA0X2Z zAqcB)wX;n@-9cxK44~6Od+^2w5 zOqIz#k~zV@PqT^I7Aap<%mO%E#lOv3Owrui^J#-=KB-=JPW0o#@SfHB zl37R=h}~Abr*ukNGnvkQ2J_|vb?W+{t1#*fC4dTCL@e|o1`YwRgZLJ3QMcZE`x3`8zHu!7Pe7RDZmP?q!o7zT1G2N+J(P??O2ru~R*Fg+EdOd%8 z%mTbMOeL(CR`@&bCM7#}p=R@G#fgCH7b;ECS~2UK$ZggVC_lKrUHs=iI&g#NX__d( zC4h7YkbD+fczr@2302i)icW_9AFAri7$K|#HtywZ+(T>&l-4-RKJY|-kgw)YduIh- z=WbXrEtxqI(cJnQq473oOvE1d4lfv0tl-CrV~nFwNk;SP?FjNpDhD`zMJ4}FE9PiO zQn+0}Be;#e6gY5@(Pt+3WR3w%o&FaC3Yf12u3k0+Td9~j{QsR50rQ^BXdlA7sbpFMg|#2ZY5R!-cBqw(fquTo)dI>(47~>lFosfGd!$J& zCPN`@TFokHAZl}iHCT5ico5uzB8xByJ_VM|)y5yYnomE}cL5!&%BCtoobVh_6@gFD;%5a4KdDfg+rl%C=(|M?{QTSza z_}Ck?QFc=ZYqQ1(GewLBC{O&Ro-&Q_L>|P>X<&B4QjO;h;d2W&DPxhbezYLcum7YLKpbk>3xbRDBs3y^lI={;?o1_$2}O!`D;ZHATWcpiZFd+>{W%+ z>irx3g~(r8q@WsFm?z-Ssx3(OsI~L@pzJ&^{(qzBbEjb{7oT1A&p58ZhnPmdvRFU+ znbXZ%)@BKWvmhlx829?~C7?98A%bXO#5L0Vo*oK7vEup)G$mufILlf`xv_v`Jy&SjOb#9x`4-C-_Qw%8ai zx=iRMZjB|;ly<0Bsf3P-VN90){)fb@blZpxSl0h&mjK6bLqeEaf`05XIjZlb{pHj+ zM36Ahjq{I@aB>Q@vCTJhpuQ1J$Lf)9r0u)^2cv)PFOal;0=aTxIN1GvH18SelHYaC zyx_9w4ol3u9xrB9)o!QCF3QauqN2aHnQ*=!3U3QLK``g5WvSu_Fc7Swv`TyYoOy*k zz;XJi{%-crHM=cqRS_&pxr+j%D#P@9iiE;RW1@QDApiWg*yAVL1gu|^zNka9-S9S1 z_?Jj|Im`8kQ_&!Og*6p2uG;DoBxR)DUghLdN^Nw+liQ* zeSbwdy1UD~p@Gd

    0%REu$cNJv?2?G#jv^=`7sAT$RyTG!CY;*Njj-G38`UJx7&A zgfxP^U>llFZVM|26_5Mz)8(?_!bpF-Se0H0dJJ7O=A=8PC=zdfif28k3hFrnkd;m? zmph&g{x?KkawMl86v!fVedQ`RIJkIJw%Tk=tKIR{N*GDpr5X~?TYs{p_S7L@VfjuS zD4hPmr1>ok{vt~cYsle5JYiTMMN21Fx z$A~Wy95Id`?!4{l+is5?twd5i;N${9E%))}J}?E9;ZiekXxhG=WmCMWuwINMc;&w~ z+V&iIX9??#ClU1+Ck8ir_+Q%gWbjjedV=}3?mtr|EIPP_IP=y%9_LTEmrjmQK+eTK&zkCA z1rD`kWrL3M+Lhq2(Vx;K+bJ|Rn%=&--qML3EbOwSzHB z6_yBA)@L5>yNn$^bIo0=3KE!_pl%gC}<)89M{y?0*CX=TY9PGZd{Qhxv&jv*;$eWg{o5-K-f3bnk-gInig zYf^m;>CP@h)OY-qn|8-3@s&S-^zy*sQo~_CH!1;Q`piGz*M$072Y++y8?z)4$?p$4 z$74{nb+!teGfmw|&L=%&jxI2mO4QO-1bB5Be85xP2D~D{vn8)K+kAmAP!^;i|K8f8 ziw~xE)NZuTn&kWDa4E_<&nwS|QPidKRu&)}T@jq$Y4RNQoJKkls#l$x;d56)!HFt> zpB<4mmrqr59(c9)IRA`Dzw^RB)<4NICm|9X(dGp9{bI~Nx zU;H%834AjbA@ddXw}DdhPx0yS|L@v>2MZa15@C}WFBRKW2My=C;+Rlox+tD_83Iz- zeaJhF?d*)^qGr?bw6hI=)ti*ZAbu;III;>a$oyHd>3aDu!**hF62oz;gH9dE1S;K$ z9JEZlGP_}^Y`e{u^lFzY1qDGe^tlY%4;PS1Z#APN0*E}JD6+lS@MeBHT0*-LhH;iag9)kORqh6d+=a(55A@v#6Dk+KwizL(wTfwiQ)+#Pu;+X8mcE{Dz!*0kPDVK=l-M&^1aO(|L(Yy2^*lJOt-8wklVi z(&~_OoD}og1)~jBji3A1Ga0xi^i4Lo6KvEi>T1S;ZOxt_R@c z&A$GDe$6-rX4xv=Iabj}}z?|PwT0W>qmE%D@apkBmJw2B$eW}nxm;*_w+D#_k zf_{rx7LzQR83dup24jd~gZc<;aTr`)K4!2|}lCquC zh>r}_M7jzulcG6~%hb2{rJje)k~QRfZxtV-LObfNtw(g9fi=%67|3R(?-GkcSb;G4 z>ldz~QVR{q{8kiZ{=9UOCc8bqQR8g5W=W9f-~eJ~0W@C;7y}|8v5>uuVKw_$UXn7? zV3=?0gvz{Cp<^i+1-ZwMv^o6RP*)fQlV0b2HLcJ-I)d){b{%Y4$0j)Y-P4w&;a!AE z6*1nGr5+hPLUc#wsn?X?Qi?#y1a-#BMrLjKpn;R{zMlALsji`f4fO>cCTVoe-d?;I%ubU7wrF$dlm=E9K4@f zT?AiuP;xMY1?Y^n8q|1WsNScZ`~^dl#vuz&mh-B-=sVSb{kszzT#dN=6r0QhNe$9| zToteF0~ABbW`&mV%={toLuuOS7TBbQ1vz{KOn1}#S*WWQI8VelVuud<8=)uoL`jTHMd{%J}ngYwv2+VhI{Ycu#I zmT7k2pRg-0)**kB$Z~ue<&O%ePPPkqg*I3nFF!vwE%+_6;&sjYa=*-(O-LyaFdq(m zVbv$_H?or0z)UrvF(tFoIf$zbWspIFwnIncP11(#X187ae)fCY-qcG3XIi zGcvp!8;NVa*@vXru?7k%D_3czwuqteh&QUM$3}4}b~_V=&9n!`Oc@m#`9r-jg9|}A zICnekbGe?H7sb3k9R&CWu&4x(yy0IJz(@KSEU`LoTEC$0e~yO#PXvn8*eI+4SV6~- zSEn(lgn|{JS)y$(xGywZ!pRdt)CRGq{Vu1?_w;QIfQSZjiaQcAXDApQjKRFYT&oeX zaiiQ`7hW%Cbw(Vi4}r>W_Tq>86k+@cXgwI((;yh@ha2g?!7}GvR_6SBixBdIqISiU z<4kyp*J=|11^+EIbojxYgQ8A|i+_{ZYNIupt^KhHF746&7+HS?ATzJkm=2o|#GWni zkeLMf0eGuhQ!kV77C@!BER-<61g$>Rvl`Pi9iK>_Hm6Zg;g_`$04#A_dn<1;a(!s6 z9)c+T-Xt5cYVa6Fu=3o5SjV2>Sp3Di#Nt&$Azm`%RMlLTriE#)I5f&%5{rxob#_w( z;>(m7kyf8Saji7Iy5y3oc>oX>`8_NPc?6+<+m2oCSQwtG{q5N5so~<0mf*Iu@q_;?6 zdus$uocacbT4q(Wfe=DZ7VF}qchOZ2P988(PKIGnOBzms_=}uFx0>kf$FfC)`r#Zi zK*>mpZi)3w@Pwn{+*M&4d*gzxy)IPh+TXmuj1u5Oj_>kga{+@>;Gs6^b7O$mi10_S zSdRnCT7eGoIR(x&_&e@kaInT0;PCG#eCj_lI0}&)0=&1UX3;UnIg~rsR$X==2-_m> zzT9|1;)Sp1rU|B98WMHL?4zXi&OmUg-ojbI`79pAHV5|7$qaUdu|x`vVnTnMx@k>>!UeL@;kgT+T=ValpP3(tWx8Kd7QiIDyh^bpLXiSe%iHeL50?;Ki+oNUq7&H zHVO}Gbat_-3DEGLz9rk7BHyr1;?SNlTA#WI=-Kx`g>;4RaDYgxVhV|5 zT^>pZjb2$2eSQs$KA13C%NB*!icC$)_ju$rS;GYmZ*i-A1p4ZuncT=u4L*F`2;&>J zQRuV0O#auqjs_GoE1c?f*tR-Hd~lPAUB4q!W?B4>9MOMUAwK!NofZ<(@(|ezLa@71 zlVeo`RXHq+2A(yHkl{e9yx(0aFd1*AIzp0F^n|x(u#mSfnmjxm>Eg0>YgnIi7g1PP zfs$xNef<2~+9e!wg#V;#nhOyrv{i#_j!AZB3n@?Bpmm~i#HwX zzq&B+K942X0#esf_?~u5J$^{nMY95{MW=Xc`I9%i9ct-*6BFqw=gwy1%AJu)n_10` zpMsvBpmvtZNnt&f=Z-Id6Mi=EQ+|arQ$13OdBRR$(*JZJ$x{bO%6A26h!>xk{eBTrx@pAcr4q@-uX%pIaoBUBGMnTyb3m!H zzn8^(EM1b*jkH>yGP&_bMH@zVZ-u87^II8`K@5<3dSbJxt^Bt>dG82qk|(3%#ZiDU zvu+G4GkBUCJPSF_9>1hAq4u1P0^etJQU9{!5$`@&CbW2TKmI){UluzR8U9n zLx`1nTY*D${0u96Lit9{9K-2bPAE=%?GwN%5KU<-Nn`!}xYAmV8GP)M;A;*k0ICJz zMb_0i$SqX@azkq&Hdy5sl*V?XKkhHDQ7~kK^`Om~-}7SERyKU>|! zd9Qb!Wfuj#g+r+Bx23NKou<=R#;JR@)o;0^exwB7{w~)E>K0j z;NP=7uA7~<6?xrDY5vU|omwkfWe*jK=?Hn@p8Lr})|(m3X$ zW@4`q52@W+WamBQSpm+I3PhYCs(**M(8F-}^(JG;{`p)52-Hy(%}a%)kxIbc(PVUf zp??QWZ&qa3j$-gkry6r?@V+cTp#KGFJn1N>I~%=gr8sv*?nD1fr^P3ut@%_sqWhL= zSo`PID^x)PkeSzuC^`|h$ z*fb)4&PXWzWW`utCgZ?H>yh-~@865%(j0pBj6x8P8N!~12Htd#|`$8=(>%6>>_s{m#w0UhkkzDSuR$?c1Zlw7c~@2y2e&u)_>&xo)c)n( z3NBg4#*RVaJK-L{9PC7WkxeDaG%K_Swc@4At1I8MG0z=?~Zsg`CmPxaiZV;_5z}zAv4B9-? zF?S3tQIXmGhs2}^7BOHh0T~^&K%Et3PQ|7!zI_4sQ3fzL`3smDTu55ypfjxfE3r0K zoVO2Xg6efesM8C_F#a_S_B?ODBU0N}?YdFTKc8UeI$vdP3>hTY6C1B0{} z1a|0q8wm;%1MfG#zc&LvB8iBHe)qb2Fty#+^N~Ux67ShSds7dN8)*^p$v)uW-F%n$ zNRj;nN~%B2Qc`b0WA(AZdLsyQni8DfJGqY9PIRdKSUwH{$VLkjT#>BwU1>Rbh=<&G z%l;v>G957Hs{!%mz9Nf^TlyO?D zXw4>?TohpPLX;QKcH!0S37a2slbo&cg=y`8!ob9ukXGT2B0^V5Xx4M}1TDF% zhUU6n;qDBWPko|gA;{=^oERv56^pQ{ltPyZWdY)#J6p(1VDwN|{T}{p*@e+u+#qf> z?V225!#Z(~Gbt;>W=eF}<^KEVEj>#>mp6^P;GA>0FMOG}^h#pp4!sN^Bq$p7u(EUp zdaIQqVjkfD)H!Kl775Aj*+~PW%A@kdtjk%h-_Z4gm=;;9@O&()7GHRLr7pseL9z~E zf8rbO6u9f9I%*igb78R1VK1Vr%7ToHCz>Ib8=@@wLaQ4CQS$!{_?ao&2yFdCBSgf#%Ss*;1x}ogXyWb;ODfbYd8?y@h9~K)#|l z<|B5;|7md3g||DOi;u{E9c2s zDyk{>(?M(3A$CWwbsWB(I;AhtCR$Rts%U<5KX;Urky>9AW(?Y$Xw|Y!s_fEN3|%kA z@y%mYMV@|)prHS1a#}Zh4VFlgrtjYHjQr;i5+Tnf^NX?m`_uym9Q#lt|G|>lm#>s> zGx(c}=*=3(+UWaL+mDDZ_Cfg|YrdV#wE4ktwXB~!G&vji>!OQC7}bAm%0zkQ(0 z(ZtHd87o4_o$!5``L7w!eQ94vmksgJd-vI%(Vc5^=46W<5m9C;;)2I9v!*ue zWMJEW(*SPM={BEO8zy-dz=f z>f341S=`PUOg&<)L+SV57>x1fH^mVk{8r$1EX?c*isU!WWP-)Xa0!F%{0$-OnNHzD z-NGj#(g$wq?U*`7H7>?WQ=Dt#TGToDn1@vqkFcmf}qTM2pYg z6C;!Opmg#YP=2g*uxoJZg{YEDn6$vYL~0fJ zmL(n3$CUc-=_a)!gvzWAVox{LF?P_}f}cUGc2-qe>80L6|XA&)#G> z#kH^*u#_T9^P-Ann)A9Rw^3e;RZvga85NzUu7AQR|L2}Y+pnPDvUgbMtZf?}-wcZN zHtgRlS{hr7HaFrs$0_Y#X>Ym%kKtGS+w?{_BdaAuWZhYCH$CnDR>jI%g!8o@j=Jh z+0pN_6a%3q2!l=}sUe6)@~HOZ&dEYc5_0Ms40KmXYpT{*p7vTuXG}w4dq1&nEFH3g zz~tMp$P)>U)QleYb18h}n8($hL`5l#umr-ISwFSvxRW8#=E!+#>tyaSY@)&L8*G9U z*lprK;ao4PA57p7AZ||_*mya%7Wc~gW?}k1ztiLl(-bNPLo%d>y+e$M34>m>qFGiEt_h1 zdZIg$GtFD0sVzx)e~~JD;!=^t~-0`ZKBe ziL_Ver<%-Vg&y6^>l%g~Bxum_diC{#~GgQC*_j@gX+A%E-y*E`)xy_o`B>1vyy zHULkn9O{gmiU;&VUKn^?rT9}%5=I8NhgNxr{>Wb77$oFzy8=1i1facNk~5BHb2^4= zK}~+BM9abKpwmearc6MYUWfse7_PjVoZKLZPR#PSpo`6Lf&E|{q2{Z3)f1!q{Z%t` zbcqYXQ93ujiv3nsuh7^nkP)TEIVVY|Zxbv-{oM7pNY;EJA2FwSe*B~@v+Q2qPC9}o zmmK3^+i(6sL@c-BMad!9Gawcy7KmpyHz>}DFj$msBRUZ~WE_MH`RfGuE|{S=r>rbhV_LP zzZV%^oxL@bOjqM-+XDc=&q&+1M|GQ3*F*AyPp(}g$tnK8zph0);C|Ua#$_|1|Ig*( zC!G6olEzF%=bh~ABV~>w;(H$%k#tSRgH~J32=s>IcOM84=^JccXukGgfh9-iWXFdB z1>S(qaZw@(v$HkvP0#bByD)Mtzo%m~AvI`Ia$2x>KPf3N-~hJ@+CQmQND+sQ#NU_3 zoI4aH$lOPnzivhBSMpVFFh9cIqfM$wcjI<4oIjqAHXcW!M8bnH>(ZZ3F`q)0-jlCK zTX_Lu6$^?SNf!^;R2Xs~NKTb)0|9Qyk}LjIBhdGYq)LuoOK1wqXB%r;97`awy5r!V zliRY*$b0ZAp!Hs%xG|g341r~rp^ki8KODpq07)O;!j@)C16^*t2hPl%BXr~h zGldRT&}2EYFJP0^rp5W=bR^t;lA3ZBE&FZmiW}?K&=<9Yfq=)&SFjFWq58d@_9!{S zW~_{h%{b62c*gu^Ifs*cvXR22lg}1^NV5l8$(rm9u%S?F@1A5dv#voYK=}VL^%h=H zhT9t`-Hp=SNOyO4iGZZi(%pOrNJ!^^bb~ZVmq>Ri-Q6|BzyNp7Ilp_?{S#)bZ=U_` zr?&HVw^=3V!5EB((KJs!0ep9`MNuNXL(=MbrHL9I#Yo^xczK5%Y_53t?0?=)^xV$C zXGUI!`kWu%{_dlxb=Y@DV>(-IV#@|*d6!1EIbJ@Gk1#ALUER64JDg+-RQY&{bpT{&f z+%Mu@!PSP3`LxC7Zg=E?`GdK|C$Af+Ar_B~U$&*xHvgCj-{#AxgiqI62z;h!NbWYJ zRH+!A{q;raP*6r8(MlEC;1jVYJ@^=%~)y;_jy@QQzVV*>XK_4_M_y$Tev_* zAgKs6D;kJvc}wuQI1)wBw;MH(nr>Z(w0)p#|E2&p=4K|BEJujm zpWEM4GBTMKw_Mt5I`A|pX@>7s3f@LxK!~#6jEzfF3GjqJo_JW2I z=7Lm+#Ey-LEZniJ3ok;Pp_BTqvkPxKsErX!Q@Ny0DEuGWaEqm$z#5-68iM(+biFUu z*S6%`NG7bLF2lu)qS@MNnp4v}xFfyvBgTkyF`nb?y2_A3`TkSh{5mR%}WBR4hX@g|11poJog!wK?sj5gJ>KY>1%urQ$Y8sLA%cLoIn4YWj z{&}zCaF}4&W2wBaR4?(@*5}K#mW@G#KWg}n^fRumACD%*gpkMe&J~v0Wj1r&jtzEUq*`SG#V&rQQgJ}-MhNIUP-J^LBqv=8s7?wFl~SrCt5q_bt=($*e}azRIjvP!w6CX6yCOSd~uf4kyuj z=b~Mv*xjB{QU#0DQQxRi`#4Xh3Z$qgt7r0BSMNHhZF&sWn1WmRrqp|O+6bng*;6Vm z+pYc^lI^v_lR0oWm37FqD0nNbB8lAJf?nmQ*7rQt2{t8nR;RXtd;qG0%8SJ^LIA#- zr3if${lFr`%@S}M$IE)#kWcjWg!U_I5Q194Log%42bCq=@%ILQRY;>d13|bU>@GFF z^8*Q6Fr<(JS7-(Oq5uYwct*?pT(gk%g7&&1!dFsxb=Ik*`6q4?$+!*lmA z>3s{anJevDHkBz_10egeWWoiiZk@tGc-a-A;3pp051JA~b-yu8+%&hFw8r$IK?t-X z%El&{h?ETM9Vz?8n6AizW!U?V=hQrKZDCHX`*8b>>%?1w>8a<-%0ripD`HOwbytq$ zJrwh>bLt5yuPV>GO@9GMd5x2}&0!$*nzfnCr0{;qqpY5f20U6}J7HDQsmZT+tY$_C zXse7r@Ee+$S1G=DvhMqGqZ+;VF3Z7;#vG7MnZ|V1h=o)q?a3f;# zH(!3)|0yOQ5+hnhc4IUls=eu1>gF=MD@q6k)2k}l*@RtOkI0`}?dbgel<3Ug?k}oD z-{^JShq2Om4fy%R+h9)RCOKz0gLA$=&o{r-=!@trdAE*-YcjY8k47Oj3Vz zO5m1-2+|fZnx4pJgKvL9%{|(L+rH7kWkp%G;)UN-fE|lt4;=g61PyC-Ij^@Q$M}E) zknC&`gV}MR`Z(cue$#gLZ{^TK>i#CZ@_y*(u)gRxm1V;sm*SlnwvZ!&Wk7|WD=p|9 zYm#008xAp4udz0`&B2cmi0new^yf*5!^`D?{VEB4aX6aV zxJLDS_zhn@oRThoFkqf+Q0rnE&$GY|7z9^pu6fDq75Q;Ljs~@;JlRzENFNwpY4qfT z_xq3Flv)h&;d`1bUO7+m$fBZm{dx#cQEv50r!n;fLE)#EA|wQAR5u zADhD|0oz1@F|*s5H2s>G93=W1Z8atL-nU-|U3e(H<)0^W$#Lhfq7?n1RhdEq)L`Rk zzL@!PZ=LQoe!nw)JCuc7g>&KYUTF<(``PB)G0OePsb%JXedu~;DB-HUNU7xPc*i>P zuvR;SO=b=cd6sB9Zw*3|urPunl=+HnyWl1lH^Kcnl=m%hdg#8qS~lbL$>6Jh(46W3 zBL^vMUP_{&RA%HyO&EA^Fy>MNZjdr54JlxR(Hz zCVrxdCrmMar{1}U7C7^0(r-NY;i@LM1wL;)3vB!o^5^3?R=2`%0aAOsC?@bttRV(0a#BH(9ZFbJct5JdT`GT4v3s*dyXaml~`nDGwUd}Pv{Z;rw zEK_o7_x2(KKLzcw5)c8}q1whSw37Wq=?ne4Ezzkqzlq|+m`iz;A@$SwIUuM8%582 z*e(ERN!^S4?>M#i`bH{WY209F4VZG9ujn;rrPNmp?2or+76|*8Xu4@lo<|@*K-yxE zcO3R-ElJ;JFJVk0Q*k2lC2Jlit-7H~c3VbAlmg29>2JBk^4IYLn;u5PmIbLXP1_i? zL}5aat&U5+;MBCKBYG?ye!rRLjKYLw4$>bvMhZc)vit~8_4?&%kZO&lPS=z*YV4`i zVb?cBX2cQNcD@9Cgew8cisP;I&0|4ptnT|=y~7bL0A;9=Uh)Dq6==;<(W861PAS1Y z0O%RnD=j&=e@S-tw5iqi zS00u-nkY9X<%x@EBJ`z`m^|CLd*TfjK)l$z%@qE*xbhBvEdf^$pDM;p@5+Y}{pXQF_ z#P#0O!@rU3pi^*GrO%qqmf~KgD|U>V>fM`sQSY*ik~7w%5Gyj(;n~y4x}EA2U~(H* zF-Z90P0sm>d!fl=q6Cx4j z3%Dr;CGr^BSXt_(BTdn9c=3yu=W4>duRB7XQ~!_VA6J8U0TQlj`<6Sr1pK{APVhY?ot=LKUHB7vb}FTO&XyUGhk1x&*||Zc z2(*OSJXT3&Cm%V#P^?vJM^Veg($?5H<2K6;$va1XX%?5cF+SxcKGnoHW0p-#Y&)}X z@R*#Eo04E^Y^%KkUom3!Q_g!OFCnZ5)COAhQGrF)R%r_Gy26?fK;&m*+S{^S6M*|C@ z*LBq3`o4LHOV+>BDBo<6r5|;x`Q?}?VzbxefnB@fEiMong|6kB=*$LjR1jC+GbJRX zpp*ADad{^II4w2jg$=x*mDB$IW1?<2pQO_4n`t|?aOuV5aX zmzhXZy+7-0m0ol;?w&5A+Yju`#5Pj7a^`rQw}D|@HdyTsdE)WGw+F$3(4E_btgMgk zxbx(>-Wv0UdQTFLX+p;Lekt&|uxcrJbvAb}^xHE45L55GqsE5@IoakZH9hRZO-w|5 z&*^U-i0|5Dl4IO^jfiaSQ@w`6(3OU~`P=PjvWis`Ch?M$>Ai>5r_3bSRy$G=20ztg3L$4{hWz z?R1h)_*1Gea8ZpO?=P#jr17)E+kv0C!*Q+uK+n^ipL1nez7<*o*C`x5Pbx_r z&v=e7g826y7l$MjL8f;&%M=~H3ytfEjhREm1h0ndg)K7e{)!A{=jjCA1|*SIM(wL{4#R! zbRLmDL#Df}P9}15Qv1qsw%kU47QYDptk$JmmL~<}={N#R-7-q662#A;65w?$DpseI zPgV3ZgO}@%{{B++gVdB?qOV8jBY`7*7_-91)aT=g*EcMJd2FkD^FUc8?=bd(S;wrR zLuY-#Sg?r0aA}xVaN)&}`ULH-N=YzScSU`Xo*FU?{*VV_Rx&01*StIj-WnX<>KEmS zxkqdgpjcnitVYu;aJFtDhys~_LCl!)Ra)s2E(Og2fy6DVRy1ST*!mSQfSqZvQ$YDI zI3b&apLGERC3J9ETLnFcqtR9B4P^OSuIa~psDG-gvqOx6h*e0TSz(0z((G^AhMJFSjSqVc!Ctn} z#@Dk-qSFgl1)Ni99L3Qf!FU1^mkT$OL5rikgJ2g%DX{ zAL*B9!snfYHmb0cI`5cYr!JUe=~QEheKb~K$0kGox{^Wn+y1+(WwS5UwXcgxd;yB+ zL&ma`$TL&H$D{!CHTcr|M}y?`_KhZP54b=q(QwWo!jKFHPS`ukO{{5r0xi0y`}s~; zahiFoAbmQWEHrc+PWu#lww9vt7OqE?DB^?5I(m|M7yM+f_@V+T7~{l z#ptEProMj|VkUol(g1gDJV`_+9xAR|cb19YR%L|AKhIfkNOa>EzkM&>z4Y? zV=f*{~0Y(&l0_7-><&;$dFm6BS!0!(j)}=4!uOJ zDS3UoI>-5F5vF9Wltd7tN@2AKO9 zB>p(VdOFK&o0IO?3Z5-X^)$HMOHJT@S4L(Y5zK%J1+C{Ix}uH3bj5BmG>Q~;$d+(sPi#WgaBJ-{gO~hk=pOI zseKmOMr<K%+Uih!i3s8^G?^!cbIG0qH~SoZO;H>q#qMdnV4!yC`Y zaM!up2ddeNT&)9<==CA*@H^YOM$cnq&yT^_Ea&b_O{2jCZ^c=L z_??+_^?!Am^g2{+ziyf8Zj;73wIuyqR6Q)w#UQ)Z>%^uRj`3o0g(g?$K0-nQ$0Cs3 zl%q#$ikZKD7gpqi$)%7KVDH?u+nn65EN1;6F7RR2eOO)SjdGZ1?KX)%PxxdPt)QD> zERADWXi<&o~%oi;Kkw4e0!7>a+B z+GeY?ta%$_NW6yL9G$s5^~occG%>)_)#J%{F|bWay(0K8n7@?R5c+)Rd>G&=G=IG{ zH>geu^xbiJ76c?kK@Qo~69`xW z&76(>ozHu$$Ws*)Ep(c-dM7eVv_y>Qg82)3FNBW{xoO+ixU6)Y7@;ugYpk*uW$L)a zdGq}-0@E)M9+X@^Teq6>nkKh;oo?hhktU{OtQyD)8!#(^uhV_|^nz{L=qV|A-BT0S zLHjUEK(+U;gx=Nnh{hh-IwY4I%`zwYEN$rv4-e;h^E0FiG%+ObPlNMycCD%Jei;Vh;8P`lzXTX@Uxg-fL6YSk z6c1kSgD>t6eKx?Q@|>NXejMlh$`IKfhNW_m01hkuf1v&4N$i0<5eYW={FrG(44(yL>Di z6CCO^Yoj>X(To*NS4w6i;7p43o10yKSXi((ZmH_|LWyc&0}dWJ!+`J%X=gd+!yV`Y z?!l?<_2n*m!xbkuq%|wt>~0IcK8fLk+VQB8pAt!_ztUFr9bqEfZDz!@eUOidc{*U{)muJ+&l)MKk|9`^CI69n$1ZY?FF)>`hR&;M_IH@ zdcEdSd!+Nj_p$76rR%x8k;(%rB-8D`p4JB6B@YWrCE@b~ciw4ifa5fNXk?(3G%ux@1CQ zN{BXU6(j!&s;GR3%P%_epqKRpVWNBe!;#LS|Db}Fo<2Q-ZO%EY26TSVo}Q=LKd))t zp9MN7e(c9WNa&FAKrSzeewOC%jyx_-eHeR{E1yQlB8q3!7+vUGlYkXOPPuZ4gWH}< z%#jgb!of`L)la1RIg4@YGJHs?yMb$9GH&{@s1O!S*3t+c=z&gNn8a7OXmt?KLGY;i zd`BBxdbY4#@~KUev6EsSB3yhmmxB`5aek=>+)M~D)6pd(AM4*BjLJrfKO8F67F|5V zU*umvaxYXMK_@N2KqUzX?VIus7)3r5d^&WvW?&+t1?zo1?7X2;hSe^!9VvnON5s~z z;)|KjYnx{?~fWxX~;(chj%1`@K*3!z8EpdsM)kTnl!Jg(Um<;EMdS+8ly8*h1#K@>JK4lthvp^vH8&uuUM((_Z+VYLd724o{Yw0F z1$ZNo52PdECu5eRNeod)-%fR-kPvNHBCQ86D{DI6m9*_9b7^)^n!!qs%N!Co6P)|k z@aSCp#38TZNe8pbw~z)IJ0lU>{zLu`QXtwvRFZDonbXOY_~VU8>Rb%b0W z5$&Zxb~e2dQ(Y(H_D7U6r6>jyQ^KzI=ICm6`Jo0&2s)Uu?VV!;_+)#!I2^D-?0{Rg z!#vnON-20`=jhbqBtQt4!+@pM@ZZj!3*gXtyPu^h$F7C>?OKYMs5G^R|0XaQ>7+>E z3kx9gseZ2N@Kx`h@sGb2WU*6MqS<@Xo;4egUFO5Kyx06Umo>(c8XGU`JtZp%R4G=n zOc{O5e+xWt%VMcpD>b8#M^^gvr5Z&u7!sTg|G2xo%X$HAoOjG5Vq}J+VdD>{jiz+V z-Oa?4kWrq4dQPpQS)w}d=`t_FnZ=WWAs_&VUVlFKshrUL`Y>uoYPr2bq_Yj5I^}=Y zc({5qsn)^vd9|ER@&!LSjO2B7e&gohjSqYO8oqaG>IKiapPDJ~a^Rx+=}JB3q^6_$ zaM-%_urOx!J`Zw~r*pkYJ5~ofuQlzF_q1Ad0Dr)FBPAdqntZ`g(x8x&l<51fF&9Yl z9IS(>nXG5)zQ=lbKfns)D&$%Kjcwxh5L$@~)gr}N+TVMhhvn2y9Q>6 z9|;C-P)0qb3XYkO$1_~ud1Fy&1u>~1DtKhI`j3-Odm!`Nsl?XUISBSu{+KdC=dr$2 zDpjTLnFBy~_QSW2JeUU`zmQIHoz_o*cPDhONtsAK+DdUAf3BaB;0maUQdX3YuC#wJ z8bL0sfeUMpC!kNE&FPU37Fi0kX}g&e8$lS`R*J-u-@_(j^fEgAnYQMb!{K)Q?fQp- zGKjJ;yNp0%!td>8E975G{NvnwOvOtv^x*^X#r+qrkF}*ezPa)YjN3KQ#xC7FQ4Wmj z#2<8=r~hJ?8%h8zI6nd8G5KddB$&@;Ahwos1XEsyncLg@vHSj*?dVKs9q*1(Y7!PV znOLS$ZQmC9FuUmRWcMYAvCJhRjv5LgcoWGZbiyBDV}|=^p_=<>>~E#&A!Al2+IM9s z*Zy5GjSsd9q8IW}QC{>wvU&>cxkkRWIvg1U?-|VQU>I~heFtpL2_i+8WamvC?Ejsn zD&}12L}hRuT)i+tu9UyLL-%xD`Vc~YW?z=8s{&U88B{VTJgcYJxI5curtqjOBX{mh z!eJkYYE9YxQCa&B{bcHOd+NwW1UGbrlEG~?=F?Su;)Cz{0I}4&oaigqH&6Tg{2Lc4 z-JU+jzT>gP^9QI3n6KkrJLJ4mjn8DUDIbFlTWu*@S{lYr*}tR}2u{5E><^tUf5G)t z#M>`R;Yzm0i?@;w!>p@S`4K`sXQxb4=hqiW>0!^mi-VTH>cDW56!)KJ!ID{hf+n6Y z8+>2(hRPe2_vi(aqk=ut)AqL+-EPmPl~h?Gp{VlYikI zKL}&&CfjBc%Z%@I%7vbK%>S^qynbh1XBN{zz5O+5D)_GPXtrz@k!1%0n>flY4ZbJF z1o*V5hJ(dPzEREEcd5jl#adQKdrckA*8g-iMIX=%G}JygUp$7YX~)MNI^F! zh&sJ{0!5jzzXkVi6AG0K3BJ$|56mKH=v)~D#tcSo032)S8>O`3NS5G7L6RmZu16F< z@sS7FjA+lQk0A9*@{LqNcHvyQr)bMJcsNCF9{?}Eh1bhLa^+#PPUq#w+oVJpSc|zO z^Zo%A9E7LkdaaR5!h1lVmY;ZJx+>_q+AA03%s)8ME0V8!J$v7T6$jVMw4T0~m8{`! zJgmB?yKQTRw~oNqyz)Jf!nqp37A{khuIhk4K?KIb~GZcKHYM2)6v%JO)h& zEC9uQ97X-6=vS`edg(~LbGdhEN1fkEn3F2p6VOk3mZ{Ohh1biVphtQYg4gS<43W>` zF0jq*h8{8#_xkE^n3{4ULZoB<>v;{harPgUqe^z1Dn>AnMYfA((YYTpd%0%(+K~4j zpcP4Cy_&(T5MWf5t%kQ_v0^r?zHZL|v3C>^_AXZGlzu5Z(S{) z{XDr_aZwZF-zI%~0o%%$$N}pXWOiMzy<-N8K-a-tM$%Ltf&Q~L>#rKrbU4;w2-}WE z`f0I72Ei3oyv=7AD@YLqmMrQ2(mEeJbS6N_Q68n)RH+@yvHj77E2prdX!J=TW^{(g z&C<)J-x}eve!Xg)b~w`&hft=B3IuG{ot#GD3?nNLd%Kqwy%y%zR_yrlQiFgPBsAq2dM&wr*~5nyoj0{476 z_0sW%nSfHqCAHk+0%oTvWy~a1iC%yXI~*zngOz4`v#xX!r~?PslG72tS+F<1B)v0ynR9f$cG_D)Q{WDBI_`E*C+d3AJh8rqgcF z)8%ET=JTUU7ad>n-yJA& zkJUUt^DQb2#?My7J4_xHZgvo70jqodYSQd&1ROx~P2Fsi1uLX`Op zhYmRSM^ij(nftoYNu8l7%r~$)Q_481kW>E^Zt8TSlh(ZY9B8Z%h_pRO?(8W12gDT} zTkE?#cX-nCLOweg$@`fYpa2(Bf8aldrkk#?|tM? zxao$sbcl~}5i~3d6`dyZVUu+-KoFlAEbIPFwZi*!vDfvIlvMoZTLNInJNO{yD!=)6 zo}_o|q{vZmY52F%&pyoI!FQ9Nob9j#n2>cPiz=Ip<0%K;TC-^&TYOEogwrtM^4qi* z+g93vi;FTBi-=%HvUHTz4V~aSD;zskM2)q83*l*mP1Z1+v%A2~^}|FDz}t2HJJjST zD|O0k<^YnWJF>*yKD6zcOyU>i&XLi}`trR44u?{FUgXxD~?w z`ZKu$v!|y8KgxvA9|`%K9>1IE$G88M{DmUf>=cnr^CF5X*S#BwqgQV@@Vfbq2t7Oorov`hJ<~w7)ANn?iD$Yg-4S zW}v2me=mU3h3$uu0uOAmg4Uyd;bSbN=S7TJ`XA@}#wwn_lDFZqqYsExwtO5bu5lp5 z85FWY3|~NqIB#ce+l08qKll#0@>@ksWhG?91)r-Bap8zSfFrH(jTzeT$gXp2|7q@3 zVbzb}n`UYZFLZMv6-V=ECfljx-Owl}rr#@OyKtXt&`+TkSb1y*fS$tyG+`kllB2gz zm6d{9hr|3()BS88M1bn0Wkmmf4x>?Tw3fzdKKzs3^n#pTu{w46wMo>BKt{7i?shV| z(2rQ*K+jt(XIa_BKt_$ta-NQV?Dx6IDT~f@m!2p!^l(oC-s2)^AdU`9N3&wSpQ2WDVA%c zx!Mh1QZvn~6E`%?=|KL+n_-u{*&P0dJ01lha77ylQe2UAzoela7i0TU!jBb7bLn0^ z($pi>e1||`EmJysM=hmEz21|DA`};U-7Hljy`ra?>RBwOgp+?mzip2&D-AQ1)s($G zjz<-9CbXKvhQmYk^eAiTXSMyXYicvTxPPB)YE1n#hyCL)`M0Yqx_B7I2(tEhdNNSRjMF0f(XV{{9Z<4gm^vF-vLtA)j4$ zAMY0n+Cj1W4NxShCwqTHAn&xC z<&CH$kbAGqQPgD`{H!k_m|a>`JFX-MLpEOPtnfAwfsbKwB(;-E8+ejGw9j_Q9Z7^i z+t8C^Gj3yE#_pM=RE1et$vSO4C-z!DE4UYvm{vUY$#Ok7&3`M`Oa#G~o0OigXhRv| zth#`3Xd+P$pKOUgz+tTX%UxsY#YTCh*Zi7xAMFQ`acI-PpZl*IKO!hP-rM`Ht@g_K z98N|B;$E|!HMA!5f0Z6jHW*>)O4fHVFf!7Y8{10%sC{lwH5+99=8o?7J7eg$Z7n+? z`(GHT2&@L``CjHqK&Ml*3i!4&36P5$OZB(=t7$)1(6lZ819Af)^ILtMeFbt`&ri+= zJK?`Y!))v-O{twlf6M=NV7XoY)^17rTpZXNG#0@yxZ%1X#yl1s)~@)t=M!?(?w10u z?_Q+iG&p4gmsm>rT}0$j@pd8RMz!Si#P@{MCYW$0k^etLk3v~qFpA1W+u7a9;c;cH zX02W`eL<`MFz9MJtJEd+5LTP-({2xRUX3?p_6|2AJKw*^Kz6~d@I^>bMxza zT%Jh7!tRx@wvE zr66&&pnaGujpKU+#1)q0vBELQFJzbPLJ`Z|;X#Aj@2C=*=;64nC#?RPe9mmZz6QC7 zh5T+YGP0nOv~*P9nPZ8|9L`EvV8jX$iYUn4e{*jEM@fK_{(wiJ`;U)o=~U1;x0e&ueRrzryQ6g_~)&DYupY&0-EbNNPB$&I;CTl`Wc6G9~) z31)MvtDm69S&sQ8Ph#TnTr5K-*D1aUe=z$Qb#AKcC^YT;!o8DsGy`E@q}|)q&X?+?f6*5#P=H zX|biMk0;A4H#y1-nCu(YWwm!4x}u7weGNalGr!-%o?FaqwOO6d&!`;%e=coEU6a8g zUOTA*Dr2_!y_=!o@ORO?g7LZbLstnCtW-X+ql=h32eY z_*eJ#+uHoR7uLctPcM!{Mp;g z(Y;i?L-L+0@*|jv^{VLNcawEA10?vr>4J9jWQ~%1JkB}v34VfAGi|(_74L|>?)j7| z=>$K#K1e0!Qa@c$Yt>>ucV9epPcpd_Yc)&f(9mWbD63kU2hMYJJ@Q33?Pe5Ug=5-z zC>S`uamu2D;5>)rTp15ZwXLTXnZB`)5)RWlWs_3Ki%G##6Y*AE7j$~;1}G5iMjuB4 ztt|h$$jdmlZE5CUl1ent5$t~3(Ry&!3If%U(eg9@b|BG@H3kWoi1>iS9|?S`!q*+%(d#wF~x@4Q1#X-BW=Cy6xB7c%%)FR zlH-g-Sx>myU*y8S-07&mmTxBIT2bfT$4js4VXlvRyjBtccjqM@lYVe(-YXNV!7Nj; zO3~zmKX(RfR?ZO`5;ooBu&Zhzj%ZxZoWvz-v=D_-y0rJddEJ9g1`F#9JBM?WZZu?K zWK)y_jCV0By3(+zc^F(4S=&8Xh3Ckwd`cL>`^rL`%|78dWa}@$uCeoCKCEveZ`p^r zxp(x>ZRo+eHn$LEHZ$E0lGpcfVO)9CUpzT%+P1USxnnNt%T~|^H}XBGFUnsI6H)%L z9sRafX5?(@9Xllzhm0;8SfRe;%T>ahCG``D|EVRF+^ZEVRFHcQJ*cR8I9$8Qg}G<< zVQ_Si2Lz`K9RXtw8(@v8B3tnrBm0F=Wfpmb`L{dbM=DySnCbRm#YV>g|9B_DV!F#u zW)gz=C609xG$9hNkSQ(u>8*qDxIJcznqM>x*hwa-sV~M1Oy_@f zeE}2x)r!MYrIx{YFLOX~?bF7KkpESTx%x%${RaCP;P=9Np(KE4x~g%t6CEp@I2`>D zZLPG@o{2h4-bJiRhKWes!_L4y3~e8_{Xs{B*U)w;bw*pgN?@}F<+38xcmHF`PfHE( zyQx#xg@*~jpTuj(S(V3`wQHS;Y3lvc+Q*6hFCWQtML}$FCKpnjD8KeIJt(zr^5zE- z4>=%O(xq7A$FL*kH@5$e<{dGSJ8-xzA#UY1VCE~a&E9(f2J`ImH zPL7m|f!Mx2owqunf9A@Eare>AZF@vtD1E0?F1|OlaVMkF!@3EQITw8eIr`6{2(nOu zFs^HH9VMQ!Jr3ayvell_ttNAPs6bC2&jG-DwKrZ?br_>s1X@%RYfu0CuNC}vq~8S5 zD2Q}_AGBMhJp6Jc)*)D)^sGsnj++g#hGNJD9iEozvfFEfI)6pRg-zy=%NG@vtMyXo z4C8C%_j2DJW8x!d7>Om-+o>Uj(Bg8N^z=P@kF09@l(+44Mw8PxGzZ0~qt-qfT-yN# z?M+gO*P2n^p@VUyub@w9d#}!t1w2<4N-H{*#F5W;EB7TANpKHM=1*Sj$3H8<>iI6g zTbM_%8KzncBWR#p(`PMf>Blu&IJg7IxL=#)>it}lHv29Nr7bcR*;MQU_{G@vKfccR#g7Hkd z`7H8Ra!(OlHHlLgkgh3kCgn<=(}5HT3o`YkTilE{SRzHYo=Gn~E5>EN!FKwg7bbV;76}nC5MepCT5l;6Lm5+NIfRpb zM|i`YXa5uyXr2l!kvQUv+1tR8SmdHU1gXS!W<_eye>N<)^w1JK+R^)`EQ{u2565kV zfRT(KY>0Ew^~>S3#w2{0F@(H9CV4YH`Z@}wigSTCl}8c;>)OSjP8K3LqW#9IuuGnz z_Hk@QWMHuh$Z{o&h=+V5HdAg{_a|R#fCg+l)u`jVa&>Rr{yebe3LurZtsL za$lkEqYS#Q^`pyuhvhg`#n`uv-uy=-7BHol;w6;vS%@2C-MH`NAFo*5q}v~N4d zK0JHX2IPDsp6hqOH9ZbI*aLB)#}hL&(C?Gp1m6Oc<~i3-)f^@7)!QN7vBv|?`@jie*POSEXk5UQM0vRMskz z)Ag1^hr=^{M|flE=cy$;vj_1_l>TiCIT%JHA9Rvjd7C$v@I*{|>=>O&{XQ5r!&zQ| zBZjJoWnJ+(dK(dp{leuORmHxH27}d|Rir8t^D6C2Hj=z9>ogqTFE{0YT4{NYx6YIU zu=>l+Ki)B#8g9OdN6XS4ub;$mH`(H5%i{_Nd}ec<_9ThtwLYFSg{3f#if^#SK+% zwE_=4bmOslL%p4D=`s!50BON3Yjn|UWjJTgNzr5kg<;h7AS|%`riYQV zj#`>p&QUt7@MCXxXa;MB!=aOFEipzj+n^RVmeWn#mypS6t4S zdNDFMP-w|38;rnMl5i0ZN)vFEy-bhThC6YJaq$Ai)ZV`z)%DJvFC+OAF~?5==Zw%9 zgKU-gK@-yeUz9uJY~?VDtQxPJ0?K-ivm6`zJ=oFGa6y{iF3aR}Ug;~wr6MYKCFpHq zYold-dH%29i{&q)_0SUu#5M5Tbn>^j9hK5&EhDaar?=-tqDp&ie5P&!nsLc+xtuFU z`M7Gp@+8spOe`Wn*2-k%PwT2HF>t137N=hy^f|XYR zNaXh7?HyZpg8gpwkJO_Uy3f79v!HJNJ#qm3yRvBKO%8~e@`~>~dHPQX+9x^&_;mVQ z1D#2(FQeqR)q(TL!hSc@Q21v^-ZSa*Qr?Tb|F7Mw?xQRgD(xdb7!0|q&Jt3O;fYCJ zCnYdF(N|oXZrqxJse{iC+GUFB6HXGV!rr|6gC0LeE6HlVIOTH2L<=1=P)#j=S_33y z9?BVe4Q(%n()WS6I{{fc)Ga28C(B+`Z*d$Z?4(}S>DqQM)Bj)EMe$qq&`hhvMjL3W zQy=$sV^!$mm&QAE5gRc!s&VIbI)C%_bcpKeH&s-`|3lO{FjU&_Uw`MCY}>YNOtx)X zQ|*k&wx*_Xy*^?*lr~7}-eV(^);fM8I>$BYJ>kAcWg45V;CjLTWz(;Na+!+qR zs2c}YxO*^7i)ed*3509K--#&AhD;s0uuVfg*>G)`XE-S%5*Qe+U}1F(rzx(A)Z``C zC&U;v9YU?y`xuU7J^Kb{WW!o)MLg%)-0E6csySa!?(Vw7JY;0QwtrV7-$cOI-BKl* zj%Ny`oMifw!d!C_iimlb_G@6sRPO|-DnUBGp^YT z*+I0@gFle?1f4?QvJH$CorCt|$H?(_wfiTcb;DkpzC*J(*{3e3HohP(&+ zfBeR?$@%x@?HBbEr$3o}XyJTbn_IeL4d2CUan0L!jr`4Rh45W1 zagG0>mcIty%HHQKut(k|Oon!!>wVe@#MN~Z+aqbz6oc(?R$zOck-+ooVSCc5xMSRQ zRf;AV!!CE|*_J#R)%0s#_WWk9*UzvL-xL|gvyieiu(>G^se43kyP3HxHjDThp;)c| z*dtK3CuALeYh7{1XObX&Mdjb)IyCQdil<}PSo8GR`yekFN+pDJ5#v7DNIY@rR)<%- zA!8~1%C7pC(b|GWur6@(put&8$?^)kdeh@7rUo_YR(`-`0m7~84ZBE`%RTCs2M8Q3 zcPv-A7crYJ3|8(LhXhdIBtx5>AHev+&S$~Po3``&?~Shg{wT`Z08aOSXr?U()Z21X z4<5OoAv>jrTs2od+YgO=z9;R!jfrE_wD=AQd?Zip>IF1O)yg>Nq}DRyj3jCkke%vf z5gD2@TNgas0L?$tt4tCoW?dQ{Tl6*$tVqt)wZuAvv=@q1=}Za>R0^$p!9e?*d6btW z&M31ESz9Bp2Qzu<6n8WlC$wP#Hoq@pp?DK5>ow;tABGAG8%&9e4pvWRhA zY{PQI@y8YR2X|zfA2STGIU9t=XW5P%m)m^fK17LwegUnoSRcf4pJ3?te1N zh7KsbFDjKZknJHwOw2n*Z2+4Tjjn@_OQm_YUDhm4y(pLr|0dVaQ@F+5y?lC3bHQ%P zwceGLP8x;Q{Vf`u=;ib&{k;1&aY7dL306cRfI?H$63!ULRuN3)bO2c+Y zlv?v`?(}z6kKf2F&!LiyN4hIEN5?E%o~BZktuy++kAK z4-J|X(_?OVq4%Om>QL8@n_{P4#=8LzeO!c#CV}m8=3)UCKz_TSNA+HdmF{}-Bt@f< zTWiApz8|6H(kUcoY{p+kqx0RN-{+0~*b(5k#}Sl557hRw$3P9=xevAouX>j# z__|5$hBuUT07*!Y;^?Qox1I8nzSdvz^4>5K6xwS?_Xz(L#h(2Je|L_r z?QKBaGsC@!#a=N0`sZ8XGG7%(9xGpT_!CD>y_`fMyixsWNPAJ#TXqv*Hf0yxn8)X# z5q=Sspx1)gbBv<7QNSw->RU#}{x;<3dKO;5P|<&%2Ta?E_rDM>1ilSExC+8r=s)at zuA!H)z7mRr>6Od$K%=uiK& zTTE+&U8fO*m&Yt}b5Q^3UT7b>dnCe6r8A`pRF!tJYYJKlI?c^C-XKQPMmSvZB=f*E zc8LKrG#?(65RTIu!$lIfny)=(3yti~RRJn1WMHt(Lx}d75pJ$O?L;io9DAD_E3E6q zmyp!VGeL4jFb-u6m?I{q+zucs3LJj4u=<`v4l9`f zlgP%QdG_a?vB3-6y3=pwNmEh<9jAML&vwH}%MHN8&I^pU7}SgNh`>BIt}F?FM=|TOISfN}t{MxLpiadbTZY2omUzR&V*4Q%$gRhr zP`M~LX2v!wS}w!Z7(Zp4Noi1a5VncWkvDb&MdlN<72Kv^c5U+==Q+-7Bo5IF#e{#j zQ~quDK^noVOg)&Z`#Vi$JrL`M10sKcTMzE~cx_$A>sI4_wOcZpYrwIWJtvZu^n4KE zP?|E#*ck7SXUuMK+}>65=ckWna1RnXEFCZNPXpR&NBOuDttUPmMd5wAFs;E$gSNl|<`uOP61Nu(ov?7O${4030Ux!Z?I@IJKLxFUD2)?l4Z>*On*+nR{(6lyr5Ni zFSd?_C|*YR!p=hs_7bcv&YD-){cg_rL|c0;zjX8U|67mx-hCcA*fqeh);P0zWBr11A|s9usnKQroN6&02IN;JrB4lYz=wGpvZ~Bih1}>DB$} zm5kFaYElet(=|FbBTM4LbS6>xw}uB=UUXJy;A8zKKRU^jSd-v7=B_c_^ZFyq&B#|cG0Fp>T8W68&6(=@%*i?ub}qaT7zqC4Mf8{%|zj_>O9 zEqlh~3)_gS6c2N9(ylIOeQysZ*6ABsvhk+pG4KlRJ1__32uR@N5|he`@fvhlF`P%G zxav2G_!=+IX8K>SbY{K(Jiv%a%(C7xe^DCw6Qn*PKrVurXaM&4>A~I<2t)WW!XEW0 zLf58_hX)hDL_)&zwBJLU(^MnumYF`^diY&hY(1mo9?N}US%;{&)&Kaq%{L~RxwP!t z3%pvX*P>DYsDI-y})A8 z>^gm}{Dv7`YE+a6Wa1=$r&Cl(QtR6_=@;D+Wk>f;yht3LTtC{D9t8OD+O<@$=Z3kr zKe3lo2vI!4A_Q4BBv>yZ>r|7g{1&nQVRe3v!-IFn6vGK=;6KiA0F1~jJ{4`9a>uR@ z8OX#!{o%XH5mT$Sb?8|?R~3K&%q(q9W4t>yp7Ck3HN{PUsk6FdX?2E~f{V`BSC)y& z#oj+S(*A}a&uteH30rXX7c)2s#$Vm~PU}fUQPn9WWE?R|*_wYxt9F4ixbd29cCw4- zhSeivEF_cdiv%<4^qI24-zs*n1I(K}^8I52n@8CPNlTXuXbY`Nn&E&g9S{H+7#kR8 zVoHIO=7Jge^jx+nQGY3^h}1SAkwvfT-NN0=7#33xGTvn#&qY3WFSsdJN_*>ZUAg_g zK4vGo0sB0Ma zpL6}KZ;z2=cxhXHP6$B6%TG84I zmD|JOBFz9*{kCDnMD+p|HKps@-+73%zg9aA`HET|Q~)cXUR3Nt2l13+8NoGkFgSW`vlaS`P<3CSksIy<^0(o{ZNB6gf(+n_`v3AVp4$kmm9q`6 zSLUZYKCw6=8@p9=kbW1dD(gKU5gykA8V!;1n}k7})7n;6o=>J|%SICZaU;}dDh{eK z6N&8JxD{^^n0KNP|L4+i)R$paglSkGV9Id5#y-cwr4T;g4dtGKI&1eTE!0^jW zV5kf!kQ=9ffTxoe@t8ZHwhQ@oIKF^ifUb5Te#RQ@A&ize^iZR>o=!?%YX-7*YiDnpvP*JWOFyLNIR3|oPiR-$ zWwO7ic#h&EInNx2(Rs0$@YU?6E!cD1U#8O&X!fohuW$K>AJ=F(+KQ0dIVbDUVnjqH zeg&TzHQUrjO@T&u+llVKdVG0{*Vt8zR3E9)BtdoQbs; za1+<% zdzE;y|Jh1>N|eZM>QN`VKSimwto~HlFrC$K^nYm60oVEJBTkK2Gjo7>OT8r!pDSFId`;QHLOnS5!JS~cEV#9A z_Fxbz;}>mwTlzI+9{fa5KZ-LJa$+Qr9NgK?Eb@+t#`Bw} zWjX3m&Y z&8RAqeC6JiM+dmpMZ!tqvqlvRXgmpn)rXCL!)opKk-)*%T0Z07X(j5WRpfb~fbt2I zz(LU=cOj5b^SUgZQ_>qVOWE0K!xH}N-YdN!et#k4u<$as z$f3%9QgWwp=patCr<=Fwb~9oc+sM$nqez*Z~YWkR%#t0v%r`dtM@a4t2A! zzwYsMhe717n6_}5{8VdAn|WOv;ZPIj#>7mh)fU45d8HIt54 z-o_+#LwFuUKZHm~9B{g%UJDJ5m$Q9M|LrHC*+5!Q2aoWb)Qp`GE((?Om>R(=*P7^I z;#lBF{RQ|y|Bq3pNqaW#!06)pXmCqweRFFGh+wR_5`qHwI zereF;e981Q4{Qh)|Anos!+5jcL~9TrX{)y*x6Kn5d?b76zl>!HFsqL2j^%t2s5=OM zH~8V+;YZMwk!Sy8*&M11M;o84l&dsUot@L((M4?%hCP~DX|{$*xvzi9epV19-ZoAS zR7m_$Jx8Bm!Z1WiW?<@Q6l6al8zn8`n!p~v`Y}Vr1b<2j!MIZAd5Yk+NeI>;b1JS* zJcB0aAySSd!}ZhZ3xDhgL9f%8(D|;E)hL6UD)ppXb&^;whM)o}hx~NpB%g~{;Ns6o zIDNwfeK&CaMQcXR-|tohVh|@}mBeUPz@AO6DkTlWipua>A@*diCn!stnTEKx(ce;C z%Q4C8es_URGr=dGO|q}tI1(e;&}?~n!IB%*2P!Yg+~KC#l3hfP*2Csir^`nr@lpPs z2pRQ6Y=8doQkB>zlZYTn9#DsxZ9>B$034;UibWhFVdzZAjrrWKoY9c?>asC`;^l#X z?Xo=&Q;gOL?%>X&Jizjnmv&WQ4e6oy2Ndo~+u5++p~k=7mUm-BC;qt3`w#yX9fMO# za1DmSWRaJ+oM2+v7qP~OvH%R~SVLotW+Hb_M&U%FV{wbI8{Iz~=PWC!|M}UB&7ob6 zABBZxM}T@vi_Dqe7v#b(0u0*Y|;WAPdN+r<;^ zK=V2%Rk&>JsCDUhg%GW&z(Qd0BYrLAL+QB(!>i9a1ffz_-3&n)`;=nqCJ;K?iV=c(Ee{ROy z4*6xQYme}3!G9a01K*2*Uq?R#xGV(!HBvIpSC5iid*l@LLPXds5qv@K_833(<%Wxx z%BAqQ{klF3>;9BY{e~bmZwLXY7SqkaIXl1ycSm% zE2wv!wvG7^ql}6rp`Z{NZ^lUZ+RsrP;x*0tS*{5~a@= z+P+G&g*q!%mOci=k}Jh6ZdPY?0?+1}y>dacmzzL%J}Ghjr57}C`1at&{WxRvZ=osh zC50;7j4lzxlUB)4ljyniwCBwK(p^wRcqJKjIrCi+gDSag#F4~hLJ&yfW;=Rzxx-Z*>((I6&b=o922E0`+-BY~Gy zs4R}GnSN|M=bW2RKDwGSH*nK?3Bk6O@hrWsC4Xr+oc8QC#C*)DR&UpOSf~aLYOqj# zB$9{JL*E(f@5V*%YJ55Qye3zQpAd33R?NX4y1a^`GTfy+q%ra{@Gz;^%&<;gNwBnc z)CpH3iQ~gBL!76CUe)o#5kG=H^JlYZFFp6L%XXKo6#LvSC$z}U+ip3o2JMlRdFg%` zY=t=kuGS>yaOqRXV1~F91LtfEs9323NFrjzKsnCCKRp2sto*F*Q*0qRhOku zw&&%6##`1BOgS!LpBjh7JH>qsyFTZ~Ph9&hOwck{&_*?7 zN>mKpF{zxhI8f3#D>F;$jFvc^6sTJ3*KmErc_%!*U^zJOZD|sw5soN`i(t=gM8#OB zb}Z-FXk>lv=}+8yVf{bn9gA*@|JrsvFRR@O!5U7Uk|g#zc=XmeAP5Z%>H9-ms@Epi z4R#+NBE5#}i}Wt61DkcgZ1z$+MPqw8{okqeft5z++gpR0N0!`x^`e!-mM-YiG1|M6 zZ9VG9SVGKoSKiLanSmpx^M%30KlPE?qsq{+bJff@oA<49OE$0^%TZ$iMacNfQsbl;|GG|MY9wdZ^k6;qpokMu@x2%Oqo6dGFy71UE=5e|djH2G~EMnzNc(#CZR z^NOW4jjJzBGIXqd^BwS;&~ZxEczxDMt_*PYiP3)N{~LUGi3!UH(TIlC=5I|nQ61kd zE_P)h-njaPhtJWvskLzgp>1)rH$|C*41_@Ms_1-`*#9#ZWgh+)sMJIs$2*%?C$cutt zk!IzyWx22{x>?O=MW@XsITjfxJGX{?3I4#592VKw&RDa{?hA!VMiylkCu1Vub)_&!J82f= zeK+Sw^OE@Ga@5YFKEnSX^sDs*D4O5MB4lU6lqu6=UW$py5yCun-FpIcj2bcC*Qd*Y z6-IF(T9zX+O0L6%e`-|TlBBVn*&CiZdHS{e4Mz(1kDQ~cU1&n;pJs-fZKA3bb|6}W zPAq*h;}$M}FUfS9yyH{|Z-w?kQhL5_rN-D$t9eF6Z|KOTVW|Exn zk}W{_#n-cpD=sptPzfzz?1x`7wh*i>?Nu~l$lSBm7B_Qtj-@JZdm(bou-mtOlz<6- zR{I9t2{$0OWhMgwe4M*-=P|ESxC9(Sf@P&?*mE7;D~@9u48d6!6dm)}d`LX-p6e2; ztUya4s#3SgjS-sLiRc1GpeL#i%YK!EEC>r-4L0geLZlo#7Qc&%+p=u9&qvhySD`2| ze{6qQl{6SYC`3Sis?OvwGhF~(X4tRul%Rv~Hd4`$E|8Uh>v{WT_=j_dU09O^N`ifJ z2Rna3)xx4Z5aN{%lr?)N=lT$FwDpMyJBK^fpb3;zT<8lB1@o3XQfuY4mWBc0*LQ2u zR=$%Qc2v_JIfZ?dkaD#7C)VJ#zGImxjST7!8b5*#FR`A}wbi9I`!7;r&}jkuPPe6s zVL5QoVk{>>=tMDl_q!f-h%sDjc^PojX-0D*r_i&Z$0^9WR1VR~5CHRC?VVEF)ij7r zN*erXwa%=pCyLrdAy3uQ^C;?Q;ky=eBv5Pkh4ydK|K84Z+YWRG+9_lVI$NLD5Dw&S zUuJJa1sV&j-pKN+y$B@1@-o1KnHW&y4aCubcwt;735IIOis(R7S|k=a4Jj=s&}I4M zmwv!nS%NwnYn+AY{hRs)$3a7#tPqMnMzK|@8dB8D`KOkZJ{SphV0JuyA-J`IhjQN~ z?7>3|57qARdDp-r^t5&n3>uE{EH$~j^Ns8qZ3OrZdO$H2 zMMYOi6%noDnE4~Npg%9N?A2@6)ui{Qu6wfx*|KsSTJO`|b3B@#+N7c)UR;OeTVpfi zQ$x)U$qjjsQdc)Qqq%+E`;IE4we(wkFWvZH*am1wW#+@x#{gm_k>_t+imc#Cdg5J~ zM(<%P>CY1Pbdj6(wn<&}s1-?t8KA6k=@TU?qz+B+XXep8zkH*E4}7e|d{;Lfx_epj1wStd;|WML&kRh!1U}l82@71`I<^DuC2^kv z-7045qp6V z3V7F&Vla5_<^k=M>&1pminwv)=M=LP+QOYKGwLnb;QlW((e}64CE&sqLS;WRnY%5^ z8J>ux`iNRI2}=`Y)CB-#Y`02xZ9H)V7wiGni*?WQY-6B<;xKOQfx4T!7x+os^?+wb zL4V?3WTDZPN&>6X_c%jMSZZKf&xOsTu--@GA#KwI+O`f>I8D)WK~ty&7kq9*Ta})P z&hQeP1|rLl-(?uDB_g-#I8XFhy*dOa5RZ!fa=I6EV4uRTt`Zzia7nnYTLZK?jljBw z+ZOCjknv^-q4U+QUfJ5yO?DT({bhk0tYd>qk6jd$WUQ!r`zB|Yd(I$b{IpNc{65+&{S_EP8D#Ey`hR$JKCT(@Wq6 zo_hlJdgYo9Fb+CncBg`F8ZK1fMoAazRb~x<3@k9Ijq@L_gsfh7AY&w_7iom}4zfMs zxCRKDVSD@6TRAIx(Ck(A+paFVX8iSH%0tqB1G8MC4c+e?P~3&SJW~v|xg}MK87wB> zV7}VsE%K-NvQP$V>^pN++}^ZwW=-ffRCvEEtw#eig%GtJ?Ex?ebus4G6%f5ZnSM!P zKjdM>##*r8p*p9Q_AdZS0lgr+A4O97lG7;!;u>G*!nCbr(5E9Ne=U%#R2d$9>1w6S zVPV5huB<8yx8V@|u7JVJt!YIk3B8&yHu} zoOub(X+Iiqjid@atq^MsgOqPcf6YSWI30@KjbK~{Ll-uj$A=yIw16InF3s);MQSTn z-DAmJ5La>f?N<$8fk;!O3cXfv+Y&b<xk&Bis8s<^g}x-LdmW zyh$D6pPe3~85tc`PjasL$LPDBQ!fPwG0E$UUF&K!{O5d$Z_jvt$==Si79-(cBPd1 z_SG;m1N^|HL6z(Cr?F_s;hiB0ww5BEHeb~afT(D9us-1rFieZ{H$9bHs$cy{`BWux z6xRA4cm+AvQGbW|%rVwm98NqSi=~*0nB0)HsuDh(`O;!QpTCax{sk-k$w7$8CtSiu zqFSWElwnK@i%66&WX*nX`VgnQBvHZth1JDvZHua@PzdPLF<9j9XxZSA4oy>0e z9OojEq6M!Q48QNJZ^n7-e+n%giG^#i1rXrzufhTa$_!v!s@2AdFF*1CB?ltAXty{? z$>N9M)qyNPbrXW=c(PV;KuN!g^jTJ_NMD9=G={ZzXc9Q@JzWPhhQOL-*j4bw=GHx^O%rPpxyo^%%}YBuO6*5LEBP#XD&Q~wv7 z%CKL5`BuLfoi*`7#L?q8i2giDQgV*0s(Q@(%Gvf;?Ti?V@WdJx8Zr+x2f9Cf$LkWP zkZPLEsA#mHS*akw)Jn-vWOHo3(X~*$RjVrXEhDRG=*S2&&4~lBrKXrOx~jg8-z@z% zk!oW{89Ppre)vV@wZ+FeJKc?P@>~?|rDFp$$ANbb($o;~B&CV(m6Jm|QR4d;`We3u z3^?6a4HoXc`0`RTQ7uDfO3c*3Z)*tr3F_lnSZ_)sIPMRifm2ykrW8hBKpnLEtixN? zMbfUmn4=c_K^}?Z95vCqA<(UH99=0+M{WHDc4d5`y%6g+zKXc4jE)*1td&{|=fShE zmQb;M135cZm}lI;HHn5yxlz5%-kQK_=sAJW_(qeReR|O|@hifdw>l=A&9Qzm8aq>jBnn|ALBBXd`&z=A-VTG^<4Vh2t+tSGQDz1gl9>t!}2*{C8}O z9k7cK=g=IuTnKNhw-1Z=O{=SY=@I7aL1DL}8m;_pEhc@sH6p$JX4A&bcMV^y;GJ`i z*M}mG_MnCEJ^vR&sn>gc#QV@>g+&v|Oi}%V z_;#@FXrx%vE`N?%R>L$8qu(pHK(66Se@)?`SFUu~bQhoW#v=o+#ry~*d99!cj<~n6 z--F%PgRR47;t}BG)Dh^%r>v8eJC4{r`19`za^J5EL8~+d0fR4wLNSDL$bC= z89)pe9yX*P8I;oK>|eu$wEM>8@D0{b`r#}AZ<%YdwV|(L`piPU4LOp>$RNLd@4>`c z7%`}>927q|31^GH9_F)^{Q2DZ{)&!(U%dbqqJCY1EajDxd6UtTT&P5~c|!$^Py~`l z6gz;p*tHwS=N=bjNG+M@i_6C9OUGX`&IK?%7(N>*SlNkN>vy_`76X!2Ri7hg*BN`x zE*G{?SeohL&B0~ZSkg=6}C_&BT5)K zAw$-c^zuQuZJ}fL#C8ZrW_!B(9o_5}@4)|A23)Oyx{Up@&Dkk}ezqd?XyCqA;QUBU z&s%;!s)Mve90(VNZ^$8bStsi%Xj|rj3LqYSD0my}^8ldFn{rx#nJaq4c@0_Jm${>vlCjq*h=pPRHY_0?)*@ny zR-{XH>zNiCUJ&+~;MTsy5q_?Z4$ZM1&89iZT9D~xA{l|+Q|6$=*rOI)v-Xepo6j8b zJMr*v2}q9+VY|^Rq}heQ%|$->sGIP;hjfO(qfH(uYHpfS(Q8Z+uF&U~l;V7x6OZx4 zAMMrzxL{M$vOg}0D+|-W@7*AXwSx9Rz_3rrHUidG=mG3lCZ;IbVSSq2V%$oq{jby? z5GCpj>w4qj9~ntP-4EyaidOk9S%xt?`G1#`ipsk+b15thSI^sI=)M z==;txNEv0-8v>4mEPzbFujOSH2(~Kapk`UL;ej#>Y3a`|CcU0w$5B6KXf=S5adN5_ zfWC?DyzcP+?IFneD}p9Tr18R{mpEFXQ0=d}2tJ`-@pj`O6!3*YWCs3-&^gt%$knC6 zf7c*ZjDhjrgjacjvxg{QILx+}{T7hs46B4UG=CBf|6zfa*FpDL__pzl&APz=zyH-X zm+qV+Ggm}5Hd&hGJ;Nctx3e{AZetzP@L8ekV4%(1{mm#%C|?221v*K>p2aMOEn^WK zS9S*c2WE#IZ?u6#do0+#>Rpk+bIl{>Bh;&KR5H*|7M;n5CUdSaxl%YDTdafy=5~bC zUQO0Vpkn`y*jo{s^(y6Q9r$?2Llw;%C5^hix;7VN3RiAPfS77sx8G1QuqB|`f*tAL zRdLrd$!SQ`{3k2G=5G1Ve@0RNxk#)@nG8Ik1CVB9>1{Bcsxt;D6_RtGFErysfJ!jF ztl!O@7Dia^@MewYJt|JTr+D10Tdb7!ue03|M6{vue*4LPH);~r922s zeWZZ7AHdRpY#!JXR`N-;Zjypjnm!cbBG>+G8O=;;K5%fu*^!EM)^&x74IEZqswM`~ zP!{k)#Ih!?Z!Xe-Sm%qsq_fj6fye@_Ao7ON%C-#8?BbhUyX*_cS_k-M&_XYm!EfbX zgoWRakl(|vldr};^51n!L8Yj1S&)~j>j+wgRE7I+zfM5~&0`Un(s$Ce?R7cU`N<{O z4ZGhKKyXJ|izDGZQXMyVOMEWJ7Ee=3KK+ywFcH4DDI-QnAI>pHw{hrLKs3=E4ze0_ zhg+Lz&Lr1~cM|J-OZ^2tm*LZI?jOwg_Gc&y?!S)=ty{&>6m{7DCwh;Dj*=Xz8tVMM z(eyz`UzyItj6y9FJ=HWABw{9hGDz1ju7l~%AT*B_K>}vmX%d6=igHw>fBJI;;GDjP z7U=aN9JI-?DE$If3_p*2vl69l3dD(?t77V+=BN)py7yAaIe{00Bv+MhlSIo@9XCi_w} zRN`{nyUaRGpa93$X?iLh;I(lLhGHOj)M`w_Q=tXh4_5mHP#&(`6^V+puq9*baKKE`^+zlW z_5JD(TirTk3#KFB?yL&Zwx@0P`685=iMxsjv_Zy`Qoo)hdB} zEj#@d^wQDbA`ja#F(bmUspZrSbCNX^jV4# zjU~jPdQ7j=0v2_l5RW_pdODu-d)MMt$Z>D>u>BAnBpy(S95h(e}=w)1ocR+G*5x@Hp9x)6chec8?FKmxWj#ra$z#yE-~~jLuWjOzQ^Vn-=1h%k48es*IfjEsX~`M z2plJpZ~3TWBrlP^10?*&yI1nFhx8B;^azCwv;u#hqE{u%q4HP-xc~5^jOtU0A5`5G zB;zU=Fr6^D&_CTRVjqEEHU>an`XH$^+HgD~AEce;bSuy~JT8t9d&3CKYQjWQWUTvmG)3Rk_@MWVad%C!?kT0(Vo)(J>W~O7Q z-9M}xy)xp)?JhoXA+-OFBNMtx+v%Zm8;B>rg8_=BRr+_9W!)e}Q~&BEf6G6~!HrOK z=RB;HW2^?StOmKgAp&6fN)$?WhZn^gUL*y}7J*~{8x)c@En$$3RO>nwWrYb zg6dB1Tx^qb;+oWYj`zqqHh4tffD@du>&Njq8{-)KW=8j^I_EeYvqG!d|(M=X_mPOG=x%E8rc_I!tj(Fyhc7<$t=0mQbnDAwZh$ox!9p z%8am=>iauUa8EgaPuhGCmgW2zOMgg6nvh@v0#PC`H+dN9nX;R2pL{F(;Fr-Dpinv2 z&(qyQF)}c-@4Z$c2t2@7w$L7`5z67^KWh2#dgU#oCELJg8AgFA^Dj9UkDyr;8dbxuekT=j+3hq?HuhL#6ro2dkWc-G$b`mD zI4Ie&cj?#0J~gUGfb2OWLLn(Ht-XExLQ0tg7Tjsj(RL}zk0U>NDpj^~Azl!BFiyEy z@Bde-y2ue}C~OUJd2&`6Nti^Z=o(F@3n>l;0ecKuDK#IT?lNU;PY!>Q!%4Z3d4) z=HRldH1ck6QBFbx&Mx13xMU#nnZTlvc2qk`214Q|VJY%;Qqyll(xyXgm+e%r$B0`W zr+B0S3n4=GPpvjV+~`*N%*#;e6cy?34Ga`jONd;1ly$fx{g&%NtgvGV@=OI|lo@p& zXsjyb74EcigG>1};z7z7yq28YVT`WJVG*!<66cD@DySTYhi~_FEgXN)u(JCeQ>>^6 zRO!-!>gniT>QTi4lsDnTQj6vkNDDJonj2++A_qy~stICm=F=n}FV`a(%Yv9?OBmdQvk)=#ySkU`>M5D#`-~vsjlXw*^zIa1?KS7-92dAD zQnWg9*7x0AWM+N@SNPH)Th+GSWv&6s;xR>_!sLt&yy9Jd;_mgurZUX={KRM)+&6uN zRxdotmxt|bEH)t2kB5WS%b%SYwW14y1WZM4mUOCTG%z9o@kFnvHN+z@{>s@7 zydSX6+|1n-cWO+e7(R+(iy%%IiQ4Y7dgfKV=C|Vbkza54ubL?ZSJ9`3%>)Ui*va$D ziE;v*gpVY8clD#$cy;g)3`eBbToxTZcyaC_hU>SzkO9m*eYBcXWrrfM5Zmw6orB{l zv>U3wz+p7`SoGi(`3LRN(z=Bb4?t!qwIp|bZiD0H(9^8cR`bws-JSjJvgmvZq>SEe z)+lVPX{*{}HKD9}Swn6Aw#LK!A;0a$C+X>G<~@H+kVP%P>wV`SI@pY6<7RW1(M*Vc zX*Hv7lK?VmgE{LXA1?5W1cp+9!xjbE;B96bSfYyrDWt+s{nUa^RrWkHAgi~ik3qEO)c@Ow^@KdEUfii> zHD*-Al>gd)gNPACK}ZIrQ5hnCwx5F+^bMn90Cf8~+sasaEn9uN$A!Q!;(!j>d|=Q| zTs8y%@sQgZ3JwZlIEX;0jNt*36B+N77$nbXACX$Of-=UhW<7O%4L{x13A4F7(iI4e zT{~Om<7zXFyAz;8hEVa+pvKqnG;Twz`Hk@V6M>!k-Y=a!k3hEf z(u28GIGd$#fFD(hqEny?Fk^I@QIr^49cHcA=`2vM{{M0H6%0|XUDq>orzlD)2qN8G zf*?wWN(j;oLo+nogn}rIbc2F)ceixc(B0iN_c!Nx&pGe&z5igYd#=5&wb$NzEm`Y! z2ZTjyug0~g+7sF3S2aWHr(yLUacyZf)w&+-2xdX>GM;xP!?Pu(SLZS~>&8@^xBj z9-HU&^Ugibk>MRMY_RZ5WS;u1U?p%7b_Kq7>9cqHca!BWp+HHlT4NeHmuMoUB_g0( zD>&oZG_wd>bNgkUk95ttpOc~$B#S*Wu@e%!I8D9sC&oL6_>?X<+1%y2e1kZ6_jvc7 z+Ihm%&KQlvD578>IQQXB%a{xHBE2%Ccw=5>>`RL=HKoNHvW3;rf>s5TE_{IgAEKxt zZET{Uc0L=b60!rwEt!2w&KUSx&UZjSr@;%e0SlvLO)kR2vu`M~7u-n6`t!vs`~9#x zI+(=(ZYvv3vi^JLO>)`0*{IyM)ltSk9yRgu(!yb+{;6PXu`aBpIR6OVC%c-$pr2%| zWVW5%O}<|>1NuLPe$%zd{JgH#DLZFmdW;~_u&d|kpd0`-B_7S1U2#83Jpg)7z?q`t zm1B{AShvLXWm@ct&F9Hbp=!U4tqN9A!iZtRNdawqF0s1|7sxEzAEK;JG=J=2F1?1q z6BJ}YX42D3=p(qLHS4a=jfcqL}8 z0WKoGhmmN@h(-ocx~a`7Z3>(+g6L;kJyvbik@(eba#^B0DeoqHO)f`|Ap0-Pu!C*2 zIR0ca`1QpFtXj*Pe)YBqf~cCEM5$;`?%&!TNXA6?I{CfP1n$Q|)@id>on~oYu-PAM zoPa;b8UGF`4{1E9E#jQq$vFyi6~!deV-u2k4uz+8i|)03dw2;MO3nBf1|jI%zF6pJ zepfco>W!~jb^^I{#K!z`fg}QXGwB?^{fEV2J=>5BQc5G{fuVIZ>z|v{m7JuIXh`e5~VKxKeZJva0lhiRD~I!Jush zHV2v;NmUiDo=@BTHOA``1~jV4ppt~ry=S%nEtXZ{Vgsr`R_ zhJP~)*-F|k711p%`@%_+uXse}(V-E9t3qE%h+AUNYrU}0(AlIOUKrt-|9sTY13Rl9qy)hIJn4fO@i{*eY22*Pa4 z^C@PAIPLB%%b7`P(vx5*o5psE7|rL05alS$m@a0+0a1I3Qy3aGMlr!)i{0+i?~Vf9 zvO9Fm@jm+b%+5|0)fEf`>Vu2k1qhp65lN=7LJ6$15H}zI&G2DQu5ukFiY-4;rxe5Q zXy4hTo0^&qT|2cY8!fEA)|#I5lP;3wLtD!95V36IGifkB2OGgePs*MUxKB#iIL)7n z$0at8x_&Gv;uLcV!N*REhR6sUIAo2!+aD)h>n{WmPnc5gTaK8*n&lb!8fPVWOv;?4 z-AhgU%YkD{a-JvFr3yP^7AJM9f*W9e`s5FC`hQ=QGD)*QZi#j87AC`1Mrs!@bzeZ=)ul19Oho#t`uzdE9L!@;gO7cZCG3j6Ur5 zgPB-DUA}XKglIaG9@t|lVp|)#dSk}}9-nqi?98<`(qj}xh4zLT23av?eljkx)Bj-# z8U9td(je$(tp>tqL@dN~491xHnGp-8{nFmg?NO8Fy2oy2Nqje88d$V17cxA-QR&_n zH?zrMpMV^Mug#M^5nvtfo^5oFG8m`n3>Y5z?8dce(FtKuxoQ`FL#Gjbj41=e=5Fx$>h%xjk6;u)igWQnTo0{GU-cs@2{U`)}Ty>TfO!|6idQH!xU#F zLRY2ffvHVu$mB1_=6DxB!0lOfiFUT;3`*m{Kcvm*#rI$urI|TH4~Mf??%0Y&xo`N4I58|&`a&OS;EvDNS&B$G>=Tiklf~c(p4lvd7@E)oj6v^V&tR6OY3d3#aczL=CCQ+L zm6sRFS>m4%xVNtXr;>Ujj>FP@ZBjW@_~h^zXMDNR51S`0u-}{EiFqe5)S|p{H{|z1jsn=Sdi;xYtL&;j#-rS{X z^nn?V%DPH5b)Kr5RrSBwpH2e#0m+0?1`EZ3n^3BHr zBUD6Q|4Xv3mORv#15F#o3!}~~B*4076rZ4SxeskBWKZ|T{s7djJtHErS=-;wv5Ps~vSP+H zcE8R4*XdbWtb9p!hpF?e#?z^q`|4Ze5Nke-Hra)IIU)K=bneTx`sev2ZRj3o4s1U1 zjHWF>NjDvQMkuqCFHc1O`}i9s8j<-qOR@kr~_!A7gZ;>u{QQvHWc@Vv?+!OEv7QF_}pkvcJZ1dE5)^Ee7KmedBi zi4>NdX9nk>ddJ*0n3jGeeABc5#!LEN0bD>z-xX*x0P>mq7eoyrMo9#qjmRv-Jt-o{S;w z9h+jCB5QWT?vq;_7s1FZedsgh^9kdik5J;IC#=$qegv(AC|p{|qY0ql>eju6nve69 zb|C!Z$`?8x%x#80);!Cd^t)7Zc5}|KZgII5$^Kb))gXS_E%H}O=xVXQ%M8pOtOwgV zqz`w&-?0)WS9;#4gYYJSlCGoN38miuTq!KKgSEglR^?!eca>=x4A&=oR6d>O2})dO zV%m^iLVAEpIUC=UixYAnTg>CTII?cGd$IjfbeE)`Q0C`sG%0*rqu4`j`p+l596_I{ z@{~{tskfCK&dt3gqw|h^wwDND+)hudy`Rt|?dfBQo~T@gseJQ~+4;O_J_uDwUsv;! z=SPr&c}esvYY`1W1WIxK2Y*Dbq^J2gcrG&SSqY4QEpJOrjvA?EBv`K{w|@=VA+b#y zksxYUuve0&>wjsv24=C#6iB%6Jp$iHiI-|YEtDj{FHMqVrCpq23&=A9efnE!Tr{5I zif)-^`p%2p_R>NKbEUFC0o|B5nwN4lA}H;V^j@AG_Pjx>K-pbeCES#z4-T?clj7zOP#0^`~E{tPg zerF1T1lN*tnDKW_OmrQNq=h<_p_=4W_^~`9&wM)^5h6zr}}J;H3qo~Cb}T2g=mIzzY6pP5-E4c4`Ta! zpMR5bBoF_cXBH{g+4W@RhDpGn!RJJZC@#kHk(tHV{tyo zhwY!l`$H)9Nt|r6)T*s&`|7!v?O=wNnT7=nC9QMD>K$0ZrVQq5#@r_$cOA z7pcy4-8iqJ=-2P`^YS0C(iDUW<=p&Up6p7Is3iWmKOBzzqb^zvBm60-b}c$|&~8%X z%?;?Gw|AG!Sa(6(`3ZQ6kGdW2Q|s?VkIzk5-E=;0#&gF>MjLgRYqXfbRQl+F`qJD7 zg=fHQ1@{fug9L~NKr-nzr3O9|18pB+&;!nI67tU`mDh-m!mTdTbia?K3(bZaHe&>N z(-lTTVna8>^oG)Ex~Oa$#Y#9%n+u-F=XthX+G3-AE2}Y%fLY-r=F7cg)7*^ya51y$>^G#4DlyT zlHmVN#lrl>Hkay_<$1T{?3uQdlJ7&p=Dx+ndp1x!z;r&3?9XbaYf#58!_B-^oR?`v zPtB~Z9?5JfXh`ez5>JY)TCMvyPBrx0=acUz=q2IX)*VfvF|*!6(i*RRnu>wW=OnZF ziqf<)QkzrNz({!dqy{{r-JH|Ut}HKR|ZxJ%tnzXJ5NW4#AJ?L?67+$ZWU zarb}G+xOIZ`6dQaF7l!(G$so)KQ8olKw|Zw$10c2OOZnp@33Wyk2pNps!X%_g&1Ax zF4`qNj2Jw+S5%8I2ur8gyk~_hHO3!0sM)ikicC@|D(Fwrx7yHwcg5LnO6BGj@6AyJ zQXYJ-^TU>kmbZSFfpF6PZ5tpkoDU-{@RXRc3ED@PLDvece``x5SDGf5N1%_k1K{$T zi@zxKH*}E)sDei3F7X`5S~>wAjc47!cEN;2R8Ccr)A?lN&y-!ql!~$r`$ha;<@(xu zlvBQrN7fU0g;1$dR_Yc%A9f#=ic!RCiLdHi8a{o`h>64R z*CkxHmFBnBvNi)0vDU4@^t~ncG=!)Y{G2&CBdl4?-Y;K?O;zqp5;9pH?V3UEvu%Dx zU~QAcsKq`N!$(*SBzE8&5*K}co?+8bTSiFp@RmIm7g9Rfx&Qhm)xppB9MG#A0nrC2 z?*4-3)%7k`NI}wsYB3bPTDt!q)(Qoy|FbC%SUnMHi>DU1yQl6$6jD45cTlfQ;@h2m zyDX4L3>m{&o}p-0jaNtL^;nI@KeMK;uI6dN=_5HbNJ*SF-NA=UoB#TX4HxShtt7k+ zai*vIELLwiG#;_R^^u&OHcKP0Wu5?rZBBefrg-<=`=Z8k1t&eEA08FBIWA-ct#U(UJRkJoc z68n=t2Yo~|tCafgHlezI3BV4a|0YmUGe5?f)waWco33Z7ty%@O^T6I!Y?!4OHrDJ? z$LK4wSElxo*+B0zwbZy9q72ba88jV?QN3yQtk#j;e}!-N7A7p(kd70RdfT{~Om^@M zb7X4bFkxH?>)t~Djl>#8?=I*C0%Hsu!NwSKYBi@vVOfDGpqr8ePzDP2Y~1P@>#Tz; z%)0-+8M{U1B!2N^p%(XeT_I+Wlmy5l^e`nT-s2$prLSx9s%WPrD<_|X4ij+AzKWplBAIetN@0X0Ots5P0QHaS#- zgAU+s19)xi0~{QFR(-^fg2{aW%=XpOR8_|3q2|_E4Tq)_!fP0B;_gx_CqQBviPtU~ z=eyHit~@8sK@Vf3Jk8_2tJM8?R7=ABe}mlrKsZu@W^qG2cGtJ~bjcSpuA1c(@(W#* zp(Lsaz24rCIHlpJHpymxYFome5Xer)HWEN@Hs^S&Coi-3I>3qRi0Uo5KvzbJV=K-8 z)@C_W?HwD&Tby$#N!A0v3VjK4{1EXt^~QD&p6bcS%5Hg{tdd1Mb?kT0c7aMQ z7~#>JJ8hiL;7VZsu2V|Mx@u}9(i8?i>qX7~c&&=33W?lE{*30-1;L>+AeDd)IVCxy z6CJmnK>R7YbJ)xRyx2`VLFveY3nxLs97X?&Z6yxpokz-|IH7M_-%t+X$Ew8NXi#g8 zD^1}9991>gNJpXHODrh8PfvcOt?CvPeP4}ab|WarbCJ2Z5y}^tivFkJ+Istbujx)p z!k4vhj}lxv8$dk?OS6Ur|Gt8^_RuqW;+_Xsl~c|rX|`{dI@86;nu}%#%1SsiR%f0> z4`uZanw7Sb%}%>+dB zlfcb(g&Ip&+CvxLzQh|wfrfHkb0dbpwmshW6YovICaXJeXeqOv@o7w|w&U{rA(d^G zcI?mgT`-x@1wgtue;h(V-j)Blfot;*u;_i4a3L+08hBCo3_daU9I7%%D$&I9i4Gp2 z!ETky-Ko|#>18c7O4yn$04bcrabBqW1dE-IV2f?}0%nigY&63Yz^ZVZRiA2K!z|GS zf5_l)-yc)oftX$geT?v{GqF&a)IfQ|{!lf9HD>(tyj&2z8~L_@jI((_R->5jt;Tp1 z9OLQU^JoD@>UVe6C%EK`^VulUNO>*m4y3cW6F~I(hbE~0 zfCPh51B%)y-OZpn#vSvQse<`Ccvy7jFuCyK@9|8^?|Jf4X*Omwayc7vaTefP5#R3P zyihs#aTYxdR?UN)s5a%}#sNo0z-gLd>v|V#JT&70jml$4(kQO_ubMik*8U5O5gIZZ zpu7GsmLmCP$aJEAW+)PjepSm#NDB<{lZ&JInX;Nv<_Bo|;MU%&R@IYe_2iP68V=_s zqCAqCem!K+9AB_N`qp~H<2*l{y}@~)cM!I7-_F#!g*`vzbx}$Jdo|9YhohghN2Xeq zfoMQIUoh6Yq;{fWED{12STW|NRAv9da88kp>`e}*3gsr@QsL|=%SA#TG8KrLPey_Z zV3+8e42Ps!TlN<430YMJ7Hxt{ym279uI-N90N4O?`|r*dmRq}#i$_bp@xf=8Nn?(H z1)L$SK4rvykBq|T>IM`mQ@e%U5B)N9Yj^uW5gH_%I07n8^m~Rt(P@BpD&3^Q=fMua z8CBZEs{ayz(>Eli%^A8!OVV*kIaql8bG_yBysEp?lMX7)nL2RaQLkR8 zROD4>Vduw(<7NHCyN@cVh-bCl?){L_@R4`N{woVS3-dZmnFb~Ok#xlQ?J^v;HG4$Y z(F-@3%0gXWz9=KEdEsEomC_C9 z9faI6A&#BLu{I0MvyrQ&go`j-#zmK{1^7s&;9OaYX-s%1enq@+@!1}#Gl7NU& z1YNbijjk-Q5SfRfW4%^OQkxRz@r&-XyO4Ci!E8-bEO1mt)vIg_N;Zsa4GEw%fGXEi$CWiobXa0}a+_MFtZ79^43`+5AwyQ2mkW z0snD}vNZvcgDA}WWF0%bI@&gC@FvWw7BqX@_G6gC!mP*!_vQXIg?eC! zUgJv37s4YRlmf-xHKbsB=Q0GJ0OGX|!hh49&&FQv23>`Y+C5 z0FFS!!Vi;QIyjZ}c2^b>tUOwTodMG?1nQ$tNxCW~?KRa!?u8c)OQM-~-haw56k07} z(h^tE!eXP5&BR$G?h4Uq3nARq39J_b>;_UCjc3|_?-9VP$Pf!ynnsPA1Q>%%unSo} zjg^Uylt`T@WE10K^MjOzPf5$D=*GX6To~K{X+)h5=NmkXW^~)GfY8BzfBIf{KNL-Q z(ICwblWejdIzWk+r-;zMn2MByL=3{$R`^pgX=N zFU(`Rv+ZGhceE8}opPL1i4S5XEBT%96zlZX7?p&F$tLnZ`D|;{Ju*I>!ia>O1GNjM zU_~5gk+=a~QUdafv+4@fRU1Hp(aFC(P^wk`1JT-ehR~>{x)Eb31Hqt#ZXqH2km`aH z8*RGrD!5G_KWFVZ=Bwq(E#mqOoWBfi517O9mB6r2gub?iXk|Zg;q#ovwPZmI>PTC< zaUjDI)6e#A4zpG#poe4)i$J0S+W)UTu2Xj~k;EKz7}Lt${89=~g^a2@xv<_lo(Xsp zBQ)J++dTNNXov~zx(YU<4mT7bi1P1+@jRNbLWzd_lwFk|u8UXJFnqTmRnGx17qL$_ zJm+8}(>`s4#Z2ln$TKalSCQLc{F$HW9~ruo$Pw}~edAnY*(D#Q__ad0bmJ#xfeaWX zD?3Z$i{gMR?=FB2B=BI(TO6d5@Qe$k72jU-C>jLiLkIs$PTNEEMVPDK=a6QS0GZi< zt3Zk;k2bYxcGvD=6lS-5xCFYZe?COL68%`_vua#qSO)!DbLNyku;INfgpLx{@wh!- zSzqicEbu*x9nN-kg-bvN(N;z3ltctWOQZqyjCW*RSWmW7G%C*wtPf#YEO~a!<(QSt z9?={MMuj1W#D1PBk1y7(!;=-!sBX*75E%c!;9`HS47@OTq+8c?3KZ$4@5@=#o*ujD zC4egivA?{M5C1bJ^*8Zw^Ap`yNENS|bnz?1ff0v{1cr;l1zG0se?heXOy&JH`k~zO zRliN{fjHkE+T$!~3Ef7PAnecTKV{HGx%^Y_CvoGbR_#?f8XwLRY;(ok)W*x`@7Y#P zzVOzKFV1J8+HOvi?I`u9X&F`#&~w1E+J2_FC~mHjOyt;&-b=aAc~Tg(m0LHJuJ4{! zmxGV^$*Ce-;*fC-7V0pU0C0MXbMVF*>=N+l^t-zVx=NL3yOQ+o>=JBE=mSyB_kT)4 zW{&1NaO&owT01INf<&)k!EtBbQCTnDHz3VPhW<7Fb1!b`&z+EE&Q?#xCQ@pKfp$g) zW4Vp6O+}}qVcE#;O+~H;PZ@}y$MO0YOs}I<_?!e^xu65j(E`*rvs4orhpQZcLE!`4 zvYpcHtBG8-LGSrdvs4#BoxB@yj|2DI39X9U?VO56H5Kuz3|94B+~W_SpPeo9apzvq z!SVQQe`#1z_-RFXzX@FkP$V3ddnDpG{yOeGt1E&Q@mT%Zq$Z#+Q{ct?Gf`fQz#qSb zh8wR7b51z{d@s$loYP?uzGF3oNFud|jzf7AZ|$DXef2Md3nnW$<#Sv2nZ6~`$i=<- zEx@hOe|pea+*+cwW!!CZyI)RQp1DFtT%u?aA-;VA=SFTRNFYOMEc9(GBvbw%;4SAJ|p#b)nI}1gsCFP3Ii{kS=4Ovcg8|aGE7lE zFu5~XGVt~#?Xk?mW0teGc@415j$8@Z85sH#j|yVg^avC^#MCFy_kIu0sep+JjZE@{ zpEC@&JwQ}^H{VQEYG_R9l-z5+bYZdkg}b7MARW;VLE@{W8lNWoJ=0&z?JuLvt*-2?n;gYcz5O$3 zKz&BZzSR!S!gb;>6x1P-<}rK2PZ|Zx z^o*!kbddt$hSQ!>rGc}{3!nD*U|@R%aJqdX`pUTwD&NluTw8U|cU*Q={;E{&KLR*w zpNl&<=G>|zTuJ&mWR!6*FK7sWJ04QmXK6&QoVLeuM)5X34iXkQQaRG+TSu^GlWHtJ z-;kvyUHh@t+Y!ddBU~=z=E%^r_I8WBAtKD`6R-b^zHi-|npWBKb^}@iD!=j~gZ6w` zjg@$ejdj?Wl|^4Y-(;tD*C-T7CvXDNSOedQCiCfl+zyDKU!_fPM11R3IpL>6+aGG* zqz2pyzmoFsqp>tF@#=D#SdkJv8jq7{$oJWZ*Vs$2+)>{6T38Fa2n_{aE_%qVq+Vaf zD!SeFvik&ELh~$dS3doeID!9>w78982lmzhEmX@19fDhhegZnC8a7&1jRHjP|L0;_ zU@{^{HEG)(3MA9^%ZoCTq-{< z)3R`=rR0VOx%HRb)jl)<0TJd}O^?+A*lG^9f=d*IzwMT*mq)DtMn;)oATKq@qO>r| zs*mkPqL#O5WUHkQZ+HX_KmuC%9dC;kZdEqSk=YSfKvr{xqa^q~oB!wE|JkJQPNI;jk0iumc~SFq#BF*n;%0d0Sv#BRU_77${iybHIv(p z3nPkfsM(5rW5Nv<)EAzQl;_aXu3&}XeT~u^vzXgT3I*?pMLs@J;6)0D0Eo`Zs?|~i zzqJ4I)jaTojfh%kasJu`6un-h^GujO4?_ypE`Kx2s9(QyF*$^-XRluZ$EXe=52$@H zNrS4J3UJ|48Sk@|lhx&W{p{^u991QkID4}`vKM<}26Z+3m>?G#P@@~mjb2IGz+BKn z`EkllD`{Y%H2!t2E=9oPQbNURwUUX{7e*}=9RPV!UXSpob64f7RN-**(;&mTDxoT^ z(3mgIXfx{CT@^MT&K<=RmCQJ$&?zWaE63nk%dVDYQx7G-^92vf5<4Zx@8-Z7`2OrU z4Fug>E-W3T26hN^HjM>AF{B^99=vtw;7wI%Du&S8Ts6#W_T;6!0T(xb&`?@Qxr3X2 zVql09JOQ=}YtBVdi-eJ*)tskMxxIA!T|g>m!M*`(mj{eNgOpJTM+;YtNbhw4lRdA# zjSx=ta!fLTQ$iOtW*_T`Q(MH74wTc$z&NYdv;jJ^%hosiV}T^=ykH#8?U3V&Mk6u! zTuDugu&-9=@PycUaoDDs&@H8qOqwb%F1>5mEla~)osBSn6EE=S;-Je?Kj20wo+TrA?RhQKB6>7g1+lC#+P{1s=Mn;T8&%CMKv_emf zExX@JSMY9&_85s?joMx*1MD85)99yOv!833=U<9uFPysKY>Rc2a2$*6)Oc(T3|ha- zK1;WCzotbl`)51DZt28a!v{X6u&wA7YF{}e(1H@*vG30xPc*$*xNXhbib=H1NR&7x z74cqn4Sm57X3nwXvIn0W&C|O}2tP<|xJw3b!O93UOd|HwLex%l?~&ik2$!{`D0C^T8_G; zHAp&JNt8+v>^f>vJ9G_0nD41q z-F4+LQ}P@@=Juv*a7^U6+e^I|D5Nj{AO0i!jVxIeQg-590tC7AA9MczpRF@zubO=$#v8V{*buz zy~wWV=8jW{GZ|ev_<*hTLgo5O50!#ZEzk8WZ#_U)aN9=~70V(8J~0ro-rsAoJwHDQ z1s!_@@p`GB`QqwTMregz-V6MOOWm7=Cgz4&G$bu*^!)Bf=xBYLM3=WQY&^$uCaCmz z3exd~Ua>RD;`wyzLs+-1@Q<0FIW3xw6xC1bhKZSG%F?r^i_jf^X<#!>d_RW`g@yvN zk4pgF6`=3@Ux~Z#dPoy@@CKymK2^=t*}}Sw9kgILg-e2TB2K>-y$Ux# zqF4EJ|70yG+;B=q7;E;p1Cur&9m~D6p5gw>N>)O3%RJ#4O(kQkrJ~|`^wU|&a=G>B zFn_Xu8^?5H$7q#@&G(-+M$)Z3Gq&=|{zdWg+Ztw4rZd~_A;MuZOYz$?c!;l^8pW)U zumTD5?%4rKZ3tN&9+^lo^r0x@z}Dqt7)7ewsVH{?m5b_SFi2dY9c$ZA) z!79G;a1dpuTN@-{e`AeFAAUS~C@xK++I`8;tsL|bTXoc*n)9YGcJx>5r`OEo|FG_X(9Cw6;eIP9(dQbhdfH-7~&X~MP z;|22(4L%=5iQYOymA&S4w_?(KIO1C2~ z@AJe8dxwa8^;Ro(WU}Udm$k(hcKWL%En|5u*J^nN8pQvrT*k1g6Z}IIlyEiKa>-1w zsGSaIM1&|Jy$hSG@3flFo!t6@S4-$sgq|PW8^mUk+B1x-IMmN76dULo=BpR zVH!yYo`7iKuAeG*oX&Ip#mobfI#N~Mo0~r=SojT;oq>B@-h!8*%CnIJD>HA-IQ+9b zb2Z+xc^kDXFp6j0gN<1wyw!Dot5Im)BbcL1j$mUXRV}%rJbBa5iH6BunXb)hZvU+7 z&x70<2QAjeGv>Ukpa9zA_t<9nA1p@%o>~^&x00te(Y@F{xr!mC-3vW~ zz01+=70I7B1=o0s&Hilcxv)oEq0QX0_#6$V?=}YGs@D^&w*2wmE^8pyBsYrY9aWYe zv;=>MMGIEtDfJpFY+>%WZGtd5!;nBf{y;Xdr!(Mj;iH_Ft@GClr<^<>qH|rYQ{HYM zHActma`)-C5dW8x@oPeh^_bUc15S8^UT2o6htF222JF@tp6W(3Y;DuOjg?NM5J*RK zW)G{y7_5~EX$eeBZ%W>EoCeWD3>T#?AGCP2kwGd*y#;lPX7>#~z-YrM#f@a{YWY`JTq zyQRPD1&#)<=8NW6e!7OMI5$Nw9XG9cqAMJnfR-Czhq%5d{VUY3qY2;q>-&w5PBBuE zkDV(jc4Z(gWUytt!-T#@qnBwWKkl`F&?3^M?Y|TrQ(Qd^4SDK6rK@0p8I}d`rmqDH zu?;w^#zZ)H4}WLheHtp5X|@wnM6U(6_-$4o5sD>}fa=6D6puJ)?J~tFi>54DnbLNX z4LNB_JKL;qi)K4~NwTi2nOHz1B>CgCrSF$}pJGsgD1-tI5N@pgxlA|sjkg%dA&F7|;#{}f{BBv#51PRRnfa7{ubTn+0eNFB%Q)ZE1 zZn}pR?qCt!IUahjYNlUOuiELf4X4+~r0aQ@@bi2Aejfb?G_|Fz`&Xxy^zR8@s~uCh zfAA$D4YB^np$@=3GFN&!@t*#)m|4yx|9GqAKoIytD$rE+vlwARt{PX{{SUb=a_tqb zf3cMZQmKdCJO^eUy{7}sY;W6asq;G6>8F)?-lE~Xh)2gJV)OY5ena*OHb(4U-qM^F z>H%g#3}`#?LQLX@!l{LWVq8R_ayr=eG3_T<3<+P-(i#&xMo_IwUL3X&4~Gb%=7R3d zwYL)WT>0;=>*kec<6OInZt<_THJTFE>Y$!>hvNADH-JGQ-MEwb2H+k!047g_iO>)K z6^Wvg9NLJtg@lhsy3@E4`bo7*j-M`XOBN6 zG&!GFC}mx_DX+b(0v0Wq!r~eR? z&co#Zh`8EyS|*RY_e18=DZw?V+$rF%>fwjY71KEoieI0y&wfcD`)iYjFJpUo)IZZi z``~-SkKs_+YC6}I#982~lkO9Q6pZ)Y0>Fi>2zgqLF|wP8*@ZhBEC)0>jNvWb)DqHT zd1L5a>gl-1<7*OIg-`pR{`iWXh&}MHHN63@lZc4)X&R_?TnHvGeNhU{f3Vx+1vly4^jhpI8-Y_{i628H{Kf??kKQ z&eo4_G#27tB=`eQy4*2gnPJhaG#jjptSKVSa4 z5%|cqUUqW21affyQm`|&abx4gf3Ow+q1V2G$g~sNfy*|@TlDKMz~PD0?PbYtN%^4` zN4pPV$D~)Cj{Js^_RKifK!l`-A!`+L&!ii9*oy^qT_8WOi*Z$;{gaqC6DNdl1td?c zo?}ODKArr8s@&)rLmE$i)otqCZ5It4pgK1sKSIYS2suP!O;C=>jV+xnU!Q!n}%Kn zKP70XXyr{-4q(p@x^_~Wf}k&5nnwL{G(P?E#a3q3Y$@bPXkg#*?=OxW+ID^8K%vVc z<6;?aX0bK`b<*D?jr6>0xWB*R8mEP70^&&3P=KLJ&ucu-!tn&7VTGpYMbq5@*kIS| z(+-OOh~T4VFJ~l%H^2!i$=I!to~q=l1v=QxTHp=f;(p@wJ(l&k8hWK!xSg$c*Z zI0?n7t}QAPiggHUMFOHwH(pLex82vuew7m)byHFJn6K-#Qu!SO!24~2bx(S#-6x?E z7xKIDb?>FpmdZd#6I`akgNUd&DN_DaDCsnp=L2R!=E~KosY}U3(7AxFr$b>U0DgI( z`|1>f4*cN9_R2!+t-IlqeHTp#>3$Q^7Rl6b8$h*bMAz`ersirLB3oRN$1wGru3VFd zJ7RAHU*7JPmG(GJ-c=6$0Q-yZ&p14!&dSA$qCU>bkA=3~vEMva-+CX-9mKhg=jm2J zm;|=;8dfy6WSZ`@UwWIo&)&X(1H2$7lu=y*v`yLnKUJTDw`YAzxU>;#d6*R(Mm5RG z901EsGJiq|y>fg=3pLKd8YJ)it;XYVmLCmJx$|i(z!Sh+V#_Ee+K=&!6l|Pj=osf_ z@L1*LyXqV9?HRi`$MDbaL$`r54w~Hqns7}{M42=oDuNs(3M%@36z1^tn~u`sz1$56 zlnHVdsxV#T^dg^g=^HGMEkS=ry4G;DXgJ&t57168-2! z{QN)r|M=lPw>5pw*Z*&gWbTV48$wYe7yeRxUQXnpCmXgiOhT_x?GsWwt$KT}70sKNeXUuXX-1n?yR0rF1|ltY@B`mYv>@s*bDE zDSoJ`a$Nln@roZNy*<#mH@CG*z8^jnbc8}?DTgbm2`B!yRBvuo0MKlcs;EA4{-kIj znyz0HE%?Vu6T#+P4bBguVm4owqRg;m=uZ+7pWm)*4E$LtNg<)&3(o0d12v&vH^2to z2ZM~)5~LK4%T@K8FHZ%%FXcC{tr`iXL+lCGm zRBak&`af7u{iXWbwLdAlXP<3jV(Tw?e{GF77bBt2R>E{R%4UjT|Ffmq#Lhy9*rCtI=scd*{Rj{ zzOo#P*1moQV2}JNQa)l_?7zOz^q{(qC(6cq`=M}^F0HjOZV)&oU*DRg%b;!DbsHGeRt3pb+(!o1~4?uGAaqzc?NN0fAN`fDXFI zoK-B{W3QA`H34{rpuj=veVc{GlNX2$iJONBw$|x)$xhOhEjUVMV&G_$C-R_N_iu_! zM7}+s>-oa?=b*H99?Jp&4Q1RvPu~=d7{q%j6J=N_p1Vhj6#e#j&+5hq;QI{w>ZUgV zCKId8Rn&#ARr;fTdtylG3BvOBNW2F#8S;~Pwcb?@_5L=}SAF^e`mzN*S;>ODBqFzp zB|ANJbfKi7B8ts3xKUSl?0Ck!4AxuXZMGR)-@T}Vq3aHNRLTc=f3$h}IZXoD>z?Q^ z)*yn>`{PD*9v>@w2oSBQiTA(7=a^Cf9_Tp)$#XjtA6)gJ(}#C?U{QNEQs3UBNkFmr zW^GHAg*ievr|ExNK}4%p_l%D810nan7RcIQ2s-5NJbAVFmZ-h%W7lU!9CPkXOgN&! zLr{EgOC?*UPN4Mwg=4yO=!iC!{^0E;BbpP?U0}$KqOhx`(S*1Eklw)Q@xel>*w6EJ z8==~c*FCR2N% zNou9Xp+9scToOZ>E5rT(LvCs}A3UkUIWn&rZwYVe(CbZ410L*EMc!O$IGkQ)JFp3n z^jjd7Yel>_qzL*{lEoA*=3F?%um3PCUHGD7--hB6@bS9RSCI{K-a0$jd|s&G!nkQ$ z5L+Tu)Yf)v5@&!yPhjt7=ST*#`&e%u+q$kk=?*#mK1cimO{WVN@L7V|*~v80555#* zK-Re|Nc`pP{zClDAm+kzjrDZODD0_drvru(y$&{lKilZU(0{M}Rz+p#s>z;sv%IbR z`(ItHoY9ZjC&YcZ<5<0ebt~lRi+i*hJ<7lj2?mBE(MU*-=;e*8QMKD2XMHEpdo!<|hOb4a#l}1jXq!}gK=tCdG-}^5x&7RZ ztZ9ug^honLwwnT-#c9KR;<*7+A3nfP1ON9ZQ7&w>0D@_vGFOxf2@Mc`OAy zcOVs6-aBU!tFwOJdJwOS1!1wiBZFa0;li~$SHCqB zEw*CVEB^Wnvk}v{*#Es02`i*(5d1PAYjh%c6gP{iU}%_77xR6#+S?h@d&@xe6+GL^EnE?P!V zEE#vHh}{PRQDLPqYg%$SN$1B>x?)epwqgJInK<3On#I+H#iK8rp2Kcjez?-uv_6EH zy12oM!OB0&Z}#g_k*6w6Qp^w1f_?<@K7Mx>Us;dTz6$Njj!K9bF}zvkT;E$ zF%6TKS?tRTT0VZqBX^Y=z{hJde-J!1P5^Tj;wK~iuK)7rkAx6;6j$UMCo%qS#^xI} zZ$^s!J{%jAGF#c}vbn9V7NAS5IPwj(>nr~%du-(toxS85BFy$u>hU0j)t#2{7SB6o zf#c6ba#y)9hU9!t*|S0@d+M%4aRKC)YGE-q)~1nfxbsic{-K>~0VE>oL|3>`eJ0zA z-D6uqd-JoGyMi9UiXkO3c_Qc?*GN~BjyFqAdZ&9Rw7F$w{K!tADSJ3jS4T?3& zkf(JM5*sN-HC)`c->3H6TpSDrYWAeZUXk?NtFg67`B~R=Yi4t@+WkU_Hleuo$}Rva z;1ok=^%Rp5kan3r`-Sm(RfbKt8}1` zN8{+LielcsloAyIIqh6(~L7_^Yc;l*XECu|3}qXutoK@(Vi|z>F#b&VCV(` z=?+0@0YSPqCEcxbNtcv#cXtX59nv-AoO$E_o^!qd*TXz}?{%-We)kRcBWd^c)I-h6+atT&;N9yOWVxgr>~-i= zX|xGJ z`u@#;4I|q#usyTN2^aFwON?3B5P?~!C`|tXQfuzI;dj?OK0a>N8M6%grf~;l;`lms zLSQ5WsbEYdk`|E6@E&B4JbC|d-}D~C5*Oj9u3@VC?BKiw;=)cugY?H|!!PqBV;}H} z8gvSkkCs^vhLb*q3`P?3M=e+`hA*-kNgkh?Oa@>d3n zi4Uo!etVKm95h-JN?hFj1pO%`N9qz5bQ29q#MT>$fxDS6TxCqmveg0l6EXed{o1V> z>Rc;Q6epn{%(amTLp#Pd^>;jtj3&#sSX8Z7m#8Y(g>dcO-oxs=plQ%+G^FjlaMVN?Fe-nBqJ<7vE9R8j6RCWXU|ls8N6Q zdvbJq3T{`wqr)-A0k>wZc3pwz({lBR=w;YXiJZLdf+hYsUl8+|)Bv3lB#Bf{E5To` zAQ8SvUf0tKe}=V+U(+$`f>rAxRqTpd(m z-qA4BmGmRG(8m6dfG6y?eMHUv^=<NRKr0+dJ9VPsJg9L<6DE|3rN)E>Hsn#G#%G3(y0?c1_ZMX`0YQO9z z43lOqZ{-^!ewcI8XH!sEEH0HC>ot#U)u~D-wxq9M7la%L*9gVy{xKA8%oO&cysZ7z zF5_j-txx!r$5GtKfnbLInWMeo>HuIbcF`7iU$8KehNRgKw#G&X%uF~MF?3#gJxD%a z*byQSaLY^ifs`m+4>(jma2PgSLoAu~o=$kbK7A2)pQE@fFo>k9d0}CXVOn=A#My3} z`w~#()0~dyw8KdDDxMpdUE!VPv&#J>(?^s4lS}j#Pm|jF0H76zwq30S20soBvinm z%<$k!OR5|TEi9%5s{I$8Huwh>=MmRzy*#e=A%UroC$K)lcnBFF3~QrWP!lY zr*b~EEOFAKdb>p~k7ccFC1x1?`_8+T)%TLW>UYoc0~E$}kcXJy-L1K(K?okI{SU$p zI-hHsFukqYLqAiCxsRE6UdXw=+!Ke$;_PIKx?ym>zD{Sp=UWc?(0rQr<$`-v0lQ(x z6=?b9nq%Q&1&6nz8|-``Zm*sL9o&bi+DZR+&PJG!oz9!}GeHZ#Vi!qYO6xX)21j+I zdm5g(`)!C8J0-K1i2^24OiK%&5x;4ap;XSSDz5(?=C-P5R9UVeNPqq_rtm;+`ImAE z4vE-YT~us?kFHag-_5me&@sPoJOh1H^tTR)I%ttujXS=83e1?D4CDo26e! zhYnq1OX8p>F@Pl(IgN@LLXnx#jIXo5h#Z7tGWi^!3SatBY(jwUyLo+!HEEZ98PW-Q zG(msb491y)nMueMj(EAF`^q1jV>aI7y?zp|e~kJj3V%!3)V+ zb_>;GGq&R;aX>Im%#cm8&YgJ`Uq}jovdSmLBTn)89YEm0P#DZsK*@5(K#TsA1dGp+ zyL#J2v4mY`HsiGLi9wMkaW=#+BGjgsiGh-28|jJB)ksGO z+AJO~Y`^UZ<}kivd{P%-s*LFVebbG?MJ@Ixc~cs6YAUy`W>+5J712`Hsy*NiDeFI> zJmBA{JlnU0SsH4>JR@H74WfbEUx_k|Vx$BNu%%>h_;dQHgG9$)NywOx!CUvgy3fTh zq#Sar91}`L72vp*CeJfY4*UGkC^t!>`{w~B9rsM3eeD~eQnrsGE?+9h1L+M4V}>L_ z<_`wgWvsy?^KD%}21s!HaP$J}3b0xX0Pjy5wF9w?aU3RjzHS1ToNv{NDf7i&YP&)% z)NX`WA0&PaRKGk@c%V+5yQ4$NROr0ug1^slMVt%6hCoPzOX69t4$Z;1xP#-Usz3iaEYi{kIAL$dDqAOhrPhMwj172jq zHnAlY)Ec#qfm-kR2Bts5CZtyqVp9Lg-njpxNZ{LV$CtZH^GWGG^=dfj=F+Qjkao|% z4x>~1OQ)>%61uG+go|sTbDy;W9~4{P&A*e7VpZ8hh-u^XNpLi9z+2Fj6T!U3XIOR~ z{$$r}G6sHvxGI}nH{}HQZHy%yU*P~uctLqpmV3au?@4z93G@`5 z?`2+0`6z!t0>^Y_@eO3F7VYqD4pG`5kg#3&<_PA~+eF$cc&_zmlmSQzp+B*C50NSavN40GGV57j_6?SaMWHgcI z-V^5ow+DNwYov z2?2QSf{;o)JazCB35uNAH%)IiQc)JL&C)%%P@GSW(Vt2^?>D}zJ-b8K8}dEPnzNd^ zpTD80E>=0v$)2YTTkC&@=fWc{JTEr8DU;X2jpx1T$x$@uReI$p*hBF-S>%{A$(M5& zXl~+UT|_GEBZ0=1t?tg5-KJNiKpBz*NoEpTE)r@P%W)>T+tgITuOK)!O8Qjal@FZz zktNM#riXNNDU;#u3KC8j^7b`<~px$1s>6OrD~FEdklhGihU2_w<$ zOg|@2FDqn?)V>j37dgSbxd8UIJIQWkItLZ-W(tWf0=-0iXitf9U5Cs$00Qjj>s`<6 ziKNZn!LS|B@c|MPB+U(koypwg#;#sSoh(Z!rxwf-;~<11TYi^<1D7s&WT;LS@!= zpj1|v@q3ou1cR0YYJtPfWNfjbDN5E)w1D=K~(|G|N^0x9|2 zyND(SBlU$J<*%wcwd{gdSV&RkTGZO{%giZVn6($=oEAuD^xMt$DI55`XV7}Ex&GOI z*zz6KA`L3AIm(lB&wa%wmK}x%7Ym+_f>URh3$hU!(vnOZ^7);&>7c9j=N`5maUaUo zz9)edeeC+>pEL(u;=7d&?e~!>^nv#-Ou>1(g?#ZC=@{AR*3rOd#1vaDN7kZKc8xD> z@2?Dq@SB88!+z~2&Oxg~Dd$8r&v5?1GCm+wEGqayT_VL%WX|=PM=4Y-1O2MRmvXS& zZW-Qj=<9&TNeR((awEPyrGNu!TYt0FriP{LOFmyroP@Hj)weQ2_rG7x9;R`x#SaH0 zvcM3%d*km!f|;A`1~oW);OWpeid(AT1aX72w6n_?M*dCRx}sVi6XGYran&V6AL0Ro zdxE0H^ui~TuTz|Gp;*FV)#cYOcTlG1Val9pru126?CIkUTfHqUkC+muDAgBGT->L= zEF710B@sphmIUnmu~un1MHo+{lYxA1@a-0IT7@h&wb8}YCS|yn_{10~;o-S=$oh=rIOLDrHH)aJqdWCS6TzD?rx0y3pr`WxKAD>fcKqGM zArAa~Xa^tf?d6?&^%G7qe9wMa=I+cAhu%-3dcCNi=WP$-Oyl?+XBT=1$W|#JXd+n* zX}P{hq;MwP_?_S`7Xln3s3O%c1`r!Hf8FWWE8ml%$?M8pA9 zN?~6X0{`w;FNr?Sz=dgFkLk1DiZQ|Otxc4B1+jJLU@=QC2M3}k#>HmPMomAiKPpun za(W`$zRe!X#w*{3*)L&et?JS=bol$m{>DK6u6V-gj3qnHRc91x{_Xun*76fKER%FB z_m2RQH2M$;Rq98|DMt6q%3Uc=~1d4x%fz~ zT!SC&S`UA~G~uBkk4ns`P(oWC->f1yYX4>iTbO%rvFDJcj8MpyS;wOG3jh-)F+zp! zcSpQG?~{5F#~vkm6MqU{DgTVCKE34FUr+`Vs1bPKVbadKUW8GOxvyv(Z9~6CL!BUn zFI-DO8v~Muc(0UNG5Bcs?-mo=!~P(>yX!I&KYuqZGD|_AR6QBp{3>f}u=VBPp7uF> zqp}8$>|nirW41Hq1M~qI0-SpnRAq!ke0ecF@ceYH#l4}>`Pe_}YLispB&FK3&E(=t zUZ+1_*aY-3)c1anesmWk5gX7p-pWO%O{f3_; zyi{S&$r6cQ|4x&X=h4~Zt)NqJVs@{V1Y=;s^@e2ls_E^1o7@6u*wfoweo#;i7&|05 zg62ampB+1ex1$Lyd%dXMD)uf{L8M;{;gE12Qml2I5;`*6w^HwLCU9P3-B_9RhmO5t zh-Ep@+U-70l$ckb;5&h%!=EPIATe{7t6&})F8e%R*&$Caz+=&vsnMR))8Nm4rBA+x zU}$ZElIfP6Zw|ZvFoUXz_vNA$k7Tb68JaiXr6)_~^2JV^T6+_$5eBXe2V)|KcA0#5 z9<;{CaVr!#tq$ke-$n*6bH0mE`-Q%f;I4J5A)+tc%;7= zRr*wCLrrp^X%o;n+mn*B|Ae~;lU(+c5d0k-B<5nJ@&4v5ehhd`yF4QUY%K82Jw`)oQljfF=&<=^G{;wJp+Bc;Gy#<1D*}U03KSl`4 zC^lID@rs+dwuVf3>WXac!CN`d6m&?NVukr4pVeY#)UDw`MCdT2B?6muSkyEhwpNFK zXtw!uTRae^=!CB>OfSb1>M=pF><>s?(wc+8I6Ks|P9MX%Gn+JNO@*n=zI$K}#UjME z;?nF8WF^MeBOH!eV7j%{%pV1hPm{BIP=}#Yn5zFzA`_^mn~_py z-w2nnb11OCC}nbRBEn$)7Qp@O% z1;7z-NQwPnT?4w5g&W=0?to!ZZ2kC!`Z=@C*L&MTl|L6I3a|@~InYUdx;kbV&oLi) zJ4~_MPl@Hi_UYn2fL<{#e9S4Elc6iQ4yWf`DqiDxm~jj8&+b-_Gk0dSZ08z*iO&1x z_a2WqsFH!5-ZrOSTCUyzTa$Ocn~XaJ|N2A5p}uTzxM70(*U`cJ-oV~B{+8!S)v%sB zQQyo{PqT8*)NWv-)kCeKckSE0hUb!TqP;Mxh-`e{u_&>HoD(`2tx0O_Ep1#${3{W9 zq&_sOG#{e+@{XK^XZ`44R^k08|SiT1o^6}NiRA_8>CTd zac*OtUFY|k@9h>`VtTXL=6rzwBlCqzMf-L)lbrguPd|s|*i@$VMhm-db;zZrm;#pz zQ$FUuD|eO4?icG4yPe8}b;C|Jjv?m}_pvchOJ}xFz>enyeE?(Voo&y?H+3-wJH@;3 zK66EE>0S_C?9LN%;vk5Qe8k$~K`*ccE?m(^V?_+F`DC>@nh@7w57#5>{WM^+TbPhbYtDH3`pcB^P2{LI&6ijzb5a3_}i03jhR zxNs!k7td_KMEut{GHi6W!?8Hm)h#4#l^;;#=-juNP;yt*Jt*R%RlS$@19qwEe&_?~ zf4g_y_jhMGnQ4Po2Yf89p;zh^1Zdow5vnp)G?QVUiwUy~l)2M4r>BQ(qdzoN7TbY( zjjQ@%R^+OTR0Z*BQ}hs!PLkQ%ao>;t+r?gWY{9pz0cecH2&`o8+!TCiy3Y+_yp%Vy zzj#bWaF^kvWmFkuK;?$9%c+$Dy3b`J<{*^ZyYb`U8jXdnvpbb2_1zb zvlgP(&+`%ep31LlFU~^m2Lg>pOl|Z-PO(R-w5#g>|RRlgUtw2C%9 zZio+@o1w@*v$6D4B$M}m0s)h8X5oAB3f-68*A^~`gqEM1t0)h?yG_{}PB@jv4k2C= zbXFd*Eep%&NIqHDV+lFxVF;9h~)@h8Cn#GL_&|Q6%h@AIEf~ExemgBb4A< z@#YW`+-3RxE&Jf9%$+;v^}Fq_sA<~%oEbVB6KRH`ZtKY(Zh&WUfcvWqt-VWDiq~4g zX}t>rGZ}19n=}ZB$u<*=A*9ly#WyNjWYPt^g44EO{|&AP_q4G@J9@W1g_nJXt4@Eh zXM3~m^$$*MhT>*g2{017+pFrkwI)YybHz!63p6WFzt;;rSJwl0*~*om zV=A3@W>Ii&kxBUf0=j5cu6!nO;=&2!A&X`&#moz^3q1bM1^yHy8E%x+`QSkN^x)AQ z*3B+eEcw36n=pEs*F+bKgFQ)9<7VvFJ5FYV8=`Du;g%Gt)Zq76VN{+6xw&X8&&3jL zDv_iU=~})+n$aVYVVutadUpM#H0%*aI-Hc7+Rv=OuDMMstFz+hG&aLht#in~;C_OPoou(9!Og4?2r)2aDiX{WB>;zK~>P7;~ep4e~Lu9`FvQcs41wpEFOyhfVbf2Hiav12%Ih-u^Y1BYr)sI2vK@hs8<> z(L>5;d3G}(!MSfDDDvj`@l4Tay^KXEa>8)25(5ZFZRbo}LW;>)Fu~5OA{0R7Cif6K zzvdd1%P-MW8bzrJSBS~q&~)NWRLeT9myMMb3=v#ovcwDNIa~8aDdJ3k>SVpWm82>2 z3p*D($wY%<4}MUO_TRK~Zn))EYwnZI%_mptchzC<6%2k-QeakJTa^&2Pzd@US(Ei_fA?fTPWq^4XceJnCLVw~jOBjBq^J|Jr_uZp+MfC~mqOb%iYjLoG z>tZWS?rW@$gZg;0$kBN{yvzCiND+Af{9bvoSyPNy(k9SNm@G^Iw*B=N51J?t{pW z#aVPs?%O#FzE8@y6djXS@JR@NWg+nE;os@b)qS%kOq~9PQX-?5D)#Rr54jdleF$T{ zQHqoPO|TTENyU8bfd_C;NBx0W{+?p{*?)W>{|cWBZTv_>9TBdTF_6n<%&@n&KOd-C z4!XfSNv_^s3H5ML@8BOJHj6+-dOB9w4{}oU+iJu}HKF37C~;CJ&Rhqmpc=BMqA(vWXH|o2Qp|lf`yg+P zbe-NNYzD%>Vh)}wG|lu0^d^%EsGGsmDFF{n5&V%;m};QuZ`E(mQ1!)&4sg)}1!3)1 zvKpoFKgfY0fmHo4tGcY3)MAC4a)BtOA!AoX^{Xtejmw0A>Oo12mI2>`vW{-C@>dz? zPecHF(Zwm$&0q~NyalmMcgOUuq%;mHjI~diKs=M#Hv;M?_H3aC=Q^`W#sdBdfkW>s z{lu(o?*ie7jM`E*^uc$IgJ#*3`zrlaaB;!s1NQW7e&%-U9kk}=<{GXy~NE_To-q_NvMKBWWO!~PZ|oH81IJWTw)>_3)ivz7aZdwyVX>T3n~QHUkej;lIOl!*_|BrxIbjOJu2IvnoEH*4@^Ca5>zp>`rrYQz2TsMK%a82 zyD$V&A)X?XN+6`2ot@fH05@!KkcdUp3pYLp;;kmA51SKi274;VxE^xf)A(I9!7*EX zZAC%q1KX{Y6YxZsw0aC)cdtnWN#qaotAXHn&#$btoVMg@rAt3ufoqh4^fF)XX3->o zcGN7}*o=ys5NhyFL>A4Y8+|@EA)R{KTgNWCw(5zNOhV_Mt~(?E(X}#oLs@}yDg7Ai@)<=cv9IQR+Rr4r zXZft!vV1_82;q^%z3{OHyDf*!sP()W9OP8onsn6mw1@Uot5Q zuX7ciTqtOX={O%=4WH#AY)Y5O%ez4~F`f(8)wdY@lgRn-YfK-z2QJ&0d5E=mI=o;b z{>wtn(K>66+QPpAj{n6?*xrPw9>yQ6nSb zKU|;5Iu$yN+_n-@-c8LLe+%&@WDm8$cbdZEVB6tvSxDwW#@XDKEIcgvXk;{zwDsK~ zILfTsLkpev7y-tD=QoluG0Saa=x?jjXr!r30*RWCj?R) zqj#RZvh_G-)F1IfGVTRGp@nZg8Sy=l^F0*3WvY3zbZps!vDwk2dA}zyu^*qJ2 z#ANPnb4|+MD!@7D(7y){ShqwMHPJn*)HK?qP|v&q@Q+kuPGtv#%u0wG4pbg8$f*|P zMTFi`q5T+r>&lqFw{U;@R7L!D6?U(Ep0q&JwaOW^B$Ei1zP80`F`e55WWNw;va>c3 zeL7t}a%qTtqeSgJ#O7Vc$(Qv}*gzN3H6W5VT-ibK0iLphC)% zU%l-$$Gamc?e#c{MoLoHtP%#S6*=L!q5O|hA!Aebu4;ex^aVvgerncm_)~dXVjAp^ z0@Y+LysQY>db_d;Aw2?k+6;RYyYMY?(G{4 zOXEIKD?H^0_sN^A(FyF*`Xm#I#N_KyqRi245_qADT$zV)gtc?^JCHP}H-=>ei8|-P z!Jrn%2RMLpCgUJqFt$?ed$!j12U~K~R)qR_@3l#11KlD+ zh>?Q&zvCN*;ZZJ^HR*Qmw{J?qx+5{SXKsE^#nr2%Pz$Zohf)FFSk-wYc#$GRnqEuv zwP&t~%6n1MV)&tJYwmO34#vRN(J(3D&39l?l)*!@cR3s1D6!z-&~APdU2p-8Bj-?w zV}nWO{Vc$LlbpIg{8O(19@nYox$PAQj!`tA_R3XNR@|5`n~---G#ek!HD>?Q(039i z{m(VX-QQpD=B1YQ62#DIQLe%{z~T?QQ0gT?Bln!MdPEp=`rqIP`1YsAyGNX7GC?t0 zHQFyoq6=kkO;6~dgyIkepptz0R?l6dJyZtYmC&d@)BZv#eli@t@MZxU&1j=LPdQ3` z?N>FA+;i&kKI z?)MCHoki3ir2jB*uY6P59rPr6{*_lJgGzFYx!V($)(MvM@Li1V0HAW*dh0)1=8Ci7y0;ysVe;|+7e z!=+6^*x%nj`XcWNh$Ev*ko z!qVS?C8SG34IJS@1<@XJI@9)jcGtg4wOtHBgoirW8jkSaW>nF;4Yo|zr+FuDqQZ1A z(C{pf*+_dZyR(U*al5*Zj^q~7HI#>Yq|#QuaN>-imSE_ z1lYR9Fq73z_~om9^J^zr!Y~tT=QFI%eRNo2?LkyN_X3NI0>>rVl)eB>5_dR5h$T<~ zd=ZXh)u-pkgpaIFyTEyB74D0)iB^4t>6Vs6uE}x)AI`G+b!!~X6K#k$XaADGgI_3; zM@A)1_;;HNeF`{F{E#sBLmU7afGuinCRc42a)e>=ozveOl1<2}%AmHS zG=ax-V<%pV6Yg4nMpYm=PC^fU@8?(H|MFu97qt=`9aHs75g5yL#h}*wP&E3MC=5Hx zUoq+Ekfsj-&QpbW3Q#i2tJo9Ruyi(j)*jW4{Q?fi|C4g^2ItvRwu7s1W$JAQ@l(p5 z$XYp+=0=z7Rp#n4H44LrNJ-+q_voSu&lA3q(a<8(mL7{9wrddz z^fj?%*Pr;+rNKPLJwcY>r%0kv`w;3k*|5&*IBzigkrVZp-9Flm39@HK{Edt?VDg| zTvW~)9Xe1tlURxJ(~T%QR_CJ8>|Bu~QYc*H4naKob=PBfcOtw88e_vWBB@GEg}jpK z#SmV*;%3>#^9SI9`R#qtI-6!DFhNs%z)64^i~wV1r;6%~5yF>AOPfKLXt|r+W43L7 zEDmkDv6+NEQ?D8u@0O?{UX|csWpe` zk_}A-f}H2ZYxdyCz3=!^*`28B#SQsBI60@=IaE-H+Um)Tm{{Lm&FwrV;R0F-gaquL zDj!=XdDY?+afb_VE+K%-gM`EYo`+%KL!WmcZ)?gF8a$6E$>uaXj*5LzFXL(J-3Q^X zTe7KdH&#Ykse7!2hZ46YqQH2Vf@9^ySJ>h8Ms%5_c<>1o85CA{Sle6X^p_)Zpa9bI z0qkzM%qO%Ov;b^|0QCjN23r`>>EQ`D%ez1LeN@l?pA!Y#4B`LWg3Zww>UB}WF~eqn ziJ8_BXIBeIb8vwsvYo|wQ>M0VY)NuMCgIZ`czf$Rm5N@j4fj)6Bg!j$=;M{fq6=Ef39Sg-PErPO=TGQp*_Yr@6>!K+|l#Z z`Cz^4I4=dj3U42-O;Ij8FGxQ%jEviu7sC;7zM36)Xwi@l3c^S}zk@rf*S!WqeK~w@ zF956U4Mwq9KLNYmLo-Ds)DN0LWH5G>;lr!Rm(ZsbwKW6Wz))9phIA%l4AI^R^t8#q zp};36mY)(Lbjxg_7>UW~`)?t4{_;}+JEvf&NH{=RHeC`yclkNqRN`o-=Dn#^M+)|O z^pfJ*ZbBeo>?%FW=|ni6i_b8;WGm|Xe|uR)Vm?j8QD*ABV=2KlDyLp<94U-!S#flb(3EeVb)taq z>%+zQh$R;0!~J@Sp-FYrQCzQG`a`|*DO)YHYd$>@LW#Qd)L7y76kYNeHnkQ@lNgu0 z?cq{2lw^&h$Ea_ZUfmlATy}y<*D4ZqCd!O@PpiHZ+O`&o2<8`|@V+gBQh0fv&`rPbBX(TVdoe*Qan-kNV&j%RGn- z#qp0`ggionu9)HF&)6&&Qi<40@)PqQfWnYIez#n;4Ot8X^(sC1PLRa&@6!|Qf$Z-h z{EPeU+HM=JmkQ#hIR!UlJ$%gQw&4RDJ=J@H3DLCyH1AJYEcV@KP#;n$L9%!}F#Tei z^Gijzeor%d)$brGe+aFx{}U4W5-l5&Z%Dx@m3qL6aGK}9HH08Sxg@X)S86{~{9x<# z)GzC^4;?QLXHI&+Xw*TR__J-t;a=Qt1uAc$1A(Z^*DQE%HSZ?M?1nQV92lQd7JOfT zzqNyayX%WY^IHe51J~34ohqyc&vq_VbNK1Cja!J}YX7(Ps zFmV>HYDHsr&P|b?Y`U0}!f!rbi7PdVm?V8m5+h_jkCEg~VAR5KC@32<&%#*U(DU{) zHDkd6H>ZM-1xx{$`@K7~U&tWT0_=0-pD{o!?@N&+F}_xc+s?~@W~ky1V4xh0721!} zAW|qQ4wbKT41kBa{rs72zp1LMDu;tM9$wH%k1mn)h^a zXT8}Gkd`TkkUYU~KKG6ivYbk0HA^;if@f&C4{>hS!r|;h4kFkF?M2QV5IUmmB<6!> z_?rK2e?Ek5+Blv#a$m*XeryIrdL{aT7+ss&?sGfiwrHwG75@9V(Fk@Qd_&@Lgt9X< zU)*A^+nEt*BCJuu=KO9b#-Rx5xFcc(_t0~2uZS?z@pjv9A@+Z&5=l`7TV5N^LUl|T zX23;XnoF&x1LiGr8jk0mL8qeufvkLyt_?wgNAVv)&{Yhw5Oi8xz;b$jjB z1H*>TGgqsHDH?RFT*ciGXnZE}Kh7AA zqUiJhut0BH5HwDQKiZv)&a-(vfeBR;76N8WofnN=DBJgZKHyXB{`P`bS@XO56PS_B z{|Pq}7kPgNFOD{GPYOXQw@N%pGH3Q19Mw=Wf6yBSD2zYR zsz&=^`u`_Y9oSB;%i(M^$8>5_8jQT@w=ZyptdLX zOo~OMocYZhnSpjm`Z_i=ixeyx?xij81T0&o&4B3vg@c_vs{w(T5uhW%)63IJ#tWMG zV?ZhYyC^lcHhIcJieN1OuVDd%x6DnN<`Lk zvTLpYyD-^;F@r2<&R6gkkGtOIjti26geX_Q zGN=I2%vS{WgBq)SM*kn!74Db=6tlHvj<|Znb(wK^AYtl-rd@4=#`x>9FI$BXSCO~f zus$eak=L7(-B6uIjzJq4!M&xA;{D{S{EJN=O_e1o$}^@;KTTSh&f0QHb|2a4s~&&6 zR?~f!9LeiFZp2F`^eX(5MGg=dG(_1FbJhVx#4rB+-J^-^DhJE(@?) z9OOhhT~w0cP2o;`L+xVK6W>B|#(v$3^nQB1{c+9XDWy|o<7(xssI}8ouzg?b?C0dh zg_p;}^SCW&eD{~T>JOAj@9SIcp^v7n z@UX>2jsgxdw$?Vp|NVEUR-FUxndP1GK`A+(62Hl$FQNS`tBl7)Uy#L7ZO9J4Ig)b? zXQ>vQ;-lhJKpSS3$udrq(nihocB^gnX1T9j9{{JU=+aHjymFxPx^Wvd;2vS|8zsu_#<7_C^nT~WSqsi}uD+ytY%@nEn58hAge$G@AU8m=J5#8cnx+hVuRkNuS z_W~)Hin4j&gy?g(gnI5wysue4;Q0;d zoVI8D>p1B2DiQphmAZHOUnD2R6k1fB^kVxu<7yVR0D3u7l}6L$ryR`Z!tXFbE6)GA zc3yVO8Aj;*Zz%?KiTF1)zh7hM?|p|fX4>soS49RR0tP}f6Caw(j|%TUsz<6)&rfLU z#A1fMJI+Ofheog~Qw-0L$BF)1sEbVPwH&o|n4v!2m$Uu?}!% zV;An9`6j&^{fvHLr?9EyLI}P2D-Z`U?jE3U8KBGp<7Td!zPOLJQY!)>vH2! z#BH!Ry%!H-#BMK9sVn?-QQakSB%e9 z^ankcOv#;UMfCyYIzb$o1O9)bTo?$&vsnD%q^effx%IsP6Rb=|Gdod2>O3GpJ+3Ku zriLRai!Ui0nJ5)WgngvWbp;ue?K5~>9d`Gr<`yPeyBRl*OHCzdd!^`ET-Tl2n;%h{ z4kT^cfs$IKH$MwXq+-N_0%K3sLr!r<||ZzAvN@NVvSM znKw;oTj0V@LY?1Muy8ljdhn)%@(t*SkGsr37MOwUQk4Eo55rqta;jw*S=IC}MOqNizq8v!Ka_lcMayGrbzhy{VUG3w=(5S?Dwq?4ODeZRMK@;}52Of6saYmMs&CW!& z>UaRX-jLJFG@jN2TD)d5(6oZoNoK2KGOUhuq<7BiN>H3~;nB~-_;y8PH2z^I^=ois zS13wNuKq4#YkQfy?Tw`g=2h%Xl)U!>zvb7^-Vv1Qr{RH9G8Qf5Jk$HF(o?i*Qojqk z-NOe{?rn*7(x98ShfSZWSY3M_-@FWn$887D)QsIm1^U6DL6V3ZKr7BnBWek<3%sW~ z#*Q4KR4XM5j1(pQt`qv0lkfPv;8<|>yxvKK-F}@b>788Q$u7?#^4F$I_{uzt>Z+CA z*z-|-g%Iy*JdZO!QS-J38TTTK`;p80)FnrO`guv=P;mWDT)5VY4xX=0KduXHBOPxd zMp1AcY31>_&i-{8kV|^#Yc@;!LG5{TBkDVK)@PiRgsOC%`mto&Bs_eO9K7;0XZ>6jUoj8OH6RFTB!aqm(w1|Tg`IxTSBI&ji zD~AqqRiIxkJgT0{M2jR6;G?63Zjo6*`qat_u0PnbG#V^{U(?vao%6b@w#=o(R3R%R zY8u=>R9D9x7rGB#jSXNJ$m}st4%nlf*ffd=jp)WVJCJ({H!qu1xaIq`TEpN~uzuPQ zeYc5Ll{)+T0iaww=8?)EFfSEsK`g6;pR0+Skb+4S0AC{|WWk5LXqztg9{)>1@CF0E zLn6X{f0HBdcr>8G^|6U=(^LTXStFkPlvmVsmN^N{D1Q8ZacHk4 z^YP*{x?`}Xz_lm>OrKc!$kxb`N9!-GimOhhmQ^Cg2o>@lG-4QUhdP&0>={~H8>Ot zC8lg+K1I2TefSOE*KkxjhG(iNSl3?P_AiNj@@LoG^@&?|HR=Kfo+_kfJWH+z&5bok zJ_U6*-CSdrUZyFixV$@#PQU0fmD1sRz1yKzD4gcl6KTQ~3*CEkm)JO6q=Ud2cEOJ% zOa_op?3Y_dAfgov1FKDedx2MGbR8-5IkxdH#L->Q^EeX<3HNB#EK$M$go>QG-JU3} zt+e*PmZ!~=KH|^o3KB=%XyUbA2uFK6SwHjKo3lUxI5O1lI@>4e!0(y^l5lseMG(^9 z?a|QdYip&9jEsJ*nw9u0}k|K?Cha%mQ(jC&RG*Sb+Jm-9$bI$t@?4Q=& zYp>6`@9Vl@l3Kq*N?`R?9~aGj6sN5X`ge~7bAd3X{4NEbt(B}5nTqOcV|n<$|8S@` z-;X4C*z7&eZ&QbCKb&aZ-BGI5gTWVqJDgYNE4EuPcTK?MTE26@n8xv5&B#$Pvx1$2 z9M_`fVXxQOC*r+9Z=JQkTE=1(*~y?Qz|~(@zY%fvX{m*ieTAzyV{y~f%zIkQKl>j* z+nG3{w+G_x&*MkSvt~5b7q->hNtN{&CofLQ{5FqkYc)HIku+<#_iGbFpPKq~T;`vL zukD8@QR*~Da|(G25Z*Ci>|v5vCm*wK-0sjT+AqyIvRr((Iab!?-1~cT?ibR4OA)-6 z**7Eh;YL8Vhf7~Qo0no3k?8 zmpxb@wz^%mAl>LI^07yj#y8@?xlOUB%)eEW@gvFJgA}*Qem>K3WHLsAi8B&G1<^N@ ziEYUtB)r{1!i20Dqt%#b9(lIq`4T5CGlhkE*9(~3O(_0~hs7Pcs*|j=Nq%wrE%KvV z-rckvh4m@W8QOQRqbmew{(c!Uy#MqmdX9nO49g_-DEucB4>ScFbSN}`6gJUfJ3egn zd!_kw^!$6|@$_9GNJyaf9m}WdbVM~Xz|Yu9-~Jj@73sraB?xIJ%l&pV=VliR4+x=7 z>uSeyyibjM@vWmXL;-t#>Ry^8^qiC*3BR8CzHae!lob9*3LG|0a=3gC!G(&cL)*5Q zo1cg^Sf9C~j0(S-OBqrL7GT*$*F>=)U^`9cnYVgJeQeh+W_KLry>}j{f_&#> z+9}(j$h|_oq&EsI*E9!LPc$onvdZJ8m!S;yfe)4-!l(XY%)j#yT0G_NV(Ip7jQz}W z6P@D=VDoJ+GH})26gEHKPa(s{PIp>U!p=C+zc}np@=NF=6FT3JjIw+j6Y^k0ZJjrz zNXxHbUl+9xtxndGrI>gdGqpLYx3>-&@_&6so%w8PW20hetyY{oS0<+i z-2@C^sc=d3d^=#;rV>P`<#P6=eQAF=0m3Meb$H6NdB4^LUw={~_PabX$F;d&A$Kz8lSq #fo7H<^_Tg%FVo9j7{Ci@6= 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 delta 347259 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�d= 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̯FD3;rl( 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

    (NLGW&`0{79r!W%ryBU&D>%$84JiZ3 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 z%0A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

    e%%q`V`5U-6&;$Zzh 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 z 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%0A(k`=yd!V%w;)I096A*75)5^VB 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 Date: Tue, 1 Oct 2024 10:14:33 +0300 Subject: [PATCH 06/33] Change the old microservices auth to private access token authentication --- v2/docusaurus.config.js | 10 +-- .../custom-ui/securing-routes.mdx | 2 +- .../pre-built-ui/securing-routes.mdx | 2 +- v2/microservice_auth/introduction.mdx | 15 ---- v2/passwordless/custom-ui/securing-routes.mdx | 2 +- .../pre-built-ui/securing-routes.mdx | 2 +- .../introduction.mdx | 19 +++++ .../jwt-creation.mdx | 0 .../jwt-verification/get-public-key.mdx | 0 .../jwt-verification/index.mdx | 0 .../security-analysis.mdx | 0 .../sidebars.js | 0 v2/src/components/recipeBoxes/guides.json | 7 +- v2/src/theme/NavbarItem/index.js | 71 +++++++++++-------- v2/src/theme/NavbarItem/recipeSelector.js | 10 +-- v2/thirdparty/custom-ui/securing-routes.mdx | 2 +- .../pre-built-ui/securing-routes.mdx | 2 +- .../custom-ui/securing-routes.mdx | 4 +- .../pre-built-ui/securing-routes.mdx | 4 +- .../custom-ui/securing-routes.mdx | 2 +- .../pre-built-ui/securing-routes.mdx | 2 +- 21 files changed, 87 insertions(+), 69 deletions(-) delete mode 100644 v2/microservice_auth/introduction.mdx create mode 100644 v2/private-access-token-authentication/introduction.mdx rename v2/{microservice_auth => private-access-token-authentication}/jwt-creation.mdx (100%) rename v2/{microservice_auth => private-access-token-authentication}/jwt-verification/get-public-key.mdx (100%) rename v2/{microservice_auth => private-access-token-authentication}/jwt-verification/index.mdx (100%) rename v2/{microservice_auth => private-access-token-authentication}/security-analysis.mdx (100%) rename v2/{microservice_auth => private-access-token-authentication}/sidebars.js (100%) diff --git a/v2/docusaurus.config.js b/v2/docusaurus.config.js index 5510a811e..ac984c49c 100644 --- a/v2/docusaurus.config.js +++ b/v2/docusaurus.config.js @@ -399,10 +399,12 @@ module.exports = { [ "@docusaurus/plugin-content-docs", { - id: "microservice_auth", - path: "microservice_auth", - routeBasePath: "docs/microservice_auth", - sidebarPath: require.resolve("./microservice_auth/sidebars.js"), + id: "private-access-token-authentication", + path: "private-access-token-authentication", + routeBasePath: "docs/private-access-token-authentication", + sidebarPath: require.resolve( + "./private-access-token-authentication/sidebars.js", + ), showLastUpdateTime: true, editUrl: "https://github.com/supertokens/docs/tree/master/v2/", remarkPlugins: remarkPlugins, diff --git a/v2/emailpassword/custom-ui/securing-routes.mdx b/v2/emailpassword/custom-ui/securing-routes.mdx index 00f7e4f61..d9afed121 100644 --- a/v2/emailpassword/custom-ui/securing-routes.mdx +++ b/v2/emailpassword/custom-ui/securing-routes.mdx @@ -437,7 +437,7 @@ In case of successful session verification, you get access to a `session` object ### Microservice authentication -For authentication between microservices on your backend, checkout the [microservice auth guide](/docs/microservice_auth/introduction). +For authentication between microservices on your backend, checkout the [microservice auth guide](/docs/oauth/machine-to-machine-authentication). diff --git a/v2/emailpassword/pre-built-ui/securing-routes.mdx b/v2/emailpassword/pre-built-ui/securing-routes.mdx index 22d56941e..1a254347a 100644 --- a/v2/emailpassword/pre-built-ui/securing-routes.mdx +++ b/v2/emailpassword/pre-built-ui/securing-routes.mdx @@ -436,7 +436,7 @@ In case of successful session verification, you get access to a `session` object ### Microservice authentication -For authentication between microservices on your backend, checkout the [microservice auth guide](/docs/microservice_auth/introduction). +For authentication between microservices on your backend, checkout the [microservice auth guide](/docs/oauth/machine-to-machine-authentication). diff --git a/v2/microservice_auth/introduction.mdx b/v2/microservice_auth/introduction.mdx deleted file mode 100644 index bae97f0ab..000000000 --- a/v2/microservice_auth/introduction.mdx +++ /dev/null @@ -1,15 +0,0 @@ ---- -id: introduction -title: Introduction -hide_title: true ---- - -# Introduction - -This guide explains how you can achieve auth between microservices using SuperTokens. When microservice `M1` wants to talk to microservice `M2`, `M1` will start by creating a JWT (by contacting the SuperTokens core), and pass that JWT to `M2`. - -`M2` will then verify the JWT, check that it's created by another microservice, and only then proceed with serving the request. - -Microservice auth flow diagram - -In the next sections, we will be showing you how to create and verify a JWT using SuperTokens. \ No newline at end of file diff --git a/v2/passwordless/custom-ui/securing-routes.mdx b/v2/passwordless/custom-ui/securing-routes.mdx index 00f7e4f61..d9afed121 100644 --- a/v2/passwordless/custom-ui/securing-routes.mdx +++ b/v2/passwordless/custom-ui/securing-routes.mdx @@ -437,7 +437,7 @@ In case of successful session verification, you get access to a `session` object ### Microservice authentication -For authentication between microservices on your backend, checkout the [microservice auth guide](/docs/microservice_auth/introduction). +For authentication between microservices on your backend, checkout the [microservice auth guide](/docs/oauth/machine-to-machine-authentication). diff --git a/v2/passwordless/pre-built-ui/securing-routes.mdx b/v2/passwordless/pre-built-ui/securing-routes.mdx index 22d56941e..1a254347a 100644 --- a/v2/passwordless/pre-built-ui/securing-routes.mdx +++ b/v2/passwordless/pre-built-ui/securing-routes.mdx @@ -436,7 +436,7 @@ In case of successful session verification, you get access to a `session` object ### Microservice authentication -For authentication between microservices on your backend, checkout the [microservice auth guide](/docs/microservice_auth/introduction). +For authentication between microservices on your backend, checkout the [microservice auth guide](/docs/oauth/machine-to-machine-authentication). diff --git a/v2/private-access-token-authentication/introduction.mdx b/v2/private-access-token-authentication/introduction.mdx new file mode 100644 index 000000000..ff9b5ed09 --- /dev/null +++ b/v2/private-access-token-authentication/introduction.mdx @@ -0,0 +1,19 @@ +--- +id: introduction +title: Introduction +hide_title: true +--- + +# Introduction + +This guide explains a way of authenticating microservices without setting up an **OAuth2 Provider**. +Keep in mind that our recommended way of doing this is by using the **OAuth2 Client Credentials Flow** described in the [following guide](/docs/oauth/machine-to-machine-authentication). + + +When microservice `M1` wants to talk to microservice `M2`, `M1` will start by creating a JWT (by contacting the SuperTokens core), and pass that JWT to `M2`. + +`M2` will then verify the JWT, check that it's created by another microservice, and only then proceed with serving the request. + +Microservice auth flow diagram + +In the next sections, we will be showing you how to create and verify a JWT using SuperTokens. diff --git a/v2/microservice_auth/jwt-creation.mdx b/v2/private-access-token-authentication/jwt-creation.mdx similarity index 100% rename from v2/microservice_auth/jwt-creation.mdx rename to v2/private-access-token-authentication/jwt-creation.mdx diff --git a/v2/microservice_auth/jwt-verification/get-public-key.mdx b/v2/private-access-token-authentication/jwt-verification/get-public-key.mdx similarity index 100% rename from v2/microservice_auth/jwt-verification/get-public-key.mdx rename to v2/private-access-token-authentication/jwt-verification/get-public-key.mdx diff --git a/v2/microservice_auth/jwt-verification/index.mdx b/v2/private-access-token-authentication/jwt-verification/index.mdx similarity index 100% rename from v2/microservice_auth/jwt-verification/index.mdx rename to v2/private-access-token-authentication/jwt-verification/index.mdx diff --git a/v2/microservice_auth/security-analysis.mdx b/v2/private-access-token-authentication/security-analysis.mdx similarity index 100% rename from v2/microservice_auth/security-analysis.mdx rename to v2/private-access-token-authentication/security-analysis.mdx diff --git a/v2/microservice_auth/sidebars.js b/v2/private-access-token-authentication/sidebars.js similarity index 100% rename from v2/microservice_auth/sidebars.js rename to v2/private-access-token-authentication/sidebars.js diff --git a/v2/src/components/recipeBoxes/guides.json b/v2/src/components/recipeBoxes/guides.json index e2c60645a..c5bda1026 100644 --- a/v2/src/components/recipeBoxes/guides.json +++ b/v2/src/components/recipeBoxes/guides.json @@ -49,9 +49,9 @@ "path": "/docs/mfa/introduction" }, { - "title": "Microservice Authentication", + "title": "Private Access Token Authentication", "icon": "micro", - "path": "/docs/microservice_auth/introduction" + "path": "/docs/private-access-token-authentication/introduction" }, { "title": "Session Management", @@ -86,4 +86,5 @@ "path": "/docs/community/sdks" } ] -} \ No newline at end of file +} + diff --git a/v2/src/theme/NavbarItem/index.js b/v2/src/theme/NavbarItem/index.js index fc1093ef2..baa4e5463 100644 --- a/v2/src/theme/NavbarItem/index.js +++ b/v2/src/theme/NavbarItem/index.js @@ -4,14 +4,12 @@ * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ -import React from 'react'; -import DefaultNavbarItem from '@theme/NavbarItem/DefaultNavbarItem'; -import LocaleDropdownNavbarItem from '@theme/NavbarItem/LocaleDropdownNavbarItem'; -import SearchNavbarItem from '@theme/NavbarItem/SearchNavbarItem'; -import { useLocation } from '@docusaurus/router'; -import { - useVersions, -} from '@theme/hooks/useDocs'; +import React from "react"; +import DefaultNavbarItem from "@theme/NavbarItem/DefaultNavbarItem"; +import LocaleDropdownNavbarItem from "@theme/NavbarItem/LocaleDropdownNavbarItem"; +import SearchNavbarItem from "@theme/NavbarItem/SearchNavbarItem"; +import { useLocation } from "@docusaurus/router"; +import { useVersions } from "@theme/hooks/useDocs"; const NavbarItemComponents = { default: () => DefaultNavbarItem, @@ -21,18 +19,18 @@ const NavbarItemComponents = { // See https://github.com/facebook/docusaurus/issues/3360 docsVersion: () => // eslint-disable-next-line @typescript-eslint/no-var-requires, global-require - require('@theme/NavbarItem/DocsVersionNavbarItem').default, + require("@theme/NavbarItem/DocsVersionNavbarItem").default, docsVersionDropdown: () => // eslint-disable-next-line @typescript-eslint/no-var-requires, global-require - require('@theme/NavbarItem/DocsVersionDropdownNavbarItem').default, + require("@theme/NavbarItem/DocsVersionDropdownNavbarItem").default, doc: () => // eslint-disable-next-line @typescript-eslint/no-var-requires, global-require - require('@theme/NavbarItem/DocNavbarItem').default, + require("@theme/NavbarItem/DocNavbarItem").default, recipeDropDown: () => require("./recipeSelector").default, }; -const getNavbarItemComponent = (type = 'default') => { +const getNavbarItemComponent = (type = "default") => { const navbarItemComponent = NavbarItemComponents[type]; if (!navbarItemComponent) { @@ -43,28 +41,28 @@ const getNavbarItemComponent = (type = 'default') => { }; export default function NavbarItem({ type, ...props }) { - let newProps = { ...props }; - const { docsPluginId } = props - const ourDocsPluginId = docsPluginId === "default" ? "community" : docsPluginId; - const { pathname } = useLocation() + const { docsPluginId } = props; + const ourDocsPluginId = + docsPluginId === "default" ? "community" : docsPluginId; + const { pathname } = useLocation(); const currDocs = pathname.split("/")[2]; // show only version if applies to current docs. - if (type === 'docsVersionDropdown') { + if (type === "docsVersionDropdown") { if (ourDocsPluginId !== currDocs) { return null; } // we show the version only if there is more than one version to show. - const versions = useVersions(docsPluginId) + const versions = useVersions(docsPluginId); if (versions.length === 1) { return null; } - if (LINK_TO_OLDER_VERSIONS.filter(i => i === currDocs).length === 1) { + if (LINK_TO_OLDER_VERSIONS.filter((i) => i === currDocs).length === 1) { newProps = { ...newProps, dropdownItemsAfter: [ @@ -73,18 +71,17 @@ export default function NavbarItem({ type, ...props }) { isNavLink: true, label: "Older versions", to: `https://supertokens.com/docs/${currDocs}/versions`, - isActive: () => { }, - onClick: () => { } - } - ] - } + isActive: () => {}, + onClick: () => {}, + }, + ], + }; } } - // change github href link based on current docs being viewed. if (props.label !== undefined && props.label === "GitHub") { - if (DO_NOT_SHOW_GITHUB_BUTTON.filter(i => i === currDocs).length > 0) { + if (DO_NOT_SHOW_GITHUB_BUTTON.filter((i) => i === currDocs).length > 0) { return null; } const shouldUseCore = currDocs === "core" || currDocs === "guides"; @@ -94,19 +91,33 @@ export default function NavbarItem({ type, ...props }) { toReplace = "node"; } if (toReplace === "community") { - toReplace = "core" + toReplace = "core"; } newProps = { ...props, href: props.href.replace("to_replace", toReplace), - } + }; } const NavbarItemComponent = getNavbarItemComponent(type); return ; } -const DO_NOT_SHOW_GITHUB_BUTTON = ["emailpassword", "thirdparty", "thirdpartyemailpassword", "thirdpartypasswordless", "passwordless", "session", "contribute", "phonepassword", "userroles", "mfa", "microservice_auth", "multitenancy"]; +const DO_NOT_SHOW_GITHUB_BUTTON = [ + "emailpassword", + "thirdparty", + "thirdpartyemailpassword", + "thirdpartypasswordless", + "passwordless", + "session", + "contribute", + "phonepassword", + "userroles", + "mfa", + "private-access-token-authentication", + "multitenancy", +]; + +const LINK_TO_OLDER_VERSIONS = ["nodejs", "auth-react", "website"]; -const LINK_TO_OLDER_VERSIONS = ["nodejs", "auth-react", "website"]; \ No newline at end of file diff --git a/v2/src/theme/NavbarItem/recipeSelector.js b/v2/src/theme/NavbarItem/recipeSelector.js index 3fb945e1c..bd1c27d61 100644 --- a/v2/src/theme/NavbarItem/recipeSelector.js +++ b/v2/src/theme/NavbarItem/recipeSelector.js @@ -32,8 +32,8 @@ export default function RecipeSelector(props) { return "User Roles Recipe"; case "mfa": return "Multi factor auth"; - case "microservice_auth": - return "Microservice Auth"; + case "private-access-token-authentication": + return "Private Access Token Authentication"; case "userdashboard": return "User Management Dashboard"; case "multitenancy": @@ -171,11 +171,11 @@ export default function RecipeSelector(props) {

  • - - Microservice Authentication + + Private Access Token Authentication
  • diff --git a/v2/thirdparty/pre-built-ui/securing-routes.mdx b/v2/thirdparty/pre-built-ui/securing-routes.mdx index 22d56941e..1a254347a 100644 --- a/v2/thirdparty/pre-built-ui/securing-routes.mdx +++ b/v2/thirdparty/pre-built-ui/securing-routes.mdx @@ -436,7 +436,7 @@ In case of successful session verification, you get access to a `session` object ### Microservice authentication -For authentication between microservices on your backend, checkout the [microservice auth guide](/docs/microservice_auth/introduction). +For authentication between microservices on your backend, checkout the [microservice auth guide](/docs/oauth/machine-to-machine-authentication). diff --git a/v2/thirdpartyemailpassword/custom-ui/securing-routes.mdx b/v2/thirdpartyemailpassword/custom-ui/securing-routes.mdx index e7b03dcdb..d9afed121 100644 --- a/v2/thirdpartyemailpassword/custom-ui/securing-routes.mdx +++ b/v2/thirdpartyemailpassword/custom-ui/securing-routes.mdx @@ -437,7 +437,7 @@ In case of successful session verification, you get access to a `session` object ### Microservice authentication -For authentication between microservices on your backend, checkout the [microservice auth guide](/docs/microservice_auth/introduction). +For authentication between microservices on your backend, checkout the [microservice auth guide](/docs/oauth/machine-to-machine-authentication). @@ -587,4 +587,4 @@ Future doesSessionExist() async { - [Changing session lifetime](../common-customizations/sessions/change-session-timeout) - [Sharing session across sub domains](../common-customizations/sessions/share-sessions-across-sub-domains) - \ No newline at end of file + diff --git a/v2/thirdpartyemailpassword/pre-built-ui/securing-routes.mdx b/v2/thirdpartyemailpassword/pre-built-ui/securing-routes.mdx index c4eece720..1a254347a 100644 --- a/v2/thirdpartyemailpassword/pre-built-ui/securing-routes.mdx +++ b/v2/thirdpartyemailpassword/pre-built-ui/securing-routes.mdx @@ -436,7 +436,7 @@ In case of successful session verification, you get access to a `session` object ### Microservice authentication -For authentication between microservices on your backend, checkout the [microservice auth guide](/docs/microservice_auth/introduction). +For authentication between microservices on your backend, checkout the [microservice auth guide](/docs/oauth/machine-to-machine-authentication). @@ -519,4 +519,4 @@ async function doesSessionExist() { - [Changing session lifetime](../common-customizations/sessions/change-session-timeout) - [Sharing session across sub domains](../common-customizations/sessions/share-sessions-across-sub-domains) - \ No newline at end of file + diff --git a/v2/thirdpartypasswordless/custom-ui/securing-routes.mdx b/v2/thirdpartypasswordless/custom-ui/securing-routes.mdx index 00f7e4f61..d9afed121 100644 --- a/v2/thirdpartypasswordless/custom-ui/securing-routes.mdx +++ b/v2/thirdpartypasswordless/custom-ui/securing-routes.mdx @@ -437,7 +437,7 @@ In case of successful session verification, you get access to a `session` object ### Microservice authentication -For authentication between microservices on your backend, checkout the [microservice auth guide](/docs/microservice_auth/introduction). +For authentication between microservices on your backend, checkout the [microservice auth guide](/docs/oauth/machine-to-machine-authentication). diff --git a/v2/thirdpartypasswordless/pre-built-ui/securing-routes.mdx b/v2/thirdpartypasswordless/pre-built-ui/securing-routes.mdx index 22d56941e..1a254347a 100644 --- a/v2/thirdpartypasswordless/pre-built-ui/securing-routes.mdx +++ b/v2/thirdpartypasswordless/pre-built-ui/securing-routes.mdx @@ -436,7 +436,7 @@ In case of successful session verification, you get access to a `session` object ### Microservice authentication -For authentication between microservices on your backend, checkout the [microservice auth guide](/docs/microservice_auth/introduction). +For authentication between microservices on your backend, checkout the [microservice auth guide](/docs/oauth/machine-to-machine-authentication). From b5d73566229a5f9cf9b25c0e04790b6a2f589143 Mon Sep 17 00:00:00 2001 From: Bogdan Carpusor Date: Fri, 4 Oct 2024 15:06:34 +0300 Subject: [PATCH 07/33] Add shouldTryLinkingWithSession user info --- .../manual-account-linking.mdx | 97 ++++++++++++++++++ .../manual-account-linking.mdx | 99 ++++++++++++++++++- .../manual-account-linking.mdx | 97 ++++++++++++++++++ 3 files changed, 292 insertions(+), 1 deletion(-) diff --git a/v2/thirdparty/common-customizations/account-linking/manual-account-linking.mdx b/v2/thirdparty/common-customizations/account-linking/manual-account-linking.mdx index 23efb0e63..06e42fb41 100644 --- a/v2/thirdparty/common-customizations/account-linking/manual-account-linking.mdx +++ b/v2/thirdparty/common-customizations/account-linking/manual-account-linking.mdx @@ -172,9 +172,106 @@ Coming Soon Coming Soon ::: + + + + +### Sing In/Sign Up Callback Linking + +You can also force **SuperTokens** to link accounts by using function or API overridees. +This way, during the `signin` or `signup` flows, the system will try to to link the recipe user to a corresponding one that already exists. + + + + + +You will have to pass the `shouldTryLinkingWithSessionUser` property to either of the callbacks. +Choose between the `signIn`, `signUp`, `signInPOST` and `signUpPOST` functions based on what works best for your use case. + +Check [this page](../../common-customizations/handling-signinup-success) for more information on each function and how to use them. + + + +:::caution + +Keep in mind that you will have to add the override to the `init` call of each of the authentication recipes that you are using. + +The following example shows you only an example usign the `signUpPost` and the `Thirdparty` recipe. + +::: + + +```typescript +import SuperTokens from "supertokens-node"; +import Session from "supertokens-node/recipe/session"; +import ThirdParty from "supertokens-node/recipe/thirdparty"; + + +SuperTokens.init({ + appInfo: { + apiDomain: "...", + appName: "...", + websiteDomain: "..." + }, + supertokens: { + connectionURI: "...", + }, + recipeList: [ + // The override needs to be applied to all the authentication recipes that you are using + ThirdParty.init({ + /* ... */ + override: { + apis: (originalImplementation) => { + return { + ...originalImplementation, + signUpPOST: async function (input) { + // Call the original implementation of signUpPOST with the new property + let response = await originalImplementation.signUpPOST({ + ...input, + shouldTryLinkingWithSessionUser: true + }); + + // Post sign up response, we check if it was successful + if (response.status === "OK") { + // Post sign up logic + } + return response; + } + } + }, + }, + }), + // Choose which type of override you want to use + // and pass it to all the init functions + Session.init({ /* ... */ }) + ] +}); + +``` + + + + + +:::note +Coming Soon +::: + + + + + +:::note +Coming Soon +::: + + + + + ## Unlinking accounts If you want to unlink an account from its primary user ID, you can use the following function: diff --git a/v2/thirdpartyemailpassword/common-customizations/account-linking/manual-account-linking.mdx b/v2/thirdpartyemailpassword/common-customizations/account-linking/manual-account-linking.mdx index b73408c8a..06e42fb41 100644 --- a/v2/thirdpartyemailpassword/common-customizations/account-linking/manual-account-linking.mdx +++ b/v2/thirdpartyemailpassword/common-customizations/account-linking/manual-account-linking.mdx @@ -172,9 +172,106 @@ Coming Soon Coming Soon ::: + + + + +### Sing In/Sign Up Callback Linking + +You can also force **SuperTokens** to link accounts by using function or API overridees. +This way, during the `signin` or `signup` flows, the system will try to to link the recipe user to a corresponding one that already exists. + + + + + +You will have to pass the `shouldTryLinkingWithSessionUser` property to either of the callbacks. +Choose between the `signIn`, `signUp`, `signInPOST` and `signUpPOST` functions based on what works best for your use case. + +Check [this page](../../common-customizations/handling-signinup-success) for more information on each function and how to use them. + + + +:::caution + +Keep in mind that you will have to add the override to the `init` call of each of the authentication recipes that you are using. + +The following example shows you only an example usign the `signUpPost` and the `Thirdparty` recipe. + +::: + + +```typescript +import SuperTokens from "supertokens-node"; +import Session from "supertokens-node/recipe/session"; +import ThirdParty from "supertokens-node/recipe/thirdparty"; + + +SuperTokens.init({ + appInfo: { + apiDomain: "...", + appName: "...", + websiteDomain: "..." + }, + supertokens: { + connectionURI: "...", + }, + recipeList: [ + // The override needs to be applied to all the authentication recipes that you are using + ThirdParty.init({ + /* ... */ + override: { + apis: (originalImplementation) => { + return { + ...originalImplementation, + signUpPOST: async function (input) { + // Call the original implementation of signUpPOST with the new property + let response = await originalImplementation.signUpPOST({ + ...input, + shouldTryLinkingWithSessionUser: true + }); + + // Post sign up response, we check if it was successful + if (response.status === "OK") { + // Post sign up logic + } + return response; + } + } + }, + }, + }), + // Choose which type of override you want to use + // and pass it to all the init functions + Session.init({ /* ... */ }) + ] +}); + +``` + + + + + +:::note +Coming Soon +::: + + + + + +:::note +Coming Soon +::: + + + + + ## Unlinking accounts If you want to unlink an account from its primary user ID, you can use the following function: @@ -278,4 +375,4 @@ Our SDK also exposes several other helper functions: - `AccountLinking.isEmailChangeAllowed`: Given the recipe user id and the new email for update, this function returns `true` if it's safe to update the email, else `false`. Below are the conditions in which `false` is returned: - If the input recipe user is a primary user, then we need to check that the new email doesn't belong to any other primary user. If it does, we disallow the change since multiple primary user's can't have the same email. - - If the recipe user is NOT a primary user, and if the new email is not verified, then we check if there exists a primary user with the same email, and if it exists, we disallow the email change. We disallow because if this email is changed, and an email verification email is sent, then the primary user may end up clicking on the link by mistake, causing account linking to happen which can result in account take over if this recipe user is malicious. \ No newline at end of file + - If the recipe user is NOT a primary user, and if the new email is not verified, then we check if there exists a primary user with the same email, and if it exists, we disallow the email change. We disallow because if this email is changed, and an email verification email is sent, then the primary user may end up clicking on the link by mistake, causing account linking to happen which can result in account take over if this recipe user is malicious. diff --git a/v2/thirdpartypasswordless/common-customizations/account-linking/manual-account-linking.mdx b/v2/thirdpartypasswordless/common-customizations/account-linking/manual-account-linking.mdx index 23efb0e63..06e42fb41 100644 --- a/v2/thirdpartypasswordless/common-customizations/account-linking/manual-account-linking.mdx +++ b/v2/thirdpartypasswordless/common-customizations/account-linking/manual-account-linking.mdx @@ -172,9 +172,106 @@ Coming Soon Coming Soon ::: + + + + +### Sing In/Sign Up Callback Linking + +You can also force **SuperTokens** to link accounts by using function or API overridees. +This way, during the `signin` or `signup` flows, the system will try to to link the recipe user to a corresponding one that already exists. + + + + + +You will have to pass the `shouldTryLinkingWithSessionUser` property to either of the callbacks. +Choose between the `signIn`, `signUp`, `signInPOST` and `signUpPOST` functions based on what works best for your use case. + +Check [this page](../../common-customizations/handling-signinup-success) for more information on each function and how to use them. + + + +:::caution + +Keep in mind that you will have to add the override to the `init` call of each of the authentication recipes that you are using. + +The following example shows you only an example usign the `signUpPost` and the `Thirdparty` recipe. + +::: + + +```typescript +import SuperTokens from "supertokens-node"; +import Session from "supertokens-node/recipe/session"; +import ThirdParty from "supertokens-node/recipe/thirdparty"; + + +SuperTokens.init({ + appInfo: { + apiDomain: "...", + appName: "...", + websiteDomain: "..." + }, + supertokens: { + connectionURI: "...", + }, + recipeList: [ + // The override needs to be applied to all the authentication recipes that you are using + ThirdParty.init({ + /* ... */ + override: { + apis: (originalImplementation) => { + return { + ...originalImplementation, + signUpPOST: async function (input) { + // Call the original implementation of signUpPOST with the new property + let response = await originalImplementation.signUpPOST({ + ...input, + shouldTryLinkingWithSessionUser: true + }); + + // Post sign up response, we check if it was successful + if (response.status === "OK") { + // Post sign up logic + } + return response; + } + } + }, + }, + }), + // Choose which type of override you want to use + // and pass it to all the init functions + Session.init({ /* ... */ }) + ] +}); + +``` + + + + + +:::note +Coming Soon +::: + + + + + +:::note +Coming Soon +::: + + + + + ## Unlinking accounts If you want to unlink an account from its primary user ID, you can use the following function: From eea5f797667f46909a35f49105291074afe6d21c Mon Sep 17 00:00:00 2001 From: Bogdan Carpusor Date: Mon, 7 Oct 2024 11:00:37 +0300 Subject: [PATCH 08/33] Add minor fixes --- v2/oauth/customizations/verify-tokens.mdx | 2 +- v2/oauth/introduction.mdx | 8 ++++---- v2/oauth/machine-to-machine-authentication.mdx | 6 ++++-- v2/oauth/multiple-frontends-with-a-single-backend.mdx | 3 +-- v2/oauth/multiple-frontends-with-separate-backends.mdx | 8 ++++++-- v2/oauth/reuse-website-login.mdx | 10 +++++----- 6 files changed, 21 insertions(+), 16 deletions(-) diff --git a/v2/oauth/customizations/verify-tokens.mdx b/v2/oauth/customizations/verify-tokens.mdx index a0d9004b4..6bc7559eb 100644 --- a/v2/oauth/customizations/verify-tokens.mdx +++ b/v2/oauth/customizations/verify-tokens.mdx @@ -10,7 +10,7 @@ import TabItem from '@theme/TabItem'; # Verify Tokens -In order to check the validity of a token you we recommend using a generic **JWT** verification library. +In order to check the validity of a token we recommend using a generic **JWT** verification library. diff --git a/v2/oauth/introduction.mdx b/v2/oauth/introduction.mdx index e03859204..aa180e101 100644 --- a/v2/oauth/introduction.mdx +++ b/v2/oauth/introduction.mdx @@ -26,10 +26,10 @@ For these specific instances we expose recipes that allow you to complete your s :::caution There are a few limitations with the **OAuth2** recipes: - It is only available for the **SuperTokens Managed Service**. This feature is not included in the **Self-Hosted** version. -- Only the `supertokens-node` backend SDK supports it as of yet. So if you are using our `golang` or `python` SDK, you will have to wait, or else you could switch to using our node SDK. -- We do not support magic link based login, however, you can switch to `email`/`SMS` **OTP** instead which offers the same level of security. +- Only the `supertokens-node` backend SDK supports it as of yet. So if you are using our `golang` or `python` SDK, you will have to wait, or else you could switch to using our `node` **SDK**. +- We do not support magic link based login. However, you can switch to `email`/`SMS` **OTP** instead. This method offers the same level of security. -In general, when using the **OAuth2** flows, we recommend using cookie-based sessions since they enable smoother authentication flows. +In general, when using the **OAuth2** flows, we recommend cookie-based sessions since they enable smoother authentication flows. ::: Before we explore the guides let's first recap some common terms and concepts that are the base of the framework. @@ -69,7 +69,7 @@ The server issuing [**OAuth2 Access Tokens**](#oauth2-access-tokens) to the [**C Tokens are strings that represent the authorization issued to the [**Client**](#client). They are mainly used to access to protected resources, on behalf of the [**Resource Owner**](#resource-owner). -At the same time, tokens can be used to have more information about who the owner is. +At the same time, tokens can be used to get more information about who the owner is. ### OAuth2 Access Token diff --git a/v2/oauth/machine-to-machine-authentication.mdx b/v2/oauth/machine-to-machine-authentication.mdx index 52ebb0762..5d3155b19 100644 --- a/v2/oauth/machine-to-machine-authentication.mdx +++ b/v2/oauth/machine-to-machine-authentication.mdx @@ -52,14 +52,16 @@ Now you should be able to use the OAuth2 recipes in your applications. + +For each of your **`microservices`** you will have to create a separate [**OAuth2 client**](/docs/oauth/introduction#client). +This can be done by directly calling the **SuperTokens Core** API. + -For each of your **`microservices`** you will have to create a separate [**OAuth2 client**](/docs/oauth/introduction#client). -This can be done by directly calling the **SuperTokens Core** API. ```bash diff --git a/v2/oauth/multiple-frontends-with-a-single-backend.mdx b/v2/oauth/multiple-frontends-with-a-single-backend.mdx index c44cfcc3c..0ffe4340f 100644 --- a/v2/oauth/multiple-frontends-with-a-single-backend.mdx +++ b/v2/oauth/multiple-frontends-with-a-single-backend.mdx @@ -92,7 +92,6 @@ curl -X POST ^{coreInjector_uri_without_quotes}/recipe/oauth2/admin/clients \ - `client_name` - A human-readable name of the client that will be used for identification. - `response_types` - Specifies the types of responses your client expects from the [**Authorization Server**](/docs/oauth/introduction#authorization-server). Most of the time, you would need the following two to be present: - `code`: Indicates that the [**Client**](/docs/oauth/introduction#client) will receive an **Authorization Code** that will be exchanged for an [**OAuth2 Access Token**](/docs/oauth/introduction#oauth2-access-token). - - `id_token`: Indicates that the [**Client**](/docs/oauth/introduction#client) expects an [**ID Token**](/docs/oauth/introduction#id-token) - `grant_types` - The grant types that the [**Client**](/docs/oauth/introduction#client) will use. - `authorization_code`: Allows exchanging the **Authorization Code** for an [**OAuth2 Access Token**](/docs/oauth/introduction#oauth2-access-token). - `refresh_token`: Allows exchanging the [**OAuth2 Refresh Token**](/docs/oauth/introduction#oauth2-refresh-token) for a new [**OAuth2 Access Token**](/docs/oauth/introduction#oauth2-access-token). @@ -364,7 +363,7 @@ async function exchangeTokens(accessToken: string) { ## 5. Test the new authentication flow With everything set up, you can now test your login flow. -Just use the setup that you have created in the previous step check if the authentication flow completes wihtout any issues. +Just use the setup that you have created in the previous step to check if the authentication flow completes without any issues. diff --git a/v2/oauth/multiple-frontends-with-separate-backends.mdx b/v2/oauth/multiple-frontends-with-separate-backends.mdx index a8d0a27f9..e9b68cd8c 100644 --- a/v2/oauth/multiple-frontends-with-separate-backends.mdx +++ b/v2/oauth/multiple-frontends-with-separate-backends.mdx @@ -17,7 +17,11 @@ You can use the following guide if you have a single [**Authorization Service**] In turn, each app has separate **`frontend `** and **`backend`** instances that are served from different domains. Using the actual **OAuth 2.0** terminology, each application can be considered a [**Client**](/docs/oauth/introduction#client) while the **`backends`** are also [**Resource Servers**](/docs/oauth/introduction#resource-server). -Note that if the *frontends* and *backends* are in different *sub domains*, you don't need to use *OAuth* and can instead use [session sharing across sub domains](/docs/session/common-customizations/sessions/share-sessions-across-sub-domains). +:::info + +Note that, if the *frontends* and *backends* are in different *sub domains*, you don't need to use *OAuth* and can instead use [session sharing across sub domains](/docs/session/common-customizations/sessions/share-sessions-across-sub-domains). + +::: Multiple Frontend Domains with separate Backends @@ -395,7 +399,7 @@ Then the authentication session will be created and the `backend` will send it t ## 6. Test the new authentication flow With everything set up, you can now test your login flow. -Just use the setup that you have created in the previous step check if the authentication flow completes wihtout any issues. +Just use the setup that you have created in the previous step to check if the authentication flow completes without any issues. diff --git a/v2/oauth/reuse-website-login.mdx b/v2/oauth/reuse-website-login.mdx index a2a5226cb..d35080ca6 100644 --- a/v2/oauth/reuse-website-login.mdx +++ b/v2/oauth/reuse-website-login.mdx @@ -15,8 +15,8 @@ import TabItem from '@theme/TabItem'; # Reuse website login for desktop and mobile apps -This pattern is useful if you want to make use of the same web authentication experience for your desktop and mobile apps. -The flow will allow you to save develpoment time but you will have to keep in mind that it will not involve a native login experience. +This pattern is useful if you want to have the same web authentication experience for your desktop and mobile apps. +The flow will allow you to save develpoment time but you will have to keep in mind that it will not involve a native authentication interface. Users will be directed to a separate browser page where they will complete the authentication flow. Reuse website login for desktop and mobile apps @@ -25,7 +25,7 @@ The authentication flow will work in the following way: 1. User accesses the native application 2. The user gets redirected to [**Authorization Service**](/docs/oauth/introduction#authorization-service) authentication url. -3. The [Authorization Service](/docs/oauth/introduction#authorization-service) redirects the user to the login UI +3. The [**Authorization Service**](/docs/oauth/introduction#authorization-service) redirects the user to the login UI 4. User completes the login attempt 5. The [**Authorization Service**](/docs/oauth/introduction#authorization-service) backend redirects the user to the `callback URL`. This URL should be a deep link that can be opened by your actual application. @@ -121,7 +121,7 @@ In the next steps we will use the values to complete several configurations. If you have not set up the [**Authorization Service**](/docs/oauth/introduction#authorization-service) yet, please check one of the previous guides based whether you use multiple backend service: - [Multiple Backends Setup](/docs/oauth/multiple-frontends-with-separate-backends) -- [Single Backends Setup](/docs/oauth/multiple-frontends-with-a-single-backend) +- [Single Backend Setup](/docs/oauth/multiple-frontends-with-a-single-backend) ## 4. Update the login flow in your applications @@ -197,7 +197,7 @@ The configuration parameters can be determined based on the response that we rec ## 5. Test the new authentication flow With everything set up, you can now test your login flow. -Just use the setup that you have created in the previous step check if the authentication flow completes wihtout any issues. +Just use the setup that you have created in the previous step to check if the authentication flow completes without any issues. From e9fa208be0f49e48b8250d3e209e6735d4b0e1ad Mon Sep 17 00:00:00 2001 From: Bogdan Carpusor Date: Mon, 7 Oct 2024 15:26:55 +0300 Subject: [PATCH 09/33] Add more details about token verification --- v2/oauth/customizations/custom-ui.mdx | 2 + v2/oauth/customizations/verify-tokens.mdx | 418 ++++++++++++++++-- .../customizations/working-with-scopes.mdx | 6 +- v2/oauth/introduction.mdx | 1 + .../machine-to-machine-authentication.mdx | 11 +- 5 files changed, 388 insertions(+), 50 deletions(-) diff --git a/v2/oauth/customizations/custom-ui.mdx b/v2/oauth/customizations/custom-ui.mdx index a8f70da68..803ff922a 100644 --- a/v2/oauth/customizations/custom-ui.mdx +++ b/v2/oauth/customizations/custom-ui.mdx @@ -62,6 +62,8 @@ OAuth2Provider.init({ queryParams.set("hint", input.hint); } if (input.forceFreshAuth) { + // This will force the reauthentication even though + // there is an existing session for the user. queryParams.set("forceFreshAuth", "true"); } diff --git a/v2/oauth/customizations/verify-tokens.mdx b/v2/oauth/customizations/verify-tokens.mdx index 6bc7559eb..c590e9d2c 100644 --- a/v2/oauth/customizations/verify-tokens.mdx +++ b/v2/oauth/customizations/verify-tokens.mdx @@ -12,6 +12,10 @@ import TabItem from '@theme/TabItem'; In order to check the validity of a token we recommend using a generic **JWT** verification library. +## OAuth2 Access Tokens + +We provide a series of code samples that show you how to check tokens based on the requirements of each authentication flow. + + +### Client Credentials Flow Token Validation + +Follow this example if you are checking tokens in the context of microservice authentication. +You will have to check if the `audience` and `scopes` of the provided token match the ones you expect. + For NodeJS you can use [jose](https://github.com/panva/jose) to verify the token. -Here is an example of how you can do that: ```typescript import jose from "jose"; const JWKS = jose.createRemoteJWKSet(new URL('^{form_apiDomain}^{form_apiBasePath}jwt/jwks.json')) -async function verifyToken(jwt: string) { +async function validateClientCredentialsToken(jwt: string) { const requiredScope = ""; - - const { payload } = await jose.jwtVerify(jwt, JWKS, { - issuer: '^{form_apiDomain}^{form_apiBasePath}', - audience: '', - requiredClaims: ['stt'] - }); - - if(payload.stt !== 1) return false; - - return payload.scp.includes(requiredScope); + const audience = ''; + + try { + const { payload } = await jose.jwtVerify(jwt, JWKS, { + audience, + requiredClaims: ['stt', 'scp'], + }); + + if(payload.stt !== 1) return false; + + return payload.scp.includes(requiredScope); + } catch (err) { + return false; + } } ``` @@ -54,7 +67,6 @@ async function verifyToken(jwt: string) { You can use the [jwx](https://github.com/lestrrat-go/jwx) library to verify the token. -Here is an example of how you can do that: ```go import ( @@ -68,8 +80,7 @@ import ( func ValidateToken(token string) bool { apiDomain := "^{form_apiDomain}" - apiBasePath := "^{form_apiBasePath}" - clientID := "" + apiBasePath := "^{form_apiBasePath}" jwksURL := fmt.Sprintf("%s%sjwt/jwks.json", apiDomain, apiBasePath) jwks, err := jwk.Fetch(context.Background(), jwksURL) @@ -77,13 +88,321 @@ func ValidateToken(token string) bool { return false } - token, err := jwt.Parse([]byte(jwtString), jwt.WithKeySet(jwks)) + token, err := jwt.Parse( + []byte(jwtString), + jwt.WithKeySet(jwks), + jwt.WithClaimValue("stt", 1), + jwt.WithAudience(""), + ) if err != nil { return false } - sst, ok := token.Get("sst") - if !ok || sst != 1 { + scp, ok := token.Get("scp") + if !ok { + return false + } + + scopes, ok := scp.([]interface{}) + if !ok { + return false + } + + for _, scope := range scopes { + if scope, ok := scope.(string); ok && scope == requiredScope { + return true + } + } + + return false; +} +``` + + + + + +You can use the [PyJWT](https://github.com/jpadilla/pyjwt) library to verify the token. + +```python +import requests +import jwt +from jwt import PyJWKClient + +def validate_token(token): + api_domain = "^{form_apiDomain}" + api_base_path = "^{form_apiBasePath}" + audience = "" + required_scope = "" + + jwks_url = f"{api_domain}{api_base_path}jwt/jwks.json" + jwks_client = PyJWKClient(jwks_url) + + try: + signing_key = jwks_client.get_signing_keys_from_jwt(token) + decoded = jwt.decode( + token, + signing_key.key, + algorithms=['RS256'], + audience=audience, + options={"require": ["stt", "scp"]} + ) + + sst = decoded.get('sst', None) + if stt != 1: + return False + + + scopes = decoded.get('scp', []) + if required_scope not in scopes: + return False + + return True + except Exception as e: + return False + +``` + + + + + +You can use the [Firebase JWT](https://github.com/firebase/php-jwt) library to verify the token. + +```PHP + +require 'vendor/autoload.php'; + +use Firebase\JWT\JWT; +use Firebase\JWT\Key; + +function validateToken($jwt) { + $apiDomain = "^{form_apiDomain}"; + $apiBasePath = "^{form_apiBasePath}"; + $jwksUrl = $apiDomain . $apiBasePath . '/jwt/jwks.json'; + $requiredScope = ""; + $audience = ""; + + $jwks = json_decode(file_get_contents($jwksUrl), true); + try { + $decoded = JWT::decode($jwt, JWK::parseKeySet($jwks), 'RS256')); + if ($decoded->aud !== $audience) { + return false; + } + if ($decoded->sst !== 1) { + return false; + } + return in_array($requiredScope, $decoded->scp); + } catch (Exception $e) { + return false; + } +} + +``` + + + + + +You can use the [Auth0 JWT](https://github.com/auth0/java-jwt) library to verify the token. + +```java + +import com.auth0.jwt.JWT; +import com.auth0.jwt.interfaces.DecodedJWT; +import com.auth0.jwt.interfaces.JWTVerifier; +import com.auth0.jwt.JWTVerifier.Base; +import com.auth0.jwt.algorithms.Algorithm; + +import java.net.URL; +import java.util.Map; +import java.io.InputStream; +import java.net.HttpURLConnection; +import java.nio.charset.StandardCharsets; +import java.util.Scanner; + +public class Main { + + private static final String JWKS_URL = "^{form_apiDomain}^{form_apiBasePath}jwt/jwks.json"; + private static final String AUDIENCE = ""; + + private static Map fetchJWKS() throws Exception { + URL url = new URL(JWKS_URL); + HttpURLConnection connection = (HttpURLConnection) url.openConnection(); + connection.setRequestMethod("GET"); + + InputStream responseStream = connection.getInputStream(); + Scanner scanner = new Scanner(responseStream, StandardCharsets.UTF_8.name()); + String responseBody = scanner.useDelimiter("\\A").next(); + scanner.close(); + + return JWT.decode(responseBody).getHeader(); + } + + public static boolean validateToken(String token) { + try { + Map jwks = fetchJWKS(); + + Algorithm algorithm = Algorithm.RSA256(jwks.get("x5c"), null); + JWTVerifier verifier = JWT.require(algorithm) + .withAudience(AUDIENCE) + .build(); + + DecodedJWT jwt = verifier.verify(token); + if(jwt.getClaim("sst").asInt() != 1) { + return false; + } + List scopes = jwt.getClaim("scp").asList(); + return scopes.contains(requiredScope); + } catch (Exception e) { + return false; + } + } +} +``` + + + + + +You can use the [IdentityModel](https://github.com/IdentityModel/IdentityModel) library to verify the token. + +```c# + +using System; +using System.Linq; +using Microsoft.IdentityModel.Tokens; +using System.IdentityModel.Tokens.Jwt; +using System.Net.Http; +using System.Threading.Tasks; +using Newtonsoft.Json.Linq; + +class Program +{ + static async bool ValidateToken(string jwtStr) + { + string apiDomain = "^{form_apiDomain}"; + string apiBasePath = "^{form_apiBasePath}"; + string audience = ""; + string requiredScope = ""; + + HttpClient client = new HttpClient(); + var response = await client.GetStringAsync($"{apiDomain}{apiBasePath}jwt/jwks.json"); + var jwks = new JsonWebKeySet(response); + + var tokenHandler = new JwtSecurityTokenHandler(); + var validationParameters = new TokenValidationParameters + { + ValidAudience = audience, + IssuerSigningKeys = jwks.Keys + }; + + try + { + SecurityToken validatedToken; + var principal = tokenHandler.ValidateToken(jwtStr, validationParameters, out validatedToken); + var claims = principal.Claims.ToDictionary(c => c.Type, c => c.Value); + + if (!claims.ContainsKey("stt") || claims["stt"] != 1) + { + return false; + } + + var scopes = claims["scp"].Split(" "); + if (!scopes.Contains(requiredScope)) + { + return false; + } + + return true; + } + catch (Exception) + { + return false; + } + } +} + +``` + + + + + + +### Authorization Code Flow Token Validation + +Follow this example if you are checking tokens in the context of authenticating users in a web application. +You will have to check if the `client_id` and `scopes` of the provided token match the ones you expect. + + + + + +For NodeJS you can use [jose](https://github.com/panva/jose) to verify the token. + +```typescript +import jose from "jose"; + +const JWKS = jose.createRemoteJWKSet(new URL('^{form_apiDomain}^{form_apiBasePath}jwt/jwks.json')) + +// Follow this example if you are using the Authorization Code Flow +async function validateToken(jwt: string) { + const requiredScope = ""; + const clientId = ''; + + try { + const { payload } = await jose.jwtVerify(jwt, JWKS, { + requiredClaims: ['stt', 'scp', 'client_id'], + }); + + if(payload.stt !== 1) return false; + if(payload.client_id !== clientId) return false; + + return payload.scp.includes(requiredScope); + } catch (err) { + return false; + } +} + + +``` + + + + + + +You can use the [jwx](https://github.com/lestrrat-go/jwx) library to verify the token. + +```go +import ( + "context" + "fmt" + "net/http" + + "github.com/lestrrat-go/jwx/jwt" + "github.com/lestrrat-go/jwx/jwk" +) + +func ValidateToken(token string) bool { + apiDomain := "^{form_apiDomain}" + apiBasePath := "^{form_apiBasePath}" + clientId := "" + + jwksURL := fmt.Sprintf("%s%sjwt/jwks.json", apiDomain, apiBasePath) + jwks, err := jwk.Fetch(context.Background(), jwksURL) + if err != nil { + return false + } + + token, err := jwt.Parse( + []byte(jwtString), + jwt.WithKeySet(jwks), + jwt.WithClaimValue("stt", 1), + jwt.WithClaimValue("client_id", clientId), + ) + if err != nil { return false } @@ -112,7 +431,6 @@ func ValidateToken(token string) bool { You can use the [PyJWT](https://github.com/jpadilla/pyjwt) library to verify the token. -Here is an example of how you can do that: ```python import requests @@ -122,20 +440,30 @@ from jwt import PyJWKClient def validate_token(token): api_domain = "^{form_apiDomain}" api_base_path = "^{form_apiBasePath}" - client_id = "" + client_id = "" required_scope = "" jwks_url = f"{api_domain}{api_base_path}jwt/jwks.json" jwks_client = PyJWKClient(jwks_url) try: - jwks = jwks_client.get_signing_keys() - decoded = jwt.decode(jwt_str, jwks[0].key, algorithms=['RS256'], audience=client_id, issuer=f"{api_domain}{api_base_path}") + signing_key = jwks_client.get_signing_keys_from_jwt(token) + decoded = jwt.decode( + token, + signing_key.key, + algorithms=['RS256'], + audience=audience, + options={"require": ["stt", "client_id", "scp"]} + ) sst = decoded.get('sst', None) if stt != 1: return False + token_client_id = decoded.get('client_id', None) + if client_id != token_client_id: + return False + scopes = decoded.get('scp', []) if required_scope not in scopes: @@ -152,7 +480,6 @@ def validate_token(token): You can use the [Firebase JWT](https://github.com/firebase/php-jwt) library to verify the token. -Here is an example of how you can do that: ```PHP @@ -164,21 +491,20 @@ use Firebase\JWT\Key; function validateToken($jwt) { $apiDomain = "^{form_apiDomain}"; $apiBasePath = "^{form_apiBasePath}"; - $clientID = ""; + $jwksUrl = $apiDomain . $apiBasePath . '/jwt/jwks.json'; $requiredScope = ""; + $clientId = ""; $jwks = json_decode(file_get_contents($jwksUrl), true); - $keys = array_reduce($jwks['keys'], function ($result, $key) { - $result[$key['kid']] = $key; - return $result; - }, []); - try { - $decoded = JWT::decode($token, new Key($keys[0]['x5c'][0], 'RS256')); - if ($decoded->iss !== $issuer || $decoded->aud !== $audience) { + $decoded = JWT::decode($jwt, JWK::parseKeySet($jwks), 'RS256')); + if ($decoded->sst !== 1) { + return false; + } + if ($decoded->client_id !== $clientId) { return false; } - return $decoded->sst === 1; + return in_array($requiredScope, $decoded->scp); } catch (Exception $e) { return false; } @@ -211,8 +537,7 @@ import java.util.Scanner; public class Main { private static final String JWKS_URL = "^{form_apiDomain}^{form_apiBasePath}jwt/jwks.json"; - private static final String ISSUER = "^{form_apiDomain}^{form_apiBasePath}"; - private static final String AUDIENCE = ""; + private static final String CLIENT_ID = ""; private static Map fetchJWKS() throws Exception { URL url = new URL(JWKS_URL); @@ -233,12 +558,19 @@ public class Main { Algorithm algorithm = Algorithm.RSA256(jwks.get("x5c"), null); JWTVerifier verifier = JWT.require(algorithm) - .withIssuer(ISSUER) - .withAudience(AUDIENCE) .build(); DecodedJWT jwt = verifier.verify(token); - return jwt.getClaim("sst").asInt() == 1; + if(jwt.getClaim("sst").asInt() != 1) { + return false; + } + + if(jwt.getClaim("client_id").asString() != CLIENT_ID) { + return false; + } + + List scopes = jwt.getClaim("scp").asList(); + return scopes.contains(requiredScope); } catch (Exception e) { return false; } @@ -251,7 +583,6 @@ public class Main { You can use the [IdentityModel](https://github.com/IdentityModel/IdentityModel) library to verify the token. -Here is an example of how you can do that: ```c# @@ -269,8 +600,8 @@ class Program { string apiDomain = "^{form_apiDomain}"; string apiBasePath = "^{form_apiBasePath}"; - string clientId = ""; - string requiredScope = ""; + string clientId = ""; + string requiredScope = ""; HttpClient client = new HttpClient(); var response = await client.GetStringAsync($"{apiDomain}{apiBasePath}jwt/jwks.json"); @@ -279,8 +610,6 @@ class Program var tokenHandler = new JwtSecurityTokenHandler(); var validationParameters = new TokenValidationParameters { - ValidIssuer = $"{apiDomain}{apiBasePath}", - ValidAudience = clientId, IssuerSigningKeys = jwks.Keys }; @@ -295,6 +624,11 @@ class Program return false; } + if (!claims.ContainsKey("client_id") || claims["client_id"] != clientId) + { + return false; + } + var scopes = claims["scp"].Split(" "); if (!scopes.Contains(requiredScope)) { diff --git a/v2/oauth/customizations/working-with-scopes.mdx b/v2/oauth/customizations/working-with-scopes.mdx index 1fb97eb15..eac50bf55 100644 --- a/v2/oauth/customizations/working-with-scopes.mdx +++ b/v2/oauth/customizations/working-with-scopes.mdx @@ -11,10 +11,8 @@ import TabItem from '@theme/TabItem'; The allowed scopes are set during the creation process of an **OAuth2 Client**. By default, our **OAuth2** implementation adds the following built-in scopes: -- `email`: adds the `email` and `email_verified` claims into the **ID Token** and the **User Info**. -- `phoneNumber`: adds the `phoneNumber` and `phoneNumber_verified` claims into the **ID Token** and the **User Info** -- `emails`: adds the `emails` claim into the **ID Token** and the **User Info**. It includes all the emails associated with that user. -- `phoneNumbers`: adds the `phoneNumbers` claim into the **ID Token** and the **User Info**. It includes all the phone numbers associated with that user. +- `email`: adds the `email`, `emails` and `email_verified` claims into the **ID Token** and the **User Info**. +- `phoneNumber`: adds the `phoneNumber`, `phoneNumbers` and `phoneNumber_verified` claims into the **ID Token** and the **User Info** - `roles`: adds the roles claim into the **ID Token** and Access Token. - This will contain the roles returned by `getRolesForUser` - This only works if the `UserRoles` recipe is initialized diff --git a/v2/oauth/introduction.mdx b/v2/oauth/introduction.mdx index aa180e101..91e2cbee0 100644 --- a/v2/oauth/introduction.mdx +++ b/v2/oauth/introduction.mdx @@ -28,6 +28,7 @@ There are a few limitations with the **OAuth2** recipes: - It is only available for the **SuperTokens Managed Service**. This feature is not included in the **Self-Hosted** version. - Only the `supertokens-node` backend SDK supports it as of yet. So if you are using our `golang` or `python` SDK, you will have to wait, or else you could switch to using our `node` **SDK**. - We do not support magic link based login. However, you can switch to `email`/`SMS` **OTP** instead. This method offers the same level of security. +- *Step Up Authentication* is not available out of the box. You will have to use customizations in order to support the flow. In general, when using the **OAuth2** flows, we recommend cookie-based sessions since they enable smoother authentication flows. ::: diff --git a/v2/oauth/machine-to-machine-authentication.mdx b/v2/oauth/machine-to-machine-authentication.mdx index 5d3155b19..2d75bc754 100644 --- a/v2/oauth/machine-to-machine-authentication.mdx +++ b/v2/oauth/machine-to-machine-authentication.mdx @@ -74,14 +74,16 @@ curl -X POST ^{coreInjector_uri_without_quotes}/recipe/oauth2/admin/clients \ "tokenEndpointAuthMethod": "none", "client_name": "", "grant_types": ["client_credentials"], + "audience": [""] }' ``` - `client_name` - Then name of the client that will be used later for identification. -- `grant_types` - The grant types that the [**Client**](/#authorization) will use. +- `grant_types` - The grant types that the [**Client**](/introduction#client) will use. - `client_credentials`: Allows the client to directly request an Access Token by authenticating itself with the Authorization Server using its own client credentials. +- `audience` - Value used to identify for whom a token was issued. When a service will request an **OAuth2 Token** that can be used on this client, the requested token should include one of the audience values. If the creation was successful, the API will return a response that looks like this: @@ -159,10 +161,11 @@ Check the following code snippet to see how you can do that: curl -X POST ^{form_apiDomain}^{form_apiBasePath}/oauth/token \ -H "Content-Type: application/json" \ -d '{ - "client_id": "", - "client_secret": "", + "client_id": "", + "client_secret": "", "grant_type": "client_credentials", - "scope": [""] + "scope": [""], + "audience": "" }' ``` From 9ef694990df42d92555977c0a04f96b975127db2 Mon Sep 17 00:00:00 2001 From: Bogdan Carpusor Date: Tue, 8 Oct 2024 11:23:06 +0300 Subject: [PATCH 10/33] Add code checking fixes --- v2/docusaurus.config.js | 2 +- .../add-custom-claims-in-tokens.mdx | 4 +- v2/oauth/customizations/custom-ui.mdx | 8 +- v2/oauth/customizations/verify-tokens.mdx | 12 +- .../customizations/working-with-scopes.mdx | 2 +- .../machine-to-machine-authentication.mdx | 4 +- ...ltiple-frontends-with-a-single-backend.mdx | 20 +- ...tiple-frontends-with-separate-backends.mdx | 16 +- v2/src/plugins/codeTypeChecking/index.js | 1509 ++++++++++------- .../manual-account-linking.mdx | 2 +- .../manual-account-linking.mdx | 2 +- .../manual-account-linking.mdx | 2 +- 12 files changed, 936 insertions(+), 647 deletions(-) diff --git a/v2/docusaurus.config.js b/v2/docusaurus.config.js index 03a9374b8..718b718a6 100644 --- a/v2/docusaurus.config.js +++ b/v2/docusaurus.config.js @@ -110,7 +110,7 @@ module.exports = { }, prism: { theme: require("prism-react-renderer/themes/vsDark"), - additionalLanguages: ["kotlin", "java", "swift", "dart"], + additionalLanguages: ["kotlin", "java", "swift", "dart", "csharp", "php"], }, algolia: { apiKey: "ce04a158637d345fc094ebbfa9a5156a", diff --git a/v2/oauth/customizations/add-custom-claims-in-tokens.mdx b/v2/oauth/customizations/add-custom-claims-in-tokens.mdx index d26221a5e..6e27d95bb 100644 --- a/v2/oauth/customizations/add-custom-claims-in-tokens.mdx +++ b/v2/oauth/customizations/add-custom-claims-in-tokens.mdx @@ -18,7 +18,7 @@ If you want to add custom properties in the token payloads you can do this by us -```typescript +```tsx OAuth2Provider.init({ override: { functions: (originalImplementation) => ({ @@ -69,7 +69,7 @@ At the moment we do not have support creating OAuth2 providers in the Python SDK -```typescript +```tsx OAuth2Provider.init({ override: { functions: (originalImplementation) => ({ diff --git a/v2/oauth/customizations/custom-ui.mdx b/v2/oauth/customizations/custom-ui.mdx index 803ff922a..05bf91cb7 100644 --- a/v2/oauth/customizations/custom-ui.mdx +++ b/v2/oauth/customizations/custom-ui.mdx @@ -44,7 +44,7 @@ If you want to change these routes you will have to add a custom override. -```typescript +```tsx OAuth2Provider.init({ override: { @@ -118,7 +118,7 @@ In order to determine the correct redirection you can use the below code sample. -```typescript +```tsx async function getInitialRedirectionURL() { const urlParams = new URLSearchParams(window.location.search); @@ -162,7 +162,7 @@ Then you can redirect the user to a new page. -```typescript +```tsx async function refreshToken() { await Session.attemptRefreshingSession(); @@ -200,7 +200,7 @@ Based on the final response you can redirect the user to the provided redirectio -```typescript +```tsx async function logout() { const confirmation = confirm("Are you sure that you want to log out?"); diff --git a/v2/oauth/customizations/verify-tokens.mdx b/v2/oauth/customizations/verify-tokens.mdx index c590e9d2c..24501110d 100644 --- a/v2/oauth/customizations/verify-tokens.mdx +++ b/v2/oauth/customizations/verify-tokens.mdx @@ -36,7 +36,7 @@ You will have to check if the `audience` and `scopes` of the provided token matc For NodeJS you can use [jose](https://github.com/panva/jose) to verify the token. -```typescript +```tsx import jose from "jose"; const JWKS = jose.createRemoteJWKSet(new URL('^{form_apiDomain}^{form_apiBasePath}jwt/jwks.json')) @@ -169,7 +169,7 @@ def validate_token(token): You can use the [Firebase JWT](https://github.com/firebase/php-jwt) library to verify the token. -```PHP +```php require 'vendor/autoload.php'; @@ -267,7 +267,7 @@ public class Main { You can use the [IdentityModel](https://github.com/IdentityModel/IdentityModel) library to verify the token. -```c# +```csharp using System; using System.Linq; @@ -341,7 +341,7 @@ You will have to check if the `client_id` and `scopes` of the provided token mat For NodeJS you can use [jose](https://github.com/panva/jose) to verify the token. -```typescript +```tsx import jose from "jose"; const JWKS = jose.createRemoteJWKSet(new URL('^{form_apiDomain}^{form_apiBasePath}jwt/jwks.json')) @@ -481,7 +481,7 @@ def validate_token(token): You can use the [Firebase JWT](https://github.com/firebase/php-jwt) library to verify the token. -```PHP +```php require 'vendor/autoload.php'; @@ -584,7 +584,7 @@ public class Main { You can use the [IdentityModel](https://github.com/IdentityModel/IdentityModel) library to verify the token. -```c# +```csharp using System; using System.Linq; diff --git a/v2/oauth/customizations/working-with-scopes.mdx b/v2/oauth/customizations/working-with-scopes.mdx index eac50bf55..8c823d6f6 100644 --- a/v2/oauth/customizations/working-with-scopes.mdx +++ b/v2/oauth/customizations/working-with-scopes.mdx @@ -35,7 +35,7 @@ If you want to manually modify the list of scopes that are granted to the client -```typescript +```tsx OAuth2Provider.init({ override: { functions: (originalFunctions) => ({ diff --git a/v2/oauth/machine-to-machine-authentication.mdx b/v2/oauth/machine-to-machine-authentication.mdx index 2d75bc754..2a17374d5 100644 --- a/v2/oauth/machine-to-machine-authentication.mdx +++ b/v2/oauth/machine-to-machine-authentication.mdx @@ -111,7 +111,7 @@ Update the `supertokens.init` call to include the new recipe. 1. Add the new import statement -```typescript +```tsx import OAuth2Provider from "supertokens-node/recipe/oauth2provider"; @@ -121,7 +121,7 @@ import OAuth2Provider from "supertokens-node/recipe/oauth2provider"; ```tsx -OAuth2Provider.init(), +OAuth2Provider.init() ``` diff --git a/v2/oauth/multiple-frontends-with-a-single-backend.mdx b/v2/oauth/multiple-frontends-with-a-single-backend.mdx index 0ffe4340f..0c3751d8e 100644 --- a/v2/oauth/multiple-frontends-with-a-single-backend.mdx +++ b/v2/oauth/multiple-frontends-with-a-single-backend.mdx @@ -137,7 +137,7 @@ Update the `supertokens.init` call to include the new recipes. 1. Add the new import statements -```typescript +```tsx import OAuth2Provider from "supertokens-node/recipe/oauth2provider"; import OAuth2Client from "supertokens-node/recipe/oauth2client"; ``` @@ -199,7 +199,7 @@ all the steps that you have to take into account. - Add the import statement for the new recipe. -```typescript +```tsx import OAuth2Provider from "supertokens-auth-react/recipe/oauth2provider"; ``` @@ -218,7 +218,7 @@ OAuth2Provider.init() - Add the import statement for the pre built UI component. -```typescript +```tsx import OAuth2ProviderPreBuiltUI from "supertokens-auth-react/recipe/oauth2provider/prebuiltui"; ``` @@ -230,7 +230,7 @@ import OAuth2ProviderPreBuiltUI from "supertokens-auth-react/recipe/oauth2provid - Add the import statement for the pre built UI component. -```typescript +```tsx import OAuth2ProviderPreBuiltUI from "supertokens-auth-react/recipe/oauth2provider/prebuiltui"; ``` @@ -248,9 +248,9 @@ import OAuth2ProviderPreBuiltUI from "supertokens-auth-react/recipe/oauth2provid 1. Update the `AuthComponent` so that it also includes the `OAuth2Provider` recipe. You will have to add a new item in the `recipeList` array, inside the `supertokensUIInit` call. -```typescript +```tsx -supertokensUIOAuth2Provider.init(), +(window as any).supertokensUIOAuth2Provider.init() ``` @@ -262,9 +262,9 @@ supertokensUIOAuth2Provider.init(), 1. Update the `AuthView` component so that it also includes the `OAuth2Provider` recipe. You will have to add a new item in the `recipeList` array, inside the `supertokensUIInit` call. -```typescript +```tsx -supertokensUIOAuth2Provider.init(), +(window as any).supertokensUIOAuth2Provider.init() ``` @@ -292,7 +292,7 @@ We need to update the `Session.init` call to use header based authentication. This has to be done because each of your `frontend` applications will act as a third party domain to the `backend`. So we can't rely on `cookie` based authentication since some browsers do not allow third party cookies. -```typescript +```tsx Session.init({ // ... tokenTransferMethod: "header" @@ -341,7 +341,7 @@ After you have obtained the **OAuth2 Access Token** you will have to exchange it To do this you will have to call the **Authorization Service** backend API in the following way. -```typescript +```tsx async function exchangeTokens(accessToken: string) { const res = await fetch(`^{form_apiDomain}^{form_apiBasePath}oauth/client/signin`, { diff --git a/v2/oauth/multiple-frontends-with-separate-backends.mdx b/v2/oauth/multiple-frontends-with-separate-backends.mdx index e9b68cd8c..bb36e4e8d 100644 --- a/v2/oauth/multiple-frontends-with-separate-backends.mdx +++ b/v2/oauth/multiple-frontends-with-separate-backends.mdx @@ -143,7 +143,7 @@ Update the `supertokens.init` call to include the `OAuth2Provider` recipe. 1. Add the import statement for the recipe. -```typescript +```tsx import OAuth2Provider from "supertokens-node/recipe/oauth2provider"; ``` @@ -199,7 +199,7 @@ all the steps that you have to take into account. - Add the import statement for the new recipe. -```typescript +```tsx import OAuth2Provider from "supertokens-auth-react/recipe/oauth2provider"; ``` @@ -217,7 +217,7 @@ OAuth2Provider.init() - Add the import statement for the pre built UI component. -```typescript +```tsx import OAuth2ProviderPreBuiltUI from "supertokens-auth-react/recipe/oauth2provider/prebuiltui"; ``` @@ -229,7 +229,7 @@ import OAuth2ProviderPreBuiltUI from "supertokens-auth-react/recipe/oauth2provid - Add the import statement for the pre built UI component. -```typescript +```tsx import OAuth2ProviderPreBuiltUI from "supertokens-auth-react/recipe/oauth2provider/prebuiltui"; ``` @@ -247,9 +247,9 @@ import OAuth2ProviderPreBuiltUI from "supertokens-auth-react/recipe/oauth2provid Update the `AuthComponent` so that it also includes the `OAuth2Provider` recipe. You will have to add a new item in the `recipeList` array, inside the `supertokensUIInit` call. -```typescript +```tsx -supertokensUIOAuth2Provider.init(), +(window as any).supertokensUIOAuth2Provider.init() ``` @@ -260,9 +260,9 @@ supertokensUIOAuth2Provider.init(), Update the `AuthView` component so that it also includes the `OAuth2Provider` recipe. You will have to add a new item in the `recipeList` array, inside the `supertokensUIInit` call. -```typescript +```tsx -supertokensUIOAuth2Provider.init(), +(window as any).supertokensUIOAuth2Provider.init() ``` diff --git a/v2/src/plugins/codeTypeChecking/index.js b/v2/src/plugins/codeTypeChecking/index.js index b4201749c..2931e4f0e 100644 --- a/v2/src/plugins/codeTypeChecking/index.js +++ b/v2/src/plugins/codeTypeChecking/index.js @@ -1,10 +1,10 @@ -let fs = require('fs'); -let readdir = require("fs").promises.readdir -let path = require('path'); -var exec = require('child_process').exec; -var crypto = require('crypto'); +let fs = require("fs"); +let readdir = require("fs").promises.readdir; +let path = require("path"); +var exec = require("child_process").exec; +var crypto = require("crypto"); let mdVars = require("../markdownVariables.json"); -const { execSync } = require('child_process'); +const { execSync } = require("child_process"); let defaultMainContent = ` @@ -16,685 +16,974 @@ void main() { let mainContent = defaultMainContent; function hash(input) { - return crypto.createHash('md5').update(input).digest('hex'); + return crypto.createHash("md5").update(input).digest("hex"); } async function addCodeSnippetToEnv(mdFile, isSwiftEnabled) { - if (mdFile.includes("/v2/change_me/") || mdFile.includes("/v2/contribute/") || - mdFile.includes("/v2/nodejs") || mdFile.includes("/v2/golang") || mdFile.includes("/v2/python") || - mdFile.includes("/v2/auth-react") || mdFile.includes("/v2/website") || mdFile.includes("/v2/react-native") || mdFile.includes("/codeTypeChecking/")) { - return; - } - return new Promise((res, rej) => { - fs.readFile(mdFile, 'utf8', async (err, data) => { - if (err) { - return rej(err); + if ( + mdFile.includes("/v2/change_me/") || + mdFile.includes("/v2/contribute/") || + mdFile.includes("/v2/nodejs") || + mdFile.includes("/v2/golang") || + mdFile.includes("/v2/python") || + mdFile.includes("/v2/auth-react") || + mdFile.includes("/v2/website") || + mdFile.includes("/v2/react-native") || + mdFile.includes("/codeTypeChecking/") + ) { + return; + } + return new Promise((res, rej) => { + fs.readFile(mdFile, "utf8", async (err, data) => { + if (err) { + return rej(err); + } + let fileNameCounter = 0; + let originalData = data; + + let lines = originalData.split("\n"); + + let currentCodeSnippet = ""; + let currentCodeLanguage = ""; + let startAppendingToCodeSnippet = false; + for (let i = 0; i < lines.length; i++) { + let currLineTrimmed = lines[i].trim(); + if (startAppendingToCodeSnippet && !currLineTrimmed.startsWith("```")) { + currentCodeSnippet = currentCodeSnippet + "\n" + lines[i]; + } + if (currLineTrimmed.startsWith("```")) { + startAppendingToCodeSnippet = !startAppendingToCodeSnippet; + if (!startAppendingToCodeSnippet) { + if (currLineTrimmed !== "```") { + return rej( + new Error( + `Something wrong in how a code snippet has ended in ${mdFile}`, + ), + ); } - let fileNameCounter = 0; - let originalData = data; - - let lines = originalData.split("\n"); - - let currentCodeSnippet = ""; - let currentCodeLanguage = ""; - let startAppendingToCodeSnippet = false; - for (let i = 0; i < lines.length; i++) { - let currLineTrimmed = lines[i].trim(); - if (startAppendingToCodeSnippet && !currLineTrimmed.startsWith("```")) { - currentCodeSnippet = currentCodeSnippet + "\n" + lines[i]; - } - if (currLineTrimmed.startsWith("```")) { - startAppendingToCodeSnippet = !startAppendingToCodeSnippet; - if (!startAppendingToCodeSnippet) { - if (currLineTrimmed !== "```") { - return rej(new Error(`Something wrong in how a code snippet has ended in ${mdFile}`)); - } - // we just finished copying a code snippet - if (currentCodeLanguage !== "ignore") { - await addCodeSnippetToEnvHelper(currentCodeSnippet, currentCodeLanguage, mdFile, fileNameCounter); - fileNameCounter++; - } - currentCodeSnippet = ""; - currentCodeLanguage = ""; - } else { - // we are starting a code block - if (currLineTrimmed === "```js" || currLineTrimmed.startsWith("```js ") || - currLineTrimmed === "```jsx" || currLineTrimmed.startsWith("```jsx ")) { - return rej(new Error(`Please do not use js or jsx in code snippets. Only ts or tsx. Error in ` + mdFile)); - } else if (currLineTrimmed === "```ts" || currLineTrimmed.startsWith("```ts ") || - currLineTrimmed === "```tsx" || currLineTrimmed.startsWith("```tsx ")) { - currentCodeLanguage = "typescript"; - } else if (currLineTrimmed === "```go" || currLineTrimmed.startsWith("```go ")) { - currentCodeLanguage = "go"; - } else if (currLineTrimmed === "```python" || currLineTrimmed.startsWith("```python ")) { - currentCodeLanguage = "python"; - } else if (currLineTrimmed === "```kotlin" || currLineTrimmed.startsWith("```kotlin ")) { - currentCodeLanguage = "kotlin"; - } else if (currLineTrimmed === "```swift" || currLineTrimmed.startsWith("```swift ")) { - currentCodeLanguage = isSwiftEnabled ? "swift" : "ignore" - } else if (currLineTrimmed.includes("bash") || currLineTrimmed.includes("yaml") || currLineTrimmed.includes("cql") || currLineTrimmed.includes("sql") || currLineTrimmed.includes("batch") || - currLineTrimmed.includes("text") || currLineTrimmed.includes("json") - || currLineTrimmed.includes("html")) { - currentCodeLanguage = "ignore" - } else if (currLineTrimmed === "```dart" || currLineTrimmed.startsWith("```dart ")) { - currentCodeLanguage = "dart"; - } else { - return rej(new Error(`UNABLE TO RECOGNISE LANGUAGE ${currLineTrimmed} in file ${mdFile}.`)); - } - } - } + // we just finished copying a code snippet + if (currentCodeLanguage !== "ignore") { + await addCodeSnippetToEnvHelper( + currentCodeSnippet, + currentCodeLanguage, + mdFile, + fileNameCounter, + ); + fileNameCounter++; } - res(); - }); + currentCodeSnippet = ""; + currentCodeLanguage = ""; + } else { + // we are starting a code block + if ( + currLineTrimmed === "```js" || + currLineTrimmed.startsWith("```js ") || + currLineTrimmed === "```jsx" || + currLineTrimmed.startsWith("```jsx ") + ) { + return rej( + new Error( + `Please do not use js or jsx in code snippets. Only ts or tsx. Error in ` + + mdFile, + ), + ); + } else if ( + currLineTrimmed === "```ts" || + currLineTrimmed.startsWith("```ts ") || + currLineTrimmed === "```tsx" || + currLineTrimmed.startsWith("```tsx ") + ) { + currentCodeLanguage = "typescript"; + } else if ( + currLineTrimmed === "```go" || + currLineTrimmed.startsWith("```go ") + ) { + currentCodeLanguage = "go"; + } else if ( + currLineTrimmed === "```python" || + currLineTrimmed.startsWith("```python ") + ) { + currentCodeLanguage = "python"; + } else if ( + currLineTrimmed === "```kotlin" || + currLineTrimmed.startsWith("```kotlin ") + ) { + currentCodeLanguage = "kotlin"; + } else if ( + currLineTrimmed === "```swift" || + currLineTrimmed.startsWith("```swift ") + ) { + currentCodeLanguage = isSwiftEnabled ? "swift" : "ignore"; + } else if ( + currLineTrimmed.includes("bash") || + currLineTrimmed.includes("yaml") || + currLineTrimmed.includes("cql") || + currLineTrimmed.includes("sql") || + currLineTrimmed.includes("batch") || + currLineTrimmed.includes("text") || + currLineTrimmed.includes("json") || + currLineTrimmed.includes("php") || + currLineTrimmed.includes("java") || + currLineTrimmed.includes("c#") || + currLineTrimmed.includes("html") + ) { + currentCodeLanguage = "ignore"; + } else if ( + currLineTrimmed === "```dart" || + currLineTrimmed.startsWith("```dart ") + ) { + currentCodeLanguage = "dart"; + } else { + return rej( + new Error( + `UNABLE TO RECOGNISE LANGUAGE ${currLineTrimmed} in file ${mdFile}.`, + ), + ); + } + } + } + } + res(); }); + }); } async function getFiles(dir) { - if (!fs.existsSync(dir)) { - return []; - } - const dirents = await readdir(dir, { withFileTypes: true }); - const files = await Promise.all(dirents.map((dirent) => { - const res = path.resolve(dir, dirent.name); - return dirent.isDirectory() ? getFiles(res) : res; - })); - return Array.prototype.concat(...files); + if (!fs.existsSync(dir)) { + return []; + } + const dirents = await readdir(dir, { withFileTypes: true }); + const files = await Promise.all( + dirents.map((dirent) => { + const res = path.resolve(dir, dirent.name); + return dirent.isDirectory() ? getFiles(res) : res; + }), + ); + return Array.prototype.concat(...files); } function cleanEmptyFoldersRecursively(folder) { - if (!fs.existsSync(folder)) { - return; - } - var isDir = fs.statSync(folder).isDirectory(); - if (!isDir) { - return; - } - var files = fs.readdirSync(folder); - if (files.length > 0) { - files.forEach(function (file) { - var fullPath = path.join(folder, file); - cleanEmptyFoldersRecursively(fullPath); - }); - - // re-evaluate files; after deleting subfolder - // we may have parent folder empty now - files = fs.readdirSync(folder); - } + if (!fs.existsSync(folder)) { + return; + } + var isDir = fs.statSync(folder).isDirectory(); + if (!isDir) { + return; + } + var files = fs.readdirSync(folder); + if (files.length > 0) { + files.forEach(function (file) { + var fullPath = path.join(folder, file); + cleanEmptyFoldersRecursively(fullPath); + }); - if (files.length == 0) { - fs.rmdirSync(folder); - return; - } + // re-evaluate files; after deleting subfolder + // we may have parent folder empty now + files = fs.readdirSync(folder); + } + + if (files.length == 0) { + fs.rmdirSync(folder); + return; + } } async function deleteFilesWithoutErrorsTypescript(stdout) { - let errors = stdout.split("\n"); - let fileNames = []; - - /** - * NOTE that because of how typescript reports file paths, all paths in - * fileNames will start from /snippets and not from the root (~/) - */ - errors.forEach(error => { - // tsc output has some other lines + info that we are not interested in - if (error !== "" && error.includes("snippets")) { - fileNames.push(error.split("(")[0]); - } - }) - - let snippetsPathPrefix = "src/plugins/codeTypeChecking/jsEnv/snippets/"; - let files = await getFiles(snippetsPathPrefix); - await getRootDir(); - - files.forEach(file => { - let actualPath = file.replace(rootDir, ""); - - // We replace the path from project root to snippets with just snippets/ to match the format that tsc outputs - if (!fileNames.includes(actualPath.replace(snippetsPathPrefix, "snippets/"))) { - let exists = fs.existsSync(actualPath); - if (exists) { - fs.rmSync(actualPath); - } - } - }); + let errors = stdout.split("\n"); + let fileNames = []; + + /** + * NOTE that because of how typescript reports file paths, all paths in + * fileNames will start from /snippets and not from the root (~/) + */ + errors.forEach((error) => { + // tsc output has some other lines + info that we are not interested in + if (error !== "" && error.includes("snippets")) { + fileNames.push(error.split("(")[0]); + } + }); + + let snippetsPathPrefix = "src/plugins/codeTypeChecking/jsEnv/snippets/"; + let files = await getFiles(snippetsPathPrefix); + await getRootDir(); + + files.forEach((file) => { + let actualPath = file.replace(rootDir, ""); + + // We replace the path from project root to snippets with just snippets/ to match the format that tsc outputs + if ( + !fileNames.includes(actualPath.replace(snippetsPathPrefix, "snippets/")) + ) { + let exists = fs.existsSync(actualPath); + if (exists) { + fs.rmSync(actualPath); + } + } + }); - cleanEmptyFoldersRecursively("src/plugins/codeTypeChecking/jsEnv/snippets"); + cleanEmptyFoldersRecursively("src/plugins/codeTypeChecking/jsEnv/snippets"); } - async function deleteFilesWithoutErrorsPython(stdout) { - let errors = stdout.split("\n"); - let fileNames = []; - - errors.forEach(error => { - if (error !== "" && error.includes("snippets")) { - fileNames.push(error.split(":")[0].trim()); - } - }) + let errors = stdout.split("\n"); + let fileNames = []; - let snippetsPathPrefix = "src/plugins/codeTypeChecking/pythonEnv/snippets/"; - let files = await getFiles(snippetsPathPrefix); - await getRootDir(); - - files.forEach(file => { - if (!fileNames.includes(file)) { - let exists = fs.existsSync(file); - if (exists) { - fs.rmSync(file); - } - } - }); + errors.forEach((error) => { + if (error !== "" && error.includes("snippets")) { + fileNames.push(error.split(":")[0].trim()); + } + }); + + let snippetsPathPrefix = "src/plugins/codeTypeChecking/pythonEnv/snippets/"; + let files = await getFiles(snippetsPathPrefix); + await getRootDir(); + + files.forEach((file) => { + if (!fileNames.includes(file)) { + let exists = fs.existsSync(file); + if (exists) { + fs.rmSync(file); + } + } + }); - cleanEmptyFoldersRecursively("src/plugins/codeTypeChecking/pythonEnv/snippets"); + cleanEmptyFoldersRecursively( + "src/plugins/codeTypeChecking/pythonEnv/snippets", + ); } async function checkCodeSnippets(language) { - // typescript.. - if (language === "typescript") { - await new Promise((res, rej) => { - exec("cd src/plugins/codeTypeChecking/jsEnv/ && npm run test", async function (err, stdout, stderr) { - await deleteFilesWithoutErrorsTypescript(stdout); - if (err) { - console.log('\x1b[31m%s\x1b[0m', stdout); - console.log('\x1b[31m%s\x1b[0m', err); - console.log("=======SETUP INSTRS========\n"); - console.log('\x1b[36m%s\x1b[0m', `To setup a JS env, run the following (from v2 folder): + // typescript.. + if (language === "typescript") { + await new Promise((res, rej) => { + exec( + "cd src/plugins/codeTypeChecking/jsEnv/ && npm run test", + async function (err, stdout, stderr) { + await deleteFilesWithoutErrorsTypescript(stdout); + if (err) { + console.log("\x1b[31m%s\x1b[0m", stdout); + console.log("\x1b[31m%s\x1b[0m", err); + console.log("=======SETUP INSTRS========\n"); + console.log( + "\x1b[36m%s\x1b[0m", + `To setup a JS env, run the following (from v2 folder): - cd src/plugins/codeTypeChecking/jsEnv/ - npm i - - npm run test (to make sure that it's setup correctly)`) - console.log("==========================\n"); - - return rej(err); - } - res(); - }); - }) - } else if (language === "go") { - await new Promise((res, rej) => { - exec("cd src/plugins/codeTypeChecking/goEnv/ && go mod tidy && go build ./...", function (err, stdout, stderr) { - if (err) { - console.log('\x1b[31m%s\x1b[0m', stdout); - console.log('\x1b[31m%s\x1b[0m', err); - console.log("=======SETUP INSTRS========\n"); - console.log('\x1b[36m%s\x1b[0m', `Make sure that you have go installed on your system and try this command again`) - console.log("==========================\n"); - return rej(err); - } - res(); - }); - }) - } else if (language === "python") { - await new Promise((res, rej) => { - exec("cd src/plugins/codeTypeChecking/pythonEnv/ && ./checkSnippets.sh", async function (err, stdout, stderr) { - await deleteFilesWithoutErrorsPython(stdout); - if (err) { - console.log('\x1b[31m%s\x1b[0m', stdout); - console.log('\x1b[31m%s\x1b[0m', err); - console.log("=======SETUP INSTRS========\n"); - console.log('\x1b[36m%s\x1b[0m', `To setup a python env, run the following (from v2 folder): + - npm run test (to make sure that it's setup correctly)`, + ); + console.log("==========================\n"); + + return rej(err); + } + res(); + }, + ); + }); + } else if (language === "go") { + await new Promise((res, rej) => { + exec( + "cd src/plugins/codeTypeChecking/goEnv/ && go mod tidy && go build ./...", + function (err, stdout, stderr) { + if (err) { + console.log("\x1b[31m%s\x1b[0m", stdout); + console.log("\x1b[31m%s\x1b[0m", err); + console.log("=======SETUP INSTRS========\n"); + console.log( + "\x1b[36m%s\x1b[0m", + `Make sure that you have go installed on your system and try this command again`, + ); + console.log("==========================\n"); + return rej(err); + } + res(); + }, + ); + }); + } else if (language === "python") { + await new Promise((res, rej) => { + exec( + "cd src/plugins/codeTypeChecking/pythonEnv/ && ./checkSnippets.sh", + async function (err, stdout, stderr) { + await deleteFilesWithoutErrorsPython(stdout); + if (err) { + console.log("\x1b[31m%s\x1b[0m", stdout); + console.log("\x1b[31m%s\x1b[0m", err); + console.log("=======SETUP INSTRS========\n"); + console.log( + "\x1b[36m%s\x1b[0m", + `To setup a python env, run the following (from v2 folder): - cd src/plugins/codeTypeChecking/pythonEnv/ - virtualenv ./venv - source venv/bin/activate - pip install -r requirements.txt - - pylint ./snippets (to make sure that it's setup correctly)`) - console.log("==========================\n"); - return rej(err); - } - res(); - }); - }) - } else if (language === "kotlin") { - await new Promise((res, rej) => { - exec("cd src/plugins/codeTypeChecking/kotlinEnv/ && ./gradlew build", async function (err, stdout, stderr) { - if (err) { - console.log('\x1b[31m%s\x1b[0m', stdout); - console.log('\x1b[31m%s\x1b[0m', err); - console.log("=======SETUP INSTRS========\n"); - console.log('\x1b[36m%s\x1b[0m', `Make sure that you have kotlin installed on your system and try this command again`) - console.log("==========================\n"); - return rej(err); - } - res(); - }); - }) - } else if (language === "swift") { - await new Promise((res, rej) => { - exec("cd src/plugins/codeTypeChecking/iosenv/ && set -o pipefail && xcodebuild -workspace iosenv.xcworkspace -scheme iosenv build CODE_SIGN_IDENTITY='' CODE_SIGNING_REQUIRED=NO -quiet | ./Pods/xcbeautify/xcbeautify", async function (err, stdout, stderr) { - if (err) { - console.log('\x1b[31m%s\x1b[0m', stdout); - console.log('\x1b[31m%s\x1b[0m', err); - console.log("=======SETUP INSTRS========\n"); - console.log('\x1b[36m%s\x1b[0m', `Make sure that you have Xcode installed on your system and try this command again`) - console.log('\x1b[36m%s\x1b[0m', `Make sure that you have run 'pod install' inside iosenv and try this command again`) - console.log("==========================\n"); - return rej(err); - } - res(); - }); - }) - } else if (language === "dart") { - await new Promise((res, rej) => { - exec("cd src/plugins/codeTypeChecking/dart_env/ && flutter build web -t lib/snippets/main.dart", async function (err, stdout, stderr) { - if (err) { - console.log('\x1b[31m%s\x1b[0m', stdout); - console.log('\x1b[31m%s\x1b[0m', err); - console.log("=======SETUP INSTRS========\n"); - console.log('\x1b[36m%s\x1b[0m', `Make sure that you have flutter setup on your system and try this command again`) - console.log('\x1b[36m%s\x1b[0m', `Make sure that you have run 'flutter pub get' inside dart_env and try this command again`) - console.log("==========================\n"); - return rej(err); - } - res(); - }); - }) - } else { - throw new Error("Unsupported language in checkCodeSnippets"); - } + - pylint ./snippets (to make sure that it's setup correctly)`, + ); + console.log("==========================\n"); + return rej(err); + } + res(); + }, + ); + }); + } else if (language === "kotlin") { + await new Promise((res, rej) => { + exec( + "cd src/plugins/codeTypeChecking/kotlinEnv/ && ./gradlew build", + async function (err, stdout, stderr) { + if (err) { + console.log("\x1b[31m%s\x1b[0m", stdout); + console.log("\x1b[31m%s\x1b[0m", err); + console.log("=======SETUP INSTRS========\n"); + console.log( + "\x1b[36m%s\x1b[0m", + `Make sure that you have kotlin installed on your system and try this command again`, + ); + console.log("==========================\n"); + return rej(err); + } + res(); + }, + ); + }); + } else if (language === "swift") { + await new Promise((res, rej) => { + exec( + "cd src/plugins/codeTypeChecking/iosenv/ && set -o pipefail && xcodebuild -workspace iosenv.xcworkspace -scheme iosenv build CODE_SIGN_IDENTITY='' CODE_SIGNING_REQUIRED=NO -quiet | ./Pods/xcbeautify/xcbeautify", + async function (err, stdout, stderr) { + if (err) { + console.log("\x1b[31m%s\x1b[0m", stdout); + console.log("\x1b[31m%s\x1b[0m", err); + console.log("=======SETUP INSTRS========\n"); + console.log( + "\x1b[36m%s\x1b[0m", + `Make sure that you have Xcode installed on your system and try this command again`, + ); + console.log( + "\x1b[36m%s\x1b[0m", + `Make sure that you have run 'pod install' inside iosenv and try this command again`, + ); + console.log("==========================\n"); + return rej(err); + } + res(); + }, + ); + }); + } else if (language === "dart") { + await new Promise((res, rej) => { + exec( + "cd src/plugins/codeTypeChecking/dart_env/ && flutter build web -t lib/snippets/main.dart", + async function (err, stdout, stderr) { + if (err) { + console.log("\x1b[31m%s\x1b[0m", stdout); + console.log("\x1b[31m%s\x1b[0m", err); + console.log("=======SETUP INSTRS========\n"); + console.log( + "\x1b[36m%s\x1b[0m", + `Make sure that you have flutter setup on your system and try this command again`, + ); + console.log( + "\x1b[36m%s\x1b[0m", + `Make sure that you have run 'flutter pub get' inside dart_env and try this command again`, + ); + console.log("==========================\n"); + return rej(err); + } + res(); + }, + ); + }); + } else { + throw new Error("Unsupported language in checkCodeSnippets"); + } } let rootDir = undefined; // uptil v2 async function getRootDir() { - if (rootDir === undefined) { - rootDir = await new Promise(res => exec("pwd", function (err, stdout, stderr) { - res(stdout); - })); - rootDir = rootDir.trim() + "/"; - // at this point, rootDir is /Users/.../main-website/docs/v2/ or if only cloned docs, then its /Users/.../docs/v2/ - } - - return rootDir; + if (rootDir === undefined) { + rootDir = await new Promise((res) => + exec("pwd", function (err, stdout, stderr) { + res(stdout); + }), + ); + rootDir = rootDir.trim() + "/"; + // at this point, rootDir is /Users/.../main-website/docs/v2/ or if only cloned docs, then its /Users/.../docs/v2/ + } + + return rootDir; } async function getRecipeName(mdFile) { - if (rootDir === undefined) { - rootDir = await new Promise(res => exec("pwd", function (err, stdout, stderr) { - res(stdout); - })); - rootDir = rootDir.trim() + "/"; - // at this point, rootDir is /Users/.../main-website/docs/v2/ or if only cloned docs, then its /Users/.../docs/v2/ - } - let postV2 = mdFile.replace(rootDir, ""); - return postV2.split("/")[0]; + if (rootDir === undefined) { + rootDir = await new Promise((res) => + exec("pwd", function (err, stdout, stderr) { + res(stdout); + }), + ); + rootDir = rootDir.trim() + "/"; + // at this point, rootDir is /Users/.../main-website/docs/v2/ or if only cloned docs, then its /Users/.../docs/v2/ + } + let postV2 = mdFile.replace(rootDir, ""); + return postV2.split("/")[0]; } -async function addCodeSnippetToEnvHelper(codeSnippet, language, mdFile, codeBlockCountInFile) { - // we replace all the variables here so that the code can compile: - - // Excluding __OMIT_START__ and __OMIT_END__ tags from the code snippet before running the type check plugin - // We need to do this before intializing ogCodeSnippet to prevent false warnings about not using docs variables - codeSnippet = codeSnippet.replace(/__OMIT_START__([\s\S]*?)__OMIT_END__/g, '$1'); - - let ogCodeSnippet = codeSnippet; - codeSnippet = codeSnippet.replaceAll("^{coreInjector_connection_uri_comment}", ""); - codeSnippet = codeSnippet.replaceAll("^{coreInjector_uri}", "\"\","); - codeSnippet = codeSnippet.replaceAll("^{coreInjector_api_key_commented}", ""); - codeSnippet = codeSnippet.replaceAll("^{coreInjector_api_key}", "\"\""); - codeSnippet = codeSnippet.replaceAll("^{coreInjector_connection_uri_comment_with_hash}", "") - codeSnippet = codeSnippet.replaceAll("^{coreInjector_api_key_commented_with_hash}", "") - - codeSnippet = codeSnippet.replaceAll("^{form_flowType}", "USER_INPUT_CODE_AND_MAGIC_LINK"); - codeSnippet = codeSnippet.replaceAll("^{form_contactMethod}", "PHONE"); - codeSnippet = codeSnippet.replaceAll("^{form_contactMethod_initialize_Python}", "ContactPhoneOnlyConfig"); - codeSnippet = codeSnippet.replaceAll("^{form_contactMethod_import_Python}", "from supertokens_python.recipe.passwordless import ContactPhoneOnlyConfig"); - codeSnippet = codeSnippet.replaceAll("^{form_contactMethod_sendCB_Go}", - `ContactMethodPhone: plessmodels.ContactMethodPhoneConfig{ +async function addCodeSnippetToEnvHelper( + codeSnippet, + language, + mdFile, + codeBlockCountInFile, +) { + // we replace all the variables here so that the code can compile: + + // Excluding __OMIT_START__ and __OMIT_END__ tags from the code snippet before running the type check plugin + // We need to do this before intializing ogCodeSnippet to prevent false warnings about not using docs variables + codeSnippet = codeSnippet.replace( + /__OMIT_START__([\s\S]*?)__OMIT_END__/g, + "$1", + ); + + let ogCodeSnippet = codeSnippet; + codeSnippet = codeSnippet.replaceAll( + "^{coreInjector_connection_uri_comment}", + "", + ); + codeSnippet = codeSnippet.replaceAll("^{coreInjector_uri}", '"",'); + codeSnippet = codeSnippet.replaceAll("^{coreInjector_api_key_commented}", ""); + codeSnippet = codeSnippet.replaceAll("^{coreInjector_api_key}", '""'); + codeSnippet = codeSnippet.replaceAll( + "^{coreInjector_connection_uri_comment_with_hash}", + "", + ); + codeSnippet = codeSnippet.replaceAll( + "^{coreInjector_api_key_commented_with_hash}", + "", + ); + + codeSnippet = codeSnippet.replaceAll( + "^{form_flowType}", + "USER_INPUT_CODE_AND_MAGIC_LINK", + ); + codeSnippet = codeSnippet.replaceAll("^{form_contactMethod}", "PHONE"); + codeSnippet = codeSnippet.replaceAll( + "^{form_contactMethod_initialize_Python}", + "ContactPhoneOnlyConfig", + ); + codeSnippet = codeSnippet.replaceAll( + "^{form_contactMethod_import_Python}", + "from supertokens_python.recipe.passwordless import ContactPhoneOnlyConfig", + ); + codeSnippet = codeSnippet.replaceAll( + "^{form_contactMethod_sendCB_Go}", + `ContactMethodPhone: plessmodels.ContactMethodPhoneConfig{ Enabled: true, -},`); - - let recipeName = await getRecipeName(mdFile); - let replaceMap = { ...mdVars["common"], ...mdVars[recipeName] }; - if (replaceMap !== undefined) { - let keys = Object.keys(replaceMap); - for (let i = 0; i < keys.length; i++) { - if (codeSnippet.includes(`^{${keys[i]}}`)) { - codeSnippet = codeSnippet.replaceAll(`^{${keys[i]}}`, replaceMap[keys[i]]); - } - } +},`, + ); + + let recipeName = await getRecipeName(mdFile); + let replaceMap = { ...mdVars["common"], ...mdVars[recipeName] }; + if (replaceMap !== undefined) { + let keys = Object.keys(replaceMap); + for (let i = 0; i < keys.length; i++) { + if (codeSnippet.includes(`^{${keys[i]}}`)) { + codeSnippet = codeSnippet.replaceAll( + `^{${keys[i]}}`, + replaceMap[keys[i]], + ); + } } - - // this block is there so that the dev knows that the resulting block should use variable code snippets. - if (ogCodeSnippet !== codeSnippet) { - for (let i = 0; i < 50; i++) { - if (language === "typescript" || language === "go" || language === "kotlin" || language === "swift" || language === "dart") { - codeSnippet = "// THIS FILE CONTAINS DOCS VARIABLES. PLEASE DO NOT FORGET TO USE THOSE\n" + codeSnippet; - } else if (language === "python") { - codeSnippet = "# THIS FILE CONTAINS DOCS VARIABLES. PLEASE DO NOT FORGET TO USE THOSE\n" + codeSnippet; - } else { - throw new Error("language not supported"); - } - } + } + + // this block is there so that the dev knows that the resulting block should use variable code snippets. + if (ogCodeSnippet !== codeSnippet) { + for (let i = 0; i < 50; i++) { + if ( + language === "typescript" || + language === "go" || + language === "kotlin" || + language === "swift" || + language === "dart" + ) { + codeSnippet = + "// THIS FILE CONTAINS DOCS VARIABLES. PLEASE DO NOT FORGET TO USE THOSE\n" + + codeSnippet; + } else if (language === "python") { + codeSnippet = + "# THIS FILE CONTAINS DOCS VARIABLES. PLEASE DO NOT FORGET TO USE THOSE\n" + + codeSnippet; + } else { + throw new Error("language not supported"); + } } + } + if (language === "typescript") { + if (codeSnippet.includes("require(")) { + throw new Error("Do not use 'require' in TS code. Error in " + mdFile); + } + codeSnippet = `export { }\n// Original: ${mdFile}\n${codeSnippet}`; // see https://www.aritsltd.com/blog/frontend-development/cannot-redeclare-block-scoped-variable-the-reason-behind-the-error-and-the-way-to-resolve-it/ - if (language === "typescript") { - if (codeSnippet.includes("require(")) { - throw new Error("Do not use 'require' in TS code. Error in " + mdFile); - } - codeSnippet = `export { }\n// Original: ${mdFile}\n${codeSnippet}`; // see https://www.aritsltd.com/blog/frontend-development/cannot-redeclare-block-scoped-variable-the-reason-behind-the-error-and-the-way-to-resolve-it/ - - // vue requires use of ", ""); - } + // vue requires use of ", ""); + } - let folderName = mdFile.replaceAll("~", "") + codeBlockCountInFile; - await new Promise(async (res, rej) => { - fs.mkdir('src/plugins/codeTypeChecking/jsEnv/snippets/' + folderName, { recursive: true }, async (err) => { - if (err) { - rej(err); - } else { - await assertThatUserIsNotRemovedDocsVariableByMistake('src/plugins/codeTypeChecking/jsEnv/snippets/' + folderName + "/index.tsx", codeSnippet); - fs.writeFile('src/plugins/codeTypeChecking/jsEnv/snippets/' + folderName + "/index.tsx", codeSnippet, function (err) { - if (err) { - rej(err); - } else { - res(); - } - }); - } - }); - }); - } else if (language === "go") { - if (codeSnippet.includes("/supertokens-go/") || codeSnippet.includes("/supertokens-go\n")) { - throw new Error("Do not use supertokens-go package. Use supertokens-golang package. Error in " + mdFile); - } - // we change the last folder path dir to be a valid go module name - let folderName = mdFile.replaceAll("~", "") + codeBlockCountInFile; - let splittedFolder = folderName.split("/"); - let lastDir = splittedFolder[splittedFolder.length - 1]; - lastDir = lastDir.replaceAll("-", "").replaceAll(".", ""); - splittedFolder[splittedFolder.length - 1] = lastDir; - let newFolderName = splittedFolder.join("/"); - - // adding package on top of go file - codeSnippet = `package ${lastDir}\n/*\n${mdFile}\n*/\n${codeSnippet}`; - - await new Promise(async (res, rej) => { - fs.mkdir('src/plugins/codeTypeChecking/goEnv/snippets/' + newFolderName, { recursive: true }, async (err) => { + let folderName = mdFile.replaceAll("~", "") + codeBlockCountInFile; + await new Promise(async (res, rej) => { + fs.mkdir( + "src/plugins/codeTypeChecking/jsEnv/snippets/" + folderName, + { recursive: true }, + async (err) => { + if (err) { + rej(err); + } else { + await assertThatUserIsNotRemovedDocsVariableByMistake( + "src/plugins/codeTypeChecking/jsEnv/snippets/" + + folderName + + "/index.tsx", + codeSnippet, + ); + fs.writeFile( + "src/plugins/codeTypeChecking/jsEnv/snippets/" + + folderName + + "/index.tsx", + codeSnippet, + function (err) { if (err) { - rej(err); + rej(err); } else { - await assertThatUserIsNotRemovedDocsVariableByMistake('src/plugins/codeTypeChecking/goEnv/snippets/' + newFolderName + "/main.go", codeSnippet); - fs.writeFile('src/plugins/codeTypeChecking/goEnv/snippets/' + newFolderName + "/main.go", codeSnippet, function (err) { - if (err) { - rej(err); - } else { - res(); - } - }); + res(); } - }); - }); - } else if (language === "python") { - codeSnippet = `# ${mdFile}\n${codeSnippet}` - let folderName = mdFile.replaceAll("~", "") + codeBlockCountInFile; - await new Promise(async (res, rej) => { - fs.mkdir('src/plugins/codeTypeChecking/pythonEnv/snippets/' + folderName, { recursive: true }, async (err) => { + }, + ); + } + }, + ); + }); + } else if (language === "go") { + if ( + codeSnippet.includes("/supertokens-go/") || + codeSnippet.includes("/supertokens-go\n") + ) { + throw new Error( + "Do not use supertokens-go package. Use supertokens-golang package. Error in " + + mdFile, + ); + } + // we change the last folder path dir to be a valid go module name + let folderName = mdFile.replaceAll("~", "") + codeBlockCountInFile; + let splittedFolder = folderName.split("/"); + let lastDir = splittedFolder[splittedFolder.length - 1]; + lastDir = lastDir.replaceAll("-", "").replaceAll(".", ""); + splittedFolder[splittedFolder.length - 1] = lastDir; + let newFolderName = splittedFolder.join("/"); + + // adding package on top of go file + codeSnippet = `package ${lastDir}\n/*\n${mdFile}\n*/\n${codeSnippet}`; + + await new Promise(async (res, rej) => { + fs.mkdir( + "src/plugins/codeTypeChecking/goEnv/snippets/" + newFolderName, + { recursive: true }, + async (err) => { + if (err) { + rej(err); + } else { + await assertThatUserIsNotRemovedDocsVariableByMistake( + "src/plugins/codeTypeChecking/goEnv/snippets/" + + newFolderName + + "/main.go", + codeSnippet, + ); + fs.writeFile( + "src/plugins/codeTypeChecking/goEnv/snippets/" + + newFolderName + + "/main.go", + codeSnippet, + function (err) { if (err) { - rej(err); + rej(err); } else { - await assertThatUserIsNotRemovedDocsVariableByMistake('src/plugins/codeTypeChecking/pythonEnv/snippets/' + folderName + "/main.py", codeSnippet); - fs.writeFile('src/plugins/codeTypeChecking/pythonEnv/snippets/' + folderName + "/main.py", codeSnippet, function (err) { - if (err) { - rej(err); - } else { - res(); - } - }); + res(); } - }); - }); - } else if (language === "kotlin") { - let folderName = mdFile.replaceAll("~", "") + codeBlockCountInFile; - folderName = folderName.replace(".mdx", ""); - let packageNameSplitted = folderName.split("/"); - packageNameSplitted = packageNameSplitted.map(i => { - if (i.includes("-")) { - return "`" + i + "`" - } - return i; - }) - codeSnippet = `package com.example.myapplication${packageNameSplitted.join(".")}\n\n// Original: ${mdFile}\n${codeSnippet}`; - await new Promise(async (res, rej) => { - fs.mkdir('src/plugins/codeTypeChecking/kotlinEnv/app/src/main/java/com/example/myapplication/' + folderName, { recursive: true }, async (err) => { + }, + ); + } + }, + ); + }); + } else if (language === "python") { + codeSnippet = `# ${mdFile}\n${codeSnippet}`; + let folderName = mdFile.replaceAll("~", "") + codeBlockCountInFile; + await new Promise(async (res, rej) => { + fs.mkdir( + "src/plugins/codeTypeChecking/pythonEnv/snippets/" + folderName, + { recursive: true }, + async (err) => { + if (err) { + rej(err); + } else { + await assertThatUserIsNotRemovedDocsVariableByMistake( + "src/plugins/codeTypeChecking/pythonEnv/snippets/" + + folderName + + "/main.py", + codeSnippet, + ); + fs.writeFile( + "src/plugins/codeTypeChecking/pythonEnv/snippets/" + + folderName + + "/main.py", + codeSnippet, + function (err) { if (err) { - rej(err); + rej(err); } else { - await assertThatUserIsNotRemovedDocsVariableByMistake('src/plugins/codeTypeChecking/kotlinEnv/app/src/main/java/com/example/myapplication/' + folderName + "/Code.kt", codeSnippet); - fs.writeFile('src/plugins/codeTypeChecking/kotlinEnv/app/src/main/java/com/example/myapplication/' + folderName + "/Code.kt", codeSnippet, function (err) { - if (err) { - rej(err); - } else { - res(); - } - }); + res(); } - }); - }); - } else if (language === "swift") { - let folderName = mdFile.replaceAll("~", "") + codeBlockCountInFile; - folderName = folderName.replace(".mdx", ""); - let packageNameSplitted = folderName.split("/"); - packageNameSplitted = packageNameSplitted.map(i => { - if (i.includes("-")) { - return "`" + i + "`" - } - return i; - }) - codeSnippet = `// Original: ${mdFile}\n${codeSnippet}`; - const folderNameSplit = folderName.split("/"); - const lastFolderPath = folderNameSplit[folderNameSplit.length - 1] + new Date().getTime() - await new Promise(async (res, rej) => { - fs.mkdir('src/plugins/codeTypeChecking/iosenv/iosenv/Snippets/' + folderName, { recursive: true }, async (err) => { + }, + ); + } + }, + ); + }); + } else if (language === "kotlin") { + let folderName = mdFile.replaceAll("~", "") + codeBlockCountInFile; + folderName = folderName.replace(".mdx", ""); + let packageNameSplitted = folderName.split("/"); + packageNameSplitted = packageNameSplitted.map((i) => { + if (i.includes("-")) { + return "`" + i + "`"; + } + return i; + }); + codeSnippet = `package com.example.myapplication${packageNameSplitted.join(".")}\n\n// Original: ${mdFile}\n${codeSnippet}`; + await new Promise(async (res, rej) => { + fs.mkdir( + "src/plugins/codeTypeChecking/kotlinEnv/app/src/main/java/com/example/myapplication/" + + folderName, + { recursive: true }, + async (err) => { + if (err) { + rej(err); + } else { + await assertThatUserIsNotRemovedDocsVariableByMistake( + "src/plugins/codeTypeChecking/kotlinEnv/app/src/main/java/com/example/myapplication/" + + folderName + + "/Code.kt", + codeSnippet, + ); + fs.writeFile( + "src/plugins/codeTypeChecking/kotlinEnv/app/src/main/java/com/example/myapplication/" + + folderName + + "/Code.kt", + codeSnippet, + function (err) { if (err) { - rej(err); + rej(err); } else { - await assertThatUserIsNotRemovedDocsVariableByMistake('src/plugins/codeTypeChecking/iosenv/iosenv/Snippets/' + folderName + "/Code.swift", codeSnippet); - const filename = 'src/plugins/codeTypeChecking/iosenv/iosenv/Snippets/' + folderName + `/${lastFolderPath}.swift`; - fs.writeFile(filename, codeSnippet, function (err) { - if (err) { - rej(err); - } else { - execSync(`./src/plugins/codeTypeChecking/iosenv/createFile.rb "${filename}"`) - res(); - } - }); + res(); } + }, + ); + } + }, + ); + }); + } else if (language === "swift") { + let folderName = mdFile.replaceAll("~", "") + codeBlockCountInFile; + folderName = folderName.replace(".mdx", ""); + let packageNameSplitted = folderName.split("/"); + packageNameSplitted = packageNameSplitted.map((i) => { + if (i.includes("-")) { + return "`" + i + "`"; + } + return i; + }); + codeSnippet = `// Original: ${mdFile}\n${codeSnippet}`; + const folderNameSplit = folderName.split("/"); + const lastFolderPath = + folderNameSplit[folderNameSplit.length - 1] + new Date().getTime(); + await new Promise(async (res, rej) => { + fs.mkdir( + "src/plugins/codeTypeChecking/iosenv/iosenv/Snippets/" + folderName, + { recursive: true }, + async (err) => { + if (err) { + rej(err); + } else { + await assertThatUserIsNotRemovedDocsVariableByMistake( + "src/plugins/codeTypeChecking/iosenv/iosenv/Snippets/" + + folderName + + "/Code.swift", + codeSnippet, + ); + const filename = + "src/plugins/codeTypeChecking/iosenv/iosenv/Snippets/" + + folderName + + `/${lastFolderPath}.swift`; + fs.writeFile(filename, codeSnippet, function (err) { + if (err) { + rej(err); + } else { + execSync( + `./src/plugins/codeTypeChecking/iosenv/createFile.rb "${filename}"`, + ); + res(); + } }); - }); - } else if (language === "dart") { - let folderName = mdFile.replaceAll("~", "") + codeBlockCountInFile; + } + }, + ); + }); + } else if (language === "dart") { + let folderName = mdFile.replaceAll("~", "") + codeBlockCountInFile; + + await new Promise(async (res, rej) => { + fs.mkdir( + "src/plugins/codeTypeChecking/dart_env/lib/snippets", + { recursive: true }, + async (err) => { + if (err) { + rej(err); + } else { + res(); + } + }, + ); + }); - await new Promise(async (res, rej) => { - fs.mkdir("src/plugins/codeTypeChecking/dart_env/lib/snippets", { recursive: true }, async (err) => { - if (err) { - rej(err); - } else { - res(); - } - }) - }); + await new Promise(async (res, rej) => { + fs.writeFile( + "src/plugins/codeTypeChecking/dart_env/lib/snippets/main.dart", + mainContent, + async (err) => { + if (err) { + rej(err); + } else { + res(); + } + }, + ); + }); - await new Promise(async (res, rej) => { - fs.writeFile("src/plugins/codeTypeChecking/dart_env/lib/snippets/main.dart", mainContent, async (err) => { + await new Promise(async (res, rej) => { + fs.mkdir( + "src/plugins/codeTypeChecking/dart_env/lib/snippets/" + folderName, + { recursive: true }, + async (err) => { + if (err) { + rej(err); + } else { + await assertThatUserIsNotRemovedDocsVariableByMistake( + "src/plugins/codeTypeChecking/dart_env/lib/snippets/" + + folderName + + "/index.dart", + codeSnippet, + ); + fs.writeFile( + "src/plugins/codeTypeChecking/dart_env/lib/snippets/" + + folderName + + "/index.dart", + codeSnippet, + function (err) { if (err) { - rej(err); + rej(err); } else { - res(); + res(); } - }) - }); - - await new Promise(async (res, rej) => { - fs.mkdir('src/plugins/codeTypeChecking/dart_env/lib/snippets/' + folderName, { recursive: true }, async (err) => { - if (err) { + }, + ); + + let dartImportStatement = `import 'package:dart_env/snippets/${folderName}/index.dart';`; + mainContent = dartImportStatement + "\n" + mainContent; + + await new Promise(async (res, rej) => { + fs.writeFile( + "src/plugins/codeTypeChecking/dart_env/lib/snippets/main.dart", + mainContent, + async (err) => { + if (err) { rej(err); - } else { - await assertThatUserIsNotRemovedDocsVariableByMistake('src/plugins/codeTypeChecking/dart_env/lib/snippets/' + folderName + "/index.dart", codeSnippet); - fs.writeFile('src/plugins/codeTypeChecking/dart_env/lib/snippets/' + folderName + "/index.dart", codeSnippet, function (err) { - if (err) { - rej(err); - } else { - res(); - } - }); - - let dartImportStatement = `import 'package:dart_env/snippets/${folderName}/index.dart';`; - mainContent = dartImportStatement + "\n" + mainContent; - - await new Promise(async (res, rej) => { - fs.writeFile("src/plugins/codeTypeChecking/dart_env/lib/snippets/main.dart", mainContent, async (err) => { - if (err) { - rej(err); - } else { - res(); - } - }) - }); - } + } else { + res(); + } + }, + ); }); - }); - } else { - throw new Error("Unsupported language in addCodeSnippetToEnvHelper"); - } + } + }, + ); + }); + } else { + throw new Error("Unsupported language in addCodeSnippetToEnvHelper"); + } } -async function assertThatUserIsNotRemovedDocsVariableByMistake(path, codeSnippet) { - /* first we try and read the contents to see if this has +async function assertThatUserIsNotRemovedDocsVariableByMistake( + path, + codeSnippet, +) { + /* first we try and read the contents to see if this has THIS FILE CONTAINS DOCS VARIABLES. PLEASE DO NOT FORGET TO USE THOSE and if the new code snippet doesn't then, the dev has made a mistake of removing variables...*/ - return new Promise((res, rej) => { - fs.readFile(path, 'utf8', function (err, data) { - if (data !== undefined) { - if (data.includes("THIS FILE CONTAINS DOCS VARIABLES. PLEASE DO NOT FORGET TO USE THOSE") && !codeSnippet.includes("THIS FILE CONTAINS DOCS VARIABLES. PLEASE DO NOT FORGET TO USE THOSE")) { - let message = "DID YOU FORGET TO USE DOCS VARIABLES IN A RECENT CODE CHANGE? PLEASE CHECK" - + "\n\nIf you think this error is unrelated to your changes, try deleting the `snippets` folder for all languages and run again.\n\nThe file path is: " + path - return rej(new Error(message)); - } - } - res(); - }); - }) + return new Promise((res, rej) => { + fs.readFile(path, "utf8", function (err, data) { + if (data !== undefined) { + if ( + data.includes( + "THIS FILE CONTAINS DOCS VARIABLES. PLEASE DO NOT FORGET TO USE THOSE", + ) && + !codeSnippet.includes( + "THIS FILE CONTAINS DOCS VARIABLES. PLEASE DO NOT FORGET TO USE THOSE", + ) + ) { + let message = + "DID YOU FORGET TO USE DOCS VARIABLES IN A RECENT CODE CHANGE? PLEASE CHECK" + + "\n\nIf you think this error is unrelated to your changes, try deleting the `snippets` folder for all languages and run again.\n\nThe file path is: " + + path; + return rej(new Error(message)); + } + } + res(); + }); + }); } function replaceCustomPlaceholdersInLine(child, exportedVariables) { - // A child will either have value properties or more children - - // If it has a value, check if it is using a variable. If it is then replace otherwise skip - if (child.value) { - var valueCopy = child.value; - - // Exclude sections marked by __OMIT_START__ and __OMIT_END__ from the code snippet, along with the tags themselves - valueCopy = valueCopy.replace(/__OMIT_START__[\s\S]*?__OMIT_END__\n?/g, ''); - - let eachLine = valueCopy.split("\n"); - let newLines = []; - for (let i = 0; i < eachLine.length; i++) { - let line = eachLine[i]; - // If the line contains ts-ignore or ends with a comment indicating it should be removed - if (line.includes("@ts-ignore") || /(\/\/|#) typecheck-only, removed from output$/.test(line)) { - continue; - } - - /** - * For snippets that use an older version of supertokens-node we use supertokens-node7 to import - * If the import contains supertokens-node7 we replace it with supertokens-node for the final - * rendered snippet - */ - if (line.includes("supertokens-node7")) { - line = line.split("supertokens-node7").join("supertokens-node"); - newLines.push(line); - continue; - } - - /** - * For snippets that contain supertokensUIInit, we add the dic id param parameter - */ - if (line.includes("supertokensUIInit(")) { - line = line.split("supertokensUIInit(").join("(window as any).supertokensUIInit(\"supertokensui\", "); - newLines.push(line); - continue; - } - if (line.includes("supertokensUI") && !line.includes("supertokens-auth-react-script")) { - line = line.split("supertokensUI").join("(window as any).supertokensUI"); - newLines.push(line); - continue; - } - - /** - * For snippets that use v5 react-router-dom we use react-router-dom5 to import - * If the import contains react-router-dom5 we replace it with react-router-dom for the final - * rendered snippet - */ - if (line.includes("react-router-dom5")) { - line = line.split("react-router-dom5").join("react-router-dom"); - newLines.push(line); - continue; - } - - /** - * For python code snippets that contain "# type: ignore", we remove that - * string snippet from the line - */ - if (line.includes("# type: ignore")) { - line = line.split("# type: ignore").join(""); - newLines.push(line); - continue; - } - if (line.includes("#type: ignore")) { - line = line.split("#type: ignore").join(""); - newLines.push(line); - continue; - } - if (line.includes("# type:ignore")) { - line = line.split("# type:ignore").join(""); - newLines.push(line); - continue; - } - if (line.includes("#type:ignore")) { - line = line.split("#type:ignore").join(""); - newLines.push(line); - continue; - } - - // if the line contains "# pyright: ", then we remove that line - if (line.includes("# pyright:") || line.includes("#pyright:")) { - continue; - } - - /** - * For snippets that use supertokens-web-js as an HTML script we import supertokens-web-js-script and supertokens-auth-react-script for types. - * If the line contains this we skip adding the line - */ - if (line.includes("supertokens-web-js-script") || line.includes("supertokens-auth-react-script")) { - continue; - } - - /** - * For iOS snippets we need to use fileprivate class to avoid build errors in Xcode due to duplicate declarations. - * This replaces the fileprivate declaration with a simple class declaration in the final output - */ - if (line.includes("fileprivate class")) { - line = line.split("fileprivate class").join("class"); - newLines.push(line); - continue; - } - - newLines.push(eachLine[i]); - } - - child.value = newLines.join("\n"); + // A child will either have value properties or more children + + // If it has a value, check if it is using a variable. If it is then replace otherwise skip + if (child.value) { + var valueCopy = child.value; + + // Exclude sections marked by __OMIT_START__ and __OMIT_END__ from the code snippet, along with the tags themselves + valueCopy = valueCopy.replace(/__OMIT_START__[\s\S]*?__OMIT_END__\n?/g, ""); + + let eachLine = valueCopy.split("\n"); + let newLines = []; + for (let i = 0; i < eachLine.length; i++) { + let line = eachLine[i]; + // If the line contains ts-ignore or ends with a comment indicating it should be removed + if ( + line.includes("@ts-ignore") || + /(\/\/|#) typecheck-only, removed from output$/.test(line) + ) { + continue; + } + + /** + * For snippets that use an older version of supertokens-node we use supertokens-node7 to import + * If the import contains supertokens-node7 we replace it with supertokens-node for the final + * rendered snippet + */ + if (line.includes("supertokens-node7")) { + line = line.split("supertokens-node7").join("supertokens-node"); + newLines.push(line); + continue; + } + + /** + * For snippets that contain supertokensUIInit, we add the dic id param parameter + */ + if (line.includes("supertokensUIInit(")) { + line = line + .split("supertokensUIInit(") + .join('(window as any).supertokensUIInit("supertokensui", '); + newLines.push(line); + continue; + } + if ( + line.includes("supertokensUI") && + !line.includes("supertokens-auth-react-script") + ) { + line = line + .split("supertokensUI") + .join("(window as any).supertokensUI"); + newLines.push(line); + continue; + } + + /** + * For snippets that use v5 react-router-dom we use react-router-dom5 to import + * If the import contains react-router-dom5 we replace it with react-router-dom for the final + * rendered snippet + */ + if (line.includes("react-router-dom5")) { + line = line.split("react-router-dom5").join("react-router-dom"); + newLines.push(line); + continue; + } + + /** + * For python code snippets that contain "# type: ignore", we remove that + * string snippet from the line + */ + if (line.includes("# type: ignore")) { + line = line.split("# type: ignore").join(""); + newLines.push(line); + continue; + } + if (line.includes("#type: ignore")) { + line = line.split("#type: ignore").join(""); + newLines.push(line); + continue; + } + if (line.includes("# type:ignore")) { + line = line.split("# type:ignore").join(""); + newLines.push(line); + continue; + } + if (line.includes("#type:ignore")) { + line = line.split("#type:ignore").join(""); + newLines.push(line); + continue; + } + + // if the line contains "# pyright: ", then we remove that line + if (line.includes("# pyright:") || line.includes("#pyright:")) { + continue; + } + + /** + * For snippets that use supertokens-web-js as an HTML script we import supertokens-web-js-script and supertokens-auth-react-script for types. + * If the line contains this we skip adding the line + */ + if ( + line.includes("supertokens-web-js-script") || + line.includes("supertokens-auth-react-script") + ) { + continue; + } + + /** + * For iOS snippets we need to use fileprivate class to avoid build errors in Xcode due to duplicate declarations. + * This replaces the fileprivate declaration with a simple class declaration in the final output + */ + if (line.includes("fileprivate class")) { + line = line.split("fileprivate class").join("class"); + newLines.push(line); + continue; + } + + newLines.push(eachLine[i]); } - // If it has children then repeat recursively - if (child.children) { - child.children = child.children.map(subChild => { - return replaceCustomPlaceholdersInLine(subChild, exportedVariables); - }) - } + child.value = newLines.join("\n"); + } + + // If it has children then repeat recursively + if (child.children) { + child.children = child.children.map((subChild) => { + return replaceCustomPlaceholdersInLine(subChild, exportedVariables); + }); + } - return child; + return child; } -module.exports = { addCodeSnippetToEnv, checkCodeSnippets, replaceCustomPlaceholdersInLine } \ No newline at end of file +module.exports = { + addCodeSnippetToEnv, + checkCodeSnippets, + replaceCustomPlaceholdersInLine, +}; + diff --git a/v2/thirdparty/common-customizations/account-linking/manual-account-linking.mdx b/v2/thirdparty/common-customizations/account-linking/manual-account-linking.mdx index 06e42fb41..b6cd35534 100644 --- a/v2/thirdparty/common-customizations/account-linking/manual-account-linking.mdx +++ b/v2/thirdparty/common-customizations/account-linking/manual-account-linking.mdx @@ -201,7 +201,7 @@ The following example shows you only an example usign the `signUpPost` and the ` ::: -```typescript +```tsx import SuperTokens from "supertokens-node"; import Session from "supertokens-node/recipe/session"; import ThirdParty from "supertokens-node/recipe/thirdparty"; diff --git a/v2/thirdpartyemailpassword/common-customizations/account-linking/manual-account-linking.mdx b/v2/thirdpartyemailpassword/common-customizations/account-linking/manual-account-linking.mdx index 06e42fb41..b6cd35534 100644 --- a/v2/thirdpartyemailpassword/common-customizations/account-linking/manual-account-linking.mdx +++ b/v2/thirdpartyemailpassword/common-customizations/account-linking/manual-account-linking.mdx @@ -201,7 +201,7 @@ The following example shows you only an example usign the `signUpPost` and the ` ::: -```typescript +```tsx import SuperTokens from "supertokens-node"; import Session from "supertokens-node/recipe/session"; import ThirdParty from "supertokens-node/recipe/thirdparty"; diff --git a/v2/thirdpartypasswordless/common-customizations/account-linking/manual-account-linking.mdx b/v2/thirdpartypasswordless/common-customizations/account-linking/manual-account-linking.mdx index 06e42fb41..b6cd35534 100644 --- a/v2/thirdpartypasswordless/common-customizations/account-linking/manual-account-linking.mdx +++ b/v2/thirdpartypasswordless/common-customizations/account-linking/manual-account-linking.mdx @@ -201,7 +201,7 @@ The following example shows you only an example usign the `signUpPost` and the ` ::: -```typescript +```tsx import SuperTokens from "supertokens-node"; import Session from "supertokens-node/recipe/session"; import ThirdParty from "supertokens-node/recipe/thirdparty"; From d7883e0dda0de8ca1c3889d50027d839a1d59547 Mon Sep 17 00:00:00 2001 From: Bogdan Carpusor Date: Tue, 8 Oct 2024 13:22:11 +0300 Subject: [PATCH 11/33] Add code validation for java,c# and php --- v2/.gitignore | 4 + v2/oauth/customizations/verify-tokens.mdx | 29 ++- .../codeTypeChecking/csharpEnv/Dockerfile | 11 + .../csharpEnv/snippets.csproj | 11 + .../csharpEnv/snippets/.gitkeep | 0 .../csharpEnv/validate-csharp.sh | 13 ++ v2/src/plugins/codeTypeChecking/index.js | 198 +++++++++++++++++- .../codeTypeChecking/javaEnv/Dockerfile | 11 + .../plugins/codeTypeChecking/javaEnv/pom.xml | 17 ++ .../javaEnv/snippets/.gitkeep | 0 .../codeTypeChecking/javaEnv/validate-java.sh | 13 ++ .../codeTypeChecking/phpEnv/Dockerfile | 18 ++ .../codeTypeChecking/phpEnv/composer.json | 5 + .../phpEnv/runTypeChecking.sh | 4 + .../codeTypeChecking/phpEnv/snippets/.gitkeep | 0 .../codeTypeChecking/phpEnv/validate-php.sh | 31 +++ 16 files changed, 355 insertions(+), 10 deletions(-) create mode 100644 v2/src/plugins/codeTypeChecking/csharpEnv/Dockerfile create mode 100644 v2/src/plugins/codeTypeChecking/csharpEnv/snippets.csproj create mode 100644 v2/src/plugins/codeTypeChecking/csharpEnv/snippets/.gitkeep create mode 100644 v2/src/plugins/codeTypeChecking/csharpEnv/validate-csharp.sh create mode 100644 v2/src/plugins/codeTypeChecking/javaEnv/Dockerfile create mode 100644 v2/src/plugins/codeTypeChecking/javaEnv/pom.xml create mode 100644 v2/src/plugins/codeTypeChecking/javaEnv/snippets/.gitkeep create mode 100644 v2/src/plugins/codeTypeChecking/javaEnv/validate-java.sh create mode 100644 v2/src/plugins/codeTypeChecking/phpEnv/Dockerfile create mode 100644 v2/src/plugins/codeTypeChecking/phpEnv/composer.json create mode 100644 v2/src/plugins/codeTypeChecking/phpEnv/runTypeChecking.sh create mode 100644 v2/src/plugins/codeTypeChecking/phpEnv/snippets/.gitkeep create mode 100644 v2/src/plugins/codeTypeChecking/phpEnv/validate-php.sh diff --git a/v2/.gitignore b/v2/.gitignore index b2d6de306..afb7575ba 100644 --- a/v2/.gitignore +++ b/v2/.gitignore @@ -18,3 +18,7 @@ npm-debug.log* yarn-debug.log* yarn-error.log* + +src/plugins/codeTypeChecking/javaEnv/snippets/* +src/plugins/codeTypeChecking/phpEnv/snippets/* +src/plugins/codeTypeChecking/pythonEnv/snippets/* diff --git a/v2/oauth/customizations/verify-tokens.mdx b/v2/oauth/customizations/verify-tokens.mdx index 24501110d..145e90c9b 100644 --- a/v2/oauth/customizations/verify-tokens.mdx +++ b/v2/oauth/customizations/verify-tokens.mdx @@ -221,7 +221,7 @@ import java.net.HttpURLConnection; import java.nio.charset.StandardCharsets; import java.util.Scanner; -public class Main { +public class JWTVerifier { private static final String JWKS_URL = "^{form_apiDomain}^{form_apiBasePath}jwt/jwks.json"; private static final String AUDIENCE = ""; @@ -268,7 +268,6 @@ public class Main { You can use the [IdentityModel](https://github.com/IdentityModel/IdentityModel) library to verify the token. ```csharp - using System; using System.Linq; using Microsoft.IdentityModel.Tokens; @@ -279,7 +278,15 @@ using Newtonsoft.Json.Linq; class Program { - static async bool ValidateToken(string jwtStr) + + static async Task Main(string[] args) + { + string jwtToken = ""; + bool isValid = await ValidateToken(jwtToken); + Console.WriteLine($"Token is valid: {isValid}"); + } + + static async Task ValidateToken(string jwtStr) { string apiDomain = "^{form_apiDomain}"; string apiBasePath = "^{form_apiBasePath}"; @@ -303,7 +310,7 @@ class Program var principal = tokenHandler.ValidateToken(jwtStr, validationParameters, out validatedToken); var claims = principal.Claims.ToDictionary(c => c.Type, c => c.Value); - if (!claims.ContainsKey("stt") || claims["stt"] != 1) + if (!claims.ContainsKey("stt") || claims["stt"] != "1") { return false; } @@ -534,7 +541,7 @@ import java.net.HttpURLConnection; import java.nio.charset.StandardCharsets; import java.util.Scanner; -public class Main { +public class JWTVerifier { private static final String JWKS_URL = "^{form_apiDomain}^{form_apiBasePath}jwt/jwks.json"; private static final String CLIENT_ID = ""; @@ -596,7 +603,15 @@ using Newtonsoft.Json.Linq; class Program { - static async bool ValidateToken(string jwtStr) + + static async Task Main(string[] args) + { + string jwtToken = ""; + bool isValid = await ValidateToken(jwtToken); + Console.WriteLine($"Token is valid: {isValid}"); + } + + static async Task ValidateToken(string jwtStr) { string apiDomain = "^{form_apiDomain}"; string apiBasePath = "^{form_apiBasePath}"; @@ -619,7 +634,7 @@ class Program var principal = tokenHandler.ValidateToken(jwtStr, validationParameters, out validatedToken); var claims = principal.Claims.ToDictionary(c => c.Type, c => c.Value); - if (!claims.ContainsKey("stt") || claims["stt"] != 1) + if (!claims.ContainsKey("stt") || claims["stt"] != "1") { return false; } diff --git a/v2/src/plugins/codeTypeChecking/csharpEnv/Dockerfile b/v2/src/plugins/codeTypeChecking/csharpEnv/Dockerfile new file mode 100644 index 000000000..f7030f8e9 --- /dev/null +++ b/v2/src/plugins/codeTypeChecking/csharpEnv/Dockerfile @@ -0,0 +1,11 @@ +FROM mcr.microsoft.com/dotnet/sdk:6.0 + +WORKDIR /app + +COPY validate-file.sh . +COPY snippets ./snippets +COPY snippets.csproj ./snippets/snippets.csproj + +RUN chmod +x validate-csharp.sh + +ENTRYPOINT ["./validate-csharp.sh"] diff --git a/v2/src/plugins/codeTypeChecking/csharpEnv/snippets.csproj b/v2/src/plugins/codeTypeChecking/csharpEnv/snippets.csproj new file mode 100644 index 000000000..d2f870c47 --- /dev/null +++ b/v2/src/plugins/codeTypeChecking/csharpEnv/snippets.csproj @@ -0,0 +1,11 @@ + + + Exe + net6.0 + + + + + + + diff --git a/v2/src/plugins/codeTypeChecking/csharpEnv/snippets/.gitkeep b/v2/src/plugins/codeTypeChecking/csharpEnv/snippets/.gitkeep new file mode 100644 index 000000000..e69de29bb diff --git a/v2/src/plugins/codeTypeChecking/csharpEnv/validate-csharp.sh b/v2/src/plugins/codeTypeChecking/csharpEnv/validate-csharp.sh new file mode 100644 index 000000000..e9687730c --- /dev/null +++ b/v2/src/plugins/codeTypeChecking/csharpEnv/validate-csharp.sh @@ -0,0 +1,13 @@ +#!/bin/bash + +cd "snippets" + +dotnet build + +if [ $? -eq 0 ]; then + echo "C# code is valid" + exit 0 +else + echo "C# code is invalid" + exit 1 +fi diff --git a/v2/src/plugins/codeTypeChecking/index.js b/v2/src/plugins/codeTypeChecking/index.js index 2931e4f0e..2a48a7a9a 100644 --- a/v2/src/plugins/codeTypeChecking/index.js +++ b/v2/src/plugins/codeTypeChecking/index.js @@ -109,6 +109,21 @@ async function addCodeSnippetToEnv(mdFile, isSwiftEnabled) { currLineTrimmed.startsWith("```kotlin ") ) { currentCodeLanguage = "kotlin"; + } else if ( + currLineTrimmed === "```php" || + currLineTrimmed.startsWith("```php ") + ) { + currentCodeLanguage = "php"; + } else if ( + currLineTrimmed === "```java" || + currLineTrimmed.startsWith("```java ") + ) { + currentCodeLanguage = "java"; + } else if ( + currLineTrimmed === "```csharp" || + currLineTrimmed.startsWith("```csharp ") + ) { + currentCodeLanguage = "csharp"; } else if ( currLineTrimmed === "```swift" || currLineTrimmed.startsWith("```swift ") @@ -122,9 +137,6 @@ async function addCodeSnippetToEnv(mdFile, isSwiftEnabled) { currLineTrimmed.includes("batch") || currLineTrimmed.includes("text") || currLineTrimmed.includes("json") || - currLineTrimmed.includes("php") || - currLineTrimmed.includes("java") || - currLineTrimmed.includes("c#") || currLineTrimmed.includes("html") ) { currentCodeLanguage = "ignore"; @@ -393,6 +405,84 @@ async function checkCodeSnippets(language) { }, ); }); + } else if (language === "php") { + await new Promise((res, rej) => { + const buildCommand = `docker build -t supertokens/php-env-type-checking .`; + const runCommand = `docker run supertokens/php-env-type-checking`; + exec( + `cd src/plugins/codeTypeChecking/phpEnv/ && ${buildCommand} && ${runCommand}`, + async function (err, stdout, stderr) { + if (err) { + console.log("\x1b[31m%s\x1b[0m", stdout); + console.log("\x1b[31m%s\x1b[0m", err); + console.log("=======SETUP INSTRS========\n"); + console.log( + "\x1b[36m%s\x1b[0m", + `Make sure that you have docker installed`, + ); + console.log( + "\x1b[36m%s\x1b[0m", + `Run ${buildCommand} and ${runCommand} inside phpEnv`, + ); + console.log("==========================\n"); + return rej(err); + } + res(); + }, + ); + }); + } else if (language === "java") { + await new Promise((res, rej) => { + const buildCommand = `docker build -t supertokens/java-env-type-checking .`; + const runCommand = `docker run supertokens/java-env-type-checking`; + exec( + `cd src/plugins/codeTypeChecking/javaEnv/ && ${buildCommand} && ${runCommand}`, + async function (err, stdout, stderr) { + if (err) { + console.log("\x1b[31m%s\x1b[0m", stdout); + console.log("\x1b[31m%s\x1b[0m", err); + console.log("=======SETUP INSTRS========\n"); + console.log( + "\x1b[36m%s\x1b[0m", + `Make sure that you have docker installed`, + ); + console.log( + "\x1b[36m%s\x1b[0m", + `Run ${buildCommand} and ${runCommand} inside javaEnv`, + ); + console.log("==========================\n"); + return rej(err); + } + res(); + }, + ); + }); + } else if (language === "") { + await new Promise((res, rej) => { + const buildCommand = `docker build -t supertokens/csharp-env-type-checking .`; + const runCommand = `docker run supertokens/csharp-env-type-checking`; + exec( + `cd src/plugins/codeTypeChecking/csharpEnv/ && ${buildCommand} && ${runCommand}`, + async function (err, stdout, stderr) { + if (err) { + console.log("\x1b[31m%s\x1b[0m", stdout); + console.log("\x1b[31m%s\x1b[0m", err); + console.log("=======SETUP INSTRS========\n"); + console.log( + "\x1b[36m%s\x1b[0m", + `Make sure that you have docker installed`, + ); + console.log( + "\x1b[36m%s\x1b[0m", + `Run ${buildCommand} and ${runCommand} inside phpEnv`, + ); + console.log("==========================\n"); + return rej(err); + } + res(); + }, + ); + }); } else { throw new Error("Unsupported language in checkCodeSnippets"); } @@ -647,6 +737,108 @@ Enabled: true, }, ); }); + } else if (language === "php") { + codeSnippet = `// ${mdFile}\n${codeSnippet}`; + let folderName = mdFile.replaceAll("~", "") + codeBlockCountInFile; + await new Promise(async (res, rej) => { + fs.mkdir( + "src/plugins/codeTypeChecking/phpEnv/snippets/" + folderName, + { recursive: true }, + async (err) => { + if (err) { + rej(err); + } else { + await assertThatUserIsNotRemovedDocsVariableByMistake( + "src/plugins/codeTypeChecking/phpEnv/snippets/" + + folderName + + "/index.php", + codeSnippet, + ); + fs.writeFile( + "src/plugins/codeTypeChecking/phpEnv/snippets/" + + folderName + + "/index.php", + codeSnippet, + function (err) { + if (err) { + rej(err); + } else { + res(); + } + }, + ); + } + }, + ); + }); + } else if (language === "java") { + codeSnippet = `// ${mdFile}\n${codeSnippet}`; + let folderName = mdFile.replaceAll("~", "") + codeBlockCountInFile; + await new Promise(async (res, rej) => { + fs.mkdir( + "src/plugins/codeTypeChecking/javaEnv/snippets/" + folderName, + { recursive: true }, + async (err) => { + if (err) { + rej(err); + } else { + await assertThatUserIsNotRemovedDocsVariableByMistake( + "src/plugins/codeTypeChecking/javaEnv/snippets/" + + folderName + + "/sample.java", + codeSnippet, + ); + fs.writeFile( + "src/plugins/codeTypeChecking/javaEnv/snippets/" + + folderName + + "/sample.java", + codeSnippet, + function (err) { + if (err) { + rej(err); + } else { + res(); + } + }, + ); + } + }, + ); + }); + } else if (language === "csharp") { + codeSnippet = `// ${mdFile}\n${codeSnippet}`; + let folderName = mdFile.replaceAll("~", "") + codeBlockCountInFile; + await new Promise(async (res, rej) => { + fs.mkdir( + "src/plugins/codeTypeChecking/csharpEnv/snippets/" + folderName, + { recursive: true }, + async (err) => { + if (err) { + rej(err); + } else { + await assertThatUserIsNotRemovedDocsVariableByMistake( + "src/plugins/codeTypeChecking/csharpEnv/snippets/" + + folderName + + "/sample.cs", + codeSnippet, + ); + fs.writeFile( + "src/plugins/codeTypeChecking/csharpEnv/snippets/" + + folderName + + "/sample.cs", + codeSnippet, + function (err) { + if (err) { + rej(err); + } else { + res(); + } + }, + ); + } + }, + ); + }); } else if (language === "kotlin") { let folderName = mdFile.replaceAll("~", "") + codeBlockCountInFile; folderName = folderName.replace(".mdx", ""); diff --git a/v2/src/plugins/codeTypeChecking/javaEnv/Dockerfile b/v2/src/plugins/codeTypeChecking/javaEnv/Dockerfile new file mode 100644 index 000000000..e75b288b9 --- /dev/null +++ b/v2/src/plugins/codeTypeChecking/javaEnv/Dockerfile @@ -0,0 +1,11 @@ +FROM maven:3.8.4-openjdk-11 + +WORKDIR /app + +COPY validate-file.sh . +COPY snippets/ ./snippets +COPY pom.xml ./snippets/pom.xml + +RUN chmod +x validate-java.sh + +ENTRYPOINT ["./validate-java.sh"] diff --git a/v2/src/plugins/codeTypeChecking/javaEnv/pom.xml b/v2/src/plugins/codeTypeChecking/javaEnv/pom.xml new file mode 100644 index 000000000..278ab9d24 --- /dev/null +++ b/v2/src/plugins/codeTypeChecking/javaEnv/pom.xml @@ -0,0 +1,17 @@ + + 4.0.0 + com.example + java-validator + 1.0-SNAPSHOT + + + com.auth0 + java-jwt + 3.18.2 + + + + 11 + 11 + + diff --git a/v2/src/plugins/codeTypeChecking/javaEnv/snippets/.gitkeep b/v2/src/plugins/codeTypeChecking/javaEnv/snippets/.gitkeep new file mode 100644 index 000000000..e69de29bb diff --git a/v2/src/plugins/codeTypeChecking/javaEnv/validate-java.sh b/v2/src/plugins/codeTypeChecking/javaEnv/validate-java.sh new file mode 100644 index 000000000..b60170b2f --- /dev/null +++ b/v2/src/plugins/codeTypeChecking/javaEnv/validate-java.sh @@ -0,0 +1,13 @@ +#!/bin/bash + +cd "snippets" + +mvn compile + +if [ $? -eq 0 ]; then + echo "Java code is valid" + exit 0 +else + echo "Java code is invalid" + exit 1 +fi diff --git a/v2/src/plugins/codeTypeChecking/phpEnv/Dockerfile b/v2/src/plugins/codeTypeChecking/phpEnv/Dockerfile new file mode 100644 index 000000000..a9548e2ea --- /dev/null +++ b/v2/src/plugins/codeTypeChecking/phpEnv/Dockerfile @@ -0,0 +1,18 @@ +FROM php:7.4-apache + +RUN apt-get update && apt-get install -y \ + libzip-dev \ + unzip \ + && docker-php-ext-install zip + +RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer + +WORKDIR /app + +COPY validate-php.sh . +COPY snippets/ ./snippets +COPY composer.json ./snippets/composer.json + +RUN chmod +x validate-php.sh + +ENTRYPOINT ["./validate-php.sh"] diff --git a/v2/src/plugins/codeTypeChecking/phpEnv/composer.json b/v2/src/plugins/codeTypeChecking/phpEnv/composer.json new file mode 100644 index 000000000..7b13e53f0 --- /dev/null +++ b/v2/src/plugins/codeTypeChecking/phpEnv/composer.json @@ -0,0 +1,5 @@ +{ + "require": { + "firebase/php-jwt": "^5.0" + } +} diff --git a/v2/src/plugins/codeTypeChecking/phpEnv/runTypeChecking.sh b/v2/src/plugins/codeTypeChecking/phpEnv/runTypeChecking.sh new file mode 100644 index 000000000..b9178304a --- /dev/null +++ b/v2/src/plugins/codeTypeChecking/phpEnv/runTypeChecking.sh @@ -0,0 +1,4 @@ +#!/bin/bash + +docker build -t supertokens/php-env-type-checking . +docker run supertokens/php-env-type-checking diff --git a/v2/src/plugins/codeTypeChecking/phpEnv/snippets/.gitkeep b/v2/src/plugins/codeTypeChecking/phpEnv/snippets/.gitkeep new file mode 100644 index 000000000..e69de29bb diff --git a/v2/src/plugins/codeTypeChecking/phpEnv/validate-php.sh b/v2/src/plugins/codeTypeChecking/phpEnv/validate-php.sh new file mode 100644 index 000000000..9e84a4339 --- /dev/null +++ b/v2/src/plugins/codeTypeChecking/phpEnv/validate-php.sh @@ -0,0 +1,31 @@ +#!/bin/bash + +samples_dir="./snippets" + +cd $samples_dir + +composer install + +validate_php_file() { + file=$1 + echo "Checking syntax for $file..." + php -l $file + if [ $? -ne 0 ]; then + echo "Syntax check failed for $file. The PHP code is invalid." + return 1 + fi + echo "Syntax is valid for $file." + return 0 +} + +find . -name "*.php" | while read file; do + validate_php_file "$file" + if [ $? -ne 0 ]; then + exit 1 + fi +done + +if [ $? -ne 0 ]; then + echo "Validation failed. One or more PHP files contain syntax errors." + exit 1 +fi From d91bf86817fd8a938ad1b1631b618011fa7558f9 Mon Sep 17 00:00:00 2001 From: Bogdan Carpusor Date: Wed, 9 Oct 2024 11:02:14 +0300 Subject: [PATCH 12/33] Add additional information about specific customizations --- v2/.gitignore | 1 + .../machine-to-machine-authentication.mdx | 11 +++++- ...ltiple-frontends-with-a-single-backend.mdx | 35 +++++++++++++++++-- ...tiple-frontends-with-separate-backends.mdx | 28 +++++++++++++++ v2/oauth/reuse-website-login.mdx | 23 ++++++++++++ 5 files changed, 94 insertions(+), 4 deletions(-) diff --git a/v2/.gitignore b/v2/.gitignore index afb7575ba..7994bf140 100644 --- a/v2/.gitignore +++ b/v2/.gitignore @@ -22,3 +22,4 @@ yarn-error.log* src/plugins/codeTypeChecking/javaEnv/snippets/* src/plugins/codeTypeChecking/phpEnv/snippets/* src/plugins/codeTypeChecking/pythonEnv/snippets/* +src/plugins/codeTypeChecking/csharpEnv/snippets/* diff --git a/v2/oauth/machine-to-machine-authentication.mdx b/v2/oauth/machine-to-machine-authentication.mdx index 2a17374d5..e0c917675 100644 --- a/v2/oauth/machine-to-machine-authentication.mdx +++ b/v2/oauth/machine-to-machine-authentication.mdx @@ -74,16 +74,17 @@ curl -X POST ^{coreInjector_uri_without_quotes}/recipe/oauth2/admin/clients \ "tokenEndpointAuthMethod": "none", "client_name": "", "grant_types": ["client_credentials"], + "scope": " ", "audience": [""] }' ``` - - `client_name` - Then name of the client that will be used later for identification. - `grant_types` - The grant types that the [**Client**](/introduction#client) will use. - `client_credentials`: Allows the client to directly request an Access Token by authenticating itself with the Authorization Server using its own client credentials. - `audience` - Value used to identify for whom a token was issued. When a service will request an **OAuth2 Token** that can be used on this client, the requested token should include one of the audience values. +- `scope` - A space separated string of scopes that the [**Client**](/docs/oauth/introduction#client) will request access to. If the creation was successful, the API will return a response that looks like this: @@ -99,6 +100,14 @@ If the creation was successful, the API will return a response that looks like t Based on the client creation process we can also infer the `authorization_url` value which is `^{form_apiDomain}^{form_apiBasePath}oauth/auth`. We will use this later on. +### Change the default token lifespan + +By default, the token used in the authorization flow will have a 1 hour lifespan. + +If you want to change it you will need to set the `client_credentials_grant_access_token_lifespan` property in the [**Client**](/docs/oauth/introduction#client) creation request body. +Use string values that signify time duration in milliecoseconds, seconds, minutes or hours (e.g. `"2000ms"`, `"60s"`, `"30m"`, `"1h"`). + + ## 3. Set Up your Authorization Service In your [**Authorization Service**](/docs/oauth/introduction#authorization-service) backend you will need to initialize the **OAuth2Provider** recipe. diff --git a/v2/oauth/multiple-frontends-with-a-single-backend.mdx b/v2/oauth/multiple-frontends-with-a-single-backend.mdx index 0c3751d8e..07aa8ba55 100644 --- a/v2/oauth/multiple-frontends-with-a-single-backend.mdx +++ b/v2/oauth/multiple-frontends-with-a-single-backend.mdx @@ -85,7 +85,8 @@ curl -X POST ^{coreInjector_uri_without_quotes}/recipe/oauth2/admin/clients \ "response_types": ["code"], "grant_types": ["authorization_code", "refresh_token"], "tokenEndpointAuthMethod": "none", - "redirect_uri": ["https:///oauth/callback"] + "scope": "offline_access ", + "redirect_uri": ["https:///oauth/callback"], }' ``` @@ -96,6 +97,9 @@ curl -X POST ^{coreInjector_uri_without_quotes}/recipe/oauth2/admin/clients \ - `authorization_code`: Allows exchanging the **Authorization Code** for an [**OAuth2 Access Token**](/docs/oauth/introduction#oauth2-access-token). - `refresh_token`: Allows exchanging the [**OAuth2 Refresh Token**](/docs/oauth/introduction#oauth2-refresh-token) for a new [**OAuth2 Access Token**](/docs/oauth/introduction#oauth2-access-token). - `redirect_uri` - A list of URIs to which the [**Authorization Server**](/docs/oauth/introduction#authorization-server) will send the user-agent (browser) after completing the authorization step. These can be deep links to mobile or desktop apps as well, but they must be exact URLs, without wildcards. +- `scope` - A space separated string of scopes that the [**Client**](/docs/oauth/introduction#client) will request access to. + - `offline_access`: You need to include this scope if you want to use the [**OAuth2 Refresh Token**](/docs/oauth/introduction#oauth2-refresh-token) to get a new [**OAuth2 Access Token**](/docs/oauth/introduction#oauth2-access-token). + If the creation was successful, the API will return a response that looks like this: @@ -107,8 +111,6 @@ If the creation was successful, the API will return a response that looks like t "client_secret": "", "callback_urls": ["https:///oauth/callback"], } - - ``` Based on the client creation process we can also infer two additional values that we will need later on: @@ -122,6 +124,26 @@ In the next steps we will use the values to complete several configurations. ::: +### Change the default token lifespan + +By default, the tokens used in the authorization flow will have the following lifespans: + - [OAuth2 Access Token](/docs/oauth/introduction#oauth2-access-token): 1 hour + - [OAuth2 ID Token](/docs/oauth/introduction#oauth2-id-token): 1 hour + - [OAuth2 Refresh Token](/docs/oauth/introduction#oauth2-refresh-token): 30 days + +If you want to change the default values you need to specify additional properties in the [**Client**](/docs/oauth/introduction#client) creation request body. +Use string values that signify time duration in milliecoseconds, seconds, minutes or hours (e.g. `"2000ms"`, `"60s"`, `"30m"`, `"1h"`). + +- **OAuth2 Access Token** - Set the `authorization_code_grant_access_token_lifespan` property. +- **OAuth2 ID Token** - Set the `authorization_code_grant_id_token_lifespan` property. +- **OAuth2 Refresh Token** - Set both the `authorization_code_grant_refresh_token_lifespan` and the `refresh_token_grant_refresh_token_lifespan` properties to the same value. + +### Usage Without Refresh Tokens + +If your use case involves a long lasting session that cannot accomodate the process of changing the [**OAuth2 Refresh Token**](/docs/oauth/introduction#oauth2-refresh-token) when it expires, you can adjust the [**Client**](/docs/oauth/introduction#client) that you are creating. +In order to do this you need to: + - Omit the `offline_access` scope from the **Client** creation request body. This way we are making sure that we avoid the use of **OAuth2 Refresh Tokens** in our authorization flow. + - Set the `authorization_code_grant_access_token_lifespan` property to a high value. You will be allowed to use the token without reauthenticating for a really long time. ## 3. Set Up your Authorization Service @@ -335,6 +357,13 @@ The configuration parameters can be determined based on the response that we rec +:::info + +If you want to use the [**OAuth2 Refresh Tokens**](/docs/oauth/introduction#oauth2-refresh-token) make sure to include the `offline_access` scope during the initialization step. + +::: + + ### 4. Complete the final token exchange After you have obtained the **OAuth2 Access Token** you will have to exchange it for a **SuperTokens Session Access Token**. diff --git a/v2/oauth/multiple-frontends-with-separate-backends.mdx b/v2/oauth/multiple-frontends-with-separate-backends.mdx index bb36e4e8d..01a77a58c 100644 --- a/v2/oauth/multiple-frontends-with-separate-backends.mdx +++ b/v2/oauth/multiple-frontends-with-separate-backends.mdx @@ -87,6 +87,7 @@ curl -X POST ^{coreInjector_uri_without_quotes}/recipe/oauth2/admin/clients \ "client_name": "", "response_types": ["code", "id_token"], "grant_types": ["authorization_code", "refresh_token"], + "scope": "offline_access ", "redirect_uri": ["https:///oauth/callback"] }' ``` @@ -100,6 +101,8 @@ curl -X POST ^{coreInjector_uri_without_quotes}/recipe/oauth2/admin/clients \ - `authorization_code`: Allows exchanging the **Authorization Code** for an [**OAuth2 Access Token**](/docs/oauth/introduction#oauth2-access-token). - `refresh_token`: Allows exchanging the [**OAuth2 Refresh Token**](/docs/oauth/introduction#oauth2-refresh-token) for a new [**OAuth2 Access Token**](/docs/oauth/introduction#oauth2-access-token). - `redirect_uri` - A list of URIs to which the [**Authorization Server**](/docs/oauth/introduction#authorization-server) will send the user-agent (browser) after completing the authorization step. These can be deep links to mobile or desktop apps as well, but they must be exact URLs, without wildcards. +- `scope` - A space separated string of scopes that the [**Client**](/docs/oauth/introduction#client) will request access to. + - `offline_access`: You need to include this scope if you want to use the [**OAuth2 Refresh Token**](/docs/oauth/introduction#oauth2-refresh-token) to get a new [**OAuth2 Access Token**](/docs/oauth/introduction#oauth2-access-token). If the creation was successful, the API will return a response that looks like this: @@ -126,6 +129,26 @@ In the next steps we will use the values to complete several configurations. ::: +### Change the default token lifespan + +By default, the tokens used in the authorization flow will have the following lifespans: + - [OAuth2 Access Token](/docs/oauth/introduction#oauth2-access-token): 1 hour + - [OAuth2 ID Token](/docs/oauth/introduction#oauth2-id-token): 1 hour + - [OAuth2 Refresh Token](/docs/oauth/introduction#oauth2-refresh-token): 30 days + +If you want to change the default values you need to specify additional properties in the [**Client**](/docs/oauth/introduction#client) creation request body. +Use string values that signify time duration in milliecoseconds, seconds, minutes or hours (e.g. `"2000ms"`, `"60s"`, `"30m"`, `"1h"`). + +- **OAuth2 Access Token** - Set the `authorization_code_grant_access_token_lifespan` property. +- **OAuth2 ID Token** - Set the `authorization_code_grant_id_token_lifespan` property. +- **OAuth2 Refresh Token** - Set both the `authorization_code_grant_refresh_token_lifespan` and the `refresh_token_grant_refresh_token_lifespan` properties to the same value. + +### Usage Without Refresh Tokens + +If your use case involves a long lasting session that cannot accomodate the process of changing the [**OAuth2 Refresh Token**](/docs/oauth/introduction#oauth2-refresh-token) when it expires, you can adjust the [**Client**](/docs/oauth/introduction#client) that you are creating. +In order to do this you need to: + - Omit the `offline_access` scope from the **Client** creation request body. This way we are making sure that we avoid the use of **OAuth2 Refresh Tokens** in our authorization flow. + - Set the `authorization_code_grant_access_token_lifespan` property to a high value. You will be allowed to use the token without reauthenticating for a really long time. ## 3. Set Up your Authorization Service @@ -386,6 +409,11 @@ This way the user will end up accessing the actual login page served by the **Au +:::info + +If you want to use the [**OAuth2 Refresh Tokens**](/docs/oauth/introduction#oauth2-refresh-token) make sure to include the `offline_access` scope during the initialization step. + +::: ## 5. Update the login flow in your frontend applications diff --git a/v2/oauth/reuse-website-login.mdx b/v2/oauth/reuse-website-login.mdx index d35080ca6..e7cb4bea9 100644 --- a/v2/oauth/reuse-website-login.mdx +++ b/v2/oauth/reuse-website-login.mdx @@ -81,6 +81,7 @@ curl -X POST ^{coreInjector_uri_without_quotes}/recipe/oauth2/admin/clients \ "response_types": ["code", "id_token"], "grant_types": ["authorization_code", "refresh_token"], "tokenEndpointAuthMethod": "none", + "scope": "offline_access ", "redirect_uri": ["https:///oauth/callback"] }' ``` @@ -93,6 +94,8 @@ curl -X POST ^{coreInjector_uri_without_quotes}/recipe/oauth2/admin/clients \ - `authorization_code`: Allows exchanging the **Authorization Code** for an [**OAuth2 Access Token**](/docs/oauth/introduction#oauth2-access-token). - `refresh_token`: Allows exchanging the [**OAuth2 Refresh Token**](/docs/oauth/introduction#oauth2-refresh-token) for a new [**OAuth2 Access Token**](/docs/oauth/introduction#oauth2-access-token). - `redirect_uri` - A list of URIs to which the [**Authorization Server**](/docs/oauth/introduction#authorization-server) will send the user-agent (browser) after completing the authorization step. These can be deep links to mobile or desktop apps as well, but they must be exact URLs, without wildcards. +- `scope` - A space separated string of scopes that the [**Client**](/docs/oauth/introduction#client) will request access to. + - `offline_access`: You need to include this scope if you want to use the [**OAuth2 Refresh Token**](/docs/oauth/introduction#oauth2-refresh-token) to get a new [**OAuth2 Access Token**](/docs/oauth/introduction#oauth2-access-token). If the creation was successful, the API will return a response that looks like this: @@ -117,6 +120,20 @@ In the next steps we will use the values to complete several configurations. ::: +### Change the default token lifespan + +By default, the tokens used in the authorization flow will have the following lifespans: + - [OAuth2 Access Token](/docs/oauth/introduction#oauth2-access-token): 1 hour + - [OAuth2 ID Token](/docs/oauth/introduction#oauth2-id-token): 1 hour + - [OAuth2 Refresh Token](/docs/oauth/introduction#oauth2-refresh-token): 30 days + +If you want to change the default values you need to specify additional properties in the [**Client**](/docs/oauth/introduction#client) creation request body. +Use string values that signify time duration in milliecoseconds, seconds, minutes or hours (e.g. `"2000ms"`, `"60s"`, `"30m"`, `"1h"`). + +- **OAuth2 Access Token** - Set the `authorization_code_grant_access_token_lifespan` property. +- **OAuth2 ID Token** - Set the `authorization_code_grant_id_token_lifespan` property. +- **OAuth2 Refresh Token** - Set both the `authorization_code_grant_refresh_token_lifespan` and the `refresh_token_grant_refresh_token_lifespan` properties to the same value. + ## 3. Make sure that you have properly configured the Authorization Service If you have not set up the [**Authorization Service**](/docs/oauth/introduction#authorization-service) yet, please check one of the previous guides based whether you use multiple backend service: @@ -193,6 +210,12 @@ The configuration parameters can be determined based on the response that we rec +:::info + +If you want to use the [**OAuth2 Refresh Tokens**](/docs/oauth/introduction#oauth2-refresh-token) make sure to include the `offline_access` scope during the initialization step. + +::: + ## 5. Test the new authentication flow From 234335bd57b4f26bdf2ba8284d6467fa0276532a Mon Sep 17 00:00:00 2001 From: Bogdan Carpusor Date: Thu, 10 Oct 2024 08:30:14 +0300 Subject: [PATCH 13/33] fix broken link --- v2/oauth/machine-to-machine-authentication.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/v2/oauth/machine-to-machine-authentication.mdx b/v2/oauth/machine-to-machine-authentication.mdx index e0c917675..0a627d056 100644 --- a/v2/oauth/machine-to-machine-authentication.mdx +++ b/v2/oauth/machine-to-machine-authentication.mdx @@ -81,7 +81,7 @@ curl -X POST ^{coreInjector_uri_without_quotes}/recipe/oauth2/admin/clients \ - `client_name` - Then name of the client that will be used later for identification. -- `grant_types` - The grant types that the [**Client**](/introduction#client) will use. +- `grant_types` - The grant types that the [**Client**](/docs/oauth/introduction#client) will use. - `client_credentials`: Allows the client to directly request an Access Token by authenticating itself with the Authorization Server using its own client credentials. - `audience` - Value used to identify for whom a token was issued. When a service will request an **OAuth2 Token** that can be used on this client, the requested token should include one of the audience values. - `scope` - A space separated string of scopes that the [**Client**](/docs/oauth/introduction#client) will request access to. From 0acbef11e23e10774719552d4958ecbee461f2c3 Mon Sep 17 00:00:00 2001 From: Bogdan Carpusor Date: Thu, 10 Oct 2024 10:51:44 +0300 Subject: [PATCH 14/33] Type check attempt --- .circleci/config.yml | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 9e0efe511..bdf852957 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -11,7 +11,7 @@ jobs: steps: - checkout - node/install-packages: - app-dir: '~/project/v2' + app-dir: "~/project/v2" - run: cd ../ && git clone git@github.com:supertokens/supertokens-backend-website.git - run: apt-get update - run: apt -y --fix-broken install @@ -26,27 +26,27 @@ jobs: steps: - checkout - node/install-packages: - app-dir: '~/project/v2' + app-dir: "~/project/v2" - run: name: Setup iOS env command: cd v2/src/plugins/codeTypeChecking/iosEnv/ && pod install no_output_timeout: 30m - run: nvm install 16 -y - - run: + - run: no_output_timeout: 30m name: Run build for iOS docs command: nvm use 16 && cd v2 && npm run build:ios - slack/status code-checking: environment: - TAR_OPTIONS: --no-same-owner + TAR_OPTIONS: --no-same-owner docker: - image: rishabhpoddar/supertokens_docs_building_with_android resource_class: xlarge steps: - checkout - node/install-packages: - app-dir: '~/project/v2' + app-dir: "~/project/v2" - run: cd ../ && git clone https://github.com/flutter/flutter.git - run: cd ../ && export PATH="$PATH:/root/flutter/bin" && echo $PATH - run: cd ../ && export PATH="$PATH:/root/flutter/bin" && flutter doctor && chown -R root:root /root/flutter @@ -94,6 +94,7 @@ workflows: branches: only: - master + - feat/oauth - code-checking-ios-only: context: - slack-notification From da808a3a1f99d0a00568198d39040ef70c54ba33 Mon Sep 17 00:00:00 2001 From: Bogdan Carpusor Date: Thu, 10 Oct 2024 12:38:23 +0300 Subject: [PATCH 15/33] Check new languages in circleci --- .circleci/config.yml | 49 +- .../add-custom-claims-in-tokens.mdx | 4 + v2/oauth/customizations/custom-ui.mdx | 6 + v2/oauth/customizations/verify-tokens.mdx | 36 +- .../customizations/working-with-scopes.mdx | 3 + .../machine-to-machine-authentication.mdx | 23 +- ...ltiple-frontends-with-a-single-backend.mdx | 65 +- ...tiple-frontends-with-separate-backends.mdx | 42 +- .../codeTypeChecking/csharpEnv/Dockerfile | 2 +- v2/src/plugins/codeTypeChecking/goEnv/go.mod | 21 +- v2/src/plugins/codeTypeChecking/goEnv/go.sum | 75 +- v2/src/plugins/codeTypeChecking/index.js | 3 +- .../codeTypeChecking/javaEnv/Dockerfile | 2 +- .../codeTypeChecking/jsEnv/package.json | 1 + .../pythonEnv/.python-version | 1 + v2/src/plugins/copyDocsAndCodeTypeChecking.js | 880 ++++++++++-------- 16 files changed, 712 insertions(+), 501 deletions(-) create mode 100644 v2/src/plugins/codeTypeChecking/pythonEnv/.python-version diff --git a/.circleci/config.yml b/.circleci/config.yml index bdf852957..30252530a 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -2,7 +2,7 @@ version: 2.1 orbs: node: circleci/node@4.1 slack: circleci/slack@3.4.2 - + docker: circleci/docker@2.7.2 jobs: deploy-to-test-site: docker: @@ -47,31 +47,34 @@ jobs: - checkout - node/install-packages: app-dir: "~/project/v2" - - run: cd ../ && git clone https://github.com/flutter/flutter.git - - run: cd ../ && export PATH="$PATH:/root/flutter/bin" && echo $PATH - - run: cd ../ && export PATH="$PATH:/root/flutter/bin" && flutter doctor && chown -R root:root /root/flutter - - run: cd ../ && git clone git@github.com:supertokens/supertokens-backend-website.git - - run: - name: Setup JS Env - command: cd v2/src/plugins/codeTypeChecking/jsEnv/ && npm i --force - no_output_timeout: 30m - - run: - name: Setup Go Env - command: wget https://go.dev/dl/go1.21.3.linux-amd64.tar.gz && rm -rf /usr/local/go && tar -C /usr/local -xzf go1.21.3.linux-amd64.tar.gz && export PATH=$PATH:/usr/local/go/bin - no_output_timeout: 30m + # - run: cd ../ && git clone https://github.com/flutter/flutter.git + # - run: cd ../ && export PATH="$PATH:/root/flutter/bin" && echo $PATH + # - run: cd ../ && export PATH="$PATH:/root/flutter/bin" && flutter doctor && chown -R root:root /root/flutter + # - run: cd ../ && git clone git@github.com:supertokens/supertokens-backend-website.git + # - run: + # name: Setup JS Env + # command: cd v2/src/plugins/codeTypeChecking/jsEnv/ && npm i --force + # no_output_timeout: 30m + # - run: + # name: Setup Go Env + # command: wget https://go.dev/dl/go1.21.3.linux-amd64.tar.gz && rm -rf /usr/local/go && tar -C /usr/local -xzf go1.21.3.linux-amd64.tar.gz && export PATH=$PATH:/usr/local/go/bin + # no_output_timeout: 30m - run: apt-get update - - run: apt-get install -y python3.7-dev python3.7-venv || true - - run: apt -y --fix-broken install - - run: pip3 install virtualenv - - run: cd v2/src/plugins/codeTypeChecking/pythonEnv/ && python3.7 -m virtualenv ./venv && source venv/bin/activate && pip install -r ./requirements.txt + - run: curl -fsSL https://download.docker.com/linux/ubuntu/gpg | gpg --dearmor -o /etc/apt/trusted.gpg.d/docker-archive-keyring.gpg + - run: apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin + # - run: apt-get install -y python3.7-dev python3.7-venv || true + # - run: apt -y --fix-broken install + # - run: pip3 install virtualenv + # - run: cd v2/src/plugins/codeTypeChecking/pythonEnv/ && python3.7 -m virtualenv ./venv && source venv/bin/activate && pip install -r ./requirements.txt + # - run: + # name: Setup Dart Env + # command: cd v2/src/plugins/codeTypeChecking/dart_env && export PATH="$PATH:/root/flutter/bin" && flutter pub get + # no_output_timeout: 30m - run: - name: Setup Dart Env - command: cd v2/src/plugins/codeTypeChecking/dart_env && export PATH="$PATH:/root/flutter/bin" && flutter pub get + # command: export PATH="$PATH:/root/flutter/bin" && cd v2 && npm run build + command: cd v2 && npm run build no_output_timeout: 30m - - run: - command: export PATH="$PATH:/root/flutter/bin" && cd v2 && npm run build - no_output_timeout: 30m - - slack/status + # - slack/status workflows: version: 2 diff --git a/v2/oauth/customizations/add-custom-claims-in-tokens.mdx b/v2/oauth/customizations/add-custom-claims-in-tokens.mdx index 6e27d95bb..df573b07f 100644 --- a/v2/oauth/customizations/add-custom-claims-in-tokens.mdx +++ b/v2/oauth/customizations/add-custom-claims-in-tokens.mdx @@ -19,6 +19,8 @@ If you want to add custom properties in the token payloads you can do this by us ```tsx +import OAuth2Provider from "supertokens-node/recipe/oauth2provider"; + OAuth2Provider.init({ override: { functions: (originalImplementation) => ({ @@ -70,6 +72,8 @@ At the moment we do not have support creating OAuth2 providers in the Python SDK ```tsx +import OAuth2Provider from "supertokens-node/recipe/oauth2provider"; + OAuth2Provider.init({ override: { functions: (originalImplementation) => ({ diff --git a/v2/oauth/customizations/custom-ui.mdx b/v2/oauth/customizations/custom-ui.mdx index 05bf91cb7..5c462f6a0 100644 --- a/v2/oauth/customizations/custom-ui.mdx +++ b/v2/oauth/customizations/custom-ui.mdx @@ -45,6 +45,7 @@ If you want to change these routes you will have to add a custom override. ```tsx +import OAuth2Provider from "supertokens-node/recipe/oauth2provider"; OAuth2Provider.init({ override: { @@ -119,6 +120,7 @@ In order to determine the correct redirection you can use the below code sample. ```tsx +import OAuth2Provider from "supertokens-web-js/recipe/oauth2provider"; async function getInitialRedirectionURL() { const urlParams = new URLSearchParams(window.location.search); @@ -164,6 +166,8 @@ Then you can redirect the user to a new page. ```tsx +import OAuth2Provider from "supertokens-web-js/recipe/oauth2provider"; + async function refreshToken() { await Session.attemptRefreshingSession(); const urlParams = new URLSearchParams(window.location.search); @@ -202,6 +206,8 @@ Based on the final response you can redirect the user to the provided redirectio ```tsx +import OAuth2Provider from "supertokens-web-js/recipe/oauth2provider"; + async function logout() { const confirmation = confirm("Are you sure that you want to log out?"); if(!confirmation) return; diff --git a/v2/oauth/customizations/verify-tokens.mdx b/v2/oauth/customizations/verify-tokens.mdx index 145e90c9b..6053e291e 100644 --- a/v2/oauth/customizations/verify-tokens.mdx +++ b/v2/oauth/customizations/verify-tokens.mdx @@ -72,7 +72,6 @@ You can use the [jwx](https://github.com/lestrrat-go/jwx) library to verify the import ( "context" "fmt" - "net/http" "github.com/lestrrat-go/jwx/jwt" "github.com/lestrrat-go/jwx/jwk" @@ -81,6 +80,7 @@ import ( func ValidateToken(token string) bool { apiDomain := "^{form_apiDomain}" apiBasePath := "^{form_apiBasePath}" + requiredScope := "" jwksURL := fmt.Sprintf("%s%sjwt/jwks.json", apiDomain, apiBasePath) jwks, err := jwk.Fetch(context.Background(), jwksURL) @@ -88,8 +88,8 @@ func ValidateToken(token string) bool { return false } - token, err := jwt.Parse( - []byte(jwtString), + parsedToken, err := jwt.Parse( + []byte(token), jwt.WithKeySet(jwks), jwt.WithClaimValue("stt", 1), jwt.WithAudience(""), @@ -98,7 +98,7 @@ func ValidateToken(token string) bool { return false } - scp, ok := token.Get("scp") + scp, ok := parsedToken.Get("scp") if !ok { return false } @@ -276,16 +276,8 @@ using System.Net.Http; using System.Threading.Tasks; using Newtonsoft.Json.Linq; -class Program +class ClientCredentialsTokenValidator { - - static async Task Main(string[] args) - { - string jwtToken = ""; - bool isValid = await ValidateToken(jwtToken); - Console.WriteLine($"Token is valid: {isValid}"); - } - static async Task ValidateToken(string jwtStr) { string apiDomain = "^{form_apiDomain}"; @@ -386,7 +378,6 @@ You can use the [jwx](https://github.com/lestrrat-go/jwx) library to verify the import ( "context" "fmt" - "net/http" "github.com/lestrrat-go/jwx/jwt" "github.com/lestrrat-go/jwx/jwk" @@ -396,6 +387,7 @@ func ValidateToken(token string) bool { apiDomain := "^{form_apiDomain}" apiBasePath := "^{form_apiBasePath}" clientId := "" + requiredScope := "" jwksURL := fmt.Sprintf("%s%sjwt/jwks.json", apiDomain, apiBasePath) jwks, err := jwk.Fetch(context.Background(), jwksURL) @@ -403,8 +395,8 @@ func ValidateToken(token string) bool { return false } - token, err := jwt.Parse( - []byte(jwtString), + parsedToken, err := jwt.Parse( + []byte(token), jwt.WithKeySet(jwks), jwt.WithClaimValue("stt", 1), jwt.WithClaimValue("client_id", clientId), @@ -413,7 +405,7 @@ func ValidateToken(token string) bool { return false } - scp, ok := token.Get("scp") + scp, ok := parsedToken.Get("scp") if !ok { return false } @@ -601,16 +593,8 @@ using System.Net.Http; using System.Threading.Tasks; using Newtonsoft.Json.Linq; -class Program +class AuthorizationCodeTokenValidator { - - static async Task Main(string[] args) - { - string jwtToken = ""; - bool isValid = await ValidateToken(jwtToken); - Console.WriteLine($"Token is valid: {isValid}"); - } - static async Task ValidateToken(string jwtStr) { string apiDomain = "^{form_apiDomain}"; diff --git a/v2/oauth/customizations/working-with-scopes.mdx b/v2/oauth/customizations/working-with-scopes.mdx index 8c823d6f6..612a6c327 100644 --- a/v2/oauth/customizations/working-with-scopes.mdx +++ b/v2/oauth/customizations/working-with-scopes.mdx @@ -36,6 +36,9 @@ If you want to manually modify the list of scopes that are granted to the client ```tsx + +import OAuth2Provider from "supertokens-node/recipe/oauth2provider"; + OAuth2Provider.init({ override: { functions: (originalFunctions) => ({ diff --git a/v2/oauth/machine-to-machine-authentication.mdx b/v2/oauth/machine-to-machine-authentication.mdx index 0a627d056..1ad573b2b 100644 --- a/v2/oauth/machine-to-machine-authentication.mdx +++ b/v2/oauth/machine-to-machine-authentication.mdx @@ -118,22 +118,31 @@ In your [**Authorization Service**](/docs/oauth/introduction#authorization-servi Update the `supertokens.init` call to include the new recipe. -1. Add the new import statement +Add the new import statement and update the list of recipes with the new initialization step. ```tsx +import supertokens from "supertokens-node"; import OAuth2Provider from "supertokens-node/recipe/oauth2provider"; -``` - -2. Update the list of recipes with the new initialization step. -```tsx - -OAuth2Provider.init() +supertokens.init({ + supertokens: { + connectionURI: "https://try.supertokens.com", + }, + appInfo: { + appName: "...", + apiDomain: "...", + websiteDomain: "...", + }, + recipeList: [ + OAuth2Provider.init(), + ] +}); ``` + diff --git a/v2/oauth/multiple-frontends-with-a-single-backend.mdx b/v2/oauth/multiple-frontends-with-a-single-backend.mdx index 07aa8ba55..316c39881 100644 --- a/v2/oauth/multiple-frontends-with-a-single-backend.mdx +++ b/v2/oauth/multiple-frontends-with-a-single-backend.mdx @@ -157,26 +157,37 @@ In your [**Authorization Service**](/docs/oauth/introduction#authorization-servi Update the `supertokens.init` call to include the new recipes. -1. Add the new import statements +Add the new import statements and update the list of recipes with the new initialization steps. -```tsx +```tsx + +import supertokens from "supertokens-node"; import OAuth2Provider from "supertokens-node/recipe/oauth2provider"; import OAuth2Client from "supertokens-node/recipe/oauth2client"; -``` -2. Update the list of recipes with the new initialization steps. - -```tsx -OAuth2Provider.init(), -OAuth2Client.init({ - // Use the values returned from the previous client creation step - // Include all the clients that you have created in the previous step - providerConfigs: [{ - "clientId": "", - "clientSecret": "", - }] -}) +supertokens.init({ + supertokens: { + connectionURI: "https://try.supertokens.com", + }, + appInfo: { + appName: "...", + apiDomain: "...", + websiteDomain: "...", + }, + recipeList: [ + OAuth2Provider.init(), + OAuth2Client.init({ + // Use the values returned from the previous client creation step + // Include all the clients that you have created in the previous step + providerConfigs: [{ + "clientId": "", + "clientSecret": "", + }] + }) + ] +}); ``` + @@ -219,16 +230,22 @@ all the steps that you have to take into account. 1. Update the `SuperTokensConfig` variable to include the `OAuth2Provider` recipe. -- Add the import statement for the new recipe. - -```tsx -import OAuth2Provider from "supertokens-auth-react/recipe/oauth2provider"; -``` - -- Update the list of recipes to also include the new initialization. +Add the import statement for the new recipe and update the list of recipe to also include the new initialization. ```tsx -OAuth2Provider.init() +import OAuth2Provider from "supertokens-auth-react/recipe/oauth2provider"; +import SuperTokens from "supertokens-auth-react"; + +SuperTokens.init({ + appInfo: { + appName: "...", + apiDomain: "...", + websiteDomain: "...", + }, + recipeList: [ + OAuth2Provider.init() + ] +}); ``` @@ -315,6 +332,8 @@ This has to be done because each of your `frontend` applications will act as a t So we can't rely on `cookie` based authentication since some browsers do not allow third party cookies. ```tsx +import Session from "supertokens-auth-react/recipe/session"; + Session.init({ // ... tokenTransferMethod: "header" diff --git a/v2/oauth/multiple-frontends-with-separate-backends.mdx b/v2/oauth/multiple-frontends-with-separate-backends.mdx index 01a77a58c..ac0b95d9e 100644 --- a/v2/oauth/multiple-frontends-with-separate-backends.mdx +++ b/v2/oauth/multiple-frontends-with-separate-backends.mdx @@ -164,16 +164,26 @@ The recipe will expose the endpoints needed for enabling the [**OAuth 2.0**](/do Update the `supertokens.init` call to include the `OAuth2Provider` recipe. -1. Add the import statement for the recipe. +Add the import statement for the recipe and update the list of recipes with the new initialization step. ```tsx +import supertokens from "supertokens-node"; import OAuth2Provider from "supertokens-node/recipe/oauth2provider"; -``` -2. Update the list of recipes with the new initialization step. +supertokens.init({ + supertokens: { + connectionURI: "https://try.supertokens.com", + }, + appInfo: { + appName: "...", + apiDomain: "...", + websiteDomain: "...", + }, + recipeList: [ + OAuth2Provider.init(), + ] +}); -```tsx -OAuth2Provider.init() ``` @@ -220,16 +230,22 @@ all the steps that you have to take into account. 1. Update the `SuperTokensConfig` variable to include the `OAuth2Provider` recipe. -- Add the import statement for the new recipe. - -```tsx -import OAuth2Provider from "supertokens-auth-react/recipe/oauth2provider"; -``` - -- Update the list of recipes to also include the new initialization. +Add the import statement for the new recipe and update the list of recipe to also include the new initialization. ```tsx -OAuth2Provider.init() +import OAuth2Provider from "supertokens-auth-react/recipe/oauth2provider"; +import SuperTokens from "supertokens-auth-react"; + +SuperTokens.init({ + appInfo: { + appName: "...", + apiDomain: "...", + websiteDomain: "...", + }, + recipeList: [ + OAuth2Provider.init() + ] +}); ``` 2. Include the pre built UI in the rendering tree. diff --git a/v2/src/plugins/codeTypeChecking/csharpEnv/Dockerfile b/v2/src/plugins/codeTypeChecking/csharpEnv/Dockerfile index f7030f8e9..6790f5b14 100644 --- a/v2/src/plugins/codeTypeChecking/csharpEnv/Dockerfile +++ b/v2/src/plugins/codeTypeChecking/csharpEnv/Dockerfile @@ -2,7 +2,7 @@ FROM mcr.microsoft.com/dotnet/sdk:6.0 WORKDIR /app -COPY validate-file.sh . +COPY validate-csharp.sh . COPY snippets ./snippets COPY snippets.csproj ./snippets/snippets.csproj diff --git a/v2/src/plugins/codeTypeChecking/goEnv/go.mod b/v2/src/plugins/codeTypeChecking/goEnv/go.mod index 2d12c54f6..fe78afa2d 100644 --- a/v2/src/plugins/codeTypeChecking/goEnv/go.mod +++ b/v2/src/plugins/codeTypeChecking/goEnv/go.mod @@ -12,22 +12,31 @@ require ( github.com/supertokens/supertokens-golang v0.25.0 ) +require github.com/lestrrat-go/jwx v1.2.30 + require ( github.com/MicahParks/keyfunc/v2 v2.1.0 // indirect github.com/davecgh/go-spew v1.1.1 // indirect + github.com/decred/dcrd/dcrec/secp256k1/v4 v4.3.0 // indirect github.com/derekstavis/go-qs v0.0.0-20180720192143-9eef69e6c4e7 // indirect github.com/felixge/httpsnoop v1.0.1 // indirect github.com/gin-contrib/sse v0.1.0 // indirect github.com/go-playground/locales v0.14.0 // indirect github.com/go-playground/universal-translator v0.18.0 // indirect github.com/go-playground/validator/v10 v10.11.1 // indirect - github.com/goccy/go-json v0.9.11 // indirect + github.com/goccy/go-json v0.10.3 // indirect github.com/golang-jwt/jwt/v5 v5.0.0 // indirect github.com/golang/mock v1.6.0 // indirect github.com/golang/protobuf v1.5.0 // indirect + github.com/google/go-cmp v0.6.0 // indirect github.com/h2non/parth v0.0.0-20190131123155-b4df798d6542 // indirect github.com/json-iterator/go v1.1.12 // indirect github.com/leodido/go-urn v1.2.1 // indirect + github.com/lestrrat-go/backoff/v2 v2.0.8 // indirect + github.com/lestrrat-go/blackmagic v1.0.2 // indirect + github.com/lestrrat-go/httpcc v1.0.1 // indirect + github.com/lestrrat-go/iter v1.0.2 // indirect + github.com/lestrrat-go/option v1.0.1 // indirect github.com/mattn/go-isatty v0.0.16 // indirect github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421 // indirect github.com/modern-go/reflect2 v1.0.2 // indirect @@ -35,13 +44,13 @@ require ( github.com/pelletier/go-toml/v2 v2.0.6 // indirect github.com/pkg/errors v0.9.1 // indirect github.com/pmezard/go-difflib v1.0.0 // indirect - github.com/stretchr/testify v1.8.1 // indirect + github.com/stretchr/testify v1.9.0 // indirect github.com/twilio/twilio-go v0.26.0 // indirect github.com/ugorji/go/codec v1.2.7 // indirect - golang.org/x/crypto v0.2.0 // indirect - golang.org/x/net v0.4.0 // indirect - golang.org/x/sys v0.3.0 // indirect - golang.org/x/text v0.5.0 // indirect + golang.org/x/crypto v0.25.0 // indirect + golang.org/x/net v0.25.0 // indirect + golang.org/x/sys v0.22.0 // indirect + golang.org/x/text v0.16.0 // indirect google.golang.org/protobuf v1.28.1 // indirect gopkg.in/alexcesaro/quotedprintable.v3 v3.0.0-20150716171945-2caba252f4dc // indirect gopkg.in/gomail.v2 v2.0.0-20160411212932-81ebce5c23df // indirect diff --git a/v2/src/plugins/codeTypeChecking/goEnv/go.sum b/v2/src/plugins/codeTypeChecking/goEnv/go.sum index e87a83529..cc906c0e1 100644 --- a/v2/src/plugins/codeTypeChecking/goEnv/go.sum +++ b/v2/src/plugins/codeTypeChecking/goEnv/go.sum @@ -4,6 +4,9 @@ github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ3 github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/decred/dcrd/crypto/blake256 v1.0.1/go.mod h1:2OfgNZ5wDpcsFmHmCK5gZTPcCXqlm2ArzUIkw9czNJo= +github.com/decred/dcrd/dcrec/secp256k1/v4 v4.3.0 h1:rpfIENRNNilwHwZeG5+P150SMrnNEcHYvcCuK6dPZSg= +github.com/decred/dcrd/dcrec/secp256k1/v4 v4.3.0/go.mod h1:v57UDF4pDQJcEfFUCRop3lJL149eHGSe9Jvczhzjo/0= github.com/derekstavis/go-qs v0.0.0-20180720192143-9eef69e6c4e7 h1:zmAiXR9h1TCVN/0yCMRYQNE91dNRORpSzMFiqfTTPOs= github.com/derekstavis/go-qs v0.0.0-20180720192143-9eef69e6c4e7/go.mod h1:Vgz4nKcG6+B7QcALsWZpmhyQTLSl7nwFGKSrbq2LxEo= github.com/felixge/httpsnoop v1.0.1 h1:lvB5Jl89CsZtGIWuTcDM1E/vkVs49/Ml7JJe07l8SPQ= @@ -29,8 +32,9 @@ github.com/go-playground/validator/v10 v10.10.0/go.mod h1:74x4gJWsvQexRdW8Pn3dXS github.com/go-playground/validator/v10 v10.11.1 h1:prmOlTVv+YjZjmRmNSF3VmspqJIxJWXmqUsHwfTRRkQ= github.com/go-playground/validator/v10 v10.11.1/go.mod h1:i+3WkQ1FvaUjjxh1kSvIA4dMGDBiPU55YFDl0WbKdWU= github.com/goccy/go-json v0.9.7/go.mod h1:6MelG93GURQebXPDq3khkgXZkazVtN9CRI+MGFi0w8I= -github.com/goccy/go-json v0.9.11 h1:/pAaQDLHEoCq/5FFmSKBswWmK6H0e8g4159Kc/X/nqk= github.com/goccy/go-json v0.9.11/go.mod h1:6MelG93GURQebXPDq3khkgXZkazVtN9CRI+MGFi0w8I= +github.com/goccy/go-json v0.10.3 h1:KZ5WoDbxAIgm2HNbYckL0se1fHD6rz5j4ywS6ebzDqA= +github.com/goccy/go-json v0.10.3/go.mod h1:oq7eo15ShAhp70Anwd5lgX2pLfOS3QCiwU/PULtXL6M= github.com/golang-jwt/jwt v3.2.2+incompatible h1:IfV12K8xAKAnZqdXVzCZ+TOjboZ2keLg81eXfW3O+oY= github.com/golang-jwt/jwt v3.2.2+incompatible/go.mod h1:8pz2t5EyA70fFQQSrl6XZXzqecmYZeUEB8OUGHkxJ+I= github.com/golang-jwt/jwt/v5 v5.0.0 h1:1n1XNM9hk7O9mnQoNBGolZvzebBQ7p93ULHRc28XJUE= @@ -40,8 +44,9 @@ github.com/golang/mock v1.6.0/go.mod h1:p6yTPP+5HYm5mzsMV8JkE6ZKdX+/wYM6Hr+Licev github.com/golang/protobuf v1.3.2/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= github.com/golang/protobuf v1.5.0 h1:LUVKkCeviFUMKqHa4tXIIij/lbhnMbP7Fn5wKdKkRh4= github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaSAoJOfIk= -github.com/google/go-cmp v0.5.5 h1:Khx7svrCpmxxtHBq5j2mp/xVjsi8hQMfNLvJFAlrGgU= github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= +github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI= +github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= github.com/gorilla/handlers v1.5.1 h1:9lRY6j8DEeeBT10CvO9hGW0gmky0BprnvDI5vfhUHH4= github.com/gorilla/handlers v1.5.1/go.mod h1:t8XrUpc4KVXb7HGyJ4/cEnwQiaxrX/hz1Zv/4g96P1Q= @@ -62,6 +67,19 @@ github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= github.com/leodido/go-urn v1.2.1 h1:BqpAaACuzVSgi/VLzGZIobT2z4v53pjosyNd9Yv6n/w= github.com/leodido/go-urn v1.2.1/go.mod h1:zt4jvISO2HfUBqxjfIshjdMTYS56ZS/qv49ictyFfxY= +github.com/lestrrat-go/backoff/v2 v2.0.8 h1:oNb5E5isby2kiro9AgdHLv5N5tint1AnDVVf2E2un5A= +github.com/lestrrat-go/backoff/v2 v2.0.8/go.mod h1:rHP/q/r9aT27n24JQLa7JhSQZCKBBOiM/uP402WwN8Y= +github.com/lestrrat-go/blackmagic v1.0.2 h1:Cg2gVSc9h7sz9NOByczrbUvLopQmXrfFx//N+AkAr5k= +github.com/lestrrat-go/blackmagic v1.0.2/go.mod h1:UrEqBzIR2U6CnzVyUtfM6oZNMt/7O7Vohk2J0OGSAtU= +github.com/lestrrat-go/httpcc v1.0.1 h1:ydWCStUeJLkpYyjLDHihupbn2tYmZ7m22BGkcvZZrIE= +github.com/lestrrat-go/httpcc v1.0.1/go.mod h1:qiltp3Mt56+55GPVCbTdM9MlqhvzyuL6W/NMDA8vA5E= +github.com/lestrrat-go/iter v1.0.2 h1:gMXo1q4c2pHmC3dn8LzRhJfP1ceCbgSiT9lUydIzltI= +github.com/lestrrat-go/iter v1.0.2/go.mod h1:Momfcq3AnRlRjI5b5O8/G5/BvpzrhoFTZcn06fEOPt4= +github.com/lestrrat-go/jwx v1.2.30 h1:VKIFrmjYn0z2J51iLPadqoHIVLzvWNa1kCsTqNDHYPA= +github.com/lestrrat-go/jwx v1.2.30/go.mod h1:vMxrwFhunGZ3qddmfmEm2+uced8MSI6QFWGTKygjSzQ= +github.com/lestrrat-go/option v1.0.0/go.mod h1:5ZHFbivi4xwXxhxY9XHDe2FHo6/Z7WWmtT7T5nBBp3I= +github.com/lestrrat-go/option v1.0.1 h1:oAzP2fvZGQKWkvHa1/SAcFolBEca1oN+mQ7eooNBEYU= +github.com/lestrrat-go/option v1.0.1/go.mod h1:5ZHFbivi4xwXxhxY9XHDe2FHo6/Z7WWmtT7T5nBBp3I= github.com/mattn/go-isatty v0.0.14/go.mod h1:7GGIvUiUoEMVVmxf/4nioHXj79iQHKdU27kJ6hsGG94= github.com/mattn/go-isatty v0.0.16 h1:bq3VjFmv/sOjHtdEhmkEV4x1AJtvUvOJ2PFAZ5+peKQ= github.com/mattn/go-isatty v0.0.16/go.mod h1:kYGgaQfpe5nmfYZH+SKPsOc2e4SrIfOl2e/yFXSvRLM= @@ -88,13 +106,16 @@ github.com/rogpeppe/go-internal v1.8.0/go.mod h1:WmiCO8CzOY8rg0OYDC4/i/2WRWAB6po github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw= github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo= +github.com/stretchr/objx v0.5.2/go.mod h1:FRsXN1f5AsAjCGJKqEizvkpNtU+EGNCLh3NxZ/8L+MA= github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= -github.com/stretchr/testify v1.8.1 h1:w7B6lhMri9wdJUVmEZPGGhZzrYTPvgJArz7wNPgYKsk= github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4= +github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo= +github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= +github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= github.com/supertokens/supertokens-golang v0.25.0 h1:yTWBKD8tZFe6sYSQ5h1IYTsH/c3UQlqyqRvSFGVXx/o= github.com/supertokens/supertokens-golang v0.25.0/go.mod h1:/n6zQ9461RscnnWB4Y4bWwzhPivnj8w79j/doqkLOs8= github.com/twilio/twilio-go v0.26.0 h1:wFW4oTe3/LKt6bvByP7eio8JsjtaLHjMQKOUEzQry7U= @@ -110,10 +131,18 @@ golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8U golang.org/x/crypto v0.0.0-20210711020723-a769d52b0f97/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.0.0-20211215153901-e495a2d5b3d3/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= -golang.org/x/crypto v0.2.0 h1:BRXPfhNivWL5Yq0BGQ39a2sW6t44aODpfxkWjYdzewE= golang.org/x/crypto v0.2.0/go.mod h1:hebNnKkNXi2UzZN1eVRvBB7co0a+JxK6XbPiWVs/3J4= +golang.org/x/crypto v0.13.0/go.mod h1:y6Z2r+Rw4iayiXXAIxJIDAJ1zMW4yaTpebo8fPOliYc= +golang.org/x/crypto v0.19.0/go.mod h1:Iy9bg/ha4yyC70EfRS8jz+B6ybOBKMaSxLj6P6oBDfU= +golang.org/x/crypto v0.23.0/go.mod h1:CKFgDieR+mRhux2Lsu27y0fO304Db0wZe70UKqHu0v8= +golang.org/x/crypto v0.25.0 h1:ypSNr+bnYL2YhwoMt2zPxHFmbAN1KZs/njMG3hxUp30= +golang.org/x/crypto v0.25.0/go.mod h1:T+wALwcMOSE0kXgUAnPAHqTLW+XHgcELELW8VaDgm/M= golang.org/x/mod v0.4.2/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4= +golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= +golang.org/x/mod v0.12.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= +golang.org/x/mod v0.15.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= +golang.org/x/mod v0.17.0/go.mod h1:hTbmBsO62+eylJbnUtE2MGJUyE7QWk4xUqPFrRgJ+7c= golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= @@ -121,11 +150,20 @@ golang.org/x/net v0.0.0-20210405180319-a5a99cb37ef4/go.mod h1:p54w0d4576C0XHj96b golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= golang.org/x/net v0.2.0/go.mod h1:KqCZLdyyvdV855qA2rE3GC2aiw5xGR5TEjj8smXukLY= -golang.org/x/net v0.4.0 h1:Q5QPcMlvfxFTAPV0+07Xz/MpK9NTXu2VDUuy0FeMfaU= golang.org/x/net v0.4.0/go.mod h1:MBQ8lrhLObU/6UmLb4fmbmk5OcyYmqtbGd/9yIeKjEE= +golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs= +golang.org/x/net v0.10.0/go.mod h1:0qNGK6F8kojg2nk9dLZ2mShWaEBan6FAoqfSigmmuDg= +golang.org/x/net v0.15.0/go.mod h1:idbUs1IY1+zTqbi8yxTbhexhEEk5ur9LInksu6HrEpk= +golang.org/x/net v0.21.0/go.mod h1:bIjVDfnllIU7BJ2DNgfnXvpSvtn8VRwhlsaeUTyUS44= +golang.org/x/net v0.25.0 h1:d/OCCoBEUq33pjydKrGQhw7IlUPI2Oylr+8qLx49kac= +golang.org/x/net v0.25.0/go.mod h1:JkAGAh7GEvH74S6FOH42FLoXpXbE/aqXSrIQjXgsiwM= golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.3.0/go.mod h1:FU7BRWz2tNW+3quACPkgCx/L+uEAv1htQ0V83Z9Rj+Y= +golang.org/x/sync v0.6.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= +golang.org/x/sync v0.7.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= @@ -139,27 +177,48 @@ golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBc golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.2.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.3.0 h1:w8ZOecv6NaNa/zC8944JTU3vz4u6Lagfk4RPQxv92NQ= golang.org/x/sys v0.3.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.8.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.12.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.17.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/sys v0.20.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/sys v0.22.0 h1:RI27ohtqKCnwULzJLqkv897zojh5/DwS/ENaMzUOaWI= +golang.org/x/sys v0.22.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/telemetry v0.0.0-20240228155512-f48c80bd79b2/go.mod h1:TeRTkGYfJXctD9OcfyVLyj2J3IxLnKwHJR8f4D8a3YE= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= golang.org/x/term v0.2.0/go.mod h1:TVmDHMZPmdnySmBfhjOoOdhjzdE1h4u1VwSiw2l1Nuc= golang.org/x/term v0.3.0/go.mod h1:q750SLmJuPmVoN1blW3UFBPREJfb1KmY3vwxfr+nFDA= +golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k= +golang.org/x/term v0.8.0/go.mod h1:xPskH00ivmX89bAKVGSKKtLOWNx2+17Eiy94tnKShWo= +golang.org/x/term v0.12.0/go.mod h1:owVbMEjm3cBLCHdkQu9b1opXd4ETQWc3BhuQGKgXgvU= +golang.org/x/term v0.17.0/go.mod h1:lLRBjIVuehSbZlaOtGMbcMncT+aqLLLmKrsjNrUguwk= +golang.org/x/term v0.20.0/go.mod h1:8UkIAJTvZgivsXaD6/pH6U9ecQzZ45awqEOzuCvwpFY= +golang.org/x/term v0.22.0/go.mod h1:F3qCibpT5AMpCRfhfT53vVJwhLtIVHhB9XDjfFvnMI4= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= golang.org/x/text v0.4.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= -golang.org/x/text v0.5.0 h1:OLmvp0KP+FVG99Ct/qFiL/Fhk4zp4QQnZ7b2U+5piUM= golang.org/x/text v0.5.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= +golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= +golang.org/x/text v0.9.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8= +golang.org/x/text v0.13.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE= +golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU= +golang.org/x/text v0.15.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU= +golang.org/x/text v0.16.0 h1:a94ExnEXNtEwYLGJSIUxnWoxoRz/ZcCsV63ROupILh4= +golang.org/x/text v0.16.0/go.mod h1:GhwF1Be+LQoKShO3cGOHzqOgRrGaYc9AvblQOmPVHnI= golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.1.1/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk= golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc= +golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU= +golang.org/x/tools v0.13.0/go.mod h1:HvlwmtVNQAhOuCjW7xxvovg8wbNq7LwfXh/k7wXUl58= +golang.org/x/tools v0.21.1-0.20240508182429-e35e4ccd0d2d/go.mod h1:aiJjzUbINMkxbQROHiO6hDPo2LHcIPhhQsa9DLh0yGk= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= -golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1 h1:go1bK/D/BFZV2I8cIQd1NKEZ+0owSTG1fDTci4IqFcE= golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw= google.golang.org/protobuf v1.28.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= diff --git a/v2/src/plugins/codeTypeChecking/index.js b/v2/src/plugins/codeTypeChecking/index.js index 2a48a7a9a..fa3e1f880 100644 --- a/v2/src/plugins/codeTypeChecking/index.js +++ b/v2/src/plugins/codeTypeChecking/index.js @@ -457,7 +457,7 @@ async function checkCodeSnippets(language) { }, ); }); - } else if (language === "") { + } else if (language === "csharp") { await new Promise((res, rej) => { const buildCommand = `docker build -t supertokens/csharp-env-type-checking .`; const runCommand = `docker run supertokens/csharp-env-type-checking`; @@ -1178,4 +1178,3 @@ module.exports = { checkCodeSnippets, replaceCustomPlaceholdersInLine, }; - diff --git a/v2/src/plugins/codeTypeChecking/javaEnv/Dockerfile b/v2/src/plugins/codeTypeChecking/javaEnv/Dockerfile index e75b288b9..1f8462452 100644 --- a/v2/src/plugins/codeTypeChecking/javaEnv/Dockerfile +++ b/v2/src/plugins/codeTypeChecking/javaEnv/Dockerfile @@ -2,7 +2,7 @@ FROM maven:3.8.4-openjdk-11 WORKDIR /app -COPY validate-file.sh . +COPY validate-java.sh . COPY snippets/ ./snippets COPY pom.xml ./snippets/pom.xml diff --git a/v2/src/plugins/codeTypeChecking/jsEnv/package.json b/v2/src/plugins/codeTypeChecking/jsEnv/package.json index 2c0ce4097..73632e49a 100644 --- a/v2/src/plugins/codeTypeChecking/jsEnv/package.json +++ b/v2/src/plugins/codeTypeChecking/jsEnv/package.json @@ -43,6 +43,7 @@ "fastify": "^3.27.0", "graphql": "^16.3.0", "hapi": "^18.1.0", + "jose": "^5.9.3", "jsonwebtoken": "^8.5.1", "jwk-to-pem": "^2.0.5", "jwks-rsa": "^3.0.1", diff --git a/v2/src/plugins/codeTypeChecking/pythonEnv/.python-version b/v2/src/plugins/codeTypeChecking/pythonEnv/.python-version new file mode 100644 index 000000000..475ba515c --- /dev/null +++ b/v2/src/plugins/codeTypeChecking/pythonEnv/.python-version @@ -0,0 +1 @@ +3.7 diff --git a/v2/src/plugins/copyDocsAndCodeTypeChecking.js b/v2/src/plugins/copyDocsAndCodeTypeChecking.js index b71db33e6..a3d562496 100644 --- a/v2/src/plugins/copyDocsAndCodeTypeChecking.js +++ b/v2/src/plugins/copyDocsAndCodeTypeChecking.js @@ -1,422 +1,520 @@ -const { execSync } = require('child_process'); -let fs = require('fs'); -let path = require('path'); +const { execSync } = require("child_process"); +let fs = require("fs"); +let path = require("path"); let { addCodeSnippetToEnv, checkCodeSnippets } = require("./codeTypeChecking"); -var exec = require('child_process').exec; +var exec = require("child_process").exec; if (typeof String.prototype.replaceAll === "undefined") { - function escapeRegExp(string) { - return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); // $& means the whole matched string - } - - String.prototype.replaceAll = function (find, replace) { - var target = this; - return target.replace(new RegExp(escapeRegExp(find), 'g'), replace); - } + function escapeRegExp(string) { + return string.replace(/[.*+?^${}()|[\]\\]/g, "\\$&"); // $& means the whole matched string + } + + String.prototype.replaceAll = function (find, replace) { + var target = this; + return target.replace(new RegExp(escapeRegExp(find), "g"), replace); + }; } async function checkFrontendSDKRelatedDocs(mdPath) { - if (mdPath.includes("/change_me")) { - return - } - return new Promise((res, rej) => { - fs.readFile(mdPath, 'utf8', async (err, data) => { - // count the number of times or appears in the data - let count = (data.match(new RegExp('', 'g')) || []).length + (data.match(new RegExp('', 'g')) || []).length; - if (count > 0) { - // make sure that show_ui_switcher: true is also in the file - if (!mdPath.includes("pre-built-ui")) { // we do this cause the pre built UI section in the docs only talks about pre built Ui, so no custom switcher is needed for those pages. - if (data.indexOf("show_ui_switcher: true") === -1) { - rej(new Error("show_ui_switcher: true is not in the file: " + mdPath)); - } - } - - // get count of or appears in the data - let angularCount = (data.match(new RegExp('', 'g')) || []).length + (data.match(new RegExp('', 'g')) || []).length; - if (angularCount !== count) { - rej(new Error("The number of angular and reactjs tabs are not equal: " + mdPath)); - } - } - - // get the lines from the file which contain the string supertokens-auth-react-script - let lines = data.split("\n"); - let linesWithScript = lines.filter(line => line.includes("supertokens-auth-react-script")); - if (linesWithScript.length > 0) { - const ALLOWED_LINES = [ - `import {init as supertokensUIInit} from "supertokens-auth-react-script";`, - `import {init as supertokensUIInit} from "supertokens-auth-react-script"`, - `import supertokensUIMultitenancy from "supertokens-auth-react-script/recipe/multitenancy";`, - `import supertokensUIMultitenancy from "supertokens-auth-react-script/recipe/multitenancy"`, - `import supertokensUISession from "supertokens-auth-react-script/recipe/session";`, - `import supertokensUISession from "supertokens-auth-react-script/recipe/session"`, - `import supertokensUIEmailPassword from "supertokens-auth-react-script/recipe/emailpassword";`, - `import supertokensUIEmailPassword from "supertokens-auth-react-script/recipe/emailpassword"`, - `import supertokensUIThirdParty from "supertokens-auth-react-script/recipe/thirdparty";`, - `import supertokensUIThirdParty from "supertokens-auth-react-script/recipe/thirdparty"`, - `import supertokensUIPasswordless from "supertokens-auth-react-script/recipe/passwordless";`, - `import supertokensUIPasswordless from "supertokens-auth-react-script/recipe/passwordless"`, - `import supertokensUIEmailVerification from "supertokens-auth-react-script/recipe/emailverification";`, - `import supertokensUIEmailVerification from "supertokens-auth-react-script/recipe/emailverification"`, - `import supertokensUIMultiFactorAuth from "supertokens-auth-react-script/recipe/multifactorauth";`, - `import supertokensUIMultiFactorAuth from "supertokens-auth-react-script/recipe/multifactorauth"`, - `import supertokensUITOTP from "supertokens-auth-react-script/recipe/totp";`, - `import supertokensUITOTP from "supertokens-auth-react-script/recipe/totp"`, - `import supertokensUIUserRoles from "supertokens-auth-react-script/recipe/userroles";`, - `import supertokensUIUserRoles from "supertokens-auth-react-script/recipe/userroles"`, - `import supertokensUI from "supertokens-auth-react-script"`, - `import supertokensUI from "supertokens-auth-react-script";` - ] - - for (const line of linesWithScript) { - if (!ALLOWED_LINES.includes(line.trim())) { - rej(new Error("The line is not allowed: " + line + " in the file: " + mdPath)); - } - } - } - - res(); - }); + if (mdPath.includes("/change_me")) { + return; + } + return new Promise((res, rej) => { + fs.readFile(mdPath, "utf8", async (err, data) => { + // count the number of times or appears in the data + let count = + (data.match(new RegExp('', "g")) || []) + .length + + (data.match(new RegExp("", "g")) || []).length; + if (count > 0) { + // make sure that show_ui_switcher: true is also in the file + if (!mdPath.includes("pre-built-ui")) { + // we do this cause the pre built UI section in the docs only talks about pre built Ui, so no custom switcher is needed for those pages. + if (data.indexOf("show_ui_switcher: true") === -1) { + rej( + new Error("show_ui_switcher: true is not in the file: " + mdPath), + ); + } + } + + // get count of or appears in the data + let angularCount = + (data.match(new RegExp('', "g")) || []) + .length + + (data.match(new RegExp("", "g")) || []) + .length; + if (angularCount !== count) { + rej( + new Error( + "The number of angular and reactjs tabs are not equal: " + mdPath, + ), + ); + } + } + + // get the lines from the file which contain the string supertokens-auth-react-script + let lines = data.split("\n"); + let linesWithScript = lines.filter((line) => + line.includes("supertokens-auth-react-script"), + ); + if (linesWithScript.length > 0) { + const ALLOWED_LINES = [ + `import {init as supertokensUIInit} from "supertokens-auth-react-script";`, + `import {init as supertokensUIInit} from "supertokens-auth-react-script"`, + `import supertokensUIMultitenancy from "supertokens-auth-react-script/recipe/multitenancy";`, + `import supertokensUIMultitenancy from "supertokens-auth-react-script/recipe/multitenancy"`, + `import supertokensUISession from "supertokens-auth-react-script/recipe/session";`, + `import supertokensUISession from "supertokens-auth-react-script/recipe/session"`, + `import supertokensUIEmailPassword from "supertokens-auth-react-script/recipe/emailpassword";`, + `import supertokensUIEmailPassword from "supertokens-auth-react-script/recipe/emailpassword"`, + `import supertokensUIThirdParty from "supertokens-auth-react-script/recipe/thirdparty";`, + `import supertokensUIThirdParty from "supertokens-auth-react-script/recipe/thirdparty"`, + `import supertokensUIPasswordless from "supertokens-auth-react-script/recipe/passwordless";`, + `import supertokensUIPasswordless from "supertokens-auth-react-script/recipe/passwordless"`, + `import supertokensUIEmailVerification from "supertokens-auth-react-script/recipe/emailverification";`, + `import supertokensUIEmailVerification from "supertokens-auth-react-script/recipe/emailverification"`, + `import supertokensUIMultiFactorAuth from "supertokens-auth-react-script/recipe/multifactorauth";`, + `import supertokensUIMultiFactorAuth from "supertokens-auth-react-script/recipe/multifactorauth"`, + `import supertokensUITOTP from "supertokens-auth-react-script/recipe/totp";`, + `import supertokensUITOTP from "supertokens-auth-react-script/recipe/totp"`, + `import supertokensUIUserRoles from "supertokens-auth-react-script/recipe/userroles";`, + `import supertokensUIUserRoles from "supertokens-auth-react-script/recipe/userroles"`, + `import supertokensUI from "supertokens-auth-react-script"`, + `import supertokensUI from "supertokens-auth-react-script";`, + ]; + + for (const line of linesWithScript) { + if (!ALLOWED_LINES.includes(line.trim())) { + rej( + new Error( + "The line is not allowed: " + line + " in the file: " + mdPath, + ), + ); + } + } + } + + res(); }); + }); } module.exports = function (context, opts) { - - return { - name: 'copy-docs-and-code-type-checking', - - async loadContent() { - const skipCopies = process.env.SKIP_COPIES === "true"; - const origDocs = []; - // copy docs.. - await new Promise((res, rej) => { - walk(__dirname + "/../../", async (err, results) => { - if (err) { - return rej(err); - } - results = results.filter(r => r.endsWith(".md") || r.endsWith(".mdx")); - for (const mdPath of results) { - const isCopy = await doCopyDocs(mdPath); - if (!skipCopies || !isCopy) { - origDocs.push(mdPath); - } - } - - // we check some extra conditions related to https://github.com/supertokens/docs/pull/822/ PR here - // which are not related to copy docs or code type checking, but this place is fine for it anyway: - for (const mdPath of results) { - await checkFrontendSDKRelatedDocs(mdPath); - } - res(); - }); - }) - - let check = process.env.CODE_TYPE_CHECK; - if (check === undefined && process.env.MODE === "production") { - check = "all"; + return { + name: "copy-docs-and-code-type-checking", + + async loadContent() { + const skipCopies = process.env.SKIP_COPIES === "true"; + const origDocs = []; + // copy docs.. + await new Promise((res, rej) => { + walk(__dirname + "/../../", async (err, results) => { + if (err) { + return rej(err); + } + results = results.filter( + (r) => r.endsWith(".md") || r.endsWith(".mdx"), + ); + for (const mdPath of results) { + const isCopy = await doCopyDocs(mdPath); + if (!skipCopies || !isCopy) { + origDocs.push(mdPath); } - - if (check !== undefined && check !== "nothing") { - let splittedCheck = check.split(","); - const isSwiftEnabled = splittedCheck.filter(i => i === "swift").length >= 1; - - if (isSwiftEnabled) { - // Reset iosenv - execSync("./src/plugins/codeTypeChecking/iosenv/resetenv.rb") - - if (!fs.existsSync("src/plugins/codeTypeChecking/iosenv/iosenv/Snippets")) { - fs.mkdirSync("src/plugins/codeTypeChecking/iosenv/iosenv/Snippets"); - } - - fs.readdirSync("src/plugins/codeTypeChecking/iosenv/iosenv/Snippets").forEach(file => { - fs.rmSync("src/plugins/codeTypeChecking/iosenv/iosenv/Snippets/" + file, { - recursive: true, - force: true, - }); - }); - } - - // add code snippets to their respective env.. - for (const mdPath of origDocs) { - await addCodeSnippetToEnv(mdPath, isSwiftEnabled); - } - } - - // now we compile code snippets to make sure their types are correct.. - try { - // modify this block to add a new language - if (check !== undefined && check !== "nothing") { - let splittedCheck = check.split(","); - if (splittedCheck.filter(i => i === "all").length >= 1 || - splittedCheck.filter(i => i === "typescript").length >= 1) { - await checkCodeSnippets("typescript"); - } - if (splittedCheck.filter(i => i === "all").length >= 1 || - splittedCheck.filter(i => i === "go").length >= 1) { - await checkCodeSnippets("go"); - } - if (splittedCheck.filter(i => i === "all").length >= 1 || - splittedCheck.filter(i => i === "python").length >= 1) { - await checkCodeSnippets("python"); - } - if (splittedCheck.filter(i => i === "all").length >= 1 || - splittedCheck.filter(i => i === "kotlin").length >= 1) { - await checkCodeSnippets("kotlin"); - } - if (splittedCheck.filter(i => i === "all").length >= 1 || - splittedCheck.filter(i => i === "dart").length >= 1) { - await checkCodeSnippets("dart"); - } - - // We do not do this in the case of "all" intentionally because - // iOS code checking needs MacOS - if (splittedCheck.filter(i => i === "swift").length >= 1) { - await checkCodeSnippets("swift"); - } - } - } catch (err) { - if (process.env.MODE === "production") { - throw err; - } - } - }, - }; + } + + // we check some extra conditions related to https://github.com/supertokens/docs/pull/822/ PR here + // which are not related to copy docs or code type checking, but this place is fine for it anyway: + for (const mdPath of results) { + await checkFrontendSDKRelatedDocs(mdPath); + } + res(); + }); + }); + + let check = process.env.CODE_TYPE_CHECK; + if (check === undefined && process.env.MODE === "production") { + check = "all"; + } + + if (check !== undefined && check !== "nothing") { + let splittedCheck = check.split(","); + const isSwiftEnabled = + splittedCheck.filter((i) => i === "swift").length >= 1; + + if (isSwiftEnabled) { + // Reset iosenv + execSync("./src/plugins/codeTypeChecking/iosenv/resetenv.rb"); + + if ( + !fs.existsSync( + "src/plugins/codeTypeChecking/iosenv/iosenv/Snippets", + ) + ) { + fs.mkdirSync("src/plugins/codeTypeChecking/iosenv/iosenv/Snippets"); + } + + fs.readdirSync( + "src/plugins/codeTypeChecking/iosenv/iosenv/Snippets", + ).forEach((file) => { + fs.rmSync( + "src/plugins/codeTypeChecking/iosenv/iosenv/Snippets/" + file, + { + recursive: true, + force: true, + }, + ); + }); + } + + // add code snippets to their respective env.. + for (const mdPath of origDocs) { + await addCodeSnippetToEnv(mdPath, isSwiftEnabled); + } + } + + // now we compile code snippets to make sure their types are correct.. + try { + // modify this block to add a new language + if (check !== undefined && check !== "nothing") { + let splittedCheck = check.split(","); + if ( + splittedCheck.filter((i) => i === "all").length >= 1 || + splittedCheck.filter((i) => i === "typescript").length >= 1 + ) { + await checkCodeSnippets("typescript"); + } + if ( + splittedCheck.filter((i) => i === "all").length >= 1 || + splittedCheck.filter((i) => i === "go").length >= 1 + ) { + await checkCodeSnippets("go"); + } + if ( + splittedCheck.filter((i) => i === "all").length >= 1 || + splittedCheck.filter((i) => i === "python").length >= 1 + ) { + await checkCodeSnippets("python"); + } + if ( + splittedCheck.filter((i) => i === "all").length >= 1 || + splittedCheck.filter((i) => i === "kotlin").length >= 1 + ) { + await checkCodeSnippets("kotlin"); + } + if ( + splittedCheck.filter((i) => i === "all").length >= 1 || + splittedCheck.filter((i) => i === "dart").length >= 1 + ) { + await checkCodeSnippets("dart"); + } + // if ( + // splittedCheck.filter((i) => i === "all").length >= 1 || + // splittedCheck.filter((i) => i === "java").length >= 1 + // ) { + // await checkCodeSnippets("java"); + // } + // if ( + // splittedCheck.filter((i) => i === "all").length >= 1 || + // splittedCheck.filter((i) => i === "csharp").length >= 1 + // ) { + // await checkCodeSnippets("csharp"); + // } + // if ( + // splittedCheck.filter((i) => i === "all").length >= 1 || + // splittedCheck.filter((i) => i === "php").length >= 1 + // ) { + // await checkCodeSnippets("php"); + // } + + // We do not do this in the case of "all" intentionally because + // iOS code checking needs MacOS + if (splittedCheck.filter((i) => i === "swift").length >= 1) { + await checkCodeSnippets("swift"); + } + } + } catch (err) { + if (process.env.MODE === "production") { + throw err; + } + } + }, + }; }; - async function doCopyDocs(mdFile, ignore) { - return new Promise((res, rej) => { - fs.readFile(mdFile, 'utf8', async (err, data) => { - if (err) { - return rej(err); + return new Promise((res, rej) => { + fs.readFile(mdFile, "utf8", async (err, data) => { + if (err) { + return rej(err); + } + + let originalData = data; + + let lines = originalData.split("\n"); + + let pathLine = undefined; + let copyType = undefined; + let containsBoth = false; + let copyPathsAndIDs = []; + for (let i = 0; i < lines.length; i++) { + let line = lines[i]; + if ( + line.trim() === "" || + line.trim() === "" + ) { + if (line.trim() === "" && ignore === "SECTION") { + continue; + } + if (line.trim() === "" && ignore === "DOCS") { + continue; + } + if (line.trim() === "") { + if (copyType === "DOCS") { + containsBoth = true; + } else { + copyType = "SECTION"; + copyPathsAndIDs.push({ + path: lines[i + 1], + id: lines[i + 2], + }); } - - let originalData = data; - - let lines = originalData.split("\n"); - - let pathLine = undefined; - let copyType = undefined; - let containsBoth = false; - let copyPathsAndIDs = []; - for (let i = 0; i < lines.length; i++) { - let line = lines[i]; - if (line.trim() === "" || line.trim() === "") { - if (line.trim() === "" && ignore === "SECTION") { - continue; - } - if (line.trim() === "" && ignore === "DOCS") { - continue; - } - if (line.trim() === "") { - if (copyType === "DOCS") { - containsBoth = true; - } else { - copyType = "SECTION" - copyPathsAndIDs.push({ - path: lines[i + 1], - id: lines[i + 2] - }) - } - } else { - if (copyType === "SECTION") { - containsBoth = true; - pathLine = lines[i + 1] - } else { - pathLine = lines[i + 1] - copyType = "DOCS" - } - } - } + } else { + if (copyType === "SECTION") { + containsBoth = true; + pathLine = lines[i + 1]; + } else { + pathLine = lines[i + 1]; + copyType = "DOCS"; } - - if (copyType === undefined) { - return res(false); + } + } + } + + if (copyType === undefined) { + return res(false); + } + + if (containsBoth && ignore === undefined) { + let originalDocsPath = path.resolve( + __dirname + + "/../../" + + pathLine.replace(/ /g, "").replace("", ""), + ); + // first we want to resolve all the sections of the originalDocs + await doCopyDocs(originalDocsPath, "DOCS"); // ignore copy docs.. + + // then we want to do copy docs on this file + let resp = await doCopyDocs(mdFile, "SECTION"); // ignore copy section. + return res(resp); + } + + if (copyType === "DOCS") { + pathLine = path.resolve( + __dirname + + "/../../" + + pathLine.replace(/ /g, "").replace("", ""), + ); + + if (pathLine === mdFile) { + return res(false); + } + + let sourceData = await getDataToCopyFromFile(pathLine, lines); + + let destinationData = await getDataToCopyFromFile(mdFile, lines); + + if (sourceData === destinationData) { + return res(true); + } else { + fs.writeFile(mdFile, sourceData, "utf8", function (err) { + if (err) { + return rej(err); } - - if (containsBoth && ignore === undefined) { - let originalDocsPath = path.resolve(__dirname + "/../../" + pathLine.replace(/ /g, '').replace("", "")); - // first we want to resolve all the sections of the originalDocs - await doCopyDocs(originalDocsPath, "DOCS"); // ignore copy docs.. - - // then we want to do copy docs on this file - let resp = await doCopyDocs(mdFile, "SECTION"); // ignore copy section. - return res(resp); + res(true); + }); + } + } else { + let sourceData = await getDataToCopySectionFromFile( + lines, + copyPathsAndIDs, + ); + + let destinationData = await new Promise((res, rej) => { + fs.readFile(mdFile, "utf8", function (err, toCopyData) { + if (err) { + return rej(err); } + res(toCopyData); + }); + }); - if (copyType === "DOCS") { - - pathLine = path.resolve(__dirname + "/../../" + pathLine.replace(/ /g, '').replace("", "")); - - if (pathLine === mdFile) { - return res(false); - } - - let sourceData = await getDataToCopyFromFile(pathLine, lines); - - let destinationData = await getDataToCopyFromFile(mdFile, lines); - - if (sourceData === destinationData) { - return res(true); - } else { - fs.writeFile(mdFile, sourceData, 'utf8', function (err) { - if (err) { - return rej(err); - } - res(true); - }); - } - } else { - let sourceData = await getDataToCopySectionFromFile(lines, copyPathsAndIDs); - - let destinationData = await new Promise((res, rej) => { - fs.readFile(mdFile, 'utf8', function (err, toCopyData) { - if (err) { - return rej(err) - } - res(toCopyData) - }) - }); - - if (sourceData === destinationData) { - return res(false); - } else { - fs.writeFile(mdFile, sourceData, 'utf8', function (err) { - if (err) { - return rej(err); - } - res(false); - }); - } + if (sourceData === destinationData) { + return res(false); + } else { + fs.writeFile(mdFile, sourceData, "utf8", function (err) { + if (err) { + return rej(err); } - }); + res(false); + }); + } + } }); + }); } async function getDataToCopySectionFromFile(lines, copyPathsAndIDs) { - let finalData = [...lines]; - for (let k = 0; k < copyPathsAndIDs.length; k++) { - await new Promise((res, rej) => { - let ogPathLine = copyPathsAndIDs[k].path - let ogId = copyPathsAndIDs[k].id - let pathLine = ogPathLine - pathLine = path.resolve(__dirname + "/../../" + pathLine.replace(/ /g, '').replace("", "")); - fs.readFile(pathLine, 'utf8', async function (err, toCopyData) { - if (err) { - return rej(err); - } - - toCopyData = toCopyData.trim(); - - finalDataIndex = 0; - - for (; finalDataIndex < finalData.length; finalDataIndex++) { - if (finalData[finalDataIndex].trim() === "") { - if (finalData[finalDataIndex + 1].trim() === ogPathLine && finalData[finalDataIndex + 2].trim() === ogId) { - finalDataIndex += 3; - break; - } else { - // do nothing.. - } - } - } - - let toRemoveIndex = finalDataIndex; - for (let i = finalDataIndex; i < finalData.length; i++) { - if (finalData[i] === "") { - toRemoveIndex = i; - break; - } - } - finalData = [...finalData.slice(0, finalDataIndex), ...finalData.slice(toRemoveIndex)] - - let copyLines = toCopyData.split("\n"); - let startCopying = false; - for (let i = 0; i < copyLines.length; i++) { - if (startCopying && copyLines[i].trim() === "") { - break; - } - if (copyLines[i].trim() === "" && - copyLines[i + 1].trim() === ogPathLine && - copyLines[i + 2].trim() === ogId) { - startCopying = true; - i++; - i++; - continue; - } - if (!startCopying) { - continue; - } - finalData = [...finalData.slice(0, finalDataIndex), copyLines[i], ...finalData.slice(finalDataIndex)] - finalDataIndex++ - } - res(); - }); - }); - } - return finalData.join("\n") + let finalData = [...lines]; + for (let k = 0; k < copyPathsAndIDs.length; k++) { + await new Promise((res, rej) => { + let ogPathLine = copyPathsAndIDs[k].path; + let ogId = copyPathsAndIDs[k].id; + let pathLine = ogPathLine; + pathLine = path.resolve( + __dirname + + "/../../" + + pathLine.replace(/ /g, "").replace("", ""), + ); + fs.readFile(pathLine, "utf8", async function (err, toCopyData) { + if (err) { + return rej(err); + } + + toCopyData = toCopyData.trim(); + + finalDataIndex = 0; + + for (; finalDataIndex < finalData.length; finalDataIndex++) { + if (finalData[finalDataIndex].trim() === "") { + if ( + finalData[finalDataIndex + 1].trim() === ogPathLine && + finalData[finalDataIndex + 2].trim() === ogId + ) { + finalDataIndex += 3; + break; + } else { + // do nothing.. + } + } + } + + let toRemoveIndex = finalDataIndex; + for (let i = finalDataIndex; i < finalData.length; i++) { + if (finalData[i] === "") { + toRemoveIndex = i; + break; + } + } + finalData = [ + ...finalData.slice(0, finalDataIndex), + ...finalData.slice(toRemoveIndex), + ]; + + let copyLines = toCopyData.split("\n"); + let startCopying = false; + for (let i = 0; i < copyLines.length; i++) { + if ( + startCopying && + copyLines[i].trim() === "" + ) { + break; + } + if ( + copyLines[i].trim() === "" && + copyLines[i + 1].trim() === ogPathLine && + copyLines[i + 2].trim() === ogId + ) { + startCopying = true; + i++; + i++; + continue; + } + if (!startCopying) { + continue; + } + finalData = [ + ...finalData.slice(0, finalDataIndex), + copyLines[i], + ...finalData.slice(finalDataIndex), + ]; + finalDataIndex++; + } + res(); + }); + }); + } + return finalData.join("\n"); } async function getDataToCopyFromFile(pathLine, lines) { - return new Promise((res, rej) => { - fs.readFile(pathLine, 'utf8', function (err, toCopyData) { - if (err) { - return rej(err); - } - - toCopyData = toCopyData.trim(); - - let finalData = ""; - - for (let i = 0; i < lines.length; i++) { - finalData += lines[i] + "\n"; - if (lines[i].trim() === "") { - finalData += lines[i + 1] + "\n"; - break; - } - } - - let copyLines = toCopyData.split("\n"); - let startCopying = false; - for (let i = 0; i < copyLines.length; i++) { - if (copyLines[i].trim() === "") { - startCopying = true; - i++; - continue; - } - if (!startCopying) { - continue; - } - finalData += copyLines[i] + "\n"; - } - res(finalData); - }); + return new Promise((res, rej) => { + fs.readFile(pathLine, "utf8", function (err, toCopyData) { + if (err) { + return rej(err); + } + + toCopyData = toCopyData.trim(); + + let finalData = ""; + + for (let i = 0; i < lines.length; i++) { + finalData += lines[i] + "\n"; + if (lines[i].trim() === "") { + finalData += lines[i + 1] + "\n"; + break; + } + } + + let copyLines = toCopyData.split("\n"); + let startCopying = false; + for (let i = 0; i < copyLines.length; i++) { + if (copyLines[i].trim() === "") { + startCopying = true; + i++; + continue; + } + if (!startCopying) { + continue; + } + finalData += copyLines[i] + "\n"; + } + res(finalData); }); + }); } let walk = function (dir, done) { - var results = []; - fs.readdir(dir, function (err, list) { - if (err) return done(err); - var i = 0; - (function next() { - var file = list[i++]; - if (!file) return done(null, results); - file = path.resolve(dir, file); - fs.stat(file, function (err, stat) { - let name = file.toString(); - if (stat && stat.isDirectory() && !name.endsWith("node_modules") && - !name.endsWith(".docusaurus") && !name.endsWith("build")) { - walk(file, function (err, res) { - results = results.concat(res); - next(); - }); - } else { - if (!name.endsWith("/v2/HOW_TO_NEW_DOCS.md") && !name.endsWith("/v2/README.md")) { - results.push(file); - } - next(); - } - }); - })(); - }); -}; \ No newline at end of file + var results = []; + fs.readdir(dir, function (err, list) { + if (err) return done(err); + var i = 0; + (function next() { + var file = list[i++]; + if (!file) return done(null, results); + file = path.resolve(dir, file); + fs.stat(file, function (err, stat) { + let name = file.toString(); + if ( + stat && + stat.isDirectory() && + !name.endsWith("node_modules") && + !name.endsWith(".docusaurus") && + !name.endsWith("build") + ) { + walk(file, function (err, res) { + results = results.concat(res); + next(); + }); + } else { + if ( + !name.endsWith("/v2/HOW_TO_NEW_DOCS.md") && + !name.endsWith("/v2/README.md") + ) { + results.push(file); + } + next(); + } + }); + })(); + }); +}; From c8aa37130527c2d87cd406eae698723fca8072e3 Mon Sep 17 00:00:00 2001 From: Bogdan Carpusor Date: Thu, 10 Oct 2024 15:29:48 +0300 Subject: [PATCH 16/33] Add extra ci steps --- .circleci/config.yml | 69 +++++++++------ .../codeTypeChecking/csharpEnv/Dockerfile | 1 - .../csharpEnv/snippets/main.cs | 7 ++ .../csharpEnv/{ => snippets}/snippets.csproj | 0 v2/src/plugins/codeTypeChecking/index.js | 83 +++++++++---------- .../codeTypeChecking/javaEnv/Dockerfile | 1 - .../javaEnv/{ => snippets}/pom.xml | 0 .../codeTypeChecking/phpEnv/Dockerfile | 3 +- .../phpEnv/runTypeChecking.sh | 4 - .../phpEnv/{ => snippets}/composer.json | 0 .../pythonEnv/.python-version | 1 - v2/src/plugins/copyDocsAndCodeTypeChecking.js | 24 +++--- 12 files changed, 99 insertions(+), 94 deletions(-) create mode 100644 v2/src/plugins/codeTypeChecking/csharpEnv/snippets/main.cs rename v2/src/plugins/codeTypeChecking/csharpEnv/{ => snippets}/snippets.csproj (100%) rename v2/src/plugins/codeTypeChecking/javaEnv/{ => snippets}/pom.xml (100%) delete mode 100644 v2/src/plugins/codeTypeChecking/phpEnv/runTypeChecking.sh rename v2/src/plugins/codeTypeChecking/phpEnv/{ => snippets}/composer.json (100%) delete mode 100644 v2/src/plugins/codeTypeChecking/pythonEnv/.python-version diff --git a/.circleci/config.yml b/.circleci/config.yml index 30252530a..1412d0a57 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -2,7 +2,6 @@ version: 2.1 orbs: node: circleci/node@4.1 slack: circleci/slack@3.4.2 - docker: circleci/docker@2.7.2 jobs: deploy-to-test-site: docker: @@ -47,34 +46,51 @@ jobs: - checkout - node/install-packages: app-dir: "~/project/v2" - # - run: cd ../ && git clone https://github.com/flutter/flutter.git - # - run: cd ../ && export PATH="$PATH:/root/flutter/bin" && echo $PATH - # - run: cd ../ && export PATH="$PATH:/root/flutter/bin" && flutter doctor && chown -R root:root /root/flutter - # - run: cd ../ && git clone git@github.com:supertokens/supertokens-backend-website.git - # - run: - # name: Setup JS Env - # command: cd v2/src/plugins/codeTypeChecking/jsEnv/ && npm i --force - # no_output_timeout: 30m - # - run: - # name: Setup Go Env - # command: wget https://go.dev/dl/go1.21.3.linux-amd64.tar.gz && rm -rf /usr/local/go && tar -C /usr/local -xzf go1.21.3.linux-amd64.tar.gz && export PATH=$PATH:/usr/local/go/bin - # no_output_timeout: 30m + - run: cd ../ && git clone https://github.com/flutter/flutter.git + - run: cd ../ && export PATH="$PATH:/root/flutter/bin" && echo $PATH + - run: cd ../ && export PATH="$PATH:/root/flutter/bin" && flutter doctor && chown -R root:root /root/flutter + - run: cd ../ && git clone git@github.com:supertokens/supertokens-backend-website.git + - run: + name: Setup JS Env + command: cd v2/src/plugins/codeTypeChecking/jsEnv/ && npm i --force + no_output_timeout: 30m + - run: + name: Setup Go Env + command: wget https://go.dev/dl/go1.21.3.linux-amd64.tar.gz && rm -rf /usr/local/go && tar -C /usr/local -xzf go1.21.3.linux-amd64.tar.gz && export PATH=$PATH:/usr/local/go/bin + no_output_timeout: 30m - run: apt-get update - - run: curl -fsSL https://download.docker.com/linux/ubuntu/gpg | gpg --dearmor -o /etc/apt/trusted.gpg.d/docker-archive-keyring.gpg - - run: apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin - # - run: apt-get install -y python3.7-dev python3.7-venv || true - # - run: apt -y --fix-broken install - # - run: pip3 install virtualenv - # - run: cd v2/src/plugins/codeTypeChecking/pythonEnv/ && python3.7 -m virtualenv ./venv && source venv/bin/activate && pip install -r ./requirements.txt - # - run: - # name: Setup Dart Env - # command: cd v2/src/plugins/codeTypeChecking/dart_env && export PATH="$PATH:/root/flutter/bin" && flutter pub get - # no_output_timeout: 30m + - run: apt-get install -y python3.7-dev python3.7-venv || true + - run: apt -y --fix-broken install + - run: pip3 install virtualenv + - run: cd v2/src/plugins/codeTypeChecking/pythonEnv/ && python3.7 -m virtualenv ./venv && source venv/bin/activate && pip install -r ./requirements.txt - run: - # command: export PATH="$PATH:/root/flutter/bin" && cd v2 && npm run build - command: cd v2 && npm run build + name: Setup Dart Env + command: cd v2/src/plugins/codeTypeChecking/dart_env && export PATH="$PATH:/root/flutter/bin" && flutter pub get no_output_timeout: 30m - # - slack/status + - run: + name: Install Java + command: | + apt-get update + apt-get install -y openjdk-11-jdk + wget https://archive.apache.org/dist/maven/maven-3/3.8.4/binaries/apache-maven-3.8.4-bin.tar.gz + tar xzf apache-maven-3.8.4-bin.tar.gz + mv apache-maven-3.8.4 /opt/maven + echo 'export PATH=/opt/maven/bin:$PATH' >> $BASH_ENV + source $BASH_ENV + - run: + name: Install .NET + command: | + wget https://packages.microsoft.com/config/ubuntu/20.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb + dpkg -i packages-microsoft-prod.deb + rm packages-microsoft-prod.deb + apt-get update + apt-get install -y apt-transport-https + apt-get update + apt-get install -y dotnet-sdk-6.0 + - run: + command: export PATH="$PATH:/root/flutter/bin" && cd v2 && npm run build + no_output_timeout: 30m + - slack/status workflows: version: 2 @@ -97,7 +113,6 @@ workflows: branches: only: - master - - feat/oauth - code-checking-ios-only: context: - slack-notification diff --git a/v2/src/plugins/codeTypeChecking/csharpEnv/Dockerfile b/v2/src/plugins/codeTypeChecking/csharpEnv/Dockerfile index 6790f5b14..eb57524a0 100644 --- a/v2/src/plugins/codeTypeChecking/csharpEnv/Dockerfile +++ b/v2/src/plugins/codeTypeChecking/csharpEnv/Dockerfile @@ -4,7 +4,6 @@ WORKDIR /app COPY validate-csharp.sh . COPY snippets ./snippets -COPY snippets.csproj ./snippets/snippets.csproj RUN chmod +x validate-csharp.sh diff --git a/v2/src/plugins/codeTypeChecking/csharpEnv/snippets/main.cs b/v2/src/plugins/codeTypeChecking/csharpEnv/snippets/main.cs new file mode 100644 index 000000000..99da56a03 --- /dev/null +++ b/v2/src/plugins/codeTypeChecking/csharpEnv/snippets/main.cs @@ -0,0 +1,7 @@ +public class MainProgram +{ + public static void Main(string[] args) + { + System.Console.WriteLine("Hello, World!"); + } +} diff --git a/v2/src/plugins/codeTypeChecking/csharpEnv/snippets.csproj b/v2/src/plugins/codeTypeChecking/csharpEnv/snippets/snippets.csproj similarity index 100% rename from v2/src/plugins/codeTypeChecking/csharpEnv/snippets.csproj rename to v2/src/plugins/codeTypeChecking/csharpEnv/snippets/snippets.csproj diff --git a/v2/src/plugins/codeTypeChecking/index.js b/v2/src/plugins/codeTypeChecking/index.js index fa3e1f880..094eb52c2 100644 --- a/v2/src/plugins/codeTypeChecking/index.js +++ b/v2/src/plugins/codeTypeChecking/index.js @@ -409,6 +409,7 @@ async function checkCodeSnippets(language) { await new Promise((res, rej) => { const buildCommand = `docker build -t supertokens/php-env-type-checking .`; const runCommand = `docker run supertokens/php-env-type-checking`; + exec( `cd src/plugins/codeTypeChecking/phpEnv/ && ${buildCommand} && ${runCommand}`, async function (err, stdout, stderr) { @@ -433,55 +434,45 @@ async function checkCodeSnippets(language) { }); } else if (language === "java") { await new Promise((res, rej) => { - const buildCommand = `docker build -t supertokens/java-env-type-checking .`; - const runCommand = `docker run supertokens/java-env-type-checking`; - exec( - `cd src/plugins/codeTypeChecking/javaEnv/ && ${buildCommand} && ${runCommand}`, - async function (err, stdout, stderr) { - if (err) { - console.log("\x1b[31m%s\x1b[0m", stdout); - console.log("\x1b[31m%s\x1b[0m", err); - console.log("=======SETUP INSTRS========\n"); - console.log( - "\x1b[36m%s\x1b[0m", - `Make sure that you have docker installed`, - ); - console.log( - "\x1b[36m%s\x1b[0m", - `Run ${buildCommand} and ${runCommand} inside javaEnv`, - ); - console.log("==========================\n"); - return rej(err); - } - res(); - }, - ); + // const buildCommand = `docker build -t supertokens/java-env-type-checking .`; + // const runCommand = `docker run supertokens/java-env-type-checking`; + const validateCommand = `cd src/plugins/codeTypeChecking/javaEnv/ && chmod +x ./validate-java.sh && ./validate-java.sh`; + exec(`${validateCommand}`, async function (err, stdout, stderr) { + if (err) { + console.log("\x1b[31m%s\x1b[0m", stdout); + console.log("\x1b[31m%s\x1b[0m", err); + console.log("=======SETUP INSTRS========\n"); + console.log( + "\x1b[36m%s\x1b[0m", + `Make sure that you have docker installed`, + ); + console.log("\x1b[36m%s\x1b[0m", `Run ${validateCommand}`); + console.log("==========================\n"); + return rej(err); + } + res(); + }); }); } else if (language === "csharp") { await new Promise((res, rej) => { - const buildCommand = `docker build -t supertokens/csharp-env-type-checking .`; - const runCommand = `docker run supertokens/csharp-env-type-checking`; - exec( - `cd src/plugins/codeTypeChecking/csharpEnv/ && ${buildCommand} && ${runCommand}`, - async function (err, stdout, stderr) { - if (err) { - console.log("\x1b[31m%s\x1b[0m", stdout); - console.log("\x1b[31m%s\x1b[0m", err); - console.log("=======SETUP INSTRS========\n"); - console.log( - "\x1b[36m%s\x1b[0m", - `Make sure that you have docker installed`, - ); - console.log( - "\x1b[36m%s\x1b[0m", - `Run ${buildCommand} and ${runCommand} inside phpEnv`, - ); - console.log("==========================\n"); - return rej(err); - } - res(); - }, - ); + // const buildCommand = `docker build -t supertokens/csharp-env-type-checking .`; + // const runCommand = `docker run supertokens/csharp-env-type-checking`; + const validateCommand = `cd src/plugins/codeTypeChecking/csharpEnv/ && chmod +x ./validate-csharp.sh && ./validate-csharp.sh`; + exec(`${validateCommand}`, async function (err, stdout, stderr) { + if (err) { + console.log("\x1b[31m%s\x1b[0m", stdout); + console.log("\x1b[31m%s\x1b[0m", err); + console.log("=======SETUP INSTRS========\n"); + console.log( + "\x1b[36m%s\x1b[0m", + `Make sure that you have docker installed`, + ); + console.log("\x1b[36m%s\x1b[0m", `Run ${validateCommand}`); + console.log("==========================\n"); + return rej(err); + } + res(); + }); }); } else { throw new Error("Unsupported language in checkCodeSnippets"); diff --git a/v2/src/plugins/codeTypeChecking/javaEnv/Dockerfile b/v2/src/plugins/codeTypeChecking/javaEnv/Dockerfile index 1f8462452..69953bd17 100644 --- a/v2/src/plugins/codeTypeChecking/javaEnv/Dockerfile +++ b/v2/src/plugins/codeTypeChecking/javaEnv/Dockerfile @@ -4,7 +4,6 @@ WORKDIR /app COPY validate-java.sh . COPY snippets/ ./snippets -COPY pom.xml ./snippets/pom.xml RUN chmod +x validate-java.sh diff --git a/v2/src/plugins/codeTypeChecking/javaEnv/pom.xml b/v2/src/plugins/codeTypeChecking/javaEnv/snippets/pom.xml similarity index 100% rename from v2/src/plugins/codeTypeChecking/javaEnv/pom.xml rename to v2/src/plugins/codeTypeChecking/javaEnv/snippets/pom.xml diff --git a/v2/src/plugins/codeTypeChecking/phpEnv/Dockerfile b/v2/src/plugins/codeTypeChecking/phpEnv/Dockerfile index a9548e2ea..793f6017b 100644 --- a/v2/src/plugins/codeTypeChecking/phpEnv/Dockerfile +++ b/v2/src/plugins/codeTypeChecking/phpEnv/Dockerfile @@ -1,4 +1,4 @@ -FROM php:7.4-apache +FROM php:8.2-apache RUN apt-get update && apt-get install -y \ libzip-dev \ @@ -11,7 +11,6 @@ WORKDIR /app COPY validate-php.sh . COPY snippets/ ./snippets -COPY composer.json ./snippets/composer.json RUN chmod +x validate-php.sh diff --git a/v2/src/plugins/codeTypeChecking/phpEnv/runTypeChecking.sh b/v2/src/plugins/codeTypeChecking/phpEnv/runTypeChecking.sh deleted file mode 100644 index b9178304a..000000000 --- a/v2/src/plugins/codeTypeChecking/phpEnv/runTypeChecking.sh +++ /dev/null @@ -1,4 +0,0 @@ -#!/bin/bash - -docker build -t supertokens/php-env-type-checking . -docker run supertokens/php-env-type-checking diff --git a/v2/src/plugins/codeTypeChecking/phpEnv/composer.json b/v2/src/plugins/codeTypeChecking/phpEnv/snippets/composer.json similarity index 100% rename from v2/src/plugins/codeTypeChecking/phpEnv/composer.json rename to v2/src/plugins/codeTypeChecking/phpEnv/snippets/composer.json diff --git a/v2/src/plugins/codeTypeChecking/pythonEnv/.python-version b/v2/src/plugins/codeTypeChecking/pythonEnv/.python-version deleted file mode 100644 index 475ba515c..000000000 --- a/v2/src/plugins/codeTypeChecking/pythonEnv/.python-version +++ /dev/null @@ -1 +0,0 @@ -3.7 diff --git a/v2/src/plugins/copyDocsAndCodeTypeChecking.js b/v2/src/plugins/copyDocsAndCodeTypeChecking.js index a3d562496..935186e4a 100644 --- a/v2/src/plugins/copyDocsAndCodeTypeChecking.js +++ b/v2/src/plugins/copyDocsAndCodeTypeChecking.js @@ -207,18 +207,18 @@ module.exports = function (context, opts) { ) { await checkCodeSnippets("dart"); } - // if ( - // splittedCheck.filter((i) => i === "all").length >= 1 || - // splittedCheck.filter((i) => i === "java").length >= 1 - // ) { - // await checkCodeSnippets("java"); - // } - // if ( - // splittedCheck.filter((i) => i === "all").length >= 1 || - // splittedCheck.filter((i) => i === "csharp").length >= 1 - // ) { - // await checkCodeSnippets("csharp"); - // } + if ( + splittedCheck.filter((i) => i === "all").length >= 1 || + splittedCheck.filter((i) => i === "java").length >= 1 + ) { + await checkCodeSnippets("java"); + } + if ( + splittedCheck.filter((i) => i === "all").length >= 1 || + splittedCheck.filter((i) => i === "csharp").length >= 1 + ) { + await checkCodeSnippets("csharp"); + } // if ( // splittedCheck.filter((i) => i === "all").length >= 1 || // splittedCheck.filter((i) => i === "php").length >= 1 From 30aa2b1c46f2ea9c8df8b0b76e08ae7155641137 Mon Sep 17 00:00:00 2001 From: Bogdan Carpusor Date: Thu, 17 Oct 2024 17:07:50 +0100 Subject: [PATCH 17/33] Review fixes --- .../machine-to-machine-authentication.mdx | 4 +- ...ltiple-frontends-with-a-single-backend.mdx | 704 +++++++++++++++--- ...tiple-frontends-with-separate-backends.mdx | 302 ++++++-- v2/oauth/reuse-website-login.mdx | 72 +- v2/src/plugins/copyDocsAndCodeTypeChecking.js | 2 + 5 files changed, 871 insertions(+), 213 deletions(-) diff --git a/v2/oauth/machine-to-machine-authentication.mdx b/v2/oauth/machine-to-machine-authentication.mdx index 1ad573b2b..a3f892c96 100644 --- a/v2/oauth/machine-to-machine-authentication.mdx +++ b/v2/oauth/machine-to-machine-authentication.mdx @@ -36,8 +36,8 @@ For more information on how to do that please check our [quickstart guide](/docs ## 1. Enable the OAuth2 features from the Dashboard -You will first have to enable the **OAuth2** features from the **SuperTokens Dashboard**. -1. Open the **SuperTokens Dashboard** +You will first have to enable the **OAuth2** features from the **SuperTokens.com Dashboard**. +1. Open the **SuperTokens.com Dashboard** 2. Click on the **Enabled Paid Features** button 3. Click on **Managed Service** 4. Check the **OAuth 2.0** option diff --git a/v2/oauth/multiple-frontends-with-a-single-backend.mdx b/v2/oauth/multiple-frontends-with-a-single-backend.mdx index 316c39881..8627fc7ae 100644 --- a/v2/oauth/multiple-frontends-with-a-single-backend.mdx +++ b/v2/oauth/multiple-frontends-with-a-single-backend.mdx @@ -3,6 +3,12 @@ title: Multiple frontend domains with a common backend hide_title: true --- + +import NodeJSFrameworkSubTabsServerless from "/src/components/tabs/NodeJSFrameworkSubTabsServerless" +import FrontendPreBuiltUITabs from "/src/components/tabs/FrontendPreBuiltUITabs" +import FrontendCustomUITabs from "/src/components/tabs/FrontendCustomUITabs" +import NpmOrScriptTabs from "/src/components/tabs/NpmOrScriptTabs" +import FrontendMobileSubTabs from "/src/components/tabs/FrontendMobileSubTabs" import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs" import {Question, Answer}from "/src/components/question" import OAuthFrontendTabs from "/src/components/tabs/OAuthFrontendTabs" @@ -19,7 +25,7 @@ Using the actual **OAuth 2.0** terminology, we can say that each **`frontend`** :::info -This flow will only work if your frontend applications and your backend are under the same domain. +If your frontend applications are on the same **domain**, but on different **sub-domains**, you can use [Session Sharing Across Subdomains](/docs/session/common-customizations/sessions/share-sessions-across-sub-domains) ::: @@ -29,13 +35,12 @@ This flow will only work if your frontend applications and your backend are unde The authentication flow will work in the following way: 1. The User accesses the `frontend` app - - The application `frontend` redirects the user to [**Authorization Service**](/docs/oauth/introduction#authorization-service) login UI. + - The application `frontend` redirects the user to [**Authorization Service**](/docs/oauth/introduction#authorization-service) authorize URL. - The [**Authorization Service**](/docs/oauth/introduction#authorization-service) backend redirects the user to the login UI 2. The User completes the login attempt - The [**Authorization Service**](/docs/oauth/introduction#authorization-service) backend redirects the user to the `callback URL`. 3. The User accesses the callback URL - The `frontend` uses the callback URL information to obtain a **OAuth2 Access Token** from the [**Authorization Service**](/docs/oauth/introduction#authorization-service). - - The `frontend` exchanges the **OAuth2 Access Token** for a **SuperTokens Session Access Token**. :::info This guide assumes that you already have setup and configured **SuperTokens** in your [**Authorization Service**](/docs/oauth/introduction#authorization-service). @@ -49,8 +54,8 @@ For more information on how to do that please check our [quickstart guide](/docs ## 1. Enable the OAuth2 features from the Dashboard -You will first have to enable the **OAuth2** features from the **SuperTokens Dashboard**. -1. Open the **SuperTokens Dashboard** +You will first have to enable the **OAuth2** features from the **SuperTokens.com Dashboard**. +1. Open the **SuperTokens.com Dashboard** 2. Click on the **Enabled Paid Features** button 3. Click on **Managed Service** 4. Check the **OAuth 2.0** option @@ -76,27 +81,28 @@ This can be done by directly calling the **SuperTokens Core** API. ```bash # You will have to run this for each one of your applications -# Adjust the client_name and redirect_uri based on that -curl -X POST ^{coreInjector_uri_without_quotes}/recipe/oauth2/admin/clients \ +# Adjust the clientName and redirectUri based on that +curl -X POST ^{coreInjector_uri_without_quotes}/recipe/oauth/clients \ -H "Content-Type: application/json" \ -H "api-key: ^{coreInjector_api_key_without_quotes}" \ -d '{ - "client_name": "", - "response_types": ["code"], - "grant_types": ["authorization_code", "refresh_token"], + "clientName": "", + "responseTypes": ["code"], + "grantTypes": ["authorization_code", "refresh_token"], "tokenEndpointAuthMethod": "none", "scope": "offline_access ", - "redirect_uri": ["https:///oauth/callback"], + "redirectUri": ["https:///oauth/callback"], }' ``` -- `client_name` - A human-readable name of the client that will be used for identification. -- `response_types` - Specifies the types of responses your client expects from the [**Authorization Server**](/docs/oauth/introduction#authorization-server). Most of the time, you would need the following two to be present: +- `clientName` - A human-readable name of the client that will be used for identification. +- `responseTypes` - Specifies the types of responses your client expects from the [**Authorization Server**](/docs/oauth/introduction#authorization-server). - `code`: Indicates that the [**Client**](/docs/oauth/introduction#client) will receive an **Authorization Code** that will be exchanged for an [**OAuth2 Access Token**](/docs/oauth/introduction#oauth2-access-token). -- `grant_types` - The grant types that the [**Client**](/docs/oauth/introduction#client) will use. +- `grantTypes` - The grant types that the [**Client**](/docs/oauth/introduction#client) will use. - `authorization_code`: Allows exchanging the **Authorization Code** for an [**OAuth2 Access Token**](/docs/oauth/introduction#oauth2-access-token). - `refresh_token`: Allows exchanging the [**OAuth2 Refresh Token**](/docs/oauth/introduction#oauth2-refresh-token) for a new [**OAuth2 Access Token**](/docs/oauth/introduction#oauth2-access-token). -- `redirect_uri` - A list of URIs to which the [**Authorization Server**](/docs/oauth/introduction#authorization-server) will send the user-agent (browser) after completing the authorization step. These can be deep links to mobile or desktop apps as well, but they must be exact URLs, without wildcards. +- `tokenEndpointAuthMethod` - Indicates that the process of obtaining an **OAuth2 Access Token** will not make use of the client secret +- `redirectUri` - A list of URIs to which the [**Authorization Server**](/docs/oauth/introduction#authorization-server) will send the user-agent (browser) after completing the authorization step. These can be deep links to mobile or desktop apps as well, but they must be exact URLs, without wildcards. - `scope` - A space separated string of scopes that the [**Client**](/docs/oauth/introduction#client) will request access to. - `offline_access`: You need to include this scope if you want to use the [**OAuth2 Refresh Token**](/docs/oauth/introduction#oauth2-refresh-token) to get a new [**OAuth2 Access Token**](/docs/oauth/introduction#oauth2-access-token). @@ -106,17 +112,12 @@ If the creation was successful, the API will return a response that looks like t ```json { - "client_name": "", - "client_id": "", - "client_secret": "", - "callback_urls": ["https:///oauth/callback"], + "clientName": "", + "clientId": "", + "callbackUrls": ["https:///oauth/callback"], } ``` -Based on the client creation process we can also infer two additional values that we will need later on: -- `authorize_url` corresponds to `^{form_apiDomain}^{form_apiBasePath}oauth/auth` -- `token_fetch_url` corresponds to `^{form_apiDomain}^{form_apiBasePath}oauth/token` - :::caution You will have to save this response because we do not persist it internally for security reasons. @@ -124,6 +125,10 @@ In the next steps we will use the values to complete several configurations. ::: + + + + ### Change the default token lifespan By default, the tokens used in the authorization flow will have the following lifespans: @@ -133,41 +138,48 @@ By default, the tokens used in the authorization flow will have the following li If you want to change the default values you need to specify additional properties in the [**Client**](/docs/oauth/introduction#client) creation request body. Use string values that signify time duration in milliecoseconds, seconds, minutes or hours (e.g. `"2000ms"`, `"60s"`, `"30m"`, `"1h"`). +There are no limits on the duration of each token. + +- **OAuth2 Access Token** - Set the `authorizationCodeGrantAccessTokenLifespan` property. +- **OAuth2 ID Token** - Set the `authorizationCodeGrantIdTokenLifespan` property. +- **OAuth2 Refresh Token** - Set both the `authorizationCodeGrantRefreshTokenLifespan` and the `refreshTokenGrantRefreshTokenLifespan` properties to the same value. -- **OAuth2 Access Token** - Set the `authorization_code_grant_access_token_lifespan` property. -- **OAuth2 ID Token** - Set the `authorization_code_grant_id_token_lifespan` property. -- **OAuth2 Refresh Token** - Set both the `authorization_code_grant_refresh_token_lifespan` and the `refresh_token_grant_refresh_token_lifespan` properties to the same value. + + + + + + +### Disable Refresh Token Expiry -### Usage Without Refresh Tokens +By default, the **OAuth2 Refresh Token** wil expire after 30 days. +If your use case cannot accomodate the process of changing the [**OAuth2 Refresh Token**](/docs/oauth/introduction#oauth2-refresh-token) for a new one, you can make it so that it does not expire. + +In order to achieve this behavior just set the `enableRefreshTokenRotation` property to `false` in the [**Client**](/docs/oauth/introduction#client) creation request body. -If your use case involves a long lasting session that cannot accomodate the process of changing the [**OAuth2 Refresh Token**](/docs/oauth/introduction#oauth2-refresh-token) when it expires, you can adjust the [**Client**](/docs/oauth/introduction#client) that you are creating. -In order to do this you need to: - - Omit the `offline_access` scope from the **Client** creation request body. This way we are making sure that we avoid the use of **OAuth2 Refresh Tokens** in our authorization flow. - - Set the `authorization_code_grant_access_token_lifespan` property to a high value. You will be allowed to use the token without reauthenticating for a really long time. + -## 3. Set Up your Authorization Service +## 3. Set Up your Authorization Service Backend -### Configure the Authorization Service Backend +### Initialize the OAuth2 Recipes -In your [**Authorization Service**](/docs/oauth/introduction#authorization-service) you will need to initialize the **OAuth2Provider** and the **OAuth2Client** recipes. +In your [**Authorization Service**](/docs/oauth/introduction#authorization-service) you will need to initialize the **OAuth2Provider** recipe. -Update the `supertokens.init` call to include the new recipes. - -Add the new import statements and update the list of recipes with the new initialization steps. +Update the `supertokens.init` call to include the new recipe. ```tsx import supertokens from "supertokens-node"; import OAuth2Provider from "supertokens-node/recipe/oauth2provider"; -import OAuth2Client from "supertokens-node/recipe/oauth2client"; supertokens.init({ supertokens: { - connectionURI: "https://try.supertokens.com", + connectionURI: "...", + apiKey: "...", }, appInfo: { appName: "...", @@ -176,14 +188,6 @@ supertokens.init({ }, recipeList: [ OAuth2Provider.init(), - OAuth2Client.init({ - // Use the values returned from the previous client creation step - // Include all the clients that you have created in the previous step - providerConfigs: [{ - "clientId": "", - "clientSecret": "", - }] - }) ] }); ``` @@ -212,7 +216,204 @@ At the moment we do not have support creating OAuth2 providers in the Python SDK -### Configure the Authorization Service Frontend +### Update the CORS configuration + +You need to setup the Backend API so that it allows requests from all the frontend domains. + + + + + + + + +```tsx +import express from "express"; +import cors from "cors"; +import supertokens from "supertokens-node"; +import { middleware } from "supertokens-node/framework/express"; + +const app = express(); + +// Add your actual frontend domains here +const allowedOrigins = ["^{form_websiteDomain}", "", ""]; + +app.use(cors({ + // highlight-start + origin: function (origin, callback) { + if (allowedOrigins.indexOf(origin) !== -1) { + callback(null, true) + } else { + callback(new Error('Not allowed by CORS')) + } + }, + allowedHeaders: ["content-type", ...supertokens.getAllCORSHeaders()], + credentials: true, + // highlight-end +})); + +``` + + + + + +```tsx +import Hapi from "@hapi/hapi"; +import supertokens from "supertokens-node"; +import { plugin } from "supertokens-node/framework/hapi"; + +let server = Hapi.server({ + port: 8000, + routes: { + // highlight-start + cors: { + // Add your actual frontend domains here + origin: ["^{form_websiteDomain}", "", ""], + additionalHeaders: [...supertokens.getAllCORSHeaders()], + credentials: true, + } + // highlight-end + } +}); + +(async () => { + // highlight-next-line + await server.register(plugin); + + await server.start(); +})(); + +``` + + + + +```tsx +import cors from "@fastify/cors"; +import supertokens from "supertokens-node"; +import { plugin } from "supertokens-node/framework/fastify"; +import formDataPlugin from "@fastify/formbody"; + +import fastifyImport from "fastify"; + +let fastify = fastifyImport(); + +// highlight-start +fastify.register(cors, { + // Add your actual frontend domains here + origin: ["^{form_websiteDomain}", "", ""], + allowedHeaders: ['Content-Type', ...supertokens.getAllCORSHeaders()], + credentials: true, +}); +// highlight-end + +(async () => { + // highlight-next-line + await fastify.register(formDataPlugin); + // highlight-next-line + await fastify.register(plugin); + + await fastify.listen(8000); +})(); + +``` + + + + +```tsx +import Koa from "koa"; +import cors from '@koa/cors'; +import supertokens from "supertokens-node"; +import { middleware } from "supertokens-node/framework/koa"; + +let app = new Koa(); + +// Add your actual frontend domains here +const allowedOrigins = ["^{form_websiteDomain}", "", ""]; + +app.use(cors({ + // highlight-start + origin: (ctx) => { + const origin = ctx.get("Origin"); + if (allowedDomains.includes(origin)) { + return origin; + } + return ''; + }, + allowHeaders: ["content-type", ...supertokens.getAllCORSHeaders()], + credentials: true, + // highlight-end +})); + +// highlight-next-line +app.use(middleware()); + +``` + + + + +```tsx +import { RestApplication } from "@loopback/rest"; +import supertokens from "supertokens-node"; +import { middleware } from "supertokens-node/framework/loopback"; + +// Add your actual frontend domains here +const allowedOrigins = ["^{form_websiteDomain}", "", ""]; + +const app = new RestApplication({ + rest: { + cors: { + // highlight-start + origin: function (origin, callback) { + if (allowedOrigins.indexOf(origin) !== -1) { + callback(null, true) + } else { + callback(new Error('Not allowed by CORS')) + } + }, + allowedHeaders: ["content-type", ...supertokens.getAllCORSHeaders()], + credentials: true + // highlight-end + } + } +}); + +// highlight-next-line +app.middleware(middleware); + +``` + + + + + + + + +:::caution + +At the moment we do not have support creating OAuth2 providers in the Go SDK. + +::: + + + + + +:::caution + +At the moment we do not have support creating OAuth2 providers in the Python SDK. + +::: + + + + + +## 4. Configure the Authorization Service Frontend Initialize the `OAuth2Provider` recipe on the frontend of your **Authorization Service**. @@ -223,12 +424,13 @@ all the steps that you have to take into account. ::: +### Initialize the Recipe + -1. Update the `SuperTokensConfig` variable to include the `OAuth2Provider` recipe. Add the import statement for the new recipe and update the list of recipe to also include the new initialization. @@ -249,31 +451,68 @@ SuperTokens.init({ ``` -2. Include the pre built UI in the rendering tree. +#### Include the pre built UI in the rendering tree. -- Add the import statement for the pre built UI component. - -```tsx +```tsx +import React from 'react'; +import { + BrowserRouter, + Routes, + Route, + Link +} from "react-router-dom"; + +import SuperTokens, { SuperTokensWrapper } from "supertokens-auth-react"; +import { getSuperTokensRoutesForReactRouterDom } from "supertokens-auth-react/ui"; import OAuth2ProviderPreBuiltUI from "supertokens-auth-react/recipe/oauth2provider/prebuiltui"; -``` +import * as reactRouterDom from "react-router-dom"; + +class App extends React.Component { + render() { + return ( + + + + {/*This renders the login UI on the /auth route*/} + {getSuperTokensRoutesForReactRouterDom(reactRouterDom, [OAuth2ProviderPreBuiltUI])} + {/*Your app routes*/} + + + + ); + } +} -- Update the `getSuperTokensRoutesForReactRouterDom` function call to include the `OAuth2ProviderPreBuiltUI` component. +``` -- Add the import statement for the pre built UI component. - -```tsx +```tsx +import React from 'react'; import OAuth2ProviderPreBuiltUI from "supertokens-auth-react/recipe/oauth2provider/prebuiltui"; -``` +import SuperTokens, { SuperTokensWrapper } from "supertokens-auth-react"; +import { canHandleRoute, getRoutingComponent } from "supertokens-auth-react/ui"; + +class App extends React.Component { + render() { + if (canHandleRoute([OAuth2ProviderPreBuiltUI])) { + // This renders the login UI on the /auth route + return getRoutingComponent([OAuth2ProviderPreBuiltUI]) + } + + return ( + {/*Your app*/} + ); + } -- Update the `getRoutingComponent` function call to include the `OAuth2ProviderPreBuiltUI` component. +} +``` @@ -284,29 +523,141 @@ import OAuth2ProviderPreBuiltUI from "supertokens-auth-react/recipe/oauth2provid -1. Update the `AuthComponent` so that it also includes the `OAuth2Provider` recipe. -You will have to add a new item in the `recipeList` array, inside the `supertokensUIInit` call. +Update the `AuthComponent` so that it also includes the `OAuth2Provider` recipe. +You will have to add a new item in the `recipeList` array. -```tsx + + + + +```tsx title="/app/auth/auth.component.ts" + import {init as supertokensUIInit} from "supertokens-auth-react-script"; + import supertokensUIOAuth2Provider from "supertokens-auth-react-script/recipe/oauth2provider"; + import { Component, OnDestroy, AfterViewInit, Renderer2, Inject } from "@angular/core"; + import { DOCUMENT } from "@angular/common"; + + @Component({ + selector: "app-auth", + template: '
    ', + }) + export class AuthComponent implements OnDestroy, AfterViewInit { + + constructor( + private renderer: Renderer2, + @Inject(DOCUMENT) private document: Document + ) { } + + ngAfterViewInit() { + this.loadScript('^{jsdeliver_prebuiltui}'); + } + + ngOnDestroy() { + // Remove the script when the component is destroyed + const script = this.document.getElementById('supertokens-script'); + if (script) { + script.remove(); + } + } + + private loadScript(src: string) { + const script = this.renderer.createElement('script'); + script.type = 'text/javascript'; + script.src = src; + script.id = 'supertokens-script'; + script.onload = () => { + supertokensUIInit({ + appInfo: { + appName: "^{form_appName}", + apiDomain: "^{form_apiDomain}", + websiteDomain: "^{form_websiteDomain}", + apiBasePath: "^{form_apiBasePath}", + websiteBasePath: "^{form_websiteBasePath}" + }, + recipeList: [ + // Don't forget to also include the other recipes that you are already using + supertokensUIOAuth2Provider.init() + ], + }); + } + this.renderer.appendChild(this.document.body, script); + } + } +``` -(window as any).supertokensUIOAuth2Provider.init() +
    -``` +
    -1. Update the `AuthView` component so that it also includes the `OAuth2Provider` recipe. -You will have to add a new item in the `recipeList` array, inside the `supertokensUIInit` call. + -```tsx + -(window as any).supertokensUIOAuth2Provider.init() +Update the `AuthView` component so that it also includes the `OAuth2Provider` recipe. +You will have to add a new item in the `recipeList` array, inside the `supertokensUIInit` call. +```tsx + import {init as supertokensUIInit} from "supertokens-auth-react-script"; + import supertokensUIOAuth2Provider from "supertokens-auth-react-script/recipe/oauth2provider"; + + + ``` + + + @@ -314,33 +665,179 @@ You will have to add a new item in the `recipeList` array, inside the `supertoke
    -## 4. Update the login flow in your frontend applications +### Disable Network Interceptors + +The **Authorization Service Frontend** that you are configuring makes use of two types of access tokens: +- **SuperTokens Session Access Token**: Used only during the login flow in order to keep track of the authentication state. +- **OAuth2 Access Token**: Returned after a successfull login attempt. It can be used afterwards to access protected resources. -In your each of your `frontend` applications you will have setup the authentication flow. +By default, the **SuperTokens** frontend SDK will intercept all the network requests that you send to your Backend API and adjust them, based on the **SuperTokens Session Tokens**. +This allows us to perform operations, such as automatic token refreshing or adding authorization headers, without you having to configure anything else. -### 1. Setup SuperTokens Session Management +Given that in the scenario that you are implementing the **OAuth2 Access Tokens** are used for authorization. The automatic request interception will end up causing conflicts. +In order to prevent this you will have to override the `shouldDoInterceptionBasedOnUrl` function in the `Session.init` call. -First, you will have to configure the **SuperTokens Session Management** recipe. -There's a thorough guide on how to do this [here](/docs/session/quick-setup/frontend). -Just follow the steps described there and then return to this page. +:::caution + +The code samples assume that you are using `^{form_apiBasePath}` as the `apiBasePath` for the backend authentication routes. +If that is different please adjust them based on your use case. +::: -### 2. Configure header based authentication + -We need to update the `Session.init` call to use header based authentication. -This has to be done because each of your `frontend` applications will act as a third party domain to the `backend`. -So we can't rely on `cookie` based authentication since some browsers do not allow third party cookies. + ```tsx import Session from "supertokens-auth-react/recipe/session"; Session.init({ - // ... - tokenTransferMethod: "header" + override: { + functions: (oI) => { + return { + ...oI, + shouldDoInterceptionBasedOnUrl: (url, apiDomain, sessionTokenBackendDomain) => { + try { + let urlObj = new URL(url); + if (!urlObj.pathname.startsWith("^{form_apiBasePath}")) { + return false; + } + } catch (ignored) { } + return oI.shouldDoInterceptionBasedOnUrl(url, apiDomain, sessionTokenBackendDomain); + } + } + } + } +}) +``` + + + + + +You will have to make changes to the auth route config, as well as to the `supertokens-web-js` SDK config at the root of your application: + +This change is in your auth route config. + +```tsx +// this goes in the auth route config of your frontend app (once the pre built UI script has been loaded) +import supertokensUISession from "supertokens-auth-react-script/recipe/session"; + +supertokensUISession.init({ + override: { + functions: (oI) => { + return { + ...oI, + shouldDoInterceptionBasedOnUrl: (url, apiDomain, sessionTokenBackendDomain) => { + try { + let urlObj = new URL(url); + if (!urlObj.pathname.startsWith("^{form_apiBasePath}")) { + return false; + } + } catch (ignored) { } + return oI.shouldDoInterceptionBasedOnUrl(url, apiDomain, sessionTokenBackendDomain); + } + } + } + } }) ``` -### 3. Use a generic OAuth2 library to initiate the login flow +This change goes in the `supertokens-web-js` SDK config at the root of your application: + +```tsx +import Session from "supertokens-web-js/recipe/session"; + +Session.init({ + override: { + functions: (oI) => { + return { + ...oI, + shouldDoInterceptionBasedOnUrl: (url, apiDomain, sessionTokenBackendDomain) => { + try { + let urlObj = new URL(url); + if (!urlObj.pathname.startsWith("^{form_apiBasePath}")) { + return false; + } + } catch (ignored) { } + return oI.shouldDoInterceptionBasedOnUrl(url, apiDomain, sessionTokenBackendDomain); + } + } + } + } +}) +``` + + + + + + +You will have to make changes to the auth route config, as well as to the `supertokens-web-js` SDK config at the root of your application: + +This change is in your auth route config. + +```tsx +// this goes in the auth route config of your frontend app (once the pre built UI script has been loaded) +import supertokensUISession from "supertokens-auth-react-script/recipe/session"; + +supertokensUISession.init({ + override: { + functions: (oI) => { + return { + ...oI, + shouldDoInterceptionBasedOnUrl: (url, apiDomain, sessionTokenBackendDomain) => { + try { + let urlObj = new URL(url); + if (!urlObj.pathname.startsWith("^{form_apiBasePath}")) { + return false; + } + } catch (ignored) { } + return oI.shouldDoInterceptionBasedOnUrl(url, apiDomain, sessionTokenBackendDomain); + } + } + } + } +}) +``` + +This change goes in the `supertokens-web-js` SDK config at the root of your application: + +```tsx +import Session from "supertokens-web-js/recipe/session"; + +Session.init({ + override: { + functions: (oI) => { + return { + ...oI, + shouldDoInterceptionBasedOnUrl: (url, apiDomain, sessionTokenBackendDomain) => { + try { + let urlObj = new URL(url); + if (!urlObj.pathname.startsWith("^{form_apiBasePath}")) { + return false; + } + } catch (ignored) { } + return oI.shouldDoInterceptionBasedOnUrl(url, apiDomain, sessionTokenBackendDomain); + } + } + } + } +}) +``` + + + + + +The code snippet only allows interception for API endpoints that start with `^{form_apiBasePath}`. +This will ensure that calls made from our Frontend SDKs will continue to use the **SuperTokens Session Tokens**. As a result, the authentication flow ends up working properly. + +For the other routes, you have full control on how you want to attach the **OAuth2 Access Tokens** to the API calls. + +## 5. Update the login flow in your frontend applications + +Use a generic OAuth2 library to handle the login flow @@ -351,6 +848,11 @@ Just follow the instructions from the library's page. The configuration parameters can be determined based on the response that we received on **step 2**, when we created the **OAuth2 Client**. +- `authority` corresponds to the endpoint of the **Authorization Service** `^{form_apiDomain}^{form_apiBasePath}` +- `clientID` corresponds to `clientId` +- `redirectUri` corresponds to a value from `callbackUrls` +- `scope` corresponds to `scope` +
    @@ -360,8 +862,8 @@ Just follow the instructions escribed [here](https://github.com/manfredsteyer/an The configuration parameters can be determined based on the response that we received on **step 2**, when we created the **OAuth2 Client**. - `issuer` corresponds to the endpoint of the **Authorization Service** `^{form_apiDomain}^{form_apiBasePath}` -- `clientID` corresponds to `client_id` -- `redirectUri` corresponds to a value from `callback_urls` +- `client_id` corresponds to `clientId` +- `redirect_uri` corresponds to a value from `callbackUrls` - `scope` corresponds to `scope` @@ -372,6 +874,12 @@ We recommend using the [oidc-client-ts](https://github.com/authts/oidc-client-ts Just follow the instructions described [here](https://github.com/authts/oidc-client-ts/blob/main/docs/protocols/authorization-code-grant-with-pkce.md). The configuration parameters can be determined based on the response that we received on **step 2**, when we created the **OAuth2 Client**. + +- `issuer` corresponds to the endpoint of the **Authorization Service** `^{form_apiDomain}^{form_apiBasePath}` +- `client_id` corresponds to `clientId` +- `redirect_uri` corresponds to a value from `callbackUrls` +- `scope` corresponds to `scope` +
    @@ -382,33 +890,7 @@ If you want to use the [**OAuth2 Refresh Tokens**](/docs/oauth/introduction#oaut ::: - -### 4. Complete the final token exchange - -After you have obtained the **OAuth2 Access Token** you will have to exchange it for a **SuperTokens Session Access Token**. - -To do this you will have to call the **Authorization Service** backend API in the following way. - -```tsx - -async function exchangeTokens(accessToken: string) { - const res = await fetch(`^{form_apiDomain}^{form_apiBasePath}oauth/client/signin`, { - method: "POST", - headers: { - "Content-Type": "application/json", - }, - body: JSON.stringify({ - oAuthTokens: { access_token: accessToken }, - }), - }); - - if(!res.ok) return false; - const data = await res.json(); - return data.status === "OK"; -} -``` - -## 5. Test the new authentication flow +## 6. Test the new authentication flow With everything set up, you can now test your login flow. Just use the setup that you have created in the previous step to check if the authentication flow completes without any issues. diff --git a/v2/oauth/multiple-frontends-with-separate-backends.mdx b/v2/oauth/multiple-frontends-with-separate-backends.mdx index ac0b95d9e..a9a078f34 100644 --- a/v2/oauth/multiple-frontends-with-separate-backends.mdx +++ b/v2/oauth/multiple-frontends-with-separate-backends.mdx @@ -53,8 +53,8 @@ For more information on how to do that please check our [quickstart guides](/doc ## 1. Enable the OAuth2 features from the Dashboard -You will first have to enable the **OAuth2** features from the **SuperTokens Dashboard**. -1. Open the **SuperTokens Dashboard** +You will first have to enable the **OAuth2** features from the **SuperTokens.com Dashboard**. +1. Open the **SuperTokens.com Dashboard** 2. Click on the **Enabled Paid Features** button 3. Click on **Managed Service** 4. Check the **OAuth 2.0** option @@ -84,23 +84,23 @@ curl -X POST ^{coreInjector_uri_without_quotes}/recipe/oauth2/admin/clients \ -H "Content-Type: application/json" \ -H "api-key: ^{coreInjector_api_key_without_quotes}" \ -d '{ - "client_name": "", - "response_types": ["code", "id_token"], - "grant_types": ["authorization_code", "refresh_token"], + "clientName": "", + "responseTypes": ["code", "id_token"], + "grantTypes": ["authorization_code", "refresh_token"], "scope": "offline_access ", - "redirect_uri": ["https:///oauth/callback"] + "redirectUri": ["https:///oauth/callback"] }' ``` -- `client_name` - A human-readable name of the client that will be used for identification. -- `response_types` - Specifies the types of responses your client expects from the [**Authorization Server**](/docs/oauth/introduction#authorization-server). Most of the time, you would need the following two to be present: +- `clientName` - A human-readable name of the client that will be used for identification. +- `responseTypes` - Specifies the types of responses your client expects from the [**Authorization Server**](/docs/oauth/introduction#authorization-server). Most of the time, you would need the following two to be present: - `code`: Indicates that the [**Client**](/docs/oauth/introduction#client) will receive an **Authorization Code** that will be exchanged for an [**OAuth2 Access Token**](/docs/oauth/introduction#oauth2-access-token). - - `id_token`: Indicates that the [**Client**](/docs/oauth/introduction#client) expects an [**ID Token**](/docs/oauth/introduction#id-token) -- `grant_types` - The grant types that the [**Client**](/docs/oauth/introduction#client) will use. + - `idToken`: Indicates that the [**Client**](/docs/oauth/introduction#client) expects an [**ID Token**](/docs/oauth/introduction#id-token) +- `grantTypes` - The grant types that the [**Client**](/docs/oauth/introduction#client) will use. - `authorization_code`: Allows exchanging the **Authorization Code** for an [**OAuth2 Access Token**](/docs/oauth/introduction#oauth2-access-token). - `refresh_token`: Allows exchanging the [**OAuth2 Refresh Token**](/docs/oauth/introduction#oauth2-refresh-token) for a new [**OAuth2 Access Token**](/docs/oauth/introduction#oauth2-access-token). -- `redirect_uri` - A list of URIs to which the [**Authorization Server**](/docs/oauth/introduction#authorization-server) will send the user-agent (browser) after completing the authorization step. These can be deep links to mobile or desktop apps as well, but they must be exact URLs, without wildcards. +- `redirectUri` - A list of URIs to which the [**Authorization Server**](/docs/oauth/introduction#authorization-server) will send the user-agent (browser) after completing the authorization step. These can be deep links to mobile or desktop apps as well, but they must be exact URLs, without wildcards. - `scope` - A space separated string of scopes that the [**Client**](/docs/oauth/introduction#client) will request access to. - `offline_access`: You need to include this scope if you want to use the [**OAuth2 Refresh Token**](/docs/oauth/introduction#oauth2-refresh-token) to get a new [**OAuth2 Access Token**](/docs/oauth/introduction#oauth2-access-token). @@ -109,18 +109,18 @@ If the creation was successful, the API will return a response that looks like t ```json { - "client_name": "", - "client_id": "", - "client_secret": "", - "callback_urls": ["https:///oauth/callback"], + "clientName": "", + "clientId": "", + "clientSecret": "", + "callbackUrls": ["https:///oauth/callback"], } ``` Based on the client creation process we can also infer two additional values that we will need later on: -- `authorize_url` corresponds to `^{form_apiDomain}^{form_apiBasePath}oauth/auth` -- `token_fetch_url` corresponds to `^{form_apiDomain}^{form_apiBasePath}oauth/token` +- `authorizeUrl` corresponds to `^{form_apiDomain}^{form_apiBasePath}oauth/auth` +- `tokenFetchUrl` corresponds to `^{form_apiDomain}^{form_apiBasePath}oauth/token` :::caution @@ -129,6 +129,10 @@ In the next steps we will use the values to complete several configurations. ::: + + + + ### Change the default token lifespan By default, the tokens used in the authorization flow will have the following lifespans: @@ -138,17 +142,27 @@ By default, the tokens used in the authorization flow will have the following li If you want to change the default values you need to specify additional properties in the [**Client**](/docs/oauth/introduction#client) creation request body. Use string values that signify time duration in milliecoseconds, seconds, minutes or hours (e.g. `"2000ms"`, `"60s"`, `"30m"`, `"1h"`). +There are no limits on the duration of each token. -- **OAuth2 Access Token** - Set the `authorization_code_grant_access_token_lifespan` property. -- **OAuth2 ID Token** - Set the `authorization_code_grant_id_token_lifespan` property. -- **OAuth2 Refresh Token** - Set both the `authorization_code_grant_refresh_token_lifespan` and the `refresh_token_grant_refresh_token_lifespan` properties to the same value. +- **OAuth2 Access Token** - Set the `authorizationCodeGrantAccessTokenLifespan` property. +- **OAuth2 ID Token** - Set the `authorizationCodeGrantIdTokenLifespan` property. +- **OAuth2 Refresh Token** - Set both the `authorizationCodeGrantRefreshTokenLifespan` and the `refreshTokenGrantRefreshTokenLifespan` properties to the same value. + + -### Usage Without Refresh Tokens -If your use case involves a long lasting session that cannot accomodate the process of changing the [**OAuth2 Refresh Token**](/docs/oauth/introduction#oauth2-refresh-token) when it expires, you can adjust the [**Client**](/docs/oauth/introduction#client) that you are creating. -In order to do this you need to: - - Omit the `offline_access` scope from the **Client** creation request body. This way we are making sure that we avoid the use of **OAuth2 Refresh Tokens** in our authorization flow. - - Set the `authorization_code_grant_access_token_lifespan` property to a high value. You will be allowed to use the token without reauthenticating for a really long time. + + + + +### Disable Refresh Token Expiry + +By default, the **OAuth2 Refresh Token** wil expire after 30 days. +If your use case cannot accomodate the process of changing the [**OAuth2 Refresh Token**](/docs/oauth/introduction#oauth2-refresh-token) for a new one, you can make it so that it does not expire. + +In order to achieve this behavior just set the `enableRefreshTokenRotation` property to `false` in the [**Client**](/docs/oauth/introduction#client) creation request body. + + ## 3. Set Up your Authorization Service @@ -172,7 +186,8 @@ import OAuth2Provider from "supertokens-node/recipe/oauth2provider"; supertokens.init({ supertokens: { - connectionURI: "https://try.supertokens.com", + connectionURI: "...", + apiKey: "...", }, appInfo: { appName: "...", @@ -228,8 +243,6 @@ all the steps that you have to take into account. -1. Update the `SuperTokensConfig` variable to include the `OAuth2Provider` recipe. - Add the import statement for the new recipe and update the list of recipe to also include the new initialization. ```tsx @@ -248,31 +261,69 @@ SuperTokens.init({ }); ``` -2. Include the pre built UI in the rendering tree. + +#### Include the pre built UI in the rendering tree. -- Add the import statement for the pre built UI component. - -```tsx +```tsx +import React from 'react'; +import { + BrowserRouter, + Routes, + Route, + Link +} from "react-router-dom"; + +import SuperTokens, { SuperTokensWrapper } from "supertokens-auth-react"; +import { getSuperTokensRoutesForReactRouterDom } from "supertokens-auth-react/ui"; import OAuth2ProviderPreBuiltUI from "supertokens-auth-react/recipe/oauth2provider/prebuiltui"; -``` +import * as reactRouterDom from "react-router-dom"; + +class App extends React.Component { + render() { + return ( + + + + {/*This renders the login UI on the /auth route*/} + {getSuperTokensRoutesForReactRouterDom(reactRouterDom, [OAuth2ProviderPreBuiltUI])} + {/*Your app routes*/} + + + + ); + } +} -- Update the `getSuperTokensRoutesForReactRouterDom` function call to include the `OAuth2ProviderPreBuiltUI` component. +``` -- Add the import statement for the pre built UI component. - -```tsx +```tsx +import React from 'react'; import OAuth2ProviderPreBuiltUI from "supertokens-auth-react/recipe/oauth2provider/prebuiltui"; -``` +import SuperTokens, { SuperTokensWrapper } from "supertokens-auth-react"; +import { canHandleRoute, getRoutingComponent } from "supertokens-auth-react/ui"; + +class App extends React.Component { + render() { + if (canHandleRoute([OAuth2ProviderPreBuiltUI])) { + // This renders the login UI on the /auth route + return getRoutingComponent([OAuth2ProviderPreBuiltUI]) + } + + return ( + {/*Your app*/} + ); + } -- Update the `getRoutingComponent` function call to include the `OAuth2ProviderPreBuiltUI` component. +} +``` @@ -284,26 +335,141 @@ import OAuth2ProviderPreBuiltUI from "supertokens-auth-react/recipe/oauth2provid Update the `AuthComponent` so that it also includes the `OAuth2Provider` recipe. -You will have to add a new item in the `recipeList` array, inside the `supertokensUIInit` call. +You will have to add a new item in the `recipeList` array. -```tsx + + + + +```tsx title="/app/auth/auth.component.ts" + import {init as supertokensUIInit} from "supertokens-auth-react-script"; + import supertokensUIOAuth2Provider from "supertokens-auth-react-script/recipe/oauth2provider"; + import { Component, OnDestroy, AfterViewInit, Renderer2, Inject } from "@angular/core"; + import { DOCUMENT } from "@angular/common"; + + @Component({ + selector: "app-auth", + template: '
    ', + }) + export class AuthComponent implements OnDestroy, AfterViewInit { + + constructor( + private renderer: Renderer2, + @Inject(DOCUMENT) private document: Document + ) { } + + ngAfterViewInit() { + this.loadScript('^{jsdeliver_prebuiltui}'); + } + + ngOnDestroy() { + // Remove the script when the component is destroyed + const script = this.document.getElementById('supertokens-script'); + if (script) { + script.remove(); + } + } + + private loadScript(src: string) { + const script = this.renderer.createElement('script'); + script.type = 'text/javascript'; + script.src = src; + script.id = 'supertokens-script'; + script.onload = () => { + supertokensUIInit({ + appInfo: { + appName: "^{form_appName}", + apiDomain: "^{form_apiDomain}", + websiteDomain: "^{form_websiteDomain}", + apiBasePath: "^{form_apiBasePath}", + websiteBasePath: "^{form_websiteBasePath}" + }, + recipeList: [ + // Don't forget to also include the other recipes that you are already using + supertokensUIOAuth2Provider.init() + ], + }); + } + this.renderer.appendChild(this.document.body, script); + } + } +``` -(window as any).supertokensUIOAuth2Provider.init() +
    + +
    -```
    + + + + Update the `AuthView` component so that it also includes the `OAuth2Provider` recipe. You will have to add a new item in the `recipeList` array, inside the `supertokensUIInit` call. ```tsx + import {init as supertokensUIInit} from "supertokens-auth-react-script"; + import supertokensUIOAuth2Provider from "supertokens-auth-react-script/recipe/oauth2provider"; + + + +``` -(window as any).supertokensUIOAuth2Provider.init() + + + -``` @@ -324,11 +490,11 @@ You can use the [passport-oauth2](https://www.passportjs.org/packages/passport-o Just follow the instructions on the library's page and setup your application `backend`. The configuration parameters can be determined based on the response that we received on **step 2**, when we created the **OAuth2 Client**. -- `authorizationURL` corresponds to `authorize_url` -- `tokenURL` corresponds to `token_fetch_url` -- `clientID` corresponds to `client_id` -- `clientSecret` corresponds to `client_secret` -- `callbackURL` corresponds to a value from `callback_urls` +- `authorizationURL` corresponds to `authorizeUrl` +- `tokenURL` corresponds to `tokenFetchUrl` +- `clientID` corresponds to `clientId` +- `clientSecret` corresponds to `clientSecret` +- `callbackURL` corresponds to a value from `callbackUrls` - `scope` corresponds to `scope` @@ -343,11 +509,11 @@ You can use the [OAuth2](https://pkg.go.dev/golang.org/x/oauth2) library. Just follow these [instructions](https://golang.org/pkg/golang.org/x/oauth2/#example-Config-RequestToken) and implement it in your `backend`. The configuration parameters can be determined based on the response that we received on **step 2**. -- `ClientID` corresponds to `client_id` -- `ClientSecret` corresponds to `client_secret` +- `ClientID` corresponds to `clientId` +- `ClientSecret` corresponds to `clientSecret` - `Scopes` corresponds to `scope` -- `Endpoint.AuthURL` corresponds to `authorize_url` -- `Endpoint.TokenURL` corresponds to `token_fetch_url` +- `Endpoint.AuthURL` corresponds to `authorizeUrl` +- `Endpoint.TokenURL` corresponds to `tokenFetchUrl` Make sure that you expose an endpoint that will redirect to the authentication URL obtained from calling `AuthCodeURL`. This way the user will end up accessing the actual login page served by the **Authorization Service**. @@ -361,11 +527,11 @@ You can use the [AuthLib](https://docs.authlib.org/) library. Just follow these [instructions](https://docs.authlib.org/en/latest/client/oauth2.html) and implement it in your `backend`. The configuration parameters can be determined based on the response that we received on **step 2**. -- `client_id` corresponds to `client_id` -- `client_secret` corresponds to `client_secret` +- `client_id` corresponds to `clientId` +- `client_secret` corresponds to `clientSecret` - `scope` corresponds to `scope` -- `authorization_endpoint` corresponds to `authorize_url` -- `token_endpoint` corresponds to `token_fetch_url` +- `authorization_endpoint` corresponds to `authorizeUrl` +- `token_endpoint` corresponds to `tokenFetchUrl` Make sure that you expose an endpoint that will redirect to the authentication URL obtained from calling `create_authorization_url`. This way the user will end up accessing the actual login page served by the **Authorization Service**. @@ -379,11 +545,11 @@ You can use the [League OAuth2 Client](https://github.com/thephpleague/oauth2-cl Just follow these [instructions](https://oauth2-client.thephpleague.com/usage/) and implement it in your `backend`. The configuration parameters can be determined based on the response that we received on **step 2**. -- `clientId` corresponds to `client_id` -- `clientSecret` corresponds to `client_secret` -- `redirectUri` corresponds to a value from `callback_urls` -- `urlAuthorize` corresponds to `authorize_url` -- `urlAccessToken` corresponds to `token_fetch_url` +- `clientId` corresponds to `clientId` +- `clientSecret` corresponds to `clientSecret` +- `redirectUri` corresponds to a value from `callbackUrls` +- `urlAuthorize` corresponds to `authorizeUrl` +- `urlAccessToken` corresponds to `tokenFetchUrl` Make sure that you expose an endpoint that will redirect to the authentication URL obtained from calling `getAuthorizationUrl`. This way the user will end up accessing the actual login page served by the **Authorization Service**. @@ -397,8 +563,8 @@ Just follow these [instructions](https://docs.spring.io/spring-security/referenc The configuration parameters can be determined based on the response that we received on **step 2**. -- `client-id` corresponds to `client_id` -- `client-secret` corresponds to `client_secret` +- `client-id` corresponds to `clientId` +- `client-secret` corresponds to `clientSecret` - `scope` corresponds to `scope` - `issuer-uri` corresponds to `^{form_apiDomain}^{form_apiBasePath}` @@ -413,9 +579,9 @@ Just follow these [instructions](https://identitymodel.readthedocs.io/en/latest/ The configuration parameters can be determined based on the response that we received on **step 2**. - `Address` corresponds to `^{form_apiDomain}^{form_apiBasePath}` -- `ClientId` corresponds to `client_id` -- `ClientSecret` corresponds to `client_secret` -- `RedirectUri` corresponds to a value from `callback_urls` +- `ClientId` corresponds to `clientId` +- `ClientSecret` corresponds to `clientSecret` +- `RedirectUri` corresponds to a value from `callbackUrls` Make sure that you expose an endpoint that will redirect to the authentication URL obtained by using [this example](https://identitymodel.readthedocs.io/en/latest/misc/request_url.html#authorization-endpoint). diff --git a/v2/oauth/reuse-website-login.mdx b/v2/oauth/reuse-website-login.mdx index e7cb4bea9..564752f4a 100644 --- a/v2/oauth/reuse-website-login.mdx +++ b/v2/oauth/reuse-website-login.mdx @@ -44,8 +44,8 @@ For more information on how to do that please check our [quickstart guides](/doc ## 1. Enable the OAuth2 features from the Dashboard -You will first have to enable the **OAuth2** features from the **SuperTokens Dashboard**. -1. Open the **SuperTokens Dashboard** +You will first have to enable the **OAuth2** features from the **SuperTokens.com Dashboard**. +1. Open the **SuperTokens.com Dashboard** 2. Click on the **Enabled Paid Features** button 3. Click on **Managed Service** 4. Check the **OAuth 2.0** option @@ -77,23 +77,24 @@ curl -X POST ^{coreInjector_uri_without_quotes}/recipe/oauth2/admin/clients \ -H "Content-Type: application/json" \ -H "api-key: ^{coreInjector_api_key_without_quotes}" \ -d '{ - "client_name": "", - "response_types": ["code", "id_token"], - "grant_types": ["authorization_code", "refresh_token"], + "clientName": "", + "responseTypes": ["code", "id_token"], + "grantTypes": ["authorization_code", "refresh_token"], "tokenEndpointAuthMethod": "none", "scope": "offline_access ", - "redirect_uri": ["https:///oauth/callback"] + "redirectUri": ["https:///oauth/callback"] }' ``` -- `client_name` - A human-readable name of the client that will be used for identification. -- `response_types` - Specifies the types of responses your client expects from the [**Authorization Server**](/docs/oauth/introduction#authorization-server). Most of the time, you would need the following two to be present: +- `clientName` - A human-readable name of the client that will be used for identification. +- `responseTypes` - Specifies the types of responses your client expects from the [**Authorization Server**](/docs/oauth/introduction#authorization-server). Most of the time, you would need the following two to be present: - `code`: Indicates that the [**Client**](/docs/oauth/introduction#client) will receive an **Authorization Code** that will be exchanged for an [**OAuth2 Access Token**](/docs/oauth/introduction#oauth2-access-token). - `id_token`: Indicates that the [**Client**](/docs/oauth/introduction#client) expects an [**ID Token**](/docs/oauth/introduction#id-token) -- `grant_types` - The grant types that the [**Client**](/docs/oauth/introduction#client) will use. +- `grantTypes` - The grant types that the [**Client**](/docs/oauth/introduction#client) will use. - `authorization_code`: Allows exchanging the **Authorization Code** for an [**OAuth2 Access Token**](/docs/oauth/introduction#oauth2-access-token). - `refresh_token`: Allows exchanging the [**OAuth2 Refresh Token**](/docs/oauth/introduction#oauth2-refresh-token) for a new [**OAuth2 Access Token**](/docs/oauth/introduction#oauth2-access-token). -- `redirect_uri` - A list of URIs to which the [**Authorization Server**](/docs/oauth/introduction#authorization-server) will send the user-agent (browser) after completing the authorization step. These can be deep links to mobile or desktop apps as well, but they must be exact URLs, without wildcards. +- `tokenEndpointAuthMethod` - Indicates that the process of obtaining an **OAuth2 Access Token** will not make use of the client secret +- `redirectUri` - A list of URIs to which the [**Authorization Server**](/docs/oauth/introduction#authorization-server) will send the user-agent (browser) after completing the authorization step. These can be deep links to mobile or desktop apps as well, but they must be exact URLs, without wildcards. - `scope` - A space separated string of scopes that the [**Client**](/docs/oauth/introduction#client) will request access to. - `offline_access`: You need to include this scope if you want to use the [**OAuth2 Refresh Token**](/docs/oauth/introduction#oauth2-refresh-token) to get a new [**OAuth2 Access Token**](/docs/oauth/introduction#oauth2-access-token). @@ -102,16 +103,16 @@ If the creation was successful, the API will return a response that looks like t ```json { - "client_name": "", - "client_id": "", - "callback_urls": ["https:///oauth/callback"], + "clientName": "", + "clientId": "", + "callbackUrls": ["https:///oauth/callback"], } ``` Based on the client creation process we can also infer two additional values that we will need later on: -- `authorize_url` corresponds to `^{form_apiDomain}^{form_apiBasePath}oauth/auth` -- `token_fetch_url` corresponds to `^{form_apiDomain}^{form_apiBasePath}oauth/token` +- `authorizeUrl` corresponds to `^{form_apiDomain}^{form_apiBasePath}/oauth/auth` +- `tokenFetchUrl` corresponds to `^{form_apiDomain}^{form_apiBasePath}/oauth/token` :::caution @@ -120,6 +121,10 @@ In the next steps we will use the values to complete several configurations. ::: + + + + ### Change the default token lifespan By default, the tokens used in the authorization flow will have the following lifespans: @@ -129,16 +134,19 @@ By default, the tokens used in the authorization flow will have the following li If you want to change the default values you need to specify additional properties in the [**Client**](/docs/oauth/introduction#client) creation request body. Use string values that signify time duration in milliecoseconds, seconds, minutes or hours (e.g. `"2000ms"`, `"60s"`, `"30m"`, `"1h"`). +There are no limits on the duration of each token. -- **OAuth2 Access Token** - Set the `authorization_code_grant_access_token_lifespan` property. -- **OAuth2 ID Token** - Set the `authorization_code_grant_id_token_lifespan` property. -- **OAuth2 Refresh Token** - Set both the `authorization_code_grant_refresh_token_lifespan` and the `refresh_token_grant_refresh_token_lifespan` properties to the same value. +- **OAuth2 Access Token** - Set the `authorizationCodeGrantAccessTokenLifespan` property. +- **OAuth2 ID Token** - Set the `authorizationCodeGrantIdTokenLifespan` property. +- **OAuth2 Refresh Token** - Set both the `authorizationCodeGrantRefreshTokenLifespan` and the `refreshTokenGrantRefreshTokenLifespan` properties to the same value. + + ## 3. Make sure that you have properly configured the Authorization Service If you have not set up the [**Authorization Service**](/docs/oauth/introduction#authorization-service) yet, please check one of the previous guides based whether you use multiple backend service: -- [Multiple Backends Setup](/docs/oauth/multiple-frontends-with-separate-backends) -- [Single Backend Setup](/docs/oauth/multiple-frontends-with-a-single-backend) +- [Single Backend Setup](/docs/oauth/multiple-frontends-with-a-single-backend#3-set-up-your-authorization-service-backend) +- [Multiple Backends Setup](/docs/oauth/multiple-frontends-with-separate-backends#3-set-up-your-authorization-service) ## 4. Update the login flow in your applications @@ -156,11 +164,11 @@ Just follow [the instructions](https://commerce.nearform.com/open-source/react-n The configuration parameters can be determined based on the response that we received on **step 2**, when we created the **OAuth2 Client**. - `issuer` corresponds to the endpoint of the **Authorization Service** `^{form_apiDomain}^{form_apiBasePath}` -- `clientID` corresponds to `client_id` -- `redirectUrl` corresponds a value from `callback_urls` +- `clientID` corresponds to `clientId` +- `redirectUrl` corresponds a value from `callbackUrls` - `scopes` corresponds to `scopes` -- `serviceConfiguration.authorizationEndpoint` corresponds to `authorize_url` -- `serviceConfiguration.tokenEndpoint` corresponds to `token_fetch_url` +- `serviceConfiguration.authorizationEndpoint` corresponds to `authorizeUrl` +- `serviceConfiguration.tokenEndpoint` corresponds to `tokenFetchUrl`
    @@ -172,8 +180,8 @@ Just follow [the instructions](https://github.com/openid/AppAuth-Android?tab=rea The configuration parameters can be determined based on the response that we received on **step 2**, when we created the **OAuth2 Client**. -For the `AuthorizationServiceConfiguration` the parameters that you will have to provide are: `authorize_url` and `token_fetch_url`. -When calling the `AuthorizationRequest.Builder` function you can use `client_id` and a value from `callback_urls` to replace the example values. +For the `AuthorizationServiceConfiguration` the parameters that you will have to provide are: `authorizeUrl` and `tokenFetchUrl`. +When calling the `AuthorizationRequest.Builder` function you can use `clientId` and a value from `callbackUrls` to replace the example values.
    @@ -185,11 +193,11 @@ Just follow [the instructions](https://github.com/openid/AppAuth-iOS?tab=readme- The configuration parameters can be determined based on the response that we received on **step 2**, when we created the **OAuth2 Client**. -- `clientID` corresponds to `client_id` -- `redirectUrl` corresponds a value from `callback_urls` +- `clientID` corresponds to `clientId` +- `redirectUrl` corresponds a value from `callbackUrls` - `scopes` corresponds to `scopes` -- `authorizationEndpoint` corresponds to `authorize_url` -- `tokenEndpoint` corresponds to `token_fetch_url` +- `authorizationEndpoint` corresponds to `authorizeUrl` +- `tokenEndpoint` corresponds to `tokenFetchUrl`
    @@ -200,9 +208,9 @@ Just follow [the instructions](https://github.com/MaikuB/flutter_appauth/tree/ma The configuration parameters can be determined based on the response that we received on **step 2**, when we created the **OAuth2 Client**. -- `` corresponds to `client_id` +- `` corresponds to `clientId` - `` corresponds to the endpoint of the **Authorization Service** `^{form_apiDomain}^{form_apiBasePath}` -- `` corresponds a value from `callback_urls` +- `` corresponds a value from `callbackUrls` - `scopes` corresponds to `scopes`
    diff --git a/v2/src/plugins/copyDocsAndCodeTypeChecking.js b/v2/src/plugins/copyDocsAndCodeTypeChecking.js index 935186e4a..30c857038 100644 --- a/v2/src/plugins/copyDocsAndCodeTypeChecking.js +++ b/v2/src/plugins/copyDocsAndCodeTypeChecking.js @@ -67,6 +67,8 @@ async function checkFrontendSDKRelatedDocs(mdPath) { `import supertokensUISession from "supertokens-auth-react-script/recipe/session"`, `import supertokensUIEmailPassword from "supertokens-auth-react-script/recipe/emailpassword";`, `import supertokensUIEmailPassword from "supertokens-auth-react-script/recipe/emailpassword"`, + `import supertokensUIOAuth2Provider from "supertokens-auth-react-script/recipe/oauth2provider";`, + `import supertokensUIOAuth2Provider from "supertokens-auth-react-script/recipe/oauth2provider"`, `import supertokensUIThirdParty from "supertokens-auth-react-script/recipe/thirdparty";`, `import supertokensUIThirdParty from "supertokens-auth-react-script/recipe/thirdparty"`, `import supertokensUIPasswordless from "supertokens-auth-react-script/recipe/passwordless";`, From c0a45a2880bda21309545f50a922547ad22f118a Mon Sep 17 00:00:00 2001 From: Bogdan Carpusor Date: Fri, 18 Oct 2024 10:25:57 +0100 Subject: [PATCH 18/33] Add additional configuration details --- .../machine-to-machine-authentication.mdx | 44 ++++++++++--------- ...ltiple-frontends-with-a-single-backend.mdx | 9 ++++ v2/oauth/reuse-website-login.mdx | 6 ++- 3 files changed, 37 insertions(+), 22 deletions(-) diff --git a/v2/oauth/machine-to-machine-authentication.mdx b/v2/oauth/machine-to-machine-authentication.mdx index a3f892c96..92083eb55 100644 --- a/v2/oauth/machine-to-machine-authentication.mdx +++ b/v2/oauth/machine-to-machine-authentication.mdx @@ -71,18 +71,17 @@ curl -X POST ^{coreInjector_uri_without_quotes}/recipe/oauth2/admin/clients \ -H "Content-Type: application/json" \ -H "api-key: ^{coreInjector_api_key_without_quotes}" \ -d '{ - "tokenEndpointAuthMethod": "none", - "client_name": "", - "grant_types": ["client_credentials"], + "clientName": "", + "grantTypes": ["client_credentials"], "scope": " ", "audience": [""] }' ``` -- `client_name` - Then name of the client that will be used later for identification. -- `grant_types` - The grant types that the [**Client**](/docs/oauth/introduction#client) will use. - - `client_credentials`: Allows the client to directly request an Access Token by authenticating itself with the Authorization Server using its own client credentials. +- `clientName` - Then name of the client that will be used later for identification. +- `grantTypes` - The grant types that the [**Client**](/docs/oauth/introduction#client) will use. + - `clientCredentials`: Allows the client to directly request an Access Token by authenticating itself with the Authorization Server using its own client credentials. - `audience` - Value used to identify for whom a token was issued. When a service will request an **OAuth2 Token** that can be used on this client, the requested token should include one of the audience values. - `scope` - A space separated string of scopes that the [**Client**](/docs/oauth/introduction#client) will request access to. @@ -90,23 +89,24 @@ If the creation was successful, the API will return a response that looks like t ```json { - "client_name": "", - "client_id": "", - "client_secret": "", - "callback_urls": [], + "clientName": "", + "clientId": "", + "clientSecret": "", + "callbackUrls": [], } ``` -Based on the client creation process we can also infer the `authorization_url` value which is `^{form_apiDomain}^{form_apiBasePath}oauth/auth`. We will use this later on. +Based on the client creation process we can also infer the `authorizationUrl` value which is `^{form_apiDomain}^{form_apiBasePath}oauth/auth`. We will use this later on. ### Change the default token lifespan By default, the token used in the authorization flow will have a 1 hour lifespan. -If you want to change it you will need to set the `client_credentials_grant_access_token_lifespan` property in the [**Client**](/docs/oauth/introduction#client) creation request body. +If you want to change it you will need to set the `clientCredentialsGrantAccessTokenLifespan` property in the [**Client**](/docs/oauth/introduction#client) creation request body. Use string values that signify time duration in milliecoseconds, seconds, minutes or hours (e.g. `"2000ms"`, `"60s"`, `"30m"`, `"1h"`). +Keep in mind to use short lived tokens so that they can be only used once in order to prevent security concerns. ## 3. Set Up your Authorization Service @@ -128,7 +128,8 @@ import OAuth2Provider from "supertokens-node/recipe/oauth2provider"; supertokens.init({ supertokens: { - connectionURI: "https://try.supertokens.com", + connectionURI: "...", + apiKey: "...", }, appInfo: { appName: "...", @@ -179,9 +180,9 @@ Check the following code snippet to see how you can do that: curl -X POST ^{form_apiDomain}^{form_apiBasePath}/oauth/token \ -H "Content-Type: application/json" \ -d '{ - "client_id": "", - "client_secret": "", - "grant_type": "client_credentials", + "clientId": "", + "clientSecret": "", + "grantType": "client_credentials", "scope": [""], "audience": "" }' @@ -199,13 +200,16 @@ The **Authorization Server** will return a response that will look like this: ```json { - "access_token": "", - "expires_in": 3600 + "accessToken": "", + "expiresIn": 3600 } ``` -You will have to save the `access_token` in memory so that you can use it in the next step. -The `expires_in` field will tell you how long the token is valid for. +You will have to save the `accessToken` in memory so that you can use it in the next step. +The `expiresIn` field will tell you how long the token is valid for. + +Save this token in memory and use it to perform protected actions on the targeted service. +You will have to use a different token for each of the services that you want to communicate with. ## 5. Use the Generated Access Token diff --git a/v2/oauth/multiple-frontends-with-a-single-backend.mdx b/v2/oauth/multiple-frontends-with-a-single-backend.mdx index 8627fc7ae..095aa98cf 100644 --- a/v2/oauth/multiple-frontends-with-a-single-backend.mdx +++ b/v2/oauth/multiple-frontends-with-a-single-backend.mdx @@ -853,6 +853,9 @@ The configuration parameters can be determined based on the response that we rec - `redirectUri` corresponds to a value from `callbackUrls` - `scope` corresponds to `scope` +If you are using a multi-tenant setup, you will also need to specify the `tenantId` parameter in the authorization URL. +To do this just set the `extraQueryParams` property with a specific value that should look like this: `{ tenant_id: "" }`. +
    @@ -866,6 +869,9 @@ The configuration parameters can be determined based on the response that we rec - `redirect_uri` corresponds to a value from `callbackUrls` - `scope` corresponds to `scope` +If you are using a multi-tenant setup, you will also need to specify the `tenantId` parameter in the authorization URL. +To do this just set the `customQueryParams` property with a specific value that should look like this: `{ tenant_id: "" }`. + @@ -880,6 +886,9 @@ The configuration parameters can be determined based on the response that we rec - `redirect_uri` corresponds to a value from `callbackUrls` - `scope` corresponds to `scope` +If you are using a multi-tenant setup, you will also need to specify the `tenantId` parameter in the authorization URL. +To do this just set the `extraQueryParams` property with a specific value that should look like this: `{ tenant_id: "" }`. + diff --git a/v2/oauth/reuse-website-login.mdx b/v2/oauth/reuse-website-login.mdx index 564752f4a..679e99011 100644 --- a/v2/oauth/reuse-website-login.mdx +++ b/v2/oauth/reuse-website-login.mdx @@ -167,8 +167,10 @@ The configuration parameters can be determined based on the response that we rec - `clientID` corresponds to `clientId` - `redirectUrl` corresponds a value from `callbackUrls` - `scopes` corresponds to `scopes` -- `serviceConfiguration.authorizationEndpoint` corresponds to `authorizeUrl` -- `serviceConfiguration.tokenEndpoint` corresponds to `tokenFetchUrl` + +You will also need to set the `additionalParameters` property with the following values: +- `max_age: 0` This will force a new authentication flow once the user ends up on the **Authorization Service** frontend. +- `tenant_id: ` Optional, in case you are using a multi tenant setup. Set this to the actual tenant ID.
    From 114c880e3e4e59b1041aa7e025a417caeacdca1f Mon Sep 17 00:00:00 2001 From: Bogdan Carpusor Date: Fri, 18 Oct 2024 14:04:57 +0100 Subject: [PATCH 19/33] Change naming to unified login --- v2/docusaurus.config.js | 9 +-- .../custom-ui/securing-routes.mdx | 2 +- .../pre-built-ui/securing-routes.mdx | 2 +- v2/passwordless/custom-ui/securing-routes.mdx | 2 +- .../pre-built-ui/securing-routes.mdx | 2 +- .../introduction.mdx | 2 +- v2/src/components/recipeBoxes/guides.json | 6 +- v2/src/theme/NavbarItem/recipeSelector.js | 8 +-- v2/thirdparty/custom-ui/securing-routes.mdx | 2 +- .../pre-built-ui/securing-routes.mdx | 2 +- .../custom-ui/securing-routes.mdx | 2 +- .../pre-built-ui/securing-routes.mdx | 2 +- .../custom-ui/securing-routes.mdx | 2 +- .../pre-built-ui/securing-routes.mdx | 2 +- .../add-custom-claims-in-tokens.mdx | 0 .../customizations/custom-ui.mdx | 6 +- .../customizations/verify-tokens.mdx | 0 .../customizations/working-with-scopes.mdx | 0 v2/{oauth => unified-login}/introduction.mdx | 56 +++++++++-------- .../machine-to-machine-authentication.mdx | 20 +++--- ...ltiple-frontends-with-a-single-backend.mdx | 54 ++++++++-------- ...tiple-frontends-with-separate-backends.mdx | 62 +++++++++---------- .../reuse-website-login.mdx | 50 +++++++-------- v2/{oauth => unified-login}/sidebars.js | 0 24 files changed, 151 insertions(+), 142 deletions(-) rename v2/{oauth => unified-login}/customizations/add-custom-claims-in-tokens.mdx (100%) rename v2/{oauth => unified-login}/customizations/custom-ui.mdx (96%) rename v2/{oauth => unified-login}/customizations/verify-tokens.mdx (100%) rename v2/{oauth => unified-login}/customizations/working-with-scopes.mdx (100%) rename v2/{oauth => unified-login}/introduction.mdx (86%) rename v2/{oauth => unified-login}/machine-to-machine-authentication.mdx (86%) rename v2/{oauth => unified-login}/multiple-frontends-with-a-single-backend.mdx (89%) rename v2/{oauth => unified-login}/multiple-frontends-with-separate-backends.mdx (83%) rename v2/{oauth => unified-login}/reuse-website-login.mdx (73%) rename v2/{oauth => unified-login}/sidebars.js (100%) diff --git a/v2/docusaurus.config.js b/v2/docusaurus.config.js index 718b718a6..0b4ccf797 100644 --- a/v2/docusaurus.config.js +++ b/v2/docusaurus.config.js @@ -256,13 +256,14 @@ module.exports = { beforeDefaultRemarkPlugins, }, ], + [ "@docusaurus/plugin-content-docs", { - id: "oauth", - path: "oauth", - routeBasePath: "docs/oauth", - sidebarPath: require.resolve("./oauth/sidebars.js"), + id: "unified-login", + path: "unified-login", + routeBasePath: "docs/unified-login", + sidebarPath: require.resolve("./unified-login/sidebars.js"), showLastUpdateTime: true, editUrl: "https://github.com/supertokens/docs/tree/master/v2/", remarkPlugins: remarkPlugins, diff --git a/v2/emailpassword/custom-ui/securing-routes.mdx b/v2/emailpassword/custom-ui/securing-routes.mdx index d9afed121..da7bd215d 100644 --- a/v2/emailpassword/custom-ui/securing-routes.mdx +++ b/v2/emailpassword/custom-ui/securing-routes.mdx @@ -437,7 +437,7 @@ In case of successful session verification, you get access to a `session` object ### Microservice authentication -For authentication between microservices on your backend, checkout the [microservice auth guide](/docs/oauth/machine-to-machine-authentication). +For authentication between microservices on your backend, checkout the [microservice auth guide](/docs/unified-login/machine-to-machine-authentication). diff --git a/v2/emailpassword/pre-built-ui/securing-routes.mdx b/v2/emailpassword/pre-built-ui/securing-routes.mdx index 1a254347a..b99528e9e 100644 --- a/v2/emailpassword/pre-built-ui/securing-routes.mdx +++ b/v2/emailpassword/pre-built-ui/securing-routes.mdx @@ -436,7 +436,7 @@ In case of successful session verification, you get access to a `session` object ### Microservice authentication -For authentication between microservices on your backend, checkout the [microservice auth guide](/docs/oauth/machine-to-machine-authentication). +For authentication between microservices on your backend, checkout the [microservice auth guide](/docs/unified-login/machine-to-machine-authentication). diff --git a/v2/passwordless/custom-ui/securing-routes.mdx b/v2/passwordless/custom-ui/securing-routes.mdx index d9afed121..da7bd215d 100644 --- a/v2/passwordless/custom-ui/securing-routes.mdx +++ b/v2/passwordless/custom-ui/securing-routes.mdx @@ -437,7 +437,7 @@ In case of successful session verification, you get access to a `session` object ### Microservice authentication -For authentication between microservices on your backend, checkout the [microservice auth guide](/docs/oauth/machine-to-machine-authentication). +For authentication between microservices on your backend, checkout the [microservice auth guide](/docs/unified-login/machine-to-machine-authentication). diff --git a/v2/passwordless/pre-built-ui/securing-routes.mdx b/v2/passwordless/pre-built-ui/securing-routes.mdx index 1a254347a..b99528e9e 100644 --- a/v2/passwordless/pre-built-ui/securing-routes.mdx +++ b/v2/passwordless/pre-built-ui/securing-routes.mdx @@ -436,7 +436,7 @@ In case of successful session verification, you get access to a `session` object ### Microservice authentication -For authentication between microservices on your backend, checkout the [microservice auth guide](/docs/oauth/machine-to-machine-authentication). +For authentication between microservices on your backend, checkout the [microservice auth guide](/docs/unified-login/machine-to-machine-authentication). diff --git a/v2/private-access-token-authentication/introduction.mdx b/v2/private-access-token-authentication/introduction.mdx index ff9b5ed09..022a21224 100644 --- a/v2/private-access-token-authentication/introduction.mdx +++ b/v2/private-access-token-authentication/introduction.mdx @@ -7,7 +7,7 @@ hide_title: true # Introduction This guide explains a way of authenticating microservices without setting up an **OAuth2 Provider**. -Keep in mind that our recommended way of doing this is by using the **OAuth2 Client Credentials Flow** described in the [following guide](/docs/oauth/machine-to-machine-authentication). +Keep in mind that our recommended way of doing this is by using the **OAuth2 Client Credentials Flow** described in the [following guide](/docs/unified-login/machine-to-machine-authentication). When microservice `M1` wants to talk to microservice `M2`, `M1` will start by creating a JWT (by contacting the SuperTokens core), and pass that JWT to `M2`. diff --git a/v2/src/components/recipeBoxes/guides.json b/v2/src/components/recipeBoxes/guides.json index 21472c966..77a67fe20 100644 --- a/v2/src/components/recipeBoxes/guides.json +++ b/v2/src/components/recipeBoxes/guides.json @@ -72,6 +72,11 @@ "title": "Attack Protection Suite", "icon": "attackprotectionsuite", "path": "/docs/attackprotectionsuite/introduction" + }, + { + "title": "Unified Login", + "icon": "micro", + "path": "/docs/unified-login/introduction" } ], "ref": [ @@ -87,4 +92,3 @@ } ] } - diff --git a/v2/src/theme/NavbarItem/recipeSelector.js b/v2/src/theme/NavbarItem/recipeSelector.js index 50f94638b..8bc1f9549 100644 --- a/v2/src/theme/NavbarItem/recipeSelector.js +++ b/v2/src/theme/NavbarItem/recipeSelector.js @@ -42,8 +42,8 @@ export default function RecipeSelector(props) { return "Attack Protection Suite"; case "attackprotectionsuite": return "Attack Protection Suite"; - case "oauth": - return "OAuth 2.0"; + case "unified-login": + return "Unified Login"; default: return "Select Recipe"; } @@ -200,10 +200,10 @@ export default function RecipeSelector(props) {
  • - OAuth 2.0 + Unified Login
  • diff --git a/v2/thirdparty/custom-ui/securing-routes.mdx b/v2/thirdparty/custom-ui/securing-routes.mdx index d9afed121..da7bd215d 100644 --- a/v2/thirdparty/custom-ui/securing-routes.mdx +++ b/v2/thirdparty/custom-ui/securing-routes.mdx @@ -437,7 +437,7 @@ In case of successful session verification, you get access to a `session` object ### Microservice authentication -For authentication between microservices on your backend, checkout the [microservice auth guide](/docs/oauth/machine-to-machine-authentication). +For authentication between microservices on your backend, checkout the [microservice auth guide](/docs/unified-login/machine-to-machine-authentication). diff --git a/v2/thirdparty/pre-built-ui/securing-routes.mdx b/v2/thirdparty/pre-built-ui/securing-routes.mdx index 1a254347a..b99528e9e 100644 --- a/v2/thirdparty/pre-built-ui/securing-routes.mdx +++ b/v2/thirdparty/pre-built-ui/securing-routes.mdx @@ -436,7 +436,7 @@ In case of successful session verification, you get access to a `session` object ### Microservice authentication -For authentication between microservices on your backend, checkout the [microservice auth guide](/docs/oauth/machine-to-machine-authentication). +For authentication between microservices on your backend, checkout the [microservice auth guide](/docs/unified-login/machine-to-machine-authentication). diff --git a/v2/thirdpartyemailpassword/custom-ui/securing-routes.mdx b/v2/thirdpartyemailpassword/custom-ui/securing-routes.mdx index d9afed121..da7bd215d 100644 --- a/v2/thirdpartyemailpassword/custom-ui/securing-routes.mdx +++ b/v2/thirdpartyemailpassword/custom-ui/securing-routes.mdx @@ -437,7 +437,7 @@ In case of successful session verification, you get access to a `session` object ### Microservice authentication -For authentication between microservices on your backend, checkout the [microservice auth guide](/docs/oauth/machine-to-machine-authentication). +For authentication between microservices on your backend, checkout the [microservice auth guide](/docs/unified-login/machine-to-machine-authentication). diff --git a/v2/thirdpartyemailpassword/pre-built-ui/securing-routes.mdx b/v2/thirdpartyemailpassword/pre-built-ui/securing-routes.mdx index 1a254347a..b99528e9e 100644 --- a/v2/thirdpartyemailpassword/pre-built-ui/securing-routes.mdx +++ b/v2/thirdpartyemailpassword/pre-built-ui/securing-routes.mdx @@ -436,7 +436,7 @@ In case of successful session verification, you get access to a `session` object ### Microservice authentication -For authentication between microservices on your backend, checkout the [microservice auth guide](/docs/oauth/machine-to-machine-authentication). +For authentication between microservices on your backend, checkout the [microservice auth guide](/docs/unified-login/machine-to-machine-authentication). diff --git a/v2/thirdpartypasswordless/custom-ui/securing-routes.mdx b/v2/thirdpartypasswordless/custom-ui/securing-routes.mdx index d9afed121..da7bd215d 100644 --- a/v2/thirdpartypasswordless/custom-ui/securing-routes.mdx +++ b/v2/thirdpartypasswordless/custom-ui/securing-routes.mdx @@ -437,7 +437,7 @@ In case of successful session verification, you get access to a `session` object ### Microservice authentication -For authentication between microservices on your backend, checkout the [microservice auth guide](/docs/oauth/machine-to-machine-authentication). +For authentication between microservices on your backend, checkout the [microservice auth guide](/docs/unified-login/machine-to-machine-authentication). diff --git a/v2/thirdpartypasswordless/pre-built-ui/securing-routes.mdx b/v2/thirdpartypasswordless/pre-built-ui/securing-routes.mdx index 1a254347a..b99528e9e 100644 --- a/v2/thirdpartypasswordless/pre-built-ui/securing-routes.mdx +++ b/v2/thirdpartypasswordless/pre-built-ui/securing-routes.mdx @@ -436,7 +436,7 @@ In case of successful session verification, you get access to a `session` object ### Microservice authentication -For authentication between microservices on your backend, checkout the [microservice auth guide](/docs/oauth/machine-to-machine-authentication). +For authentication between microservices on your backend, checkout the [microservice auth guide](/docs/unified-login/machine-to-machine-authentication). diff --git a/v2/oauth/customizations/add-custom-claims-in-tokens.mdx b/v2/unified-login/customizations/add-custom-claims-in-tokens.mdx similarity index 100% rename from v2/oauth/customizations/add-custom-claims-in-tokens.mdx rename to v2/unified-login/customizations/add-custom-claims-in-tokens.mdx diff --git a/v2/oauth/customizations/custom-ui.mdx b/v2/unified-login/customizations/custom-ui.mdx similarity index 96% rename from v2/oauth/customizations/custom-ui.mdx rename to v2/unified-login/customizations/custom-ui.mdx index 5c462f6a0..962327423 100644 --- a/v2/oauth/customizations/custom-ui.mdx +++ b/v2/unified-login/customizations/custom-ui.mdx @@ -145,7 +145,7 @@ If you want to render additional information in the initial login screen you can :::caution -For mobile apps you will have to reuse the web authentication flow. Check this [guide](/docs/oauth/reuse-website-login) for more information. +For mobile apps you will have to reuse the web authentication flow. Check this [guide](/docs/unified-login/reuse-website-login) for more information. ::: @@ -186,7 +186,7 @@ async function refreshToken() { :::caution -For mobile apps you will have to reuse the web authentication flow. Check this [guide](/docs/oauth/reuse-website-login) for more information. +For mobile apps you will have to reuse the web authentication flow. Check this [guide](/docs/unified-login/reuse-website-login) for more information. ::: @@ -226,7 +226,7 @@ async function logout() { :::caution -For mobile apps you will have to reuse the web authentication flow. Check this [guide](/docs/oauth/reuse-website-login) for more information. +For mobile apps you will have to reuse the web authentication flow. Check this [guide](/docs/unified-login/reuse-website-login) for more information. ::: diff --git a/v2/oauth/customizations/verify-tokens.mdx b/v2/unified-login/customizations/verify-tokens.mdx similarity index 100% rename from v2/oauth/customizations/verify-tokens.mdx rename to v2/unified-login/customizations/verify-tokens.mdx diff --git a/v2/oauth/customizations/working-with-scopes.mdx b/v2/unified-login/customizations/working-with-scopes.mdx similarity index 100% rename from v2/oauth/customizations/working-with-scopes.mdx rename to v2/unified-login/customizations/working-with-scopes.mdx diff --git a/v2/oauth/introduction.mdx b/v2/unified-login/introduction.mdx similarity index 86% rename from v2/oauth/introduction.mdx rename to v2/unified-login/introduction.mdx index 91e2cbee0..85d20ab40 100644 --- a/v2/oauth/introduction.mdx +++ b/v2/unified-login/introduction.mdx @@ -3,23 +3,22 @@ title: Introduction hide_title: true --- -# OAuth2 Support +# Unified Login -**OAuth2**, Open Authorization, is an industry-standard authorization framework that enables third-party applications to obtain limited access to a user's resources without exposing their credentials. +If your use case involves having to authenticate different types of applications using a common **Authorization Server** you can achieve this by using **SuperTokens**. +The implementation will involve configuring an **OAuth2 Provider** that will authenticate and authorize your existing clients. -## When to use OAuth2 +## When to use Unified Login -In most cases, when using **SuperTokens**, you should not have to use **OAuth2** directly. -We already expose the **[ThirdParty Recipe](/docs/thirdparty/introduction)** that enables users to login using external providers. -This covers most of the authentication scenarios that involve OAuth2. +There are a couple of common scenarios in which the **Unified Login** approach can be used. +They are outlined below and we provide separate guides for each of them. -However, there are some custom use cases where you will have to implement a different authentication flow. -- **[If you have multiple frontend clients that connect to different backends](/docs/oauth/multiple-frontends-with-separate-backends)** -- **[If you have multiple frontend clients connecting to the same backend](/docs/oauth/multiple-frontends-with-a-single-backend)** -- **[If you want to reuse your website login for desktop and mobile apps](/docs/oauth/reuse-website-login)** -- **[For authenticating microservices](/docs/oauth/machine-to-machine-authentication)** +- **[If you have multiple frontend clients that connect to different backends](/docs/unified-login/multiple-frontends-with-separate-backends)** +- **[If you have multiple frontend clients connecting to the same backend](/docs/unified-login/multiple-frontends-with-a-single-backend)** +- **[If you want to reuse your website login for desktop and mobile apps](/docs/unified-login/reuse-website-login)** +- **[For authenticating microservices](/docs/unified-login/machine-to-machine-authentication)** For these specific instances we expose recipes that allow you to complete your setup. @@ -33,20 +32,25 @@ There are a few limitations with the **OAuth2** recipes: In general, when using the **OAuth2** flows, we recommend cookie-based sessions since they enable smoother authentication flows. ::: + +## OAuth2 Basics + Before we explore the guides let's first recap some common terms and concepts that are the base of the framework. We will use them throughout the next pages. -## OAuth2 Roles +**OAuth2**, Open Authorization, is an industry-standard authorization framework that enables third-party applications to obtain limited access to a user's resources without exposing their credentials. + +### Roles In OAuth, roles define the different responsibilities of entities involved in the process of granting and obtaining access to protected resources. There are four roles defined in the specification: -### Resource Owner +#### Resource Owner The **Resource Owner** is an entity capable of granting access to a protected resource. In most cases, this is an actual person that uses an application. -### Client +#### Client An **OAuth 2.0 Client** is an application that wants to access protected resources. In order to do so it needs to get an [**OAuth2 Access Token**](#oauth2-access-token) from the [**Authorization Server**](#authorization-server). @@ -54,7 +58,7 @@ With that token the client can perform authorized operations on behalf of the [* The term **client** does not imply any particular implementation characteristics (e.g. whether the application executes on a server, a desktop, or other devices). -### Resource Server +#### Resource Server The server hosting the protected resources, capable of accepting and responding to protected resource requests using [**OAuth2 Access Tokens**](#oauth2-access-tokens). Some real-world examples in this case would be things like: @@ -62,18 +66,18 @@ Some real-world examples in this case would be things like: - A social media application that allows users to access only posts from their friends - A chat app that shows only messages from conversations in which the user is a participant -### Authorization Server +#### Authorization Server The server issuing [**OAuth2 Access Tokens**](#oauth2-access-tokens) to the [**Client**](#client) after successfully authenticating the [**Resource Owner**](#resource-owner). -## Tokens +### Tokens Tokens are strings that represent the authorization issued to the [**Client**](#client). They are mainly used to access to protected resources, on behalf of the [**Resource Owner**](#resource-owner). At the same time, tokens can be used to get more information about who the owner is. -### OAuth2 Access Token +#### OAuth2 Access Token This is the main token that is used to provide temporary access to protected resources. The **OAuth2 Access Token** is meant to be read and validated only by the [**Resource Server**](#resource-server). @@ -84,7 +88,7 @@ This token is different from the **SuperTokens Session Access Token**. The latter is used in the **OAuth 2.0** authentication flows to maintain a session between the **authorization frontend** and the **authorization backend server**. ::: -### OAuth2 Refresh Token +#### OAuth2 Refresh Token A token that can be used to get a new [**OAuth2 Access Token**](#oauth2-access-token) when the current one has expired. Using the refresh token will not require the user to re-authenticate. @@ -95,12 +99,12 @@ This token is different from the **SuperTokens Session Refresh Token**. The latter is used in the **OAuth 2.0** authentication flows to maintain a session between the **authorization frontend** and the **authorization backend server**. ::: -### ID Token +#### ID Token This token provides identity information about the [**Resource Owner**](#resource-owner). Unlike [**OAuth2 Access Tokens**](/#oauth2-access-token), the **ID Tokens** are meant to be read only by the [**Client**](#client). -## Scopes +### Scopes Scopes define the range of access that the [**Client**](#client) is requesting on behalf of the [**Resource Owner**](#resource-owner). They specify what portions of the **Resource Owner’s** data the **Client** can access and what actions it can perform. @@ -114,14 +118,14 @@ In a general authentication flow scopes get used in the following way: -## Authorization Flows +### Authorization Flows The **OAuth 2.0** protocol defines several *flows* to accommodate different use cases. They are a set of steps an **OAuth Client** has to perform in order to obtain an access token. Our implementation supports the following flow types: -### [Authorization Code Grant](https://oauth.net/2/grant-types/authorization-code/) +#### [Authorization Code Grant](https://oauth.net/2/grant-types/authorization-code/) Authorization Code Grant @@ -133,13 +137,13 @@ It consists of the following steps: 4. The **Authorization Server** verifies the information sent by the **Client** and, if valid, issues an **OAuth2 Access Token**. 5. The token can now be used to make requests to the **Resource Server** to access the protected resources on behalf of the **Resource Owner**. -#### Authorization Code +##### Authorization Code An **Authorization Code** is a short-lived code that the [**Authorization Server**](/#authorization-server) provides to the [**Client**](/#client), via a **Redirect URI**, after authorization has been granted. This code then gets exchanged for an [**OAuth2 Access Token**](/#oauth2-access-token). The **Authorization Code** flow enhances security by keeping tokens out of the user-agent and letting the [**Client**](/#client) manage the backend communication with the [**Authorization Server**](/#authorization-server). -#### Proof Key for Code Exchange (PKCE) +##### Proof Key for Code Exchange (PKCE) In order to prevent CSRF and code injection attacks, the **Authorization Code flow** can be enhanced with [**PKCE**](https://oauth.net/2/pkce/). @@ -147,7 +151,7 @@ At the beginning of the authentication flow the **Client** will generate a rando This gets used to ensure that, even if the **Authorization Code** is intercepted, it cannot be exchanged for a token without also including the initial code. -### [Client Credentials](https://oauth.net/2/grant-types/client-credentials/) +#### [Client Credentials](https://oauth.net/2/grant-types/client-credentials/) Client Credentials Grant diff --git a/v2/oauth/machine-to-machine-authentication.mdx b/v2/unified-login/machine-to-machine-authentication.mdx similarity index 86% rename from v2/oauth/machine-to-machine-authentication.mdx rename to v2/unified-login/machine-to-machine-authentication.mdx index 92083eb55..95ccd5cef 100644 --- a/v2/oauth/machine-to-machine-authentication.mdx +++ b/v2/unified-login/machine-to-machine-authentication.mdx @@ -19,19 +19,19 @@ You can use the following guide if you want to implement a custom authentication The authentication flow will work in the following way: 1. `Service A` uses credentials to get an **OAuth2 Access Token** -2. [**Authorization Service**](/docs/oauth/introduction#authorization-service) returns the **OAuth2 Access Token** +2. [**Authorization Service**](/docs/unified-login/introduction#authorization-service) returns the **OAuth2 Access Token** 3. `Service A` uses the **OAuth2 Access Token** to communicate with `Service B` 4. `Service B` validates the **OAuth2 Access Token** 5. If the token is valid `Service B` returns the requested resource :::info -This guide assumes that you already have setup and configured **SuperTokens** in your [**Authorization Service**](/docs/oauth/introduction#authorization-service). +This guide assumes that you already have setup and configured **SuperTokens** in your [**Authorization Service**](/docs/unified-login/introduction#authorization-service). For more information on how to do that please check our [quickstart guide](/docs/thirdparty/introduction). ::: - + ## 1. Enable the OAuth2 features from the Dashboard @@ -53,7 +53,7 @@ Now you should be able to use the OAuth2 recipes in your applications. -For each of your **`microservices`** you will have to create a separate [**OAuth2 client**](/docs/oauth/introduction#client). +For each of your **`microservices`** you will have to create a separate [**OAuth2 client**](/docs/unified-login/introduction#client). This can be done by directly calling the **SuperTokens Core** API. @@ -171,7 +171,7 @@ At the moment we do not have support creating OAuth2 providers in the Python SDK ## 4. Generate Access Tokens -Now you can directly call the [**Authorization Server**](/docs/oauth/introduction#authorization-server) to generate Access Tokens. +Now you can directly call the [**Authorization Server**](/docs/unified-login/introduction#authorization-server) to generate Access Tokens. Check the following code snippet to see how you can do that: @@ -217,7 +217,7 @@ Now that you have an **OAuth2 Access Token** you can use it when communicating w Just keep in mind to generate a new one when it expires. The service that will receive the request which includes the **OAuth2 Access Token** will have to verify it. -To see a detailed example of how to do this please check our [separate guide](/docs/oauth/customizations/verify-tokens). +To see a detailed example of how to do this please check our [separate guide](/docs/unified-login/customizations/verify-tokens). diff --git a/v2/oauth/multiple-frontends-with-a-single-backend.mdx b/v2/unified-login/multiple-frontends-with-a-single-backend.mdx similarity index 89% rename from v2/oauth/multiple-frontends-with-a-single-backend.mdx rename to v2/unified-login/multiple-frontends-with-a-single-backend.mdx index 095aa98cf..ea326ce23 100644 --- a/v2/oauth/multiple-frontends-with-a-single-backend.mdx +++ b/v2/unified-login/multiple-frontends-with-a-single-backend.mdx @@ -21,7 +21,7 @@ import TabItem from '@theme/TabItem'; You can use the following guide if you have multiple **`frontend applications`** that use the same **`backend service`**. -Using the actual **OAuth 2.0** terminology, we can say that each **`frontend`** can be considered a [**Client**](/docs/oauth/introduction#client) and the **`backend`** will act as both an [**Authorization Server**](/docs/oauth/introduction#authorization) and a [**Resource Server**](/docs/oauth/introduction#resource-server). +Using the actual **OAuth 2.0** terminology, we can say that each **`frontend`** can be considered a [**Client**](/docs/unified-login/introduction#client) and the **`backend`** will act as both an [**Authorization Server**](/docs/unified-login/introduction#authorization) and a [**Resource Server**](/docs/unified-login/introduction#resource-server). :::info @@ -35,21 +35,21 @@ If your frontend applications are on the same **domain**, but on different **sub The authentication flow will work in the following way: 1. The User accesses the `frontend` app - - The application `frontend` redirects the user to [**Authorization Service**](/docs/oauth/introduction#authorization-service) authorize URL. - - The [**Authorization Service**](/docs/oauth/introduction#authorization-service) backend redirects the user to the login UI + - The application `frontend` redirects the user to [**Authorization Service**](/docs/unified-login/introduction#authorization-service) authorize URL. + - The [**Authorization Service**](/docs/unified-login/introduction#authorization-service) backend redirects the user to the login UI 2. The User completes the login attempt - - The [**Authorization Service**](/docs/oauth/introduction#authorization-service) backend redirects the user to the `callback URL`. + - The [**Authorization Service**](/docs/unified-login/introduction#authorization-service) backend redirects the user to the `callback URL`. 3. The User accesses the callback URL - - The `frontend` uses the callback URL information to obtain a **OAuth2 Access Token** from the [**Authorization Service**](/docs/oauth/introduction#authorization-service). + - The `frontend` uses the callback URL information to obtain a **OAuth2 Access Token** from the [**Authorization Service**](/docs/unified-login/introduction#authorization-service). :::info -This guide assumes that you already have setup and configured **SuperTokens** in your [**Authorization Service**](/docs/oauth/introduction#authorization-service). +This guide assumes that you already have setup and configured **SuperTokens** in your [**Authorization Service**](/docs/unified-login/introduction#authorization-service). For more information on how to do that please check our [quickstart guide](/docs/thirdparty/introduction). ::: - + ## 1. Enable the OAuth2 features from the Dashboard @@ -76,7 +76,7 @@ Now you should be able to use the OAuth2 recipes in your applications. > -For each of your **`frontend`** applications you will have to create a separate [**OAuth2 client**](/docs/oauth/introduction#client). +For each of your **`frontend`** applications you will have to create a separate [**OAuth2 client**](/docs/unified-login/introduction#client). This can be done by directly calling the **SuperTokens Core** API. ```bash @@ -96,15 +96,15 @@ curl -X POST ^{coreInjector_uri_without_quotes}/recipe/oauth/clients \ ``` - `clientName` - A human-readable name of the client that will be used for identification. -- `responseTypes` - Specifies the types of responses your client expects from the [**Authorization Server**](/docs/oauth/introduction#authorization-server). - - `code`: Indicates that the [**Client**](/docs/oauth/introduction#client) will receive an **Authorization Code** that will be exchanged for an [**OAuth2 Access Token**](/docs/oauth/introduction#oauth2-access-token). -- `grantTypes` - The grant types that the [**Client**](/docs/oauth/introduction#client) will use. - - `authorization_code`: Allows exchanging the **Authorization Code** for an [**OAuth2 Access Token**](/docs/oauth/introduction#oauth2-access-token). - - `refresh_token`: Allows exchanging the [**OAuth2 Refresh Token**](/docs/oauth/introduction#oauth2-refresh-token) for a new [**OAuth2 Access Token**](/docs/oauth/introduction#oauth2-access-token). +- `responseTypes` - Specifies the types of responses your client expects from the [**Authorization Server**](/docs/unified-login/introduction#authorization-server). + - `code`: Indicates that the [**Client**](/docs/unified-login/introduction#client) will receive an **Authorization Code** that will be exchanged for an [**OAuth2 Access Token**](/docs/unified-login/introduction#oauth2-access-token). +- `grantTypes` - The grant types that the [**Client**](/docs/unified-login/introduction#client) will use. + - `authorization_code`: Allows exchanging the **Authorization Code** for an [**OAuth2 Access Token**](/docs/unified-login/introduction#oauth2-access-token). + - `refresh_token`: Allows exchanging the [**OAuth2 Refresh Token**](/docs/unified-login/introduction#oauth2-refresh-token) for a new [**OAuth2 Access Token**](/docs/unified-login/introduction#oauth2-access-token). - `tokenEndpointAuthMethod` - Indicates that the process of obtaining an **OAuth2 Access Token** will not make use of the client secret -- `redirectUri` - A list of URIs to which the [**Authorization Server**](/docs/oauth/introduction#authorization-server) will send the user-agent (browser) after completing the authorization step. These can be deep links to mobile or desktop apps as well, but they must be exact URLs, without wildcards. -- `scope` - A space separated string of scopes that the [**Client**](/docs/oauth/introduction#client) will request access to. - - `offline_access`: You need to include this scope if you want to use the [**OAuth2 Refresh Token**](/docs/oauth/introduction#oauth2-refresh-token) to get a new [**OAuth2 Access Token**](/docs/oauth/introduction#oauth2-access-token). +- `redirectUri` - A list of URIs to which the [**Authorization Server**](/docs/unified-login/introduction#authorization-server) will send the user-agent (browser) after completing the authorization step. These can be deep links to mobile or desktop apps as well, but they must be exact URLs, without wildcards. +- `scope` - A space separated string of scopes that the [**Client**](/docs/unified-login/introduction#client) will request access to. + - `offline_access`: You need to include this scope if you want to use the [**OAuth2 Refresh Token**](/docs/unified-login/introduction#oauth2-refresh-token) to get a new [**OAuth2 Access Token**](/docs/unified-login/introduction#oauth2-access-token). If the creation was successful, the API will return a response that looks like this: @@ -126,17 +126,17 @@ In the next steps we will use the values to complete several configurations. ::: - + ### Change the default token lifespan By default, the tokens used in the authorization flow will have the following lifespans: - - [OAuth2 Access Token](/docs/oauth/introduction#oauth2-access-token): 1 hour - - [OAuth2 ID Token](/docs/oauth/introduction#oauth2-id-token): 1 hour - - [OAuth2 Refresh Token](/docs/oauth/introduction#oauth2-refresh-token): 30 days + - [OAuth2 Access Token](/docs/unified-login/introduction#oauth2-access-token): 1 hour + - [OAuth2 ID Token](/docs/unified-login/introduction#oauth2-id-token): 1 hour + - [OAuth2 Refresh Token](/docs/unified-login/introduction#oauth2-refresh-token): 30 days -If you want to change the default values you need to specify additional properties in the [**Client**](/docs/oauth/introduction#client) creation request body. +If you want to change the default values you need to specify additional properties in the [**Client**](/docs/unified-login/introduction#client) creation request body. Use string values that signify time duration in milliecoseconds, seconds, minutes or hours (e.g. `"2000ms"`, `"60s"`, `"30m"`, `"1h"`). There are no limits on the duration of each token. @@ -147,15 +147,15 @@ There are no limits on the duration of each token. - + ### Disable Refresh Token Expiry By default, the **OAuth2 Refresh Token** wil expire after 30 days. -If your use case cannot accomodate the process of changing the [**OAuth2 Refresh Token**](/docs/oauth/introduction#oauth2-refresh-token) for a new one, you can make it so that it does not expire. +If your use case cannot accomodate the process of changing the [**OAuth2 Refresh Token**](/docs/unified-login/introduction#oauth2-refresh-token) for a new one, you can make it so that it does not expire. -In order to achieve this behavior just set the `enableRefreshTokenRotation` property to `false` in the [**Client**](/docs/oauth/introduction#client) creation request body. +In order to achieve this behavior just set the `enableRefreshTokenRotation` property to `false` in the [**Client**](/docs/unified-login/introduction#client) creation request body. @@ -164,7 +164,7 @@ In order to achieve this behavior just set the `enableRefreshTokenRotation` prop ### Initialize the OAuth2 Recipes -In your [**Authorization Service**](/docs/oauth/introduction#authorization-service) you will need to initialize the **OAuth2Provider** recipe. +In your [**Authorization Service**](/docs/unified-login/introduction#authorization-service) you will need to initialize the **OAuth2Provider** recipe. @@ -419,7 +419,7 @@ Initialize the `OAuth2Provider` recipe on the frontend of your **Authorization S :::info -If you want to use your own custom UI check our [separate guide](/docs/oauth/customizations/custom-ui) that explains +If you want to use your own custom UI check our [separate guide](/docs/unified-login/customizations/custom-ui) that explains all the steps that you have to take into account. ::: @@ -895,7 +895,7 @@ To do this just set the `extraQueryParams` property with a specific value that s :::info -If you want to use the [**OAuth2 Refresh Tokens**](/docs/oauth/introduction#oauth2-refresh-token) make sure to include the `offline_access` scope during the initialization step. +If you want to use the [**OAuth2 Refresh Tokens**](/docs/unified-login/introduction#oauth2-refresh-token) make sure to include the `offline_access` scope during the initialization step. ::: diff --git a/v2/oauth/multiple-frontends-with-separate-backends.mdx b/v2/unified-login/multiple-frontends-with-separate-backends.mdx similarity index 83% rename from v2/oauth/multiple-frontends-with-separate-backends.mdx rename to v2/unified-login/multiple-frontends-with-separate-backends.mdx index a9a078f34..9a7f150c8 100644 --- a/v2/oauth/multiple-frontends-with-separate-backends.mdx +++ b/v2/unified-login/multiple-frontends-with-separate-backends.mdx @@ -13,9 +13,9 @@ import TabItem from '@theme/TabItem'; # Multiple frontend domains with separate backends -You can use the following guide if you have a single [**Authorization Service**](/docs/oauth/introduction#authorization-service) that is used by multiple applications. +You can use the following guide if you have a single [**Authorization Service**](/docs/unified-login/introduction#authorization-service) that is used by multiple applications. In turn, each app has separate **`frontend `** and **`backend`** instances that are served from different domains. -Using the actual **OAuth 2.0** terminology, each application can be considered a [**Client**](/docs/oauth/introduction#client) while the **`backends`** are also [**Resource Servers**](/docs/oauth/introduction#resource-server). +Using the actual **OAuth 2.0** terminology, each application can be considered a [**Client**](/docs/unified-login/introduction#client) while the **`backends`** are also [**Resource Servers**](/docs/unified-login/introduction#resource-server). :::info @@ -29,26 +29,26 @@ The authentication flow will work in the following way: 1. The User accesses the `frontend` app - The application `frontend` calls a login endpoint on the `backend` application. - - The `backend` application generates an `authorization` URL to the [**Authorization Service**](/docs/oauth/introduction#authorization-service) and redirects the user to it. - - The [**Authorization Service**](/docs/oauth/introduction#authorization-service) backend redirects the user to the login UI + - The `backend` application generates an `authorization` URL to the [**Authorization Service**](/docs/unified-login/introduction#authorization-service) and redirects the user to it. + - The [**Authorization Service**](/docs/unified-login/introduction#authorization-service) backend redirects the user to the login UI 2. The User completes the login attempt - - The [**Authorization Service**](/docs/oauth/introduction#authorization-service) backend redirects the user to a `callback URL` that includes the **Authorization Code**. + - The [**Authorization Service**](/docs/unified-login/introduction#authorization-service) backend redirects the user to a `callback URL` that includes the **Authorization Code**. 3. The User accesses the callback URL - The **Authentication Code** gets sent to the application `backend` - - The `backend` exchanges the **Authentication Code** for an [**OAuth2 Access Token**](/docs/oauth/introduction#oauth2-access-token) + - The `backend` exchanges the **Authentication Code** for an [**OAuth2 Access Token**](/docs/unified-login/introduction#oauth2-access-token) - The `backend` saves the received token in a server session and sends it back to the `frontend` as a cookie. The `frontend` can now use the new cookie to access protected resources from the `backend`. :::info -This guide assumes that you already have setup and configured **SuperTokens** in your [**Authorization Service**](/docs/oauth/introduction#authorization-service). +This guide assumes that you already have setup and configured **SuperTokens** in your [**Authorization Service**](/docs/unified-login/introduction#authorization-service). For more information on how to do that please check our [quickstart guides](/docs/guides). ::: - + ## 1. Enable the OAuth2 features from the Dashboard @@ -74,7 +74,7 @@ Now you should be able to use the OAuth2 recipes in your applications. askForWebsiteDomain > -For each of your applications you will have to create a separate [**OAuth2 client**](/docs/oauth/introduction#client). +For each of your applications you will have to create a separate [**OAuth2 client**](/docs/unified-login/introduction#client). This can be done by directly calling the **SuperTokens Core** API. ```bash @@ -94,15 +94,15 @@ curl -X POST ^{coreInjector_uri_without_quotes}/recipe/oauth2/admin/clients \ - `clientName` - A human-readable name of the client that will be used for identification. -- `responseTypes` - Specifies the types of responses your client expects from the [**Authorization Server**](/docs/oauth/introduction#authorization-server). Most of the time, you would need the following two to be present: - - `code`: Indicates that the [**Client**](/docs/oauth/introduction#client) will receive an **Authorization Code** that will be exchanged for an [**OAuth2 Access Token**](/docs/oauth/introduction#oauth2-access-token). - - `idToken`: Indicates that the [**Client**](/docs/oauth/introduction#client) expects an [**ID Token**](/docs/oauth/introduction#id-token) -- `grantTypes` - The grant types that the [**Client**](/docs/oauth/introduction#client) will use. - - `authorization_code`: Allows exchanging the **Authorization Code** for an [**OAuth2 Access Token**](/docs/oauth/introduction#oauth2-access-token). - - `refresh_token`: Allows exchanging the [**OAuth2 Refresh Token**](/docs/oauth/introduction#oauth2-refresh-token) for a new [**OAuth2 Access Token**](/docs/oauth/introduction#oauth2-access-token). -- `redirectUri` - A list of URIs to which the [**Authorization Server**](/docs/oauth/introduction#authorization-server) will send the user-agent (browser) after completing the authorization step. These can be deep links to mobile or desktop apps as well, but they must be exact URLs, without wildcards. -- `scope` - A space separated string of scopes that the [**Client**](/docs/oauth/introduction#client) will request access to. - - `offline_access`: You need to include this scope if you want to use the [**OAuth2 Refresh Token**](/docs/oauth/introduction#oauth2-refresh-token) to get a new [**OAuth2 Access Token**](/docs/oauth/introduction#oauth2-access-token). +- `responseTypes` - Specifies the types of responses your client expects from the [**Authorization Server**](/docs/unified-login/introduction#authorization-server). Most of the time, you would need the following two to be present: + - `code`: Indicates that the [**Client**](/docs/unified-login/introduction#client) will receive an **Authorization Code** that will be exchanged for an [**OAuth2 Access Token**](/docs/unified-login/introduction#oauth2-access-token). + - `idToken`: Indicates that the [**Client**](/docs/unified-login/introduction#client) expects an [**ID Token**](/docs/unified-login/introduction#id-token) +- `grantTypes` - The grant types that the [**Client**](/docs/unified-login/introduction#client) will use. + - `authorization_code`: Allows exchanging the **Authorization Code** for an [**OAuth2 Access Token**](/docs/unified-login/introduction#oauth2-access-token). + - `refresh_token`: Allows exchanging the [**OAuth2 Refresh Token**](/docs/unified-login/introduction#oauth2-refresh-token) for a new [**OAuth2 Access Token**](/docs/unified-login/introduction#oauth2-access-token). +- `redirectUri` - A list of URIs to which the [**Authorization Server**](/docs/unified-login/introduction#authorization-server) will send the user-agent (browser) after completing the authorization step. These can be deep links to mobile or desktop apps as well, but they must be exact URLs, without wildcards. +- `scope` - A space separated string of scopes that the [**Client**](/docs/unified-login/introduction#client) will request access to. + - `offline_access`: You need to include this scope if you want to use the [**OAuth2 Refresh Token**](/docs/unified-login/introduction#oauth2-refresh-token) to get a new [**OAuth2 Access Token**](/docs/unified-login/introduction#oauth2-access-token). If the creation was successful, the API will return a response that looks like this: @@ -130,17 +130,17 @@ In the next steps we will use the values to complete several configurations. ::: - + ### Change the default token lifespan By default, the tokens used in the authorization flow will have the following lifespans: - - [OAuth2 Access Token](/docs/oauth/introduction#oauth2-access-token): 1 hour - - [OAuth2 ID Token](/docs/oauth/introduction#oauth2-id-token): 1 hour - - [OAuth2 Refresh Token](/docs/oauth/introduction#oauth2-refresh-token): 30 days + - [OAuth2 Access Token](/docs/unified-login/introduction#oauth2-access-token): 1 hour + - [OAuth2 ID Token](/docs/unified-login/introduction#oauth2-id-token): 1 hour + - [OAuth2 Refresh Token](/docs/unified-login/introduction#oauth2-refresh-token): 30 days -If you want to change the default values you need to specify additional properties in the [**Client**](/docs/oauth/introduction#client) creation request body. +If you want to change the default values you need to specify additional properties in the [**Client**](/docs/unified-login/introduction#client) creation request body. Use string values that signify time duration in milliecoseconds, seconds, minutes or hours (e.g. `"2000ms"`, `"60s"`, `"30m"`, `"1h"`). There are no limits on the duration of each token. @@ -152,15 +152,15 @@ There are no limits on the duration of each token. - + ### Disable Refresh Token Expiry By default, the **OAuth2 Refresh Token** wil expire after 30 days. -If your use case cannot accomodate the process of changing the [**OAuth2 Refresh Token**](/docs/oauth/introduction#oauth2-refresh-token) for a new one, you can make it so that it does not expire. +If your use case cannot accomodate the process of changing the [**OAuth2 Refresh Token**](/docs/unified-login/introduction#oauth2-refresh-token) for a new one, you can make it so that it does not expire. -In order to achieve this behavior just set the `enableRefreshTokenRotation` property to `false` in the [**Client**](/docs/oauth/introduction#client) creation request body. +In order to achieve this behavior just set the `enableRefreshTokenRotation` property to `false` in the [**Client**](/docs/unified-login/introduction#client) creation request body. @@ -169,8 +169,8 @@ In order to achieve this behavior just set the `enableRefreshTokenRotation` prop ### Configure the Authorization Service Backend -In your [**Authorization Service**](/docs/oauth/introduction#authorization-service) you will need to initialize the **OAuth2Provider** recipe. -The recipe will expose the endpoints needed for enabling the [**OAuth 2.0**](/docs/oauth/introduction#oauth-20) flow. +In your [**Authorization Service**](/docs/unified-login/introduction#authorization-service) you will need to initialize the **OAuth2Provider** recipe. +The recipe will expose the endpoints needed for enabling the [**OAuth 2.0**](/docs/unified-login/introduction#oauth-20) flow. @@ -233,7 +233,7 @@ Initialize the `OAuth2Provider` recipe on the frontend of your **Authorization S :::info -If you want to use your own custom UI check our [separate guide](/docs/oauth/customizations/custom-ui) that explains +If you want to use your own custom UI check our [separate guide](/docs/unified-login/customizations/custom-ui) that explains all the steps that you have to take into account. ::: @@ -593,7 +593,7 @@ This way the user will end up accessing the actual login page served by the **Au :::info -If you want to use the [**OAuth2 Refresh Tokens**](/docs/oauth/introduction#oauth2-refresh-token) make sure to include the `offline_access` scope during the initialization step. +If you want to use the [**OAuth2 Refresh Tokens**](/docs/unified-login/introduction#oauth2-refresh-token) make sure to include the `offline_access` scope during the initialization step. ::: @@ -603,7 +603,7 @@ In your `frontend` applications you will have to add a login action that will di The user should first be redirected to the `backend` authentication endpoint that was defined during the previous step. There the `backend` will generate a safe `authorization` URL using the **OAuth2** library and then redirect the user there. -After the user has logged in from the [**Authorization Service**](/docs/oauth/introduction#authorization-service) they will be redirected to the `backend` callback URL. +After the user has logged in from the [**Authorization Service**](/docs/unified-login/introduction#authorization-service) they will be redirected to the `backend` callback URL. Then the authentication session will be created and the `backend` will send it to the user agent as a cookie. ## 6. Test the new authentication flow diff --git a/v2/oauth/reuse-website-login.mdx b/v2/unified-login/reuse-website-login.mdx similarity index 73% rename from v2/oauth/reuse-website-login.mdx rename to v2/unified-login/reuse-website-login.mdx index 679e99011..11b5af82a 100644 --- a/v2/oauth/reuse-website-login.mdx +++ b/v2/unified-login/reuse-website-login.mdx @@ -24,22 +24,22 @@ Users will be directed to a separate browser page where they will complete the a The authentication flow will work in the following way: 1. User accesses the native application -2. The user gets redirected to [**Authorization Service**](/docs/oauth/introduction#authorization-service) authentication url. -3. The [**Authorization Service**](/docs/oauth/introduction#authorization-service) redirects the user to the login UI +2. The user gets redirected to [**Authorization Service**](/docs/unified-login/introduction#authorization-service) authentication url. +3. The [**Authorization Service**](/docs/unified-login/introduction#authorization-service) redirects the user to the login UI 4. User completes the login attempt -5. The [**Authorization Service**](/docs/oauth/introduction#authorization-service) backend redirects the user to the `callback URL`. +5. The [**Authorization Service**](/docs/unified-login/introduction#authorization-service) backend redirects the user to the `callback URL`. This URL should be a deep link that can be opened by your actual application. -6. The application uses the callback URL information to request a **OAuth2 Access Token** from the [**Authorization Service**](/docs/oauth/introduction#authorization-service). +6. The application uses the callback URL information to request a **OAuth2 Access Token** from the [**Authorization Service**](/docs/unified-login/introduction#authorization-service). 7. The returned token is saved by the application. :::info -This guide assumes that you already have setup and configured **SuperTokens** in your [**Authentication Service**](/docs/oauth/introduction#authentication-service). +This guide assumes that you already have setup and configured **SuperTokens** in your [**Authentication Service**](/docs/unified-login/introduction#authentication-service). For more information on how to do that please check our [quickstart guides](/docs/guides). ::: - + ## 1. Enable the OAuth2 features from the Dashboard @@ -66,7 +66,7 @@ Now you should be able to use the OAuth2 recipes in your applications. askForWebsiteDomain > -For each of your **`applications`** you will have to create a separate [**OAuth2 Client**](/docs/oauth/introduction#client). +For each of your **`applications`** you will have to create a separate [**OAuth2 Client**](/docs/unified-login/introduction#client). This can be done by directly calling the **SuperTokens Core** API. @@ -87,16 +87,16 @@ curl -X POST ^{coreInjector_uri_without_quotes}/recipe/oauth2/admin/clients \ ``` - `clientName` - A human-readable name of the client that will be used for identification. -- `responseTypes` - Specifies the types of responses your client expects from the [**Authorization Server**](/docs/oauth/introduction#authorization-server). Most of the time, you would need the following two to be present: - - `code`: Indicates that the [**Client**](/docs/oauth/introduction#client) will receive an **Authorization Code** that will be exchanged for an [**OAuth2 Access Token**](/docs/oauth/introduction#oauth2-access-token). - - `id_token`: Indicates that the [**Client**](/docs/oauth/introduction#client) expects an [**ID Token**](/docs/oauth/introduction#id-token) -- `grantTypes` - The grant types that the [**Client**](/docs/oauth/introduction#client) will use. - - `authorization_code`: Allows exchanging the **Authorization Code** for an [**OAuth2 Access Token**](/docs/oauth/introduction#oauth2-access-token). - - `refresh_token`: Allows exchanging the [**OAuth2 Refresh Token**](/docs/oauth/introduction#oauth2-refresh-token) for a new [**OAuth2 Access Token**](/docs/oauth/introduction#oauth2-access-token). +- `responseTypes` - Specifies the types of responses your client expects from the [**Authorization Server**](/docs/unified-login/introduction#authorization-server). Most of the time, you would need the following two to be present: + - `code`: Indicates that the [**Client**](/docs/unified-login/introduction#client) will receive an **Authorization Code** that will be exchanged for an [**OAuth2 Access Token**](/docs/unified-login/introduction#oauth2-access-token). + - `id_token`: Indicates that the [**Client**](/docs/unified-login/introduction#client) expects an [**ID Token**](/docs/unified-login/introduction#id-token) +- `grantTypes` - The grant types that the [**Client**](/docs/unified-login/introduction#client) will use. + - `authorization_code`: Allows exchanging the **Authorization Code** for an [**OAuth2 Access Token**](/docs/unified-login/introduction#oauth2-access-token). + - `refresh_token`: Allows exchanging the [**OAuth2 Refresh Token**](/docs/unified-login/introduction#oauth2-refresh-token) for a new [**OAuth2 Access Token**](/docs/unified-login/introduction#oauth2-access-token). - `tokenEndpointAuthMethod` - Indicates that the process of obtaining an **OAuth2 Access Token** will not make use of the client secret -- `redirectUri` - A list of URIs to which the [**Authorization Server**](/docs/oauth/introduction#authorization-server) will send the user-agent (browser) after completing the authorization step. These can be deep links to mobile or desktop apps as well, but they must be exact URLs, without wildcards. -- `scope` - A space separated string of scopes that the [**Client**](/docs/oauth/introduction#client) will request access to. - - `offline_access`: You need to include this scope if you want to use the [**OAuth2 Refresh Token**](/docs/oauth/introduction#oauth2-refresh-token) to get a new [**OAuth2 Access Token**](/docs/oauth/introduction#oauth2-access-token). +- `redirectUri` - A list of URIs to which the [**Authorization Server**](/docs/unified-login/introduction#authorization-server) will send the user-agent (browser) after completing the authorization step. These can be deep links to mobile or desktop apps as well, but they must be exact URLs, without wildcards. +- `scope` - A space separated string of scopes that the [**Client**](/docs/unified-login/introduction#client) will request access to. + - `offline_access`: You need to include this scope if you want to use the [**OAuth2 Refresh Token**](/docs/unified-login/introduction#oauth2-refresh-token) to get a new [**OAuth2 Access Token**](/docs/unified-login/introduction#oauth2-access-token). If the creation was successful, the API will return a response that looks like this: @@ -122,17 +122,17 @@ In the next steps we will use the values to complete several configurations. ::: - + ### Change the default token lifespan By default, the tokens used in the authorization flow will have the following lifespans: - - [OAuth2 Access Token](/docs/oauth/introduction#oauth2-access-token): 1 hour - - [OAuth2 ID Token](/docs/oauth/introduction#oauth2-id-token): 1 hour - - [OAuth2 Refresh Token](/docs/oauth/introduction#oauth2-refresh-token): 30 days + - [OAuth2 Access Token](/docs/unified-login/introduction#oauth2-access-token): 1 hour + - [OAuth2 ID Token](/docs/unified-login/introduction#oauth2-id-token): 1 hour + - [OAuth2 Refresh Token](/docs/unified-login/introduction#oauth2-refresh-token): 30 days -If you want to change the default values you need to specify additional properties in the [**Client**](/docs/oauth/introduction#client) creation request body. +If you want to change the default values you need to specify additional properties in the [**Client**](/docs/unified-login/introduction#client) creation request body. Use string values that signify time duration in milliecoseconds, seconds, minutes or hours (e.g. `"2000ms"`, `"60s"`, `"30m"`, `"1h"`). There are no limits on the duration of each token. @@ -144,9 +144,9 @@ There are no limits on the duration of each token. ## 3. Make sure that you have properly configured the Authorization Service -If you have not set up the [**Authorization Service**](/docs/oauth/introduction#authorization-service) yet, please check one of the previous guides based whether you use multiple backend service: -- [Single Backend Setup](/docs/oauth/multiple-frontends-with-a-single-backend#3-set-up-your-authorization-service-backend) -- [Multiple Backends Setup](/docs/oauth/multiple-frontends-with-separate-backends#3-set-up-your-authorization-service) +If you have not set up the [**Authorization Service**](/docs/unified-login/introduction#authorization-service) yet, please check one of the previous guides based whether you use multiple backend service: +- [Single Backend Setup](/docs/unified-login/multiple-frontends-with-a-single-backend#3-set-up-your-authorization-service-backend) +- [Multiple Backends Setup](/docs/unified-login/multiple-frontends-with-separate-backends#3-set-up-your-authorization-service) ## 4. Update the login flow in your applications @@ -222,7 +222,7 @@ The configuration parameters can be determined based on the response that we rec :::info -If you want to use the [**OAuth2 Refresh Tokens**](/docs/oauth/introduction#oauth2-refresh-token) make sure to include the `offline_access` scope during the initialization step. +If you want to use the [**OAuth2 Refresh Tokens**](/docs/unified-login/introduction#oauth2-refresh-token) make sure to include the `offline_access` scope during the initialization step. ::: diff --git a/v2/oauth/sidebars.js b/v2/unified-login/sidebars.js similarity index 100% rename from v2/oauth/sidebars.js rename to v2/unified-login/sidebars.js From e0a5d05260fa3ee45517c049eb5ee2f0e0b0ac3d Mon Sep 17 00:00:00 2001 From: Bogdan Carpusor Date: Fri, 18 Oct 2024 16:06:29 +0100 Subject: [PATCH 20/33] Add additional explanations --- .../sessions/claims/access-token-payload.mdx | 8 ++++++++ .../sessions/claims/claim-validators.mdx | 8 ++++++++ .../verify-session.mdx | 8 ++++++++ .../sessions/with-jwt/jwt-verification.mdx | 8 ++++++++ v2/emailpassword/custom-ui/securing-routes.mdx | 8 ++++++++ .../pre-built-ui/securing-routes.mdx | 16 ++++++++++++++++ v2/mfa/step-up-auth.mdx | 6 ++++++ .../sessions/claims/access-token-payload.mdx | 8 ++++++++ .../sessions/claims/claim-validators.mdx | 8 ++++++++ .../verify-session.mdx | 8 ++++++++ .../sessions/with-jwt/jwt-verification.mdx | 8 ++++++++ v2/passwordless/custom-ui/securing-routes.mdx | 8 ++++++++ .../pre-built-ui/securing-routes.mdx | 16 ++++++++++++++++ .../sessions/claims/access-token-payload.mdx | 10 +++++++++- .../sessions/claims/claim-validators.mdx | 8 ++++++++ .../verify-session.mdx | 10 +++++++++- .../sessions/with-jwt/jwt-verification.mdx | 10 +++++++++- .../sessions/claims/access-token-payload.mdx | 8 ++++++++ .../sessions/claims/claim-validators.mdx | 8 ++++++++ .../verify-session.mdx | 8 ++++++++ .../sessions/with-jwt/jwt-verification.mdx | 8 ++++++++ v2/thirdparty/custom-ui/securing-routes.mdx | 8 ++++++++ v2/thirdparty/pre-built-ui/securing-routes.mdx | 16 ++++++++++++++++ .../sessions/claims/access-token-payload.mdx | 8 ++++++++ .../sessions/claims/claim-validators.mdx | 8 ++++++++ .../verify-session.mdx | 8 ++++++++ .../sessions/with-jwt/jwt-verification.mdx | 8 ++++++++ .../custom-ui/securing-routes.mdx | 8 ++++++++ .../pre-built-ui/securing-routes.mdx | 16 ++++++++++++++++ .../sessions/claims/access-token-payload.mdx | 8 ++++++++ .../sessions/claims/claim-validators.mdx | 8 ++++++++ .../verify-session.mdx | 8 ++++++++ .../sessions/with-jwt/jwt-verification.mdx | 8 ++++++++ .../custom-ui/securing-routes.mdx | 8 ++++++++ .../pre-built-ui/securing-routes.mdx | 16 ++++++++++++++++ .../customizations/verify-tokens.mdx | 17 ++++++++++++++--- .../machine-to-machine-authentication.mdx | 2 ++ 37 files changed, 337 insertions(+), 6 deletions(-) diff --git a/v2/emailpassword/common-customizations/sessions/claims/access-token-payload.mdx b/v2/emailpassword/common-customizations/sessions/claims/access-token-payload.mdx index ac18be4b9..b958ca535 100644 --- a/v2/emailpassword/common-customizations/sessions/claims/access-token-payload.mdx +++ b/v2/emailpassword/common-customizations/sessions/claims/access-token-payload.mdx @@ -22,6 +22,14 @@ import FrontendReactContextSubTabs from "/src/components/tabs/FrontendReactConte # Option 1. Using the access token payload +:::caution + +This guide describes how to add custom claims to **SuperTokens Access Tokens**. + +If you are implementing [**Unified Login**](/docs/unified-login/introduction), which makes use of **OAuth2 Access Tokens**, you will have to check the separate [guide](/docs/unified-login/customizations/add-custom-claims-in-tokens). + +::: + ## Add custom claims to the access token payload :::important diff --git a/v2/emailpassword/common-customizations/sessions/claims/claim-validators.mdx b/v2/emailpassword/common-customizations/sessions/claims/claim-validators.mdx index 2a7b59a42..3f89d1bac 100644 --- a/v2/emailpassword/common-customizations/sessions/claims/claim-validators.mdx +++ b/v2/emailpassword/common-customizations/sessions/claims/claim-validators.mdx @@ -23,6 +23,14 @@ import FrontendReactContextSubTabs from "/src/components/tabs/FrontendReactConte # Option 2. Using claim validators +:::caution + +This guide describes how to add custom claims to **SuperTokens Access Tokens**. + +If you are implementing [**Unified Login**](/docs/unified-login/introduction), which makes use of **OAuth2 Access Tokens**, you will have to check the separate [guide](/docs/unified-login/customizations/add-custom-claims-in-tokens). + +::: + ## What are session claims? SuperTokens session has a property called `accessTokenPayload`. This is a `JSON` object that's stored in a user's session which can be accessed on the frontend and backend. The key-values in this JSON payload are called claims. diff --git a/v2/emailpassword/common-customizations/sessions/session-verification-in-api/verify-session.mdx b/v2/emailpassword/common-customizations/sessions/session-verification-in-api/verify-session.mdx index f176eab66..1a9351a51 100644 --- a/v2/emailpassword/common-customizations/sessions/session-verification-in-api/verify-session.mdx +++ b/v2/emailpassword/common-customizations/sessions/session-verification-in-api/verify-session.mdx @@ -14,6 +14,14 @@ import GoFrameworkSubTabs from "/src/components/tabs/GoFrameworkSubTabs" ## Verifying a session using the `verifySession` middleware +:::caution + +The `verifySession` middleware can only be used in scenarios that involve **SuperTokens Access Tokens**. + +If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, you will have to [manually](/docs/unified-login/customizations/verify-tokens) validate tokens. + +::: + For your APIs that require a user to be logged in, use the `verifySession` middleware: diff --git a/v2/emailpassword/common-customizations/sessions/with-jwt/jwt-verification.mdx b/v2/emailpassword/common-customizations/sessions/with-jwt/jwt-verification.mdx index d1d014c9c..d48165d61 100644 --- a/v2/emailpassword/common-customizations/sessions/with-jwt/jwt-verification.mdx +++ b/v2/emailpassword/common-customizations/sessions/with-jwt/jwt-verification.mdx @@ -23,6 +23,14 @@ There are three steps in doing session verification using JWTs: - Check for custom claim values for authorization. - Preventing CSRF attacks in case you are using cookies to store the JWT. +:::caution + +This guide only applies to scenarios in which you are using **SuperTokens Access Tokens**. + +If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, please check the [separate page](/docs/unified-login/customizations/verify-tokens) that shows you how to verify those types of tokens. + +::: + ## Verifying a JWT using a jwt verification library diff --git a/v2/emailpassword/custom-ui/securing-routes.mdx b/v2/emailpassword/custom-ui/securing-routes.mdx index da7bd215d..be6ff39e1 100644 --- a/v2/emailpassword/custom-ui/securing-routes.mdx +++ b/v2/emailpassword/custom-ui/securing-routes.mdx @@ -25,6 +25,14 @@ import FrontendMobileSubTabs from "/src/components/tabs/FrontendMobileSubTabs" +:::caution + +This guide only applies to scenarios in which you are using **SuperTokens Access Tokens**. + +If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, please check the [separate page](/docs/unified-login/customizations/verify-tokens) that shows you how to verify those types of tokens. + +::: + ### Requiring an active session For your APIs that require a user to be logged in, use the `verifySession` middleware diff --git a/v2/emailpassword/pre-built-ui/securing-routes.mdx b/v2/emailpassword/pre-built-ui/securing-routes.mdx index b99528e9e..5dfc65c35 100644 --- a/v2/emailpassword/pre-built-ui/securing-routes.mdx +++ b/v2/emailpassword/pre-built-ui/securing-routes.mdx @@ -24,6 +24,14 @@ import RRDVersionSubTabs from "/src/components/tabs/RRDVersionSubTabs" +:::caution + +This guide only applies to scenarios in which you are using **SuperTokens Access Tokens**. + +If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, please check the [separate page](/docs/unified-login/customizations/verify-tokens) that shows you how to verify those types of tokens. + +::: + ### Requiring an active session For your APIs that require a user to be logged in, use the `verifySession` middleware @@ -446,6 +454,14 @@ For authentication between microservices on your backend, checkout the [microser +:::caution + +These instructions only apply to scenarios in which you are using **SuperTokens Access Tokens**. + +If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, please check the [specific use case page](/docs/unified-login/introduction#when-to-use-unified-login) for relevant information. + +::: + diff --git a/v2/mfa/step-up-auth.mdx b/v2/mfa/step-up-auth.mdx index cb34597ee..f863c4d0c 100644 --- a/v2/mfa/step-up-auth.mdx +++ b/v2/mfa/step-up-auth.mdx @@ -31,6 +31,12 @@ SuperTokens allows you to implement step up auth using the following factors: You can implement these as full page navigations, or as popups on the current page. +:::caution + +If you are using **OAuth2** in your configuration, step up authentication is not supported at the moment. + +::: + ## Step 1) Adding backend validators To protect sensitive APIs with step up auth, you need to check that the user has completed the required auth challenge within a certain amount of time. If they haven't, you should return a `403` to the frontend which highlights which factor is required. The frontend can then consume this and show the auth challenge to the user. diff --git a/v2/passwordless/common-customizations/sessions/claims/access-token-payload.mdx b/v2/passwordless/common-customizations/sessions/claims/access-token-payload.mdx index ac18be4b9..b958ca535 100644 --- a/v2/passwordless/common-customizations/sessions/claims/access-token-payload.mdx +++ b/v2/passwordless/common-customizations/sessions/claims/access-token-payload.mdx @@ -22,6 +22,14 @@ import FrontendReactContextSubTabs from "/src/components/tabs/FrontendReactConte # Option 1. Using the access token payload +:::caution + +This guide describes how to add custom claims to **SuperTokens Access Tokens**. + +If you are implementing [**Unified Login**](/docs/unified-login/introduction), which makes use of **OAuth2 Access Tokens**, you will have to check the separate [guide](/docs/unified-login/customizations/add-custom-claims-in-tokens). + +::: + ## Add custom claims to the access token payload :::important diff --git a/v2/passwordless/common-customizations/sessions/claims/claim-validators.mdx b/v2/passwordless/common-customizations/sessions/claims/claim-validators.mdx index 2a7b59a42..3f89d1bac 100644 --- a/v2/passwordless/common-customizations/sessions/claims/claim-validators.mdx +++ b/v2/passwordless/common-customizations/sessions/claims/claim-validators.mdx @@ -23,6 +23,14 @@ import FrontendReactContextSubTabs from "/src/components/tabs/FrontendReactConte # Option 2. Using claim validators +:::caution + +This guide describes how to add custom claims to **SuperTokens Access Tokens**. + +If you are implementing [**Unified Login**](/docs/unified-login/introduction), which makes use of **OAuth2 Access Tokens**, you will have to check the separate [guide](/docs/unified-login/customizations/add-custom-claims-in-tokens). + +::: + ## What are session claims? SuperTokens session has a property called `accessTokenPayload`. This is a `JSON` object that's stored in a user's session which can be accessed on the frontend and backend. The key-values in this JSON payload are called claims. diff --git a/v2/passwordless/common-customizations/sessions/session-verification-in-api/verify-session.mdx b/v2/passwordless/common-customizations/sessions/session-verification-in-api/verify-session.mdx index f176eab66..1a9351a51 100644 --- a/v2/passwordless/common-customizations/sessions/session-verification-in-api/verify-session.mdx +++ b/v2/passwordless/common-customizations/sessions/session-verification-in-api/verify-session.mdx @@ -14,6 +14,14 @@ import GoFrameworkSubTabs from "/src/components/tabs/GoFrameworkSubTabs" ## Verifying a session using the `verifySession` middleware +:::caution + +The `verifySession` middleware can only be used in scenarios that involve **SuperTokens Access Tokens**. + +If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, you will have to [manually](/docs/unified-login/customizations/verify-tokens) validate tokens. + +::: + For your APIs that require a user to be logged in, use the `verifySession` middleware: diff --git a/v2/passwordless/common-customizations/sessions/with-jwt/jwt-verification.mdx b/v2/passwordless/common-customizations/sessions/with-jwt/jwt-verification.mdx index d1d014c9c..d48165d61 100644 --- a/v2/passwordless/common-customizations/sessions/with-jwt/jwt-verification.mdx +++ b/v2/passwordless/common-customizations/sessions/with-jwt/jwt-verification.mdx @@ -23,6 +23,14 @@ There are three steps in doing session verification using JWTs: - Check for custom claim values for authorization. - Preventing CSRF attacks in case you are using cookies to store the JWT. +:::caution + +This guide only applies to scenarios in which you are using **SuperTokens Access Tokens**. + +If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, please check the [separate page](/docs/unified-login/customizations/verify-tokens) that shows you how to verify those types of tokens. + +::: + ## Verifying a JWT using a jwt verification library diff --git a/v2/passwordless/custom-ui/securing-routes.mdx b/v2/passwordless/custom-ui/securing-routes.mdx index da7bd215d..be6ff39e1 100644 --- a/v2/passwordless/custom-ui/securing-routes.mdx +++ b/v2/passwordless/custom-ui/securing-routes.mdx @@ -25,6 +25,14 @@ import FrontendMobileSubTabs from "/src/components/tabs/FrontendMobileSubTabs" +:::caution + +This guide only applies to scenarios in which you are using **SuperTokens Access Tokens**. + +If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, please check the [separate page](/docs/unified-login/customizations/verify-tokens) that shows you how to verify those types of tokens. + +::: + ### Requiring an active session For your APIs that require a user to be logged in, use the `verifySession` middleware diff --git a/v2/passwordless/pre-built-ui/securing-routes.mdx b/v2/passwordless/pre-built-ui/securing-routes.mdx index b99528e9e..5dfc65c35 100644 --- a/v2/passwordless/pre-built-ui/securing-routes.mdx +++ b/v2/passwordless/pre-built-ui/securing-routes.mdx @@ -24,6 +24,14 @@ import RRDVersionSubTabs from "/src/components/tabs/RRDVersionSubTabs" +:::caution + +This guide only applies to scenarios in which you are using **SuperTokens Access Tokens**. + +If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, please check the [separate page](/docs/unified-login/customizations/verify-tokens) that shows you how to verify those types of tokens. + +::: + ### Requiring an active session For your APIs that require a user to be logged in, use the `verifySession` middleware @@ -446,6 +454,14 @@ For authentication between microservices on your backend, checkout the [microser +:::caution + +These instructions only apply to scenarios in which you are using **SuperTokens Access Tokens**. + +If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, please check the [specific use case page](/docs/unified-login/introduction#when-to-use-unified-login) for relevant information. + +::: + diff --git a/v2/session/common-customizations/sessions/claims/access-token-payload.mdx b/v2/session/common-customizations/sessions/claims/access-token-payload.mdx index b1e59cb4e..b958ca535 100644 --- a/v2/session/common-customizations/sessions/claims/access-token-payload.mdx +++ b/v2/session/common-customizations/sessions/claims/access-token-payload.mdx @@ -22,6 +22,14 @@ import FrontendReactContextSubTabs from "/src/components/tabs/FrontendReactConte # Option 1. Using the access token payload +:::caution + +This guide describes how to add custom claims to **SuperTokens Access Tokens**. + +If you are implementing [**Unified Login**](/docs/unified-login/introduction), which makes use of **OAuth2 Access Tokens**, you will have to check the separate [guide](/docs/unified-login/customizations/add-custom-claims-in-tokens). + +::: + ## Add custom claims to the access token payload :::important @@ -1249,4 +1257,4 @@ Future getJWT() async { - \ No newline at end of file + diff --git a/v2/session/common-customizations/sessions/claims/claim-validators.mdx b/v2/session/common-customizations/sessions/claims/claim-validators.mdx index 2a7b59a42..3f89d1bac 100644 --- a/v2/session/common-customizations/sessions/claims/claim-validators.mdx +++ b/v2/session/common-customizations/sessions/claims/claim-validators.mdx @@ -23,6 +23,14 @@ import FrontendReactContextSubTabs from "/src/components/tabs/FrontendReactConte # Option 2. Using claim validators +:::caution + +This guide describes how to add custom claims to **SuperTokens Access Tokens**. + +If you are implementing [**Unified Login**](/docs/unified-login/introduction), which makes use of **OAuth2 Access Tokens**, you will have to check the separate [guide](/docs/unified-login/customizations/add-custom-claims-in-tokens). + +::: + ## What are session claims? SuperTokens session has a property called `accessTokenPayload`. This is a `JSON` object that's stored in a user's session which can be accessed on the frontend and backend. The key-values in this JSON payload are called claims. diff --git a/v2/session/common-customizations/sessions/session-verification-in-api/verify-session.mdx b/v2/session/common-customizations/sessions/session-verification-in-api/verify-session.mdx index a0b1b8488..1a9351a51 100644 --- a/v2/session/common-customizations/sessions/session-verification-in-api/verify-session.mdx +++ b/v2/session/common-customizations/sessions/session-verification-in-api/verify-session.mdx @@ -14,6 +14,14 @@ import GoFrameworkSubTabs from "/src/components/tabs/GoFrameworkSubTabs" ## Verifying a session using the `verifySession` middleware +:::caution + +The `verifySession` middleware can only be used in scenarios that involve **SuperTokens Access Tokens**. + +If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, you will have to [manually](/docs/unified-login/customizations/verify-tokens) validate tokens. + +::: + For your APIs that require a user to be logged in, use the `verifySession` middleware: @@ -1392,4 +1400,4 @@ async def like_comment(request: HttpRequest): :::tip feature You can also [build your own custom claim validators](../claims/claim-validators) based on your app's requirements. -::: \ No newline at end of file +::: diff --git a/v2/session/common-customizations/sessions/with-jwt/jwt-verification.mdx b/v2/session/common-customizations/sessions/with-jwt/jwt-verification.mdx index f0d888a8f..d48165d61 100644 --- a/v2/session/common-customizations/sessions/with-jwt/jwt-verification.mdx +++ b/v2/session/common-customizations/sessions/with-jwt/jwt-verification.mdx @@ -23,6 +23,14 @@ There are three steps in doing session verification using JWTs: - Check for custom claim values for authorization. - Preventing CSRF attacks in case you are using cookies to store the JWT. +:::caution + +This guide only applies to scenarios in which you are using **SuperTokens Access Tokens**. + +If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, please check the [separate page](/docs/unified-login/customizations/verify-tokens) that shows you how to verify those types of tokens. + +::: + ## Verifying a JWT using a jwt verification library @@ -311,4 +319,4 @@ There are two methods for configuring [CSRF protection](../anti-csrf): ### Checking for anti-csrf when `VIA_TOKEN` is set When configured with `VIA_TOKEN`, an explicit `anti-csrf` token will be attached as a header to requests with `anti-csrf` as the key. To verify the `anti-csrf` token you will need to compare it the to value of the `antiCsrfToken` key from the payload of the decoded JWT. - \ No newline at end of file + diff --git a/v2/thirdparty/common-customizations/sessions/claims/access-token-payload.mdx b/v2/thirdparty/common-customizations/sessions/claims/access-token-payload.mdx index ac18be4b9..b958ca535 100644 --- a/v2/thirdparty/common-customizations/sessions/claims/access-token-payload.mdx +++ b/v2/thirdparty/common-customizations/sessions/claims/access-token-payload.mdx @@ -22,6 +22,14 @@ import FrontendReactContextSubTabs from "/src/components/tabs/FrontendReactConte # Option 1. Using the access token payload +:::caution + +This guide describes how to add custom claims to **SuperTokens Access Tokens**. + +If you are implementing [**Unified Login**](/docs/unified-login/introduction), which makes use of **OAuth2 Access Tokens**, you will have to check the separate [guide](/docs/unified-login/customizations/add-custom-claims-in-tokens). + +::: + ## Add custom claims to the access token payload :::important diff --git a/v2/thirdparty/common-customizations/sessions/claims/claim-validators.mdx b/v2/thirdparty/common-customizations/sessions/claims/claim-validators.mdx index 2a7b59a42..3f89d1bac 100644 --- a/v2/thirdparty/common-customizations/sessions/claims/claim-validators.mdx +++ b/v2/thirdparty/common-customizations/sessions/claims/claim-validators.mdx @@ -23,6 +23,14 @@ import FrontendReactContextSubTabs from "/src/components/tabs/FrontendReactConte # Option 2. Using claim validators +:::caution + +This guide describes how to add custom claims to **SuperTokens Access Tokens**. + +If you are implementing [**Unified Login**](/docs/unified-login/introduction), which makes use of **OAuth2 Access Tokens**, you will have to check the separate [guide](/docs/unified-login/customizations/add-custom-claims-in-tokens). + +::: + ## What are session claims? SuperTokens session has a property called `accessTokenPayload`. This is a `JSON` object that's stored in a user's session which can be accessed on the frontend and backend. The key-values in this JSON payload are called claims. diff --git a/v2/thirdparty/common-customizations/sessions/session-verification-in-api/verify-session.mdx b/v2/thirdparty/common-customizations/sessions/session-verification-in-api/verify-session.mdx index f176eab66..1a9351a51 100644 --- a/v2/thirdparty/common-customizations/sessions/session-verification-in-api/verify-session.mdx +++ b/v2/thirdparty/common-customizations/sessions/session-verification-in-api/verify-session.mdx @@ -14,6 +14,14 @@ import GoFrameworkSubTabs from "/src/components/tabs/GoFrameworkSubTabs" ## Verifying a session using the `verifySession` middleware +:::caution + +The `verifySession` middleware can only be used in scenarios that involve **SuperTokens Access Tokens**. + +If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, you will have to [manually](/docs/unified-login/customizations/verify-tokens) validate tokens. + +::: + For your APIs that require a user to be logged in, use the `verifySession` middleware: diff --git a/v2/thirdparty/common-customizations/sessions/with-jwt/jwt-verification.mdx b/v2/thirdparty/common-customizations/sessions/with-jwt/jwt-verification.mdx index d1d014c9c..d48165d61 100644 --- a/v2/thirdparty/common-customizations/sessions/with-jwt/jwt-verification.mdx +++ b/v2/thirdparty/common-customizations/sessions/with-jwt/jwt-verification.mdx @@ -23,6 +23,14 @@ There are three steps in doing session verification using JWTs: - Check for custom claim values for authorization. - Preventing CSRF attacks in case you are using cookies to store the JWT. +:::caution + +This guide only applies to scenarios in which you are using **SuperTokens Access Tokens**. + +If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, please check the [separate page](/docs/unified-login/customizations/verify-tokens) that shows you how to verify those types of tokens. + +::: + ## Verifying a JWT using a jwt verification library diff --git a/v2/thirdparty/custom-ui/securing-routes.mdx b/v2/thirdparty/custom-ui/securing-routes.mdx index da7bd215d..be6ff39e1 100644 --- a/v2/thirdparty/custom-ui/securing-routes.mdx +++ b/v2/thirdparty/custom-ui/securing-routes.mdx @@ -25,6 +25,14 @@ import FrontendMobileSubTabs from "/src/components/tabs/FrontendMobileSubTabs" +:::caution + +This guide only applies to scenarios in which you are using **SuperTokens Access Tokens**. + +If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, please check the [separate page](/docs/unified-login/customizations/verify-tokens) that shows you how to verify those types of tokens. + +::: + ### Requiring an active session For your APIs that require a user to be logged in, use the `verifySession` middleware diff --git a/v2/thirdparty/pre-built-ui/securing-routes.mdx b/v2/thirdparty/pre-built-ui/securing-routes.mdx index b99528e9e..5dfc65c35 100644 --- a/v2/thirdparty/pre-built-ui/securing-routes.mdx +++ b/v2/thirdparty/pre-built-ui/securing-routes.mdx @@ -24,6 +24,14 @@ import RRDVersionSubTabs from "/src/components/tabs/RRDVersionSubTabs" +:::caution + +This guide only applies to scenarios in which you are using **SuperTokens Access Tokens**. + +If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, please check the [separate page](/docs/unified-login/customizations/verify-tokens) that shows you how to verify those types of tokens. + +::: + ### Requiring an active session For your APIs that require a user to be logged in, use the `verifySession` middleware @@ -446,6 +454,14 @@ For authentication between microservices on your backend, checkout the [microser +:::caution + +These instructions only apply to scenarios in which you are using **SuperTokens Access Tokens**. + +If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, please check the [specific use case page](/docs/unified-login/introduction#when-to-use-unified-login) for relevant information. + +::: + diff --git a/v2/thirdpartyemailpassword/common-customizations/sessions/claims/access-token-payload.mdx b/v2/thirdpartyemailpassword/common-customizations/sessions/claims/access-token-payload.mdx index ac18be4b9..b958ca535 100644 --- a/v2/thirdpartyemailpassword/common-customizations/sessions/claims/access-token-payload.mdx +++ b/v2/thirdpartyemailpassword/common-customizations/sessions/claims/access-token-payload.mdx @@ -22,6 +22,14 @@ import FrontendReactContextSubTabs from "/src/components/tabs/FrontendReactConte # Option 1. Using the access token payload +:::caution + +This guide describes how to add custom claims to **SuperTokens Access Tokens**. + +If you are implementing [**Unified Login**](/docs/unified-login/introduction), which makes use of **OAuth2 Access Tokens**, you will have to check the separate [guide](/docs/unified-login/customizations/add-custom-claims-in-tokens). + +::: + ## Add custom claims to the access token payload :::important diff --git a/v2/thirdpartyemailpassword/common-customizations/sessions/claims/claim-validators.mdx b/v2/thirdpartyemailpassword/common-customizations/sessions/claims/claim-validators.mdx index 2a7b59a42..3f89d1bac 100644 --- a/v2/thirdpartyemailpassword/common-customizations/sessions/claims/claim-validators.mdx +++ b/v2/thirdpartyemailpassword/common-customizations/sessions/claims/claim-validators.mdx @@ -23,6 +23,14 @@ import FrontendReactContextSubTabs from "/src/components/tabs/FrontendReactConte # Option 2. Using claim validators +:::caution + +This guide describes how to add custom claims to **SuperTokens Access Tokens**. + +If you are implementing [**Unified Login**](/docs/unified-login/introduction), which makes use of **OAuth2 Access Tokens**, you will have to check the separate [guide](/docs/unified-login/customizations/add-custom-claims-in-tokens). + +::: + ## What are session claims? SuperTokens session has a property called `accessTokenPayload`. This is a `JSON` object that's stored in a user's session which can be accessed on the frontend and backend. The key-values in this JSON payload are called claims. diff --git a/v2/thirdpartyemailpassword/common-customizations/sessions/session-verification-in-api/verify-session.mdx b/v2/thirdpartyemailpassword/common-customizations/sessions/session-verification-in-api/verify-session.mdx index f176eab66..1a9351a51 100644 --- a/v2/thirdpartyemailpassword/common-customizations/sessions/session-verification-in-api/verify-session.mdx +++ b/v2/thirdpartyemailpassword/common-customizations/sessions/session-verification-in-api/verify-session.mdx @@ -14,6 +14,14 @@ import GoFrameworkSubTabs from "/src/components/tabs/GoFrameworkSubTabs" ## Verifying a session using the `verifySession` middleware +:::caution + +The `verifySession` middleware can only be used in scenarios that involve **SuperTokens Access Tokens**. + +If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, you will have to [manually](/docs/unified-login/customizations/verify-tokens) validate tokens. + +::: + For your APIs that require a user to be logged in, use the `verifySession` middleware: diff --git a/v2/thirdpartyemailpassword/common-customizations/sessions/with-jwt/jwt-verification.mdx b/v2/thirdpartyemailpassword/common-customizations/sessions/with-jwt/jwt-verification.mdx index d1d014c9c..d48165d61 100644 --- a/v2/thirdpartyemailpassword/common-customizations/sessions/with-jwt/jwt-verification.mdx +++ b/v2/thirdpartyemailpassword/common-customizations/sessions/with-jwt/jwt-verification.mdx @@ -23,6 +23,14 @@ There are three steps in doing session verification using JWTs: - Check for custom claim values for authorization. - Preventing CSRF attacks in case you are using cookies to store the JWT. +:::caution + +This guide only applies to scenarios in which you are using **SuperTokens Access Tokens**. + +If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, please check the [separate page](/docs/unified-login/customizations/verify-tokens) that shows you how to verify those types of tokens. + +::: + ## Verifying a JWT using a jwt verification library diff --git a/v2/thirdpartyemailpassword/custom-ui/securing-routes.mdx b/v2/thirdpartyemailpassword/custom-ui/securing-routes.mdx index da7bd215d..be6ff39e1 100644 --- a/v2/thirdpartyemailpassword/custom-ui/securing-routes.mdx +++ b/v2/thirdpartyemailpassword/custom-ui/securing-routes.mdx @@ -25,6 +25,14 @@ import FrontendMobileSubTabs from "/src/components/tabs/FrontendMobileSubTabs" +:::caution + +This guide only applies to scenarios in which you are using **SuperTokens Access Tokens**. + +If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, please check the [separate page](/docs/unified-login/customizations/verify-tokens) that shows you how to verify those types of tokens. + +::: + ### Requiring an active session For your APIs that require a user to be logged in, use the `verifySession` middleware diff --git a/v2/thirdpartyemailpassword/pre-built-ui/securing-routes.mdx b/v2/thirdpartyemailpassword/pre-built-ui/securing-routes.mdx index b99528e9e..5dfc65c35 100644 --- a/v2/thirdpartyemailpassword/pre-built-ui/securing-routes.mdx +++ b/v2/thirdpartyemailpassword/pre-built-ui/securing-routes.mdx @@ -24,6 +24,14 @@ import RRDVersionSubTabs from "/src/components/tabs/RRDVersionSubTabs" +:::caution + +This guide only applies to scenarios in which you are using **SuperTokens Access Tokens**. + +If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, please check the [separate page](/docs/unified-login/customizations/verify-tokens) that shows you how to verify those types of tokens. + +::: + ### Requiring an active session For your APIs that require a user to be logged in, use the `verifySession` middleware @@ -446,6 +454,14 @@ For authentication between microservices on your backend, checkout the [microser +:::caution + +These instructions only apply to scenarios in which you are using **SuperTokens Access Tokens**. + +If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, please check the [specific use case page](/docs/unified-login/introduction#when-to-use-unified-login) for relevant information. + +::: + diff --git a/v2/thirdpartypasswordless/common-customizations/sessions/claims/access-token-payload.mdx b/v2/thirdpartypasswordless/common-customizations/sessions/claims/access-token-payload.mdx index ac18be4b9..b958ca535 100644 --- a/v2/thirdpartypasswordless/common-customizations/sessions/claims/access-token-payload.mdx +++ b/v2/thirdpartypasswordless/common-customizations/sessions/claims/access-token-payload.mdx @@ -22,6 +22,14 @@ import FrontendReactContextSubTabs from "/src/components/tabs/FrontendReactConte # Option 1. Using the access token payload +:::caution + +This guide describes how to add custom claims to **SuperTokens Access Tokens**. + +If you are implementing [**Unified Login**](/docs/unified-login/introduction), which makes use of **OAuth2 Access Tokens**, you will have to check the separate [guide](/docs/unified-login/customizations/add-custom-claims-in-tokens). + +::: + ## Add custom claims to the access token payload :::important diff --git a/v2/thirdpartypasswordless/common-customizations/sessions/claims/claim-validators.mdx b/v2/thirdpartypasswordless/common-customizations/sessions/claims/claim-validators.mdx index 2a7b59a42..3f89d1bac 100644 --- a/v2/thirdpartypasswordless/common-customizations/sessions/claims/claim-validators.mdx +++ b/v2/thirdpartypasswordless/common-customizations/sessions/claims/claim-validators.mdx @@ -23,6 +23,14 @@ import FrontendReactContextSubTabs from "/src/components/tabs/FrontendReactConte # Option 2. Using claim validators +:::caution + +This guide describes how to add custom claims to **SuperTokens Access Tokens**. + +If you are implementing [**Unified Login**](/docs/unified-login/introduction), which makes use of **OAuth2 Access Tokens**, you will have to check the separate [guide](/docs/unified-login/customizations/add-custom-claims-in-tokens). + +::: + ## What are session claims? SuperTokens session has a property called `accessTokenPayload`. This is a `JSON` object that's stored in a user's session which can be accessed on the frontend and backend. The key-values in this JSON payload are called claims. diff --git a/v2/thirdpartypasswordless/common-customizations/sessions/session-verification-in-api/verify-session.mdx b/v2/thirdpartypasswordless/common-customizations/sessions/session-verification-in-api/verify-session.mdx index f176eab66..1a9351a51 100644 --- a/v2/thirdpartypasswordless/common-customizations/sessions/session-verification-in-api/verify-session.mdx +++ b/v2/thirdpartypasswordless/common-customizations/sessions/session-verification-in-api/verify-session.mdx @@ -14,6 +14,14 @@ import GoFrameworkSubTabs from "/src/components/tabs/GoFrameworkSubTabs" ## Verifying a session using the `verifySession` middleware +:::caution + +The `verifySession` middleware can only be used in scenarios that involve **SuperTokens Access Tokens**. + +If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, you will have to [manually](/docs/unified-login/customizations/verify-tokens) validate tokens. + +::: + For your APIs that require a user to be logged in, use the `verifySession` middleware: diff --git a/v2/thirdpartypasswordless/common-customizations/sessions/with-jwt/jwt-verification.mdx b/v2/thirdpartypasswordless/common-customizations/sessions/with-jwt/jwt-verification.mdx index d1d014c9c..d48165d61 100644 --- a/v2/thirdpartypasswordless/common-customizations/sessions/with-jwt/jwt-verification.mdx +++ b/v2/thirdpartypasswordless/common-customizations/sessions/with-jwt/jwt-verification.mdx @@ -23,6 +23,14 @@ There are three steps in doing session verification using JWTs: - Check for custom claim values for authorization. - Preventing CSRF attacks in case you are using cookies to store the JWT. +:::caution + +This guide only applies to scenarios in which you are using **SuperTokens Access Tokens**. + +If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, please check the [separate page](/docs/unified-login/customizations/verify-tokens) that shows you how to verify those types of tokens. + +::: + ## Verifying a JWT using a jwt verification library diff --git a/v2/thirdpartypasswordless/custom-ui/securing-routes.mdx b/v2/thirdpartypasswordless/custom-ui/securing-routes.mdx index da7bd215d..be6ff39e1 100644 --- a/v2/thirdpartypasswordless/custom-ui/securing-routes.mdx +++ b/v2/thirdpartypasswordless/custom-ui/securing-routes.mdx @@ -25,6 +25,14 @@ import FrontendMobileSubTabs from "/src/components/tabs/FrontendMobileSubTabs" +:::caution + +This guide only applies to scenarios in which you are using **SuperTokens Access Tokens**. + +If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, please check the [separate page](/docs/unified-login/customizations/verify-tokens) that shows you how to verify those types of tokens. + +::: + ### Requiring an active session For your APIs that require a user to be logged in, use the `verifySession` middleware diff --git a/v2/thirdpartypasswordless/pre-built-ui/securing-routes.mdx b/v2/thirdpartypasswordless/pre-built-ui/securing-routes.mdx index b99528e9e..5dfc65c35 100644 --- a/v2/thirdpartypasswordless/pre-built-ui/securing-routes.mdx +++ b/v2/thirdpartypasswordless/pre-built-ui/securing-routes.mdx @@ -24,6 +24,14 @@ import RRDVersionSubTabs from "/src/components/tabs/RRDVersionSubTabs" +:::caution + +This guide only applies to scenarios in which you are using **SuperTokens Access Tokens**. + +If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, please check the [separate page](/docs/unified-login/customizations/verify-tokens) that shows you how to verify those types of tokens. + +::: + ### Requiring an active session For your APIs that require a user to be logged in, use the `verifySession` middleware @@ -446,6 +454,14 @@ For authentication between microservices on your backend, checkout the [microser +:::caution + +These instructions only apply to scenarios in which you are using **SuperTokens Access Tokens**. + +If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, please check the [specific use case page](/docs/unified-login/introduction#when-to-use-unified-login) for relevant information. + +::: + diff --git a/v2/unified-login/customizations/verify-tokens.mdx b/v2/unified-login/customizations/verify-tokens.mdx index 6053e291e..2f426f5e6 100644 --- a/v2/unified-login/customizations/verify-tokens.mdx +++ b/v2/unified-login/customizations/verify-tokens.mdx @@ -12,10 +12,15 @@ import TabItem from '@theme/TabItem'; In order to check the validity of a token we recommend using a generic **JWT** verification library. +Besides the standard **OAuth2** token claims our implementation includes an additional one called `stt`. +This stands for `SuperTokens Token Type`. +It is used to make sure that the validation is performed for the correct token type: `0` represents a **SuperTokens Session Access Token**, `1` represents an **OAuth2 Access Token** and `2` represents an **OAuth2 ID Token**. + ## OAuth2 Access Tokens We provide a series of code samples that show you how to check tokens based on the requirements of each authentication flow. + @@ -331,9 +336,15 @@ class ClientCredentialsTokenValidator ### Authorization Code Flow Token Validation -Follow this example if you are checking tokens in the context of authenticating users in a web application. +Follow this example if you are verifying tokens in the context of authenticating users in a web application. You will have to check if the `client_id` and `scopes` of the provided token match the ones you expect. +:::info + +If your scenario involves a common backend for multiple frontend clients the token validation function should take into accout all the registered clients ids. + +::: + diff --git a/v2/unified-login/machine-to-machine-authentication.mdx b/v2/unified-login/machine-to-machine-authentication.mdx index 95ccd5cef..37ae01634 100644 --- a/v2/unified-login/machine-to-machine-authentication.mdx +++ b/v2/unified-login/machine-to-machine-authentication.mdx @@ -24,6 +24,8 @@ The authentication flow will work in the following way: 4. `Service B` validates the **OAuth2 Access Token** 5. If the token is valid `Service B` returns the requested resource + + :::info This guide assumes that you already have setup and configured **SuperTokens** in your [**Authorization Service**](/docs/unified-login/introduction#authorization-service). From d4ea8a6e062bf7989aafa886e44bc3fe12450e89 Mon Sep 17 00:00:00 2001 From: Bogdan Carpusor Date: Mon, 21 Oct 2024 15:44:12 +0100 Subject: [PATCH 21/33] Move the m2m guide into the microservices authentication section --- v2/docusaurus.config.js | 10 +- v2/microservice_auth/client-credentials.mdx | 567 ++++++++++++++++++ v2/microservice_auth/introduction.mdx | 52 ++ v2/microservice_auth/jwt-creation.mdx | 9 + .../jwt-verification/get-public-key.mdx | 3 +- .../jwt-verification/index.mdx | 10 + .../legacy/implementation-guide.mdx} | 288 ++++++++- .../legacy}/security-analysis.mdx | 2 - v2/microservice_auth/security-analysis.mdx | 9 + v2/microservice_auth/sidebars.js | 12 + .../introduction.mdx | 19 - .../jwt-creation.mdx | 270 --------- .../sidebars.js | 21 - v2/src/theme/NavbarItem/recipeSelector.js | 10 +- v2/unified-login/customizations/custom-ui.mdx | 2 +- .../customizations/verify-tokens.mdx | 2 +- v2/unified-login/sidebars.js | 1 - 17 files changed, 948 insertions(+), 339 deletions(-) create mode 100644 v2/microservice_auth/client-credentials.mdx create mode 100644 v2/microservice_auth/introduction.mdx create mode 100644 v2/microservice_auth/jwt-creation.mdx rename v2/{private-access-token-authentication => microservice_auth}/jwt-verification/get-public-key.mdx (73%) create mode 100644 v2/microservice_auth/jwt-verification/index.mdx rename v2/{private-access-token-authentication/jwt-verification/index.mdx => microservice_auth/legacy/implementation-guide.mdx} (66%) rename v2/{private-access-token-authentication => microservice_auth/legacy}/security-analysis.mdx (90%) create mode 100644 v2/microservice_auth/security-analysis.mdx create mode 100644 v2/microservice_auth/sidebars.js delete mode 100644 v2/private-access-token-authentication/introduction.mdx delete mode 100644 v2/private-access-token-authentication/jwt-creation.mdx delete mode 100644 v2/private-access-token-authentication/sidebars.js diff --git a/v2/docusaurus.config.js b/v2/docusaurus.config.js index 0b4ccf797..7c6d2a02e 100644 --- a/v2/docusaurus.config.js +++ b/v2/docusaurus.config.js @@ -400,12 +400,10 @@ module.exports = { [ "@docusaurus/plugin-content-docs", { - id: "private-access-token-authentication", - path: "private-access-token-authentication", - routeBasePath: "docs/private-access-token-authentication", - sidebarPath: require.resolve( - "./private-access-token-authentication/sidebars.js", - ), + id: "microservice_auth", + path: "microservice_auth", + routeBasePath: "docs/microservice_auth", + sidebarPath: require.resolve("./microservice_auth/sidebars.js"), showLastUpdateTime: true, editUrl: "https://github.com/supertokens/docs/tree/master/v2/", remarkPlugins: remarkPlugins, diff --git a/v2/microservice_auth/client-credentials.mdx b/v2/microservice_auth/client-credentials.mdx new file mode 100644 index 000000000..94d37bd25 --- /dev/null +++ b/v2/microservice_auth/client-credentials.mdx @@ -0,0 +1,567 @@ +--- +title: Client Credentials Flow +hide_title: true +--- + +import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs" +import OAuthFrontendTabs from "/src/components/tabs/OAuthFrontendTabs" +import OAuthBackendTabs from "/src/components/tabs/OAuthBackendTabs" +import CoreInjector from "/src/components/coreInjector" +import AppInfoForm from "/src/components/appInfoForm" +import TabItem from '@theme/TabItem'; + + +# Client Credentials Authentication + + +:::info +This guide assumes that you already have setup and configured **SuperTokens** in your [**Authorization Service**](/docs/unified-login/introduction#authorization-service). + +For more information on how to do that please check our [quickstart guide](/docs/thirdparty/introduction). + +Also, if you are not familiar with how **OAuth2** works, please check our [separate page](/docs/unified-login/introduction#oauth2-basics) that explains most of the concepts. +::: + + +Before going into the actual steps lets start by imagining a real life example that we can reference along the way. +This will make it easier to understand what we are doing. + +Lets assume that we are trying to configure authentication for the following setup: +- A **Calendar Service** that exposes these actions: `event.view`, `event.create`, `event.update` and `event.delete` +- A **File Service** that exposes these actions: `file.view`, `file.create`, `file.update` and `file.delete` +- A **Task Service** that interacts with the **Calendar Service** and the **File Service** in the process of scheduling a task + +Our aim will be to allow the **Task Service** to perform an authenticated action on the **Calendar Service**. +Now lets get into the actual steps. + + + + + + +## 1. Enable the OAuth2 features from the Dashboard + +You will first have to enable the **OAuth2** features from the **SuperTokens.com Dashboard**. +1. Open the **SuperTokens.com Dashboard** +2. Click on the **Enabled Paid Features** button +3. Click on **Managed Service** +4. Check the **OAuth 2.0** option +5. Click *Save* + +Now you should be able to use the OAuth2 recipes in your applications. + + + +## 2. Create the OAuth2 Clients + + + + + +For each of your **`microservices`** you will have to create a separate [**OAuth2 client**](/docs/unified-login/introduction#client). +This can be done by directly calling the **SuperTokens Core** API. + + + + +```bash +# You will have to run this for each one of your applications +# Adjust the attributes based on that +curl -X POST ^{coreInjector_uri_without_quotes}/recipe/oauth2/admin/clients \ + -H "Content-Type: application/json" \ + -H "api-key: ^{coreInjector_api_key_without_quotes}" \ + -d '{ + "clientName": "", + "grantTypes": ["client_credentials"], + "scope": " ", + "audience": [""] + }' +``` + + +- `clientName` - Then name of the client that will be used later for identification. +- `grantTypes` - The grant types that the [**Client**](/docs/unified-login/introduction#client) will use. + - `clientCredentials`: Allows the client to directly request an Access Token by authenticating itself with the Authorization Server using its own client credentials. +- `audience` - Value used to identify for whom a token was issued. The created client will be able to generate access token only for the specified audiences. +- `scope` - A space separated string of scopes that the [**Client**](/docs/unified-login/introduction#client) will request access to. + + +:::info Custom Example + +To create a client for our **Task Service** we will have to use the following attributes: + +```json + { + "clientName": "Task Service", + "grantTypes": ["client_credentials"], + "scope": "event.view event.create event.edit event.delete file.view file.create file.edit file.delete", + "audience": ["event", "file"] + } +``` + +This will allow the **Task Service** to perform all types of actions against both of the other services as long as it has a valid **OAuth2 Access Token**. + +::: + +If the creation was successful, the API will return a response that looks like this: + +```json +{ + "clientName": "", + "clientId": "", + "clientSecret": "", + "callbackUrls": [], +} + +``` + +### Change the default token lifespan + +By default, the token used in the authorization flow will have a 1 hour lifespan. + +We recommend that you change it in order to use short lived tokens for improved security. +To do this you will need to set the `clientCredentialsGrantAccessTokenLifespan` property in the [**Client**](/docs/unified-login/introduction#client) creation request body. +Use string values that signify time duration in milliecoseconds, seconds, minutes or hours (e.g. `"2000ms"`, `"60s"`, `"30m"`, `"1h"`). + +## 3. Set Up your Authorization Service + +In your [**Authorization Service**](/docs/unified-login/introduction#authorization-service) backend you will need to initialize the **OAuth2Provider** recipe. + + + + + +Update the `supertokens.init` call to include the new recipe. + +```tsx + +import supertokens from "supertokens-node"; +import OAuth2Provider from "supertokens-node/recipe/oauth2provider"; + + +supertokens.init({ + supertokens: { + connectionURI: "...", + apiKey: "...", + }, + appInfo: { + appName: "...", + apiDomain: "...", + websiteDomain: "...", + }, + recipeList: [ + OAuth2Provider.init(), + ] +}); + +``` + + + + + + +:::caution + +At the moment we do not have support creating OAuth2 providers in the Go SDK. + +::: + + + + + +:::caution + +At the moment we do not have support creating OAuth2 providers in the Python SDK. + +::: + + + + + + +## 4. Generate Access Tokens + +Now you can directly call the [**Authorization Server**](/docs/unified-login/introduction#authorization-server) to generate Access Tokens. +Check the following code snippet to see how you can do that: + + +```bash + +curl -X POST ^{form_apiDomain}^{form_apiBasePath}/oauth/token \ +-H "Content-Type: application/json" \ +-d '{ + "clientId": "", + "clientSecret": "", + "grantType": "client_credentials", + "scope": [""], + "audience": "" +}' + +``` + +You should limit the scopes that you are requesting to just the ones necessary to perform the desired action. + +:::info Custom Example + +If the **Task Service** wants to create an event on the **Calendar Service** we will have to generate a token with the following attributes: + +```json + { + "clientId": "", + "clientSecret": "", + "grantType": "client_credentials", + "scope": ["event.create"], + "audience": "event" + } +``` + +::: + +The **Authorization Server** will return a response that will look like this: + +```json +{ + "accessToken": "", + "expiresIn": 3600 +} +``` + +You will have to save the `accessToken` in memory so that you can use it in the next step. +The `expiresIn` field will tell you how long the token is valid for. + +Each service that you communicate with will need its own token. + +Now that you have an **OAuth2 Access Token** you can use it when communicating with the other services. +Just keep in mind to generate a new one when it expires. + +## 5. Verify an OAuth2 Access Token + +In order to check the validity of a token we recommend using a generic **JWT** verification library. + +Besides the standard **OAuth2** token claims our implementation includes an additional one called `stt`. +This stands for `SuperTokens Token Type`. +It is used to make sure that the validation is performed for the correct token type: +- `0` represents a **SuperTokens Session Access Token** +- `1` represents an **OAuth2 Access Token** +- `2` represents an **OAuth2 ID Token**. + + + + + +For NodeJS you can use [jose](https://github.com/panva/jose) to verify the token. + +```tsx +import jose from "jose"; + +const JWKS = jose.createRemoteJWKSet(new URL('^{form_apiDomain}^{form_apiBasePath}/jwt/jwks.json')) + +async function validateClientCredentialsToken(jwt: string) { + const requiredScope = ""; + const audience = ''; + + try { + const { payload } = await jose.jwtVerify(jwt, JWKS, { + audience, + requiredClaims: ['stt', 'scp'], + }); + + if(payload.stt !== 1) return false; + + return payload.scp.includes(requiredScope); + } catch (err) { + return false; + } +} + +``` + + + + + + +You can use the [jwx](https://github.com/lestrrat-go/jwx) library to verify the token. + +```go +import ( + "context" + "fmt" + + "github.com/lestrrat-go/jwx/jwt" + "github.com/lestrrat-go/jwx/jwk" +) + +func ValidateToken(token string) bool { + apiDomain := "^{form_apiDomain}" + apiBasePath := "^{form_apiBasePath}" + requiredScope := "" + + jwksURL := fmt.Sprintf("%s%sjwt/jwks.json", apiDomain, apiBasePath) + jwks, err := jwk.Fetch(context.Background(), jwksURL) + if err != nil { + return false + } + + parsedToken, err := jwt.Parse( + []byte(token), + jwt.WithKeySet(jwks), + jwt.WithClaimValue("stt", 1), + jwt.WithAudience(""), + ) + if err != nil { + return false + } + + scp, ok := parsedToken.Get("scp") + if !ok { + return false + } + + scopes, ok := scp.([]interface{}) + if !ok { + return false + } + + for _, scope := range scopes { + if scope, ok := scope.(string); ok && scope == requiredScope { + return true + } + } + + return false; +} +``` + + + + + +You can use the [PyJWT](https://github.com/jpadilla/pyjwt) library to verify the token. + +```python +import requests +import jwt +from jwt import PyJWKClient + +def validate_token(token): + api_domain = "^{form_apiDomain}" + api_base_path = "^{form_apiBasePath}" + audience = "" + required_scope = "" + + jwks_url = f"{api_domain}{api_base_path}jwt/jwks.json" + jwks_client = PyJWKClient(jwks_url) + + try: + signing_key = jwks_client.get_signing_keys_from_jwt(token) + decoded = jwt.decode( + token, + signing_key.key, + algorithms=['RS256'], + audience=audience, + options={"require": ["stt", "scp"]} + ) + + sst = decoded.get('sst', None) + if stt != 1: + return False + + + scopes = decoded.get('scp', []) + if required_scope not in scopes: + return False + + return True + except Exception as e: + return False + +``` + + + + + +You can use the [Firebase JWT](https://github.com/firebase/php-jwt) library to verify the token. + +```php + +require 'vendor/autoload.php'; + +use Firebase\JWT\JWT; +use Firebase\JWT\Key; + +function validateToken($jwt) { + $apiDomain = "^{form_apiDomain}"; + $apiBasePath = "^{form_apiBasePath}"; + $jwksUrl = $apiDomain . $apiBasePath . '/jwt/jwks.json'; + $requiredScope = ""; + $audience = ""; + + $jwks = json_decode(file_get_contents($jwksUrl), true); + try { + $decoded = JWT::decode($jwt, JWK::parseKeySet($jwks), 'RS256')); + if ($decoded->aud !== $audience) { + return false; + } + if ($decoded->sst !== 1) { + return false; + } + return in_array($requiredScope, $decoded->scp); + } catch (Exception $e) { + return false; + } +} + +``` + + + + + +You can use the [Auth0 JWT](https://github.com/auth0/java-jwt) library to verify the token. + +```java + +import com.auth0.jwt.JWT; +import com.auth0.jwt.interfaces.DecodedJWT; +import com.auth0.jwt.interfaces.JWTVerifier; +import com.auth0.jwt.JWTVerifier.Base; +import com.auth0.jwt.algorithms.Algorithm; + +import java.net.URL; +import java.util.Map; +import java.io.InputStream; +import java.net.HttpURLConnection; +import java.nio.charset.StandardCharsets; +import java.util.Scanner; + +public class JWTVerifier { + + private static final String JWKS_URL = "^{form_apiDomain}^{form_apiBasePath}jwt/jwks.json"; + private static final String AUDIENCE = ""; + + private static Map fetchJWKS() throws Exception { + URL url = new URL(JWKS_URL); + HttpURLConnection connection = (HttpURLConnection) url.openConnection(); + connection.setRequestMethod("GET"); + + InputStream responseStream = connection.getInputStream(); + Scanner scanner = new Scanner(responseStream, StandardCharsets.UTF_8.name()); + String responseBody = scanner.useDelimiter("\\A").next(); + scanner.close(); + + return JWT.decode(responseBody).getHeader(); + } + + public static boolean validateToken(String token) { + try { + Map jwks = fetchJWKS(); + + Algorithm algorithm = Algorithm.RSA256(jwks.get("x5c"), null); + JWTVerifier verifier = JWT.require(algorithm) + .withAudience(AUDIENCE) + .build(); + + DecodedJWT jwt = verifier.verify(token); + if(jwt.getClaim("sst").asInt() != 1) { + return false; + } + List scopes = jwt.getClaim("scp").asList(); + return scopes.contains(requiredScope); + } catch (Exception e) { + return false; + } + } +} +``` + + + + + +You can use the [IdentityModel](https://github.com/IdentityModel/IdentityModel) library to verify the token. + +```csharp +using System; +using System.Linq; +using Microsoft.IdentityModel.Tokens; +using System.IdentityModel.Tokens.Jwt; +using System.Net.Http; +using System.Threading.Tasks; +using Newtonsoft.Json.Linq; + +class ClientCredentialsTokenValidator +{ + static async Task ValidateToken(string jwtStr) + { + string apiDomain = "^{form_apiDomain}"; + string apiBasePath = "^{form_apiBasePath}"; + string audience = ""; + string requiredScope = ""; + + HttpClient client = new HttpClient(); + var response = await client.GetStringAsync($"{apiDomain}{apiBasePath}jwt/jwks.json"); + var jwks = new JsonWebKeySet(response); + + var tokenHandler = new JwtSecurityTokenHandler(); + var validationParameters = new TokenValidationParameters + { + ValidAudience = audience, + IssuerSigningKeys = jwks.Keys + }; + + try + { + SecurityToken validatedToken; + var principal = tokenHandler.ValidateToken(jwtStr, validationParameters, out validatedToken); + var claims = principal.Claims.ToDictionary(c => c.Type, c => c.Value); + + if (!claims.ContainsKey("stt") || claims["stt"] != "1") + { + return false; + } + + var scopes = claims["scp"].Split(" "); + if (!scopes.Contains(requiredScope)) + { + return false; + } + + return true; + } + catch (Exception) + { + return false; + } + } +} + +``` + + + + + + + +:::info Custom Example + +If the **Task Service** uses the previously generated token to create a calendar event, the **Calendar Service** will have to check the following: +- The `stt` claim should be set to `1` +- The `scp` claim contain `event.create` +- The `aud` calim should be set to `event` + +::: + + + + + diff --git a/v2/microservice_auth/introduction.mdx b/v2/microservice_auth/introduction.mdx new file mode 100644 index 000000000..8d2b65b68 --- /dev/null +++ b/v2/microservice_auth/introduction.mdx @@ -0,0 +1,52 @@ +--- +id: introduction +title: Introduction +hide_title: true +--- + +# Introduction + +This guide explains how you can authenticate your microservices with **SuperTokens**. + +The standard way of doing this is to create an **OAuth2 Provider** and use the **OAuth2 Client Credentials Flow** for authorization. +At the moment this is only supported by the **NodeJS** SDK. +If you are using **python** or **golang** you will have to implement the legacy flow. + +## Client Credentials Flow + +:::caution + +This is only supported by the **NodeJS** SDK. + +::: + +This flow uses common **OAuth2** terminology. If you want a short explanation on how **OAuth2** works and its concepts, please check out [this page](/docs/unified-login/introduction#oauth2-basics). + +Machine to Machine Authentication + + +In the **Client Credentials Flow** the authentication sequence will work in the following way: + +1. `Service A` uses credentials to get an **OAuth2 Access Token** +2. [**Authorization Service**](/docs/unified-login/introduction#authorization-service) returns the **OAuth2 Access Token** +3. `Service A` uses the **OAuth2 Access Token** to communicate with `Service B` +4. `Service B` validates the **OAuth2 Access Token** +5. If the token is valid `Service B` returns the requested resource + +Check our [**extensive guide**](/docs/microservice_auth/client-credentials) that will show you how to setup the **Authorization Service** and how to complete all the steps using **SuperTokens**. + +## Legacy Flow + +This custom flow makes use of the **SuperTokens Core** without adhering to the **OAuth2** standard. +It involves creating private access tokens and passing them to the microservices. + +Microservice auth flow diagram + +The authentication sequene will work in the following way: + +1. Microservice `M1` requests a JWT (JSON Web Token) from the **SuperTokens Core** +2. Microservice `M1` sends the JWT to `M2` +3. Microservice `M2` will verifies the JWT and completes the action if the JWT is valid + +Follow the [**extensive guide**](/docs/microservice_auth/legacy/implementation-guide) for step by step instructions on how to achieve this. + diff --git a/v2/microservice_auth/jwt-creation.mdx b/v2/microservice_auth/jwt-creation.mdx new file mode 100644 index 000000000..f2f8c4ce4 --- /dev/null +++ b/v2/microservice_auth/jwt-creation.mdx @@ -0,0 +1,9 @@ +--- +id: jwt-creation +title: Creating a JWT +hide_title: true +--- + +import Redirector from '/src/components/Redirector'; + + diff --git a/v2/private-access-token-authentication/jwt-verification/get-public-key.mdx b/v2/microservice_auth/jwt-verification/get-public-key.mdx similarity index 73% rename from v2/private-access-token-authentication/jwt-verification/get-public-key.mdx rename to v2/microservice_auth/jwt-verification/get-public-key.mdx index 8bac5d330..24c5e3b80 100644 --- a/v2/private-access-token-authentication/jwt-verification/get-public-key.mdx +++ b/v2/microservice_auth/jwt-verification/get-public-key.mdx @@ -6,4 +6,5 @@ hide_title: true import Redirector from '/src/components/Redirector'; - \ No newline at end of file + + diff --git a/v2/microservice_auth/jwt-verification/index.mdx b/v2/microservice_auth/jwt-verification/index.mdx new file mode 100644 index 000000000..5890db077 --- /dev/null +++ b/v2/microservice_auth/jwt-verification/index.mdx @@ -0,0 +1,10 @@ +--- +id: index +title: Verify JWTs +hide_title: true +--- + +import Redirector from '/src/components/Redirector'; + + + diff --git a/v2/private-access-token-authentication/jwt-verification/index.mdx b/v2/microservice_auth/legacy/implementation-guide.mdx similarity index 66% rename from v2/private-access-token-authentication/jwt-verification/index.mdx rename to v2/microservice_auth/legacy/implementation-guide.mdx index 00f77bdc2..5a14004c6 100644 --- a/v2/private-access-token-authentication/jwt-verification/index.mdx +++ b/v2/microservice_auth/legacy/implementation-guide.mdx @@ -1,14 +1,278 @@ --- -id: index -title: Verify JWTs +id: implementation-guide +title: Implementation Guide hide_title: true --- -import AppInfoForm from "/src/components/appInfoForm" +import WithWithoutSDK from "/src/components/tabs/WithWithoutSDK"; import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs"; import TabItem from '@theme/TabItem'; +import PythonSyncAsyncSubTabs from "/src/components/tabs/PythonSyncAsyncSubTabs" +import AppInfoForm from "/src/components/appInfoForm" + +# Legacy Flow + +## Creating a JWT + +### When to create a JWT? +The first step is to create a JWT from the microservice that will be sending the request (let's call this microservice `M1`). This JWT will be verified by other microservices when `M1` sends them a request. Since this JWT remains static per microservice, the best time to create this is on process starts - i.e. when `M1` starts. + +### What to add in the JWT? +The JWT can contain any information you like, but at a minimum, it needs to contain information proving that it is a microservice that is allowed to query other microservices in your infrastructure. This is needed since you may issue a JWT to an end user as well, and they should not be able to query any microservice directly. + +We can add the following claim in the JWT to "mark" the JWT as one that is meant for microservice auth only: +```json +{..., "source": "microservice", ...} +``` + +In the receiving microservice (`M2`), we can then [verify the JWT](./jwt-verification/index) and check that this claim is present before serving the request. + + +### Code for creating a JWT + + + + +First, we need to initialise the `JWT` recipe in the `supertokens.init` function call: + + + + +```tsx +import supertokens from "supertokens-node" +import jwt from "supertokens-node/recipe/jwt" + +supertokens.init({ + appInfo: { + apiDomain: "...", + appName: "...", + websiteDomain: "..." + }, + supertokens: { + connectionURI: "...", // location of the core + apiKey: "..." // provide the core's API key if configured + }, + recipeList: [ + // highlight-next-line + jwt.init() + ] +}) +``` + + + + +```go +import ( + "github.com/supertokens/supertokens-golang/recipe/jwt" + "github.com/supertokens/supertokens-golang/supertokens" +) + +func main() { + supertokens.Init(supertokens.TypeInput{ + AppInfo: supertokens.AppInfo{ + AppName: "...", + WebsiteDomain: "...", + APIDomain: "...", + }, + Supertokens: &supertokens.ConnectionInfo{ + ConnectionURI: "...", // location of the core + APIKey: "...", // provide the core's API key if configured + }, + RecipeList: []supertokens.Recipe{ + // highlight-next-line + jwt.Init(nil), + }, + }) +} +``` + + + + +```python +from supertokens_python import init, InputAppInfo, SupertokensConfig +from supertokens_python.recipe import jwt + +init( + app_info=InputAppInfo( + app_name="...", + api_domain="...", + website_domain="...", + ), + supertokens_config=SupertokensConfig( + connection_uri="...", # location of the core + api_key="..." # provide the core's API key if configured + ), + framework='django', + recipe_list=[ + # highlight-next-line + jwt.init(), + ], +) +``` + + + + +:::important +- The value of `apiDomain` should be the domain part of the JWKS URL that will be used to verify the JWT (from `M2`). This should ideally be the domain of the microservice that has all the other SuperTokens' recipes initialised in them. +- If this microservice does not initialise any other recipe, the values of `appName` and `websiteDomain` don't matter. +::: + +After this, you can use the JWT recipe to create your own JWT whenever required: + + + + +```tsx +import jwt from "supertokens-node/recipe/jwt" + +async function createJWT(payload: any) { + let jwtResponse = await jwt.createJWT({ + ...payload, + source: "microservice" + }); + if (jwtResponse.status === "OK") { + // Send JWT as Authorization header to M2 + return jwtResponse.jwt; + } + throw new Error("Unable to create JWT. Should never come here.") +} +``` + + + + +```go +import ( + "fmt" + + "github.com/supertokens/supertokens-golang/recipe/jwt" +) + +func main() { + jwtResponse, err := jwt.CreateJWT(map[string]interface{}{ + "source": "microservice", + // ...additional payload + }, nil, nil) + if err != nil { + // handle error + } + jwtString := jwtResponse.OK.Jwt + fmt.Println(jwtString) + // Send JWT as Authorization header to M2 +} +``` + + + + + + + +```python +from supertokens_python.recipe.jwt import asyncio +from supertokens_python.recipe.jwt.interfaces import CreateJwtOkResult + +async def create_jwt(): + jwtResponse = await asyncio.create_jwt({ + "source": "microservice", + # ... extra payload + }) + + if isinstance(jwtResponse, CreateJwtOkResult): + _ = jwtResponse.jwt + # Send JWT as Authorization header to M2 + else: + raise Exception("Unable to create JWT. Should never come here.") +``` + + + + +```python +from supertokens_python.recipe.jwt.syncio import create_jwt +from supertokens_python.recipe.jwt.interfaces import CreateJwtOkResult + +jwtResponse = create_jwt({ + "source": "microservice", + # ... extra payload +}) + +if isinstance(jwtResponse, CreateJwtOkResult): + jwtStr = jwtResponse.jwt + # Send JWT as Authorization header to M2 +else: + raise Exception("Unable to create JWT. Should never come here.") +``` + + + + + + + +:::note +By default, the lifetime of the JWT will be a 100 years. You can pass a second argument to the `createJWT` function indicating a custom lifetime (in seconds) for the JWT. +::: + + +:::note +By default, the JWT is signed by a static key, not subject to the key rotation normally applied to access tokens. You can pass `false` as the third argument to the `createJWT` function to use use the dynamic keys. +::: + + + + +You can send a `HTTP` request to the core as follows: + +```bash +curl --location --request POST '${connectionURI}/recipe/jwt' \ +--header 'rid: jwt' \ +--header 'api-key: ${APIKey}' \ +--header 'Content-Type: application/json; charset=utf-8' \ +--data-raw '{ + "payload": { + "source": "microservice", + ... + }, + "useStaticSigningKey": true, + "algorithm": "RS256", + "jwksDomain": "${apiDomain}", + "validity": ${validityInSeconds} +}' +``` +- The value of `${connectionURI}` is the core's location +- `${APIKey}` is the API key to query the core. This is only needed if an API key is configured on the core. +- The value of `${apiDomain}` is the domain on which the JWKs URLs will be served from +- `${validityInSeconds}` is the lifetime of the JWT + +An example response is as follows: +```json +{ + "status": "OK", + "jwt": "eyJraWQiOiI0YTE...rCFPcIRgzu_bChIIpFdA" +} + +``` + + + + +### What to do with the JWT? +Once the JWT is created, you can store it in a (globally accessible) variable and access it when you want to talk to a microservice. You can add the JWT as an `Authorization: Bearer` token like so: + +```bash +curl --location --request POST 'https://microservice_location/path' \ +--header 'Authorization: Bearer eyJraWQiOiI0YTE...rCFPcIRgzu_bChIIpFdA' \ +--header 'Content-Type: application/json; charset=utf-8' \ +--data-raw '{ + "request": "payload" +}' +``` -# Verify JWTs +## Verify JWTs @@ -16,18 +280,18 @@ When a target microservice receives a JWT, it must first verify it before procee - A standard verification of the JWT - Checking the JWT claim to make sure that another microservice has queried it. -## Standard verification of a JWT +### Standard verification of a JWT -### Method 1) Using JWKS endpoint +#### Method 1) Using JWKS endpoint -#### a) Get JWKS endpoint +##### a) Get JWKS endpoint The JWKS endpoint is `{apiDomain}/{apiBasePath}/jwt/jwks.json`. Here the `apiDomain` and `apiBasePath` are values pointing to the server in which you have initalised SuperTokens using our backend SDK. -#### b) Verify the JWT +##### b) Verify the JWT Some libraries let you provide a JWKS endpoint to verify a JWT. For example for NodeJS you can use `jsonwebtoken` and `jwks-rsa` together to achieve this. @@ -74,7 +338,7 @@ Refer to this [Github gist](https://gist.github.com/rishabhpoddar/8c26ed237add1a -### Method 2) Using public key string +#### Method 2) Using public key string @@ -171,7 +435,7 @@ Not applicable. Please use method 1 instead. -## Claim verification +### Claim verification The second step is to get the JWT payload and check that it has the `"source": "microservice"` claim: @@ -218,7 +482,7 @@ Referring once again to this [Github gist](https://gist.github.com/rishabhpoddar -## M2M and frontend session verification for the same API +### M2M and frontend session verification for the same API You may have a setup wherein the same API is called from the frontend as well as from other microservices. The frontend session works differently than m2m sessions, so we have to account for both forms of token inputs. Our approach here would be to first attempt frontend session verification, and if that fails, then attempt m2m jwt verification (using the above method). If both fails, then we send back a `401` response. @@ -379,4 +643,4 @@ func likeCommentAPI(w http.ResponseWriter, r *http.Request) { - \ No newline at end of file + diff --git a/v2/private-access-token-authentication/security-analysis.mdx b/v2/microservice_auth/legacy/security-analysis.mdx similarity index 90% rename from v2/private-access-token-authentication/security-analysis.mdx rename to v2/microservice_auth/legacy/security-analysis.mdx index 94f616335..e20b9676a 100644 --- a/v2/private-access-token-authentication/security-analysis.mdx +++ b/v2/microservice_auth/legacy/security-analysis.mdx @@ -26,5 +26,3 @@ With just one SuperTokens core deployment, it is not possible to have this type We can achieve this type of restriction by deploying multiple cores connected to their own databases. In our example, we can deploy a dedicated SuperTokens core for `M3`'s auth, such that only `M3` uses that to verify the incoming JWTs. Then, only other services that have access to that core can create JWTs that `M3` will accept. So if `M1` doesn't have access to `M3`'s core's API key, then we can be assured that successful requests to `M3` are not from `M1`. -## What about OAuth 2.0 client credential flow? -The common way to achieve microservice auth is via [OAuth's client credential flow](https://oauth.net/2/grant-types/client-credentials/). We are in the process of becoming an OAuth 2.0 provider and would be implmenting this flow. \ No newline at end of file diff --git a/v2/microservice_auth/security-analysis.mdx b/v2/microservice_auth/security-analysis.mdx new file mode 100644 index 000000000..5536fa820 --- /dev/null +++ b/v2/microservice_auth/security-analysis.mdx @@ -0,0 +1,9 @@ +--- +id: security-analysis +title: Security Analysis +hide_title: true +--- + +import Redirector from '/src/components/Redirector'; + + diff --git a/v2/microservice_auth/sidebars.js b/v2/microservice_auth/sidebars.js new file mode 100644 index 000000000..e78498df0 --- /dev/null +++ b/v2/microservice_auth/sidebars.js @@ -0,0 +1,12 @@ +module.exports = { + sidebar: [ + "introduction", + "client-credentials", + { + type: "category", + label: "Legacy Flow", + collapsed: false, + items: ["legacy/implementation-guide", "legacy/security-analysis"], + }, + ], +}; diff --git a/v2/private-access-token-authentication/introduction.mdx b/v2/private-access-token-authentication/introduction.mdx deleted file mode 100644 index 022a21224..000000000 --- a/v2/private-access-token-authentication/introduction.mdx +++ /dev/null @@ -1,19 +0,0 @@ ---- -id: introduction -title: Introduction -hide_title: true ---- - -# Introduction - -This guide explains a way of authenticating microservices without setting up an **OAuth2 Provider**. -Keep in mind that our recommended way of doing this is by using the **OAuth2 Client Credentials Flow** described in the [following guide](/docs/unified-login/machine-to-machine-authentication). - - -When microservice `M1` wants to talk to microservice `M2`, `M1` will start by creating a JWT (by contacting the SuperTokens core), and pass that JWT to `M2`. - -`M2` will then verify the JWT, check that it's created by another microservice, and only then proceed with serving the request. - -Microservice auth flow diagram - -In the next sections, we will be showing you how to create and verify a JWT using SuperTokens. diff --git a/v2/private-access-token-authentication/jwt-creation.mdx b/v2/private-access-token-authentication/jwt-creation.mdx deleted file mode 100644 index 3c8b1468e..000000000 --- a/v2/private-access-token-authentication/jwt-creation.mdx +++ /dev/null @@ -1,270 +0,0 @@ ---- -id: jwt-creation -title: Creating a JWT -hide_title: true ---- - -import WithWithoutSDK from "/src/components/tabs/WithWithoutSDK"; -import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs"; -import TabItem from '@theme/TabItem'; -import PythonSyncAsyncSubTabs from "/src/components/tabs/PythonSyncAsyncSubTabs" - -# Creating a JWT - -## When to create a JWT? -The first step is to create a JWT from the microservice that will be sending the request (let's call this microservice `M1`). This JWT will be verified by other microservices when `M1` sends them a request. Since this JWT remains static per microservice, the best time to create this is on process starts - i.e. when `M1` starts. - -## What to add in the JWT? -The JWT can contain any information you like, but at a minimum, it needs to contain information proving that it is a microservice that is allowed to query other microservices in your infrastructure. This is needed since you may issue a JWT to an end user as well, and they should not be able to query any microservice directly. - -We can add the following claim in the JWT to "mark" the JWT as one that is meant for microservice auth only: -```json -{..., "source": "microservice", ...} -``` - -In the receiving microservice (`M2`), we can then [verify the JWT](./jwt-verification/index) and check that this claim is present before serving the request. - - -## Code for creating a JWT - - - - -First, we need to initialise the `JWT` recipe in the `supertokens.init` function call: - - - - -```tsx -import supertokens from "supertokens-node" -import jwt from "supertokens-node/recipe/jwt" - -supertokens.init({ - appInfo: { - apiDomain: "...", - appName: "...", - websiteDomain: "..." - }, - supertokens: { - connectionURI: "...", // location of the core - apiKey: "..." // provide the core's API key if configured - }, - recipeList: [ - // highlight-next-line - jwt.init() - ] -}) -``` - - - - -```go -import ( - "github.com/supertokens/supertokens-golang/recipe/jwt" - "github.com/supertokens/supertokens-golang/supertokens" -) - -func main() { - supertokens.Init(supertokens.TypeInput{ - AppInfo: supertokens.AppInfo{ - AppName: "...", - WebsiteDomain: "...", - APIDomain: "...", - }, - Supertokens: &supertokens.ConnectionInfo{ - ConnectionURI: "...", // location of the core - APIKey: "...", // provide the core's API key if configured - }, - RecipeList: []supertokens.Recipe{ - // highlight-next-line - jwt.Init(nil), - }, - }) -} -``` - - - - -```python -from supertokens_python import init, InputAppInfo, SupertokensConfig -from supertokens_python.recipe import jwt - -init( - app_info=InputAppInfo( - app_name="...", - api_domain="...", - website_domain="...", - ), - supertokens_config=SupertokensConfig( - connection_uri="...", # location of the core - api_key="..." # provide the core's API key if configured - ), - framework='django', - recipe_list=[ - # highlight-next-line - jwt.init(), - ], -) -``` - - - - -:::important -- The value of `apiDomain` should be the domain part of the JWKS URL that will be used to verify the JWT (from `M2`). This should ideally be the domain of the microservice that has all the other SuperTokens' recipes initialised in them. -- If this microservice does not initialise any other recipe, the values of `appName` and `websiteDomain` don't matter. -::: - -After this, you can use the JWT recipe to create your own JWT whenever required: - - - - -```tsx -import jwt from "supertokens-node/recipe/jwt" - -async function createJWT(payload: any) { - let jwtResponse = await jwt.createJWT({ - ...payload, - source: "microservice" - }); - if (jwtResponse.status === "OK") { - // Send JWT as Authorization header to M2 - return jwtResponse.jwt; - } - throw new Error("Unable to create JWT. Should never come here.") -} -``` - - - - -```go -import ( - "fmt" - - "github.com/supertokens/supertokens-golang/recipe/jwt" -) - -func main() { - jwtResponse, err := jwt.CreateJWT(map[string]interface{}{ - "source": "microservice", - // ...additional payload - }, nil, nil) - if err != nil { - // handle error - } - jwtString := jwtResponse.OK.Jwt - fmt.Println(jwtString) - // Send JWT as Authorization header to M2 -} -``` - - - - - - - -```python -from supertokens_python.recipe.jwt import asyncio -from supertokens_python.recipe.jwt.interfaces import CreateJwtOkResult - -async def create_jwt(): - jwtResponse = await asyncio.create_jwt({ - "source": "microservice", - # ... extra payload - }) - - if isinstance(jwtResponse, CreateJwtOkResult): - _ = jwtResponse.jwt - # Send JWT as Authorization header to M2 - else: - raise Exception("Unable to create JWT. Should never come here.") -``` - - - - -```python -from supertokens_python.recipe.jwt.syncio import create_jwt -from supertokens_python.recipe.jwt.interfaces import CreateJwtOkResult - -jwtResponse = create_jwt({ - "source": "microservice", - # ... extra payload -}) - -if isinstance(jwtResponse, CreateJwtOkResult): - jwtStr = jwtResponse.jwt - # Send JWT as Authorization header to M2 -else: - raise Exception("Unable to create JWT. Should never come here.") -``` - - - - - - - -:::note -By default, the lifetime of the JWT will be a 100 years. You can pass a second argument to the `createJWT` function indicating a custom lifetime (in seconds) for the JWT. -::: - - -:::note -By default, the JWT is signed by a static key, not subject to the key rotation normally applied to access tokens. You can pass `false` as the third argument to the `createJWT` function to use use the dynamic keys. -::: - - - - -You can send a `HTTP` request to the core as follows: - -```bash -curl --location --request POST '${connectionURI}/recipe/jwt' \ ---header 'rid: jwt' \ ---header 'api-key: ${APIKey}' \ ---header 'Content-Type: application/json; charset=utf-8' \ ---data-raw '{ - "payload": { - "source": "microservice", - ... - }, - "useStaticSigningKey": true, - "algorithm": "RS256", - "jwksDomain": "${apiDomain}", - "validity": ${validityInSeconds} -}' -``` -- The value of `${connectionURI}` is the core's location -- `${APIKey}` is the API key to query the core. This is only needed if an API key is configured on the core. -- The value of `${apiDomain}` is the domain on which the JWKs URLs will be served from -- `${validityInSeconds}` is the lifetime of the JWT - -An example response is as follows: -```json -{ - "status": "OK", - "jwt": "eyJraWQiOiI0YTE...rCFPcIRgzu_bChIIpFdA" -} - -``` - - - - -## What to do with the JWT? -Once the JWT is created, you can store it in a (globally accessible) variable and access it when you want to talk to a microservice. You can add the JWT as an `Authorization: Bearer` token like so: - -```bash -curl --location --request POST 'https://microservice_location/path' \ ---header 'Authorization: Bearer eyJraWQiOiI0YTE...rCFPcIRgzu_bChIIpFdA' \ ---header 'Content-Type: application/json; charset=utf-8' \ ---data-raw '{ - "request": "payload" -}' -``` diff --git a/v2/private-access-token-authentication/sidebars.js b/v2/private-access-token-authentication/sidebars.js deleted file mode 100644 index eae525a94..000000000 --- a/v2/private-access-token-authentication/sidebars.js +++ /dev/null @@ -1,21 +0,0 @@ -module.exports = { - sidebar: [ - "introduction", - { - type: "category", - label: "Implementation", - collapsed: false, - items: [ - "jwt-creation", - { - type: "category", - label: "JWT Verification", - items: [ - "jwt-verification/index" - ] - }, - ] - }, - "security-analysis" - ] -}; diff --git a/v2/src/theme/NavbarItem/recipeSelector.js b/v2/src/theme/NavbarItem/recipeSelector.js index 8bc1f9549..277a6b3c2 100644 --- a/v2/src/theme/NavbarItem/recipeSelector.js +++ b/v2/src/theme/NavbarItem/recipeSelector.js @@ -32,8 +32,8 @@ export default function RecipeSelector(props) { return "User Roles Recipe"; case "mfa": return "Multi factor auth"; - case "private-access-token-authentication": - return "Private Access Token Authentication"; + case "microservice_auth": + return "Microservice Authentication"; case "userdashboard": return "User Management Dashboard"; case "multitenancy": @@ -173,11 +173,11 @@ export default function RecipeSelector(props) {
  • - - Private Access Token Authentication + + Microservice Authentication
  • Date: Mon, 21 Oct 2024 18:10:12 +0100 Subject: [PATCH 22/33] Add info about how write a custom session verification function --- v2/microservice_auth/client-credentials.mdx | 16 +- v2/microservice_auth/jwt-creation.mdx | 2 +- .../jwt-verification/get-public-key.mdx | 2 +- .../jwt-verification/index.mdx | 2 +- v2/microservice_auth/security-analysis.mdx | 2 +- .../customizations/verify-tokens.mdx | 304 ------------------ v2/unified-login/introduction.mdx | 1 - .../machine-to-machine-authentication.mdx | 226 ------------- ...ltiple-frontends-with-a-single-backend.mdx | 187 +++++------ 9 files changed, 94 insertions(+), 648 deletions(-) delete mode 100644 v2/unified-login/machine-to-machine-authentication.mdx diff --git a/v2/microservice_auth/client-credentials.mdx b/v2/microservice_auth/client-credentials.mdx index 94d37bd25..08cfa697e 100644 --- a/v2/microservice_auth/client-credentials.mdx +++ b/v2/microservice_auth/client-credentials.mdx @@ -59,14 +59,7 @@ Now you should be able to use the OAuth2 recipes in your applications. For each of your **`microservices`** you will have to create a separate [**OAuth2 client**](/docs/unified-login/introduction#client). -This can be done by directly calling the **SuperTokens Core** API. - - - +This can be done by directly calling the **SuperTokens Core** API. ```bash # You will have to run this for each one of your applications @@ -125,6 +118,7 @@ By default, the token used in the authorization flow will have a 1 hour lifespan We recommend that you change it in order to use short lived tokens for improved security. To do this you will need to set the `clientCredentialsGrantAccessTokenLifespan` property in the [**Client**](/docs/unified-login/introduction#client) creation request body. + Use string values that signify time duration in milliecoseconds, seconds, minutes or hours (e.g. `"2000ms"`, `"60s"`, `"30m"`, `"1h"`). ## 3. Set Up your Authorization Service @@ -188,6 +182,12 @@ At the moment we do not have support creating OAuth2 providers in the Python SDK ## 4. Generate Access Tokens + + Now you can directly call the [**Authorization Server**](/docs/unified-login/introduction#authorization-server) to generate Access Tokens. Check the following code snippet to see how you can do that: diff --git a/v2/microservice_auth/jwt-creation.mdx b/v2/microservice_auth/jwt-creation.mdx index f2f8c4ce4..17df93788 100644 --- a/v2/microservice_auth/jwt-creation.mdx +++ b/v2/microservice_auth/jwt-creation.mdx @@ -6,4 +6,4 @@ hide_title: true import Redirector from '/src/components/Redirector'; - + diff --git a/v2/microservice_auth/jwt-verification/get-public-key.mdx b/v2/microservice_auth/jwt-verification/get-public-key.mdx index 24c5e3b80..6576bac47 100644 --- a/v2/microservice_auth/jwt-verification/get-public-key.mdx +++ b/v2/microservice_auth/jwt-verification/get-public-key.mdx @@ -6,5 +6,5 @@ hide_title: true import Redirector from '/src/components/Redirector'; - + diff --git a/v2/microservice_auth/jwt-verification/index.mdx b/v2/microservice_auth/jwt-verification/index.mdx index 5890db077..9bcaed28d 100644 --- a/v2/microservice_auth/jwt-verification/index.mdx +++ b/v2/microservice_auth/jwt-verification/index.mdx @@ -6,5 +6,5 @@ hide_title: true import Redirector from '/src/components/Redirector'; - + diff --git a/v2/microservice_auth/security-analysis.mdx b/v2/microservice_auth/security-analysis.mdx index 5536fa820..8313f7491 100644 --- a/v2/microservice_auth/security-analysis.mdx +++ b/v2/microservice_auth/security-analysis.mdx @@ -6,4 +6,4 @@ hide_title: true import Redirector from '/src/components/Redirector'; - + diff --git a/v2/unified-login/customizations/verify-tokens.mdx b/v2/unified-login/customizations/verify-tokens.mdx index 5b06b3925..a6eff02cd 100644 --- a/v2/unified-login/customizations/verify-tokens.mdx +++ b/v2/unified-login/customizations/verify-tokens.mdx @@ -30,310 +30,6 @@ We provide a series of code samples that show you how to check tokens based on t > -### Client Credentials Flow Token Validation - -Follow this example if you are verifying tokens in the context of microservice authentication. -You will have to check if the `audience` and `scopes` of the provided token match the ones that you expect. - - - - - -For NodeJS you can use [jose](https://github.com/panva/jose) to verify the token. - -```tsx -import jose from "jose"; - -const JWKS = jose.createRemoteJWKSet(new URL('^{form_apiDomain}^{form_apiBasePath}jwt/jwks.json')) - -async function validateClientCredentialsToken(jwt: string) { - const requiredScope = ""; - const audience = ''; - - try { - const { payload } = await jose.jwtVerify(jwt, JWKS, { - audience, - requiredClaims: ['stt', 'scp'], - }); - - if(payload.stt !== 1) return false; - - return payload.scp.includes(requiredScope); - } catch (err) { - return false; - } -} - -``` - - - - - - -You can use the [jwx](https://github.com/lestrrat-go/jwx) library to verify the token. - -```go -import ( - "context" - "fmt" - - "github.com/lestrrat-go/jwx/jwt" - "github.com/lestrrat-go/jwx/jwk" -) - -func ValidateToken(token string) bool { - apiDomain := "^{form_apiDomain}" - apiBasePath := "^{form_apiBasePath}" - requiredScope := "" - - jwksURL := fmt.Sprintf("%s%sjwt/jwks.json", apiDomain, apiBasePath) - jwks, err := jwk.Fetch(context.Background(), jwksURL) - if err != nil { - return false - } - - parsedToken, err := jwt.Parse( - []byte(token), - jwt.WithKeySet(jwks), - jwt.WithClaimValue("stt", 1), - jwt.WithAudience(""), - ) - if err != nil { - return false - } - - scp, ok := parsedToken.Get("scp") - if !ok { - return false - } - - scopes, ok := scp.([]interface{}) - if !ok { - return false - } - - for _, scope := range scopes { - if scope, ok := scope.(string); ok && scope == requiredScope { - return true - } - } - - return false; -} -``` - - - - - -You can use the [PyJWT](https://github.com/jpadilla/pyjwt) library to verify the token. - -```python -import requests -import jwt -from jwt import PyJWKClient - -def validate_token(token): - api_domain = "^{form_apiDomain}" - api_base_path = "^{form_apiBasePath}" - audience = "" - required_scope = "" - - jwks_url = f"{api_domain}{api_base_path}jwt/jwks.json" - jwks_client = PyJWKClient(jwks_url) - - try: - signing_key = jwks_client.get_signing_keys_from_jwt(token) - decoded = jwt.decode( - token, - signing_key.key, - algorithms=['RS256'], - audience=audience, - options={"require": ["stt", "scp"]} - ) - - sst = decoded.get('sst', None) - if stt != 1: - return False - - - scopes = decoded.get('scp', []) - if required_scope not in scopes: - return False - - return True - except Exception as e: - return False - -``` - - - - - -You can use the [Firebase JWT](https://github.com/firebase/php-jwt) library to verify the token. - -```php - -require 'vendor/autoload.php'; - -use Firebase\JWT\JWT; -use Firebase\JWT\Key; - -function validateToken($jwt) { - $apiDomain = "^{form_apiDomain}"; - $apiBasePath = "^{form_apiBasePath}"; - $jwksUrl = $apiDomain . $apiBasePath . '/jwt/jwks.json'; - $requiredScope = ""; - $audience = ""; - - $jwks = json_decode(file_get_contents($jwksUrl), true); - try { - $decoded = JWT::decode($jwt, JWK::parseKeySet($jwks), 'RS256')); - if ($decoded->aud !== $audience) { - return false; - } - if ($decoded->sst !== 1) { - return false; - } - return in_array($requiredScope, $decoded->scp); - } catch (Exception $e) { - return false; - } -} - -``` - - - - - -You can use the [Auth0 JWT](https://github.com/auth0/java-jwt) library to verify the token. - -```java - -import com.auth0.jwt.JWT; -import com.auth0.jwt.interfaces.DecodedJWT; -import com.auth0.jwt.interfaces.JWTVerifier; -import com.auth0.jwt.JWTVerifier.Base; -import com.auth0.jwt.algorithms.Algorithm; - -import java.net.URL; -import java.util.Map; -import java.io.InputStream; -import java.net.HttpURLConnection; -import java.nio.charset.StandardCharsets; -import java.util.Scanner; - -public class JWTVerifier { - - private static final String JWKS_URL = "^{form_apiDomain}^{form_apiBasePath}jwt/jwks.json"; - private static final String AUDIENCE = ""; - - private static Map fetchJWKS() throws Exception { - URL url = new URL(JWKS_URL); - HttpURLConnection connection = (HttpURLConnection) url.openConnection(); - connection.setRequestMethod("GET"); - - InputStream responseStream = connection.getInputStream(); - Scanner scanner = new Scanner(responseStream, StandardCharsets.UTF_8.name()); - String responseBody = scanner.useDelimiter("\\A").next(); - scanner.close(); - - return JWT.decode(responseBody).getHeader(); - } - - public static boolean validateToken(String token) { - try { - Map jwks = fetchJWKS(); - - Algorithm algorithm = Algorithm.RSA256(jwks.get("x5c"), null); - JWTVerifier verifier = JWT.require(algorithm) - .withAudience(AUDIENCE) - .build(); - - DecodedJWT jwt = verifier.verify(token); - if(jwt.getClaim("sst").asInt() != 1) { - return false; - } - List scopes = jwt.getClaim("scp").asList(); - return scopes.contains(requiredScope); - } catch (Exception e) { - return false; - } - } -} -``` - - - - - -You can use the [IdentityModel](https://github.com/IdentityModel/IdentityModel) library to verify the token. - -```csharp -using System; -using System.Linq; -using Microsoft.IdentityModel.Tokens; -using System.IdentityModel.Tokens.Jwt; -using System.Net.Http; -using System.Threading.Tasks; -using Newtonsoft.Json.Linq; - -class ClientCredentialsTokenValidator -{ - static async Task ValidateToken(string jwtStr) - { - string apiDomain = "^{form_apiDomain}"; - string apiBasePath = "^{form_apiBasePath}"; - string audience = ""; - string requiredScope = ""; - - HttpClient client = new HttpClient(); - var response = await client.GetStringAsync($"{apiDomain}{apiBasePath}jwt/jwks.json"); - var jwks = new JsonWebKeySet(response); - - var tokenHandler = new JwtSecurityTokenHandler(); - var validationParameters = new TokenValidationParameters - { - ValidAudience = audience, - IssuerSigningKeys = jwks.Keys - }; - - try - { - SecurityToken validatedToken; - var principal = tokenHandler.ValidateToken(jwtStr, validationParameters, out validatedToken); - var claims = principal.Claims.ToDictionary(c => c.Type, c => c.Value); - - if (!claims.ContainsKey("stt") || claims["stt"] != "1") - { - return false; - } - - var scopes = claims["scp"].Split(" "); - if (!scopes.Contains(requiredScope)) - { - return false; - } - - return true; - } - catch (Exception) - { - return false; - } - } -} - -``` - - - - - - ### Authorization Code Flow Token Validation Follow this example if you are verifying tokens in the context of authenticating users in a web application. diff --git a/v2/unified-login/introduction.mdx b/v2/unified-login/introduction.mdx index 85d20ab40..0bf238af2 100644 --- a/v2/unified-login/introduction.mdx +++ b/v2/unified-login/introduction.mdx @@ -18,7 +18,6 @@ They are outlined below and we provide separate guides for each of them. - **[If you have multiple frontend clients that connect to different backends](/docs/unified-login/multiple-frontends-with-separate-backends)** - **[If you have multiple frontend clients connecting to the same backend](/docs/unified-login/multiple-frontends-with-a-single-backend)** - **[If you want to reuse your website login for desktop and mobile apps](/docs/unified-login/reuse-website-login)** -- **[For authenticating microservices](/docs/unified-login/machine-to-machine-authentication)** For these specific instances we expose recipes that allow you to complete your setup. diff --git a/v2/unified-login/machine-to-machine-authentication.mdx b/v2/unified-login/machine-to-machine-authentication.mdx deleted file mode 100644 index 37ae01634..000000000 --- a/v2/unified-login/machine-to-machine-authentication.mdx +++ /dev/null @@ -1,226 +0,0 @@ ---- -title: Machine to Machine Authentication -hide_title: true ---- - -import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs" -import OAuthFrontendTabs from "/src/components/tabs/OAuthFrontendTabs" -import OAuthBackendTabs from "/src/components/tabs/OAuthBackendTabs" -import CoreInjector from "/src/components/coreInjector" -import AppInfoForm from "/src/components/appInfoForm" -import TabItem from '@theme/TabItem'; - -# Machine to Machine Authentication - -You can use the following guide if you want to implement a custom authentication flow between your microservices. - -Machine to Machine Authentication - -The authentication flow will work in the following way: - -1. `Service A` uses credentials to get an **OAuth2 Access Token** -2. [**Authorization Service**](/docs/unified-login/introduction#authorization-service) returns the **OAuth2 Access Token** -3. `Service A` uses the **OAuth2 Access Token** to communicate with `Service B` -4. `Service B` validates the **OAuth2 Access Token** -5. If the token is valid `Service B` returns the requested resource - - - -:::info -This guide assumes that you already have setup and configured **SuperTokens** in your [**Authorization Service**](/docs/unified-login/introduction#authorization-service). - -For more information on how to do that please check our [quickstart guide](/docs/thirdparty/introduction). -::: - - - - - -## 1. Enable the OAuth2 features from the Dashboard - -You will first have to enable the **OAuth2** features from the **SuperTokens.com Dashboard**. -1. Open the **SuperTokens.com Dashboard** -2. Click on the **Enabled Paid Features** button -3. Click on **Managed Service** -4. Check the **OAuth 2.0** option -5. Click *Save* - -Now you should be able to use the OAuth2 recipes in your applications. - - - -## 2. Create the OAuth2 Clients - - - - - -For each of your **`microservices`** you will have to create a separate [**OAuth2 client**](/docs/unified-login/introduction#client). -This can be done by directly calling the **SuperTokens Core** API. - - - - - -```bash -# You will have to run this for each one of your applications -# Adjust the client_name based on that -curl -X POST ^{coreInjector_uri_without_quotes}/recipe/oauth2/admin/clients \ - -H "Content-Type: application/json" \ - -H "api-key: ^{coreInjector_api_key_without_quotes}" \ - -d '{ - "clientName": "", - "grantTypes": ["client_credentials"], - "scope": " ", - "audience": [""] - }' -``` - - -- `clientName` - Then name of the client that will be used later for identification. -- `grantTypes` - The grant types that the [**Client**](/docs/unified-login/introduction#client) will use. - - `clientCredentials`: Allows the client to directly request an Access Token by authenticating itself with the Authorization Server using its own client credentials. -- `audience` - Value used to identify for whom a token was issued. When a service will request an **OAuth2 Token** that can be used on this client, the requested token should include one of the audience values. -- `scope` - A space separated string of scopes that the [**Client**](/docs/unified-login/introduction#client) will request access to. - -If the creation was successful, the API will return a response that looks like this: - -```json -{ - "clientName": "", - "clientId": "", - "clientSecret": "", - "callbackUrls": [], -} - -``` - -Based on the client creation process we can also infer the `authorizationUrl` value which is `^{form_apiDomain}^{form_apiBasePath}oauth/auth`. We will use this later on. - -### Change the default token lifespan - -By default, the token used in the authorization flow will have a 1 hour lifespan. - -If you want to change it you will need to set the `clientCredentialsGrantAccessTokenLifespan` property in the [**Client**](/docs/unified-login/introduction#client) creation request body. -Use string values that signify time duration in milliecoseconds, seconds, minutes or hours (e.g. `"2000ms"`, `"60s"`, `"30m"`, `"1h"`). - -Keep in mind to use short lived tokens so that they can be only used once in order to prevent security concerns. - -## 3. Set Up your Authorization Service - -In your [**Authorization Service**](/docs/unified-login/introduction#authorization-service) backend you will need to initialize the **OAuth2Provider** recipe. - - - - - -Update the `supertokens.init` call to include the new recipe. - -Add the new import statement and update the list of recipes with the new initialization step. - -```tsx - -import supertokens from "supertokens-node"; -import OAuth2Provider from "supertokens-node/recipe/oauth2provider"; - - -supertokens.init({ - supertokens: { - connectionURI: "...", - apiKey: "...", - }, - appInfo: { - appName: "...", - apiDomain: "...", - websiteDomain: "...", - }, - recipeList: [ - OAuth2Provider.init(), - ] -}); - -``` - - - - - - -:::caution - -At the moment we do not have support creating OAuth2 providers in the Go SDK. - -::: - - - - - -:::caution - -At the moment we do not have support creating OAuth2 providers in the Python SDK. - -::: - - - - - - -## 4. Generate Access Tokens - -Now you can directly call the [**Authorization Server**](/docs/unified-login/introduction#authorization-server) to generate Access Tokens. -Check the following code snippet to see how you can do that: - - -```bash - -curl -X POST ^{form_apiDomain}^{form_apiBasePath}/oauth/token \ --H "Content-Type: application/json" \ --d '{ - "clientId": "", - "clientSecret": "", - "grantType": "client_credentials", - "scope": [""], - "audience": "" -}' - -``` - -:::info - -The scopes that you are requesting should be limited to just the ones needed to access a resource on the service that acts as a **Resource Server**. -Otherwise, if the scopes are too broad, the token could be used by the **Resource Server** to authenticate against other services in the network. - -::: - -The **Authorization Server** will return a response that will look like this: - -```json -{ - "accessToken": "", - "expiresIn": 3600 -} -``` - -You will have to save the `accessToken` in memory so that you can use it in the next step. -The `expiresIn` field will tell you how long the token is valid for. - -Save this token in memory and use it to perform protected actions on the targeted service. -You will have to use a different token for each of the services that you want to communicate with. - -## 5. Use the Generated Access Token - -Now that you have an **OAuth2 Access Token** you can use it when communicating with the other services. -Just keep in mind to generate a new one when it expires. - -The service that will receive the request which includes the **OAuth2 Access Token** will have to verify it. -To see a detailed example of how to do this please check our [separate guide](/docs/unified-login/customizations/verify-tokens). - - - - diff --git a/v2/unified-login/multiple-frontends-with-a-single-backend.mdx b/v2/unified-login/multiple-frontends-with-a-single-backend.mdx index ea326ce23..199ebfdfe 100644 --- a/v2/unified-login/multiple-frontends-with-a-single-backend.mdx +++ b/v2/unified-login/multiple-frontends-with-a-single-backend.mdx @@ -224,9 +224,6 @@ You need to setup the Backend API so that it allows requests from all the fronte - - - ```tsx import express from "express"; import cors from "cors"; @@ -255,139 +252,118 @@ app.use(cors({ ``` - + -```tsx -import Hapi from "@hapi/hapi"; -import supertokens from "supertokens-node"; -import { plugin } from "supertokens-node/framework/hapi"; - -let server = Hapi.server({ - port: 8000, - routes: { - // highlight-start - cors: { - // Add your actual frontend domains here - origin: ["^{form_websiteDomain}", "", ""], - additionalHeaders: [...supertokens.getAllCORSHeaders()], - credentials: true, - } - // highlight-end - } -}); +:::caution -(async () => { - // highlight-next-line - await server.register(plugin); +At the moment we do not have support creating OAuth2 providers in the Go SDK. - await server.start(); -})(); +::: -``` - + -```tsx -import cors from "@fastify/cors"; -import supertokens from "supertokens-node"; -import { plugin } from "supertokens-node/framework/fastify"; -import formDataPlugin from "@fastify/formbody"; +:::caution -import fastifyImport from "fastify"; +At the moment we do not have support creating OAuth2 providers in the Python SDK. -let fastify = fastifyImport(); +::: -// highlight-start -fastify.register(cors, { - // Add your actual frontend domains here - origin: ["^{form_websiteDomain}", "", ""], - allowedHeaders: ['Content-Type', ...supertokens.getAllCORSHeaders()], - credentials: true, -}); -// highlight-end + -(async () => { - // highlight-next-line - await fastify.register(formDataPlugin); - // highlight-next-line - await fastify.register(plugin); + - await fastify.listen(8000); -})(); +### Implement a Custom Session Verification Function -``` - - +Given that the backend that represents the **Authorization Service** will also act as a **Resource Server** we will have to account for this in the way we verify the sessions. +This is needed because we are using two types of tokens: +- **SuperTokens Session Access Token**: Used during the login/logout flows. +- **OAuth2 Access Token**: Used to access protected resources and perform actions that need authorization. + +Hence we need a way to distinguish between these two and prevent errors. + + + + + +Here is an example of how to implement this in the context of an Express API: ```tsx -import Koa from "koa"; -import cors from '@koa/cors'; import supertokens from "supertokens-node"; -import { middleware } from "supertokens-node/framework/koa"; +import Session from "supertokens-node/recipe/session"; +import jose from "jose"; + + +async function verifySession(req, res, next) { + let session = undefined; + try { + session = await Session.getSession(req, res, { sessionRequired: false }); + } catch (err) { + if ( + !supertokens.isErrorFromSuperTokens(err) || + err.type !== supertokens.ErrorType.TRY_REFRESH_ERROR + ) { + next(err); + } + } -let app = new Koa(); + // In this case we are dealing with a SuperTokens Session + if (session !== undefined) { + const userId = session.getUserId(); + req.userId = userId; + next(); + } -// Add your actual frontend domains here -const allowedOrigins = ["^{form_websiteDomain}", "", ""]; + // The OAuth2 Access Token needs to be manually extracted and validated + let jwt: string | undefined = undefined; + if (req.headers["authorization"]) { + jwt = req.headers["authorization"].split("Bearer ")[1]; + } + if (jwt === undefined) { + next(new Error("No JWT found in the request")); + } -app.use(cors({ - // highlight-start - origin: (ctx) => { - const origin = ctx.get("Origin"); - if (allowedDomains.includes(origin)) { - return origin; - } - return ''; - }, - allowHeaders: ["content-type", ...supertokens.getAllCORSHeaders()], - credentials: true, - // highlight-end -})); + try { + const tokenPayload = await validateToken(jwt); + const userId = tokenPayload.sub; + req.userId = userId; + next(); + } catch (err) { + next(err); + } +} -// highlight-next-line -app.use(middleware()); +const JWKS = jose.createRemoteJWKSet( + new URL("^{form_apiDomain}^{form_apiBasePath}jwt/jwks.json"), +); -``` +// This is a basic example on how to validate an OAuth2 Token +// We have a separate page that talks more in depth about the process +async function validateToken(jwt: string, requiredScope: string) { + const { payload } = await jose.jwtVerify(jwt, JWKS, { + requiredClaims: ["stt", "scp", "sub"], + }); - - + if (payload.stt !== 1) throw new Error("Invalid token"); + const scopes = payload.scp as string[]; + if (!scopes.includes(requiredScope)) throw new Error("Invalid token"); -```tsx -import { RestApplication } from "@loopback/rest"; -import supertokens from "supertokens-node"; -import { middleware } from "supertokens-node/framework/loopback"; + return payload; +} -// Add your actual frontend domains here -const allowedOrigins = ["^{form_websiteDomain}", "", ""]; -const app = new RestApplication({ - rest: { - cors: { - // highlight-start - origin: function (origin, callback) { - if (allowedOrigins.indexOf(origin) !== -1) { - callback(null, true) - } else { - callback(new Error('Not allowed by CORS')) - } - }, - allowedHeaders: ["content-type", ...supertokens.getAllCORSHeaders()], - credentials: true - // highlight-end - } - } +// You can then use the function as a middleware for a protected route +const app = express(); +app.get("/protected", verifySession, async (req, res) => { + // Custom logic }); -// highlight-next-line -app.middleware(middleware); - ``` - - +For more information on how to verify the **OAuth2 Access Tokens** please check our [separate guide](/docs/unified-login/customizations/verify-tokens). @@ -413,6 +389,7 @@ At the moment we do not have support creating OAuth2 providers in the Python SDK + ## 4. Configure the Authorization Service Frontend Initialize the `OAuth2Provider` recipe on the frontend of your **Authorization Service**. From df764526f931f14c6bf208ed89651420d6f99581 Mon Sep 17 00:00:00 2001 From: Bogdan Carpusor Date: Tue, 22 Oct 2024 12:37:48 +0100 Subject: [PATCH 23/33] Add additional information about token validation --- .../email-verification/about.mdx | 8 ++ .../custom-ui/securing-routes.mdx | 8 +- .../pre-built-ui/securing-routes.mdx | 9 +- v2/microservice_auth/client-credentials.mdx | 4 +- .../email-verification/about.mdx | 8 ++ v2/passwordless/custom-ui/securing-routes.mdx | 8 +- .../pre-built-ui/securing-routes.mdx | 9 +- v2/src/components/OAuthDisclaimer.tsx | 30 +++++++ v2/src/components/recipeBoxes/guides.json | 4 +- .../email-verification/about.mdx | 8 ++ v2/thirdparty/custom-ui/securing-routes.mdx | 8 +- .../pre-built-ui/securing-routes.mdx | 9 +- .../email-verification/about.mdx | 8 ++ .../custom-ui/securing-routes.mdx | 8 +- .../pre-built-ui/securing-routes.mdx | 9 +- .../email-verification/about.mdx | 8 ++ .../custom-ui/securing-routes.mdx | 8 +- .../pre-built-ui/securing-routes.mdx | 9 +- .../customizations/verify-tokens.mdx | 87 +++++++++++++++---- 19 files changed, 159 insertions(+), 91 deletions(-) create mode 100644 v2/src/components/OAuthDisclaimer.tsx diff --git a/v2/emailpassword/common-customizations/email-verification/about.mdx b/v2/emailpassword/common-customizations/email-verification/about.mdx index 63b5e5ff1..66d6ba763 100644 --- a/v2/emailpassword/common-customizations/email-verification/about.mdx +++ b/v2/emailpassword/common-customizations/email-verification/about.mdx @@ -25,6 +25,14 @@ import VueUIImplementation from "/src/components/reusableSnippets/vueUIImplement Email verification is turned off by default. It is strongly encouraged to enable it to ensure the authenticity of your users. ::: +:::caution + +This guide only applies to scenarios in which you are using **SuperTokens Access Tokens**. + +If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, please check the [separate page](/docs/unified-login/customizations/verify-tokens) that shows you how to verify those types of tokens. + +::: + diff --git a/v2/emailpassword/custom-ui/securing-routes.mdx b/v2/emailpassword/custom-ui/securing-routes.mdx index be6ff39e1..bd08f8dfd 100644 --- a/v2/emailpassword/custom-ui/securing-routes.mdx +++ b/v2/emailpassword/custom-ui/securing-routes.mdx @@ -25,13 +25,7 @@ import FrontendMobileSubTabs from "/src/components/tabs/FrontendMobileSubTabs" -:::caution - -This guide only applies to scenarios in which you are using **SuperTokens Access Tokens**. - -If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, please check the [separate page](/docs/unified-login/customizations/verify-tokens) that shows you how to verify those types of tokens. - -::: + ### Requiring an active session diff --git a/v2/emailpassword/pre-built-ui/securing-routes.mdx b/v2/emailpassword/pre-built-ui/securing-routes.mdx index 5dfc65c35..98c6911b0 100644 --- a/v2/emailpassword/pre-built-ui/securing-routes.mdx +++ b/v2/emailpassword/pre-built-ui/securing-routes.mdx @@ -14,6 +14,7 @@ import TabItem from '@theme/TabItem'; import FrontendPreBuiltUITabs from "/src/components/tabs/FrontendPreBuiltUITabs" import GoFrameworkSubTabs from "/src/components/tabs/GoFrameworkSubTabs" import {Question, Answer}from "/src/components/question" +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" import RRDVersionSubTabs from "/src/components/tabs/RRDVersionSubTabs" # Securing your API and frontend routes @@ -24,13 +25,7 @@ import RRDVersionSubTabs from "/src/components/tabs/RRDVersionSubTabs" -:::caution - -This guide only applies to scenarios in which you are using **SuperTokens Access Tokens**. - -If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, please check the [separate page](/docs/unified-login/customizations/verify-tokens) that shows you how to verify those types of tokens. - -::: + ### Requiring an active session diff --git a/v2/microservice_auth/client-credentials.mdx b/v2/microservice_auth/client-credentials.mdx index 08cfa697e..a52fd07b7 100644 --- a/v2/microservice_auth/client-credentials.mdx +++ b/v2/microservice_auth/client-credentials.mdx @@ -26,7 +26,7 @@ Also, if you are not familiar with how **OAuth2** works, please check our [separ Before going into the actual steps lets start by imagining a real life example that we can reference along the way. This will make it easier to understand what we are doing. -Lets assume that we are trying to configure authentication for the following setup: +We are going to configure authentication for the following setup: - A **Calendar Service** that exposes these actions: `event.view`, `event.create`, `event.update` and `event.delete` - A **File Service** that exposes these actions: `file.view`, `file.create`, `file.update` and `file.delete` - A **Task Service** that interacts with the **Calendar Service** and the **File Service** in the process of scheduling a task @@ -556,7 +556,7 @@ class ClientCredentialsTokenValidator If the **Task Service** uses the previously generated token to create a calendar event, the **Calendar Service** will have to check the following: - The `stt` claim should be set to `1` -- The `scp` claim contain `event.create` +- The `scp` claim contains `event.create` - The `aud` calim should be set to `event` ::: diff --git a/v2/passwordless/common-customizations/email-verification/about.mdx b/v2/passwordless/common-customizations/email-verification/about.mdx index 63b5e5ff1..66d6ba763 100644 --- a/v2/passwordless/common-customizations/email-verification/about.mdx +++ b/v2/passwordless/common-customizations/email-verification/about.mdx @@ -25,6 +25,14 @@ import VueUIImplementation from "/src/components/reusableSnippets/vueUIImplement Email verification is turned off by default. It is strongly encouraged to enable it to ensure the authenticity of your users. ::: +:::caution + +This guide only applies to scenarios in which you are using **SuperTokens Access Tokens**. + +If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, please check the [separate page](/docs/unified-login/customizations/verify-tokens) that shows you how to verify those types of tokens. + +::: + diff --git a/v2/passwordless/custom-ui/securing-routes.mdx b/v2/passwordless/custom-ui/securing-routes.mdx index be6ff39e1..bd08f8dfd 100644 --- a/v2/passwordless/custom-ui/securing-routes.mdx +++ b/v2/passwordless/custom-ui/securing-routes.mdx @@ -25,13 +25,7 @@ import FrontendMobileSubTabs from "/src/components/tabs/FrontendMobileSubTabs" -:::caution - -This guide only applies to scenarios in which you are using **SuperTokens Access Tokens**. - -If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, please check the [separate page](/docs/unified-login/customizations/verify-tokens) that shows you how to verify those types of tokens. - -::: + ### Requiring an active session diff --git a/v2/passwordless/pre-built-ui/securing-routes.mdx b/v2/passwordless/pre-built-ui/securing-routes.mdx index 5dfc65c35..98c6911b0 100644 --- a/v2/passwordless/pre-built-ui/securing-routes.mdx +++ b/v2/passwordless/pre-built-ui/securing-routes.mdx @@ -14,6 +14,7 @@ import TabItem from '@theme/TabItem'; import FrontendPreBuiltUITabs from "/src/components/tabs/FrontendPreBuiltUITabs" import GoFrameworkSubTabs from "/src/components/tabs/GoFrameworkSubTabs" import {Question, Answer}from "/src/components/question" +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" import RRDVersionSubTabs from "/src/components/tabs/RRDVersionSubTabs" # Securing your API and frontend routes @@ -24,13 +25,7 @@ import RRDVersionSubTabs from "/src/components/tabs/RRDVersionSubTabs" -:::caution - -This guide only applies to scenarios in which you are using **SuperTokens Access Tokens**. - -If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, please check the [separate page](/docs/unified-login/customizations/verify-tokens) that shows you how to verify those types of tokens. - -::: + ### Requiring an active session diff --git a/v2/src/components/OAuthDisclaimer.tsx b/v2/src/components/OAuthDisclaimer.tsx new file mode 100644 index 000000000..05e0c6845 --- /dev/null +++ b/v2/src/components/OAuthDisclaimer.tsx @@ -0,0 +1,30 @@ +import React from "react"; + +function OAuthVerifyTokensDisclaimer() { + return ( +
    +
    +
    CAUTION
    +
    +
    +

    + This guide only applies to scenarios in which you are using{" "} + SuperTokens Access Tokens. +

    +

    + If you are implementing{" "} + + Unified Login + {" "} + with OAuth2 Access Tokens, please check the{" "} + + separate page + {" "} + that shows you how to verify those types of tokens. +

    +
    +
    + ); +} + +export { OAuthVerifyTokensDisclaimer }; diff --git a/v2/src/components/recipeBoxes/guides.json b/v2/src/components/recipeBoxes/guides.json index 77a67fe20..4aa8ef9da 100644 --- a/v2/src/components/recipeBoxes/guides.json +++ b/v2/src/components/recipeBoxes/guides.json @@ -49,9 +49,9 @@ "path": "/docs/mfa/introduction" }, { - "title": "Private Access Token Authentication", + "title": "Microservice Authentication", "icon": "micro", - "path": "/docs/private-access-token-authentication/introduction" + "path": "/docs/microservice_auth/introduction" }, { "title": "Session Management", diff --git a/v2/thirdparty/common-customizations/email-verification/about.mdx b/v2/thirdparty/common-customizations/email-verification/about.mdx index 63b5e5ff1..66d6ba763 100644 --- a/v2/thirdparty/common-customizations/email-verification/about.mdx +++ b/v2/thirdparty/common-customizations/email-verification/about.mdx @@ -25,6 +25,14 @@ import VueUIImplementation from "/src/components/reusableSnippets/vueUIImplement Email verification is turned off by default. It is strongly encouraged to enable it to ensure the authenticity of your users. ::: +:::caution + +This guide only applies to scenarios in which you are using **SuperTokens Access Tokens**. + +If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, please check the [separate page](/docs/unified-login/customizations/verify-tokens) that shows you how to verify those types of tokens. + +::: + diff --git a/v2/thirdparty/custom-ui/securing-routes.mdx b/v2/thirdparty/custom-ui/securing-routes.mdx index be6ff39e1..bd08f8dfd 100644 --- a/v2/thirdparty/custom-ui/securing-routes.mdx +++ b/v2/thirdparty/custom-ui/securing-routes.mdx @@ -25,13 +25,7 @@ import FrontendMobileSubTabs from "/src/components/tabs/FrontendMobileSubTabs" -:::caution - -This guide only applies to scenarios in which you are using **SuperTokens Access Tokens**. - -If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, please check the [separate page](/docs/unified-login/customizations/verify-tokens) that shows you how to verify those types of tokens. - -::: + ### Requiring an active session diff --git a/v2/thirdparty/pre-built-ui/securing-routes.mdx b/v2/thirdparty/pre-built-ui/securing-routes.mdx index 5dfc65c35..98c6911b0 100644 --- a/v2/thirdparty/pre-built-ui/securing-routes.mdx +++ b/v2/thirdparty/pre-built-ui/securing-routes.mdx @@ -14,6 +14,7 @@ import TabItem from '@theme/TabItem'; import FrontendPreBuiltUITabs from "/src/components/tabs/FrontendPreBuiltUITabs" import GoFrameworkSubTabs from "/src/components/tabs/GoFrameworkSubTabs" import {Question, Answer}from "/src/components/question" +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" import RRDVersionSubTabs from "/src/components/tabs/RRDVersionSubTabs" # Securing your API and frontend routes @@ -24,13 +25,7 @@ import RRDVersionSubTabs from "/src/components/tabs/RRDVersionSubTabs" -:::caution - -This guide only applies to scenarios in which you are using **SuperTokens Access Tokens**. - -If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, please check the [separate page](/docs/unified-login/customizations/verify-tokens) that shows you how to verify those types of tokens. - -::: + ### Requiring an active session diff --git a/v2/thirdpartyemailpassword/common-customizations/email-verification/about.mdx b/v2/thirdpartyemailpassword/common-customizations/email-verification/about.mdx index 63b5e5ff1..66d6ba763 100644 --- a/v2/thirdpartyemailpassword/common-customizations/email-verification/about.mdx +++ b/v2/thirdpartyemailpassword/common-customizations/email-verification/about.mdx @@ -25,6 +25,14 @@ import VueUIImplementation from "/src/components/reusableSnippets/vueUIImplement Email verification is turned off by default. It is strongly encouraged to enable it to ensure the authenticity of your users. ::: +:::caution + +This guide only applies to scenarios in which you are using **SuperTokens Access Tokens**. + +If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, please check the [separate page](/docs/unified-login/customizations/verify-tokens) that shows you how to verify those types of tokens. + +::: + diff --git a/v2/thirdpartyemailpassword/custom-ui/securing-routes.mdx b/v2/thirdpartyemailpassword/custom-ui/securing-routes.mdx index be6ff39e1..bd08f8dfd 100644 --- a/v2/thirdpartyemailpassword/custom-ui/securing-routes.mdx +++ b/v2/thirdpartyemailpassword/custom-ui/securing-routes.mdx @@ -25,13 +25,7 @@ import FrontendMobileSubTabs from "/src/components/tabs/FrontendMobileSubTabs" -:::caution - -This guide only applies to scenarios in which you are using **SuperTokens Access Tokens**. - -If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, please check the [separate page](/docs/unified-login/customizations/verify-tokens) that shows you how to verify those types of tokens. - -::: + ### Requiring an active session diff --git a/v2/thirdpartyemailpassword/pre-built-ui/securing-routes.mdx b/v2/thirdpartyemailpassword/pre-built-ui/securing-routes.mdx index 5dfc65c35..98c6911b0 100644 --- a/v2/thirdpartyemailpassword/pre-built-ui/securing-routes.mdx +++ b/v2/thirdpartyemailpassword/pre-built-ui/securing-routes.mdx @@ -14,6 +14,7 @@ import TabItem from '@theme/TabItem'; import FrontendPreBuiltUITabs from "/src/components/tabs/FrontendPreBuiltUITabs" import GoFrameworkSubTabs from "/src/components/tabs/GoFrameworkSubTabs" import {Question, Answer}from "/src/components/question" +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" import RRDVersionSubTabs from "/src/components/tabs/RRDVersionSubTabs" # Securing your API and frontend routes @@ -24,13 +25,7 @@ import RRDVersionSubTabs from "/src/components/tabs/RRDVersionSubTabs" -:::caution - -This guide only applies to scenarios in which you are using **SuperTokens Access Tokens**. - -If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, please check the [separate page](/docs/unified-login/customizations/verify-tokens) that shows you how to verify those types of tokens. - -::: + ### Requiring an active session diff --git a/v2/thirdpartypasswordless/common-customizations/email-verification/about.mdx b/v2/thirdpartypasswordless/common-customizations/email-verification/about.mdx index 63b5e5ff1..66d6ba763 100644 --- a/v2/thirdpartypasswordless/common-customizations/email-verification/about.mdx +++ b/v2/thirdpartypasswordless/common-customizations/email-verification/about.mdx @@ -25,6 +25,14 @@ import VueUIImplementation from "/src/components/reusableSnippets/vueUIImplement Email verification is turned off by default. It is strongly encouraged to enable it to ensure the authenticity of your users. ::: +:::caution + +This guide only applies to scenarios in which you are using **SuperTokens Access Tokens**. + +If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, please check the [separate page](/docs/unified-login/customizations/verify-tokens) that shows you how to verify those types of tokens. + +::: + diff --git a/v2/thirdpartypasswordless/custom-ui/securing-routes.mdx b/v2/thirdpartypasswordless/custom-ui/securing-routes.mdx index be6ff39e1..bd08f8dfd 100644 --- a/v2/thirdpartypasswordless/custom-ui/securing-routes.mdx +++ b/v2/thirdpartypasswordless/custom-ui/securing-routes.mdx @@ -25,13 +25,7 @@ import FrontendMobileSubTabs from "/src/components/tabs/FrontendMobileSubTabs" -:::caution - -This guide only applies to scenarios in which you are using **SuperTokens Access Tokens**. - -If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, please check the [separate page](/docs/unified-login/customizations/verify-tokens) that shows you how to verify those types of tokens. - -::: + ### Requiring an active session diff --git a/v2/thirdpartypasswordless/pre-built-ui/securing-routes.mdx b/v2/thirdpartypasswordless/pre-built-ui/securing-routes.mdx index 5dfc65c35..98c6911b0 100644 --- a/v2/thirdpartypasswordless/pre-built-ui/securing-routes.mdx +++ b/v2/thirdpartypasswordless/pre-built-ui/securing-routes.mdx @@ -14,6 +14,7 @@ import TabItem from '@theme/TabItem'; import FrontendPreBuiltUITabs from "/src/components/tabs/FrontendPreBuiltUITabs" import GoFrameworkSubTabs from "/src/components/tabs/GoFrameworkSubTabs" import {Question, Answer}from "/src/components/question" +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" import RRDVersionSubTabs from "/src/components/tabs/RRDVersionSubTabs" # Securing your API and frontend routes @@ -24,13 +25,7 @@ import RRDVersionSubTabs from "/src/components/tabs/RRDVersionSubTabs" -:::caution - -This guide only applies to scenarios in which you are using **SuperTokens Access Tokens**. - -If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, please check the [separate page](/docs/unified-login/customizations/verify-tokens) that shows you how to verify those types of tokens. - -::: + ### Requiring an active session diff --git a/v2/unified-login/customizations/verify-tokens.mdx b/v2/unified-login/customizations/verify-tokens.mdx index a6eff02cd..3eabc6715 100644 --- a/v2/unified-login/customizations/verify-tokens.mdx +++ b/v2/unified-login/customizations/verify-tokens.mdx @@ -10,16 +10,34 @@ import TabItem from '@theme/TabItem'; # Verify Tokens -In order to check the validity of a token we recommend using a generic **JWT** verification library. +There are two ways with which you can verify an **OAuth2 Access Token**: +- By using a standard **JWT**, JSON Web Token, verification library +- By calling the special introspection endpoint that we expose through the core service -Besides the standard **OAuth2** token claims our implementation includes an additional one called `stt`. +We will explain when you should use each method in the sections below. + +One thing to note is that, besides the standard **OAuth2** token claims, our implementation includes an additional one called `stt`. This stands for `SuperTokens Token Type`. -It is used to make sure that the validation is performed for the correct token type: `0` represents a **SuperTokens Session Access Token**, `1` represents an **OAuth2 Access Token** and `2` represents an **OAuth2 ID Token**. +It is used to make sure that the validation is performed for the correct token type: +- `0` represents a **SuperTokens Session Access Token** +- `1` represents an **OAuth2 Access Token** +- `2` represents an **OAuth2 ID Token**. + + +## Validation Method -## OAuth2 Access Tokens +### Using a generic JWT verification library -We provide a series of code samples that show you how to check tokens based on the requirements of each authentication flow. +This is the standard validation method and should be used for most of the operations that need to be protected. +It will tell you that the token is valid from a cryptographic standpoint and that it has not expired. +The code samples show you a basic validation scenario where we check if the token has the required scope in order for an action to be performed. + +:::info + +If your scenario involves a common backend with multiple frontend clients you can drop the `client_id` check. + +::: @@ -29,18 +47,6 @@ We provide a series of code samples that show you how to check tokens based on t askForWebsiteDomain > - -### Authorization Code Flow Token Validation - -Follow this example if you are verifying tokens in the context of authenticating users in a web application. -You will have to check if the `client_id` and `scopes` of the provided token match the ones you expect. - -:::info - -If your scenario involves a common backend for multiple frontend clients you can drop the `cleint_id` check. - -::: - @@ -356,7 +362,54 @@ class AuthorizationCodeTokenValidator +#### Email Verification + +If you are using email and password based authentication, and you want to validate if the user has verified their email, you will have to check if the `email_verified` claim is true. + +### Calling the Token Introspection API + +When a user logs out, their token will be removed from the **SuperTokens Core** database. +That change will not reflect in token validation process that uses a JWT verification library. +The token will stil be valid until its expiration time. + +In order to completely make sure that the token has not been removed you can directly call the **SuperTokens Core** service. +We recommend that you perform this process for high security operations, in order to avoid the risk of a token being used by a malicious agent. + +Here is an example of how you can use this validation method: + +#### By Directly Calling the Introspection Endpoint + +```bash +# The response status should be 200 +# and the body should have an "active" property set to true +curl -X POST \ + -H "Content-Type: application/json" \ + -d '{"token": ""}' \ + "^{form_apiDomain}^{form_apiBasePath}/oauth/introspect" +``` + +#### By Using the SDK Method + +If you are using a **NodeJS** backend you can directly call the SDK. + +```tsx +import OAuth2Provider from "supertokens-auth-react/recipe/oauth2provider"; + +async function validateToken(token: string) { + const { status } = await OAuth2Provider.validateOAuth2AccessToken( + token, + { + clientId: "", + scopes: [""], + }, + true + ); + + return status === "OK"; +} +```
    + From 83f001b2b8fbb5cc4264f30cb5f79ffec05c9768 Mon Sep 17 00:00:00 2001 From: Bogdan Carpusor Date: Tue, 22 Oct 2024 16:13:38 +0100 Subject: [PATCH 24/33] Update the custom ui guide --- .../custom-ui/enable-email-verification.mdx | 3 + .../custom-ui/handling-session-tokens.mdx | 6 +- .../custom-ui/securing-routes.mdx | 1 + .../enable-email-verification.mdx | 3 + .../further-reading/email-verification.mdx | 4 + .../pre-built-ui/handling-session-tokens.mdx | 5 +- v2/microservice_auth/client-credentials.mdx | 4 +- .../custom-ui/enable-email-verification.mdx | 3 + .../custom-ui/handling-session-tokens.mdx | 6 +- v2/passwordless/custom-ui/securing-routes.mdx | 1 + .../enable-email-verification.mdx | 3 + .../further-reading/email-verification.mdx | 4 + .../pre-built-ui/handling-session-tokens.mdx | 5 +- .../quick-setup/handling-session-tokens.mdx | 6 +- v2/src/components/OAuthDisclaimer.tsx | 32 ++++- .../custom-ui/enable-email-verification.mdx | 3 + .../custom-ui/handling-session-tokens.mdx | 6 +- v2/thirdparty/custom-ui/securing-routes.mdx | 1 + .../enable-email-verification.mdx | 3 + .../further-reading/email-verification.mdx | 4 + .../pre-built-ui/handling-session-tokens.mdx | 5 +- .../custom-ui/enable-email-verification.mdx | 3 + .../custom-ui/handling-session-tokens.mdx | 6 +- .../custom-ui/securing-routes.mdx | 1 + .../enable-email-verification.mdx | 5 +- .../further-reading/email-verification.mdx | 6 +- .../pre-built-ui/handling-session-tokens.mdx | 5 +- .../custom-ui/enable-email-verification.mdx | 3 + .../custom-ui/handling-session-tokens.mdx | 6 +- .../custom-ui/securing-routes.mdx | 1 + .../enable-email-verification.mdx | 3 + .../further-reading/email-verification.mdx | 4 + .../pre-built-ui/handling-session-tokens.mdx | 5 +- v2/unified-login/customizations/custom-ui.mdx | 115 ++++++++++++++---- 34 files changed, 218 insertions(+), 53 deletions(-) diff --git a/v2/emailpassword/custom-ui/enable-email-verification.mdx b/v2/emailpassword/custom-ui/enable-email-verification.mdx index 79601a7ef..0b405f8f2 100644 --- a/v2/emailpassword/custom-ui/enable-email-verification.mdx +++ b/v2/emailpassword/custom-ui/enable-email-verification.mdx @@ -15,6 +15,7 @@ import {Answer} from "/src/components/question" import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs"; import FrontendPreBuiltUITabs from "/src/components/tabs/FrontendPreBuiltUITabs"; import TabItem from "@theme/TabItem"; +import { OAuthEmailVerificationDisclaimer }from "/src/components/OAuthDisclaimer" import NodeJSFrameworkSubTabs from "/src/components/tabs/NodeJSFrameworkSubTabs"; import GoFrameworkSubTabs from "/src/components/tabs/GoFrameworkSubTabs" import PythonFrameworkSubTabs from "/src/components/tabs/PythonFrameworkSubTabs"; @@ -24,6 +25,8 @@ There are two modes of email verification: - `REQUIRED`: Requires that the user's email is verified before they can access your application's frontend or backend routes (that are protected with a session). - `OPTIONAL`: Adds information about email verification into the session, but leaves it up to you to enforce it on the backend and frontend based on your business logic. + + ## Step 1: Backend setup diff --git a/v2/emailpassword/custom-ui/handling-session-tokens.mdx b/v2/emailpassword/custom-ui/handling-session-tokens.mdx index 5c8cb0294..bdfa1a21f 100644 --- a/v2/emailpassword/custom-ui/handling-session-tokens.mdx +++ b/v2/emailpassword/custom-ui/handling-session-tokens.mdx @@ -9,6 +9,7 @@ hide_title: true import NpmOrScriptTabs from "/src/components/tabs/NpmOrScriptTabs" import FrontendPreBuiltUITabs from "/src/components/tabs/FrontendPreBuiltUITabs" +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" import FrontendCustomUITabs from "/src/components/tabs/FrontendCustomUITabs" import FrontendMobileSubTabs from "/src/components/tabs/FrontendMobileSubTabs" import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs"; @@ -23,6 +24,7 @@ There are two modes ways in which you can use sessions with SuperTokens: Our frontend SDK uses `httpOnly` cookie based session for websites by default as it secures against tokens theft via XSS attacks. For other platform like mobile apps, we use a bearer token in the Authorization header by default. This setting can be changed [as described in the token transfer section](../common-customizations/sessions/token-transfer-method) + ## If using our frontend SDK @@ -41,9 +43,9 @@ Our frontend SDK handles everything for you. You only need to make sure that you Our SDK adds interceptors to `fetch` and `XHR` (used by `axios`) to save and add session tokens from and to the request. -:::note By default, our web SDKs use cookies to provide credentials. -::: + + diff --git a/v2/emailpassword/custom-ui/securing-routes.mdx b/v2/emailpassword/custom-ui/securing-routes.mdx index bd08f8dfd..b33427557 100644 --- a/v2/emailpassword/custom-ui/securing-routes.mdx +++ b/v2/emailpassword/custom-ui/securing-routes.mdx @@ -9,6 +9,7 @@ hide_title: true import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs" import NodeJSFrameworkSubTabs from "/src/components/tabs/NodeJSFrameworkSubTabs"; +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" import PythonFrameworkSubTabs from "/src/components/tabs/PythonFrameworkSubTabs"; import TabItem from '@theme/TabItem'; import FrontendCustomUITabs from "/src/components/tabs/FrontendCustomUITabs" diff --git a/v2/emailpassword/pre-built-ui/enable-email-verification.mdx b/v2/emailpassword/pre-built-ui/enable-email-verification.mdx index 75f90ad35..401e208f8 100644 --- a/v2/emailpassword/pre-built-ui/enable-email-verification.mdx +++ b/v2/emailpassword/pre-built-ui/enable-email-verification.mdx @@ -15,6 +15,7 @@ import {Answer} from "/src/components/question" import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs"; import FrontendPreBuiltUITabs from "/src/components/tabs/FrontendPreBuiltUITabs"; import TabItem from "@theme/TabItem"; +import { OAuthEmailVerificationDisclaimer }from "/src/components/OAuthDisclaimer" import NodeJSFrameworkSubTabs from "/src/components/tabs/NodeJSFrameworkSubTabs"; import GoFrameworkSubTabs from "/src/components/tabs/GoFrameworkSubTabs" import PythonFrameworkSubTabs from "/src/components/tabs/PythonFrameworkSubTabs"; @@ -24,6 +25,8 @@ There are two modes of email verification: - `REQUIRED`: Requires that the user's email is verified before they can access your application's frontend or backend routes (that are protected with a session). - `OPTIONAL`: Adds information about email verification into the session, but leaves it up to you to enforce it on the backend and frontend based on your business logic. + + ## Step 1: Backend setup diff --git a/v2/emailpassword/pre-built-ui/further-reading/email-verification.mdx b/v2/emailpassword/pre-built-ui/further-reading/email-verification.mdx index 6ceea4ed2..e05b3ee5a 100644 --- a/v2/emailpassword/pre-built-ui/further-reading/email-verification.mdx +++ b/v2/emailpassword/pre-built-ui/further-reading/email-verification.mdx @@ -7,6 +7,8 @@ hide_title: true +import { OAuthEmailVerificationDisclaimer }from "/src/components/OAuthDisclaimer" + # Email verification There are two modes of email verification: @@ -15,6 +17,8 @@ There are two modes of email verification: ## Information stored in session + + On sign in or sign up, SuperTokens adds information about the email verification status in the session's payload using the `EmailVerificationClaim`. It looks like this: ```json diff --git a/v2/emailpassword/pre-built-ui/handling-session-tokens.mdx b/v2/emailpassword/pre-built-ui/handling-session-tokens.mdx index 05314c1d7..69b80421f 100644 --- a/v2/emailpassword/pre-built-ui/handling-session-tokens.mdx +++ b/v2/emailpassword/pre-built-ui/handling-session-tokens.mdx @@ -10,6 +10,7 @@ hide_title: true import NpmOrScriptTabs from "/src/components/tabs/NpmOrScriptTabs" import FrontendPreBuiltUITabs from "/src/components/tabs/FrontendPreBuiltUITabs" import FrontendCustomUITabs from "/src/components/tabs/FrontendCustomUITabs" +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs"; import TabItem from '@theme/TabItem'; @@ -27,9 +28,9 @@ Our frontend SDK handles everything for you. You only need to make sure that you Our SDK adds interceptors to `fetch` and `XHR` (used by `axios`) to save and add session tokens from and to the request. -:::note By default, our web SDKs use cookies to provide credentials. -::: + + diff --git a/v2/microservice_auth/client-credentials.mdx b/v2/microservice_auth/client-credentials.mdx index a52fd07b7..35cac9702 100644 --- a/v2/microservice_auth/client-credentials.mdx +++ b/v2/microservice_auth/client-credentials.mdx @@ -23,7 +23,7 @@ Also, if you are not familiar with how **OAuth2** works, please check our [separ ::: -Before going into the actual steps lets start by imagining a real life example that we can reference along the way. +Before going into the actual steps let's start by imagining a real life example that we can reference along the way. This will make it easier to understand what we are doing. We are going to configure authentication for the following setup: @@ -32,7 +32,7 @@ We are going to configure authentication for the following setup: - A **Task Service** that interacts with the **Calendar Service** and the **File Service** in the process of scheduling a task Our aim will be to allow the **Task Service** to perform an authenticated action on the **Calendar Service**. -Now lets get into the actual steps. +Now let's get into the actual steps. diff --git a/v2/passwordless/custom-ui/enable-email-verification.mdx b/v2/passwordless/custom-ui/enable-email-verification.mdx index 4b54c052d..37486368e 100644 --- a/v2/passwordless/custom-ui/enable-email-verification.mdx +++ b/v2/passwordless/custom-ui/enable-email-verification.mdx @@ -19,6 +19,7 @@ import {Answer} from "/src/components/question" import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs"; import FrontendPreBuiltUITabs from "/src/components/tabs/FrontendPreBuiltUITabs"; import TabItem from "@theme/TabItem"; +import { OAuthEmailVerificationDisclaimer }from "/src/components/OAuthDisclaimer" import NodeJSFrameworkSubTabs from "/src/components/tabs/NodeJSFrameworkSubTabs"; import GoFrameworkSubTabs from "/src/components/tabs/GoFrameworkSubTabs" import PythonFrameworkSubTabs from "/src/components/tabs/PythonFrameworkSubTabs"; @@ -28,6 +29,8 @@ There are two modes of email verification: - `REQUIRED`: Requires that the user's email is verified before they can access your application's frontend or backend routes (that are protected with a session). - `OPTIONAL`: Adds information about email verification into the session, but leaves it up to you to enforce it on the backend and frontend based on your business logic. + + ## Step 1: Backend setup diff --git a/v2/passwordless/custom-ui/handling-session-tokens.mdx b/v2/passwordless/custom-ui/handling-session-tokens.mdx index 5c8cb0294..bdfa1a21f 100644 --- a/v2/passwordless/custom-ui/handling-session-tokens.mdx +++ b/v2/passwordless/custom-ui/handling-session-tokens.mdx @@ -9,6 +9,7 @@ hide_title: true import NpmOrScriptTabs from "/src/components/tabs/NpmOrScriptTabs" import FrontendPreBuiltUITabs from "/src/components/tabs/FrontendPreBuiltUITabs" +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" import FrontendCustomUITabs from "/src/components/tabs/FrontendCustomUITabs" import FrontendMobileSubTabs from "/src/components/tabs/FrontendMobileSubTabs" import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs"; @@ -23,6 +24,7 @@ There are two modes ways in which you can use sessions with SuperTokens: Our frontend SDK uses `httpOnly` cookie based session for websites by default as it secures against tokens theft via XSS attacks. For other platform like mobile apps, we use a bearer token in the Authorization header by default. This setting can be changed [as described in the token transfer section](../common-customizations/sessions/token-transfer-method) + ## If using our frontend SDK @@ -41,9 +43,9 @@ Our frontend SDK handles everything for you. You only need to make sure that you Our SDK adds interceptors to `fetch` and `XHR` (used by `axios`) to save and add session tokens from and to the request. -:::note By default, our web SDKs use cookies to provide credentials. -::: + + diff --git a/v2/passwordless/custom-ui/securing-routes.mdx b/v2/passwordless/custom-ui/securing-routes.mdx index bd08f8dfd..b33427557 100644 --- a/v2/passwordless/custom-ui/securing-routes.mdx +++ b/v2/passwordless/custom-ui/securing-routes.mdx @@ -9,6 +9,7 @@ hide_title: true import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs" import NodeJSFrameworkSubTabs from "/src/components/tabs/NodeJSFrameworkSubTabs"; +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" import PythonFrameworkSubTabs from "/src/components/tabs/PythonFrameworkSubTabs"; import TabItem from '@theme/TabItem'; import FrontendCustomUITabs from "/src/components/tabs/FrontendCustomUITabs" diff --git a/v2/passwordless/pre-built-ui/enable-email-verification.mdx b/v2/passwordless/pre-built-ui/enable-email-verification.mdx index 8810f910f..59afbfc19 100644 --- a/v2/passwordless/pre-built-ui/enable-email-verification.mdx +++ b/v2/passwordless/pre-built-ui/enable-email-verification.mdx @@ -19,6 +19,7 @@ import {Answer} from "/src/components/question" import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs"; import FrontendPreBuiltUITabs from "/src/components/tabs/FrontendPreBuiltUITabs"; import TabItem from "@theme/TabItem"; +import { OAuthEmailVerificationDisclaimer }from "/src/components/OAuthDisclaimer" import NodeJSFrameworkSubTabs from "/src/components/tabs/NodeJSFrameworkSubTabs"; import GoFrameworkSubTabs from "/src/components/tabs/GoFrameworkSubTabs" import PythonFrameworkSubTabs from "/src/components/tabs/PythonFrameworkSubTabs"; @@ -28,6 +29,8 @@ There are two modes of email verification: - `REQUIRED`: Requires that the user's email is verified before they can access your application's frontend or backend routes (that are protected with a session). - `OPTIONAL`: Adds information about email verification into the session, but leaves it up to you to enforce it on the backend and frontend based on your business logic. + + ## Step 1: Backend setup diff --git a/v2/passwordless/pre-built-ui/further-reading/email-verification.mdx b/v2/passwordless/pre-built-ui/further-reading/email-verification.mdx index 6ceea4ed2..e05b3ee5a 100644 --- a/v2/passwordless/pre-built-ui/further-reading/email-verification.mdx +++ b/v2/passwordless/pre-built-ui/further-reading/email-verification.mdx @@ -7,6 +7,8 @@ hide_title: true +import { OAuthEmailVerificationDisclaimer }from "/src/components/OAuthDisclaimer" + # Email verification There are two modes of email verification: @@ -15,6 +17,8 @@ There are two modes of email verification: ## Information stored in session + + On sign in or sign up, SuperTokens adds information about the email verification status in the session's payload using the `EmailVerificationClaim`. It looks like this: ```json diff --git a/v2/passwordless/pre-built-ui/handling-session-tokens.mdx b/v2/passwordless/pre-built-ui/handling-session-tokens.mdx index 05314c1d7..69b80421f 100644 --- a/v2/passwordless/pre-built-ui/handling-session-tokens.mdx +++ b/v2/passwordless/pre-built-ui/handling-session-tokens.mdx @@ -10,6 +10,7 @@ hide_title: true import NpmOrScriptTabs from "/src/components/tabs/NpmOrScriptTabs" import FrontendPreBuiltUITabs from "/src/components/tabs/FrontendPreBuiltUITabs" import FrontendCustomUITabs from "/src/components/tabs/FrontendCustomUITabs" +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs"; import TabItem from '@theme/TabItem'; @@ -27,9 +28,9 @@ Our frontend SDK handles everything for you. You only need to make sure that you Our SDK adds interceptors to `fetch` and `XHR` (used by `axios`) to save and add session tokens from and to the request. -:::note By default, our web SDKs use cookies to provide credentials. -::: + + diff --git a/v2/session/quick-setup/handling-session-tokens.mdx b/v2/session/quick-setup/handling-session-tokens.mdx index 5c8cb0294..bdfa1a21f 100644 --- a/v2/session/quick-setup/handling-session-tokens.mdx +++ b/v2/session/quick-setup/handling-session-tokens.mdx @@ -9,6 +9,7 @@ hide_title: true import NpmOrScriptTabs from "/src/components/tabs/NpmOrScriptTabs" import FrontendPreBuiltUITabs from "/src/components/tabs/FrontendPreBuiltUITabs" +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" import FrontendCustomUITabs from "/src/components/tabs/FrontendCustomUITabs" import FrontendMobileSubTabs from "/src/components/tabs/FrontendMobileSubTabs" import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs"; @@ -23,6 +24,7 @@ There are two modes ways in which you can use sessions with SuperTokens: Our frontend SDK uses `httpOnly` cookie based session for websites by default as it secures against tokens theft via XSS attacks. For other platform like mobile apps, we use a bearer token in the Authorization header by default. This setting can be changed [as described in the token transfer section](../common-customizations/sessions/token-transfer-method) + ## If using our frontend SDK @@ -41,9 +43,9 @@ Our frontend SDK handles everything for you. You only need to make sure that you Our SDK adds interceptors to `fetch` and `XHR` (used by `axios`) to save and add session tokens from and to the request. -:::note By default, our web SDKs use cookies to provide credentials. -::: + + diff --git a/v2/src/components/OAuthDisclaimer.tsx b/v2/src/components/OAuthDisclaimer.tsx index 05e0c6845..df6f12cff 100644 --- a/v2/src/components/OAuthDisclaimer.tsx +++ b/v2/src/components/OAuthDisclaimer.tsx @@ -9,7 +9,7 @@ function OAuthVerifyTokensDisclaimer() {

    This guide only applies to scenarios in which you are using{" "} - SuperTokens Access Tokens. + SuperTokens Session Access Tokens.

    If you are implementing{" "} @@ -27,4 +27,32 @@ function OAuthVerifyTokensDisclaimer() { ); } -export { OAuthVerifyTokensDisclaimer }; +function OAuthEmailVerificationDisclaimer() { + return ( +

    +
    +
    CAUTION
    +
    +
    +

    + This information only applies to scenarios in which you are using{" "} + SuperTokens Session Access Tokens. +

    +

    + If you are implementing{" "} + + Unified Login + {" "} + you will have to manually check the email_verified claim + on the OAuth2 Access Tokens. Please read the{" "} + + separate page + {" "} + that shows you how to verify the token. +

    +
    +
    + ); +} + +export { OAuthVerifyTokensDisclaimer, OAuthEmailVerificationDisclaimer }; diff --git a/v2/thirdparty/custom-ui/enable-email-verification.mdx b/v2/thirdparty/custom-ui/enable-email-verification.mdx index 033ccd0d9..ecd73315b 100644 --- a/v2/thirdparty/custom-ui/enable-email-verification.mdx +++ b/v2/thirdparty/custom-ui/enable-email-verification.mdx @@ -19,6 +19,7 @@ import {Answer} from "/src/components/question" import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs"; import FrontendPreBuiltUITabs from "/src/components/tabs/FrontendPreBuiltUITabs"; import TabItem from "@theme/TabItem"; +import { OAuthEmailVerificationDisclaimer }from "/src/components/OAuthDisclaimer" import NodeJSFrameworkSubTabs from "/src/components/tabs/NodeJSFrameworkSubTabs"; import GoFrameworkSubTabs from "/src/components/tabs/GoFrameworkSubTabs" import PythonFrameworkSubTabs from "/src/components/tabs/PythonFrameworkSubTabs"; @@ -28,6 +29,8 @@ There are two modes of email verification: - `REQUIRED`: Requires that the user's email is verified before they can access your application's frontend or backend routes (that are protected with a session). - `OPTIONAL`: Adds information about email verification into the session, but leaves it up to you to enforce it on the backend and frontend based on your business logic. + + ## Step 1: Backend setup diff --git a/v2/thirdparty/custom-ui/handling-session-tokens.mdx b/v2/thirdparty/custom-ui/handling-session-tokens.mdx index 5c8cb0294..bdfa1a21f 100644 --- a/v2/thirdparty/custom-ui/handling-session-tokens.mdx +++ b/v2/thirdparty/custom-ui/handling-session-tokens.mdx @@ -9,6 +9,7 @@ hide_title: true import NpmOrScriptTabs from "/src/components/tabs/NpmOrScriptTabs" import FrontendPreBuiltUITabs from "/src/components/tabs/FrontendPreBuiltUITabs" +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" import FrontendCustomUITabs from "/src/components/tabs/FrontendCustomUITabs" import FrontendMobileSubTabs from "/src/components/tabs/FrontendMobileSubTabs" import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs"; @@ -23,6 +24,7 @@ There are two modes ways in which you can use sessions with SuperTokens: Our frontend SDK uses `httpOnly` cookie based session for websites by default as it secures against tokens theft via XSS attacks. For other platform like mobile apps, we use a bearer token in the Authorization header by default. This setting can be changed [as described in the token transfer section](../common-customizations/sessions/token-transfer-method) + ## If using our frontend SDK @@ -41,9 +43,9 @@ Our frontend SDK handles everything for you. You only need to make sure that you Our SDK adds interceptors to `fetch` and `XHR` (used by `axios`) to save and add session tokens from and to the request. -:::note By default, our web SDKs use cookies to provide credentials. -::: + + diff --git a/v2/thirdparty/custom-ui/securing-routes.mdx b/v2/thirdparty/custom-ui/securing-routes.mdx index bd08f8dfd..b33427557 100644 --- a/v2/thirdparty/custom-ui/securing-routes.mdx +++ b/v2/thirdparty/custom-ui/securing-routes.mdx @@ -9,6 +9,7 @@ hide_title: true import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs" import NodeJSFrameworkSubTabs from "/src/components/tabs/NodeJSFrameworkSubTabs"; +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" import PythonFrameworkSubTabs from "/src/components/tabs/PythonFrameworkSubTabs"; import TabItem from '@theme/TabItem'; import FrontendCustomUITabs from "/src/components/tabs/FrontendCustomUITabs" diff --git a/v2/thirdparty/pre-built-ui/enable-email-verification.mdx b/v2/thirdparty/pre-built-ui/enable-email-verification.mdx index 61cc6442a..7b4646140 100644 --- a/v2/thirdparty/pre-built-ui/enable-email-verification.mdx +++ b/v2/thirdparty/pre-built-ui/enable-email-verification.mdx @@ -19,6 +19,7 @@ import {Answer} from "/src/components/question" import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs"; import FrontendPreBuiltUITabs from "/src/components/tabs/FrontendPreBuiltUITabs"; import TabItem from "@theme/TabItem"; +import { OAuthEmailVerificationDisclaimer }from "/src/components/OAuthDisclaimer" import NodeJSFrameworkSubTabs from "/src/components/tabs/NodeJSFrameworkSubTabs"; import GoFrameworkSubTabs from "/src/components/tabs/GoFrameworkSubTabs" import PythonFrameworkSubTabs from "/src/components/tabs/PythonFrameworkSubTabs"; @@ -28,6 +29,8 @@ There are two modes of email verification: - `REQUIRED`: Requires that the user's email is verified before they can access your application's frontend or backend routes (that are protected with a session). - `OPTIONAL`: Adds information about email verification into the session, but leaves it up to you to enforce it on the backend and frontend based on your business logic. + + ## Step 1: Backend setup diff --git a/v2/thirdparty/pre-built-ui/further-reading/email-verification.mdx b/v2/thirdparty/pre-built-ui/further-reading/email-verification.mdx index 6ceea4ed2..e05b3ee5a 100644 --- a/v2/thirdparty/pre-built-ui/further-reading/email-verification.mdx +++ b/v2/thirdparty/pre-built-ui/further-reading/email-verification.mdx @@ -7,6 +7,8 @@ hide_title: true +import { OAuthEmailVerificationDisclaimer }from "/src/components/OAuthDisclaimer" + # Email verification There are two modes of email verification: @@ -15,6 +17,8 @@ There are two modes of email verification: ## Information stored in session + + On sign in or sign up, SuperTokens adds information about the email verification status in the session's payload using the `EmailVerificationClaim`. It looks like this: ```json diff --git a/v2/thirdparty/pre-built-ui/handling-session-tokens.mdx b/v2/thirdparty/pre-built-ui/handling-session-tokens.mdx index 05314c1d7..69b80421f 100644 --- a/v2/thirdparty/pre-built-ui/handling-session-tokens.mdx +++ b/v2/thirdparty/pre-built-ui/handling-session-tokens.mdx @@ -10,6 +10,7 @@ hide_title: true import NpmOrScriptTabs from "/src/components/tabs/NpmOrScriptTabs" import FrontendPreBuiltUITabs from "/src/components/tabs/FrontendPreBuiltUITabs" import FrontendCustomUITabs from "/src/components/tabs/FrontendCustomUITabs" +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs"; import TabItem from '@theme/TabItem'; @@ -27,9 +28,9 @@ Our frontend SDK handles everything for you. You only need to make sure that you Our SDK adds interceptors to `fetch` and `XHR` (used by `axios`) to save and add session tokens from and to the request. -:::note By default, our web SDKs use cookies to provide credentials. -::: + + diff --git a/v2/thirdpartyemailpassword/custom-ui/enable-email-verification.mdx b/v2/thirdpartyemailpassword/custom-ui/enable-email-verification.mdx index 033ccd0d9..ecd73315b 100644 --- a/v2/thirdpartyemailpassword/custom-ui/enable-email-verification.mdx +++ b/v2/thirdpartyemailpassword/custom-ui/enable-email-verification.mdx @@ -19,6 +19,7 @@ import {Answer} from "/src/components/question" import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs"; import FrontendPreBuiltUITabs from "/src/components/tabs/FrontendPreBuiltUITabs"; import TabItem from "@theme/TabItem"; +import { OAuthEmailVerificationDisclaimer }from "/src/components/OAuthDisclaimer" import NodeJSFrameworkSubTabs from "/src/components/tabs/NodeJSFrameworkSubTabs"; import GoFrameworkSubTabs from "/src/components/tabs/GoFrameworkSubTabs" import PythonFrameworkSubTabs from "/src/components/tabs/PythonFrameworkSubTabs"; @@ -28,6 +29,8 @@ There are two modes of email verification: - `REQUIRED`: Requires that the user's email is verified before they can access your application's frontend or backend routes (that are protected with a session). - `OPTIONAL`: Adds information about email verification into the session, but leaves it up to you to enforce it on the backend and frontend based on your business logic. + + ## Step 1: Backend setup diff --git a/v2/thirdpartyemailpassword/custom-ui/handling-session-tokens.mdx b/v2/thirdpartyemailpassword/custom-ui/handling-session-tokens.mdx index 5c8cb0294..bdfa1a21f 100644 --- a/v2/thirdpartyemailpassword/custom-ui/handling-session-tokens.mdx +++ b/v2/thirdpartyemailpassword/custom-ui/handling-session-tokens.mdx @@ -9,6 +9,7 @@ hide_title: true import NpmOrScriptTabs from "/src/components/tabs/NpmOrScriptTabs" import FrontendPreBuiltUITabs from "/src/components/tabs/FrontendPreBuiltUITabs" +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" import FrontendCustomUITabs from "/src/components/tabs/FrontendCustomUITabs" import FrontendMobileSubTabs from "/src/components/tabs/FrontendMobileSubTabs" import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs"; @@ -23,6 +24,7 @@ There are two modes ways in which you can use sessions with SuperTokens: Our frontend SDK uses `httpOnly` cookie based session for websites by default as it secures against tokens theft via XSS attacks. For other platform like mobile apps, we use a bearer token in the Authorization header by default. This setting can be changed [as described in the token transfer section](../common-customizations/sessions/token-transfer-method) + ## If using our frontend SDK @@ -41,9 +43,9 @@ Our frontend SDK handles everything for you. You only need to make sure that you Our SDK adds interceptors to `fetch` and `XHR` (used by `axios`) to save and add session tokens from and to the request. -:::note By default, our web SDKs use cookies to provide credentials. -::: + + diff --git a/v2/thirdpartyemailpassword/custom-ui/securing-routes.mdx b/v2/thirdpartyemailpassword/custom-ui/securing-routes.mdx index bd08f8dfd..b33427557 100644 --- a/v2/thirdpartyemailpassword/custom-ui/securing-routes.mdx +++ b/v2/thirdpartyemailpassword/custom-ui/securing-routes.mdx @@ -9,6 +9,7 @@ hide_title: true import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs" import NodeJSFrameworkSubTabs from "/src/components/tabs/NodeJSFrameworkSubTabs"; +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" import PythonFrameworkSubTabs from "/src/components/tabs/PythonFrameworkSubTabs"; import TabItem from '@theme/TabItem'; import FrontendCustomUITabs from "/src/components/tabs/FrontendCustomUITabs" diff --git a/v2/thirdpartyemailpassword/pre-built-ui/enable-email-verification.mdx b/v2/thirdpartyemailpassword/pre-built-ui/enable-email-verification.mdx index 61cc6442a..3b5ca11e8 100644 --- a/v2/thirdpartyemailpassword/pre-built-ui/enable-email-verification.mdx +++ b/v2/thirdpartyemailpassword/pre-built-ui/enable-email-verification.mdx @@ -19,6 +19,7 @@ import {Answer} from "/src/components/question" import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs"; import FrontendPreBuiltUITabs from "/src/components/tabs/FrontendPreBuiltUITabs"; import TabItem from "@theme/TabItem"; +import { OAuthEmailVerificationDisclaimer }from "/src/components/OAuthDisclaimer" import NodeJSFrameworkSubTabs from "/src/components/tabs/NodeJSFrameworkSubTabs"; import GoFrameworkSubTabs from "/src/components/tabs/GoFrameworkSubTabs" import PythonFrameworkSubTabs from "/src/components/tabs/PythonFrameworkSubTabs"; @@ -28,6 +29,8 @@ There are two modes of email verification: - `REQUIRED`: Requires that the user's email is verified before they can access your application's frontend or backend routes (that are protected with a session). - `OPTIONAL`: Adds information about email verification into the session, but leaves it up to you to enforce it on the backend and frontend based on your business logic. + + ## Step 1: Backend setup @@ -811,4 +814,4 @@ In your protected routes, you need to first check if a session exists, and then - Learn more about [session claim validators](../common-customizations/sessions/claims/claim-validators) and about [how to read the email verification status from the session payload](../common-customizations/email-verification/protecting-routes) - Exclude email verification check [in certain APIs](../common-customizations/email-verification/protecting-routes) or [certain frontend routes](../common-customizations/email-verification/protecting-routes#protecting-frontend-routes) in `REQUIRED` mode. - \ No newline at end of file + diff --git a/v2/thirdpartyemailpassword/pre-built-ui/further-reading/email-verification.mdx b/v2/thirdpartyemailpassword/pre-built-ui/further-reading/email-verification.mdx index 9cee023e8..e05b3ee5a 100644 --- a/v2/thirdpartyemailpassword/pre-built-ui/further-reading/email-verification.mdx +++ b/v2/thirdpartyemailpassword/pre-built-ui/further-reading/email-verification.mdx @@ -7,6 +7,8 @@ hide_title: true +import { OAuthEmailVerificationDisclaimer }from "/src/components/OAuthDisclaimer" + # Email verification There are two modes of email verification: @@ -15,6 +17,8 @@ There are two modes of email verification: ## Information stored in session + + On sign in or sign up, SuperTokens adds information about the email verification status in the session's payload using the `EmailVerificationClaim`. It looks like this: ```json @@ -83,4 +87,4 @@ The default email we send for email verification is shown below. It is sent via ## See also -- [Enabling email verification](../enable-email-verification) \ No newline at end of file +- [Enabling email verification](../enable-email-verification) diff --git a/v2/thirdpartyemailpassword/pre-built-ui/handling-session-tokens.mdx b/v2/thirdpartyemailpassword/pre-built-ui/handling-session-tokens.mdx index 05314c1d7..69b80421f 100644 --- a/v2/thirdpartyemailpassword/pre-built-ui/handling-session-tokens.mdx +++ b/v2/thirdpartyemailpassword/pre-built-ui/handling-session-tokens.mdx @@ -10,6 +10,7 @@ hide_title: true import NpmOrScriptTabs from "/src/components/tabs/NpmOrScriptTabs" import FrontendPreBuiltUITabs from "/src/components/tabs/FrontendPreBuiltUITabs" import FrontendCustomUITabs from "/src/components/tabs/FrontendCustomUITabs" +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs"; import TabItem from '@theme/TabItem'; @@ -27,9 +28,9 @@ Our frontend SDK handles everything for you. You only need to make sure that you Our SDK adds interceptors to `fetch` and `XHR` (used by `axios`) to save and add session tokens from and to the request. -:::note By default, our web SDKs use cookies to provide credentials. -::: + + diff --git a/v2/thirdpartypasswordless/custom-ui/enable-email-verification.mdx b/v2/thirdpartypasswordless/custom-ui/enable-email-verification.mdx index e5f180afa..8ed134288 100644 --- a/v2/thirdpartypasswordless/custom-ui/enable-email-verification.mdx +++ b/v2/thirdpartypasswordless/custom-ui/enable-email-verification.mdx @@ -20,6 +20,7 @@ import {Answer} from "/src/components/question" import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs"; import FrontendPreBuiltUITabs from "/src/components/tabs/FrontendPreBuiltUITabs"; import TabItem from "@theme/TabItem"; +import { OAuthEmailVerificationDisclaimer }from "/src/components/OAuthDisclaimer" import NodeJSFrameworkSubTabs from "/src/components/tabs/NodeJSFrameworkSubTabs"; import GoFrameworkSubTabs from "/src/components/tabs/GoFrameworkSubTabs" import PythonFrameworkSubTabs from "/src/components/tabs/PythonFrameworkSubTabs"; @@ -29,6 +30,8 @@ There are two modes of email verification: - `REQUIRED`: Requires that the user's email is verified before they can access your application's frontend or backend routes (that are protected with a session). - `OPTIONAL`: Adds information about email verification into the session, but leaves it up to you to enforce it on the backend and frontend based on your business logic. + + ## Step 1: Backend setup diff --git a/v2/thirdpartypasswordless/custom-ui/handling-session-tokens.mdx b/v2/thirdpartypasswordless/custom-ui/handling-session-tokens.mdx index 5c8cb0294..bdfa1a21f 100644 --- a/v2/thirdpartypasswordless/custom-ui/handling-session-tokens.mdx +++ b/v2/thirdpartypasswordless/custom-ui/handling-session-tokens.mdx @@ -9,6 +9,7 @@ hide_title: true import NpmOrScriptTabs from "/src/components/tabs/NpmOrScriptTabs" import FrontendPreBuiltUITabs from "/src/components/tabs/FrontendPreBuiltUITabs" +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" import FrontendCustomUITabs from "/src/components/tabs/FrontendCustomUITabs" import FrontendMobileSubTabs from "/src/components/tabs/FrontendMobileSubTabs" import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs"; @@ -23,6 +24,7 @@ There are two modes ways in which you can use sessions with SuperTokens: Our frontend SDK uses `httpOnly` cookie based session for websites by default as it secures against tokens theft via XSS attacks. For other platform like mobile apps, we use a bearer token in the Authorization header by default. This setting can be changed [as described in the token transfer section](../common-customizations/sessions/token-transfer-method) + ## If using our frontend SDK @@ -41,9 +43,9 @@ Our frontend SDK handles everything for you. You only need to make sure that you Our SDK adds interceptors to `fetch` and `XHR` (used by `axios`) to save and add session tokens from and to the request. -:::note By default, our web SDKs use cookies to provide credentials. -::: + + diff --git a/v2/thirdpartypasswordless/custom-ui/securing-routes.mdx b/v2/thirdpartypasswordless/custom-ui/securing-routes.mdx index bd08f8dfd..b33427557 100644 --- a/v2/thirdpartypasswordless/custom-ui/securing-routes.mdx +++ b/v2/thirdpartypasswordless/custom-ui/securing-routes.mdx @@ -9,6 +9,7 @@ hide_title: true import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs" import NodeJSFrameworkSubTabs from "/src/components/tabs/NodeJSFrameworkSubTabs"; +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" import PythonFrameworkSubTabs from "/src/components/tabs/PythonFrameworkSubTabs"; import TabItem from '@theme/TabItem'; import FrontendCustomUITabs from "/src/components/tabs/FrontendCustomUITabs" diff --git a/v2/thirdpartypasswordless/pre-built-ui/enable-email-verification.mdx b/v2/thirdpartypasswordless/pre-built-ui/enable-email-verification.mdx index 033a16a9f..070f4c321 100644 --- a/v2/thirdpartypasswordless/pre-built-ui/enable-email-verification.mdx +++ b/v2/thirdpartypasswordless/pre-built-ui/enable-email-verification.mdx @@ -20,6 +20,7 @@ import {Answer} from "/src/components/question" import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs"; import FrontendPreBuiltUITabs from "/src/components/tabs/FrontendPreBuiltUITabs"; import TabItem from "@theme/TabItem"; +import { OAuthEmailVerificationDisclaimer }from "/src/components/OAuthDisclaimer" import NodeJSFrameworkSubTabs from "/src/components/tabs/NodeJSFrameworkSubTabs"; import GoFrameworkSubTabs from "/src/components/tabs/GoFrameworkSubTabs" import PythonFrameworkSubTabs from "/src/components/tabs/PythonFrameworkSubTabs"; @@ -29,6 +30,8 @@ There are two modes of email verification: - `REQUIRED`: Requires that the user's email is verified before they can access your application's frontend or backend routes (that are protected with a session). - `OPTIONAL`: Adds information about email verification into the session, but leaves it up to you to enforce it on the backend and frontend based on your business logic. + + ## Step 1: Backend setup diff --git a/v2/thirdpartypasswordless/pre-built-ui/further-reading/email-verification.mdx b/v2/thirdpartypasswordless/pre-built-ui/further-reading/email-verification.mdx index 6ceea4ed2..e05b3ee5a 100644 --- a/v2/thirdpartypasswordless/pre-built-ui/further-reading/email-verification.mdx +++ b/v2/thirdpartypasswordless/pre-built-ui/further-reading/email-verification.mdx @@ -7,6 +7,8 @@ hide_title: true +import { OAuthEmailVerificationDisclaimer }from "/src/components/OAuthDisclaimer" + # Email verification There are two modes of email verification: @@ -15,6 +17,8 @@ There are two modes of email verification: ## Information stored in session + + On sign in or sign up, SuperTokens adds information about the email verification status in the session's payload using the `EmailVerificationClaim`. It looks like this: ```json diff --git a/v2/thirdpartypasswordless/pre-built-ui/handling-session-tokens.mdx b/v2/thirdpartypasswordless/pre-built-ui/handling-session-tokens.mdx index 05314c1d7..69b80421f 100644 --- a/v2/thirdpartypasswordless/pre-built-ui/handling-session-tokens.mdx +++ b/v2/thirdpartypasswordless/pre-built-ui/handling-session-tokens.mdx @@ -10,6 +10,7 @@ hide_title: true import NpmOrScriptTabs from "/src/components/tabs/NpmOrScriptTabs" import FrontendPreBuiltUITabs from "/src/components/tabs/FrontendPreBuiltUITabs" import FrontendCustomUITabs from "/src/components/tabs/FrontendCustomUITabs" +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs"; import TabItem from '@theme/TabItem'; @@ -27,9 +28,9 @@ Our frontend SDK handles everything for you. You only need to make sure that you Our SDK adds interceptors to `fetch` and `XHR` (used by `axios`) to save and add session tokens from and to the request. -:::note By default, our web SDKs use cookies to provide credentials. -::: + + diff --git a/v2/unified-login/customizations/custom-ui.mdx b/v2/unified-login/customizations/custom-ui.mdx index ce90edef1..d02208970 100644 --- a/v2/unified-login/customizations/custom-ui.mdx +++ b/v2/unified-login/customizations/custom-ui.mdx @@ -15,12 +15,45 @@ This guide will show you how to implement the **Unified Login** functionalities :::info -The following instructions assume that you have already have a custom UI setup in your current project. +The following instructions assume that you already have a custom UI setup in your current project. -If you have skipped this step, please check custom UI our [guides](/docs/guides) based on the authentication methods that you want to use. +If you have skipped this step, please check our [guides](/docs/guides) based on the authentication methods that you want to use. ::: +Before going into the actual instructions we should first recap how the **OAuth2** login flow will work. +This way we will have an easier time understanding what we are doing. + +#### 1. A user accesses your application and tries to login. + +It's up to you how you want to handle this. +They can click a button to login or you can directly start the login flow. + +#### 2. They get redirected to the **Authorization Service Backend** + +This action can be done by a **OAuth2/OIDC** library. +Check the previous guides for information on what you could use. + +#### 3. The **Authorization Service Backend** redirects them to the **Authorization Service Frontend** login page. + +The page URL will contain a `loginChallenge` parameter that will keep track of the login attempt. +Besides that, the URL can also include a `forceFreshAuth` parameter. +As the name suggests, this should force the login UI to be visible even though the user has an existing valid session. +We will show you how to handle this in the actual guide. + +#### 4. The **Authorization Service Frontend** renders the login UI and the user performs the login action. + +The login UI should render based on instructions that are specific to each authentication method which you are using. +The additional thing that you have to do here is to take into account the `forceFreshAuth` parameter. + +#### 5. The **Authorization Service Frontend** redirects the user back to the **Authorization Service Backend** + +After the user submits the login form you will have to redirect them to a specific route that will send them to the original application. +From here the authentication flow can be considered finalized. + +Now let's see how we can actually implement this UI. + +## 1. Configure the Redirection URLs @@ -30,16 +63,20 @@ If you have skipped this step, please check custom UI our [guides](/docs/guides) askForWebsiteDomain > -## 1. Configure the authentication routes +As we have hinted in the previous section, the **Authorization Service Backend** sends the user to different pages from the **Authorization Service Frontend**, based on the action that needs to be made. -By default, the **Backend SDK** redirects to the following frontend routes based on the specific authentication action: +The default values for these routes are: -- The inital login action is mapped to `^{form_websiteDomain}^{form_websiteBasePath}` (this is also the place where a user ends up after logout) -- The token refresh action is mapped to `^{form_websiteDomain}^{form_websiteBasePath}/try-refresh` -- The logout action is mapped to `^{form_websiteDomain}^{form_websiteBasePath}/logout` +- The login page is mapped to `^{form_websiteDomain}^{form_websiteBasePath}` (this is also the place where a user ends up after logout) +- The token refresh page is mapped to `^{form_websiteDomain}^{form_websiteBasePath}/try-refresh` +- The logout page is mapped to `^{form_websiteDomain}^{form_websiteBasePath}/logout` If you want to change these routes you will have to add a custom override. +:::info +This override needs to be added to the **Authorization Service Backend**. +::: + @@ -63,8 +100,6 @@ OAuth2Provider.init({ queryParams.set("hint", input.hint); } if (input.forceFreshAuth) { - // This will force the reauthentication even though - // there is an existing session for the user. queryParams.set("forceFreshAuth", "true"); } @@ -107,12 +142,41 @@ At the moment we do not have support creating OAuth2 providers in the Python SDK -## 2. Handle the Login Flow +## 2. Handle the forceFreshAuth parameter + +In some cases, even though there is an existing valid session in the **Authorization Service Frontend**, the requesting **Client** might force a new login attempt. +This is signaled by the `forceFreshAuth` parameter. + +When the login page is rendered you will also have to check for this parameter. You are doing this to know if you need to show the login UI. + +Here is an example of how you can evaluate this case. + +```tsx +import Session from 'supertokens-web-js/recipe/session'; + +async function shouldLogin() { + const urlParams = new URLSearchParams(window.location.search); + const forceFreshAuth = urlParams.get('forceFreshAuth'); + if(forceFreshAuth === "true") return true; -Now that you know which route gets used for each action you can proceed to the actual frontend implementation. + return Session.doesSessionExist(); +} + +``` + +:::info Multi Tenancy + +If you are using multi tenancy, you will also have to keep track of the `tenantId` query parameter and pass it between the **Authorization Service Frontend** pages. + +::: + +## 3. Complete the Login Attempt + + After the user will submit the login form you will have to redirect them to a specific route in order to complete the **OAuth 2** flow. -In order to determine the correct redirection you can use the below code sample. + +The following code sample shows you how to determine which URL to use. @@ -132,11 +196,6 @@ async function getInitialRedirectionURL() { } ``` -:::info - -If you want to render additional information in the initial login screen you can make use of the `OAuth2Provider.getLoginChallengeInfo` function. - -::: @@ -155,18 +214,23 @@ For mobile apps you will have to reuse the web authentication flow. Check this [ -## 3. Handle Token Refreshing +## 4. Add the Token Refresh Page + +In order to have support for token refreshing you will need to add a new page to your application. +The path should correspond to the one that was outlined during the first step. -On the token refresh route you will have to use the `Session` recipe to perform the refresh action. -Then you can redirect the user to a new page. +When the user ends up on this page, you will have to use the `Session` recipe to perform the refresh action. +Then they need to be redirected to a page from your application. + +Here's a code sample that shows you how to do this. ```tsx - import OAuth2Provider from "supertokens-web-js/recipe/oauth2provider"; +import Session from 'supertokens-web-js/recipe/session'; async function refreshToken() { await Session.attemptRefreshingSession(); @@ -194,9 +258,12 @@ For mobile apps you will have to reuse the web authentication flow. Check this [ -## 4. Add the Logout Action +## 4. Add the Logout Page + +You will need to add a logout page that will be accessed when a user wants to end their session. +The path should correspond to the one that was outlined during the first step. -In order to perform the logout action you should first ask the user for confirmation. +The logout action should first ask the user for confirmation. If the confirmation is passed then you can call the recipe function. Based on the final response you can redirect the user to the provided redirection URL. @@ -205,7 +272,6 @@ Based on the final response you can redirect the user to the provided redirectio ```tsx - import OAuth2Provider from "supertokens-web-js/recipe/oauth2provider"; async function logout() { @@ -217,7 +283,6 @@ async function logout() { const redirectResponse = await OAuth2Provider.logout({ logoutChallenge }); window.location.href = redirectResponse.frontendRedirectTo; } - ``` From c39a02f4bf592598a69042ce7dbea5855e9f99f9 Mon Sep 17 00:00:00 2001 From: Bogdan Carpusor Date: Wed, 23 Oct 2024 09:20:03 +0100 Subject: [PATCH 25/33] Add additional disclaimers --- v2/emailpassword/hasura-integration/with-jwt.mdx | 9 +++++++++ v2/passwordless/hasura-integration/with-jwt.mdx | 9 +++++++++ v2/thirdparty/hasura-integration/with-jwt.mdx | 9 +++++++++ .../hasura-integration/with-jwt.mdx | 11 ++++++++++- .../hasura-integration/with-jwt.mdx | 9 +++++++++ .../multiple-frontends-with-a-single-backend.mdx | 4 ++-- 6 files changed, 48 insertions(+), 3 deletions(-) diff --git a/v2/emailpassword/hasura-integration/with-jwt.mdx b/v2/emailpassword/hasura-integration/with-jwt.mdx index f808ba61b..1ed4414be 100644 --- a/v2/emailpassword/hasura-integration/with-jwt.mdx +++ b/v2/emailpassword/hasura-integration/with-jwt.mdx @@ -23,6 +23,15 @@ import FrontendMobileSubTabs from "/src/components/tabs/FrontendMobileSubTabs" Using SuperTokens with Hasura requires you to host your own API layer that uses our Backend SDK. If you do not want to host your own server you can use a serverless environment (AWS Lambda for example) to achieve this. ::: +:::caution + +This guide will only work if you are using **SuperTokens Session Tokens**. + +If you are implementing an **OAuth2** based feature, like **Microservice Authentication** or **Unified Login**, the method of adding custom claims is different. +Please check our separate [page](/docs/unified-login/customizations/add-custom-claims-in-tokens) that shows you how to do this. + +::: + ## 1) Complete the setup guides diff --git a/v2/passwordless/hasura-integration/with-jwt.mdx b/v2/passwordless/hasura-integration/with-jwt.mdx index f808ba61b..1ed4414be 100644 --- a/v2/passwordless/hasura-integration/with-jwt.mdx +++ b/v2/passwordless/hasura-integration/with-jwt.mdx @@ -23,6 +23,15 @@ import FrontendMobileSubTabs from "/src/components/tabs/FrontendMobileSubTabs" Using SuperTokens with Hasura requires you to host your own API layer that uses our Backend SDK. If you do not want to host your own server you can use a serverless environment (AWS Lambda for example) to achieve this. ::: +:::caution + +This guide will only work if you are using **SuperTokens Session Tokens**. + +If you are implementing an **OAuth2** based feature, like **Microservice Authentication** or **Unified Login**, the method of adding custom claims is different. +Please check our separate [page](/docs/unified-login/customizations/add-custom-claims-in-tokens) that shows you how to do this. + +::: + ## 1) Complete the setup guides diff --git a/v2/thirdparty/hasura-integration/with-jwt.mdx b/v2/thirdparty/hasura-integration/with-jwt.mdx index f808ba61b..1ed4414be 100644 --- a/v2/thirdparty/hasura-integration/with-jwt.mdx +++ b/v2/thirdparty/hasura-integration/with-jwt.mdx @@ -23,6 +23,15 @@ import FrontendMobileSubTabs from "/src/components/tabs/FrontendMobileSubTabs" Using SuperTokens with Hasura requires you to host your own API layer that uses our Backend SDK. If you do not want to host your own server you can use a serverless environment (AWS Lambda for example) to achieve this. ::: +:::caution + +This guide will only work if you are using **SuperTokens Session Tokens**. + +If you are implementing an **OAuth2** based feature, like **Microservice Authentication** or **Unified Login**, the method of adding custom claims is different. +Please check our separate [page](/docs/unified-login/customizations/add-custom-claims-in-tokens) that shows you how to do this. + +::: + ## 1) Complete the setup guides diff --git a/v2/thirdpartyemailpassword/hasura-integration/with-jwt.mdx b/v2/thirdpartyemailpassword/hasura-integration/with-jwt.mdx index 50507ee34..1ed4414be 100644 --- a/v2/thirdpartyemailpassword/hasura-integration/with-jwt.mdx +++ b/v2/thirdpartyemailpassword/hasura-integration/with-jwt.mdx @@ -23,6 +23,15 @@ import FrontendMobileSubTabs from "/src/components/tabs/FrontendMobileSubTabs" Using SuperTokens with Hasura requires you to host your own API layer that uses our Backend SDK. If you do not want to host your own server you can use a serverless environment (AWS Lambda for example) to achieve this. ::: +:::caution + +This guide will only work if you are using **SuperTokens Session Tokens**. + +If you are implementing an **OAuth2** based feature, like **Microservice Authentication** or **Unified Login**, the method of adding custom claims is different. +Please check our separate [page](/docs/unified-login/customizations/add-custom-claims-in-tokens) that shows you how to do this. + +::: + ## 1) Complete the setup guides @@ -432,4 +441,4 @@ If you are using Hasura cloud and testing your backend APIs in your local enviro To solve this problem you will need to expose your locally hosted backend APIs to the internet. For example you can use [ngrok](https://ngrok.com/). After that, you need to configure Hasura to use the `{ngrokURL}/{apiBasePath}/jwt/jwks.json` as the JWKS endpoint (explained in [step 4](#4-configure-hasura-environment-variables)) - \ No newline at end of file + diff --git a/v2/thirdpartypasswordless/hasura-integration/with-jwt.mdx b/v2/thirdpartypasswordless/hasura-integration/with-jwt.mdx index f808ba61b..1ed4414be 100644 --- a/v2/thirdpartypasswordless/hasura-integration/with-jwt.mdx +++ b/v2/thirdpartypasswordless/hasura-integration/with-jwt.mdx @@ -23,6 +23,15 @@ import FrontendMobileSubTabs from "/src/components/tabs/FrontendMobileSubTabs" Using SuperTokens with Hasura requires you to host your own API layer that uses our Backend SDK. If you do not want to host your own server you can use a serverless environment (AWS Lambda for example) to achieve this. ::: +:::caution + +This guide will only work if you are using **SuperTokens Session Tokens**. + +If you are implementing an **OAuth2** based feature, like **Microservice Authentication** or **Unified Login**, the method of adding custom claims is different. +Please check our separate [page](/docs/unified-login/customizations/add-custom-claims-in-tokens) that shows you how to do this. + +::: + ## 1) Complete the setup guides diff --git a/v2/unified-login/multiple-frontends-with-a-single-backend.mdx b/v2/unified-login/multiple-frontends-with-a-single-backend.mdx index 199ebfdfe..349dfa9d2 100644 --- a/v2/unified-login/multiple-frontends-with-a-single-backend.mdx +++ b/v2/unified-login/multiple-frontends-with-a-single-backend.mdx @@ -303,8 +303,8 @@ async function verifySession(req, res, next) { session = await Session.getSession(req, res, { sessionRequired: false }); } catch (err) { if ( - !supertokens.isErrorFromSuperTokens(err) || - err.type !== supertokens.ErrorType.TRY_REFRESH_ERROR + !Session.Error.isErrorFromSuperTokens(err) || + err.type !== Session.Error.TRY_REFRESH_ERROR ) { next(err); } From f70e8a895c79bc10e5a346dd75eb824a58ad4476 Mon Sep 17 00:00:00 2001 From: Bogdan Carpusor Date: Wed, 23 Oct 2024 11:32:16 +0100 Subject: [PATCH 26/33] Add more disclaimers --- .../email-verification/about.mdx | 9 ++--- .../email-verification/protecting-routes.mdx | 3 ++ .../sessions/protecting-frontend-routes.mdx | 3 ++ .../get-session.mdx | 3 ++ .../verify-session.mdx | 9 ++--- .../common-customizations/sessions/ssr.mdx | 3 ++ .../sessions/with-jwt/jwt-verification.mdx | 10 ++---- .../sessions/with-jwt/read-jwt.mdx | 3 ++ .../graphql-integration/backend-setup.mdx | 4 +++ v2/emailpassword/nestjs/guide.mdx | 3 ++ .../nextjs/app-directory/protecting-route.mdx | 5 +++ .../session-verification-middleware.mdx | 4 +++ .../session-verification-session-guard.mdx | 4 +++ .../app-directory/setting-up-backend.mdx | 1 + v2/emailpassword/nextjs/protecting-route.mdx | 3 ++ .../nextjs/session-verification/in-api.mdx | 4 +++ .../nextjs/session-verification/in-ssr.mdx | 3 ++ .../serverless/with-aws-lambda/authorizer.mdx | 3 ++ .../with-aws-lambda/jwt-authorizer.mdx | 7 ++++ .../with-aws-lambda/session-verification.mdx | 3 ++ .../with-netlify/session-verification.mdx | 4 +++ .../user-roles/protecting-routes.mdx | 3 ++ v2/mfa/protect-routes.mdx | 3 ++ .../email-verification/about.mdx | 9 ++--- .../email-verification/protecting-routes.mdx | 3 ++ .../sessions/protecting-frontend-routes.mdx | 3 ++ .../get-session.mdx | 3 ++ .../verify-session.mdx | 9 ++--- .../common-customizations/sessions/ssr.mdx | 3 ++ .../sessions/with-jwt/jwt-verification.mdx | 10 ++---- .../sessions/with-jwt/read-jwt.mdx | 3 ++ .../graphql-integration/backend-setup.mdx | 4 +++ v2/passwordless/nestjs/guide.mdx | 3 ++ .../nextjs/app-directory/protecting-route.mdx | 5 +++ .../session-verification-middleware.mdx | 4 +++ .../session-verification-session-guard.mdx | 4 +++ .../app-directory/setting-up-backend.mdx | 1 + v2/passwordless/nextjs/protecting-route.mdx | 3 ++ .../nextjs/session-verification/in-api.mdx | 4 +++ .../nextjs/session-verification/in-ssr.mdx | 3 ++ .../serverless/with-aws-lambda/authorizer.mdx | 3 ++ .../with-aws-lambda/jwt-authorizer.mdx | 7 ++++ .../with-aws-lambda/session-verification.mdx | 3 ++ .../with-netlify/session-verification.mdx | 4 +++ .../user-roles/protecting-routes.mdx | 3 ++ .../sessions/protecting-frontend-routes.mdx | 3 ++ .../get-session.mdx | 5 ++- .../verify-session.mdx | 9 ++--- .../common-customizations/sessions/ssr.mdx | 5 ++- .../sessions/with-jwt/jwt-verification.mdx | 10 ++---- .../sessions/with-jwt/read-jwt.mdx | 3 ++ .../graphql-integration/backend-setup.mdx | 6 +++- .../serverless/with-aws-lambda/authorizer.mdx | 3 ++ .../with-aws-lambda/jwt-authorizer.mdx | 7 ++++ .../with-aws-lambda/session-verification.mdx | 3 ++ .../with-netlify/session-verification.mdx | 4 +++ v2/src/components/OAuthDisclaimer.tsx | 35 ++++++++++++++++++- .../email-verification/about.mdx | 9 ++--- .../email-verification/protecting-routes.mdx | 3 ++ .../sessions/protecting-frontend-routes.mdx | 3 ++ .../get-session.mdx | 3 ++ .../verify-session.mdx | 9 ++--- .../common-customizations/sessions/ssr.mdx | 3 ++ .../sessions/with-jwt/jwt-verification.mdx | 10 ++---- .../sessions/with-jwt/read-jwt.mdx | 3 ++ .../graphql-integration/backend-setup.mdx | 4 +++ v2/thirdparty/nestjs/guide.mdx | 3 ++ .../nextjs/app-directory/protecting-route.mdx | 5 +++ .../session-verification-middleware.mdx | 4 +++ .../session-verification-session-guard.mdx | 4 +++ .../app-directory/setting-up-backend.mdx | 1 + v2/thirdparty/nextjs/protecting-route.mdx | 3 ++ .../nextjs/session-verification/in-api.mdx | 4 +++ .../nextjs/session-verification/in-ssr.mdx | 3 ++ .../serverless/with-aws-lambda/authorizer.mdx | 3 ++ .../with-aws-lambda/jwt-authorizer.mdx | 7 ++++ .../with-aws-lambda/session-verification.mdx | 3 ++ .../with-netlify/session-verification.mdx | 4 +++ .../user-roles/protecting-routes.mdx | 3 ++ .../email-verification/about.mdx | 9 ++--- .../email-verification/protecting-routes.mdx | 3 ++ .../sessions/protecting-frontend-routes.mdx | 3 ++ .../get-session.mdx | 3 ++ .../verify-session.mdx | 9 ++--- .../common-customizations/sessions/ssr.mdx | 3 ++ .../sessions/with-jwt/jwt-verification.mdx | 10 ++---- .../sessions/with-jwt/read-jwt.mdx | 3 ++ .../graphql-integration/backend-setup.mdx | 6 +++- v2/thirdpartyemailpassword/nestjs/guide.mdx | 5 ++- .../nextjs/app-directory/protecting-route.mdx | 7 +++- .../session-verification-middleware.mdx | 6 +++- .../session-verification-session-guard.mdx | 6 +++- .../app-directory/setting-up-backend.mdx | 1 + .../nextjs/protecting-route.mdx | 5 ++- .../nextjs/session-verification/in-api.mdx | 4 +++ .../nextjs/session-verification/in-ssr.mdx | 3 ++ .../serverless/with-aws-lambda/authorizer.mdx | 3 ++ .../with-aws-lambda/jwt-authorizer.mdx | 7 ++++ .../with-aws-lambda/session-verification.mdx | 5 ++- .../with-netlify/session-verification.mdx | 4 +++ .../user-roles/protecting-routes.mdx | 3 ++ .../email-verification/about.mdx | 9 ++--- .../email-verification/protecting-routes.mdx | 3 ++ .../sessions/protecting-frontend-routes.mdx | 3 ++ .../get-session.mdx | 3 ++ .../verify-session.mdx | 9 ++--- .../common-customizations/sessions/ssr.mdx | 3 ++ .../sessions/with-jwt/jwt-verification.mdx | 10 ++---- .../sessions/with-jwt/read-jwt.mdx | 3 ++ .../graphql-integration/backend-setup.mdx | 4 +++ v2/thirdpartypasswordless/nestjs/guide.mdx | 3 ++ .../nextjs/app-directory/protecting-route.mdx | 5 +++ .../session-verification-middleware.mdx | 4 +++ .../session-verification-session-guard.mdx | 4 +++ .../app-directory/setting-up-backend.mdx | 1 + .../nextjs/protecting-route.mdx | 3 ++ .../nextjs/session-verification/in-api.mdx | 4 +++ .../nextjs/session-verification/in-ssr.mdx | 3 ++ .../serverless/with-aws-lambda/authorizer.mdx | 3 ++ .../with-aws-lambda/jwt-authorizer.mdx | 7 ++++ .../with-aws-lambda/session-verification.mdx | 3 ++ .../with-netlify/session-verification.mdx | 4 +++ .../user-roles/protecting-routes.mdx | 3 ++ v2/userroles/protecting-routes.mdx | 5 ++- 124 files changed, 454 insertions(+), 131 deletions(-) diff --git a/v2/emailpassword/common-customizations/email-verification/about.mdx b/v2/emailpassword/common-customizations/email-verification/about.mdx index 66d6ba763..ceb8fd555 100644 --- a/v2/emailpassword/common-customizations/email-verification/about.mdx +++ b/v2/emailpassword/common-customizations/email-verification/about.mdx @@ -17,6 +17,7 @@ import TabItem from "@theme/TabItem"; import NpmOrScriptTabs from "/src/components/tabs/NpmOrScriptTabs" import AngularUIImplementation from "/src/components/reusableSnippets/angularUIImplementation" import VueUIImplementation from "/src/components/reusableSnippets/vueUIImplementation" +import { OAuthEmailVerificationDisclaimer }from "/src/components/OAuthDisclaimer" # Enable email verification @@ -25,13 +26,7 @@ import VueUIImplementation from "/src/components/reusableSnippets/vueUIImplement Email verification is turned off by default. It is strongly encouraged to enable it to ensure the authenticity of your users. ::: -:::caution - -This guide only applies to scenarios in which you are using **SuperTokens Access Tokens**. - -If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, please check the [separate page](/docs/unified-login/customizations/verify-tokens) that shows you how to verify those types of tokens. - -::: + diff --git a/v2/emailpassword/common-customizations/email-verification/protecting-routes.mdx b/v2/emailpassword/common-customizations/email-verification/protecting-routes.mdx index b8759e741..6e13b1a87 100644 --- a/v2/emailpassword/common-customizations/email-verification/protecting-routes.mdx +++ b/v2/emailpassword/common-customizations/email-verification/protecting-routes.mdx @@ -24,11 +24,14 @@ import NpmOrScriptTabs from "/src/components/tabs/NpmOrScriptTabs" import AngularUIImplementation from "/src/components/reusableSnippets/angularUIImplementation" import VueUIImplementation from "/src/components/reusableSnippets/vueUIImplementation" import {Answer} from "/src/components/question" +import { OAuthEmailVerificationDisclaimer }from "/src/components/OAuthDisclaimer" # Protecting backend APIs and website routes ## Protecting backend API routes + + ### Add email verification checks to all API routes If you want to protect all your backend API routes with email verification checks, set the `mode` to `REQUIRED` in the `EmailVerification` config. Routes protected with the `verifySession` middleware will now additionally check for email verification status. diff --git a/v2/emailpassword/common-customizations/sessions/protecting-frontend-routes.mdx b/v2/emailpassword/common-customizations/sessions/protecting-frontend-routes.mdx index 232bba79f..9e5719247 100644 --- a/v2/emailpassword/common-customizations/sessions/protecting-frontend-routes.mdx +++ b/v2/emailpassword/common-customizations/sessions/protecting-frontend-routes.mdx @@ -14,9 +14,12 @@ import FrontendPreBuiltUITabs from "/src/components/tabs/FrontendPreBuiltUITabs" import FrontendCustomUITabs from "/src/components/tabs/FrontendCustomUITabs" import NpmOrScriptTabs from "/src/components/tabs/NpmOrScriptTabs" import FrontendMobileSubTabs from "/src/components/tabs/FrontendMobileSubTabs" +import { OAuthFrontendVerificationDisclaimer }from "/src/components/OAuthDisclaimer" # Protecting frontend routes + + diff --git a/v2/emailpassword/common-customizations/sessions/session-verification-in-api/get-session.mdx b/v2/emailpassword/common-customizations/sessions/session-verification-in-api/get-session.mdx index 94a21fa6d..ce8decce4 100644 --- a/v2/emailpassword/common-customizations/sessions/session-verification-in-api/get-session.mdx +++ b/v2/emailpassword/common-customizations/sessions/session-verification-in-api/get-session.mdx @@ -13,10 +13,13 @@ import NodeJSFrameworkSubTabs from "/src/components/tabs/NodeJSFrameworkSubTabs" import PythonFrameworkSubTabs from "/src/components/tabs/PythonFrameworkSubTabs"; import PythonSyncAsyncSubTabs from "/src/components/tabs/PythonSyncAsyncSubTabs"; import TabItem from '@theme/TabItem'; +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # Session Verification using `getSession` + + If you want to use a non-middleware form of `verifySession`, you can use the `getSession` function. ## Using `getSession` diff --git a/v2/emailpassword/common-customizations/sessions/session-verification-in-api/verify-session.mdx b/v2/emailpassword/common-customizations/sessions/session-verification-in-api/verify-session.mdx index 1a9351a51..e7a1df653 100644 --- a/v2/emailpassword/common-customizations/sessions/session-verification-in-api/verify-session.mdx +++ b/v2/emailpassword/common-customizations/sessions/session-verification-in-api/verify-session.mdx @@ -10,17 +10,12 @@ import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs" import NodeJSFrameworkSubTabs from "/src/components/tabs/NodeJSFrameworkSubTabs"; import PythonFrameworkSubTabs from "/src/components/tabs/PythonFrameworkSubTabs"; import TabItem from '@theme/TabItem'; +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" import GoFrameworkSubTabs from "/src/components/tabs/GoFrameworkSubTabs" ## Verifying a session using the `verifySession` middleware -:::caution - -The `verifySession` middleware can only be used in scenarios that involve **SuperTokens Access Tokens**. - -If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, you will have to [manually](/docs/unified-login/customizations/verify-tokens) validate tokens. - -::: + For your APIs that require a user to be logged in, use the `verifySession` middleware: diff --git a/v2/emailpassword/common-customizations/sessions/ssr.mdx b/v2/emailpassword/common-customizations/sessions/ssr.mdx index 863e5cb5b..e89210f16 100644 --- a/v2/emailpassword/common-customizations/sessions/ssr.mdx +++ b/v2/emailpassword/common-customizations/sessions/ssr.mdx @@ -17,9 +17,12 @@ import NodeJSFrameworkSubTabs from "/src/components/tabs/NodeJSFrameworkSubTabs" import PythonFrameworkSubTabs from "/src/components/tabs/PythonFrameworkSubTabs"; import PythonSyncAsyncSubTabs from "/src/components/tabs/PythonSyncAsyncSubTabs"; import TabItem from '@theme/TabItem'; +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # Session verification during server side rendering + + :::important Getting access to the session during server side rendering is only possible using cookie-based sessions. This is the default setting, but you have to keep this in mind if you want to switch to header-based sessions. ::: diff --git a/v2/emailpassword/common-customizations/sessions/with-jwt/jwt-verification.mdx b/v2/emailpassword/common-customizations/sessions/with-jwt/jwt-verification.mdx index d48165d61..c39494207 100644 --- a/v2/emailpassword/common-customizations/sessions/with-jwt/jwt-verification.mdx +++ b/v2/emailpassword/common-customizations/sessions/with-jwt/jwt-verification.mdx @@ -15,21 +15,17 @@ import FrontendMobileSubTabs from "/src/components/tabs/FrontendMobileSubTabs" import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs"; import AppInfoForm from "/src/components/appInfoForm"; import TabItem from '@theme/TabItem'; +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # Manually verify the JWT + + There are three steps in doing session verification using JWTs: - Verify the JWT signature and expiry using a JWT verification library - Check for custom claim values for authorization. - Preventing CSRF attacks in case you are using cookies to store the JWT. -:::caution - -This guide only applies to scenarios in which you are using **SuperTokens Access Tokens**. - -If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, please check the [separate page](/docs/unified-login/customizations/verify-tokens) that shows you how to verify those types of tokens. - -::: ## Verifying a JWT using a jwt verification library diff --git a/v2/emailpassword/common-customizations/sessions/with-jwt/read-jwt.mdx b/v2/emailpassword/common-customizations/sessions/with-jwt/read-jwt.mdx index 6406c10f2..22a344607 100644 --- a/v2/emailpassword/common-customizations/sessions/with-jwt/read-jwt.mdx +++ b/v2/emailpassword/common-customizations/sessions/with-jwt/read-jwt.mdx @@ -20,9 +20,12 @@ import {PreBuiltOrCustomUISwitcher, PreBuiltUIContent, CustomUIContent} from "/s import FrontendPreBuiltUITabs from "/src/components/tabs/FrontendPreBuiltUITabs" import FrontendCustomUITabs from "/src/components/tabs/FrontendCustomUITabs" import FrontendMobileSubTabs from "/src/components/tabs/FrontendMobileSubTabs" +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # Fetching the access token string + + ## On the backend diff --git a/v2/emailpassword/graphql-integration/backend-setup.mdx b/v2/emailpassword/graphql-integration/backend-setup.mdx index a521f7578..ec91bb6e9 100644 --- a/v2/emailpassword/graphql-integration/backend-setup.mdx +++ b/v2/emailpassword/graphql-integration/backend-setup.mdx @@ -9,11 +9,14 @@ show_ui_switcher: true import {PreBuiltOrCustomUISwitcher, PreBuiltUIContent, CustomUIContent} from "/src/components/preBuiltOrCustomUISwitcher" +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # Backend Setup ## Complete Quick Setup + + @@ -30,6 +33,7 @@ Follow the [frontend and backend custom UI setup guides](../custom-ui/init/front + diff --git a/v2/emailpassword/nestjs/guide.mdx b/v2/emailpassword/nestjs/guide.mdx index 6fcd78d7d..9136dbd0c 100644 --- a/v2/emailpassword/nestjs/guide.mdx +++ b/v2/emailpassword/nestjs/guide.mdx @@ -12,6 +12,7 @@ import BackendDeliveryMethod from "../../passwordless/reusableMD/backendDelivery import AppInfoForm from "/src/components/appInfoForm" import CoreInjector from "/src/components/coreInjector" import {Question, Answer} from "/src/components/question" +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # NestJS Integration Guide @@ -338,6 +339,8 @@ bootstrap(); ## Add a session verification guard + + Now that the library is set up, you can add a guard to protect your API. You can scaffold this by running: `nest g guard auth`. In the newly created `auth.guard.ts` file, implement session verification: diff --git a/v2/emailpassword/nextjs/app-directory/protecting-route.mdx b/v2/emailpassword/nextjs/app-directory/protecting-route.mdx index e636f81f0..311b02a7b 100644 --- a/v2/emailpassword/nextjs/app-directory/protecting-route.mdx +++ b/v2/emailpassword/nextjs/app-directory/protecting-route.mdx @@ -9,16 +9,21 @@ hide_title: true import {PreBuiltOrCustomUISwitcher, PreBuiltUIContent, CustomUIContent} from "/src/components/preBuiltOrCustomUISwitcher" import CoreInjector from "/src/components/coreInjector" +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # 4. Checking for sessions in frontend routes + + Protecting a website route means that it cannot be accessed unless a user is signed in. If a non signed in user tries to access it, they will be redirected to the login page. + + ## Sessions with Client Components Lets create a client component for the `/` route of our website. diff --git a/v2/emailpassword/nextjs/app-directory/session-verification-middleware.mdx b/v2/emailpassword/nextjs/app-directory/session-verification-middleware.mdx index a76ddce0d..4e4742164 100644 --- a/v2/emailpassword/nextjs/app-directory/session-verification-middleware.mdx +++ b/v2/emailpassword/nextjs/app-directory/session-verification-middleware.mdx @@ -7,8 +7,12 @@ hide_title: true +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" + # Using the Next.js middleware + + :::important This method is an alternative method for using sessions in an API. If you are already using [session guards](./session-verification-session-guard.mdx), you can skip this step. ::: diff --git a/v2/emailpassword/nextjs/app-directory/session-verification-session-guard.mdx b/v2/emailpassword/nextjs/app-directory/session-verification-session-guard.mdx index fb03ca4e0..663193a00 100644 --- a/v2/emailpassword/nextjs/app-directory/session-verification-session-guard.mdx +++ b/v2/emailpassword/nextjs/app-directory/session-verification-session-guard.mdx @@ -7,8 +7,12 @@ hide_title: true +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" + # Adding a session guard to each API route + + :::note This is applicable for when the frontend calls an API in the `/app/api` folder. ::: diff --git a/v2/emailpassword/nextjs/app-directory/setting-up-backend.mdx b/v2/emailpassword/nextjs/app-directory/setting-up-backend.mdx index b06c3ac05..ee643af06 100644 --- a/v2/emailpassword/nextjs/app-directory/setting-up-backend.mdx +++ b/v2/emailpassword/nextjs/app-directory/setting-up-backend.mdx @@ -11,6 +11,7 @@ import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; import AppInfoForm from "/src/components/appInfoForm" + # 3. Adding auth APIs We will add all the backend APIs for auth on `/api/auth`. This can be changed by setting the `apiBasePath` property in the `appInfo` object in the `appInfo.ts` file. For the rest of this page, we will assume you are using `/api/auth`. diff --git a/v2/emailpassword/nextjs/protecting-route.mdx b/v2/emailpassword/nextjs/protecting-route.mdx index 21505368e..6de7c2164 100644 --- a/v2/emailpassword/nextjs/protecting-route.mdx +++ b/v2/emailpassword/nextjs/protecting-route.mdx @@ -9,9 +9,12 @@ show_ui_switcher: true import {PreBuiltOrCustomUISwitcher, PreBuiltUIContent, CustomUIContent} from "/src/components/preBuiltOrCustomUISwitcher" +import { OAuthFrontendVerificationDisclaimer }from "/src/components/OAuthDisclaimer" # 4. Protecting a website route + + diff --git a/v2/emailpassword/nextjs/session-verification/in-api.mdx b/v2/emailpassword/nextjs/session-verification/in-api.mdx index e0d57c781..182b4d5d2 100644 --- a/v2/emailpassword/nextjs/session-verification/in-api.mdx +++ b/v2/emailpassword/nextjs/session-verification/in-api.mdx @@ -8,9 +8,13 @@ hide_title: true import AppInfoForm from "/src/components/appInfoForm" +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" + # 5a. Session verification in an API call + + :::note This is applicable for when the frontend calls an API in the `/pages/api` folder. ::: diff --git a/v2/emailpassword/nextjs/session-verification/in-ssr.mdx b/v2/emailpassword/nextjs/session-verification/in-ssr.mdx index fcdfb1c8d..4ed75df27 100644 --- a/v2/emailpassword/nextjs/session-verification/in-ssr.mdx +++ b/v2/emailpassword/nextjs/session-verification/in-ssr.mdx @@ -10,9 +10,12 @@ show_ui_switcher: true import {PreBuiltOrCustomUISwitcher, PreBuiltUIContent, CustomUIContent} from "/src/components/preBuiltOrCustomUISwitcher" import CoreInjector from "/src/components/coreInjector" +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # 5b. Session verification in getServerSideProps + + :::note This is applicable for when verifying a session in `getServerSideProps` or `getInitialProps`. ::: diff --git a/v2/emailpassword/serverless/with-aws-lambda/authorizer.mdx b/v2/emailpassword/serverless/with-aws-lambda/authorizer.mdx index 078cb159b..5f3688425 100644 --- a/v2/emailpassword/serverless/with-aws-lambda/authorizer.mdx +++ b/v2/emailpassword/serverless/with-aws-lambda/authorizer.mdx @@ -10,9 +10,12 @@ hide_title: true import AppInfoForm from "/src/components/appInfoForm" import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs"; import TabItem from '@theme/TabItem'; +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # Using Lambda Authorizers + + You can use a lambda as an Authorizer in API Gateways. This will enable you to use SuperTokens in a lambda to authorize requests to other integrations (e.g., AppSync). An Authorizer pointed to this lambda will add `context.authorizer.principalId` that you can map to a header. For example, you can map this to an "x-user-id" header which will be set to the id of the logged-in user. If there is no valid session for the request, this header won't exist. ## 1) Add configurations and dependencies diff --git a/v2/emailpassword/serverless/with-aws-lambda/jwt-authorizer.mdx b/v2/emailpassword/serverless/with-aws-lambda/jwt-authorizer.mdx index ae937766b..31a0bf9b4 100644 --- a/v2/emailpassword/serverless/with-aws-lambda/jwt-authorizer.mdx +++ b/v2/emailpassword/serverless/with-aws-lambda/jwt-authorizer.mdx @@ -16,7 +16,14 @@ import TabItem from '@theme/TabItem'; # Using JWT Authorizers :::caution + AWS supports JWT authorizers for HTTP APIs and not REST APIs on the API Gateway service. For REST APIs follow the [Lambda authorizer](./authorizer) guide + +This guide will work if you are using **SuperTokens Session Tokens**. + +If you implementing an **OAuth2** setup, through the [**Unified Login**](/docs/unified-login/introduction) or the [**Microservice Authentication**](/docs/microservice_auth/client-credentials) features, you will have to manually set the token audience property. +Please check the referenced pages for more information. + ::: ## 1) Add the `aud` claim in the JWT based on the authorizer configuration diff --git a/v2/emailpassword/serverless/with-aws-lambda/session-verification.mdx b/v2/emailpassword/serverless/with-aws-lambda/session-verification.mdx index 02857b5e7..ae4954e93 100644 --- a/v2/emailpassword/serverless/with-aws-lambda/session-verification.mdx +++ b/v2/emailpassword/serverless/with-aws-lambda/session-verification.mdx @@ -9,9 +9,12 @@ hide_title: true import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs"; import TabItem from '@theme/TabItem'; +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # 3. Session verification / Building your APIs + + When building your own APIs, you may need to verify the session of the user before proceeding further. SuperTokens SDK exposes a `verifySession` function that can be utilized for this. In this guide, we will be creating a `/user` `GET` route that will return the current session information. ## 1) Add `/user` `GET` route in your API Gateway diff --git a/v2/emailpassword/serverless/with-netlify/session-verification.mdx b/v2/emailpassword/serverless/with-netlify/session-verification.mdx index 1fd4b1a1f..b28b7cd62 100644 --- a/v2/emailpassword/serverless/with-netlify/session-verification.mdx +++ b/v2/emailpassword/serverless/with-netlify/session-verification.mdx @@ -7,8 +7,12 @@ hide_title: true +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" + # 4. Session verification / Building your APIs + + For this guide, we will assume that we want an API `/.netlify/functions/user GET` which returns the current session information. ## 1) Create a new file `netlify/functions/user.js` diff --git a/v2/emailpassword/user-roles/protecting-routes.mdx b/v2/emailpassword/user-roles/protecting-routes.mdx index 9d497d1ca..eecb3446e 100644 --- a/v2/emailpassword/user-roles/protecting-routes.mdx +++ b/v2/emailpassword/user-roles/protecting-routes.mdx @@ -19,9 +19,12 @@ import {PreBuiltOrCustomUISwitcher, PreBuiltUIContent, CustomUIContent} from "/s import FrontendPreBuiltUITabs from "/src/components/tabs/FrontendPreBuiltUITabs" import FrontendCustomUITabs from "/src/components/tabs/FrontendCustomUITabs" import FrontendMobileSubTabs from "/src/components/tabs/FrontendMobileSubTabs" +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # Protecting API and frontend routes + + ## Protecting API routes In your API routes you: diff --git a/v2/mfa/protect-routes.mdx b/v2/mfa/protect-routes.mdx index 048bf0b5f..c8a230fc0 100644 --- a/v2/mfa/protect-routes.mdx +++ b/v2/mfa/protect-routes.mdx @@ -17,11 +17,14 @@ import FrontendMobileSubTabs from "/src/components/tabs/FrontendMobileSubTabs" import {Question, Answer}from "/src/components/question" import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs" import NodeJSFrameworkSubTabs from "/src/components/tabs/NodeJSFrameworkSubTabs"; +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # Protecting frontend and backend routes + + In thie section, we will talk about how to protect your frontend and backend routes to make them accessible only when the user has finished all the MFA challenges configured for them. In both the backend and the frontend, we will protect routes based on the value of [MFA claim in the session's access token payload](./important-concepts#how-are-auth-factors-marked-as-completed). diff --git a/v2/passwordless/common-customizations/email-verification/about.mdx b/v2/passwordless/common-customizations/email-verification/about.mdx index 66d6ba763..ceb8fd555 100644 --- a/v2/passwordless/common-customizations/email-verification/about.mdx +++ b/v2/passwordless/common-customizations/email-verification/about.mdx @@ -17,6 +17,7 @@ import TabItem from "@theme/TabItem"; import NpmOrScriptTabs from "/src/components/tabs/NpmOrScriptTabs" import AngularUIImplementation from "/src/components/reusableSnippets/angularUIImplementation" import VueUIImplementation from "/src/components/reusableSnippets/vueUIImplementation" +import { OAuthEmailVerificationDisclaimer }from "/src/components/OAuthDisclaimer" # Enable email verification @@ -25,13 +26,7 @@ import VueUIImplementation from "/src/components/reusableSnippets/vueUIImplement Email verification is turned off by default. It is strongly encouraged to enable it to ensure the authenticity of your users. ::: -:::caution - -This guide only applies to scenarios in which you are using **SuperTokens Access Tokens**. - -If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, please check the [separate page](/docs/unified-login/customizations/verify-tokens) that shows you how to verify those types of tokens. - -::: + diff --git a/v2/passwordless/common-customizations/email-verification/protecting-routes.mdx b/v2/passwordless/common-customizations/email-verification/protecting-routes.mdx index b8759e741..6e13b1a87 100644 --- a/v2/passwordless/common-customizations/email-verification/protecting-routes.mdx +++ b/v2/passwordless/common-customizations/email-verification/protecting-routes.mdx @@ -24,11 +24,14 @@ import NpmOrScriptTabs from "/src/components/tabs/NpmOrScriptTabs" import AngularUIImplementation from "/src/components/reusableSnippets/angularUIImplementation" import VueUIImplementation from "/src/components/reusableSnippets/vueUIImplementation" import {Answer} from "/src/components/question" +import { OAuthEmailVerificationDisclaimer }from "/src/components/OAuthDisclaimer" # Protecting backend APIs and website routes ## Protecting backend API routes + + ### Add email verification checks to all API routes If you want to protect all your backend API routes with email verification checks, set the `mode` to `REQUIRED` in the `EmailVerification` config. Routes protected with the `verifySession` middleware will now additionally check for email verification status. diff --git a/v2/passwordless/common-customizations/sessions/protecting-frontend-routes.mdx b/v2/passwordless/common-customizations/sessions/protecting-frontend-routes.mdx index 232bba79f..9e5719247 100644 --- a/v2/passwordless/common-customizations/sessions/protecting-frontend-routes.mdx +++ b/v2/passwordless/common-customizations/sessions/protecting-frontend-routes.mdx @@ -14,9 +14,12 @@ import FrontendPreBuiltUITabs from "/src/components/tabs/FrontendPreBuiltUITabs" import FrontendCustomUITabs from "/src/components/tabs/FrontendCustomUITabs" import NpmOrScriptTabs from "/src/components/tabs/NpmOrScriptTabs" import FrontendMobileSubTabs from "/src/components/tabs/FrontendMobileSubTabs" +import { OAuthFrontendVerificationDisclaimer }from "/src/components/OAuthDisclaimer" # Protecting frontend routes + + diff --git a/v2/passwordless/common-customizations/sessions/session-verification-in-api/get-session.mdx b/v2/passwordless/common-customizations/sessions/session-verification-in-api/get-session.mdx index 94a21fa6d..ce8decce4 100644 --- a/v2/passwordless/common-customizations/sessions/session-verification-in-api/get-session.mdx +++ b/v2/passwordless/common-customizations/sessions/session-verification-in-api/get-session.mdx @@ -13,10 +13,13 @@ import NodeJSFrameworkSubTabs from "/src/components/tabs/NodeJSFrameworkSubTabs" import PythonFrameworkSubTabs from "/src/components/tabs/PythonFrameworkSubTabs"; import PythonSyncAsyncSubTabs from "/src/components/tabs/PythonSyncAsyncSubTabs"; import TabItem from '@theme/TabItem'; +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # Session Verification using `getSession` + + If you want to use a non-middleware form of `verifySession`, you can use the `getSession` function. ## Using `getSession` diff --git a/v2/passwordless/common-customizations/sessions/session-verification-in-api/verify-session.mdx b/v2/passwordless/common-customizations/sessions/session-verification-in-api/verify-session.mdx index 1a9351a51..e7a1df653 100644 --- a/v2/passwordless/common-customizations/sessions/session-verification-in-api/verify-session.mdx +++ b/v2/passwordless/common-customizations/sessions/session-verification-in-api/verify-session.mdx @@ -10,17 +10,12 @@ import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs" import NodeJSFrameworkSubTabs from "/src/components/tabs/NodeJSFrameworkSubTabs"; import PythonFrameworkSubTabs from "/src/components/tabs/PythonFrameworkSubTabs"; import TabItem from '@theme/TabItem'; +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" import GoFrameworkSubTabs from "/src/components/tabs/GoFrameworkSubTabs" ## Verifying a session using the `verifySession` middleware -:::caution - -The `verifySession` middleware can only be used in scenarios that involve **SuperTokens Access Tokens**. - -If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, you will have to [manually](/docs/unified-login/customizations/verify-tokens) validate tokens. - -::: + For your APIs that require a user to be logged in, use the `verifySession` middleware: diff --git a/v2/passwordless/common-customizations/sessions/ssr.mdx b/v2/passwordless/common-customizations/sessions/ssr.mdx index 863e5cb5b..e89210f16 100644 --- a/v2/passwordless/common-customizations/sessions/ssr.mdx +++ b/v2/passwordless/common-customizations/sessions/ssr.mdx @@ -17,9 +17,12 @@ import NodeJSFrameworkSubTabs from "/src/components/tabs/NodeJSFrameworkSubTabs" import PythonFrameworkSubTabs from "/src/components/tabs/PythonFrameworkSubTabs"; import PythonSyncAsyncSubTabs from "/src/components/tabs/PythonSyncAsyncSubTabs"; import TabItem from '@theme/TabItem'; +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # Session verification during server side rendering + + :::important Getting access to the session during server side rendering is only possible using cookie-based sessions. This is the default setting, but you have to keep this in mind if you want to switch to header-based sessions. ::: diff --git a/v2/passwordless/common-customizations/sessions/with-jwt/jwt-verification.mdx b/v2/passwordless/common-customizations/sessions/with-jwt/jwt-verification.mdx index d48165d61..c39494207 100644 --- a/v2/passwordless/common-customizations/sessions/with-jwt/jwt-verification.mdx +++ b/v2/passwordless/common-customizations/sessions/with-jwt/jwt-verification.mdx @@ -15,21 +15,17 @@ import FrontendMobileSubTabs from "/src/components/tabs/FrontendMobileSubTabs" import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs"; import AppInfoForm from "/src/components/appInfoForm"; import TabItem from '@theme/TabItem'; +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # Manually verify the JWT + + There are three steps in doing session verification using JWTs: - Verify the JWT signature and expiry using a JWT verification library - Check for custom claim values for authorization. - Preventing CSRF attacks in case you are using cookies to store the JWT. -:::caution - -This guide only applies to scenarios in which you are using **SuperTokens Access Tokens**. - -If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, please check the [separate page](/docs/unified-login/customizations/verify-tokens) that shows you how to verify those types of tokens. - -::: ## Verifying a JWT using a jwt verification library diff --git a/v2/passwordless/common-customizations/sessions/with-jwt/read-jwt.mdx b/v2/passwordless/common-customizations/sessions/with-jwt/read-jwt.mdx index 6406c10f2..22a344607 100644 --- a/v2/passwordless/common-customizations/sessions/with-jwt/read-jwt.mdx +++ b/v2/passwordless/common-customizations/sessions/with-jwt/read-jwt.mdx @@ -20,9 +20,12 @@ import {PreBuiltOrCustomUISwitcher, PreBuiltUIContent, CustomUIContent} from "/s import FrontendPreBuiltUITabs from "/src/components/tabs/FrontendPreBuiltUITabs" import FrontendCustomUITabs from "/src/components/tabs/FrontendCustomUITabs" import FrontendMobileSubTabs from "/src/components/tabs/FrontendMobileSubTabs" +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # Fetching the access token string + + ## On the backend diff --git a/v2/passwordless/graphql-integration/backend-setup.mdx b/v2/passwordless/graphql-integration/backend-setup.mdx index a521f7578..ec91bb6e9 100644 --- a/v2/passwordless/graphql-integration/backend-setup.mdx +++ b/v2/passwordless/graphql-integration/backend-setup.mdx @@ -9,11 +9,14 @@ show_ui_switcher: true import {PreBuiltOrCustomUISwitcher, PreBuiltUIContent, CustomUIContent} from "/src/components/preBuiltOrCustomUISwitcher" +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # Backend Setup ## Complete Quick Setup + + @@ -30,6 +33,7 @@ Follow the [frontend and backend custom UI setup guides](../custom-ui/init/front + diff --git a/v2/passwordless/nestjs/guide.mdx b/v2/passwordless/nestjs/guide.mdx index 30066a2cc..d4ade735c 100644 --- a/v2/passwordless/nestjs/guide.mdx +++ b/v2/passwordless/nestjs/guide.mdx @@ -12,6 +12,7 @@ import BackendDeliveryMethod from "../../passwordless/reusableMD/backendDelivery import AppInfoForm from "/src/components/appInfoForm" import CoreInjector from "/src/components/coreInjector" import {Question, Answer} from "/src/components/question" +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # NestJS Integration Guide @@ -357,6 +358,8 @@ bootstrap(); ## Add a session verification guard + + Now that the library is set up, you can add a guard to protect your API. You can scaffold this by running: `nest g guard auth`. In the newly created `auth.guard.ts` file, implement session verification: diff --git a/v2/passwordless/nextjs/app-directory/protecting-route.mdx b/v2/passwordless/nextjs/app-directory/protecting-route.mdx index e636f81f0..311b02a7b 100644 --- a/v2/passwordless/nextjs/app-directory/protecting-route.mdx +++ b/v2/passwordless/nextjs/app-directory/protecting-route.mdx @@ -9,16 +9,21 @@ hide_title: true import {PreBuiltOrCustomUISwitcher, PreBuiltUIContent, CustomUIContent} from "/src/components/preBuiltOrCustomUISwitcher" import CoreInjector from "/src/components/coreInjector" +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # 4. Checking for sessions in frontend routes + + Protecting a website route means that it cannot be accessed unless a user is signed in. If a non signed in user tries to access it, they will be redirected to the login page. + + ## Sessions with Client Components Lets create a client component for the `/` route of our website. diff --git a/v2/passwordless/nextjs/app-directory/session-verification-middleware.mdx b/v2/passwordless/nextjs/app-directory/session-verification-middleware.mdx index a76ddce0d..4e4742164 100644 --- a/v2/passwordless/nextjs/app-directory/session-verification-middleware.mdx +++ b/v2/passwordless/nextjs/app-directory/session-verification-middleware.mdx @@ -7,8 +7,12 @@ hide_title: true +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" + # Using the Next.js middleware + + :::important This method is an alternative method for using sessions in an API. If you are already using [session guards](./session-verification-session-guard.mdx), you can skip this step. ::: diff --git a/v2/passwordless/nextjs/app-directory/session-verification-session-guard.mdx b/v2/passwordless/nextjs/app-directory/session-verification-session-guard.mdx index fb03ca4e0..663193a00 100644 --- a/v2/passwordless/nextjs/app-directory/session-verification-session-guard.mdx +++ b/v2/passwordless/nextjs/app-directory/session-verification-session-guard.mdx @@ -7,8 +7,12 @@ hide_title: true +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" + # Adding a session guard to each API route + + :::note This is applicable for when the frontend calls an API in the `/app/api` folder. ::: diff --git a/v2/passwordless/nextjs/app-directory/setting-up-backend.mdx b/v2/passwordless/nextjs/app-directory/setting-up-backend.mdx index b06c3ac05..ee643af06 100644 --- a/v2/passwordless/nextjs/app-directory/setting-up-backend.mdx +++ b/v2/passwordless/nextjs/app-directory/setting-up-backend.mdx @@ -11,6 +11,7 @@ import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; import AppInfoForm from "/src/components/appInfoForm" + # 3. Adding auth APIs We will add all the backend APIs for auth on `/api/auth`. This can be changed by setting the `apiBasePath` property in the `appInfo` object in the `appInfo.ts` file. For the rest of this page, we will assume you are using `/api/auth`. diff --git a/v2/passwordless/nextjs/protecting-route.mdx b/v2/passwordless/nextjs/protecting-route.mdx index 21505368e..6de7c2164 100644 --- a/v2/passwordless/nextjs/protecting-route.mdx +++ b/v2/passwordless/nextjs/protecting-route.mdx @@ -9,9 +9,12 @@ show_ui_switcher: true import {PreBuiltOrCustomUISwitcher, PreBuiltUIContent, CustomUIContent} from "/src/components/preBuiltOrCustomUISwitcher" +import { OAuthFrontendVerificationDisclaimer }from "/src/components/OAuthDisclaimer" # 4. Protecting a website route + + diff --git a/v2/passwordless/nextjs/session-verification/in-api.mdx b/v2/passwordless/nextjs/session-verification/in-api.mdx index e0d57c781..182b4d5d2 100644 --- a/v2/passwordless/nextjs/session-verification/in-api.mdx +++ b/v2/passwordless/nextjs/session-verification/in-api.mdx @@ -8,9 +8,13 @@ hide_title: true import AppInfoForm from "/src/components/appInfoForm" +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" + # 5a. Session verification in an API call + + :::note This is applicable for when the frontend calls an API in the `/pages/api` folder. ::: diff --git a/v2/passwordless/nextjs/session-verification/in-ssr.mdx b/v2/passwordless/nextjs/session-verification/in-ssr.mdx index fcdfb1c8d..4ed75df27 100644 --- a/v2/passwordless/nextjs/session-verification/in-ssr.mdx +++ b/v2/passwordless/nextjs/session-verification/in-ssr.mdx @@ -10,9 +10,12 @@ show_ui_switcher: true import {PreBuiltOrCustomUISwitcher, PreBuiltUIContent, CustomUIContent} from "/src/components/preBuiltOrCustomUISwitcher" import CoreInjector from "/src/components/coreInjector" +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # 5b. Session verification in getServerSideProps + + :::note This is applicable for when verifying a session in `getServerSideProps` or `getInitialProps`. ::: diff --git a/v2/passwordless/serverless/with-aws-lambda/authorizer.mdx b/v2/passwordless/serverless/with-aws-lambda/authorizer.mdx index 02a71860c..b730b2d4f 100644 --- a/v2/passwordless/serverless/with-aws-lambda/authorizer.mdx +++ b/v2/passwordless/serverless/with-aws-lambda/authorizer.mdx @@ -10,9 +10,12 @@ hide_title: true import AppInfoForm from "/src/components/appInfoForm" import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs"; import TabItem from '@theme/TabItem'; +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # Using Lambda Authorizers + + You can use a lambda as an Authorizer in API Gateways. This will enable you to use SuperTokens in a lambda to authorize requests to other integrations (e.g., AppSync). An Authorizer pointed to this lambda will add `context.authorizer.principalId` that you can map to a header. For example, you can map this to an "x-user-id" header which will be set to the id of the logged-in user. If there is no valid session for the request, this header won't exist. ## 1) Add configurations and dependencies diff --git a/v2/passwordless/serverless/with-aws-lambda/jwt-authorizer.mdx b/v2/passwordless/serverless/with-aws-lambda/jwt-authorizer.mdx index ae937766b..31a0bf9b4 100644 --- a/v2/passwordless/serverless/with-aws-lambda/jwt-authorizer.mdx +++ b/v2/passwordless/serverless/with-aws-lambda/jwt-authorizer.mdx @@ -16,7 +16,14 @@ import TabItem from '@theme/TabItem'; # Using JWT Authorizers :::caution + AWS supports JWT authorizers for HTTP APIs and not REST APIs on the API Gateway service. For REST APIs follow the [Lambda authorizer](./authorizer) guide + +This guide will work if you are using **SuperTokens Session Tokens**. + +If you implementing an **OAuth2** setup, through the [**Unified Login**](/docs/unified-login/introduction) or the [**Microservice Authentication**](/docs/microservice_auth/client-credentials) features, you will have to manually set the token audience property. +Please check the referenced pages for more information. + ::: ## 1) Add the `aud` claim in the JWT based on the authorizer configuration diff --git a/v2/passwordless/serverless/with-aws-lambda/session-verification.mdx b/v2/passwordless/serverless/with-aws-lambda/session-verification.mdx index 02857b5e7..ae4954e93 100644 --- a/v2/passwordless/serverless/with-aws-lambda/session-verification.mdx +++ b/v2/passwordless/serverless/with-aws-lambda/session-verification.mdx @@ -9,9 +9,12 @@ hide_title: true import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs"; import TabItem from '@theme/TabItem'; +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # 3. Session verification / Building your APIs + + When building your own APIs, you may need to verify the session of the user before proceeding further. SuperTokens SDK exposes a `verifySession` function that can be utilized for this. In this guide, we will be creating a `/user` `GET` route that will return the current session information. ## 1) Add `/user` `GET` route in your API Gateway diff --git a/v2/passwordless/serverless/with-netlify/session-verification.mdx b/v2/passwordless/serverless/with-netlify/session-verification.mdx index 1fd4b1a1f..b28b7cd62 100644 --- a/v2/passwordless/serverless/with-netlify/session-verification.mdx +++ b/v2/passwordless/serverless/with-netlify/session-verification.mdx @@ -7,8 +7,12 @@ hide_title: true +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" + # 4. Session verification / Building your APIs + + For this guide, we will assume that we want an API `/.netlify/functions/user GET` which returns the current session information. ## 1) Create a new file `netlify/functions/user.js` diff --git a/v2/passwordless/user-roles/protecting-routes.mdx b/v2/passwordless/user-roles/protecting-routes.mdx index 9d497d1ca..eecb3446e 100644 --- a/v2/passwordless/user-roles/protecting-routes.mdx +++ b/v2/passwordless/user-roles/protecting-routes.mdx @@ -19,9 +19,12 @@ import {PreBuiltOrCustomUISwitcher, PreBuiltUIContent, CustomUIContent} from "/s import FrontendPreBuiltUITabs from "/src/components/tabs/FrontendPreBuiltUITabs" import FrontendCustomUITabs from "/src/components/tabs/FrontendCustomUITabs" import FrontendMobileSubTabs from "/src/components/tabs/FrontendMobileSubTabs" +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # Protecting API and frontend routes + + ## Protecting API routes In your API routes you: diff --git a/v2/session/common-customizations/sessions/protecting-frontend-routes.mdx b/v2/session/common-customizations/sessions/protecting-frontend-routes.mdx index 232bba79f..9e5719247 100644 --- a/v2/session/common-customizations/sessions/protecting-frontend-routes.mdx +++ b/v2/session/common-customizations/sessions/protecting-frontend-routes.mdx @@ -14,9 +14,12 @@ import FrontendPreBuiltUITabs from "/src/components/tabs/FrontendPreBuiltUITabs" import FrontendCustomUITabs from "/src/components/tabs/FrontendCustomUITabs" import NpmOrScriptTabs from "/src/components/tabs/NpmOrScriptTabs" import FrontendMobileSubTabs from "/src/components/tabs/FrontendMobileSubTabs" +import { OAuthFrontendVerificationDisclaimer }from "/src/components/OAuthDisclaimer" # Protecting frontend routes + + diff --git a/v2/session/common-customizations/sessions/session-verification-in-api/get-session.mdx b/v2/session/common-customizations/sessions/session-verification-in-api/get-session.mdx index fc2df03a1..ce8decce4 100644 --- a/v2/session/common-customizations/sessions/session-verification-in-api/get-session.mdx +++ b/v2/session/common-customizations/sessions/session-verification-in-api/get-session.mdx @@ -13,10 +13,13 @@ import NodeJSFrameworkSubTabs from "/src/components/tabs/NodeJSFrameworkSubTabs" import PythonFrameworkSubTabs from "/src/components/tabs/PythonFrameworkSubTabs"; import PythonSyncAsyncSubTabs from "/src/components/tabs/PythonSyncAsyncSubTabs"; import TabItem from '@theme/TabItem'; +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # Session Verification using `getSession` + + If you want to use a non-middleware form of `verifySession`, you can use the `getSession` function. ## Using `getSession` @@ -1460,4 +1463,4 @@ def verify_session( ``` - \ No newline at end of file + diff --git a/v2/session/common-customizations/sessions/session-verification-in-api/verify-session.mdx b/v2/session/common-customizations/sessions/session-verification-in-api/verify-session.mdx index 1a9351a51..e7a1df653 100644 --- a/v2/session/common-customizations/sessions/session-verification-in-api/verify-session.mdx +++ b/v2/session/common-customizations/sessions/session-verification-in-api/verify-session.mdx @@ -10,17 +10,12 @@ import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs" import NodeJSFrameworkSubTabs from "/src/components/tabs/NodeJSFrameworkSubTabs"; import PythonFrameworkSubTabs from "/src/components/tabs/PythonFrameworkSubTabs"; import TabItem from '@theme/TabItem'; +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" import GoFrameworkSubTabs from "/src/components/tabs/GoFrameworkSubTabs" ## Verifying a session using the `verifySession` middleware -:::caution - -The `verifySession` middleware can only be used in scenarios that involve **SuperTokens Access Tokens**. - -If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, you will have to [manually](/docs/unified-login/customizations/verify-tokens) validate tokens. - -::: + For your APIs that require a user to be logged in, use the `verifySession` middleware: diff --git a/v2/session/common-customizations/sessions/ssr.mdx b/v2/session/common-customizations/sessions/ssr.mdx index da3f38224..e89210f16 100644 --- a/v2/session/common-customizations/sessions/ssr.mdx +++ b/v2/session/common-customizations/sessions/ssr.mdx @@ -17,9 +17,12 @@ import NodeJSFrameworkSubTabs from "/src/components/tabs/NodeJSFrameworkSubTabs" import PythonFrameworkSubTabs from "/src/components/tabs/PythonFrameworkSubTabs"; import PythonSyncAsyncSubTabs from "/src/components/tabs/PythonSyncAsyncSubTabs"; import TabItem from '@theme/TabItem'; +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # Session verification during server side rendering + + :::important Getting access to the session during server side rendering is only possible using cookie-based sessions. This is the default setting, but you have to keep this in mind if you want to switch to header-based sessions. ::: @@ -184,4 +187,4 @@ If we redirect the user to the login page directly, then in the second case, the ## Can I use `verifySession` or `getSession` instead of manual JWT verification? Yes you can, but we do not recommend it because: - Often the webserver is on a different process than the API server. Using our backend SDK requires you to give it the credentials to the SuperTokens core, which you might not want to provide to the webserver. -- The `session` object resulting from `verifySession` and `getSession` makes it very easy to mutate the access token payload. These mutations are reflected on the frontend via network interceptors from our frontend SDK. But in SSR, the browser makes the call to your webserver direclty, so our frontend SDK interceptors don't run. This can cause inconsistency between the access token payload as seen on the frontend vs the backend. \ No newline at end of file +- The `session` object resulting from `verifySession` and `getSession` makes it very easy to mutate the access token payload. These mutations are reflected on the frontend via network interceptors from our frontend SDK. But in SSR, the browser makes the call to your webserver direclty, so our frontend SDK interceptors don't run. This can cause inconsistency between the access token payload as seen on the frontend vs the backend. diff --git a/v2/session/common-customizations/sessions/with-jwt/jwt-verification.mdx b/v2/session/common-customizations/sessions/with-jwt/jwt-verification.mdx index d48165d61..c39494207 100644 --- a/v2/session/common-customizations/sessions/with-jwt/jwt-verification.mdx +++ b/v2/session/common-customizations/sessions/with-jwt/jwt-verification.mdx @@ -15,21 +15,17 @@ import FrontendMobileSubTabs from "/src/components/tabs/FrontendMobileSubTabs" import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs"; import AppInfoForm from "/src/components/appInfoForm"; import TabItem from '@theme/TabItem'; +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # Manually verify the JWT + + There are three steps in doing session verification using JWTs: - Verify the JWT signature and expiry using a JWT verification library - Check for custom claim values for authorization. - Preventing CSRF attacks in case you are using cookies to store the JWT. -:::caution - -This guide only applies to scenarios in which you are using **SuperTokens Access Tokens**. - -If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, please check the [separate page](/docs/unified-login/customizations/verify-tokens) that shows you how to verify those types of tokens. - -::: ## Verifying a JWT using a jwt verification library diff --git a/v2/session/common-customizations/sessions/with-jwt/read-jwt.mdx b/v2/session/common-customizations/sessions/with-jwt/read-jwt.mdx index 34035905c..69aea6875 100644 --- a/v2/session/common-customizations/sessions/with-jwt/read-jwt.mdx +++ b/v2/session/common-customizations/sessions/with-jwt/read-jwt.mdx @@ -20,9 +20,12 @@ import {PreBuiltOrCustomUISwitcher, PreBuiltUIContent, CustomUIContent} from "/s import FrontendPreBuiltUITabs from "/src/components/tabs/FrontendPreBuiltUITabs" import FrontendCustomUITabs from "/src/components/tabs/FrontendCustomUITabs" import FrontendMobileSubTabs from "/src/components/tabs/FrontendMobileSubTabs" +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # Fetching the access token string + + ## On the backend diff --git a/v2/session/graphql-integration/backend-setup.mdx b/v2/session/graphql-integration/backend-setup.mdx index 46c7c829c..e7db8d30b 100644 --- a/v2/session/graphql-integration/backend-setup.mdx +++ b/v2/session/graphql-integration/backend-setup.mdx @@ -7,6 +7,8 @@ hide_title: true +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" + # Backend Setup ## Complete Quick Setup @@ -15,6 +17,8 @@ Complete both steps from the quick setup guide for SuperTokens: - [Frontend Quick Setup](../quick-setup/frontend) - [Backend Quick Setup](../quick-setup/backend) + + @@ -186,4 +190,4 @@ const server = new ApolloServer({ }) ``` - \ No newline at end of file + diff --git a/v2/session/serverless/with-aws-lambda/authorizer.mdx b/v2/session/serverless/with-aws-lambda/authorizer.mdx index 078cb159b..5f3688425 100644 --- a/v2/session/serverless/with-aws-lambda/authorizer.mdx +++ b/v2/session/serverless/with-aws-lambda/authorizer.mdx @@ -10,9 +10,12 @@ hide_title: true import AppInfoForm from "/src/components/appInfoForm" import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs"; import TabItem from '@theme/TabItem'; +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # Using Lambda Authorizers + + You can use a lambda as an Authorizer in API Gateways. This will enable you to use SuperTokens in a lambda to authorize requests to other integrations (e.g., AppSync). An Authorizer pointed to this lambda will add `context.authorizer.principalId` that you can map to a header. For example, you can map this to an "x-user-id" header which will be set to the id of the logged-in user. If there is no valid session for the request, this header won't exist. ## 1) Add configurations and dependencies diff --git a/v2/session/serverless/with-aws-lambda/jwt-authorizer.mdx b/v2/session/serverless/with-aws-lambda/jwt-authorizer.mdx index ae937766b..31a0bf9b4 100644 --- a/v2/session/serverless/with-aws-lambda/jwt-authorizer.mdx +++ b/v2/session/serverless/with-aws-lambda/jwt-authorizer.mdx @@ -16,7 +16,14 @@ import TabItem from '@theme/TabItem'; # Using JWT Authorizers :::caution + AWS supports JWT authorizers for HTTP APIs and not REST APIs on the API Gateway service. For REST APIs follow the [Lambda authorizer](./authorizer) guide + +This guide will work if you are using **SuperTokens Session Tokens**. + +If you implementing an **OAuth2** setup, through the [**Unified Login**](/docs/unified-login/introduction) or the [**Microservice Authentication**](/docs/microservice_auth/client-credentials) features, you will have to manually set the token audience property. +Please check the referenced pages for more information. + ::: ## 1) Add the `aud` claim in the JWT based on the authorizer configuration diff --git a/v2/session/serverless/with-aws-lambda/session-verification.mdx b/v2/session/serverless/with-aws-lambda/session-verification.mdx index 02857b5e7..ae4954e93 100644 --- a/v2/session/serverless/with-aws-lambda/session-verification.mdx +++ b/v2/session/serverless/with-aws-lambda/session-verification.mdx @@ -9,9 +9,12 @@ hide_title: true import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs"; import TabItem from '@theme/TabItem'; +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # 3. Session verification / Building your APIs + + When building your own APIs, you may need to verify the session of the user before proceeding further. SuperTokens SDK exposes a `verifySession` function that can be utilized for this. In this guide, we will be creating a `/user` `GET` route that will return the current session information. ## 1) Add `/user` `GET` route in your API Gateway diff --git a/v2/session/serverless/with-netlify/session-verification.mdx b/v2/session/serverless/with-netlify/session-verification.mdx index 1fd4b1a1f..b28b7cd62 100644 --- a/v2/session/serverless/with-netlify/session-verification.mdx +++ b/v2/session/serverless/with-netlify/session-verification.mdx @@ -7,8 +7,12 @@ hide_title: true +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" + # 4. Session verification / Building your APIs + + For this guide, we will assume that we want an API `/.netlify/functions/user GET` which returns the current session information. ## 1) Create a new file `netlify/functions/user.js` diff --git a/v2/src/components/OAuthDisclaimer.tsx b/v2/src/components/OAuthDisclaimer.tsx index df6f12cff..9e802257c 100644 --- a/v2/src/components/OAuthDisclaimer.tsx +++ b/v2/src/components/OAuthDisclaimer.tsx @@ -55,4 +55,37 @@ function OAuthEmailVerificationDisclaimer() { ); } -export { OAuthVerifyTokensDisclaimer, OAuthEmailVerificationDisclaimer }; +function OAuthFrontendVerificationDisclaimer() { + return ( +
    +
    +
    CAUTION
    +
    +
    +

    + This information only applies to scenarios in which you are using{" "} + SuperTokens Session Access Tokens. +

    +

    + If you are implementing{" "} + + Unified Login + {" "} + you will have to manually check authentication state based the{" "} + OAuth2/OIDC library that you are using. Please + explore the{" "} + + dedicated documentation + {" "} + to find out more. +

    +
    +
    + ); +} + +export { + OAuthVerifyTokensDisclaimer, + OAuthEmailVerificationDisclaimer, + OAuthFrontendVerificationDisclaimer, +}; diff --git a/v2/thirdparty/common-customizations/email-verification/about.mdx b/v2/thirdparty/common-customizations/email-verification/about.mdx index 66d6ba763..ceb8fd555 100644 --- a/v2/thirdparty/common-customizations/email-verification/about.mdx +++ b/v2/thirdparty/common-customizations/email-verification/about.mdx @@ -17,6 +17,7 @@ import TabItem from "@theme/TabItem"; import NpmOrScriptTabs from "/src/components/tabs/NpmOrScriptTabs" import AngularUIImplementation from "/src/components/reusableSnippets/angularUIImplementation" import VueUIImplementation from "/src/components/reusableSnippets/vueUIImplementation" +import { OAuthEmailVerificationDisclaimer }from "/src/components/OAuthDisclaimer" # Enable email verification @@ -25,13 +26,7 @@ import VueUIImplementation from "/src/components/reusableSnippets/vueUIImplement Email verification is turned off by default. It is strongly encouraged to enable it to ensure the authenticity of your users. ::: -:::caution - -This guide only applies to scenarios in which you are using **SuperTokens Access Tokens**. - -If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, please check the [separate page](/docs/unified-login/customizations/verify-tokens) that shows you how to verify those types of tokens. - -::: + diff --git a/v2/thirdparty/common-customizations/email-verification/protecting-routes.mdx b/v2/thirdparty/common-customizations/email-verification/protecting-routes.mdx index b8759e741..6e13b1a87 100644 --- a/v2/thirdparty/common-customizations/email-verification/protecting-routes.mdx +++ b/v2/thirdparty/common-customizations/email-verification/protecting-routes.mdx @@ -24,11 +24,14 @@ import NpmOrScriptTabs from "/src/components/tabs/NpmOrScriptTabs" import AngularUIImplementation from "/src/components/reusableSnippets/angularUIImplementation" import VueUIImplementation from "/src/components/reusableSnippets/vueUIImplementation" import {Answer} from "/src/components/question" +import { OAuthEmailVerificationDisclaimer }from "/src/components/OAuthDisclaimer" # Protecting backend APIs and website routes ## Protecting backend API routes + + ### Add email verification checks to all API routes If you want to protect all your backend API routes with email verification checks, set the `mode` to `REQUIRED` in the `EmailVerification` config. Routes protected with the `verifySession` middleware will now additionally check for email verification status. diff --git a/v2/thirdparty/common-customizations/sessions/protecting-frontend-routes.mdx b/v2/thirdparty/common-customizations/sessions/protecting-frontend-routes.mdx index 232bba79f..9e5719247 100644 --- a/v2/thirdparty/common-customizations/sessions/protecting-frontend-routes.mdx +++ b/v2/thirdparty/common-customizations/sessions/protecting-frontend-routes.mdx @@ -14,9 +14,12 @@ import FrontendPreBuiltUITabs from "/src/components/tabs/FrontendPreBuiltUITabs" import FrontendCustomUITabs from "/src/components/tabs/FrontendCustomUITabs" import NpmOrScriptTabs from "/src/components/tabs/NpmOrScriptTabs" import FrontendMobileSubTabs from "/src/components/tabs/FrontendMobileSubTabs" +import { OAuthFrontendVerificationDisclaimer }from "/src/components/OAuthDisclaimer" # Protecting frontend routes + + diff --git a/v2/thirdparty/common-customizations/sessions/session-verification-in-api/get-session.mdx b/v2/thirdparty/common-customizations/sessions/session-verification-in-api/get-session.mdx index 94a21fa6d..ce8decce4 100644 --- a/v2/thirdparty/common-customizations/sessions/session-verification-in-api/get-session.mdx +++ b/v2/thirdparty/common-customizations/sessions/session-verification-in-api/get-session.mdx @@ -13,10 +13,13 @@ import NodeJSFrameworkSubTabs from "/src/components/tabs/NodeJSFrameworkSubTabs" import PythonFrameworkSubTabs from "/src/components/tabs/PythonFrameworkSubTabs"; import PythonSyncAsyncSubTabs from "/src/components/tabs/PythonSyncAsyncSubTabs"; import TabItem from '@theme/TabItem'; +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # Session Verification using `getSession` + + If you want to use a non-middleware form of `verifySession`, you can use the `getSession` function. ## Using `getSession` diff --git a/v2/thirdparty/common-customizations/sessions/session-verification-in-api/verify-session.mdx b/v2/thirdparty/common-customizations/sessions/session-verification-in-api/verify-session.mdx index 1a9351a51..e7a1df653 100644 --- a/v2/thirdparty/common-customizations/sessions/session-verification-in-api/verify-session.mdx +++ b/v2/thirdparty/common-customizations/sessions/session-verification-in-api/verify-session.mdx @@ -10,17 +10,12 @@ import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs" import NodeJSFrameworkSubTabs from "/src/components/tabs/NodeJSFrameworkSubTabs"; import PythonFrameworkSubTabs from "/src/components/tabs/PythonFrameworkSubTabs"; import TabItem from '@theme/TabItem'; +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" import GoFrameworkSubTabs from "/src/components/tabs/GoFrameworkSubTabs" ## Verifying a session using the `verifySession` middleware -:::caution - -The `verifySession` middleware can only be used in scenarios that involve **SuperTokens Access Tokens**. - -If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, you will have to [manually](/docs/unified-login/customizations/verify-tokens) validate tokens. - -::: + For your APIs that require a user to be logged in, use the `verifySession` middleware: diff --git a/v2/thirdparty/common-customizations/sessions/ssr.mdx b/v2/thirdparty/common-customizations/sessions/ssr.mdx index 863e5cb5b..e89210f16 100644 --- a/v2/thirdparty/common-customizations/sessions/ssr.mdx +++ b/v2/thirdparty/common-customizations/sessions/ssr.mdx @@ -17,9 +17,12 @@ import NodeJSFrameworkSubTabs from "/src/components/tabs/NodeJSFrameworkSubTabs" import PythonFrameworkSubTabs from "/src/components/tabs/PythonFrameworkSubTabs"; import PythonSyncAsyncSubTabs from "/src/components/tabs/PythonSyncAsyncSubTabs"; import TabItem from '@theme/TabItem'; +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # Session verification during server side rendering + + :::important Getting access to the session during server side rendering is only possible using cookie-based sessions. This is the default setting, but you have to keep this in mind if you want to switch to header-based sessions. ::: diff --git a/v2/thirdparty/common-customizations/sessions/with-jwt/jwt-verification.mdx b/v2/thirdparty/common-customizations/sessions/with-jwt/jwt-verification.mdx index d48165d61..c39494207 100644 --- a/v2/thirdparty/common-customizations/sessions/with-jwt/jwt-verification.mdx +++ b/v2/thirdparty/common-customizations/sessions/with-jwt/jwt-verification.mdx @@ -15,21 +15,17 @@ import FrontendMobileSubTabs from "/src/components/tabs/FrontendMobileSubTabs" import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs"; import AppInfoForm from "/src/components/appInfoForm"; import TabItem from '@theme/TabItem'; +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # Manually verify the JWT + + There are three steps in doing session verification using JWTs: - Verify the JWT signature and expiry using a JWT verification library - Check for custom claim values for authorization. - Preventing CSRF attacks in case you are using cookies to store the JWT. -:::caution - -This guide only applies to scenarios in which you are using **SuperTokens Access Tokens**. - -If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, please check the [separate page](/docs/unified-login/customizations/verify-tokens) that shows you how to verify those types of tokens. - -::: ## Verifying a JWT using a jwt verification library diff --git a/v2/thirdparty/common-customizations/sessions/with-jwt/read-jwt.mdx b/v2/thirdparty/common-customizations/sessions/with-jwt/read-jwt.mdx index 6406c10f2..22a344607 100644 --- a/v2/thirdparty/common-customizations/sessions/with-jwt/read-jwt.mdx +++ b/v2/thirdparty/common-customizations/sessions/with-jwt/read-jwt.mdx @@ -20,9 +20,12 @@ import {PreBuiltOrCustomUISwitcher, PreBuiltUIContent, CustomUIContent} from "/s import FrontendPreBuiltUITabs from "/src/components/tabs/FrontendPreBuiltUITabs" import FrontendCustomUITabs from "/src/components/tabs/FrontendCustomUITabs" import FrontendMobileSubTabs from "/src/components/tabs/FrontendMobileSubTabs" +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # Fetching the access token string + + ## On the backend diff --git a/v2/thirdparty/graphql-integration/backend-setup.mdx b/v2/thirdparty/graphql-integration/backend-setup.mdx index a521f7578..ec91bb6e9 100644 --- a/v2/thirdparty/graphql-integration/backend-setup.mdx +++ b/v2/thirdparty/graphql-integration/backend-setup.mdx @@ -9,11 +9,14 @@ show_ui_switcher: true import {PreBuiltOrCustomUISwitcher, PreBuiltUIContent, CustomUIContent} from "/src/components/preBuiltOrCustomUISwitcher" +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # Backend Setup ## Complete Quick Setup + + @@ -30,6 +33,7 @@ Follow the [frontend and backend custom UI setup guides](../custom-ui/init/front + diff --git a/v2/thirdparty/nestjs/guide.mdx b/v2/thirdparty/nestjs/guide.mdx index e186c4251..e06ac9194 100644 --- a/v2/thirdparty/nestjs/guide.mdx +++ b/v2/thirdparty/nestjs/guide.mdx @@ -10,6 +10,7 @@ hide_title: true import AppInfoForm from "/src/components/appInfoForm" import CoreInjector from "/src/components/coreInjector" import {Question, Answer} from "/src/components/question" +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # NestJS Integration Guide @@ -415,6 +416,8 @@ bootstrap(); ## Add a session verification guard + + Now that the library is set up, you can add a guard to protect your API. You can scaffold this by running: `nest g guard auth`. In the newly created `auth.guard.ts` file, implement session verification: diff --git a/v2/thirdparty/nextjs/app-directory/protecting-route.mdx b/v2/thirdparty/nextjs/app-directory/protecting-route.mdx index e636f81f0..311b02a7b 100644 --- a/v2/thirdparty/nextjs/app-directory/protecting-route.mdx +++ b/v2/thirdparty/nextjs/app-directory/protecting-route.mdx @@ -9,16 +9,21 @@ hide_title: true import {PreBuiltOrCustomUISwitcher, PreBuiltUIContent, CustomUIContent} from "/src/components/preBuiltOrCustomUISwitcher" import CoreInjector from "/src/components/coreInjector" +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # 4. Checking for sessions in frontend routes + + Protecting a website route means that it cannot be accessed unless a user is signed in. If a non signed in user tries to access it, they will be redirected to the login page. + + ## Sessions with Client Components Lets create a client component for the `/` route of our website. diff --git a/v2/thirdparty/nextjs/app-directory/session-verification-middleware.mdx b/v2/thirdparty/nextjs/app-directory/session-verification-middleware.mdx index a76ddce0d..4e4742164 100644 --- a/v2/thirdparty/nextjs/app-directory/session-verification-middleware.mdx +++ b/v2/thirdparty/nextjs/app-directory/session-verification-middleware.mdx @@ -7,8 +7,12 @@ hide_title: true +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" + # Using the Next.js middleware + + :::important This method is an alternative method for using sessions in an API. If you are already using [session guards](./session-verification-session-guard.mdx), you can skip this step. ::: diff --git a/v2/thirdparty/nextjs/app-directory/session-verification-session-guard.mdx b/v2/thirdparty/nextjs/app-directory/session-verification-session-guard.mdx index fb03ca4e0..663193a00 100644 --- a/v2/thirdparty/nextjs/app-directory/session-verification-session-guard.mdx +++ b/v2/thirdparty/nextjs/app-directory/session-verification-session-guard.mdx @@ -7,8 +7,12 @@ hide_title: true +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" + # Adding a session guard to each API route + + :::note This is applicable for when the frontend calls an API in the `/app/api` folder. ::: diff --git a/v2/thirdparty/nextjs/app-directory/setting-up-backend.mdx b/v2/thirdparty/nextjs/app-directory/setting-up-backend.mdx index b06c3ac05..ee643af06 100644 --- a/v2/thirdparty/nextjs/app-directory/setting-up-backend.mdx +++ b/v2/thirdparty/nextjs/app-directory/setting-up-backend.mdx @@ -11,6 +11,7 @@ import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; import AppInfoForm from "/src/components/appInfoForm" + # 3. Adding auth APIs We will add all the backend APIs for auth on `/api/auth`. This can be changed by setting the `apiBasePath` property in the `appInfo` object in the `appInfo.ts` file. For the rest of this page, we will assume you are using `/api/auth`. diff --git a/v2/thirdparty/nextjs/protecting-route.mdx b/v2/thirdparty/nextjs/protecting-route.mdx index 21505368e..6de7c2164 100644 --- a/v2/thirdparty/nextjs/protecting-route.mdx +++ b/v2/thirdparty/nextjs/protecting-route.mdx @@ -9,9 +9,12 @@ show_ui_switcher: true import {PreBuiltOrCustomUISwitcher, PreBuiltUIContent, CustomUIContent} from "/src/components/preBuiltOrCustomUISwitcher" +import { OAuthFrontendVerificationDisclaimer }from "/src/components/OAuthDisclaimer" # 4. Protecting a website route + + diff --git a/v2/thirdparty/nextjs/session-verification/in-api.mdx b/v2/thirdparty/nextjs/session-verification/in-api.mdx index e0d57c781..182b4d5d2 100644 --- a/v2/thirdparty/nextjs/session-verification/in-api.mdx +++ b/v2/thirdparty/nextjs/session-verification/in-api.mdx @@ -8,9 +8,13 @@ hide_title: true import AppInfoForm from "/src/components/appInfoForm" +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" + # 5a. Session verification in an API call + + :::note This is applicable for when the frontend calls an API in the `/pages/api` folder. ::: diff --git a/v2/thirdparty/nextjs/session-verification/in-ssr.mdx b/v2/thirdparty/nextjs/session-verification/in-ssr.mdx index fcdfb1c8d..4ed75df27 100644 --- a/v2/thirdparty/nextjs/session-verification/in-ssr.mdx +++ b/v2/thirdparty/nextjs/session-verification/in-ssr.mdx @@ -10,9 +10,12 @@ show_ui_switcher: true import {PreBuiltOrCustomUISwitcher, PreBuiltUIContent, CustomUIContent} from "/src/components/preBuiltOrCustomUISwitcher" import CoreInjector from "/src/components/coreInjector" +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # 5b. Session verification in getServerSideProps + + :::note This is applicable for when verifying a session in `getServerSideProps` or `getInitialProps`. ::: diff --git a/v2/thirdparty/serverless/with-aws-lambda/authorizer.mdx b/v2/thirdparty/serverless/with-aws-lambda/authorizer.mdx index 078cb159b..5f3688425 100644 --- a/v2/thirdparty/serverless/with-aws-lambda/authorizer.mdx +++ b/v2/thirdparty/serverless/with-aws-lambda/authorizer.mdx @@ -10,9 +10,12 @@ hide_title: true import AppInfoForm from "/src/components/appInfoForm" import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs"; import TabItem from '@theme/TabItem'; +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # Using Lambda Authorizers + + You can use a lambda as an Authorizer in API Gateways. This will enable you to use SuperTokens in a lambda to authorize requests to other integrations (e.g., AppSync). An Authorizer pointed to this lambda will add `context.authorizer.principalId` that you can map to a header. For example, you can map this to an "x-user-id" header which will be set to the id of the logged-in user. If there is no valid session for the request, this header won't exist. ## 1) Add configurations and dependencies diff --git a/v2/thirdparty/serverless/with-aws-lambda/jwt-authorizer.mdx b/v2/thirdparty/serverless/with-aws-lambda/jwt-authorizer.mdx index ae937766b..31a0bf9b4 100644 --- a/v2/thirdparty/serverless/with-aws-lambda/jwt-authorizer.mdx +++ b/v2/thirdparty/serverless/with-aws-lambda/jwt-authorizer.mdx @@ -16,7 +16,14 @@ import TabItem from '@theme/TabItem'; # Using JWT Authorizers :::caution + AWS supports JWT authorizers for HTTP APIs and not REST APIs on the API Gateway service. For REST APIs follow the [Lambda authorizer](./authorizer) guide + +This guide will work if you are using **SuperTokens Session Tokens**. + +If you implementing an **OAuth2** setup, through the [**Unified Login**](/docs/unified-login/introduction) or the [**Microservice Authentication**](/docs/microservice_auth/client-credentials) features, you will have to manually set the token audience property. +Please check the referenced pages for more information. + ::: ## 1) Add the `aud` claim in the JWT based on the authorizer configuration diff --git a/v2/thirdparty/serverless/with-aws-lambda/session-verification.mdx b/v2/thirdparty/serverless/with-aws-lambda/session-verification.mdx index 02857b5e7..ae4954e93 100644 --- a/v2/thirdparty/serverless/with-aws-lambda/session-verification.mdx +++ b/v2/thirdparty/serverless/with-aws-lambda/session-verification.mdx @@ -9,9 +9,12 @@ hide_title: true import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs"; import TabItem from '@theme/TabItem'; +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # 3. Session verification / Building your APIs + + When building your own APIs, you may need to verify the session of the user before proceeding further. SuperTokens SDK exposes a `verifySession` function that can be utilized for this. In this guide, we will be creating a `/user` `GET` route that will return the current session information. ## 1) Add `/user` `GET` route in your API Gateway diff --git a/v2/thirdparty/serverless/with-netlify/session-verification.mdx b/v2/thirdparty/serverless/with-netlify/session-verification.mdx index 1fd4b1a1f..b28b7cd62 100644 --- a/v2/thirdparty/serverless/with-netlify/session-verification.mdx +++ b/v2/thirdparty/serverless/with-netlify/session-verification.mdx @@ -7,8 +7,12 @@ hide_title: true +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" + # 4. Session verification / Building your APIs + + For this guide, we will assume that we want an API `/.netlify/functions/user GET` which returns the current session information. ## 1) Create a new file `netlify/functions/user.js` diff --git a/v2/thirdparty/user-roles/protecting-routes.mdx b/v2/thirdparty/user-roles/protecting-routes.mdx index 9d497d1ca..eecb3446e 100644 --- a/v2/thirdparty/user-roles/protecting-routes.mdx +++ b/v2/thirdparty/user-roles/protecting-routes.mdx @@ -19,9 +19,12 @@ import {PreBuiltOrCustomUISwitcher, PreBuiltUIContent, CustomUIContent} from "/s import FrontendPreBuiltUITabs from "/src/components/tabs/FrontendPreBuiltUITabs" import FrontendCustomUITabs from "/src/components/tabs/FrontendCustomUITabs" import FrontendMobileSubTabs from "/src/components/tabs/FrontendMobileSubTabs" +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # Protecting API and frontend routes + + ## Protecting API routes In your API routes you: diff --git a/v2/thirdpartyemailpassword/common-customizations/email-verification/about.mdx b/v2/thirdpartyemailpassword/common-customizations/email-verification/about.mdx index 66d6ba763..ceb8fd555 100644 --- a/v2/thirdpartyemailpassword/common-customizations/email-verification/about.mdx +++ b/v2/thirdpartyemailpassword/common-customizations/email-verification/about.mdx @@ -17,6 +17,7 @@ import TabItem from "@theme/TabItem"; import NpmOrScriptTabs from "/src/components/tabs/NpmOrScriptTabs" import AngularUIImplementation from "/src/components/reusableSnippets/angularUIImplementation" import VueUIImplementation from "/src/components/reusableSnippets/vueUIImplementation" +import { OAuthEmailVerificationDisclaimer }from "/src/components/OAuthDisclaimer" # Enable email verification @@ -25,13 +26,7 @@ import VueUIImplementation from "/src/components/reusableSnippets/vueUIImplement Email verification is turned off by default. It is strongly encouraged to enable it to ensure the authenticity of your users. ::: -:::caution - -This guide only applies to scenarios in which you are using **SuperTokens Access Tokens**. - -If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, please check the [separate page](/docs/unified-login/customizations/verify-tokens) that shows you how to verify those types of tokens. - -::: + diff --git a/v2/thirdpartyemailpassword/common-customizations/email-verification/protecting-routes.mdx b/v2/thirdpartyemailpassword/common-customizations/email-verification/protecting-routes.mdx index b8759e741..6e13b1a87 100644 --- a/v2/thirdpartyemailpassword/common-customizations/email-verification/protecting-routes.mdx +++ b/v2/thirdpartyemailpassword/common-customizations/email-verification/protecting-routes.mdx @@ -24,11 +24,14 @@ import NpmOrScriptTabs from "/src/components/tabs/NpmOrScriptTabs" import AngularUIImplementation from "/src/components/reusableSnippets/angularUIImplementation" import VueUIImplementation from "/src/components/reusableSnippets/vueUIImplementation" import {Answer} from "/src/components/question" +import { OAuthEmailVerificationDisclaimer }from "/src/components/OAuthDisclaimer" # Protecting backend APIs and website routes ## Protecting backend API routes + + ### Add email verification checks to all API routes If you want to protect all your backend API routes with email verification checks, set the `mode` to `REQUIRED` in the `EmailVerification` config. Routes protected with the `verifySession` middleware will now additionally check for email verification status. diff --git a/v2/thirdpartyemailpassword/common-customizations/sessions/protecting-frontend-routes.mdx b/v2/thirdpartyemailpassword/common-customizations/sessions/protecting-frontend-routes.mdx index 232bba79f..9e5719247 100644 --- a/v2/thirdpartyemailpassword/common-customizations/sessions/protecting-frontend-routes.mdx +++ b/v2/thirdpartyemailpassword/common-customizations/sessions/protecting-frontend-routes.mdx @@ -14,9 +14,12 @@ import FrontendPreBuiltUITabs from "/src/components/tabs/FrontendPreBuiltUITabs" import FrontendCustomUITabs from "/src/components/tabs/FrontendCustomUITabs" import NpmOrScriptTabs from "/src/components/tabs/NpmOrScriptTabs" import FrontendMobileSubTabs from "/src/components/tabs/FrontendMobileSubTabs" +import { OAuthFrontendVerificationDisclaimer }from "/src/components/OAuthDisclaimer" # Protecting frontend routes + + diff --git a/v2/thirdpartyemailpassword/common-customizations/sessions/session-verification-in-api/get-session.mdx b/v2/thirdpartyemailpassword/common-customizations/sessions/session-verification-in-api/get-session.mdx index 94a21fa6d..ce8decce4 100644 --- a/v2/thirdpartyemailpassword/common-customizations/sessions/session-verification-in-api/get-session.mdx +++ b/v2/thirdpartyemailpassword/common-customizations/sessions/session-verification-in-api/get-session.mdx @@ -13,10 +13,13 @@ import NodeJSFrameworkSubTabs from "/src/components/tabs/NodeJSFrameworkSubTabs" import PythonFrameworkSubTabs from "/src/components/tabs/PythonFrameworkSubTabs"; import PythonSyncAsyncSubTabs from "/src/components/tabs/PythonSyncAsyncSubTabs"; import TabItem from '@theme/TabItem'; +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # Session Verification using `getSession` + + If you want to use a non-middleware form of `verifySession`, you can use the `getSession` function. ## Using `getSession` diff --git a/v2/thirdpartyemailpassword/common-customizations/sessions/session-verification-in-api/verify-session.mdx b/v2/thirdpartyemailpassword/common-customizations/sessions/session-verification-in-api/verify-session.mdx index 1a9351a51..e7a1df653 100644 --- a/v2/thirdpartyemailpassword/common-customizations/sessions/session-verification-in-api/verify-session.mdx +++ b/v2/thirdpartyemailpassword/common-customizations/sessions/session-verification-in-api/verify-session.mdx @@ -10,17 +10,12 @@ import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs" import NodeJSFrameworkSubTabs from "/src/components/tabs/NodeJSFrameworkSubTabs"; import PythonFrameworkSubTabs from "/src/components/tabs/PythonFrameworkSubTabs"; import TabItem from '@theme/TabItem'; +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" import GoFrameworkSubTabs from "/src/components/tabs/GoFrameworkSubTabs" ## Verifying a session using the `verifySession` middleware -:::caution - -The `verifySession` middleware can only be used in scenarios that involve **SuperTokens Access Tokens**. - -If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, you will have to [manually](/docs/unified-login/customizations/verify-tokens) validate tokens. - -::: + For your APIs that require a user to be logged in, use the `verifySession` middleware: diff --git a/v2/thirdpartyemailpassword/common-customizations/sessions/ssr.mdx b/v2/thirdpartyemailpassword/common-customizations/sessions/ssr.mdx index 863e5cb5b..e89210f16 100644 --- a/v2/thirdpartyemailpassword/common-customizations/sessions/ssr.mdx +++ b/v2/thirdpartyemailpassword/common-customizations/sessions/ssr.mdx @@ -17,9 +17,12 @@ import NodeJSFrameworkSubTabs from "/src/components/tabs/NodeJSFrameworkSubTabs" import PythonFrameworkSubTabs from "/src/components/tabs/PythonFrameworkSubTabs"; import PythonSyncAsyncSubTabs from "/src/components/tabs/PythonSyncAsyncSubTabs"; import TabItem from '@theme/TabItem'; +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # Session verification during server side rendering + + :::important Getting access to the session during server side rendering is only possible using cookie-based sessions. This is the default setting, but you have to keep this in mind if you want to switch to header-based sessions. ::: diff --git a/v2/thirdpartyemailpassword/common-customizations/sessions/with-jwt/jwt-verification.mdx b/v2/thirdpartyemailpassword/common-customizations/sessions/with-jwt/jwt-verification.mdx index d48165d61..c39494207 100644 --- a/v2/thirdpartyemailpassword/common-customizations/sessions/with-jwt/jwt-verification.mdx +++ b/v2/thirdpartyemailpassword/common-customizations/sessions/with-jwt/jwt-verification.mdx @@ -15,21 +15,17 @@ import FrontendMobileSubTabs from "/src/components/tabs/FrontendMobileSubTabs" import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs"; import AppInfoForm from "/src/components/appInfoForm"; import TabItem from '@theme/TabItem'; +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # Manually verify the JWT + + There are three steps in doing session verification using JWTs: - Verify the JWT signature and expiry using a JWT verification library - Check for custom claim values for authorization. - Preventing CSRF attacks in case you are using cookies to store the JWT. -:::caution - -This guide only applies to scenarios in which you are using **SuperTokens Access Tokens**. - -If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, please check the [separate page](/docs/unified-login/customizations/verify-tokens) that shows you how to verify those types of tokens. - -::: ## Verifying a JWT using a jwt verification library diff --git a/v2/thirdpartyemailpassword/common-customizations/sessions/with-jwt/read-jwt.mdx b/v2/thirdpartyemailpassword/common-customizations/sessions/with-jwt/read-jwt.mdx index 6406c10f2..22a344607 100644 --- a/v2/thirdpartyemailpassword/common-customizations/sessions/with-jwt/read-jwt.mdx +++ b/v2/thirdpartyemailpassword/common-customizations/sessions/with-jwt/read-jwt.mdx @@ -20,9 +20,12 @@ import {PreBuiltOrCustomUISwitcher, PreBuiltUIContent, CustomUIContent} from "/s import FrontendPreBuiltUITabs from "/src/components/tabs/FrontendPreBuiltUITabs" import FrontendCustomUITabs from "/src/components/tabs/FrontendCustomUITabs" import FrontendMobileSubTabs from "/src/components/tabs/FrontendMobileSubTabs" +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # Fetching the access token string + + ## On the backend diff --git a/v2/thirdpartyemailpassword/graphql-integration/backend-setup.mdx b/v2/thirdpartyemailpassword/graphql-integration/backend-setup.mdx index 607112fce..ec91bb6e9 100644 --- a/v2/thirdpartyemailpassword/graphql-integration/backend-setup.mdx +++ b/v2/thirdpartyemailpassword/graphql-integration/backend-setup.mdx @@ -9,11 +9,14 @@ show_ui_switcher: true import {PreBuiltOrCustomUISwitcher, PreBuiltUIContent, CustomUIContent} from "/src/components/preBuiltOrCustomUISwitcher" +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # Backend Setup ## Complete Quick Setup + + @@ -30,6 +33,7 @@ Follow the [frontend and backend custom UI setup guides](../custom-ui/init/front + @@ -201,4 +205,4 @@ const server = new ApolloServer({ }) ``` - \ No newline at end of file + diff --git a/v2/thirdpartyemailpassword/nestjs/guide.mdx b/v2/thirdpartyemailpassword/nestjs/guide.mdx index e086573d1..c958399fd 100644 --- a/v2/thirdpartyemailpassword/nestjs/guide.mdx +++ b/v2/thirdpartyemailpassword/nestjs/guide.mdx @@ -10,6 +10,7 @@ hide_title: true import AppInfoForm from "/src/components/appInfoForm" import CoreInjector from "/src/components/coreInjector" import {Question, Answer} from "/src/components/question" +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # NestJS Integration Guide @@ -417,6 +418,8 @@ bootstrap(); ## Add a session verification guard + + Now that the library is set up, you can add a guard to protect your API. You can scaffold this by running: `nest g guard auth`. In the newly created `auth.guard.ts` file, implement session verification: @@ -520,4 +523,4 @@ You have successfully completed the quick setup! Head over to the "Post login op - \ No newline at end of file + diff --git a/v2/thirdpartyemailpassword/nextjs/app-directory/protecting-route.mdx b/v2/thirdpartyemailpassword/nextjs/app-directory/protecting-route.mdx index 062a948d2..037bb6e93 100644 --- a/v2/thirdpartyemailpassword/nextjs/app-directory/protecting-route.mdx +++ b/v2/thirdpartyemailpassword/nextjs/app-directory/protecting-route.mdx @@ -10,16 +10,21 @@ show_ui_switcher: true import {PreBuiltOrCustomUISwitcher, PreBuiltUIContent, CustomUIContent} from "/src/components/preBuiltOrCustomUISwitcher" import CoreInjector from "/src/components/coreInjector" +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # 4. Checking for sessions in frontend routes + + Protecting a website route means that it cannot be accessed unless a user is signed in. If a non signed in user tries to access it, they will be redirected to the login page. + + ## Sessions with Client Components Lets create a client component for the `/` route of our website. @@ -504,4 +509,4 @@ For custom UI SuperTokens provides no login UI, the code above will redirect the - \ No newline at end of file + diff --git a/v2/thirdpartyemailpassword/nextjs/app-directory/session-verification-middleware.mdx b/v2/thirdpartyemailpassword/nextjs/app-directory/session-verification-middleware.mdx index f13fd3389..4e4742164 100644 --- a/v2/thirdpartyemailpassword/nextjs/app-directory/session-verification-middleware.mdx +++ b/v2/thirdpartyemailpassword/nextjs/app-directory/session-verification-middleware.mdx @@ -7,8 +7,12 @@ hide_title: true +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" + # Using the Next.js middleware + + :::important This method is an alternative method for using sessions in an API. If you are already using [session guards](./session-verification-session-guard.mdx), you can skip this step. ::: @@ -93,4 +97,4 @@ export function GET(request: NextRequest) { } ``` -This creates a `GET` request for the `/api/userid` route which returns the user id of the currently logged in user. \ No newline at end of file +This creates a `GET` request for the `/api/userid` route which returns the user id of the currently logged in user. diff --git a/v2/thirdpartyemailpassword/nextjs/app-directory/session-verification-session-guard.mdx b/v2/thirdpartyemailpassword/nextjs/app-directory/session-verification-session-guard.mdx index 3900bb842..663193a00 100644 --- a/v2/thirdpartyemailpassword/nextjs/app-directory/session-verification-session-guard.mdx +++ b/v2/thirdpartyemailpassword/nextjs/app-directory/session-verification-session-guard.mdx @@ -7,8 +7,12 @@ hide_title: true +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" + # Adding a session guard to each API route + + :::note This is applicable for when the frontend calls an API in the `/app/api` folder. ::: @@ -50,4 +54,4 @@ In the above snippet we are creating a `GET` handler for the `/api/user` route. The `withSession` guard will return: - Status `401` if the session does not exist or has expired -- Stauts `403` if the session claims fail their validation. For example if email verification is required but the user's email is not verified. \ No newline at end of file +- Stauts `403` if the session claims fail their validation. For example if email verification is required but the user's email is not verified. diff --git a/v2/thirdpartyemailpassword/nextjs/app-directory/setting-up-backend.mdx b/v2/thirdpartyemailpassword/nextjs/app-directory/setting-up-backend.mdx index b06c3ac05..ee643af06 100644 --- a/v2/thirdpartyemailpassword/nextjs/app-directory/setting-up-backend.mdx +++ b/v2/thirdpartyemailpassword/nextjs/app-directory/setting-up-backend.mdx @@ -11,6 +11,7 @@ import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; import AppInfoForm from "/src/components/appInfoForm" + # 3. Adding auth APIs We will add all the backend APIs for auth on `/api/auth`. This can be changed by setting the `apiBasePath` property in the `appInfo` object in the `appInfo.ts` file. For the rest of this page, we will assume you are using `/api/auth`. diff --git a/v2/thirdpartyemailpassword/nextjs/protecting-route.mdx b/v2/thirdpartyemailpassword/nextjs/protecting-route.mdx index adb5b3dcb..6de7c2164 100644 --- a/v2/thirdpartyemailpassword/nextjs/protecting-route.mdx +++ b/v2/thirdpartyemailpassword/nextjs/protecting-route.mdx @@ -9,9 +9,12 @@ show_ui_switcher: true import {PreBuiltOrCustomUISwitcher, PreBuiltUIContent, CustomUIContent} from "/src/components/preBuiltOrCustomUISwitcher" +import { OAuthFrontendVerificationDisclaimer }from "/src/components/OAuthDisclaimer" # 4. Protecting a website route + + @@ -64,4 +67,4 @@ async function doesSessionExist() { - \ No newline at end of file + diff --git a/v2/thirdpartyemailpassword/nextjs/session-verification/in-api.mdx b/v2/thirdpartyemailpassword/nextjs/session-verification/in-api.mdx index e0d57c781..182b4d5d2 100644 --- a/v2/thirdpartyemailpassword/nextjs/session-verification/in-api.mdx +++ b/v2/thirdpartyemailpassword/nextjs/session-verification/in-api.mdx @@ -8,9 +8,13 @@ hide_title: true import AppInfoForm from "/src/components/appInfoForm" +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" + # 5a. Session verification in an API call + + :::note This is applicable for when the frontend calls an API in the `/pages/api` folder. ::: diff --git a/v2/thirdpartyemailpassword/nextjs/session-verification/in-ssr.mdx b/v2/thirdpartyemailpassword/nextjs/session-verification/in-ssr.mdx index fcdfb1c8d..4ed75df27 100644 --- a/v2/thirdpartyemailpassword/nextjs/session-verification/in-ssr.mdx +++ b/v2/thirdpartyemailpassword/nextjs/session-verification/in-ssr.mdx @@ -10,9 +10,12 @@ show_ui_switcher: true import {PreBuiltOrCustomUISwitcher, PreBuiltUIContent, CustomUIContent} from "/src/components/preBuiltOrCustomUISwitcher" import CoreInjector from "/src/components/coreInjector" +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # 5b. Session verification in getServerSideProps + + :::note This is applicable for when verifying a session in `getServerSideProps` or `getInitialProps`. ::: diff --git a/v2/thirdpartyemailpassword/serverless/with-aws-lambda/authorizer.mdx b/v2/thirdpartyemailpassword/serverless/with-aws-lambda/authorizer.mdx index 078cb159b..5f3688425 100644 --- a/v2/thirdpartyemailpassword/serverless/with-aws-lambda/authorizer.mdx +++ b/v2/thirdpartyemailpassword/serverless/with-aws-lambda/authorizer.mdx @@ -10,9 +10,12 @@ hide_title: true import AppInfoForm from "/src/components/appInfoForm" import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs"; import TabItem from '@theme/TabItem'; +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # Using Lambda Authorizers + + You can use a lambda as an Authorizer in API Gateways. This will enable you to use SuperTokens in a lambda to authorize requests to other integrations (e.g., AppSync). An Authorizer pointed to this lambda will add `context.authorizer.principalId` that you can map to a header. For example, you can map this to an "x-user-id" header which will be set to the id of the logged-in user. If there is no valid session for the request, this header won't exist. ## 1) Add configurations and dependencies diff --git a/v2/thirdpartyemailpassword/serverless/with-aws-lambda/jwt-authorizer.mdx b/v2/thirdpartyemailpassword/serverless/with-aws-lambda/jwt-authorizer.mdx index ae937766b..31a0bf9b4 100644 --- a/v2/thirdpartyemailpassword/serverless/with-aws-lambda/jwt-authorizer.mdx +++ b/v2/thirdpartyemailpassword/serverless/with-aws-lambda/jwt-authorizer.mdx @@ -16,7 +16,14 @@ import TabItem from '@theme/TabItem'; # Using JWT Authorizers :::caution + AWS supports JWT authorizers for HTTP APIs and not REST APIs on the API Gateway service. For REST APIs follow the [Lambda authorizer](./authorizer) guide + +This guide will work if you are using **SuperTokens Session Tokens**. + +If you implementing an **OAuth2** setup, through the [**Unified Login**](/docs/unified-login/introduction) or the [**Microservice Authentication**](/docs/microservice_auth/client-credentials) features, you will have to manually set the token audience property. +Please check the referenced pages for more information. + ::: ## 1) Add the `aud` claim in the JWT based on the authorizer configuration diff --git a/v2/thirdpartyemailpassword/serverless/with-aws-lambda/session-verification.mdx b/v2/thirdpartyemailpassword/serverless/with-aws-lambda/session-verification.mdx index e5b2f994a..ae4954e93 100644 --- a/v2/thirdpartyemailpassword/serverless/with-aws-lambda/session-verification.mdx +++ b/v2/thirdpartyemailpassword/serverless/with-aws-lambda/session-verification.mdx @@ -9,9 +9,12 @@ hide_title: true import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs"; import TabItem from '@theme/TabItem'; +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # 3. Session verification / Building your APIs + + When building your own APIs, you may need to verify the session of the user before proceeding further. SuperTokens SDK exposes a `verifySession` function that can be utilized for this. In this guide, we will be creating a `/user` `GET` route that will return the current session information. ## 1) Add `/user` `GET` route in your API Gateway @@ -178,4 +181,4 @@ If each API route has its own lambda function, you can skip using the SuperToken -
    \ No newline at end of file +
    diff --git a/v2/thirdpartyemailpassword/serverless/with-netlify/session-verification.mdx b/v2/thirdpartyemailpassword/serverless/with-netlify/session-verification.mdx index 1fd4b1a1f..b28b7cd62 100644 --- a/v2/thirdpartyemailpassword/serverless/with-netlify/session-verification.mdx +++ b/v2/thirdpartyemailpassword/serverless/with-netlify/session-verification.mdx @@ -7,8 +7,12 @@ hide_title: true +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" + # 4. Session verification / Building your APIs + + For this guide, we will assume that we want an API `/.netlify/functions/user GET` which returns the current session information. ## 1) Create a new file `netlify/functions/user.js` diff --git a/v2/thirdpartyemailpassword/user-roles/protecting-routes.mdx b/v2/thirdpartyemailpassword/user-roles/protecting-routes.mdx index 9d497d1ca..eecb3446e 100644 --- a/v2/thirdpartyemailpassword/user-roles/protecting-routes.mdx +++ b/v2/thirdpartyemailpassword/user-roles/protecting-routes.mdx @@ -19,9 +19,12 @@ import {PreBuiltOrCustomUISwitcher, PreBuiltUIContent, CustomUIContent} from "/s import FrontendPreBuiltUITabs from "/src/components/tabs/FrontendPreBuiltUITabs" import FrontendCustomUITabs from "/src/components/tabs/FrontendCustomUITabs" import FrontendMobileSubTabs from "/src/components/tabs/FrontendMobileSubTabs" +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # Protecting API and frontend routes + + ## Protecting API routes In your API routes you: diff --git a/v2/thirdpartypasswordless/common-customizations/email-verification/about.mdx b/v2/thirdpartypasswordless/common-customizations/email-verification/about.mdx index 66d6ba763..ceb8fd555 100644 --- a/v2/thirdpartypasswordless/common-customizations/email-verification/about.mdx +++ b/v2/thirdpartypasswordless/common-customizations/email-verification/about.mdx @@ -17,6 +17,7 @@ import TabItem from "@theme/TabItem"; import NpmOrScriptTabs from "/src/components/tabs/NpmOrScriptTabs" import AngularUIImplementation from "/src/components/reusableSnippets/angularUIImplementation" import VueUIImplementation from "/src/components/reusableSnippets/vueUIImplementation" +import { OAuthEmailVerificationDisclaimer }from "/src/components/OAuthDisclaimer" # Enable email verification @@ -25,13 +26,7 @@ import VueUIImplementation from "/src/components/reusableSnippets/vueUIImplement Email verification is turned off by default. It is strongly encouraged to enable it to ensure the authenticity of your users. ::: -:::caution - -This guide only applies to scenarios in which you are using **SuperTokens Access Tokens**. - -If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, please check the [separate page](/docs/unified-login/customizations/verify-tokens) that shows you how to verify those types of tokens. - -::: + diff --git a/v2/thirdpartypasswordless/common-customizations/email-verification/protecting-routes.mdx b/v2/thirdpartypasswordless/common-customizations/email-verification/protecting-routes.mdx index b8759e741..6e13b1a87 100644 --- a/v2/thirdpartypasswordless/common-customizations/email-verification/protecting-routes.mdx +++ b/v2/thirdpartypasswordless/common-customizations/email-verification/protecting-routes.mdx @@ -24,11 +24,14 @@ import NpmOrScriptTabs from "/src/components/tabs/NpmOrScriptTabs" import AngularUIImplementation from "/src/components/reusableSnippets/angularUIImplementation" import VueUIImplementation from "/src/components/reusableSnippets/vueUIImplementation" import {Answer} from "/src/components/question" +import { OAuthEmailVerificationDisclaimer }from "/src/components/OAuthDisclaimer" # Protecting backend APIs and website routes ## Protecting backend API routes + + ### Add email verification checks to all API routes If you want to protect all your backend API routes with email verification checks, set the `mode` to `REQUIRED` in the `EmailVerification` config. Routes protected with the `verifySession` middleware will now additionally check for email verification status. diff --git a/v2/thirdpartypasswordless/common-customizations/sessions/protecting-frontend-routes.mdx b/v2/thirdpartypasswordless/common-customizations/sessions/protecting-frontend-routes.mdx index 232bba79f..9e5719247 100644 --- a/v2/thirdpartypasswordless/common-customizations/sessions/protecting-frontend-routes.mdx +++ b/v2/thirdpartypasswordless/common-customizations/sessions/protecting-frontend-routes.mdx @@ -14,9 +14,12 @@ import FrontendPreBuiltUITabs from "/src/components/tabs/FrontendPreBuiltUITabs" import FrontendCustomUITabs from "/src/components/tabs/FrontendCustomUITabs" import NpmOrScriptTabs from "/src/components/tabs/NpmOrScriptTabs" import FrontendMobileSubTabs from "/src/components/tabs/FrontendMobileSubTabs" +import { OAuthFrontendVerificationDisclaimer }from "/src/components/OAuthDisclaimer" # Protecting frontend routes + + diff --git a/v2/thirdpartypasswordless/common-customizations/sessions/session-verification-in-api/get-session.mdx b/v2/thirdpartypasswordless/common-customizations/sessions/session-verification-in-api/get-session.mdx index 94a21fa6d..ce8decce4 100644 --- a/v2/thirdpartypasswordless/common-customizations/sessions/session-verification-in-api/get-session.mdx +++ b/v2/thirdpartypasswordless/common-customizations/sessions/session-verification-in-api/get-session.mdx @@ -13,10 +13,13 @@ import NodeJSFrameworkSubTabs from "/src/components/tabs/NodeJSFrameworkSubTabs" import PythonFrameworkSubTabs from "/src/components/tabs/PythonFrameworkSubTabs"; import PythonSyncAsyncSubTabs from "/src/components/tabs/PythonSyncAsyncSubTabs"; import TabItem from '@theme/TabItem'; +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # Session Verification using `getSession` + + If you want to use a non-middleware form of `verifySession`, you can use the `getSession` function. ## Using `getSession` diff --git a/v2/thirdpartypasswordless/common-customizations/sessions/session-verification-in-api/verify-session.mdx b/v2/thirdpartypasswordless/common-customizations/sessions/session-verification-in-api/verify-session.mdx index 1a9351a51..e7a1df653 100644 --- a/v2/thirdpartypasswordless/common-customizations/sessions/session-verification-in-api/verify-session.mdx +++ b/v2/thirdpartypasswordless/common-customizations/sessions/session-verification-in-api/verify-session.mdx @@ -10,17 +10,12 @@ import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs" import NodeJSFrameworkSubTabs from "/src/components/tabs/NodeJSFrameworkSubTabs"; import PythonFrameworkSubTabs from "/src/components/tabs/PythonFrameworkSubTabs"; import TabItem from '@theme/TabItem'; +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" import GoFrameworkSubTabs from "/src/components/tabs/GoFrameworkSubTabs" ## Verifying a session using the `verifySession` middleware -:::caution - -The `verifySession` middleware can only be used in scenarios that involve **SuperTokens Access Tokens**. - -If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, you will have to [manually](/docs/unified-login/customizations/verify-tokens) validate tokens. - -::: + For your APIs that require a user to be logged in, use the `verifySession` middleware: diff --git a/v2/thirdpartypasswordless/common-customizations/sessions/ssr.mdx b/v2/thirdpartypasswordless/common-customizations/sessions/ssr.mdx index 863e5cb5b..e89210f16 100644 --- a/v2/thirdpartypasswordless/common-customizations/sessions/ssr.mdx +++ b/v2/thirdpartypasswordless/common-customizations/sessions/ssr.mdx @@ -17,9 +17,12 @@ import NodeJSFrameworkSubTabs from "/src/components/tabs/NodeJSFrameworkSubTabs" import PythonFrameworkSubTabs from "/src/components/tabs/PythonFrameworkSubTabs"; import PythonSyncAsyncSubTabs from "/src/components/tabs/PythonSyncAsyncSubTabs"; import TabItem from '@theme/TabItem'; +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # Session verification during server side rendering + + :::important Getting access to the session during server side rendering is only possible using cookie-based sessions. This is the default setting, but you have to keep this in mind if you want to switch to header-based sessions. ::: diff --git a/v2/thirdpartypasswordless/common-customizations/sessions/with-jwt/jwt-verification.mdx b/v2/thirdpartypasswordless/common-customizations/sessions/with-jwt/jwt-verification.mdx index d48165d61..c39494207 100644 --- a/v2/thirdpartypasswordless/common-customizations/sessions/with-jwt/jwt-verification.mdx +++ b/v2/thirdpartypasswordless/common-customizations/sessions/with-jwt/jwt-verification.mdx @@ -15,21 +15,17 @@ import FrontendMobileSubTabs from "/src/components/tabs/FrontendMobileSubTabs" import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs"; import AppInfoForm from "/src/components/appInfoForm"; import TabItem from '@theme/TabItem'; +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # Manually verify the JWT + + There are three steps in doing session verification using JWTs: - Verify the JWT signature and expiry using a JWT verification library - Check for custom claim values for authorization. - Preventing CSRF attacks in case you are using cookies to store the JWT. -:::caution - -This guide only applies to scenarios in which you are using **SuperTokens Access Tokens**. - -If you are implementing [**Unified Login**](/docs/unified-login/introduction) with **OAuth2 Access Tokens**, please check the [separate page](/docs/unified-login/customizations/verify-tokens) that shows you how to verify those types of tokens. - -::: ## Verifying a JWT using a jwt verification library diff --git a/v2/thirdpartypasswordless/common-customizations/sessions/with-jwt/read-jwt.mdx b/v2/thirdpartypasswordless/common-customizations/sessions/with-jwt/read-jwt.mdx index 6406c10f2..22a344607 100644 --- a/v2/thirdpartypasswordless/common-customizations/sessions/with-jwt/read-jwt.mdx +++ b/v2/thirdpartypasswordless/common-customizations/sessions/with-jwt/read-jwt.mdx @@ -20,9 +20,12 @@ import {PreBuiltOrCustomUISwitcher, PreBuiltUIContent, CustomUIContent} from "/s import FrontendPreBuiltUITabs from "/src/components/tabs/FrontendPreBuiltUITabs" import FrontendCustomUITabs from "/src/components/tabs/FrontendCustomUITabs" import FrontendMobileSubTabs from "/src/components/tabs/FrontendMobileSubTabs" +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # Fetching the access token string + + ## On the backend diff --git a/v2/thirdpartypasswordless/graphql-integration/backend-setup.mdx b/v2/thirdpartypasswordless/graphql-integration/backend-setup.mdx index a521f7578..ec91bb6e9 100644 --- a/v2/thirdpartypasswordless/graphql-integration/backend-setup.mdx +++ b/v2/thirdpartypasswordless/graphql-integration/backend-setup.mdx @@ -9,11 +9,14 @@ show_ui_switcher: true import {PreBuiltOrCustomUISwitcher, PreBuiltUIContent, CustomUIContent} from "/src/components/preBuiltOrCustomUISwitcher" +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # Backend Setup ## Complete Quick Setup + + @@ -30,6 +33,7 @@ Follow the [frontend and backend custom UI setup guides](../custom-ui/init/front + diff --git a/v2/thirdpartypasswordless/nestjs/guide.mdx b/v2/thirdpartypasswordless/nestjs/guide.mdx index 3dbe57ea3..33a2a281c 100644 --- a/v2/thirdpartypasswordless/nestjs/guide.mdx +++ b/v2/thirdpartypasswordless/nestjs/guide.mdx @@ -12,6 +12,7 @@ import BackendDeliveryMethod from "../../passwordless/reusableMD/backendDelivery import AppInfoForm from "/src/components/appInfoForm" import CoreInjector from "/src/components/coreInjector" import {Question, Answer} from "/src/components/question" +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # NestJS Integration Guide @@ -432,6 +433,8 @@ bootstrap(); ## Add a session verification guard + + Now that the library is set up, you can add a guard to protect your API. You can scaffold this by running: `nest g guard auth`. In the newly created `auth.guard.ts` file, implement session verification: diff --git a/v2/thirdpartypasswordless/nextjs/app-directory/protecting-route.mdx b/v2/thirdpartypasswordless/nextjs/app-directory/protecting-route.mdx index e636f81f0..311b02a7b 100644 --- a/v2/thirdpartypasswordless/nextjs/app-directory/protecting-route.mdx +++ b/v2/thirdpartypasswordless/nextjs/app-directory/protecting-route.mdx @@ -9,16 +9,21 @@ hide_title: true import {PreBuiltOrCustomUISwitcher, PreBuiltUIContent, CustomUIContent} from "/src/components/preBuiltOrCustomUISwitcher" import CoreInjector from "/src/components/coreInjector" +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # 4. Checking for sessions in frontend routes + + Protecting a website route means that it cannot be accessed unless a user is signed in. If a non signed in user tries to access it, they will be redirected to the login page. + + ## Sessions with Client Components Lets create a client component for the `/` route of our website. diff --git a/v2/thirdpartypasswordless/nextjs/app-directory/session-verification-middleware.mdx b/v2/thirdpartypasswordless/nextjs/app-directory/session-verification-middleware.mdx index a76ddce0d..4e4742164 100644 --- a/v2/thirdpartypasswordless/nextjs/app-directory/session-verification-middleware.mdx +++ b/v2/thirdpartypasswordless/nextjs/app-directory/session-verification-middleware.mdx @@ -7,8 +7,12 @@ hide_title: true +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" + # Using the Next.js middleware + + :::important This method is an alternative method for using sessions in an API. If you are already using [session guards](./session-verification-session-guard.mdx), you can skip this step. ::: diff --git a/v2/thirdpartypasswordless/nextjs/app-directory/session-verification-session-guard.mdx b/v2/thirdpartypasswordless/nextjs/app-directory/session-verification-session-guard.mdx index fb03ca4e0..663193a00 100644 --- a/v2/thirdpartypasswordless/nextjs/app-directory/session-verification-session-guard.mdx +++ b/v2/thirdpartypasswordless/nextjs/app-directory/session-verification-session-guard.mdx @@ -7,8 +7,12 @@ hide_title: true +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" + # Adding a session guard to each API route + + :::note This is applicable for when the frontend calls an API in the `/app/api` folder. ::: diff --git a/v2/thirdpartypasswordless/nextjs/app-directory/setting-up-backend.mdx b/v2/thirdpartypasswordless/nextjs/app-directory/setting-up-backend.mdx index b06c3ac05..ee643af06 100644 --- a/v2/thirdpartypasswordless/nextjs/app-directory/setting-up-backend.mdx +++ b/v2/thirdpartypasswordless/nextjs/app-directory/setting-up-backend.mdx @@ -11,6 +11,7 @@ import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; import AppInfoForm from "/src/components/appInfoForm" + # 3. Adding auth APIs We will add all the backend APIs for auth on `/api/auth`. This can be changed by setting the `apiBasePath` property in the `appInfo` object in the `appInfo.ts` file. For the rest of this page, we will assume you are using `/api/auth`. diff --git a/v2/thirdpartypasswordless/nextjs/protecting-route.mdx b/v2/thirdpartypasswordless/nextjs/protecting-route.mdx index 21505368e..6de7c2164 100644 --- a/v2/thirdpartypasswordless/nextjs/protecting-route.mdx +++ b/v2/thirdpartypasswordless/nextjs/protecting-route.mdx @@ -9,9 +9,12 @@ show_ui_switcher: true import {PreBuiltOrCustomUISwitcher, PreBuiltUIContent, CustomUIContent} from "/src/components/preBuiltOrCustomUISwitcher" +import { OAuthFrontendVerificationDisclaimer }from "/src/components/OAuthDisclaimer" # 4. Protecting a website route + + diff --git a/v2/thirdpartypasswordless/nextjs/session-verification/in-api.mdx b/v2/thirdpartypasswordless/nextjs/session-verification/in-api.mdx index e0d57c781..182b4d5d2 100644 --- a/v2/thirdpartypasswordless/nextjs/session-verification/in-api.mdx +++ b/v2/thirdpartypasswordless/nextjs/session-verification/in-api.mdx @@ -8,9 +8,13 @@ hide_title: true import AppInfoForm from "/src/components/appInfoForm" +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" + # 5a. Session verification in an API call + + :::note This is applicable for when the frontend calls an API in the `/pages/api` folder. ::: diff --git a/v2/thirdpartypasswordless/nextjs/session-verification/in-ssr.mdx b/v2/thirdpartypasswordless/nextjs/session-verification/in-ssr.mdx index fcdfb1c8d..4ed75df27 100644 --- a/v2/thirdpartypasswordless/nextjs/session-verification/in-ssr.mdx +++ b/v2/thirdpartypasswordless/nextjs/session-verification/in-ssr.mdx @@ -10,9 +10,12 @@ show_ui_switcher: true import {PreBuiltOrCustomUISwitcher, PreBuiltUIContent, CustomUIContent} from "/src/components/preBuiltOrCustomUISwitcher" import CoreInjector from "/src/components/coreInjector" +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # 5b. Session verification in getServerSideProps + + :::note This is applicable for when verifying a session in `getServerSideProps` or `getInitialProps`. ::: diff --git a/v2/thirdpartypasswordless/serverless/with-aws-lambda/authorizer.mdx b/v2/thirdpartypasswordless/serverless/with-aws-lambda/authorizer.mdx index 02a71860c..b730b2d4f 100644 --- a/v2/thirdpartypasswordless/serverless/with-aws-lambda/authorizer.mdx +++ b/v2/thirdpartypasswordless/serverless/with-aws-lambda/authorizer.mdx @@ -10,9 +10,12 @@ hide_title: true import AppInfoForm from "/src/components/appInfoForm" import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs"; import TabItem from '@theme/TabItem'; +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # Using Lambda Authorizers + + You can use a lambda as an Authorizer in API Gateways. This will enable you to use SuperTokens in a lambda to authorize requests to other integrations (e.g., AppSync). An Authorizer pointed to this lambda will add `context.authorizer.principalId` that you can map to a header. For example, you can map this to an "x-user-id" header which will be set to the id of the logged-in user. If there is no valid session for the request, this header won't exist. ## 1) Add configurations and dependencies diff --git a/v2/thirdpartypasswordless/serverless/with-aws-lambda/jwt-authorizer.mdx b/v2/thirdpartypasswordless/serverless/with-aws-lambda/jwt-authorizer.mdx index ae937766b..31a0bf9b4 100644 --- a/v2/thirdpartypasswordless/serverless/with-aws-lambda/jwt-authorizer.mdx +++ b/v2/thirdpartypasswordless/serverless/with-aws-lambda/jwt-authorizer.mdx @@ -16,7 +16,14 @@ import TabItem from '@theme/TabItem'; # Using JWT Authorizers :::caution + AWS supports JWT authorizers for HTTP APIs and not REST APIs on the API Gateway service. For REST APIs follow the [Lambda authorizer](./authorizer) guide + +This guide will work if you are using **SuperTokens Session Tokens**. + +If you implementing an **OAuth2** setup, through the [**Unified Login**](/docs/unified-login/introduction) or the [**Microservice Authentication**](/docs/microservice_auth/client-credentials) features, you will have to manually set the token audience property. +Please check the referenced pages for more information. + ::: ## 1) Add the `aud` claim in the JWT based on the authorizer configuration diff --git a/v2/thirdpartypasswordless/serverless/with-aws-lambda/session-verification.mdx b/v2/thirdpartypasswordless/serverless/with-aws-lambda/session-verification.mdx index 02857b5e7..ae4954e93 100644 --- a/v2/thirdpartypasswordless/serverless/with-aws-lambda/session-verification.mdx +++ b/v2/thirdpartypasswordless/serverless/with-aws-lambda/session-verification.mdx @@ -9,9 +9,12 @@ hide_title: true import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs"; import TabItem from '@theme/TabItem'; +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # 3. Session verification / Building your APIs + + When building your own APIs, you may need to verify the session of the user before proceeding further. SuperTokens SDK exposes a `verifySession` function that can be utilized for this. In this guide, we will be creating a `/user` `GET` route that will return the current session information. ## 1) Add `/user` `GET` route in your API Gateway diff --git a/v2/thirdpartypasswordless/serverless/with-netlify/session-verification.mdx b/v2/thirdpartypasswordless/serverless/with-netlify/session-verification.mdx index 1fd4b1a1f..b28b7cd62 100644 --- a/v2/thirdpartypasswordless/serverless/with-netlify/session-verification.mdx +++ b/v2/thirdpartypasswordless/serverless/with-netlify/session-verification.mdx @@ -7,8 +7,12 @@ hide_title: true +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" + # 4. Session verification / Building your APIs + + For this guide, we will assume that we want an API `/.netlify/functions/user GET` which returns the current session information. ## 1) Create a new file `netlify/functions/user.js` diff --git a/v2/thirdpartypasswordless/user-roles/protecting-routes.mdx b/v2/thirdpartypasswordless/user-roles/protecting-routes.mdx index 9d497d1ca..eecb3446e 100644 --- a/v2/thirdpartypasswordless/user-roles/protecting-routes.mdx +++ b/v2/thirdpartypasswordless/user-roles/protecting-routes.mdx @@ -19,9 +19,12 @@ import {PreBuiltOrCustomUISwitcher, PreBuiltUIContent, CustomUIContent} from "/s import FrontendPreBuiltUITabs from "/src/components/tabs/FrontendPreBuiltUITabs" import FrontendCustomUITabs from "/src/components/tabs/FrontendCustomUITabs" import FrontendMobileSubTabs from "/src/components/tabs/FrontendMobileSubTabs" +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # Protecting API and frontend routes + + ## Protecting API routes In your API routes you: diff --git a/v2/userroles/protecting-routes.mdx b/v2/userroles/protecting-routes.mdx index 83374c6ce..eecb3446e 100644 --- a/v2/userroles/protecting-routes.mdx +++ b/v2/userroles/protecting-routes.mdx @@ -19,9 +19,12 @@ import {PreBuiltOrCustomUISwitcher, PreBuiltUIContent, CustomUIContent} from "/s import FrontendPreBuiltUITabs from "/src/components/tabs/FrontendPreBuiltUITabs" import FrontendCustomUITabs from "/src/components/tabs/FrontendCustomUITabs" import FrontendMobileSubTabs from "/src/components/tabs/FrontendMobileSubTabs" +import { OAuthVerifyTokensDisclaimer }from "/src/components/OAuthDisclaimer" # Protecting API and frontend routes + + ## Protecting API routes In your API routes you: @@ -1546,4 +1549,4 @@ Future checkIfUserIsAnAdmin() async { - \ No newline at end of file + From ec6f38d29c48be424bec40f86b222b952bb29bfd Mon Sep 17 00:00:00 2001 From: Bogdan Carpusor Date: Thu, 24 Oct 2024 12:20:56 +0100 Subject: [PATCH 27/33] Fix snippets type checking errors --- v2/attackprotectionsuite/backend-setup.mdx | 6 +- .../custom-response/general-error.mdx | 4 +- .../custom-response/throwing-error.mdx | 2 +- .../handling-signup-success.mdx | 4 +- .../emailpassword-changes.mdx | 8 +- .../ep-migration-without-password-hash.mdx | 12 +-- .../app-directory/setting-up-backend.mdx | 2 +- v2/microservice_auth/client-credentials.mdx | 3 +- .../custom-response/throwing-error.mdx | 2 +- .../app-directory/setting-up-backend.mdx | 2 +- .../custom-response/throwing-error.mdx | 2 +- .../codeTypeChecking/jsEnv/package.json | 6 +- .../custom-response/throwing-error.mdx | 2 +- .../manual-account-linking.mdx | 95 ------------------- .../app-directory/setting-up-backend.mdx | 2 +- .../custom-response/general-error.mdx | 2 +- .../custom-response/throwing-error.mdx | 4 +- .../manual-account-linking.mdx | 95 ------------------- .../handling-signinup-success.mdx | 4 +- .../ep-migration-without-password-hash.mdx | 14 +-- .../app-directory/setting-up-backend.mdx | 2 +- .../custom-response/throwing-error.mdx | 2 +- .../manual-account-linking.mdx | 95 ------------------- .../app-directory/setting-up-backend.mdx | 2 +- v2/unified-login/customizations/custom-ui.mdx | 12 ++- .../customizations/verify-tokens.mdx | 3 +- ...ltiple-frontends-with-a-single-backend.mdx | 40 ++++---- ...tiple-frontends-with-separate-backends.mdx | 8 +- 28 files changed, 76 insertions(+), 359 deletions(-) diff --git a/v2/attackprotectionsuite/backend-setup.mdx b/v2/attackprotectionsuite/backend-setup.mdx index 563016a2a..3b7d039af 100644 --- a/v2/attackprotectionsuite/backend-setup.mdx +++ b/v2/attackprotectionsuite/backend-setup.mdx @@ -504,7 +504,7 @@ SuperTokens.init({ const actionType = 'emailpassword-sign-up'; const ip = getIpFromRequest(input.options.req.original); - let email = input.formFields.filter((f) => f.id === "email")[0].value; + let email = input.formFields.filter((f) => f.id === "email")[0].value as string; const bruteForceConfig = getBruteForceConfig(email, ip, actionType); // we check the anomaly detection service before calling the original implementation of signUp @@ -527,7 +527,7 @@ SuperTokens.init({ const actionType = 'emailpassword-sign-in'; const ip = getIpFromRequest(input.options.req.original); - let email = input.formFields.filter((f) => f.id === "email")[0].value; + let email = input.formFields.filter((f) => f.id === "email")[0].value as string; const bruteForceConfig = getBruteForceConfig(email, ip, actionType); // we check the anomaly detection service before calling the original implementation of signIn @@ -550,7 +550,7 @@ SuperTokens.init({ const actionType = 'send-password-reset-email'; const ip = getIpFromRequest(input.options.req.original); - let email = input.formFields.filter((f) => f.id === "email")[0].value; + let email = input.formFields.filter((f) => f.id === "email")[0].value as string; const bruteForceConfig = getBruteForceConfig(email, ip, actionType); // we check the anomaly detection service before calling the original implementation of generatePasswordResetToken diff --git a/v2/emailpassword/advanced-customizations/apis-override/custom-response/general-error.mdx b/v2/emailpassword/advanced-customizations/apis-override/custom-response/general-error.mdx index 7ed597bd6..78339366e 100644 --- a/v2/emailpassword/advanced-customizations/apis-override/custom-response/general-error.mdx +++ b/v2/emailpassword/advanced-customizations/apis-override/custom-response/general-error.mdx @@ -39,7 +39,7 @@ EmailPassword.init({ return { ...oI, signUpPOST: async function (input) { - let email = input.formFields.find(i => i.id === "email")!.value; + let email = input.formFields.find(i => i.id === "email")!.value as string; if (emailNotAllowed(email)) { // highlight-start @@ -163,4 +163,4 @@ emailpassword.init( ``` - \ No newline at end of file +
    diff --git a/v2/emailpassword/advanced-customizations/apis-override/custom-response/throwing-error.mdx b/v2/emailpassword/advanced-customizations/apis-override/custom-response/throwing-error.mdx index 9b4162b20..22ea595e9 100644 --- a/v2/emailpassword/advanced-customizations/apis-override/custom-response/throwing-error.mdx +++ b/v2/emailpassword/advanced-customizations/apis-override/custom-response/throwing-error.mdx @@ -339,7 +339,7 @@ import { backendConfig } from "@/app/config/backend"; SuperTokens.init(backendConfig()); // in the app/api/auth/[...path]/route.ts file -const handleCall = getAppDirRequestHandler(NextResponse); +const handleCall = getAppDirRequestHandler(); const withCustomErrorHandling = async (request: NextRequest) => { try { diff --git a/v2/emailpassword/common-customizations/handling-signup-success.mdx b/v2/emailpassword/common-customizations/handling-signup-success.mdx index 0fb8b6d35..943f3b429 100644 --- a/v2/emailpassword/common-customizations/handling-signup-success.mdx +++ b/v2/emailpassword/common-customizations/handling-signup-success.mdx @@ -352,7 +352,7 @@ SuperTokens.init({ let name = "" for (let i = 0; i < input.formFields.length; i++) { if (input.formFields[i].id == "name") { - name = input.formFields[i].value + name = input.formFields[i].value as string; } } @@ -507,4 +507,4 @@ For example, when the frontend calls the email password sign up API, the SDK inv Therefore, if you want to associate a role with a user, you would want to do that in the `Functions.SignUp` function since then those roles would get added to the session in the subsequent call to the `Session.createNewSession` function. If instead, you associate a role to the user in the `API.SignUpPOST` (after calling the original implementation), the role will not be automatically added to the session since the `Session.createNewSession` would have already been called before the original implementation returns. -The only time it makes sense to override the API functions is if you want to access an argument that's not available in the recipe function. For example, the custom form fields for email password sign up is an input to the `API.SignUpPOST`, but not to the `Functions.SignUp`, so if you want to access the form fields, you should override the `API.SignUpPOST` as shown above. You can also always add the formFields to the userContext object and read it later in the `Functions.SignUp` override, but then you would lose the typing of the form field array structure (which is not a runtime problem, but just a slightly bad developer experience). \ No newline at end of file +The only time it makes sense to override the API functions is if you want to access an argument that's not available in the recipe function. For example, the custom form fields for email password sign up is an input to the `API.SignUpPOST`, but not to the `Functions.SignUp`, so if you want to access the form fields, you should override the `API.SignUpPOST` as shown above. You can also always add the formFields to the userContext object and read it later in the `Functions.SignUp` override, but then you would lose the typing of the form field array structure (which is not a runtime problem, but just a slightly bad developer experience). diff --git a/v2/emailpassword/common-customizations/username-password/emailpassword-changes.mdx b/v2/emailpassword/common-customizations/username-password/emailpassword-changes.mdx index 5869e796a..5bfb7c27e 100644 --- a/v2/emailpassword/common-customizations/username-password/emailpassword-changes.mdx +++ b/v2/emailpassword/common-customizations/username-password/emailpassword-changes.mdx @@ -425,7 +425,7 @@ SuperTokens.init({ let response = await original.signUpPOST!(input); if (response.status === "OK") { // sign up successful - let actualEmail = input.formFields.find(i => i.id === "actualEmail")!.value; + let actualEmail = input.formFields.find(i => i.id === "actualEmail")!.value as string; if (actualEmail === "") { // User did not provide an email. // This is possible since we set optional: true @@ -951,7 +951,7 @@ SuperTokens.init({ // ...override from previous code snippet... // highlight-start generatePasswordResetTokenPOST: async function (input) { - let emailOrUsername = input.formFields.find(i => i.id === "email")!.value; + let emailOrUsername = input.formFields.find(i => i.id === "email")!.value as string; if (isInputEmail(emailOrUsername)) { let userId = await getUserUsingEmail(emailOrUsername); if (userId !== undefined) { @@ -973,7 +973,7 @@ SuperTokens.init({ } } - let username = input.formFields.find(i => i.id === "email")!.value; + let username = input.formFields.find(i => i.id === "email")!.value as string; let superTokensUsers: supertokensTypes.User[] = await SuperTokens.listUsersByAccountInfo(input.tenantId, { email: username }); @@ -1632,4 +1632,4 @@ When building your custom UI on the frontend, pleas ebe sure to pass the `"actua - \ No newline at end of file + diff --git a/v2/emailpassword/migration/account-creation/ep-migration-without-password-hash.mdx b/v2/emailpassword/migration/account-creation/ep-migration-without-password-hash.mdx index b694af292..95755f437 100644 --- a/v2/emailpassword/migration/account-creation/ep-migration-without-password-hash.mdx +++ b/v2/emailpassword/migration/account-creation/ep-migration-without-password-hash.mdx @@ -50,7 +50,7 @@ EmailPassword.init({ return { ...originalImplementation, signUpPOST: async function (input) { - let email = input.formFields.find((field) => field.id === "email")!.value; + let email = input.formFields.find((field) => field.id === "email")!.value as string; // Check if the user signing in exists in the external provider if (await doesUserExistInExternalProvider(email)) { // Return status "EMAIL_ALREADY_EXISTS_ERROR" since the user already exists in the external provider @@ -217,8 +217,8 @@ EmailPassword.init({ ...originalImplementation, signInPOST: async function (input) { // Check if an email-password user with the input email exists in SuperTokens - let email = input.formFields.find((field) => field.id === "email")!.value; - let password = input.formFields.find((field) => field.id === "password")!.value; + let email = input.formFields.find((field) => field.id === "email")!.value as string; + let password = input.formFields.find((field) => field.id === "password")!.value as string; let supertokensUsersWithSameEmail = await SuperTokens.listUsersByAccountInfo(input.tenantId, { email: email }, undefined, input.userContext); @@ -554,7 +554,7 @@ EmailPassword.init({ // Add overrides from the previous step generatePasswordResetTokenPOST: async (input) => { // Retrieve the email from the input - let email = input.formFields.find(i => i.id === "email")!.value; + let email = input.formFields.find(i => i.id === "email")!.value as string; // check if user exists in SuperTokens let supertokensUsersWithSameEmail = await SuperTokens.listUsersByAccountInfo(input.tenantId, { @@ -1090,8 +1090,8 @@ EmailPassword.init({ ...originalImplementation, signInPOST: async function (input) { // Check if an email-password user with the input email exists in SuperTokens - let email = input.formFields.find((field) => field.id === "email")!.value; - let password = input.formFields.find((field) => field.id === "password")!.value; + let email = input.formFields.find((field) => field.id === "email")!.value as string; + let password = input.formFields.find((field) => field.id === "password")!.value as string; let supertokensUsersWithSameEmail = await SuperTokens.listUsersByAccountInfo(input.tenantId, { email: email }, undefined, input.userContext); diff --git a/v2/emailpassword/nextjs/app-directory/setting-up-backend.mdx b/v2/emailpassword/nextjs/app-directory/setting-up-backend.mdx index ee643af06..c90c6f5e5 100644 --- a/v2/emailpassword/nextjs/app-directory/setting-up-backend.mdx +++ b/v2/emailpassword/nextjs/app-directory/setting-up-backend.mdx @@ -38,7 +38,7 @@ import { ensureSuperTokensInit } from '../../../config/backend'; ensureSuperTokensInit(); -const handleCall = getAppDirRequestHandler(NextResponse); +const handleCall = getAppDirRequestHandler(); export async function GET(request: NextRequest) { const res = await handleCall(request); diff --git a/v2/microservice_auth/client-credentials.mdx b/v2/microservice_auth/client-credentials.mdx index 35cac9702..f57486942 100644 --- a/v2/microservice_auth/client-credentials.mdx +++ b/v2/microservice_auth/client-credentials.mdx @@ -275,7 +275,8 @@ async function validateClientCredentialsToken(jwt: string) { if(payload.stt !== 1) return false; - return payload.scp.includes(requiredScope); + const scopes = payload.scp as string[]; + return scopes.includes(requiredScope); } catch (err) { return false; } diff --git a/v2/passwordless/advanced-customizations/apis-override/custom-response/throwing-error.mdx b/v2/passwordless/advanced-customizations/apis-override/custom-response/throwing-error.mdx index 9b4162b20..22ea595e9 100644 --- a/v2/passwordless/advanced-customizations/apis-override/custom-response/throwing-error.mdx +++ b/v2/passwordless/advanced-customizations/apis-override/custom-response/throwing-error.mdx @@ -339,7 +339,7 @@ import { backendConfig } from "@/app/config/backend"; SuperTokens.init(backendConfig()); // in the app/api/auth/[...path]/route.ts file -const handleCall = getAppDirRequestHandler(NextResponse); +const handleCall = getAppDirRequestHandler(); const withCustomErrorHandling = async (request: NextRequest) => { try { diff --git a/v2/passwordless/nextjs/app-directory/setting-up-backend.mdx b/v2/passwordless/nextjs/app-directory/setting-up-backend.mdx index ee643af06..c90c6f5e5 100644 --- a/v2/passwordless/nextjs/app-directory/setting-up-backend.mdx +++ b/v2/passwordless/nextjs/app-directory/setting-up-backend.mdx @@ -38,7 +38,7 @@ import { ensureSuperTokensInit } from '../../../config/backend'; ensureSuperTokensInit(); -const handleCall = getAppDirRequestHandler(NextResponse); +const handleCall = getAppDirRequestHandler(); export async function GET(request: NextRequest) { const res = await handleCall(request); diff --git a/v2/session/advanced-customizations/apis-override/custom-response/throwing-error.mdx b/v2/session/advanced-customizations/apis-override/custom-response/throwing-error.mdx index 9b4162b20..22ea595e9 100644 --- a/v2/session/advanced-customizations/apis-override/custom-response/throwing-error.mdx +++ b/v2/session/advanced-customizations/apis-override/custom-response/throwing-error.mdx @@ -339,7 +339,7 @@ import { backendConfig } from "@/app/config/backend"; SuperTokens.init(backendConfig()); // in the app/api/auth/[...path]/route.ts file -const handleCall = getAppDirRequestHandler(NextResponse); +const handleCall = getAppDirRequestHandler(); const withCustomErrorHandling = async (request: NextRequest) => { try { diff --git a/v2/src/plugins/codeTypeChecking/jsEnv/package.json b/v2/src/plugins/codeTypeChecking/jsEnv/package.json index 73632e49a..df124d909 100644 --- a/v2/src/plugins/codeTypeChecking/jsEnv/package.json +++ b/v2/src/plugins/codeTypeChecking/jsEnv/package.json @@ -57,12 +57,12 @@ "react-router-dom5": "npm:react-router-dom@^5.3.0", "socket.io": "^4.6.1", "socketio": "^1.0.0", - "supertokens-auth-react": "^0.46.0", + "supertokens-auth-react": "github:supertokens/supertokens-auth-react#0.48", "supertokens-auth-react-script": "github:supertokens/supertokens-auth-react#0.46", - "supertokens-node": "^20.0.0", + "supertokens-node": "github:supertokens/supertokens-node#21.0", "supertokens-node7": "npm:supertokens-node@7.3", "supertokens-react-native": "^5.0.0", - "supertokens-web-js": "^0.13.0", + "supertokens-web-js": "github:supertokens/supertokens-web-js#0.14", "supertokens-web-js-script": "github:supertokens/supertokens-web-js#0.13", "supertokens-website": "^20.0.1", "supertokens-website-script": "github:supertokens/supertokens-website#20.0", diff --git a/v2/thirdparty/advanced-customizations/apis-override/custom-response/throwing-error.mdx b/v2/thirdparty/advanced-customizations/apis-override/custom-response/throwing-error.mdx index 9b4162b20..22ea595e9 100644 --- a/v2/thirdparty/advanced-customizations/apis-override/custom-response/throwing-error.mdx +++ b/v2/thirdparty/advanced-customizations/apis-override/custom-response/throwing-error.mdx @@ -339,7 +339,7 @@ import { backendConfig } from "@/app/config/backend"; SuperTokens.init(backendConfig()); // in the app/api/auth/[...path]/route.ts file -const handleCall = getAppDirRequestHandler(NextResponse); +const handleCall = getAppDirRequestHandler(); const withCustomErrorHandling = async (request: NextRequest) => { try { diff --git a/v2/thirdparty/common-customizations/account-linking/manual-account-linking.mdx b/v2/thirdparty/common-customizations/account-linking/manual-account-linking.mdx index b6cd35534..73139c5d4 100644 --- a/v2/thirdparty/common-customizations/account-linking/manual-account-linking.mdx +++ b/v2/thirdparty/common-customizations/account-linking/manual-account-linking.mdx @@ -176,101 +176,6 @@ Coming Soon
    -### Sing In/Sign Up Callback Linking - -You can also force **SuperTokens** to link accounts by using function or API overridees. -This way, during the `signin` or `signup` flows, the system will try to to link the recipe user to a corresponding one that already exists. - - - - - -You will have to pass the `shouldTryLinkingWithSessionUser` property to either of the callbacks. -Choose between the `signIn`, `signUp`, `signInPOST` and `signUpPOST` functions based on what works best for your use case. - -Check [this page](../../common-customizations/handling-signinup-success) for more information on each function and how to use them. - - - -:::caution - -Keep in mind that you will have to add the override to the `init` call of each of the authentication recipes that you are using. - -The following example shows you only an example usign the `signUpPost` and the `Thirdparty` recipe. - -::: - - -```tsx -import SuperTokens from "supertokens-node"; -import Session from "supertokens-node/recipe/session"; -import ThirdParty from "supertokens-node/recipe/thirdparty"; - - -SuperTokens.init({ - appInfo: { - apiDomain: "...", - appName: "...", - websiteDomain: "..." - }, - supertokens: { - connectionURI: "...", - }, - recipeList: [ - // The override needs to be applied to all the authentication recipes that you are using - ThirdParty.init({ - /* ... */ - override: { - apis: (originalImplementation) => { - return { - ...originalImplementation, - signUpPOST: async function (input) { - // Call the original implementation of signUpPOST with the new property - let response = await originalImplementation.signUpPOST({ - ...input, - shouldTryLinkingWithSessionUser: true - }); - - // Post sign up response, we check if it was successful - if (response.status === "OK") { - // Post sign up logic - } - return response; - } - } - }, - }, - }), - // Choose which type of override you want to use - // and pass it to all the init functions - Session.init({ /* ... */ }) - ] -}); - -``` - - - - - - -:::note -Coming Soon -::: - - - - - -:::note -Coming Soon -::: - - - - - - ## Unlinking accounts diff --git a/v2/thirdparty/nextjs/app-directory/setting-up-backend.mdx b/v2/thirdparty/nextjs/app-directory/setting-up-backend.mdx index ee643af06..c90c6f5e5 100644 --- a/v2/thirdparty/nextjs/app-directory/setting-up-backend.mdx +++ b/v2/thirdparty/nextjs/app-directory/setting-up-backend.mdx @@ -38,7 +38,7 @@ import { ensureSuperTokensInit } from '../../../config/backend'; ensureSuperTokensInit(); -const handleCall = getAppDirRequestHandler(NextResponse); +const handleCall = getAppDirRequestHandler(); export async function GET(request: NextRequest) { const res = await handleCall(request); diff --git a/v2/thirdpartyemailpassword/advanced-customizations/apis-override/custom-response/general-error.mdx b/v2/thirdpartyemailpassword/advanced-customizations/apis-override/custom-response/general-error.mdx index 6233bcf6a..78339366e 100644 --- a/v2/thirdpartyemailpassword/advanced-customizations/apis-override/custom-response/general-error.mdx +++ b/v2/thirdpartyemailpassword/advanced-customizations/apis-override/custom-response/general-error.mdx @@ -39,7 +39,7 @@ EmailPassword.init({ return { ...oI, signUpPOST: async function (input) { - let email = input.formFields.find(i => i.id === "email")!.value; + let email = input.formFields.find(i => i.id === "email")!.value as string; if (emailNotAllowed(email)) { // highlight-start diff --git a/v2/thirdpartyemailpassword/advanced-customizations/apis-override/custom-response/throwing-error.mdx b/v2/thirdpartyemailpassword/advanced-customizations/apis-override/custom-response/throwing-error.mdx index a9f90d9eb..22ea595e9 100644 --- a/v2/thirdpartyemailpassword/advanced-customizations/apis-override/custom-response/throwing-error.mdx +++ b/v2/thirdpartyemailpassword/advanced-customizations/apis-override/custom-response/throwing-error.mdx @@ -339,7 +339,7 @@ import { backendConfig } from "@/app/config/backend"; SuperTokens.init(backendConfig()); // in the app/api/auth/[...path]/route.ts file -const handleCall = getAppDirRequestHandler(NextResponse); +const handleCall = getAppDirRequestHandler(); const withCustomErrorHandling = async (request: NextRequest) => { try { @@ -477,4 +477,4 @@ class ErrorHandlerMiddleware: -
    \ No newline at end of file +
    diff --git a/v2/thirdpartyemailpassword/common-customizations/account-linking/manual-account-linking.mdx b/v2/thirdpartyemailpassword/common-customizations/account-linking/manual-account-linking.mdx index b6cd35534..73139c5d4 100644 --- a/v2/thirdpartyemailpassword/common-customizations/account-linking/manual-account-linking.mdx +++ b/v2/thirdpartyemailpassword/common-customizations/account-linking/manual-account-linking.mdx @@ -176,101 +176,6 @@ Coming Soon
    -### Sing In/Sign Up Callback Linking - -You can also force **SuperTokens** to link accounts by using function or API overridees. -This way, during the `signin` or `signup` flows, the system will try to to link the recipe user to a corresponding one that already exists. - - - - - -You will have to pass the `shouldTryLinkingWithSessionUser` property to either of the callbacks. -Choose between the `signIn`, `signUp`, `signInPOST` and `signUpPOST` functions based on what works best for your use case. - -Check [this page](../../common-customizations/handling-signinup-success) for more information on each function and how to use them. - - - -:::caution - -Keep in mind that you will have to add the override to the `init` call of each of the authentication recipes that you are using. - -The following example shows you only an example usign the `signUpPost` and the `Thirdparty` recipe. - -::: - - -```tsx -import SuperTokens from "supertokens-node"; -import Session from "supertokens-node/recipe/session"; -import ThirdParty from "supertokens-node/recipe/thirdparty"; - - -SuperTokens.init({ - appInfo: { - apiDomain: "...", - appName: "...", - websiteDomain: "..." - }, - supertokens: { - connectionURI: "...", - }, - recipeList: [ - // The override needs to be applied to all the authentication recipes that you are using - ThirdParty.init({ - /* ... */ - override: { - apis: (originalImplementation) => { - return { - ...originalImplementation, - signUpPOST: async function (input) { - // Call the original implementation of signUpPOST with the new property - let response = await originalImplementation.signUpPOST({ - ...input, - shouldTryLinkingWithSessionUser: true - }); - - // Post sign up response, we check if it was successful - if (response.status === "OK") { - // Post sign up logic - } - return response; - } - } - }, - }, - }), - // Choose which type of override you want to use - // and pass it to all the init functions - Session.init({ /* ... */ }) - ] -}); - -``` - - - - - - -:::note -Coming Soon -::: - - - - - -:::note -Coming Soon -::: - - - - - - ## Unlinking accounts diff --git a/v2/thirdpartyemailpassword/common-customizations/handling-signinup-success.mdx b/v2/thirdpartyemailpassword/common-customizations/handling-signinup-success.mdx index ddf3f14f2..de6101cf2 100644 --- a/v2/thirdpartyemailpassword/common-customizations/handling-signinup-success.mdx +++ b/v2/thirdpartyemailpassword/common-customizations/handling-signinup-success.mdx @@ -532,7 +532,7 @@ SuperTokens.init({ let name = "" for (let i = 0; i < input.formFields.length; i++) { if (input.formFields[i].id == "name") { - name = input.formFields[i].value + name = input.formFields[i].value as string; } } @@ -698,4 +698,4 @@ For example, when the frontend calls the email password sign up API, the SDK inv Therefore, if you want to associate a role with a user, you would want to do that in the `Functions.signUp` function since then those roles would get added to the session in the subsequent call to the `Session.createNewSession` function. If instead, you associate a role to the user in the `API.signUpPOST` (after calling the original implementation), the role will not be automatically added to the session since the `Session.createNewSession` would have already been called before the original implementation returns. -The only time it makes sense to override the API functions is if you want to access an argument that's not available in the recipe function. For example, the custom form fields for email password sign up is an input to the `API.signUpPOST`, but not to the `Functions.signUp`, so if you want to access the form fields, you should override the `API.signUpPOST` as shown above. You can also always add the formFields to the userContext object and read it later in the `Functions.signUp` override, but then you would lose the typing of the form field array structure (which is not a runtime problem, but just a slightly bad developer experience). \ No newline at end of file +The only time it makes sense to override the API functions is if you want to access an argument that's not available in the recipe function. For example, the custom form fields for email password sign up is an input to the `API.signUpPOST`, but not to the `Functions.signUp`, so if you want to access the form fields, you should override the `API.signUpPOST` as shown above. You can also always add the formFields to the userContext object and read it later in the `Functions.signUp` override, but then you would lose the typing of the form field array structure (which is not a runtime problem, but just a slightly bad developer experience). diff --git a/v2/thirdpartyemailpassword/migration/account-creation/ep-migration-without-password-hash.mdx b/v2/thirdpartyemailpassword/migration/account-creation/ep-migration-without-password-hash.mdx index 6b5a356dd..059ead3a0 100644 --- a/v2/thirdpartyemailpassword/migration/account-creation/ep-migration-without-password-hash.mdx +++ b/v2/thirdpartyemailpassword/migration/account-creation/ep-migration-without-password-hash.mdx @@ -50,7 +50,7 @@ EmailPassword.init({ return { ...originalImplementation, signUpPOST: async function (input) { - let email = input.formFields.find((field) => field.id === "email")!.value; + let email = input.formFields.find((field) => field.id === "email")!.value as string; // Check if the user signing in exists in the external provider if (await doesUserExistInExternalProvider(email)) { // Return status "EMAIL_ALREADY_EXISTS_ERROR" since the user already exists in the external provider @@ -217,8 +217,8 @@ EmailPassword.init({ ...originalImplementation, signInPOST: async function (input) { // Check if an email-password user with the input email exists in SuperTokens - let email = input.formFields.find((field) => field.id === "email")!.value; - let password = input.formFields.find((field) => field.id === "password")!.value; + let email = input.formFields.find((field) => field.id === "email")!.value as string; + let password = input.formFields.find((field) => field.id === "password")!.value as string; let supertokensUsersWithSameEmail = await SuperTokens.listUsersByAccountInfo(input.tenantId, { email: email }, undefined, input.userContext); @@ -554,7 +554,7 @@ EmailPassword.init({ // Add overrides from the previous step generatePasswordResetTokenPOST: async (input) => { // Retrieve the email from the input - let email = input.formFields.find(i => i.id === "email")!.value; + let email = input.formFields.find(i => i.id === "email")!.value as string; // check if user exists in SuperTokens let supertokensUsersWithSameEmail = await SuperTokens.listUsersByAccountInfo(input.tenantId, { @@ -1090,8 +1090,8 @@ EmailPassword.init({ ...originalImplementation, signInPOST: async function (input) { // Check if an email-password user with the input email exists in SuperTokens - let email = input.formFields.find((field) => field.id === "email")!.value; - let password = input.formFields.find((field) => field.id === "password")!.value; + let email = input.formFields.find((field) => field.id === "email")!.value as string; + let password = input.formFields.find((field) => field.id === "password")!.value as string; let supertokensUsersWithSameEmail = await SuperTokens.listUsersByAccountInfo(input.tenantId, { email: email }, undefined, input.userContext); @@ -1519,4 +1519,4 @@ Your migration period could be decided by either of the following factors: After the migration period ends you have to make the following changes to stop automatic user migration: - Remove all migration related override changes in your backend. - Take the remaining users' emails and call the signup function with a secure randomized password. -- Email users encouraging them to go through the password reset flow. \ No newline at end of file +- Email users encouraging them to go through the password reset flow. diff --git a/v2/thirdpartyemailpassword/nextjs/app-directory/setting-up-backend.mdx b/v2/thirdpartyemailpassword/nextjs/app-directory/setting-up-backend.mdx index ee643af06..c90c6f5e5 100644 --- a/v2/thirdpartyemailpassword/nextjs/app-directory/setting-up-backend.mdx +++ b/v2/thirdpartyemailpassword/nextjs/app-directory/setting-up-backend.mdx @@ -38,7 +38,7 @@ import { ensureSuperTokensInit } from '../../../config/backend'; ensureSuperTokensInit(); -const handleCall = getAppDirRequestHandler(NextResponse); +const handleCall = getAppDirRequestHandler(); export async function GET(request: NextRequest) { const res = await handleCall(request); diff --git a/v2/thirdpartypasswordless/advanced-customizations/apis-override/custom-response/throwing-error.mdx b/v2/thirdpartypasswordless/advanced-customizations/apis-override/custom-response/throwing-error.mdx index 9b4162b20..22ea595e9 100644 --- a/v2/thirdpartypasswordless/advanced-customizations/apis-override/custom-response/throwing-error.mdx +++ b/v2/thirdpartypasswordless/advanced-customizations/apis-override/custom-response/throwing-error.mdx @@ -339,7 +339,7 @@ import { backendConfig } from "@/app/config/backend"; SuperTokens.init(backendConfig()); // in the app/api/auth/[...path]/route.ts file -const handleCall = getAppDirRequestHandler(NextResponse); +const handleCall = getAppDirRequestHandler(); const withCustomErrorHandling = async (request: NextRequest) => { try { diff --git a/v2/thirdpartypasswordless/common-customizations/account-linking/manual-account-linking.mdx b/v2/thirdpartypasswordless/common-customizations/account-linking/manual-account-linking.mdx index b6cd35534..73139c5d4 100644 --- a/v2/thirdpartypasswordless/common-customizations/account-linking/manual-account-linking.mdx +++ b/v2/thirdpartypasswordless/common-customizations/account-linking/manual-account-linking.mdx @@ -176,101 +176,6 @@ Coming Soon -### Sing In/Sign Up Callback Linking - -You can also force **SuperTokens** to link accounts by using function or API overridees. -This way, during the `signin` or `signup` flows, the system will try to to link the recipe user to a corresponding one that already exists. - - - - - -You will have to pass the `shouldTryLinkingWithSessionUser` property to either of the callbacks. -Choose between the `signIn`, `signUp`, `signInPOST` and `signUpPOST` functions based on what works best for your use case. - -Check [this page](../../common-customizations/handling-signinup-success) for more information on each function and how to use them. - - - -:::caution - -Keep in mind that you will have to add the override to the `init` call of each of the authentication recipes that you are using. - -The following example shows you only an example usign the `signUpPost` and the `Thirdparty` recipe. - -::: - - -```tsx -import SuperTokens from "supertokens-node"; -import Session from "supertokens-node/recipe/session"; -import ThirdParty from "supertokens-node/recipe/thirdparty"; - - -SuperTokens.init({ - appInfo: { - apiDomain: "...", - appName: "...", - websiteDomain: "..." - }, - supertokens: { - connectionURI: "...", - }, - recipeList: [ - // The override needs to be applied to all the authentication recipes that you are using - ThirdParty.init({ - /* ... */ - override: { - apis: (originalImplementation) => { - return { - ...originalImplementation, - signUpPOST: async function (input) { - // Call the original implementation of signUpPOST with the new property - let response = await originalImplementation.signUpPOST({ - ...input, - shouldTryLinkingWithSessionUser: true - }); - - // Post sign up response, we check if it was successful - if (response.status === "OK") { - // Post sign up logic - } - return response; - } - } - }, - }, - }), - // Choose which type of override you want to use - // and pass it to all the init functions - Session.init({ /* ... */ }) - ] -}); - -``` - - - - - - -:::note -Coming Soon -::: - - - - - -:::note -Coming Soon -::: - - - - - - ## Unlinking accounts diff --git a/v2/thirdpartypasswordless/nextjs/app-directory/setting-up-backend.mdx b/v2/thirdpartypasswordless/nextjs/app-directory/setting-up-backend.mdx index ee643af06..c90c6f5e5 100644 --- a/v2/thirdpartypasswordless/nextjs/app-directory/setting-up-backend.mdx +++ b/v2/thirdpartypasswordless/nextjs/app-directory/setting-up-backend.mdx @@ -38,7 +38,7 @@ import { ensureSuperTokensInit } from '../../../config/backend'; ensureSuperTokensInit(); -const handleCall = getAppDirRequestHandler(NextResponse); +const handleCall = getAppDirRequestHandler(); export async function GET(request: NextRequest) { const res = await handleCall(request); diff --git a/v2/unified-login/customizations/custom-ui.mdx b/v2/unified-login/customizations/custom-ui.mdx index d02208970..1c67a9654 100644 --- a/v2/unified-login/customizations/custom-ui.mdx +++ b/v2/unified-login/customizations/custom-ui.mdx @@ -111,6 +111,8 @@ OAuth2Provider.init({ } else if (input.type === "logout-confirmation") { return `${websiteDomain}${websiteBasePath}/oauth/logout?logoutChallenge=${input.logoutChallenge}`; } + + return `${websiteDomain}${websiteBasePath}`; }, }), }, @@ -156,7 +158,7 @@ import Session from 'supertokens-web-js/recipe/session'; async function shouldLogin() { const urlParams = new URLSearchParams(window.location.search); - const forceFreshAuth = urlParams.get('forceFreshAuth'); + const forceFreshAuth = urlParams.get('forceFreshAuth') as string; if(forceFreshAuth === "true") return true; return Session.doesSessionExist(); @@ -188,7 +190,7 @@ import OAuth2Provider from "supertokens-web-js/recipe/oauth2provider"; async function getInitialRedirectionURL() { const urlParams = new URLSearchParams(window.location.search); - const loginChallenge = urlParams.get('loginChallenge'); + const loginChallenge = urlParams.get('loginChallenge') as string; const redirectionResponse = await OAuth2Provider.getRedirectURLToContinueOAuthFlow({ loginChallenge }); if (redirectionResponse.status === "OK") { return redirectionResponse.frontendRedirectTo; @@ -235,7 +237,7 @@ import Session from 'supertokens-web-js/recipe/session'; async function refreshToken() { await Session.attemptRefreshingSession(); const urlParams = new URLSearchParams(window.location.search); - const loginChallenge = urlParams.get('loginChallenge'); + const loginChallenge = urlParams.get('loginChallenge') as string; const redirectionResponse = await OAuth2Provider.getRedirectURLToContinueOAuthFlow({ loginChallenge }); if (redirectionResponse.status === "OK") { window.location.href = redirectionResponse.frontendRedirectTo; @@ -279,8 +281,8 @@ async function logout() { if(!confirmation) return; const urlParams = new URLSearchParams(window.location.search); - const logoutChallenge = urlParams.get('logoutChallenge'); - const redirectResponse = await OAuth2Provider.logout({ logoutChallenge }); + const logoutChallenge = urlParams.get('logoutChallenge') as string; + const redirectResponse = await OAuth2Provider.logOut({ logoutChallenge }); window.location.href = redirectResponse.frontendRedirectTo; } ``` diff --git a/v2/unified-login/customizations/verify-tokens.mdx b/v2/unified-login/customizations/verify-tokens.mdx index 3eabc6715..07f196fc5 100644 --- a/v2/unified-login/customizations/verify-tokens.mdx +++ b/v2/unified-login/customizations/verify-tokens.mdx @@ -71,7 +71,8 @@ async function validateToken(jwt: string) { if(payload.stt !== 1) return false; if(payload.client_id !== clientId) return false; - return payload.scp.includes(requiredScope); + const scopes = payload.scp as string[]; + return scopes.includes(requiredScope); } catch (err) { return false; } diff --git a/v2/unified-login/multiple-frontends-with-a-single-backend.mdx b/v2/unified-login/multiple-frontends-with-a-single-backend.mdx index 349dfa9d2..335cc1571 100644 --- a/v2/unified-login/multiple-frontends-with-a-single-backend.mdx +++ b/v2/unified-login/multiple-frontends-with-a-single-backend.mdx @@ -237,13 +237,7 @@ const allowedOrigins = ["^{form_websiteDomain}", "", "'); const userId = tokenPayload.sub; req.userId = userId; - next(); + return next(); } catch (err) { - next(err); + return next(err); } } @@ -511,8 +509,8 @@ You will have to add a new item in the `recipeList` array. ```tsx title="/app/auth/auth.component.ts" - import {init as supertokensUIInit} from "supertokens-auth-react-script"; - import supertokensUIOAuth2Provider from "supertokens-auth-react-script/recipe/oauth2provider"; + import {init as supertokensUIInit} from "supertokens-auth-react"; + import supertokensUIOAuth2Provider from "supertokens-auth-react/recipe/oauth2provider"; import { Component, OnDestroy, AfterViewInit, Renderer2, Inject } from "@angular/core"; import { DOCUMENT } from "@angular/common"; @@ -584,8 +582,8 @@ Update the `AuthView` component so that it also includes the `OAuth2Provider` re You will have to add a new item in the `recipeList` array, inside the `supertokensUIInit` call. ```tsx - import {init as supertokensUIInit} from "supertokens-auth-react-script"; - import supertokensUIOAuth2Provider from "supertokens-auth-react-script/recipe/oauth2provider"; + import {init as supertokensUIInit} from "supertokens-auth-react"; + import supertokensUIOAuth2Provider from "supertokens-auth/recipe/oauth2provider"; ", ""); - } - - let folderName = mdFile.replaceAll("~", "") + codeBlockCountInFile; - await new Promise(async (res, rej) => { - fs.mkdir( - "src/plugins/codeTypeChecking/jsEnv/snippets/" + folderName, - { recursive: true }, - async (err) => { - if (err) { - rej(err); - } else { - res(); - } - }, - ); - }); - } } else if (language === "python") { codeSnippet = `# ${mdFile}\n${codeSnippet}`; let folderName = mdFile.replaceAll("~", "") + codeBlockCountInFile; diff --git a/v2/unified-login/multiple-frontends-with-a-single-backend.mdx b/v2/unified-login/multiple-frontends-with-a-single-backend.mdx index 419624472..11ab566b4 100644 --- a/v2/unified-login/multiple-frontends-with-a-single-backend.mdx +++ b/v2/unified-login/multiple-frontends-with-a-single-backend.mdx @@ -652,7 +652,8 @@ The **Authorization Service Frontend** that you are configuring makes use of two By default, the **SuperTokens** frontend SDK will intercept all the network requests that you send to your Backend API and adjust them, based on the **SuperTokens Session Tokens**. This allows us to perform operations, such as automatic token refreshing or adding authorization headers, without you having to configure anything else. -Given that in the scenario that you are implementing the **OAuth2 Access Tokens** are used for authorization. The automatic request interception will end up causing conflicts. +Given that in the scenario that you are implementing the **OAuth2 Access Tokens** are used for authorization. +The automatic request interception will end up causing conflicts. In order to prevent this you will have to override the `shouldDoInterceptionBasedOnUrl` function in the `Session.init` call. :::caution @@ -677,7 +678,10 @@ Session.init({ shouldDoInterceptionBasedOnUrl: (url, apiDomain, sessionTokenBackendDomain) => { try { let urlObj = new URL(url); - if (!urlObj.pathname.startsWith("^{form_apiBasePath}")) { + // Interception should be done only for routes that need the SuperTokens Session Tokens + const isAuthApiRoute = urlObj.pathname.startsWith("^{form_apiBasePath}"); + const isOAuth2ApiRoute = urlObj.pathname.startsWith("^{form_apiBasePath}/oauth"); + if (!isAuthApiRoute || isOAuth2ApiRoute) { return false; } } catch (ignored) { } From 5aba97bd24b27483ceafde13bd63c51d6526979a Mon Sep 17 00:00:00 2001 From: Bogdan Carpusor Date: Fri, 25 Oct 2024 09:17:52 +0100 Subject: [PATCH 32/33] Add the multi tenancy page --- .../customizations/multi-tenancy.mdx | 22 +++++++++++++++++++ v2/unified-login/sidebars.js | 1 + 2 files changed, 23 insertions(+) create mode 100644 v2/unified-login/customizations/multi-tenancy.mdx diff --git a/v2/unified-login/customizations/multi-tenancy.mdx b/v2/unified-login/customizations/multi-tenancy.mdx new file mode 100644 index 000000000..f4a40354d --- /dev/null +++ b/v2/unified-login/customizations/multi-tenancy.mdx @@ -0,0 +1,22 @@ +--- +title: Multi Tenancy +hide_title: true +--- + +import MFAPaidBanner from '../../community/reusableMD/mfa/MFAPaidBanner.mdx' + + + +# Multi Tenancy + +If you are using a **Multi-Tenant** configuration and you are also implementing your own **custom UI**, you will have to add a tenant discovery process in your authentication flow. +This information is discussed at large in different pages of the documentation. Follow a specific guide, based on the authentication method that you are using, for more information: + +- [Email/Password](/docs/emailpassword/introduction) +- [Passwordless](/docs/passwordless/introduction) +- [Thrid Party](/docs/thirdparty/introduction) + +One thing to point out here, in the context of **OAuth2**, is that you will have to account for **Clients** passing information about which tenant is being used. +This is done through the the authorization URL, in the `tenant_id` query parameter. +The login page must handle the **tenant ID** and ensure it's being passed across different authentication pages through the URL. + diff --git a/v2/unified-login/sidebars.js b/v2/unified-login/sidebars.js index 49adbd117..4e05702c9 100644 --- a/v2/unified-login/sidebars.js +++ b/v2/unified-login/sidebars.js @@ -20,6 +20,7 @@ module.exports = { "customizations/add-custom-claims-in-tokens", "customizations/verify-tokens", "customizations/custom-ui", + "customizations/multi-tenancy", ], }, ], From 349af24b6d1d691d8474bd82941ff213854879ae Mon Sep 17 00:00:00 2001 From: Bogdan Carpusor Date: Fri, 25 Oct 2024 11:57:37 +0100 Subject: [PATCH 33/33] Fix the rest of the code type checking --- v2/attackprotectionsuite/backend-setup.mdx | 2 +- v2/community/reusableMD/oauth-paid-banner.mdx | 9 +++ v2/microservice_auth/client-credentials.mdx | 4 +- .../codeTypeChecking/jsEnv/package.json | 2 +- v2/static/img/guides/oauth-logo-orange.svg | 61 +++++++++++++++++++ v2/static/img/guides/oauth-logo.svg | 61 +++++++++++++++++++ .../add-custom-claims-in-tokens.mdx | 4 +- v2/unified-login/customizations/custom-ui.mdx | 4 +- .../customizations/multi-tenancy.mdx | 4 +- .../customizations/verify-tokens.mdx | 6 +- .../customizations/working-with-scopes.mdx | 4 +- v2/unified-login/introduction.mdx | 6 +- ...ltiple-frontends-with-a-single-backend.mdx | 10 +-- ...tiple-frontends-with-separate-backends.mdx | 8 +-- v2/unified-login/reuse-website-login.mdx | 4 +- 15 files changed, 160 insertions(+), 29 deletions(-) create mode 100644 v2/community/reusableMD/oauth-paid-banner.mdx create mode 100644 v2/static/img/guides/oauth-logo-orange.svg create mode 100644 v2/static/img/guides/oauth-logo.svg diff --git a/v2/attackprotectionsuite/backend-setup.mdx b/v2/attackprotectionsuite/backend-setup.mdx index 6374c2644..9dcd94fbb 100644 --- a/v2/attackprotectionsuite/backend-setup.mdx +++ b/v2/attackprotectionsuite/backend-setup.mdx @@ -564,7 +564,7 @@ SuperTokens.init({ return originalImplementation.generatePasswordResetTokenPOST!(input); }, passwordResetPOST: async function (input) { - let password = input.formFields.filter((f) => f.id === "password")[0].value; + let password = input.formFields.filter((f) => f.id === "password")[0].value as string; let securityCheckResponse = await handleSecurityChecks({ password }); if (securityCheckResponse !== undefined) { return securityCheckResponse; diff --git a/v2/community/reusableMD/oauth-paid-banner.mdx b/v2/community/reusableMD/oauth-paid-banner.mdx new file mode 100644 index 000000000..b60cdffa1 --- /dev/null +++ b/v2/community/reusableMD/oauth-paid-banner.mdx @@ -0,0 +1,9 @@ +import CustomAdmonition from "/src/components/customAdmonition" + + + +This is a paid feature. + +You can click on the **Enable Paid Features** button on [our dashboard](https://supertokens.com/dashboard-saas), and follow the steps from there on. Once enabled, this feature is free on the provided development environment. + + diff --git a/v2/microservice_auth/client-credentials.mdx b/v2/microservice_auth/client-credentials.mdx index 02e03db55..3f403b0f3 100644 --- a/v2/microservice_auth/client-credentials.mdx +++ b/v2/microservice_auth/client-credentials.mdx @@ -9,9 +9,9 @@ import OAuthBackendTabs from "/src/components/tabs/OAuthBackendTabs" import CoreInjector from "/src/components/coreInjector" import AppInfoForm from "/src/components/appInfoForm" import TabItem from '@theme/TabItem'; -import MFAPaidBanner from '../community/reusableMD/mfa/MFAPaidBanner.mdx' +import OAuthPaidBanner from '../community/reusableMD/oauth-paid-banner.mdx' - + # Client Credentials Authentication diff --git a/v2/src/plugins/codeTypeChecking/jsEnv/package.json b/v2/src/plugins/codeTypeChecking/jsEnv/package.json index 8fc5b3dd5..65a40e418 100644 --- a/v2/src/plugins/codeTypeChecking/jsEnv/package.json +++ b/v2/src/plugins/codeTypeChecking/jsEnv/package.json @@ -58,7 +58,7 @@ "socket.io": "^4.6.1", "socketio": "^1.0.0", "supertokens-auth-react": "github:supertokens/supertokens-auth-react#0.48", - "supertokens-auth-react-script": "github:supertokens/supertokens-auth-react#0.46", + "supertokens-auth-react-script": "github:supertokens/supertokens-auth-react#0.48", "supertokens-node": "github:supertokens/supertokens-node#feat/add_clientId_secret_and_refreshTokenRotation_settings", "supertokens-node7": "npm:supertokens-node@7.3", "supertokens-react-native": "^5.0.0", diff --git a/v2/static/img/guides/oauth-logo-orange.svg b/v2/static/img/guides/oauth-logo-orange.svg new file mode 100644 index 000000000..ed65036b0 --- /dev/null +++ b/v2/static/img/guides/oauth-logo-orange.svg @@ -0,0 +1,61 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/v2/static/img/guides/oauth-logo.svg b/v2/static/img/guides/oauth-logo.svg new file mode 100644 index 000000000..00d25690e --- /dev/null +++ b/v2/static/img/guides/oauth-logo.svg @@ -0,0 +1,61 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/v2/unified-login/customizations/add-custom-claims-in-tokens.mdx b/v2/unified-login/customizations/add-custom-claims-in-tokens.mdx index 5d64fc6ec..7c63782cd 100644 --- a/v2/unified-login/customizations/add-custom-claims-in-tokens.mdx +++ b/v2/unified-login/customizations/add-custom-claims-in-tokens.mdx @@ -5,9 +5,9 @@ hide_title: true import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs" import TabItem from '@theme/TabItem'; -import MFAPaidBanner from '../../community/reusableMD/mfa/MFAPaidBanner.mdx' +import OAuthPaidBanner from '../../community/reusableMD/oauth-paid-banner.mdx' - + # Add custom claims in the tokens diff --git a/v2/unified-login/customizations/custom-ui.mdx b/v2/unified-login/customizations/custom-ui.mdx index ae7e3e869..088a5e052 100644 --- a/v2/unified-login/customizations/custom-ui.mdx +++ b/v2/unified-login/customizations/custom-ui.mdx @@ -8,9 +8,9 @@ import FrontendCustomUITabs from "/src/components/tabs/FrontendCustomUITabs" import CoreInjector from "/src/components/coreInjector" import AppInfoForm from "/src/components/appInfoForm" import TabItem from '@theme/TabItem'; -import MFAPaidBanner from '../../community/reusableMD/mfa/MFAPaidBanner.mdx' +import OAuthPaidBanner from '../../community/reusableMD/oauth-paid-banner.mdx' - + # Implement a Custom UI diff --git a/v2/unified-login/customizations/multi-tenancy.mdx b/v2/unified-login/customizations/multi-tenancy.mdx index f4a40354d..625a6fa0f 100644 --- a/v2/unified-login/customizations/multi-tenancy.mdx +++ b/v2/unified-login/customizations/multi-tenancy.mdx @@ -3,9 +3,9 @@ title: Multi Tenancy hide_title: true --- -import MFAPaidBanner from '../../community/reusableMD/mfa/MFAPaidBanner.mdx' +import OAuthPaidBanner from '../../community/reusableMD/oauth-paid-banner.mdx' - + # Multi Tenancy diff --git a/v2/unified-login/customizations/verify-tokens.mdx b/v2/unified-login/customizations/verify-tokens.mdx index b3e90a60e..8ee1f38c0 100644 --- a/v2/unified-login/customizations/verify-tokens.mdx +++ b/v2/unified-login/customizations/verify-tokens.mdx @@ -7,9 +7,9 @@ import OAuthBackendTabs from "/src/components/tabs/OAuthBackendTabs" import CoreInjector from "/src/components/coreInjector" import AppInfoForm from "/src/components/appInfoForm" import TabItem from '@theme/TabItem'; -import MFAPaidBanner from '../../community/reusableMD/mfa/MFAPaidBanner.mdx' +import OAuthPaidBanner from '../../community/reusableMD/oauth-paid-banner.mdx' - + # Verify Tokens @@ -405,7 +405,7 @@ curl -X POST \ If you are using a **NodeJS** backend you can directly call the SDK. ```tsx -import OAuth2Provider from "supertokens-auth-react/recipe/oauth2provider"; +import OAuth2Provider from "supertokens-node/recipe/oauth2provider"; async function validateToken(token: string) { const { status } = await OAuth2Provider.validateOAuth2AccessToken( diff --git a/v2/unified-login/customizations/working-with-scopes.mdx b/v2/unified-login/customizations/working-with-scopes.mdx index f80710ddd..aa2d4d9f7 100644 --- a/v2/unified-login/customizations/working-with-scopes.mdx +++ b/v2/unified-login/customizations/working-with-scopes.mdx @@ -5,9 +5,9 @@ hide_title: true import BackendSDKTabs from "/src/components/tabs/BackendSDKTabs" import TabItem from '@theme/TabItem'; -import MFAPaidBanner from '../../community/reusableMD/mfa/MFAPaidBanner.mdx' +import OAuthPaidBanner from '../../community/reusableMD/oauth-paid-banner.mdx' - + # Working with Scopes diff --git a/v2/unified-login/introduction.mdx b/v2/unified-login/introduction.mdx index 2934cf7bd..ca93c12a1 100644 --- a/v2/unified-login/introduction.mdx +++ b/v2/unified-login/introduction.mdx @@ -3,10 +3,10 @@ title: Introduction hide_title: true --- -import MFAPaidBanner from '../community/reusableMD/mfa/MFAPaidBanner.mdx' +import OAuthPaidBanner from '../community/reusableMD/oauth-paid-banner.mdx' - + # Unified Login @@ -29,7 +29,7 @@ For these specific instances we expose recipes that allow you to complete your s :::caution There are a few limitations with the **OAuth2** recipes: - It is only available for the **SuperTokens Managed Service**. This feature is not included in the **Self-Hosted** version. -- Only the `supertokens-node` backend SDK supports it as of yet. So if you are using our `golang` or `python` SDK, you will have to wait, or else you could switch to using our `node` **SDK**. +- Only the `supertokens-node` backend SDK supports it as of yet. So if you are using our `golang` or `python` SDK, you will have to wait for the next releases or configure a separate NodeJS **Authorization Service**. - We do not support magic link based login. However, you can switch to `email`/`SMS` **OTP** instead. This method offers the same level of security. - *Step Up Authentication* is not available out of the box. You will have to use customizations in order to support the flow. diff --git a/v2/unified-login/multiple-frontends-with-a-single-backend.mdx b/v2/unified-login/multiple-frontends-with-a-single-backend.mdx index 11ab566b4..1ad0698bd 100644 --- a/v2/unified-login/multiple-frontends-with-a-single-backend.mdx +++ b/v2/unified-login/multiple-frontends-with-a-single-backend.mdx @@ -16,9 +16,9 @@ import OAuthBackendTabs from "/src/components/tabs/OAuthBackendTabs" import CoreInjector from "/src/components/coreInjector" import AppInfoForm from "/src/components/appInfoForm" import TabItem from '@theme/TabItem'; -import MFAPaidBanner from '../community/reusableMD/mfa/MFAPaidBanner.mdx' +import OAuthPaidBanner from '../community/reusableMD/oauth-paid-banner.mdx' - + # Multiple Frontend Domains with a Common Backend @@ -446,7 +446,7 @@ import { import SuperTokens, { SuperTokensWrapper } from "supertokens-auth-react"; import { getSuperTokensRoutesForReactRouterDom } from "supertokens-auth-react/ui"; -import OAuth2ProviderPreBuiltUI from "supertokens-auth-react/recipe/oauth2provider/prebuiltui"; +import { OAuth2ProviderPreBuiltUI } from "supertokens-auth-react/recipe/oauth2provider/prebuiltui"; import * as reactRouterDom from "react-router-dom"; class App extends React.Component { @@ -473,7 +473,7 @@ class App extends React.Component { ```tsx import React from 'react'; -import OAuth2ProviderPreBuiltUI from "supertokens-auth-react/recipe/oauth2provider/prebuiltui"; +import { OAuth2ProviderPreBuiltUI } from "supertokens-auth-react/recipe/oauth2provider/prebuiltui"; import SuperTokens, { SuperTokensWrapper } from "supertokens-auth-react"; import { canHandleRoute, getRoutingComponent } from "supertokens-auth-react/ui"; @@ -586,7 +586,7 @@ You will have to add a new item in the `recipeList` array, inside the `supertoke ```tsx import {init as supertokensUIInit} from "supertokens-auth-react"; - import supertokensUIOAuth2Provider from "supertokens-auth/recipe/oauth2provider"; + import supertokensUIOAuth2Provider from "supertokens-auth-react/recipe/oauth2provider";
  • &m<21MR)^M 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 z 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 B;spQz diff --git a/v2/static/img/oauth/reuse-web-ui-for-mobile.png b/v2/static/img/oauth/reuse-web-ui-for-mobile.png new file mode 100644 index 0000000000000000000000000000000000000000..5a98fc2c3730258df694ec924c2fa3a032c7a4ec GIT binary patch literal 260913 zcmV(zK<2-RP)(zI00a8?Nkl0Fq;I5% zrwXX3gs4OXwCMwZK&wiHB%nSJN2n5nhN{ryfuxO{OVcF29(#}e*P3&T@f(*p_xgY5 z3xulkod37inrqH+zs%cSo8S1d4+tHFpZ<<3W_nmyKlrJOK&3z%hUTLkLY7&tSM&%i z_f-<$&(9~^B0v#G>JYECN77|J=0NN5kIaWEDrpGY$U`Qs(*6STOfBz<;g&F?XfL54 z3giYPsj8*V0I2W=znAc~a2w=jwZfgBp~s482_G(?M>KS0q2CpZhJ{tRD5__{Q!8IS z#B$g+gRJlteIkqb5gnkaXY(lPr7zh31beyd(_SR?O6J_&i6&kjg8V!Iyjk$yyiN~fUQ z1K(XRuRlS15+XyMB;*xsClyX|q9g;E^np06{swep8x@K$SlQyp587KCCtxfP>q0or zF#DVc?lhidjmg3;8d;no$o5y-$NT+}atQR(tO zJN5B%0@=_Xw1i-TgXQNCL(zANzs+DIMkG~D)$8bXt9~mk@>3lF$mKpAd_4M>XxPDHPXj6NegYBAt8lHp8VLH>4Jg`B`?Vgj>FWp z7|T z%PMTZA>)*wJ{s{u3a*EPkZk#S_m?GuKAg+7mWzCF#W$W?wy=uqWZC{PT`xv?+XH8v z7^o0OGcdJ*w8l)K$I-xyh-}P2h}H%&v2z?i!lP~^3!|wxI3-KYJL7%EdQ4=j_$Awr zz{1@iio)0tMICHa;wVx3p7NP-*vC^81{{rSGr89I_>koir6+2eJl(CX6h&^gt{VyA z-|5H6ugif(*W*@U}x6 zS?4juApt{9oNP1=HG$_e3yOIV$BAxLi3l#Lj0v_-^v`FN2WlDaGN9Lq@($phlFVPH zZ=XCS_}t05qvM&S3BF;Gi8Ar)d$hw5g4ia(0O`TfKoAD%1(#8tV66CVD({VDL zxO>zw=vfc)6|ZrSr2B@}Z19f^0%_?SCbsE%f=7!6YigZHS8ToRN?90LifXREG~uZJ z{kZM|MLhy~%to%x$yD3EP;n%TajwJN?9BNJS-hXr(X)gEUdS)N&kc?MpVZ|#isaeq+FHucr zzdHb^LNR;9!9#$CM-f(`2f%jM>mukD1J(uqXQDEYD}!!GW;3%1#$dI^$ z;;ZOQ;-1f#y7)n<55#Ygbz;M6sFw*N$7Ci6`E<}Vh#xlWc&k8NNu6(DGuzE09NbB7 z50marf2g{SUzMqjHPl#46wTOREq(1CC1-a6a-r&BJW8u(sotK_W?-%Pb{`3;c~Q)h45^%RfYq7fnjh zz(E1dv-_9p*k&w>z&%}A3`t(n$dss_DD(!7H!qCbGAeiaqW*1hGmumpz%9izw(iAN znQ`SwVkUA1W*w6Yf*aflZ~W1Qc5U9QXi!zF)-jbcT?TD>x_IRPrE_@*2 zL_A8q-FR9ZNA=EVGiD}CU4!6upJ=F{ZU2$l#y>x3cZ zX(YqvQRmrp)Gk)?=#m#D7W1`D_$*$iJm61@r%iSLInRDbzrO7m$`V}(fm&Icy~o*KlO1J=R;#UQ#2Ll zjg4<4$7DgtW;DhSg~TS42TkZe+7l1Pq&3zF%)Jd9zFVnzgVYwB5XWORytHo-&zl78 zDgPa0-T8brCNY3h*li9b(21C~8jwSg7 z&FNG>7Rq@h^GMye=jroa><4M0=y(BOb8GR1Y7v(yPMl&>rn-ndS_OJi>?l5-pBesX zCl)UnIbk0H|CdT_=`4Mn#tWZ3OfL~4-@7D_^Af!pT6oPIX`815&6P~?_ z+XN|%Jmtxe;ZmC&D6qMfz%{ld%w)nfD3Q|21(oOdBuRLx`H_%thlc^5XswZl zn&L?Py4N+GcRGAgbIEY=m}uJoaiPL5@bebQb2xY&Lh?h35vuD?n*ven1SRqOJGX{D z`Q$CYR99tnjV`#(b}h8rm8k9ljl~=Js(iwi-E2{UIA$PpI{f=38e@6I+cQd3Ir8N@ zFDR#xxVh|xbcalE-BZ&2v*_yTgV~7P2R)|b74(fec9bm)lx}$H_rXfk)aEWiYl%n6 zZp^egeg{M>osDUscFCQk?VIsbRI6+RHA3y`sa|I=(gc9IBO0@vjW%wTq+{3kKI2UG zl@NQxJf`ri7xffP!#UWSlPsxswULN2eZM`}u-Boz=I@l@&Yu%Dsgdsc^G;i&W5yE8 z({&-Z`>x>1fAi5so{nJtFY|k!kvL055G4AtHfbdwQ09@c%E_Nm%UiK+axg}(LY=Xi ztUcxeC*Dp9N%tL0YFXq+pf$>3T8ZQW)C4rfyaEPk(e}~=*)~tAP#ZXSPYd!JGAZSt z0HarZ?63dyn zEzq+rcnqy1!`-#Op9L)e(EWZ}#-J;A`OB?s0UdKgqpoC(=P{5F^)@-FpU=7Rx0Pi^ zj&febUUP$D-f%GBPIuWKvA&}MgSoCWX^@K+C>spD?u!mNA>P~G0;Wob6CeO+Bm?as zL+v7%>vTiJV>(6FZ9`qO$Ol%Ok%T1Vt1U_L7;%lR6m>FYl%aUPrP?$cU|n)HMPu4B zo1+L7SF`}PLP60M6TPAvrR})xf-rn}i=`1&#<@f!wciO8k`Qr7P^>(_fDU(K^xwE6 zA&DfpY)7)IPkfIRY(9lHatBA9N>ssl%@piHlP^vGX8Y7)`iq+F*N z^x(J0abA6NUxo-N@Tl=cF$7+NyAIee`W#bkf}uqgNDB#E(3t7n32bu8Jigq612s}` z=Ob&#qvCdJ4wE??WK;EDqyQ&qy3(EnjUl`6E2uZHQ;o#{F1rOfl7DF;Q#qb0jd*W$ zNxxx74*iD64+P@&bAs?U9Jo}UlR8Oo=eZEczQ!L!l6dAGW3ZnFLeAb!i+>sYMN7bO0tYE& zxEqtFW5VX-lqmZ;|%(oTFOVa)IVZ8a4Mz5v{Db2c0MLeenc2+?nkz z97ejZLK9(1sWO`2XR^Qbl6p3|E?WV?~Zx|z2v=a&gk82}cR8=P66h`So9M~0GVjvFu9I>EzAOwqdjAi$ z1#$gO()Y>sUC~APGSxT^pgIG!-OLjRH;A(KIvZ)OGp^V>y+|nocu6IbZt_uEmKpLe z!n+1f5GW%8dzrcn$Hp38u{VQD@`u$p1ZX9qGS2T#*Wh^gf{C_x1_Em01T{{)GRjBD zo?95?s#TH6OkNk=JAbgg7;gmH@rBbHFQqtjbCQ-w#oyvgww%qJF!DxyUF zUe_;P)*jms5c>Jx7?Tt?F4VyXRhpQMT2WbtgmB ztT?;qAT6&x*(YW#ljQc2K-^tqezup+1yQn`t#})8a z>~SSwYB+ijK$=Hri=lL&G)Dr>xEK+UG&C$`CBaIQF`yWHD3J6qW1uaE>V!(hHRhom zi^PD78h@rfmX_GIY5!76XIA<8S4e4PML}CHUp_CjtTmWk93t&y1jKC&mZpp3hh_C) zjhYvvoAZb}Zzt>LfN(P$RWWQiT>`eO6GAcot zh}ywLLfO~M;1mY4NU%_W)(3@gLKDP6D$Yp9Al>s@opV zGEmd{z&7#o5%u9={v#(Z*gSTVwfF;Eyr<2*b%B-g&Y;?U;)&|`hf~u6r(t#uy6o1P z;t@jd4TLn2W}gkD^3IAtmzL1U`Ctl@gNOM{z%Cov6`dy2)HeB%y|RMcb#?L)%zW;i z*m2r>L>OXWV7MU#<4>^1Au~aRQ}s4V@JzG@7-7N&{Ujmq{+!@QvJnb{ z@y7)h$;KD>iQx#TfMukW#FY(7dM-J!3A`{WFvHZQSx$%sP^Vj5j@~SDe*=F|X)*+x zEY(FmPkxh3B=lSLRWeXc!KQ_pMVImWYWEp4?jkkxP((7mC&mVoQhPx<%mSLMg1Xl0 z?i361k#$zir{(PCcjE;)E&x0A1^yXrD@wo!4fzl1@-4=kOeU|p<71SeA20L6;Y%tP z6EyvlfCX$z={368ItVz9>y7<{+Kg>0so^!o^R9hYk9MGulS?Q_S8Op(p z1E$A)11Ak$Y1)tLxN;NEn=dg^h46(<;)vtE#jFSBW2dwj|NnYH*OY8g}2!)?EW_~uwT%YKw>eKM$Mf$MHiRMd0UhgeDMN~eIvb#xI?{n z$&$9%$oqqipcD2z9)*`g03-G_0?=Xj+3t|X1_GK_W1FmIdBg_RFZo2Se1D|ASZS@IOfQ&vJ4ar{ zl0?j7o5*cfs?A5h6YQ?KT0?LDD^jomeJZr$hFqa=04c3EZN>5&b9jz;pIfrLvV8N& zD@xDxT47;cLmbrLS>-iJ9r=x4`+kX$agk!UBXhP(Tl7n2I5N_=my%MxYvnr1+L*(ICN{6X34xURY91#Ni4 z2cTP64~?#evnxALI*{mt85(bgsk3-WZ3SwsgvTA6D%36S!I(YLd-V$Evs|b}_o$eP z1rk#N&<;%6=o^@-u}c!@R@`wk#NzQMG_^r2=q0Q0Y|Q>_#XR0J`S(tfn(%9!TOuEsKL6*^;=8eL%DY;$6qoXLoIQ zG-h-#+oBFG%g06zN4f1()qg!TI-9sMo(ja%bQapNwK5ay+Z$W%_LY zl9e#FpifGDz5P>iI@rkzV?OI`B7={t0PUvch(g0RdFq*Ar zJf;=zfwuT!3043KpNbT$w@piNqL$!S2om*op;&I=c<=j0@V!`~GLYNaCB_;_`YNK; zSQw2*{BpOkINSMTl_xLff(=zyb^T1OpTulNDUu*Gw&A4>0PAk6*oxK5;FK?RULs4K zEl@8iUa&MW$oal&mnUadctJQnprMoZs@+2)Z*bbUgvfZ+9hDHURkqB+qdX3Uv<&P3rKn|_G zj$I(ugu#&PA@CE;Rd~siSGpUyXWKunZ>irSy`%G&XH*L}kcO;zkxjIj(DtlDXZX_L zUzKdVaKCvpo^zG>l|YawkO`6sTl*`r@%F=4R>=K^GB!A%q=Ly;_0Ptg)DVtbBhgEN71cRjM z8*!0G%AjSX2833xn?a@ls>Gq_jWtPPV+!j(y6d2{3+}jpadmTLg^wY|>Q?ky&z`O5 z=QEEP-Dn%mOn#Gcg^DurN$vS2LG(o=ZKa$<)7a_KoFQn)6Vx@wMxB!^@*UUs=M;53 z#!TQ8#iNMvEp7@U+R{D8oK|7kq2ic^f!q39Z5*kD30g!5L=xhL!W7=VtURL*;({yz zm8!yeXqFR>pbMrF`h>t78vp6y_4*|t33;N8dK7)R)M(L<7j@5lrq9Xclzq+WwF=y; z?8ssK?r>csE%?DB!Cn>krhi!cq|^>=EXVCtLU}9n=rg5b6&Gd0#|qY_p#EJiOs^I| zeOLd?L~?Lz3)t0LBh8Xg=mW}WCTRyV;gVtx&LNqFfCr!xmpS-i81R9OczP zeIlw52hlFQ`Uz|Lv1;WFUtDoq-E>k$0uu|zJs0%*w@Wk709F2&9aGY++P46#ZXqx0 zNc2Y7?9pFN;5^#VE(RW`s4X0g6{i+kEZrrh%$XZh*UaNp`m^Tv>4N$_HEH9otD#XM z1#2QMqd;2tM=~mgFSvuvt2NZ<)KCe^^Vkp}gaMF1S5CUXm`zAemA^?q0!n{kG0N*S zMR=a3WVnOSyjzMg5csEl=LK|SwxBjry`ub_5$v#?@g^`m{1fw>$D;ZL3H4*N_ws4F z2U|)0X#P)B%m)iDs=mxh*y?Xh%yC0!=l#V*}&ia@SGev9^;#U)^8 z9I9JZ7%IU1Q;>`5!}^RHQD?j0Mb1N5lHnsy)YubM7)yp_VavRLE3tdPpYUc_8r!d$ zm;}3-o^bA@B?jy|UaSkRDg~ZjfO7%vfEpj#K@8k0Xx z)G&CB#3S%sEJ~Owcg`2A?4CG1AR|fLz16{kY=~u`jZ_$_Wq77*W|xpQN^Q;VVrkN! zLE<)gbe{=Q2sC*$He&SJv|8Rp&y-L#$;P8Bv{?aL%bPbncy*uE*cs7<@?4$uMJ~ZE z=DG^f4~Tk5b6BR#z!k_mwq+3gO79<89BrQO55+|wywV*oI%wq$X6Ngi8Qi89iP*x& zm^4Vy0S*YVyJMniy-*tzOZBT(UtJjD!6zce-7)_}z?e}z?shuqO7LS7#J;`v%i8el zm2Jr6s}=!$wcZ*@x7fL|p_x@r`tK8->-*I2DOVs`X#>1Iz@`PRg(Rh1w0<*m6Txau z!-|8BViQJF(OklL+HqS-+AN!s!K!UwyWQtOblVzAxs z0{CP{1oh7uz~_GbLwZ0X?dA5%T%OD8s$_NLXFD_7Wx$t3-;0+@QJkc$`s^zC5i-4f zo<-zS6LAFvznse@-YI7NBDNM~y-a@2heFF)3(!P4F{b98P~-XcY*sp9JC75vCl3H^ z@G2n`5_ZP@$bSomO{XG>&J()&W$BViUU7^qpI77|=4&No{3IM))yJV!9vp?EqGe`G z$*5<2viDe?8$wjRH3+rk1tZfg=5O(li|6di*dre2%AXyr5mz&CA@+&F2`e8Xiu^?D z)Mw9;|GupBQe?K>)u1u}=mxQf(*&!HcY~n^gPI&40%)p(l)zFzStSq`*fw&H?gMq} zSh^eJv`O1yEl>h=qD-}rh+@8)w3u3Jn{qEb%^cA@@PXVSb&@&Z(ygozk769L!RYaP zZtEc*j!m}yU-h4@b$aKdL%;H(8yD_MAi-h_ zC^N(^{SfHyrx%>IsbIbK*3@W;dcwJRp7BI*vI9pC>ght;4sXZOzhot|^W5@Gll$jf zR!XepMvveSHJl2CATO~hc5)-;9#~s&JC`X2VoYWw5kOGQp~?o>BL1m=hP0~I5<@cl zu#!3XXOn}JEGmJT*<=D?NaDJ>n*EGB9t8z2sjb9*t0H|BCc~wkAKjM+9Bxe)sz(vf zkHZqsQ$N7!x#SC^NlPcnG!8ucSX9?mFP-1;#eM;!3H9TjJ1{N5HhH4rB}x)NJMrXZ zsL!BVqLS#GaC!5kMz`dPGRj(XJ*QB;=?VRt$E3eU#jT4VxcNj^4rNcCG(H*51Lb=;~ZGc zzktenBzb~BBoFSThG~kl#aJ$Z#^M7i&xL|GwZ#eLUF~$*k^aUO5jAmS_JQlpcBJoS zdhi{(M5EU8XcIHd*7_(8ZuLUzrscCoJAtE&y30tmxZ~SAzyeca8Y!fWKLXl8uC1W&%ynOYx51V1j=G;!{;C2@7S^4 z>uIEMuePzYO~WOGdLpP5xG(P339O5!tCC|bFW`0X^Yy==@*MQi{1NT+a}DON?7~!) z8_Q`f$4(kL#U;4$f{NuWXY(8*=`(lN40H;b_=Rc42$S$jA`Ooulvna{etVLTheer9#vt8MRWn4XjhsKqVIQ|NZm^#{z&s!sYe$kRS&s$BpBR`@m6aBew+T4#9_3#A zRND!K7_HxO@A{%0E{{?}i*VUBX9~7Xw1`-ee40|YaF!Q*J}x^NLMeDr@z|*LD=$b| zG`&pdf~3(79(K=U)BZ&Sc(KSuRJ*kJT#^0DRaQBBuaqpWTV1u>;4_>#^a1#-)-ae? z1MN_D*BZ-g6&?bPw~_R1e89@|cvYwn&UY;41lXlJ&51^m(ER~l+?g)X6RT4d;6 z(4K;TBRtgKvMIOd9+uW+<`d-bQ828vD=KhLuts|CH5m7SIF4SVj;R7I60v1F2tA-3 zRhWH={bbY67FkbTA|Xp#&M|h=B>S_q5$Aizg^gaL937crywVkLgdcVspJQYv01nsP zk#Pa$!iu-nQ$LtEU&EiGi^f`+c4Sr;490iMY@p5A)nPXvGDH!pS#1>y4&ZQ*I1$=L z^{nHB#aGt-QxXCJp8TWRU6Pnq5sFTtiNHtawb8AEM4bfay{j1I&KzINp}S+JOc=3H z*f|?b&}O-M8lwa_)^$oK(E%cr`U_{xVqg8n6rf^?`4VZE4t1Y@`AwL2ouCCe#^*hQ z(d#+uz!#>Re<|tTZGnsJbF|k+ckl@gyhDUA9B7Hs*aZn%i!VNV50|Aw%`zqjmM@F3 z0%~b{o<(W2oiqX;#aKp>qR{R_Nnr)7EtQ0TnM2TF0-}}R^HycbHg>SF8gtY|LsKEH zYs0ab4Rw$lG)l;A(!f~Jvbxs$oy;Fuj8HY1t2+GWUF0P^i`T9k2^PqueTI=`d22DO zsL2p85_x24+F=)=vVCC|UQzPmS{>U!nh__{ngOd_Bxwp~S{L|h?%I5_S__=!iB1H!;k`l_yiKC51dU8Ghz_JeS-Co#Wdfh-K zZl2exrhChs>Vo@&Aw+0POl5H? zsUYNr;LEXFs0$T9Yj~cXAp+DbiQ8Ln(%`ES^ZZmaQ(}Y~+LKO-YBUsavd0t`yZC8+ zGtBgvueoX0<><_dG;OjubYbwS$^3Gc%)8bVyIMRO*J`CYDeL8deLHzmgO}gT5*}DyUY1|tT43YMz;Lx2Br1M1QwuoK7rJ#7YzBE8+?jJGjpx@+ z<8SI@KCp~BF)H-nLJV1Oo%qUzmwOcvXSv{L3C??gTGT6 zxeWx$<)RrQ3|gamUYW#&-(~8XnSFB=y$$aZ&nIvB%}%tlJE3xZ96&PkH&PSnMf9pV ziEpnYs&O;;yhu<_&(Kd6uC>NUS3dVYQ3vlQGN!%gkdR>M&l;TL}fEKOa-JBJY z>?n6V{<>eo;ES>VBQrZ?da0$P&wozEeLddiy6k7UA2n@PFs_t!+sDFri*Dj(#EZtgY!A5~6ZOm+ ztllt>D3qLh0zF;f>ut*bywR;ELLVsk zK*xO(y|pZm&^jm+U9sm?@sx|0FLld=t-;sp3kpb3dq{bb*Y$Gf_bC9HfX4c?WSgOSPxlh{E!~C zUxg~}>9Xq#XH_1wy&%$OmyWGR?RIUSTYsIhdK=14{)=nNDG6-aN!wuM4eh03W0DWh zEP*e;u8hPT1Xj(+gIsIRT!Ums`daarR1_D51dPxXeE#8SYj*}3Ob0}9J*_vh7}^sL z7`UiY2a~78w@}#S(U%JtlDFnW36Jc0M^6@)>pcO-0FNNDb8T3-vTEJO)W}g?^<)5% ze~%~XF2W>20d#S~?k(wN+w1#aQ3|+1wa@srvYkgQN|J5PrOP!JO`_8I834&nD-O5r zz-1U0bdPiqwT2L0Kx23%Oy+xVzRM6|nhA+#n^~PipI>r-uvdA867R}VyQ&OI=$})N zw^hl+b3+`>j+RuKaqwPcn))|%*uZthH2;pz{JubgH^?Lb&9Aw~NsT}<$g!>URTR)- zIUaTDb!76$^sCGwCZcKqaXEvFgCP*8m-}qlbHfeB!D16MA?6V!9*AsVh>>wwI1n}D zxH{tN{^>Ccla|>TOe~jxcV0(?(#d)%lVkja^+*w|X|D3@+$-~D;|X9Z$3O`-;Ee|# zjK)l@V~4s(b!&6bb*1*xhv%~z0-_Y+&M8xv&;sfZSBPr9q0W=2gr5+j5YGcZ1tz!b zv@lS_?mrMSbDv+~rL&gny#|wQKFQV=7o9n`P1PYtrRka6rj!&7pW88FyUGuy0FK~2FB*-DgN07x7h#(09S(51FV znXUXu;atJn7`$|}tOOTB!umSnFJ#0VAGF=DEDLt5y|zO;X1cU4u?7rutW7eOt9r^h z$^EauS;3$S{X=2zGlTPL?TZu69BxJG^|OoS=6;fvTG@5ITy}d1ll$roj1Y)yz#_CA z2`w;YKg7TrI^t;V!Kf?aiIQV`xLWsHP3W9XA^Y)bc!l=Dr{=Z7^Z+ia=s|JXM^;Pi zCSw?M(_ZaY{H-k8K&fA(?x5w+*R_a;MX80@g-jr`?Q=a&4*WI%O^@OXW!@e8(%(BNY9pYXrZ3P#-qgJcwcDJG7Vb-72Cq zzER0UJ)CXL7n3Bj;AU@`L~xP(Bu?fxr+FM)*560G-Da)^$M0f!S(sB|*=z1*Uz0DX z0(XvkSu#;Oh{|$w65Qw7pbM}mH7V2?5((|inL!@ZW|S!_oD9!@qx>A5#>r?G9Uf}# zGeq|>0Xtz<{fpKF46`RKbFaxQofcqn238~~B5K%3F{T^aL?FDl?$Jx`PE_ZsE3g+z zJ3%1S+zwz|*vs&=XNSYgQF`(P;NgQXE|4kjDG-F&nRi}hU6rEqt8_w>PflRf~T6rNp zZi>A^m)aDy?l<7Z6UCtCiA2J)&ZhL5Xm4-NDW}}@0_)Wu zK)#e{=wNlZ>}vb`wDldhCc4gVk>>=a*IW{85Brgfw|-A+ekzV?f1Pai_+c@o@qf)c zVFAR#UA1*WnKguD7?~y#N%#S1%7~c25Z^7wikYd8j~mwkWgY+!RXIM=M-hU;nzFD# z0a1M42*+nikJB+VE&026On8>-;Op*RyrXV+kS@?aY`xFkc%(`Q|KS6r42!}6;P-8RUJ`7Rzk&Z{F*P7%iAFZ zBvd_WZtXggAbLmuKLB1dX&-g5 zPTDAm;6?1rv1k%nPv)FoSw16P$eMa1eond4ho$P<`e||`Pl_=ayDmFkqF#ukk$}Ln zyo!kJmp0k(qi|`{w&OXs*SZ^3n41_h+sGDXhdZ~WR4)ry>MLY^hqjsfM9=8)a7z*^B$E!de_-gSfklabaK}fzV?>i9d3@ES+p8k=$ZVa;H_wMwoLqs-Sb-B#m0n zVwas!sT}5)a?0($zv(Qks5vQ2+Y;=s z+CP^?oxD5OX}TAM)fERBK_b2|Ms<^dlO!jnWWTiF=Ybdy<+AMb`|P44nt#FNrSh~x zLR17CO|9?t5@@UO`mI2rW0Lkh2@z~-IQ*>Y7i-J)R+`6<5c4*Fxm)bA1yJChlDa$+ zIKCi69W^h)V(>pdfC%4V8;zxoti~nB<1I+z(WJc5dL=vBi?wUBvTt5Wr`G4`%V2jf zQ{S)|%j3zjfsKnMImX7Og~zEqqNIa<(Kv-Y))nBGXy&7a3ZJIMiG#xCpjW2JAJs6l z(?GtWdkd`pRP z8A>Y$jv)M}0#?Ebf(JhaW8@I@*9B=?MJ!!97&}7M?v13*@e4Ax6j@`v!0}Bkuzc8; zqawg3qV7$ML|}u-W;)G2-YqNGOLd8TOeL-dUn8JNPHcQnC|p>R}@5#}{~dVaT7UoL8Pe!frDq5s;IX zkN0&Tx9nx&FEx&}tH|;Hy^=FjSDtS-FH&TS`znOK?Oa5k1D$S#K&ZKq^!JSNuuH;` z9asC?U`?9dOsJTXJ86;#Vw3gfE_V1N5xf%nQ;bRa!C9^{a=2*VN__@Q2cWT0|5DSw z0#qh&uZb!0)tf)3KOtG5%xm*L`HU-bGttZBPY8q_X*9Z|(koK!mlyde^OgC_f)mLD zQknd7(67lPO$eMnedY|9TqNRGI0*0T$%JBQs3n)_yf(E@x!ORa=~t`V5d@s&_|3ke zhhjrMfK+_kpp>L*DfMairnHNGc|RgPCj;!)C~Izb67n_zpZNEvbiT4~hyxf7Rp^%# zO(pm_hbAsSmxuDK5ilXz?6f_exNdySf^;#A1p2T(-D?YC7T_nX@53MA|N<3E%*IH;g1|@QGijtpuq`d>(yG z=DqXH32si)ov8CT!c>;#0mSk7`3K_x{m!ZN?FR6jpwOs0r?W=2t3DCS^lsnwC)uWj zG}a7WW-wM8BLZzvF!4GK&Xf>sBP_;l0uiy&1CddP^qA)PJ%1fgCan%0?-YJNQFn>a zZo$4$$9Zu`=wjI{TI14ij)i*T`iXu(-Sw3^SzKQ&Z?%1Jn(WCNo50|*ge~=14ifMo zsd_y;;DlE;xVZ;-KKwSpLo7LYvh@qUk?sw`wua7hrpnatbGPM?J1=k2cS9**y<_ zjy{+V1y(oWXF+KD6u< zfi^e$SBwoENe5;xa2S;&gX%6m5ynd2xw861 zGcUI_8%-LlQ>zm`PEIAAB8b92zgwr1Yo75A2J^bGLbOtWtkmLsE<|6b3GH&ssj;%_ z-|fzI9m-L}j)`QPhG+I4{q*~OR1O9hO*CcM1%Qzd$4@_OxuvBX*98bl($XEST2P{X zk2VnCG`#~13~+7Y$Xa5^BU7&0Vin*@Afi6#=`E)?1fO;UQ=;zU@nH)7kFd<{k-c5% z*x?85`I*-%n4QyNAET!PIcS&crS+r5GhWb>VFUWms5t(bAN0wBb3wPpznj`u=&wm) ze)P^M^=p!{uS9ub3-=$Ic_HD-z9yWyb zg?1nU&4Piz;G{DDDB7_=|69X%O$jkB=xQIOHqnZb%}(TZnggVe)C7{D*Z>f%4rySc zL6V)u&p9p#)y4fqVdJ{FkOeJ@I+tV(kxJl~s@*Go9A7$L&P9%eXtzv})n$y4sAtqY zp$q~H&_fu6QnFMI`dAgFln*2(ufV6k_(CEt#jlwH?-=7&1B6aYmQw^?(jaP|biQ=s z7SC}EdYPkMoA57SXn4AS!2gM=pGgifz~fzDn;U}% zoZEJ24gPP}mk_srJVN_HxWxhx#_8*4D4Uq{s1^|Hmt*(Nq7BLtGMgPCBRpm{>#Wa& zf|EEyD%K+|gra-K(+os49+m4|?**m4e#PKibc@QEl&FMNnr_|15rUC;Ya}t>HZvz011ZLSGk%k-YbG(H6u?q~%CO!eV4-;nx?`9LG zQ3JI2rx1mc2_Oeo%iPp?<6rqw=^WdIMBcM)m;0df34#edZ+C|uRm!emF@WqVxo!P| z>h*#v_$_%d;p>-w^;NYqnbnsVToU%09x8DG5_3G_qwT`?sQATj<4RtJ9~PRK$~o=q zuU+XxjOH0=Y3lJie~vE)>i)YAb(a*MVeff8ZNiUv!FSadzPm<{htWwv71)LVevm_B z+?_nRp&8pMZp2Gn9}Fr&b+Id$(h-D?6-o(hWG)GFsEd5lf@dX2X!l)}wEI_{PGg0M zLHYiI#P-oY=Y*Iw;Bp#10PR%2jNh>HEI$YnRT^}Umm)}Uh~*-%(O2ylLPl(3PD}xh zzR6XijAg2`9dB080TfpmSPy~k3{sQ_QIc6kPbsHUmG>jL$6i>KjDFe_%?U{Gsch#h z{0-_QMNt{!F728rU6W?KtvDbS8okM;r$EQV(!bpoZE5CziZ8+nyFMAc#GN>rKGt!b z<5r~pfj*n|gmmUcU4I5znq%2&&nCkhTfxZPY*Gv&*^&|Hm+I>S5ALv5U|jOQteRHm zV`k<2NF7+QW7p}>!@e3Dj-v$IHy_;jIgy_Ktddl2hJedI7MxF+Nl5@T?! z3FcWPAzV4cxaaVC{?o9-tJJ87Kl0EtT5<_EArZI11!fL;z(LfQO@p}`z@w8R5MFR{ zrEIL#p5tT&UAnQDw&eCT`1CTtAb|C8Fha#iO$`8CXc15W*O7YeiH0Cs&?nv-eDwpP zliEpQ9&BbE-~$X)xxi*Zz+Y(+OSHv*LOAcG<7mX6u4F;38;6o1P=HI$MtzY_YM<>y z@#{0meg^V*V5R`8?g0e9=)$JJEhm~KJFCQ4DMESY0gnQzUiIlM+0_Y4AZc;_(!Tqj z61ket<0Lj)gTq_$Gt3|TF^F3Zin?fO`h!M2hLBnqu&1d zbfgRcraIL%7{$3LaK9UzqIdXLx!O(A5$E7(>Yu2OrD+nJ;q~&IFr?N+3c4Z%Mi0F& zLGP+o-ub^C17*si>ecR^)8)+(c35OgPSUP5P{Tm05ClR|RQAk%>b?QGD*f|FLb5Hj z#WLBSK5P8>5m1@g5*LA%F(Vt5G}M)azEPJKX$peOJ+{p*xd{#3vo8L;l~UA9JGd^a zIMLaa=e4cYuGffPYjH8An;7x}_Eo$uUg9|EDU#bY;%pH@NVq_USRe5kxV&s7Z985x zk}VvO*eXLQi&t~$OM@G7^N1p9$ZEx$X+%sTQj-fz0qJu@&_@n#Xk>C@WJheUy}OR6 zWL}B|92_`hb5=NvAZ50bNDB@`DY05!{DC@b^jYA>?li|KM)bIs67Z!!>z}XesH0XNdd zlQ#E$j02?zg`R~jvAU!P7I{7 z;Ku~zj2$~@$7ukapxqNyC`&;+4FZ+IT~K%N80j5ij#y3#C|f<-J^EC@n|-F$3Z0YO z`A7P)i8<-GvWOdO5B+)i5l=$Oi&g|<#K3b0>eRhNs2#M&Dy19X3XBLqMOl{ZQM}nU zBIoeoZ{F!-6qgdK-q35}coHM|5Fx|v?zlHSPFaSRhtSvs&bz!Cff&rxj$yOMdC9@d z#2RBot}8`0k7V6WuJ%jaH{G69S|7vwV1=7@E5<@J?;;BIRCK{NUssxR93@3VIXlRL zPHyVEcAfM)eyGIBv6HqdysC_0ZQpL$fG)(gDu)LBx)Tgna!}_zngUT*5b5O^`eod- zUO6kv#uxEDrY45z?#R}P#=L@+w*Xv{j)5Dcu2e15%Z!`nVIeY!s&e@(F%}v-c%zNL zm9%_4G--pdc;Uyzde(2AV@cDV(De0IsBTh&J)(U!;ER26bD!r94lH_ae7453FDr|WO>pM`$s(gy zysi^WhxRQNv{fL4;!ieAYisnavgWaA<-4(+5fo4FVbOHWY+pr9LF{16XgrJHY0VgH zGB&BP$#fWZvda&#n|IQf%sfL;rf#nHK^BEC8S?<{4kL>;+3qgXh|&pU#LT?X{g#X| z=_>mFKIS@IRDKV1U7|fk{@s4np0%>Xt4D~m?S1Ax_H2-vOuD;s5E~=LXC-Je8tet3 z6V2@CgaiNsAVzi(zf72FE4B`^WrkfJko-;T^+?qT6ABy2{bp#;8kZL7h3IK7{99L zY>m8Y=-9T6uU2CuGq}$)(6?MPhENl@J6&u@e69oM_SB%s=06(Y5t~W3pjlm)VRW{A z@G7PPahvFY8CB12)t(3ZWdOwEVij14DnHz#FSI@i?74mW4Bzhc0-2&tqH6Go&!m<6 z&i;5IKgE9bZ@%NEaFZ$8>a`9|8ib%bD&t@y0(6adgMJTFAEXrqLqF;Zb~`@x$9Riv z&(HCq4m|rV6i?>44o-L!4D*47g~};qM0929s7K4xyDc0Elyp zYLHm}Yl3-VMN-gsFdUe6kmol645bc*!dTz-1(kKY29*dLiO=1I(xQXs^kYZp*lDx3 zHyUKAK1tNXJGaPk;tvSGpE+B5Nt(fbv@Y=L8RrE89`0#$BS9@Yph z1-^VuU0qsH=`hNIsp1@Oh4+gk=B*KoEa{;hb3fV#2A5<_fGZf>1ki8}AEC_5kTr;~ zDLkvfOkp_GEtM{hRq{wSxpCP6O6Gt0)IN?C8aTWBVl3LO8qoK2eV?Bl{nW&};%$k5 z<-nR7UC<&F*u#`qn!Id}(7ZzPy6eW7hzrH|I%II8GLQ@d*o9J8ZeJr*uAN+nbSgQo ztK2;m=yC_!#1GB|rU@hjlJKAt(#CK1mT}&zRfSYU+Gh`%Y#zj5e zQu!t#DswDOdZi@e)_$ZYm=|=mll7HNc7xt4C4}6%YZ%(B3<95l4kaTn5`D6<8Z&3z zX20kr^}hQk;|-Ov@_$^dCg1rec%yCDcPyFWcO?n)ol@JEm4EMJjl{*EE;v$*KWGZl zEJ|>K-=M7ezC^3zyxndi9+^$RaG5Dg`fl?D9~s8ri$hY=Bf3E#*^mYR+9w+UURKei z;hURhat#EfCW(ta|1DT}>m_>Ez}Z=7Z#Dh1d|IXxLNA#0geG5icr(82$vGZj7WMXd z7b{|0$p-tb=w8!S>FanJdZGdKJ&Edo>^lPS=4!g>J<75D>U>(D-P z?V{3vhploiG`IXZXuBT|je-a%Ujblh5V!pGZPv0jk_NdNq-64-!SF$VS;2QLN|9BD z;k2Y6E9u!($cVe_dJ)$XX*=rsGBOSHWOw34EDE}&$AuG)V*e*y{@n&2;Cde=*KBdp zL4j|oI}q3=;PZOP@JK>?6@s5U+QjS;uQ3l&5q_Q`!9Q9a*M7fJm>D$IHhGT?$v zQWL`^6b4I1KaBM-^;zix0Q_W!!m>d)$9tqnC;~@+vF%iY$PE!Oj^uE87qnFAy2p~6 zAkFOhW>AdTDbMdl>LZjRWt)`VZ^5on&t?}hU!ecrIKmJ`4!E>l$N}3#ZW`4P`P`va z-j4qm`&XJ*q6DG`W*t9}^EPr2&(GBFxP%{C&v6iQo*k4h930S_EoLUT;#?K`=>>tE zKlV|9NVL&A@Qc|27YHffs%9KTx@i125CPJ;7tpkwHmhmbH}B_2TO)!jn-#1dCJ zC4H7_S-^f)**URAZb}{m&$;Q>GcIu5_s2T_lV#kJrhi9ESIm=1j6VNh4VCS#rVw_X+eIbNSbGe z7tb7z{3DI*Bi8mfs6I2@M14D$NF9?(sPdu-LG!sDM_ZSjMMb#W)FFhGi3_bwgQyRm zc)y~dgKg~u?i>3ptLXID`&T7Km^Ny7e{jKE(8rNkrr!VKzO6hXu~F zPEu0_NGUu97_`|M0eUZx&8+zJOSei&OCDrani(w{#^`8R8e?Q z1q7fGJ0Htw0-`?1cMqr-bymsw*k0sA#%?zT%4DccqMEumQ7v0_?)PaN!WxI*`$iBq zt)0TLxR~-k@^a96$K5$>Aceoqmko}_$j2t~63QfCsgSNxHqUZ9eq4`!p>Y_KPP=*x zwCDR)zyPz*6zTDJB$js_vjF=IZ^6fD!Dq%zji@5lZS)K>O0k724L4k|$fT@nP4fzh zi7DQP!9A~lb{HB;Y$;Hy9vNE#6^Uz_Y0%^nU<6lgfHeFHj{qE`J_M=EgVjwaaTMaf zANiatnM$}A>inUvH#o2uB$WhksM$sx!xK(K&p@Vs_5`Dfs#ym{Mna&>VrQ`{;h=5= z_?UDUkNP}*lR*krv6y1CpAV7@rwuUmlf6iv!`E_e+F$WorkWZB{y5!hgZwPxV*q3c zpOcC4#Ls)}sC?EMgLZ-5!JWSOO@Q_+3|xKJYmLuJqsa=|seQx=no^^ywsR#M0`49C z+x$(%B4#&aG|vGEIZd716*B{021*D9B4ZbU8D*1WHS~pY7ng2mSQ-oD7+o0`*TE!~ z@iRgjSTR0agLNeN zluS69h9-W&m1A1ML_4oCs`iJh;^qc3Or}JFuff(URgcKR00xa0vB#z>0e@B^FnHMw zn_~~}jJ}AIJ>31fmkFBMK38XcYnOnR`#zFIB$N4-c?(g|H%B*$+>`>P4xn?R>rHj(I)Jb=JV_*GlAXeL{SXi$P;2m z#0Y623brC0lZ$)7&(uV+QWPzx*ShCqgZRK{LOw>J7n+zNPdb=kDoo_K+mI1pCA$jw zp|YBg_@_ja;aY(2;P-);P&1)={FnTAUf-w|MRy)kBMRdN9T?d-m%xtiQs@hQFHV`* zr_dNA3&kUIvn5lEd8)eEMhIS-L#_Ho?9h9Wnu8QRrAem}K)sBv)SFKyoF2)rPBKZ2 zZHpU)0JM^Gx#}DIh4WY*@C92DqRwZBoLp|IONcf|bmB2A?IR+J47VV>IuFPN8#6p- z*imD`qp}Ajcd7Vd9-e$+uFEDw<7Y+)NRYWGlaHq75skh0$z;le*~Qu7#?=$C>LUV5 zj?5%pXCTd@=MERxS=d$Mh+lv#ShaOV179lcPCSL{^0v-oj}(1-UFl)y-IPUj4|VhW(Vl!$kjF>Z zGVakn9>H^<^zsX*;MxkEE-m)7vepTliMaiV9s);l|CNONcm`NhBE5%mvVhV zJf7fp4GoGAt=_KJ;a|6@F)F)hEA1 zwFG2h|3n&Eb6J$VjRVXMlmOkFU&t`?QV|fXmAg;?K%<^w+1?f$$KP$ywkbG%P&l1! z;PJa1U=53YFRh(Ay87adjHMH?S4d!jkC#5kJ?N?w^kc5?WTRlaZkyxi?ag*`5ySDR zZ;ceCizc3AIh~16#}j3L(-@?Z9c{DwbaJDO43S=wLW*;b;(Y{`J9QDR>ri2xtrL=v zM-w?NJuMJzJfV#dscv1d0KAMy zy8=o>!Wvk;8`9o73${8qWa@?hT;U@TFQsH|o&&tN9d&_qg|*Z*v1bQy{|p_7s3-;l z8cH04srCz#TPeZPj+oFoQRMqyYg7_IyE zF``)PGtDvNuBQG<`&GL3yV!2U$0Ztt%6ifmA>K}E~xtiID; zCWVg-hk?KJmP;dsE0pE;M(zVn?pnq?04)hLQB5@gbTY|hWmJv91s3nrJ2BF6djIg7CpYNq>HR^;Ghu?5z>=DdO+4&9P9M7 zuW-~QqbrNPY%wa-^MeKDG6C!+uqzvUYWIa7_>%Yyub>DHV_KpnXe{cmSduATv&fhi zojH~U)>Q&2`r*unf##KoRq#DeC3&t0xy*Z~SZXMX$?maZNc#luGl@C4H>&LY_WxGc5*Eo(StVol7ku6Rrni=+tN@&#>*`$ z>+A<4weQLU5Vmv(7C@|z%%3fqE2-YB!L)HRTsWwmdU&f9XZw+3TEy9Gs%YjrLDAkm zA9O8xI0vuy@dg6(Hw?+jfDTqEu3p~7$0*uf9?(?@6#rnPwZ3$q2S$O}ki%$gO4|}* zjT#8WeyP=Lq!KFGNgR^hZdLSRIk-`oRQm*lzmKG_6 z&GoL?F7PtM2HLd43Zk{r9z9?6%HyqUX;OOZX}E%)Tex*ct8R}F*nB@u>}cN6ftXhC zukidxZjb3O+;2Qh(s~3N+|&hkqUt^wMz0Kqm>A+Eq>F{)WpSnp-Lt(ue$>iljbMTE zapz508PQ7CyGFU0E1wwj zJe3)6`R(sy`tUb?o@9gixsQF0e&}z1THD&Q4}96H^p#)zT8Xv)wWq&a zp4!sUCzlU>-RtzmdtM=mOE>a&zVFlg$&cSl2>9*a_<8j9civ1tnuGqw|K`*a{*tC-TF~Ed{ZD`7P5vkU@XaEdqwV{@ z>=o;;Ir<|{uz&8Op9|i0!1?euzr*!3aU7q2=dXW?KJ^I+ZI5UF?(cqw!PT+EC!S>T zcmMjQiWk4}o|}B=cYI!{|A`;_9R0}O`_w60=S%3%aSbpQ2Cv(mkW4-}X&!Kjc4cSLn@8i~Q_I@BF{~oll>;THV+I z2SAa4I5?SxAIBrogg5m!@&`DuB>%95d&f@H9a+I4->QVkt@L@UL`jVc`tUGucr%_% zz>GUS<#^D8NXXQDd6DA4ateoS8$Tbf*$*$6HpN|yR>zNYT-l9BOSWO?D+B}UB!$@- zCv-%4hmdTt7LKH;-i7=~BxT*H;kbq1@A4VGxg{)wOm+aNCPEMnr-z+=g@W?LF^AA1 ztK)EXwXmsesml8~r5ifvbwJYe>z?Hx@FHU$RUyWNVncD~0;5)3K+mYtUET?sO|pOI zYcv;3?-h5y<3dR5>S&!2B^TYzp$UWbvGm1BuXb7415p9F?C9 z>>2n{ksZF6lviEwN0>XCSW%)Tmj{A4NxHp4=de`=-p7FQv!5Y)^G$I0G+1X?0`o!k zNKt73FQFYqcX-}zYXhD<8PjX?s?lGx?d^8b6LHYFdIuAXPBGG2+k{Qb$y%Iu>=k$> zlle7I$P-(rQ|k8V*u%$}nZmj7_j=*}FQNJ{G zsLwbqw+^k-x@_c^^g70gNZ+_u>B%lSoZ>o%@GvqkJT|yFUZH+>+)urp7C-p&-bwU} z|F@`5oc447Tm-)k8is5Nh)lfaW$MO6Mf}qj!l2}=FRoijDDelM3AF)gm99%21UcU! z;TFQUo5F_y+qqjfXPOuT&zqG-!$hGD2$5oR5U-I|TcWUuimYpyM7A=Fc`Oe=11mI+ zEDlg{mxqdrD(WFGT&&><%O`6gbP!I^r~kXlz>lpnKuWVUvJk!!NfJ%2LN_47u?R(} z35CUi+Mq+a^1%(U4-I^S;tFbd0E;&8@-wV^gd@-+;8X;*fsD>vrS>|NFx;6Pj<#m_ z9%NN)fLjTtxidQ*`~Y#|+1)KrV@icV)G28-A+M1*!YjucF%B;a8$7jRhu?9Wdu~jx z)$PhK7Z`A5XxX-j(-w0cIe1?%#=a#0`)0`1^)tR{K};jYsEO0*8j-1}fVqgc^iq#s0C;YDU9 zERK^Gj;;=L`}3YI0KJ)TOz9XL*{=@!aXW>BK4dG%vkLL8O7I+6lM?EdCcm(&5d5LD)ki$K zNtTUwI3K{qxGx(&q=)gy+TAF|a|eBGP=u4JcD3L74VXS{bSiW~$I_c&k>ENd58|D~ z@1;cy;#8QwA`}MNAVy6))Hf6xwqQgTN)*xrqc|NM#=ddHy4nQt)T|#Ov`Pj6&(i1I z+>SSZq@xdjT78%HcmY@KyunwRLsmWUwGI@46jE@fYu?-BAKyx-j4;#(pCpRsK_r=J zCJIxJTnvt#Ae#c9%j6AYri&GM^Fp$3(E?VBH_^5=f*y-^yjn8M>Md^#j!+CmeH^50 z7F)r|^eW1U=X9^U#Cn?e# zm{XILh=6`k+VwUMzIE=E;kV4(Zh?N_gA-l`9Ew*O{v^N=vY?=oKroW1L(5a5ew@BK z!ik1}7uj0THplu%yQwnsOUQ!Hfu!i$D4zz46G?BUcGEqh!Vl_U#50AglRpbm(`MZ2 zj(c28P`jH2>jK)r0tav!OOttr^6Kk+_$2?vC*RDCP_;UMDvr|r$vHaJSGAjE8U1AS zwsWQRL~+eZsGY}zxRvNtnyqf*MzrL5d0Fz4=7k$k9KxVHm^_ukOh#8!8D!HUZKzZp zZ}8A3Xc&n-QU~29(#5Ye6QmQsT7qGvIS77g93~3$=0SG?pnuXl%gKrxR6i+<^5C!v|uAdlhl`z zNkMcg?a)4Qv_!L_Oo%??2oT{UhHdFD%aABCER_UnKSQ*DKs=RZoe{;~<^`Wr0LZ*> zLlZ~F)$uxkWCam0YR?$(a|Kb2oot~*V~eOL}grx@yz7u zzJXK=Ii3=O$Zc=z$om+{<0(<>MfTi1ha=CLZ-{JyhO;1JDcgE7^cq4Ws#2m%Trb}7 z+(~mX9hrcg62QUWIGVyL79>x-&3r6N_M`@H?Gw-YcH^MNJphF#mzWY7j2B|Fq^8n! zW$@3-!s#$oO>D643A~80eTKF&|7qh-fQ8cU%WwL(U!&JvC;Ep!^d`Oenc;poAU^JI zPfPDQ9yfqqWDYpHNLZ*#gJpWu2Ua?=>pZ6{EPm5r()nm-a8YM6;RW1Wce|O4*D}if zns@DvqjJ>kIC%-SkQ6szWG4-{6raN%9gvpz%w?bLq|n#9S?*tGYhjV4*0THSw8oIN zuw$aeegeO9b~mmc+W6x#9sBqm=vVxfx6x-lMf4B;=TEQwzjJOKU0H&79E1v}S;0A` zfi%=JA99;RX%|Li)rbfuC0iV^o7MXS$>mWo9nYo@=I^~BnGKrIW+s2mN!>17h;cW} z2R+>4h25R-CdtL>`~gSb3`0pEl#eY6;b_R?UjCjO!A{74bR4IA+7+h72DaA-@M`*? z#Q%%9jjV6MhGp@rBRR#%$7CVtk6mpKrzx2Kk+}1cd+9C52c4K_9on9KG6r!ZYFe-W zfuS+2;}Eay65*FXqeR|-@w-qRAi)LdPib8SO-g;Bt#r+qma(;S2cbT2aKh6BfFWLu z1mxeH94m-HR1EELC$I3c2x8IRB9Co6kX2_|1+#chv=6jbpRJyAqo-u({Dtp-uizJS zGhNxnDYfa27~s){ZjyJoTxuLGEKe9CZOa(Yz+9k7kF$MuGR*A)&SwdvD;aXG$NRTl zR<=i}{>G~qAw*?IEA~Bh(BAnjqQC!lKfOF6)orf?};W zPEZyw3x6fhpsCL$9Ug3{Fm%G?WRHHgdCp8AX;|B5noXLN5!L;BPR)(()#Rb3xl`qHNDn8yt8#*V4f3hc^y)PRo!Nij%x%l3#4D;h_zk zU-?^K<4=E5=tqC(GigjPjxI_#r7YzN1VGE=*~l6vDZ`8@j=3=3OP_=675{A_-DP2- zU7QVLy)-^BdI<7VpsdLcl-@>}?JtptgZ{h_DAF0X=Ws!w<`YrQTBq>BOED79STH7+ z7F4OHjMCBMj@bg8VUCEQeD{%7j7Di;#`_krNY9|eiTe|17e7)+|)w^S?>FN4n zpRL_96`$v4&}sOnv7^JzkMHghZsX|z1t?%QJnuzfvJrz2->j8g;E`kIqT`k@eo1`F z;=vh^vHt>pPm{pkyq82+qD>@{C=EpY4XuN$jO zL&BBIFaFY3=u3aiEA$Wk-kaSZ{Nb!2%n9ZW%sEO`^YnJ*pmjjUp?-;U9%Yn7<$Os8 zk9kfUkPr7ulQ_T{-LF|?v9B0wKAwnRU`}Dz(c}w!Ks#|ASO8#xr7;QgSShwE22Ur0 zepW$R{#eVL7*OKf+>4q{-o}qK`uDlONl7Q896}j^gP1-bAlrR9PlS4Nyf|@eeN60w z?d6Xu&w1@_5U$%#o&06|gDF;?#%+~dwJQMG`CV>wwE4$>|4sVh_q|GA@@rr9L6x#F z&uxXUNtmbO;6xM)dt18*zDSmTFt+1!*Hip-x~LteXdXRrz; zo1j6&nl#J&L2Ck?^1v~W8!h9_n)9Aq)^~E=*#=)n-@DOGAP1LF9M?#Y30!+jaE7EY z%*6l=Z5i!WCYgo`V=zU%YUK<-^Q9N;2?Al8gMqUV8r|f9AdG2K$<8wMP;?xRjwy&7 z{asf=opcyi2uOW_XWvnG&-?>k36pTJd1;7Io&>HFPgSQxWg?ECc@Y2tj8t#5(YnuS zI1(m047MQ_V}&XzNzXAiSQednDAb?~dK0gu8Pil5P_Wwq`_aS`gMX(}c|czl6xiV! z&qfX+5AdP05&1SW<8em~+3`F4AwNtTC=*Qx&T!gG9^S=Tj8V4W}=_QDckYi`OG91fPgn%g5 z%Z3M#iBQ^^pgiu2s7^v11=_iqPG|S^7-VdBJiFN-%O)@1jxb9q9~Y3 zIFEs&UO%H`OU~EWhNzFbTdY^I2_BlLI>s!+VjohW1Oqv8OZO6+TEDID^wkHpS5v$o)v)=?l7Ct-((&z~8f$m43PkO%IdSo=sO82DHzJ-}Alur+rb@ILyt2Q9rD z_tGfnsJXH4f}z7x8cIgTqviOQlMvMoRB`?rXp$as$`lMz9|s1 zJuR6JZ5IqRD4xI=lajD~0Lq5zkv+t^^j$$9EQV&G7b;=(6!qJMH)`s#*RJfY`bT9L zCw0&ZCTciICwoRA=*(a}ZDsI>3imN-ZYRGx{Y08G|gi@?7l` zCp@#q^tMSlxiDv3JxLrkGPI9&Hl91*nPvs0yJN~3(kQcFN7VmPBC+lHd3!~tVkuTg z%pFQe@PEBmWa=l`qB(^?26zga6{Pqe_^!WwGS&}DMH1C1ugHmLH%uM~KE zbQN%z4CP5nnV_-rR3@yG#>1^n4&6k6PO?E@n0q9i^5j={QBE!x`I%p3fb_=Lkw_OG ztdG+Z-A4rZ&}&Z8JL+!a>n+|l&qW34fkC$jl>yrDi-{fK2nrp9Kl7S^up9-BdORgW zj9{Y#V<_obr}{!0RVC-}pM1~>vDi3lQY1C?xG3U(#sj26om6|Bz`u#?%$qs9A5YZ@ zjM(I+>#Ywkyhi>d)cIN+NWJ!NRz@_ZsguYwq(DANkQu4{V%!6svK5Tcqk9-DIg3SJM38#%;~;x!cbK&~=e zgvnp{zW0g;8ljHKzA*etiGX?C#Esa8AyRROKOO8`hxL`R)Q=nb!gYG1Rc4;)1&RX+ zyLgE4Oo;M}; z4Gf5sqh{2>Y9@FTc4gu*$A_BZ1e^OE!U8j_Qp;O>OJ7G9hg~knI8k=GlBl25>OH0ks(F$x}90idCU5YlYZ1_5(Gu<-{v90!)CT~A#FnZN`buN{X^O0W7GeeN@3!eF}_w1^xU z=cS3qtGK(%g2(k;3T2kmkr?R97hv}ck6K*=eY8sza5S<>k3$=+#56gMqH%JaNO;&` zN{@qM&Sx6V3a#W5ysq3hk&svpHjw2%3AIUN>eU@%d}Lcej@Gy4!7%Y4Dic1+@>@j; z;MNA%U|Vya-hTh=rso9$w|&N}TtO9K_3V*DsWKqVa}jka#bx!r}{6j@S~_ZeRd z{>v(@_~04+3#03;;*HU0$LB*xZ@e!ZcZ39%Q#302N-+{2Hcvro(_s~uc>`K7x=2`>hy&n_^~pR@o2-sY@VUNTQO@TLd!Jdj6L5O)t}1@6EzHm*22vII$@XH6($ z=B!f+RBJSTjfNH9I04(kx4zQo*1g*8K;S;H$Csi#3Rm;10CYH3ZsEu zXEr;u%92QEG2h;%F~pfg(a~I#1a+`Dm2k=YfpDfgnX$!Lw6R5AY8ITJF4LsAC@QAg zIa3sr?TEb|ox?j92Lyv-nM@gTKKKsvxr{I3mT)8wd8Wl!#QITU2Q#OqBvLx< zfXBcfXanhOmz*Zu_=)UmeH39fEg_%03_EO(>>+UAR{~Dg2P>huKgv@(uG)=y`-S){ zUp5B%GZx_2gRkmJtnf$;L+4^f1eNH;1a{2G=Xk<4a7h#IDI>FA(sRlVa1t|O(mUSC z^qW8Y`lNB91@f>U+h@xzVPr0_+*13Y!5NpB{0$fc!Jjd#IxX`NZaRz?gpM1vk}=R8 z*BX08KLJfiK15+s6GA6dhcssqJ!(a%)0 zu4G$7F&Rihk05sPBX4nhCE-uv*nn|d=5>Kqo^@yxLdh?1k~G_3I0DzU@f0xzSNEBt zp7muY4DjRbtVYZbf-FqcFWs>DHb+X>*e$b8VIM7)+6Ek zob+h2n2~dS>1Hh^`ayWkmd8;m z457!1NKOH<&U^@eMc)7lRWZdD6n$g6XPN8eiaDe5w9X)mN}}I$7HjN zL&K#e>k7{&!sq9l=!-<74MygiOuFZH!tP;cPhnCUWjH0z){s_ZXhoTEe#oK);Rr?N z+WM)yP8x_n4hOF~MJEf_BF7KTzwsrns2nD~CUJ@GiRgfce9%XP<6bZKbT58uHhd@)y=EAMl8Mnj1#zVabdG<4WlSR&42awa0$buFX-=F93K6Oq%Nnan z`|U-^woIg{ z)O}u(QGkDoVibb-G3s;@C@Cx%JOTYqC~5rU5ZV02c5x55cVGA*@P!=0)i<+|J;f%n z0A&6@+cH7>{_us_Iru+5JY{hDxCGgZYp@Bcakv<+yL$qg?r5V;{d0;et{=6<`yGA! zpv|LakJ>%AuH%>KYKi`*c}qgPlcijQ9?Rj1u5W0|p^?;kbrEYXksT($r>L~0V5GZgGMzV~ZAne@m`%GQjfMB({FHza#c}PVeXcfH zQtSY1$S?Z8*l!Jxw*B7r8q+5}exKhPQgX${1300TA}yT&#L0nfHjLdJZ#N*1CqA*V zMFG*ilT73L^<*;g_cpN!#N2c?ql$+ z5}VWn%hd1R1^kZ7hq5P61iMh6`*Ttf{0v@TA?CX}#KEy#P`HRJttrq16SbhrKth0- zM|)}?JoU^v%kcsEIHSWlzJWmij;Ax7Fh}nq#jt^7&)p{yi{K@E+R`u+XgSb^uUwI^ zKsMBd_@;d-AIBu^ZLjGgGEJG4$=Hk=Uc<;GNfvoO9$gn4$A;hus*AG`>J&7soYXrp zy7+#x4=@?qZ|LImskm6uJ+#vS0d};=C&?KQ$b5dk15f1jIEl=C!XL!~sh8|Gz-L>V zL!WYGlZg-79c4dhN&_7YKZaXED`}J`4bccQ2TDnwj)x*l8j};k(@$|Of0+d0x!)vI{UC{xWt$hf*?!3Y9#v%obC#J!5(U##~8yyPP zIoZRmK-zOs7Mx7mW5)na0|puhyAsbgb`m-eIZ;iBElwoS&?V!KO=uyJu4H{dw82$*ZCEXJx#>cpk7#vq%LX|ORJk&hz2_=eA zYo(U1N+`|FJia6pnT~829aaQTR}*ETmp1l!uu23xG>E3i;yx=;XaS!Gp~N_LVY$ck z%msAsz&=qJ_mp>(hWxpjf{0Gq?9GCr^C_)&E(F>e11s7j4Yo-~eFtsl@ya-}up^gP z-N=Bck;lfqc^*eJqO=>^t{9|5`(fyb3tWqRi-E;;Dq1=JiC+YmwrDLy>0;com=Y*6 z)8M{1`AR!xy|Bh)m|^P=8{3FRpuLDqX9VPc{q60XqA{H`F8Q^HtgOBZM@(+AqO>4h z-??QrQo{%mkZXfxh#opaY_~BP;L}eA8IcRfjKQP@oQZKoHsB`4shRHnJ7p>`?VANC zMD5sXk~L!QjvK>bpryKpT=S zz2oC#66-=AsLRG^{gxND)qjD=AXnv}41#shpjETUl?YVHY zl^LJHFre~`VFSGuywsvVz!(erIL)IucMS;$ocwZ9Ooyg1ZU(#@WgOTNs3+><3Oy>a zY!^)^FEiAI`0l>@q)mN>^{5>!>N;FZd;FYmck$wpJg+=o`SuD&rJI|3CSUsK>@(t6 z)jiVH)pA2?=tALA8Q|C$ZCD~>2DqjkvzSsZ)jsaTumY!C< z$B7k^D;-jCwzv|ZAt)f35e0Iw(9&+8Fr_iKG=vZaRUJfmZE~G5rpTeNe8%WXK9RUt z9eyFh#x~QtW|$7t+6fkS{RvCJ{h*wNr-lJxmGgvUe&Qt0KGCQeJYXF6JOG*fMPg+= zwSoXs$g>=dh?BuEC*H;7ZG^zR@inK?ILqY3;L6AZXb28Kjf^NhD{va{@EPqZM%~r5 zEZ}9d*=AS$uZZNW7J26L%XBOn@}{{wqerJ70^bgeE|!-fW2v^G=6b_w7+@7w)3O?s zM&~A&oMF(E@Y%r#Nxb1=jFphK`o=9BTN-|m#l)sy*_TDoqr6&1IxxY%K~0#z0#DJq zB*dTyq2BKZj#{B6uqJm8d{B)(8F6OuS%niV+qNb=3sf-a8fUq}fD;DB`eVr>o96EV z5!tRtIG2(J?1e|%c%phWCtKuE!Ko*kpsDj=XEV^#8Ch*fuwLB8SVs$DLpSF^jekCq zxWsBdBcPKz-OUQTpqg~*3Bzr*mM;C_Bx5nL)i(JDo6VQI9jP>-^TBwc*mj;MPCf|i zLqG4Q5saO{fKIo|0#1|(iTErqDKpy9y-vvTPecUzl8mUW2VZ0y2~D&bpT#!6kn~yv zW{FL^5CwegWW+KZi0Zsnzr3h3$7oB<{i>v~-%Cidh(<+ zcL>jLweW%v&KY0|g-O@8zeHK)@eMU(qtPk)bS?RsqP@8kD|o$Fp$KIYAmmDWxzI_T z(f(2YUB8xKc%EW>0G0c;7kgtfTP)+fU+(CQQp@)*Ln7D8+g=k1Bl0+yA4s5njJ0CB&_NczT{e`z zGnZvCm}g~{Q~82mojwv-9m2z$kJ#h;;;YDli=}tZqoWs9zY{6dh^*&tNW^}HFN`| z3gBpRgG7byWG^x(fnBJF+SLOxlt`0I_yKtBmq`k_b0V|2O?cpxQ%=~^it+$0x_xX) zhr&=Z)m)fzOHUU70KsWk%n^mV?ijp+yl&^@i2I&KoH;O{YP}$^<^DvOXCk5+3Ku0o zmY!7GU9)gF`j|gRd>uWe6bAT0_%jIb2}(j9Y2pmF$rk(wBuQc7XppD~$4*(;ebl@! zG#}S<-&XuBi43CB!ceI^!BeUly%TO7I}b#AH&`@y*smc0`k~q2Shv_0!s+fyT%&5A zyy)|Yexlxu5Kh-_1wYf#l~q{Iu;~K)&bI;{2n4(k8nz=|%atzRy}~>1>p~pggc>8` zn55yvsMQ*;@pkqV5OL2365-fzmx-Zm91kl!S=YSz3@z*IF#y@w1<_->+4U`Lpz$i{ z<^Ua}lST@d09UvZ+JNbr#dc9+g^io*THf}0+o=IrCUBwfhLAKUHavN-ycmo=DlhE5 z3%a^zp>Q)Xe1X!s@Dwv&=rqD(BQvCZ5e9fQVWWN8s=x$(XAX8v#}PaZJD4l|1{mB< zN}CO)!Mjc@SBnD-yvvqQ499rA zh@u+4kFn>?X(?kA&`KE0^7K=Pv7Mt7<*jlbJfck=nYJ7d!4xgRSteDoo)KarXRA@p_nfYkz(>ZYczRk5vjZsy>M)gpKS+n9Ex4H-2FcGx03{^uCu4{ z7&-`SM2q(Ib96hKLt3wvo!#nJj}-afffEgbw!2X+WB^G(w!a+B&U(DU61q^#8z3LP zOlemq59$G7xaOv=!$&7mOB(m{hH4VxgI+vJN9guxG9qaNzqsG2wd>2PJ_$c>o@LnM zlO9U6BdgG*vcf@pgC0Yr^*364l4US6<3eGw6LT!HnWzJu=&JchqD*dl<2dLd^>_2^ z3AX4|Nx=yW+RuE1^G2zDDIUd*`+{RA99CNXSx65N9#+eW)gz69$ekq0z|`M@Mn zY{Cq1Cbi~e9Wj*LHd@TAV!F>(cM=%L$0LjqV7Wc;gAAv(7wga%?zA2ONDohmLfpcQ zK&N6=!5%>Z$jHO_(=wAp)IUXDMD2m6j^-m&AQ~827`neCri!Yh7ePoT01hUFIz}Pn z0({!T{GG-xILfpF0nB=!*00eHV#K3h9SmeLz|-%EnoZpW&Ar400=qAEPLvVEPb4O( zA@t?cKI3|HPYrHpBa~n>wdNh1Ez^;4V4n^@Kj@cCD6Ft`ZQ&OkUw}c`P*AM}^8o)}R(an!ETABk09>r-t{ivTS&wcI^9gIJqN_ zHy-9eT`(8f9fag$IJw0C@N@|dGJ*U!UI7x5_}4|_?`$() zJWDz$wDf^_Yuh}v+$HhPy)oK zHr#YWYM4+ev)vTJaE{4ibfcrqT|Xrna9Ak6jTgr-K2$h)MLoExzibBWZP@e8>185& zmHj5RP-Zg^z))_y=trt4|5WG2pS+-GX>Nn(1kQKX1Z+o2FJ}pDqbwLeM@g{(O{0zy zVp|-QAZQF10>0V#DEdr>MRZ+78H{zSjufhB(WZSY{qxYMwBi0wK-jGvG_bD>F}Z2G zqgP2z?U5v0@S=rHFxrbOQ5noq^#*(=Eq8L8#N&_v2NPlkoT3a{*zCM5_^=+UXCW~( z@bzK1hdvy7jO)|k*;fW7;kiCGu4SRiP|r;u(4^nViW|6DR`pm6=LTJ;U*0nJh~M`5 zJTN>*g4lwPz52W@Ho(_OmDW@8>o|(arZ_5Pc?^zdtxoF;G%aDT=U6BUMEz!Fy4)Sc z0M=l4Om-nC8=NeJm*r}0=gLq%XB&0}Can{Ot%-;$vADkg$3aJlm24_TD;zfrpg1k4 z2t`tWQG*YN%1kEH)zoeL#vNj1xY@G$b~v%;^Cjkz>fNuxjviAOcV#hmxp!sntt6Pj zn_W8?_(=`i9NV%6I^11Z`DaJd5`a8tbA<@W!4d7e;(Jtt;&(UqZFf&LeY+fg#Q@HF z;O_#;@H=T9Dp%wQc`$?(HuB&MO_nhu;FJ{02zd%AB!y>nz=|s;!E1&TT|#*oxf+-v z>L+Njy=^e`^+AtHgZ|O@#N;0UnEW8Hqdp+{#wjl-tYaj>S>C@$nTHPF@lHGcRa%5k z_K|Kfh{ zDHY-yencSWLK*}klYtlC^-D&6Pc!P-d$>L*TPJAJv*LPXjHo_AD|RWyKZAWn>1SV0 zTr(LQdB^9^!4M+=Yz_6Y4jGuIalnMJ{*G}?`w5WS0LSnq$eT476&&i7kU2o3vOrMcQ$4Cb4TV9^N3HI=+`$8J6Gxgq zvi5pP#QfC=Q8{#(Uhk?YGR08{KH`AO;YosxlV1F?fsp18i71_EyPrE{hm#6B76Cg^ zyob(V5nv=7F`7f@Pz7P^3lkYgkL-MhtU24~G~+UNUgo-{_oZq~`bN=`hRkF*;E26> zx|4(mZY599iX&$$qXmrH}T3}D(%wrXd>$q+%mY;ifP7<_Q}5R2Tc;j^wb3ecJ57h)9w z4v93!Py!IeUoCvrv-TCA0D`e9FNLoJ9ofzLMcL$fSyZ6>WZ^vw6o{-aWlEdsfH-$) z>Zu2X=s)~TZwJp89F?H|jf-K?p3Q8eq4ne*ABBw~NJqMO4rI|(xaNpK-o&JXVhR&6 zwwd8*f9_D=03Be4-4ExNbswEMjS`}NNTy9;hU+0Bt6dG`tY4HnVJ3U$yO`he{#Q-_ z)0aKF&rim1;}|JUPV~pTHC&AepXlrw=0zX;4R4F2`hbHa&%)-eX*03Tc}HcBa$+FC z$l^h!{voN;%4~G0aO|Zelt!EaMFBDA6hA&0r9rnqe#mi*<^+t=GXMy0FGuo83F1_VVTtB-$WICv zM<|4CVh5d^aG+ZV#>1hDz4!rQBP#$MKpSl_hoRAie2{1_n#v`~`Yuoj9^@ea&DQx9 zD(X1v@ldoGh6fg!3kBl|hQQV6HX#9tr@@y?M*uVSLiu?vCn^R&Y^leYMa)Dx@f&vR zM;H~8x{TPC4D1#vybPDoCdE>l%Bn4rHQ}}u94Nu_F;9|}_$1j37}Bfqu6=R3Y|=cA z#9z> zjK~6kczl@fxi?(x8{RZXGES*Y^YhvVxAu3yr=0676%+Yq)q;))g=eut5ZQuC?{PADB^MCc-zi>>@=+FP) z7a#TXt-txFGG3=zfGqvIFMQab{9FxA+F4j~x_MIDDu_r!K`f3ZO_9`_;$cetAoVcQX1e0(Q^ zp%W4tu#2Bu5Y;utM-mIY7>0#nNIve5@%IhGsZgI=vtSgi$y#D)2PPXIiLe#4G=o)+ zA=hOagll=ok0Fq4qJ)8Rj27_e619dF0Vvp&;+HUKa!%s7VnV}UA(Xz{>Jv^Oi-Dxe zPy&PtM4}=srAgpgkq4eSjZl=2XN<`_q2R!DUHE;X**swL})9*-QlkY=uV&?>1MX|csev3TB|P=`c{-P#Nz+i06+(JikIQcIrXe&x2AM|Up$95IS1V#U#Qnf zP}GGfiyPTzt0n3c#s1f-ISH5%U|5f!8lFSvf?(_4=cFbK9OBL8xY{x_eKL>k3NMHLcpGRNwEpMl<`R2FNzyF6mUxx&eWHU(~ zY3|08XImoAijF=lzD>ZN{{=Tb@O|j(KF@gj_%8^3>?c1<$Fng^AH3dfHo^3Xf+hGM zB36;({rMkw&#`mHI@$T@pZwhU`LUn)tg7nV(2_X%qq=iul2)}z*4f-S z4Wbi}=ZC-L9Z!Ex@_zdK`rr4?5g(-f@U+6rjw!uMD9t8+YCh$8+ z@ZRuX*|WXWfmIE~i?Vr!DM0NB@sLDZlHXp5v>0LF2#G|f z6L`Uq#`~Zz%YG05JmNVF8@mzsg3H-HlNgX5{P+Bwy-DUBLsMp(wR;no7A3{$#eG(E zz#8nnB1qSrBR(p;fx9y^?7W1*3C7?t${!a(c=|;{f+Rz+XXD;&NfN&5E@nG6q(i!8 z;a?bJXqx@FIo~OoV$}GMXvgaA0%Ir*kZ|qqUvr#h(~XHB%dcW0@ZW?H!r3TOjjL3y zvj@c%)>mOmM_q-xsvL3}0uT&_ zw1Yf|Y>WvRmQ_|W;OQjq_*=a&xUsL&&RAO|3+bYw0u#_l#+EHb+fYLxgS7%c2`~JZ z1KiGILhr zB+N?jJO+0P<~{Gfu}+qb^5q|Tjo$eMOiz<0UU;S8z#I5|!r?y_T~@80Xu8km*{(nF zi^AXj;g3;Mp611OoG)=8pc$Qu)TsHM54=LhQOaY-PR0MUgC^hfum4}g#19<$=1G*g zo79+{v3fA$i(hPVX0j)niHvri|L#}L3F=Xvb`qz&Z%^{R#}GjNy)lN7p$=MjeveG| zG|>jIz0(%T973@10%ko0kH1C7HBK&KEYR*D)F)-Q@ou`nIzmQgo3Wp&eH@ANxF*C1 zqIJp7b%_C1QIsa4>GC>pigDWGa7%~Gf4HaF^A4+AV!VbJj_-@$6!IAI*70$>&EJee zwm^>IB`FQvo@4#`Zr3^piu*_%ycJxHMmS!uwrS>gim;gvNV<^piN)rCUE)%zz~6zG zu!9wI&uuaxb>c)6a%{|GK7xqJGx9F8C82J0v>>UvV~hG{1_jK0AiS>xq>(b=;{=hY z=KRz@!0Z)e15-{YNOKI69_t9Wp|J>#YBEdH_(FFv8qb{#%~%ZSpR0|n^6$v>W7%!`+qPor1jfB?#? z>Ow|fQBV&%hM!uxohD^+(1YirX=#K7zQ*Q60M2bpF9bmoDAA{J{vT18tqO(27ZU85 zs3g*<3Jg-+b7m7XxOQfoZk9MX(>|TAOH(gRpM}_KkK5UIm00tO~jxc5w{8 zM+8*ZY;_7X&T2E;@G2`wtNdw{n?x{m5Zi1NC~C~yzWp&=`$TTcL4jVIbj%$VU~BX{ zCJ9IRp}+Mh`uum_=*z$AHTv489kuWKi@#(zpC&i*$N$_Ld>ljk3xDz#_}l*2yPkHX zUZWrX-`=FZ@ZG=gv;+3J6UH&w_|8A~2A%ExvtOWZ`{Siu;dll$`R>2+tIvq|Xa4BV z(?@^ub8_sb{p$DK=o|jScb=2TV?y)e|M*S%p8w+G^wEEIw+Ym*{q?WPH~hZO=Yx*} z?~niE&+_;D*%${DLPqLf`eff0n-dt6$^a^@rYd!aR;# zs?#3)fBh5Ar97|ItT2eaJ(OV~-zxlJ|fAUw_;tRBBq?WGhY}-OuMdh^sM8 zg$u2vNn)GNL4>uW^MJF>cyO@jh;X(tU&&Zw?POdiAxELm< z;>p?;x(H4$Oe{Wzl`uA7AioeL3u=pa;04xn4IEJK?IMOI@AG5ZU-UQHoSfKgo?F%*f^ohzIehQy_njCz~{EO3#`%lJa0 zx_vK!^BCXcPmd_g1uP>vOm=}MhB1K)Oacii2g+%aVz)NsrhMw(^ks@`kAZ*%bV=B2 z8ja7f%;!1Z>oZuy9U*WW4drM-v`Vt$8Q_q6G#+Va7qxdWk~sVeHU)Sy_a0BQEjvnf zo4PX1s?>Mi|??us= zq#To?zwtC_P#&HpU+3iHn2de*U;3gG&pY4EXS<{QcmAHAeVT}kql(t{pa8JMSOfu?U=1KtOJMrRoqS?hNY&VKVPqo^xV01LE<*nR8c@Y+|o{gASU-fnd{mua}7P zIHoERbE|k3QVOjr?!qe5YVe=@_%do66t>}4jEqOk9U_;1m&60U050QC^kJmcd@$v_ zGp@oj$_|U2DFQh!JD?0HCIwgB$+`=GmYC--pAdQY!AThrXV-cd~JDtO+mkV zB@+sdbIbbuJ0CMh{Q42E@pOC^vm-p3sgsX^-^RQ$Q<6hY2vIp*$prJF9~d9w^UPTD zOrSrx-|&QQ-{lkJoIHMMbhKO5$&`)xCm08NBq8uMer(6~3s)1)Hoq#ZA@&?9*7c-LeNUaxjcLcafL2k8%d_+#>|zv-jr^|5>QZQuEB zLipP5+rQ?g>05vEN9AcJ>TLJ>pLW(rX*MEB^5Vr&zT;26`+Skeu`BkwpKyKaZ~7_u zn@6!LRw5R=V$b|Eo4Zdzz4qzpww9FfF0i*(<6LGn?pu_as81QHgs8!duylxqlZ6V0y5wG9w{4&;j(f6|3-&KG&yGft4YkbB z$3V~Pl$(J2xYPleI23z};|PMI3k)Q6KrA+Tq}D%Z!9LzcGm4WhwLg`Gv(4l#fjgTF z5M+Z@*3Ts?IPnPfOq0GAvdN2Qd;IFGP+k;}0D%I`W0?gfraBB*C1R6}+Lr+26f4Xx zd6oYiW+qW0kzSu|0rB7`xqnO3chJM6v5;V`c=)Z>;qJMQ=UsI$tg=N3jU(dnEaQK& zz+=7y)PWHI4IHX5TI-_Qz)3yqo4F*QTHi;El6qRa*5!4^Q6qUx9^Cd&i1+J;2^5w;_|&c@*N5`q^+CO}Z^ z%Tl9>R9Yo{(&GM6eOGt^z-(RG_S0X`QxhnCsl|Opk>qtaFa^X?GKDpnI~*D*yeH3* zZVV6uoHVriJ%jnr9TZ@nCkP2UEgiq20GK~CkKP> zpZO(&`*eNQeegGo)6F=jKc3Bg{NFxJw2ty+@XC8&lrw$D+aGl@^EdwD$7!q&G5vRc z_Lt~CecGw|!N2y&^Vu=^`>x;fbMiNz+PwGuuRcxMUN<=J9Fxpq`g718&T1WGfB9Dp z+Kyw0KlY=aIiDVry938jj-9@lTuzuDd79K7M;wpaV|nlh+w-NmzOLkrq*I6x#mNWgqz5)exHWF2W-^_VBD&7H#JOxw-_wMM_-?2aVL#`1(O zv|95!VPZ4+xr&s^od3xNTF8vTXSlZKU5QFGIoOA(V1|hqu5DUm_aH}dp6*jhsy{sv zc|zdnA?)_WIEm9w7yv6}+%hHscK~yt$mTu{_OwoQ@2$fQDb!Zz-RJ{}=4im3Z!&0R zh8<0{OyGA?&q8x^74Nxy=0_MyN~&O_0jrHWdjuDXLy`L2hY%Zh%fiidu5NC1CZEjZb4P@FW_*@bE6jHSqbTlR}Ko9&?iIsPC)G5cUJD8$7qyFi|FmtCU1< zJaUMMVX=fzEk3*qO8`NK7ywZx;L{rLLx3g%p#Y5LI#8to5(KtVaLt5J&gA@J0%m~bCdG|B)UXH=JVQ^8yiR>e z115a=8VG50mBN*`2pGks<*!?YGqU6>3wZX{5V+qOLI%3JvUwDq^P{#SfTWZUg?(F! z!VIbuc00hOy>6*SrdMZ}e#ESR7BH)1a1xiC!6?xZEeM|U3^QOir6?--+TZz(v%|5& z^N0V`uL{&0lceK2RzyDLo;y;;H+~oG*a^}}nbx1j?4AbUANz^%U9_{^6RxrV6Lcc- zG?`YPIMi+nTODqY=+MJRy5PDHpkT6VW<01ZS8IVlUX3d`cVigO`uK)12lZD?4I&!ld(Us3BQfu0!yE%VR9m z3*>VN!6+1goXe>Wc_&8x9T&=Nkn2a9Jk}3B@l>{CK@a9*{*I8t1JD1EvvRZij1oR% z2>Md0Rx<80YccG|=uZ(G>j$@xAt26nQ8|C?SbPxj#p3YhUEeUZG8X;%ua3eNI7c0=$HRK@9y1NUcQ!oPgdZ zF13w2JmZZm=n9dED$4Tc|0)ua2j&98!-SG|vgOL!5auolwQhR;~;beb+QxM78OgaC!Byy;!nnxP6 z$9J>lL}$K5QD0_q9P=|6$7JS<-xp3pQ=TOJ)K9#5wnuz2xjNzA&Tr7lAOA1E@O;6? z5B$|n&_}-i)8~%XF%kM*-|;Sr2-dichsXD)ju(nhz&6V9ow}3mu~XIrCW`f*Pz8eA z(**9-^H}3iI(g5dko=E6@|n?NY);LT;F&||*9q3V)QNwwVYET?jqWHTE*`MY040>yObeB&3b&%4TflYX$q3gKBA*sMx0A05pwLMy~7jcL5^)Pc3O;<6zfT2 zAjW9eJ>&U3BcT6q|Jw~rCC9pSAI3%#vHN=M9-N;jE~E+7$y(^|(cSoENqA)b@4IKv zed5%00t&(1Z`rZ2Px@>(lr`c}4C)ePPZ@vGWhWa6a^v$SzRo^^&qpJD0j~|>0;_|V z^RrnSvWc>wWT&-GN|>Jo}97C7p%W}FHRJT z6w8RDM4t#c3q82&4DB>nHHMZE+sY{Wy`Wq|WB=F$%3F(w2m&N-4~o@PD#aNI^l-F0 zk);dP+H|BqAP@+x?HNcCSt2MQK?L}2w6Ea>Kb=ODQ4B|f62zcJ5tkcm&w~KZS>;*% zL{dV4KXE|5Qh{f@M=wprPKf!Zwd>rT0-P0n>wZR1iu&x?(VyvPAuivb`L9cv2moo# zP92wtAvarX1HEJ(Mt0}faY~bv1(C2kH7Acx<@|jv8sA0x10Via_?r`j^93Bo>-!bn zu><5U+Yr%L$sdy=bef~x@q^7u#n*nz+gaP)@A25%pzt1~@zXzf=ksMDUvR!{QXTYs zDaiNz)A#Wo`*XkQ=*K$I`P2W&&mYGR<)i=Xv*%<8fKORX`rm~~!^M5v{`ik7&!2bV zRd$Xa`c~S@U}08Ba4ZIU^0puP9RtpB)bZPY`^TRCK1zS^>F@YFj!up?Z#N-GLMC-r z39DqvwKaX%u~POm7pa*WA7kbe=KFErG&-|#N)$tie(Ho#8hRKejPS|#;+EZXf+$M6 zw!m0I={d$?%bD|`2&JqebEkzoUrdgDGNvv2bct$HVU_VV$G&;N+Qx;N)5-s^Zs0@Q zWD^f}e@eMRLfj4$P8mCZdSar;kD|QVq6DBkc;eMit2vm&7JxM;nBYLUc9altH%1Za z1?uc`axZ$)y&s%S=Wu=!%z&4P^16aIh2vM&A=`tHzIQc_U8T?;#}d+eztP66j0&fD zh97_m;X-k?b_r6&x@kj{QjxZRl)ElH&W`0+7rZ5iAj8h%v>;;}SEF%taCkv)W5m{t zDUNt@fB+(-@)XUhIN1Ue_wm|iCyf1#Df6w5I}+iDTd|)WJKBmtx%OXl*qV}ltU*@ zY*C`(vP~-~Nr@zv6{VO|l9E%2oj9^oaf+@;C7V>4Hc3e&EulmeL;@5E0u%`>hzAK^ zcL6N+fqmTn*Z$6#>F!_m^qlYe-@O2q(_-P1iiXO8P2<39rVTAqjT z7`tGMG41lK53@WN_u;-8n+!+leB>1#B_*8hSi-DuONc9hy`Bu91_lxePI_cxTy?D@ zS)m^EODftV3^s~H#Q`wG${r(0e6q}VN!dcce9R5B^Jt<*x_t8Xy7}?t=m2;{qAx41zWM1d9`9ciq^@v(HGi5-__r@@-<$iQ5x4b*X{Y5?PKjTtX@6z(OywkQEnZHEKeqnuQZcqP0KN;~C zerA17Ob(9I>ZmPk{mL&q&tLtuS4bU4?CtUifaL_nf9=oTM{oF=XP0e-X%3XtFVG^R0u2QJKnV0yRBBnT#mPR+5!OL93w%1?PjsNQ!>;dx?vi?X z9CV+IQ>U(P7{R-4#4?-Hh4oVFimNE5pxY&%)lW`u4$a{1Zt~;nvw@3_V*;(86B2;G zUMko$XF}5oI?S(wZLJf$_`EmRG0}UXU=&D(<9YM>In9GX{A5@>kVID#O;Y8lcoxmz zGa<(hg%JBg*jG-3!W1x~I-wP#vpJg5;{A(@N39-nNz3?_l;^p<;Bq;VV%!Efxa5p- z6mfHA(&~v`0V_)R5#z}1EqYu&qt`u--lDCz(z%7AFw4JOFVmAI3IUt;V*}6QNATvKm9o-;yVuz&j5gTp#t?r=2BE5d z#pK!rn+Dxlv2R2r{@0Wy03=`e!K4cUA~dDl*j7;n9_*Nh-edjtE`X~iBBJQjWn9&P z8HL+cw1nIUNn>li1A^4PTiqm2){-1ysa`??5meoS1As^%CM&6Ey63@#k(otej;iKs-6#^l@4=W=q_Q50q!jO98 zU-!>lv8{@SNSbtzqRk(iAXy?=cpBl7mMwul_E(=;9SZ$+*?;_(pQPoRVK~Ukdt^ho zgY&VR_^4P?>`=aupZHInmgU=OOWnme`yc$PcdxY$a1M^n7uJ3)5wuSo9H`}eu7C4K zAD}n9^=x&58jxoFEx${h#nD>&vmCR(yuVhd%)jzOpIPg#<^I?AtoSdE=3n^}pQS^T zuD>5fiPrj#id21B>H3DRxw1NmOIjSk7dOQAgW$MGYxPxK!9uKg6Opz4DiSY#f+ zTcY070rB-A@Yz9q1w2hvkspqM_*Ec2yCq|v`k13 zQ*dAhPqq=+KL(v?f?NvB0J?CEMGN+uL5QO)c$@K_0h+pd`ph{S-iZh6hbhOp9oEQCf%8hC#C!Vm?CGm)hlBIN8s1v z#}7R6$}O&$pCUUB9um zI(JJXtWnOoWq7P>|LPcrrrYxa+_il5G3+I^Eshc*g4RFsQC#3WeZZsR66pYqE;t`> zU!Afw>P5a_FGYFnP;jt&A32A$yzf*zYfLKPa1d;+!K552vxf}^j3eM4qGqc@*SE5Q zF)}+uWG2m0bUXB=$VL1FvN$S8*Mi^suiT&?|Bs&vU~nJhu#h=z{1}oEIefn4`qoE7 z+~*Xy#``5}k8KF3dT2n!e|TCz#L2=ob^FXa(f&5DVpf|Zoc&i2pa{*Sz!IgpSVgrPgXk?&~j3=ak0F9liiWf%3 ztQyBlB&otPkQwyyi(d<&dRR+R8SCi))Kd>tQV9HB%BPO;RDw5{B$O$D(hS@-&9l=M zwr(mvlML(ls1mD`{ID~s6J(Mat|BSzbk115E!wwQM8BlaFk z^M*Ew)F8lmd`=V@ShE z0^jI~V|f(;DTbBm!AF6N!o?J-2Yy|%Il_=MXDzpS&=HRs&iaLhLTDGuQxsJ$`-y`= z6df|{RE~RlQ3K+AWHXG{>-IrjL3j~>w09phdm5ZYFM}gO ze&5QApf(~i)TNJ*Z;kV`9@qcm&0g+MUhF+4)iz%4^XE=d3UUPO(@ufR#=bf!pZwU1 zmX!jH>;2+LLHA=BfcL3>O#bqCzYnL3N%s-fjHjPGmuEg7mop`W8YI%#=pWig_+Er( z&RJ^*8ilBsj(g$EDlsU~rH?5mp6l&|Lpq=<+bSU9YABAVg#LB_rlS~nVc9Bbv=zX= z$NgH+kQ%?PEejQ@cshM>R0KY0b%mscI~$fnXwJ{(1ck9zlzKa+8{pSa?t{UKGyAnU zTM9&Vwbmbu21m-idx@$+VD5-&KF)o!XNvQV0)6fA;2bvGcNE!E)t2fzjh+n&xhm&d zn-Oop=bhf`mecGl!`#)h4KBFJv`xzNJ1JEi*=P%sbrSCr9y3XVCh+4J44_uh!*d<) z(*6V-B#i+xB8a~oteBF4r=15t22eg-Gv$uud;BdF!O#mNoQxea!Z3iBP<2@7P+2GC zDQF#d%WWkzj^p-Bi~wc1i9J(EiY?}vv8VB=K&`6P>MFK4wNMs`4Bn;hsW zg*M5(sbDz1s4KO8a(H1L4CCF|0vEeb1|;wgh19Hxn!+yDasJ7pYxXZ??k|)&(J)F3 zl%|48$G1DqQsz#?j;S6SqLOtZqj)8mXe6PTa70vS6Y(gzI-#N>92i=371C!QWf<)? zOKgLa60;oXy^uKAc~~PUCG}V-AruwCxLTto6kaQQLnESN6Ra_OFN-}gF_sZ;JiT_r ze}I84!-cq14u8-og#{D8==(jQy;FS~w!;ZDZzRdEntKy8fpfg=Ndkzv%HrC%I>XSTz z;YfL{bPWE250+DhrIT0vuP79qHd-P4Qp6hdh;+U{r>GBYW1cp`Y-}QZ%oHKx;x^E0 zy~U#yl?-DM(Q1riihTe$h;kYqL|@B?alyJsC+RpZju&^QO7jE+S$b;QM+JFEN$4aH z7a;h@5Ggxpa9n!yW5Fg|KwF;-zE&s3=z4ug$K)g1{}>3I`@R^3a{x};y4+#gL`T=RIn;>ZA>>vqS=evB{oicm5QiTL4_=?Bxubr$kHNY1a0{gf-@3< zMx;1Nvt#7J6(X3j!q9{T`2pid$~a_W2-aas*>^ADswKdb8i&QJ$8Qu3V<9kB+{*4a zc7g$h`MZr~IZ6Xh75QK#ffPx1zM#K3ih>=Lq#a!^_&ywS5F1Ixi`vJ_cEvyUKYfCp?%xJ8(GejF4;}u0dM)>O|F)T<%vF>r zwo^vP@V)wXaZ{Ydt==QEz-&0?;R9@xru7jXy=a&yxGr1F= z$1}s%=Uz_D!S&y+nn4e$sN$GMDgsXZUPk>EbP_&9q(;&|w7q^$468jMa%W67{)Zm&;H{ybEBv3h_3>vyQiPC9C;+n9JI) zgt=9fLmnf<#fFuLB#))|FB9~A>C>LTL3A}(%sSK+>Y8@L9G!5S;PTQFhc=vU{U(i% zqn8-HOSV+7sKE>Jkx;;HSE@5KnV#(@U;`?JJmMi_DkmzJI(3yt!Imj@829$TVx5(B z$EnxNd!^C)RQ0P&**k19sKgIFZdjPkNcUmDILfmaK^bZi<&lws2EoCQti)s}Q#)M% zBh(#Rt*|(y%sl>AkM=0JM59%mDZ~IV?u3YSVx&$VsDrIzF_v+AU^4t^97np0^!M^; zu3#OaS|$)y1$W!|YfsOHSs_#YR#VbfRNQW%w>}@V2oHllYdW&H4`nyj%+BAffsDP6 zTNhHWp9eTrv}-T3KiMO04X%D?M}sZPgu4q{xKw>%f8CaZK6KsD$&e`pjDxBJanFjy zpR0ps3Y0LsEAV8(9#UKiuz&>8T7T@>;rcV5+((;mRlIF26&|e45*p%U+P%7wEK%;)#~EC2X;qNtiy`y0zH z?|S`8Kfd4ERM?}Fg{TBWo|ENOId-A88;F{EN87Fdgyf*zsfq3&@F#& ztkpN+>dunmD`_GnQcV%T!@7!Ojor!8b%2KY9Id{Lz5I(#@zIoKtnNIL18#$C4l8+{ z_{ehCd!mya(=g7gV%ME8iq9K8^p_HSKJ%$_m`*?sDaBM|kUNP=BbzDe3LABSdx?5c z;q_xE8*CkNrJRbh(M<+ixIfQqIUuMI1oYX`UQkD^EJpCGI`Z7|k2*7Z3a2AV(MRn& z1-RmKWT$}{EQUnH!`hdmIE%Rlf3+;46_jDp#BpZpbh8|zK*;No0$2u(7g*_7!m&Il zSqB+1`mdbO682x8?2&CG@X%7uP95bq9&1(-9fET9oF;NZMA;V{;FF7JaPWo(XWft6 z=X{!FRir_Q;z|b-8Wh~=prRVyfe5M+Z|)M5eJzbpkTBMC}Z;#0~AfrOcJ*1&C8EVh_g1ww#POj!B=`L zk*2-3(FCq>M$pq6_;1h^X&&hB&PT?Xd=lp1c+o`?u$VTX+yC65z?nKrf&%gO3;vmj zNq&ZX&*ODc-#Ed^#uj2^bc?biSiBE&>JPX~;hA?$Gz`lOwhu=2Yb`%U)mq-o7ihva z-anfonQGfL+IgNQ*{Uv6-qdfRxbA^LgoUE(?$OfP!z zwBXdEZXoA0vUEz&9yaasER}X^u#L5S2K+as=iGegL@_gABhEuOM~x6JoK7Isg47 z8k2Lk!xW}#C*2NAfzO20meTg}VhB?(j7t5bLY9bBs_#r~qC$a;u!n0%x6GWUrW0^T z=;Yd(k4q|Jx#+N67`JIfrtos``jZNV6N!lC3Ls9HVWlGv^@Y;Kdi_%2_m5eN3z7Y^ zoo;Ck!O3INjyq`WI)+>&quWZV@}?%lZKcl};r?szgupQy+ZJux5Oy4v^0xEM3iqg& zu9QnVo`1!q3$-aKZqYk3JR61$pSUB|=+IHf>OfJGq@#>B`I^R*C&+oITwn}jQZLQU zy-_LKatxR}ydjgBLEO6ck!LvS917x3Xb54cr_DS{oWhe0F0Y&zi60{l@NB7*a{wdb zK1xSkQgjkK6E`cKMZJ5f@U!3OpgFVmk!VhX@lqe&#-YTZD>&(naIcP=HUjTdU0gK+ zTdi9Wog}UR$jHoIp_G7?V(8FFq`j6w{@TP@fX=U_R!o9U4 z5>;x8i0VL+)goO85&<3Bn|BMi(RB~4K}sw-D6Uz*l}EL|IHl}CuOfWp0e|Xz zWxNma7#i0`f$5O{xEn&Q*Ez~L^j$!Z+3I+Ef*nQbWTrI-t!Lzc8W=={LqKU2#0~NW zm(@TOATE|T{mubO@w7&XgPGu{tCco~SL0S;u~ku`vgV?o&vFGk1_6-NNr7vc$onZu z;3W;(h2ih=sI|V`ek8J4+AJV41`f(2)Z_Gve>}Dz*{#D3QjS2|^#fXph;+5OpLk6n z!nW7<${1u+!2XurkM_3kvZc`+H)6w=wVkyJyR9rTok{Y1nkRE>UO+`iGK^4jQz}O> zKj26y07D~w-b2JQEAr9dP9xMJA~0*LU4oVV^;i4^KV8KS(E~KR5z_|ArBs^BZT^LL zIUo2fM@OJT{f(IJG>$Snm_Hl{Y_n5ezLeA&M5}=0COcNQm$EnRCA2TG{r2%TpPX0; zKGc+T*}-4~P%#obFi0cx?~c5|PKm?J0rA<2V%?R0QgZ_>?EA zv!Mq;@woC+O6rOLML@d0;mR{R3hj*DWhy90@lnDvlAj2*k;GdE$c}r(AY6bf@;9cX zB4rCIqa~J?f1Nfo=)fBBynru5iCq3@;u9X`MVhWdtw=dmlqLik3J$tdswbNW-cq{I z@b<(HJp54VRg$>O^)C_cEHYt|!9sMbUB`FR_6s0zdtO?W?tN~d{#{c7uxo69)^U

    5fwHrg*nC({D^n&M+F%(;xQH-yU`9XH}2bu|PASP7; z;Fj^4-ow_NqkUss%A$3f@S-&PFIMzO->Dt3A$)cf6d`o@aoJ*{aWSdRZLQ(D>Tx#p zh~d|3MqbO4i=_Pu7uyTIk?~c&s?z{->kv1frScbFf?U?)bUS16IO+EXWj^b6dIk;$ z?^rVhzAy^JXek;c;VUfC%r*= zd%Vw3)Kf9JqM=FIf9y?_ZhX&%jJ}Fr*bBy71v6^=NKyH>r(b)GzmzBmsusdDj=NRf zaESR4?mg`52{9}Dmd>|(d6_+{@`r<6Y=i~-*fllLXgDkjpX4>I=c7p7}(D`>vSI zt<%lMBIdkXuOme+%~~xHvZf=7;UQ)@89gT)FwJBp8_n$ zwU1S>o%~_i$nQ`wu1iVZaaGFPlK)|ElDBnDN%hb?_A>$F!^9^UuO%o}jT*us*)QHQ z@Snu=MUiQIkcS{u8XdF6_e6>?yxCsLdL5oQO8qLX)g)io?TfZUNSkqO)fS{n`eGh*Kdj9-N8Ykh1r`>3ECUS zmpvau#NTG03Tnk)lK^`7E%JE1Q>PpDGrg~RJ5=w}{0C~F80czxQ5-@Kq}#yKn_-w@Yd;eyWaoa z#s>TOpUe6d=L5e0s6}Hg^F~R__!Cf0n9Gmq<4^8ygZt0{PajYc8#K5Zz1+dz5`STC zYHb;c*b^;j{G{9u3@U7(7g~cWj*@#BPv@hS^Xo?S#uDNk%!Z|Vw|wzN2q=Ro0ar%J z==>k{Ov{wfNX&pyK_;7I9Q9`ObS|y7yD8_)M=`FzV`KBcVC{^iZ*RrGlg(0&$=aK- zAtlTD=sz*v9gpR&go5lyBfRj12_k!p`oZYb5HbY?flmH$a$;iTz!K$InswwC$p5Ad_qJEdQ)fhfsZfl5JUROnv z&55>>k!{(>;Ay5z{}kp@X~MZ|^uceP8-}#=zp@+6@7X+xpRiS)hTaB2DJ5^Szuz-Y zeXm;3yBRw(WsYP#La{tHvr>T+H5t!kQj`o>VWc5Z95L>*8O|(EBE8SDrz(+Ne+N@% z1hjUg@Ag|X#|V1PxHqFntzbl-N?kwIa|To2L!=dE}Rc%7PQn;^R7!I6=aofvoi|t|IByh`%bfgFgQ)BbCCwFRL}%g3zr^jA#n(kdCeQFCNJY$&^*2KAvT~p#8^(-a!po2k#BO4gf zVGgZug0fa@7^!~8_fYjcdhHxGWr&Wv0sdPdj_uD7E-vM~qghlCf;o3o$u1mp&4D?G zpUG4GTuO0><|wabj}!C`yq{4Lvt zPdga@f5~N1P3mn`bu%1B=biu^Rj#HZp(ZUYt9MxuCGnuil6(@>`B)0&{MqVyve$>& z1t{4q2xwdW0)SR=3hc27KsFT`dT>GyNgAhmm(n_f-!KY0C+fNRj`eiZOJRnmVj&i7 zbFP^C8D<_W%zH9_Lv?DF#uaJDsd{*(BzeUji)uZLdhsHPc81Bvx2lMfxP=ING@!VU z-FP$X{a{NZWHGv&qaVqXDHf)OZM~ZyvB~jQwuy|*Et(O#%!-~hbG2pLmt8X0g68SB zsPCv0Nsy%ib+ELeOEX?hO98R2B(Lxc19-4tP5Cldt^qF_;&#u5ez6CekAmLN@41?; zk(g-kko5PIN~5gp{A#WA_mD9cJz^floJ};h%JN~|D$i=e8_x7)@+5WqHv@A*HAgxC z%zW2L&}Ci>=rf-Q*n1)u(G{o7%4k^~ndQ?=yUzo-So>JF$dZ3kg3qeXM+gj#Jpjit zVI`0GJgBbPv8YGGELbH>v~`ka@;LRq80h>D-lqxI`FZ2oz3`O{712+d`il4^^5V>I zXDm;`YZR!;Vzbb{Rn`ZjysT9+UrE{b zy!x4mki}64w{8)S>2N`ng4s#Vq#~ht{7++B5LW2Jf3pZCAIDONuzqjpPvBimr;bl^ zm|!kXHsLoyh$fk=K0O();*xfrb~kGQ3GPR!2edSDC9|*=*hyGU$<(-j$Z|0;Qcb|d zhH;SyZfOo6bGB392UKJW0Y}0X2%(*qmCY)rO*I;17N^x)MQcAhCsSZXU*j4qjH|Y- zAe4=R7AxZBtCmI9maS<{l&n9wV0`RV169E(4S)=0-Gsh(t(-i=__9Vu} zc0iZ;@jw!p5#k2~#ACaIgjr_B*K)%(k7Nd`w`>PEw92YKCI|*lgsT4Rd;HG=8jle) zoBAjUMD06)iTph0JUuE~eu}%H?}$;PW4*RE%X>!V195yy??^Elz8+R{vIvhL6vHhgaFnwEC9@7)meCa;gydNhbTJ%i#F>nGksps@3_~5Ez4U zu=G*2v@#i>0tB?bGzMCae*bxJ%boy4rnoZe_BIx9#346m-Aco>;ACpO(j1-whjCg? z3a)XRmaEPS8SzPnC5jcvGD}rm{+`gW%wsK!Z;7+XIjT24OO)3~B}uHpHZ^w=^QgME z%HgKLuhAZJL&;@4XVtGcCISV#N}6EDl^rRV`Wh1*M74AErGA(j5;zttyLbOykQTrH zB~Y`7uwYJ=dB2C8;NMBC8L6hBvDjm++?|LtIGXSa(Qxi3p6F#6~ zsZ~skx^uanRz@3G{R|KM%-coMY%@%;IQLn}Up8$5#3&5Y5ISesHTY{&yT7 zSVKORyNuC8mEPnEVIS!}jkM~f-0CZ% zG&aq_=6F=9<+wcVbaJm8oCU=?6TU5@rs^Bs5dafQZGP2|o2tfup$1D z2bpyzoyVs+*8#ABI=CuFxVqansZx_L)&gl+(~FL8Ho_P`@Q-)pvc%os)I8k~F^}Vj zY-Y`9GeoM(a1{XWm~jAN`g0EHAhUruScCOE3_y!@pZce+R8AWlO&uEzYZ$Ff9Rqn( z$$g!w|L|PDp`#(B1#@e)Xs@tfK5o;}HSH;`Gne3Cr!A}bB(sc2)ah975BK6{B~>NY z=GE5yIO9&?6v=sM(`e0Bb%k7Rkt1wcBe03;RD-sbT1f=V!P2@gn7Xoe+(%scD$zKB zm}>neL(QH^un@N+Xb_A+tpE8_cda$-RPygYx>`*COg{qJ-)5Mg`&h-Snu8~r-{S9S zfd@6iaOe&%J{WW+xTy!zYJvZ1T~vbwRo9!$80O-Yir|9?RWGwV_js9VGk?_<4u-~4 zH+qZ$;kX6T6o;vV6A+@G7+W`$-K2@wO7Kg`4lhh%Bg$&l^v} zyhzhDwzQ%`Y)3m*J6CNLjgMBCs=8H@d+nTukG~J)5Y*hX1dGp%5jWa)-g1yxhU7~?*sPu6)ZZebcQ7O|Q1W#S{+GMynyvxpNWnI-n z6Qe9R(ffX)tc24v*s78zgOa&54soh85CP*?>6@8mabfXdmKlg}D=pE)7%fnoL%2aD zKyD03i~Io^GeD$(oS9GE1cz8)j)g;?{;p)vQ!UdSn+6%Bc7f!YQdm&9=A~wXX6n(g zw`ZCfRNlNdAP%`?0V?(}CoP#EEV?tWUKVQev=)mv>z&cf^_M6y-5cOc0SMB6#4Ed6nCbRlgK$~u z2bAl?$P}k0ZoaT;pH`@{**JHkq<$YIp(TK4w6B48_^Mt^bipx9(1B^xFlw|z$>@a4$ff9+Y zYo%qewl{RLa0#4zQTV3gV|=&Z+w}GRJ)ln0-@h_jllh>yy{ONOKT?w}QG)SrS&io_ z*c7KU->`WXxwPeI;=LAvgN#n0PhG{>VXy{Eqq^3$fxu_`kIh(riyi$(pIX!e zo@(XOzX3EBmOAHdeV0=QZW z4F9`3{bxn|_r1gqX#S6r_2fPY)!I|^3wr6 z-9N6_?I-@;#_a6|0m$|1hTGaV*7sNYIJZ2pCqAj~wSg-Eyy+|a*GIXHHQjgVy`zr) zA9UMe;8*`2j*XlPIMX2Ly`no88K!z#n_Uq@Oh&5nnk{jYPF~Qe!QPn)r~VezWGp_S z-?x|PQEBUcR8cHDY@-MFm>(C5(wSixVL=@`1> z_u%(^fA_9+|F{opxnP_bnCI-X&p!KnLd7x>_oG#toA*>1RhPt~<$fCO8b@(EApBtm z52r@l@ZY)!Kl%nVgz)&=AE8(6FBHN8yrH;3#7WtU8;m&V_s>2h7uP>E~7=bOfezmLlJlE)Od*>+VOexm%BDW#hA69Az46Tsyp z6$3n^&X?V`?}XmVZ9}i^dQMiduGy&ebv3_mCEz>0irjY(b9&hRyeJ?Ytf(`fEXh&9 zv52`4y^wh)thmk9x7Wk9X!?gsSqv}vQXzNraW0aCU+XHW?eU^~@|m_6AyXvA24`2% zsRgJ&uJ+ykU+u%6;3Eu;uZ1JIl#x9C8P`3u&~a5#zsC{#Qjd zi9BdK1m##{gj&DIp?`Jlt%~0FMHp; za=kmOpLA`%(|*dK6)Yqw-);h+ao9D0g3PoWPcJZg!&jSqfFx1<7BdXkALzZDotqUS z6M8tG+(i~@NM>%oKc#XPwH9M)7#}C8vNG-R|0HFbE!P$8UHK|`Q_AAa7!?!eJ8Rj+ zG2YfL3B2QqIm5)K&oblj<`hm@>aC(`?V+!4mtP4rI+E6H^7nq+_8H9tTqTzi+dYv+2pvHxT}BQB)^m0g zB;MBnJ0X;j3Z}%muBT&XoWC3oGoR*>6wY&Ez5Vhg=>avHh&xi*=COz3yeJ+@S6FNF z!_o5MGSK7{2S(-+!)m7a?b|L;1#w3qJTg295+w{Uaut2HN`IJb_cjjKuvaMA;RKDt zt1az3-aK;VqGsM1zb6l)M0ecjxS1AG?b zX(X;&0?Xg(V9;ktL-4y~sAPrSy;6K_oAqfAz)Aa)o_^1K70m#gHQf)pOd;gNC3qEEa)tcH*hVwTd=2brd$CL&@9juQt=z@($&(GGBl_zh^x zniUDDjV_VE?wZGTOxQ*`N7$NN>GNwFHai6JO~)`KZcyH&T{Q zs-_DrzcOxy*k(FW-Kl=J$~7Ef&n*5W-a4AwYWJc}p(STX(9j9XVCA=q8*l(wHtM## zBYyCyymp5UbS~DS-)(|jNn!p1Mh*Y1pgnN-0yBncIdOPaA?>QSipE>;{@75d2JqDL zb^FHz?FKX~eZ`)vfBR7WZCGwel%f|=l-M53H|C1@mR>wS1%CB#H=)lE6!-}6JoT$7 zKKc-4q`hX#i8HGooxQWvZVj4L5x@H@VJ4j&H-~fDcRPX|e!DTz=DmVn=0j*rkBBp! z$V>QkCbfr&R{r#8@~(x~?g?_`P^Uie$umY0yYEL7-El6sgxK|V;lwcO4$H9U%KoNJM8okNio&|ipaWN4{HfsGO=Z;!QFJ#<#!LF`Nspr zhdgm4jVvCOCUgzaM^;5(JCND!je?GR_z=;_si)I@1-m4fX?>(YC>E=GM&q@RZiIhj zInc6TySDjHFL!AfUXPa!c8&*?;m&+<2mO^-IoY5pso{b-w1X6LpFwx0Givkk zLfJHW;#wRuHmAqg z-Zjxc1ukhV@q~hP39lo71X2BO7l4fREY8e7N9NQcYCZOy4*N6No0!W#R}YF5nORCx z6K}O`$YcM~#ZFWzDzH$whs4n5lqq?Wp~sNCmz1Cyq7*O>9>c8)c5I3?gS&{T9bL!a zu8gLgIgIn-Jr(`69tRvWo-RK~Rz8J?W<)E-2o`xNXU1L@B{+~kA`|xmlN60&Pn~dH z_7Hr|#+6l$QasUbGag_c7WPUX^psYx-6OmJl8#_aiS%ON4G_xDK1IT-HqQm6G# z3pE3FPFmV5I2X!2#tQB)so-h(nwZ6U;?@=E8>q8S_~F8T^o%s(eBX!?`jhFlm8<~U z7hB3WZe25ab=n@~bzt~2jIkk3`iGXWdd$NSkWPL-r?(C=dQe9T@w3<12tmE=(>uS~ zkvUSf8T(ARRyxMpGUwMOw_~F2NFr^9f?85v{@mncc|RzSIrc(WZd^Q=SxCM}C!sB- zReqdSs8^phJ-pcL@BG7vl>_dC)ERvDd6X_r9w*oWYg5=($ycc zd&z0iC)cvf4d1V}UjU2MKQsh@7;*d!Epq)8Yxj2G>;%U?CJ+aAWZhv#DUf@!aj=-| zMn=?exwoEc>`Q%`>qS-=MLOU15c@YT#e~9jqi7Sv}Xx0k9zD)JqH$m%rV2fqiO*mTy@HLZUS;|e73`@PZ z^FB2h;q3Ps=A2F0;LhAme*4*5#a*y1t$r~56C`n$a){a0s+BW>tB0oabY7PEbK8;D zkKSz@5J>!=t%(a8zk@>4(_=6%mPz}=tH`^Is}|ir%xdJ=WCt90nZ^#(^1NQDKd`}$vGj5qKyVxHi%5m?FHr1-SSp&ViNy7a4FrX*F67*<>DFM$tDF3C@hmq~&T*0+ zN?;<|iqxMeQODot`2}%1xs(0UuUOyea@h2JOlg4&!62rAM#1Sy%Dkv0BlH0L;nvvN z=f@LgW$yDJLx>!=4i5hylgy+)Nqzd8RyVt!j7)Y<^RQ6S4B*x+~KeTgy zHs*K-YuaZ{>{D?KveaQTMb7XvVJ`+mnL*wE8syDMyE;jv-q-Vhq0%-Flz>%zYW-WB z`K{N4c1>;=V@J4#Kx0SEWgpSgA4aW)??=rrIQMQM@3FtG!-mt0>~x*vmYh=zBAC6@ z8f)ZAGlf0L1fSFb;|-E&y+StQlGe_2T$gqE$#Wx2tVRf6^{=CXv=~W>0~st+`Ib_@ z$lVxgI!45}6*rpP5Q-G&QC{Rrcod&!K@!)+8On^iBiZn3f1tzuY-P4^nvM$0Yon!* zmqU$>WKnvE1mb^bj-RJ;d$|J)L98>t2`3_%Q|8c64cpLZ_6%5B;l6h zAX_Jqmr0BZOHoN&45(y=J>@sDDBcXc4-*4)(zqW@)18a3^^@WmqOv!K5+@dFqr$-O z3P%YXdYi8`R4(#+lL(>IqGyt@=CNm#vwA;Nu zS}wYE=%D5uLh@g9k%J}?wug-n$nz-egaQBd3NXNx*2diE^c~2>W66`*5NagK2t<5J zh=Yc^BA-GlV&x&@hb? zNyBv9FU?f4XPRrZC2zf~Ew{LB@o#7Y1b8Ps*Rfp{9a_U0u4LO^f|ah8uY&T*_?L(? zoM+5Uri&7rPi2J~BO8`l?@#NSDyyBbqLTY@P6=$ye{9%`f+=`K*XE|8_~Ebo_2V)F z8XdQ58-IyKbA-}9=#liTkbPm?NzuKDr+QrRJR4b{{{BMyJ3Ew(-4IfV3SvcBx}gEu z&m?}}cOaSo`%yjBqyoz3woFI)~P2z6)-ksRJ+53Xsn zZ%~prkDh&ZhT~{)>J^Kt2-HaM=5OM7ylNX%?XBC+PYJV4DLiAFpN?Z*vDica&f^oH zmUPv)ME{`lJj*hV+MmE>5kxlEnu*>kUb^AC0C`0s0VxrP(PSW3w--N^HA5ytAS@2+ zzk!%dzJvL6sMi5L;kNwbMw59X5giVMQ19cu%M9w9it-kR%M+c3bUja-+GAd)@3&t?NwJ+BYwX~slHQ3&U(;mJj43Q zsVS}$4pXvv&6o>IOhu7KZ##xGi%WU?cMnTrttE|cZ)aFtC%>T+QPnBdxHBx)BSe+T zMFk^+WH3sQX@T|*2^fhcs!GSAC^7=3Y!PJWZ+3=vNw(nPZCZ0wyMsDn|A(- zL5arcmpxi+jF_zT%a@W1EpFBN_Wl524bwIFJ`4Ki;IsvZD_0fPp+pu=0O3)MO{f;G zM;^fRQI7vGJ^={@PX%&2-VShGDdpbp`W#Hi3q2^y-qgCRb%||7^4pl~69E>TS3Fn& zjpq|W#?k~sZezUL%533bY6pOOtj}uSNY@Lf7!;4mK_r~;%Nkld(z^4aY35;x4dKsS z+cYH1Z2*`fWZ4t@B~4kHl6YXM0yhdf>8nh{PLDP35CNV(9LhzTUg=xabDriT(SpNp_x_g_2x33o;O}oQl3C-Z{2-^LTVg3ifGHkow#AxbQ zjxxkOTMd}So;w?7mQ=|QmtIf!dj*(x5fg@UW(5(oFQYIfl=6JNyIefu|5NUUE6dYdyZL3%?QTcYDmUSPpeLwh8t zk<*RDe|!z|qu)-cfwdiIOkLifuhUQK#i&rzY(Ko=td@P6Q zbMX(^N9w~Q!=()qu@_kNaP_hlVs#Fi&}A;oV1e`B-Ia26FV{ZQ^^-jroE>*VBGH?dn71J*D$)i1DcD+WQn#hrcmA)8FsYnZK_lx(_8 zD}*ZZ4pe!S`jn$_rMCBUo*Ah+!!Z#arCjpHaLV)#p80hNpak{aH=O}6 z0W;`pq%&qSx!79?{tZt-(Nxo`os^PNHK374riHqWtx%#i-g4wz?r^j6aMb<-(5ahI z?>J_FGQ0$n0PWm$S|r}+%|V8z@KJ#?oHL-n9YV@6#tMS9one3HNjL1RD4y)afAW*o zt>{pXB9QbM^LQKv_7uWgk|`sF5ELbg~ex-mLS)){-F znD7m+?+xGYoiWk&r<&vx_mnzYp9QY+Z@PC6r9D22^-oD6g#B^m5ZA>WUj)40Pd7eo zR5KS*PjvozHNlh2a*^yjw#;2Tv%lc5umE-*e+A$};`;^>%tp+y6~y96={NAxS~w#k zBW@zzIJ~go7s11zz3$vz5R*P(C;8v~=D+e@dy}JkfdS4s_Px41e&5#K*1qOR?8U{S zCcv{*GaKJcbLquZZMucruMzQp%GXv~V@9+3a}(PpFCz90?1Lte$dI@AXbH9LI-jOP zgq|it$zOuWm&$*)y_#Zhq5k#@=aIl0^0h_QD?;r&_{jWIS}+2RuEW3+Ai}$P&!`0G zZjo`Vk1RHncmXv7%lWpox(`sNd)KPT1_xE;zu12?1H*^9OxofNei4r}9WIS@WI?C+SsOGyVMEvQ=FRYi5m_?}piGc%;`Xm>VD88$d6PB-7gF|9YLd zB`|4jtyh1w#0x8vT6%oEV|h>PkxOsO+j;0D z(;_+@sPVpGA?L5w2rKoahn}r5x}JZYZi!oqHkRL|$=a`LKL!^M3q743w#87CiH~G~ z@DDy@YsbD4JWsq98}+*e0Gw-Qn@hp3_{>mS53Oz4PJiuzSz1D7%6*0fgF^SgK7;T~ zQ5c5S%Tim&Lf0}l7;vBszl&8P1ZdK$P9$8=5A;x??x;GQmh1dwNF*)XrObJ@ZgPsU z4C+40?f?xlLB0Z=0D$lO0_*v}V6t^mw|5;c9cA2OvBj1 z?M2i?>dJj^gjrXY%otTCb!`)O1dD1PiX@n08B8g?kAN1Z+zdoe^A zV%nC_BQ+>NL(99@5#c({?-uDjai(wNPwuZW)7t=U#| zUkeNMmF3V*su*dO@D=s$3tU14SuHFqQO=)(sa=~iOLgT->Z)0y;l){7@FIGFW`8A*tE&!o?IR3>GV!vj!L!*7 zf@K;qK|p_m;Z<80xujieHkqS3;b@@jW7w*nO#sCUD)NeNtbz1lpc88r5nC#=fDkfq z@eKYt>V(ng#I3>S2{fX)3KYBKk5v~66!D=7Ld=H}IOqQb#drq=u(3A<`ntY(Odo8M zM~{nroJtwJYdnOTVr4}Q8}ZG!zkTO!n#gHh5l1DV*FJ?3Db8`dGm%xOA2`ZDR-nBc zp9%2WYre53*4L<+4yC`N*&M2*l?J`j&Z<%kn-NfnYPN#L@GBpb+YIGZ-i^FfDm2t9 zJ~D4m0a0(78k}v_)~t9VC-XX9j&GY{anPr`zb{BcT>Jco5Z`eSoEflfGHhHj-{xgW z*;6w1uE!KG2NOqtK6jb)UMMtWqin8k?dE54dB6naHOqK(30Nl7wByxsjmm@u_Ih&( zo=`Ni;^fyW)eg6eVtB~iVtH^ZrJaM_ONtg>BvOXq(flmkdCb|*8lIruCkw^>{#u!C zMC`r#I3Q;J(>f&kMJ{huQCf)N{MU1}k~&hlt)3mo_o}{m+xCZ)-m^ToNk7HF@s0^l zO{cu#z~S%5z?2{P5naq>HkqI>GU-=Pse1Ly+-lt0EWh?t>ugRbOy-g*3wwq#_L2Uy zX#Oo`ap{AMC1nhXDBM}Z_PBlNm7G_VKNPY=ELPetoqa@)KLerz7`+5+UX4TYkO-ML zBlg6X$<4p56+eb-$T-HHUP4#%+LVOAn-mY#dv@2aLg(Vh0;U==`Jeb~{|Gc251D)+ zb!4)5WBB3{t|JbfsePsG!Ca&MNT)9RXAs!O|MHKAw+Wp1AncRe(6KqXxp;qEm_dZ? zN6o@{aYXN!I-3WKYV*kj8tY~#>X%C(v^wmb`8FNQFYxpAw2ao4@mNF|)vq5ge6A6J zBiQKko$UQo{}u#j zP#Ff$fS>v^+Wr@Wvj7@xu6H#HM<(%(^F?9*G$C*aMMr{-Faor!=BKJH+%jOi)(_ZoOOr!V=krtWyd(V67Up=6PWa;mF zsx>OnSCH}}a4+99h^k!KS>qyOig>`wI~Gc#?j{)36eSYgiY1zrgVAfh!)s^VfOJeA zOne|(1IQTHX+VTqkh%#j-LUj+)2cYha}(re=@&QRfZ+Q5iqQa=Dfj{4FRaYj5Qa_d zW9R*u2|!6qKY>|W3h)yl(CnjA5MCD~xZv5zVL+UH`$SXpav?p04xdbhW;H}JwvH7Q zkCtm8`?p@lvK|}dLv@jkwX?y5VPiJyM|weq;)RMq_)on2yX1L|SXeYoboQh!WN5jv zRez!@{~m^=;x@DF@-)YxFUvos@j4!!ZVnAY?hZb#+|E#v=aM29ERk&ytx*4vTHH2{ zgBtECPMIVtS5HkETL7pe@c>8TDnHCgtXeWzpaeu6b!KJW6e+0tJ^?22c6iOQhrzd_ z2Uv4=?~Y55ZM(r`_#y-rF$Z1w_iHMM*>7eD%j872y?+FCL4I%+m>(P?oLt+1*;GDyo-^<)Ye>KVhvJn=v8Gv@`ee zCYj&$=!0Nx1;r+WqF-;++)yMO)E3fAWV>SG-WVgL5)@^I1oaDnsudV?tK zt>dcSn6nDL6g(RZSZW{r!#(`S@2NOkFed#MH76r^T`cl0+9V@uLz$+6zuKPF>HCr6 zR;2sO#7ck`fjhJ|lBV`KesS8%W76 z8D9eM81rQUD{S*`>VH6>ZvmWZfB#v6yO39SBW$n^Qe+Je#o=*`37oxrSVdlmx`~sQ zvrHw=G;e0$9)-75ON%v9=g`|VeD`3vICFuXBgx-%lqDp-ojd&6tRm{Yr&bd)QXqG}lC_3w>klT&KXS zbJ4J{K*ANgNnBgYT@;0B+`+SRR*IuP=ta?SjNNiAUl2cSUVB&vLjiS|*&WGnVH)tk z*cbMQ6+6nB8ebR(X$S{i3VPmkl@5oQmK;wtgrIr7(U} zfc9|-7mjp&sMmc&FZM{<^eb~z;{$OHj^RzZJkCOjCk3D2K>TuUXCN6oJJ~(Vw67qU z7d*3_JmIfV1`ks%`Wt4*TXc`YhVHnqa>N&xPZi)rH3hqSlI#na==uw@(-J5A^Gj_x z!6}LYZ)n_id#x7jC*0r&5>r6)m)?Atr6f!Ms8A16t;Y$`y91O&Y&VN36MTC0b3`Mn z?$<2%PM=w#HAZo>l|*(>o`UntR&Gi4fd{?OuIfA~mo6tX zQE{$t6IsvH&r$)@gtQH8RGv$C7q;u4NZAC&SU-~^H>K29c*-E0a6gAvXbNgj`D$ks z|I#su_Td^X1m-W?aS0b}Jt{{|M`D5VWXd;5OitK`y}&D!z_@l~{4;)=3tDC7n!_3t z^Dy^f8{QO41$1O3_yusA*X5Druhb3uA=NO{sD)VYU_N?~Z$C*lVL_8Q`cWV0g1 z5)%>^)w1D*n{Qn0)l>N&yww)7Z`F=$u}3YkMho~rbLy)cNFS~~V5V#7VNGIP1BRO* z)-VSwT@8&nHvfyr{jKaFbZp2%V5q_j-Nw{df)Hn=Au+iLvBiVc{>mt3*@9?N-Nr1< z`DzMq8ht5q`~YeE&z{tTpqr6esy@C-OTEr%;0?9KOGjuSD&i!rWDSoJ8gFf7Jp3f< zYzAR&0sEj}p^3WErEy#VyH%PonZ<^A^$$2bQ}%;qMBvtyA(csz_(2(fIia=VzpEHV zS9{1_{(FmyLq^YRXm-Xs*+)%#qCZ8Ct%Rk?N>ig0qZSfxNI+9nb66ZgVSl+;7K&z#_ns4) zs=q-nvlaOnn{{EKw3W<+ z{;r0jcN(mP>S^Is1@u9v+L<<%d|3wbE}Bbk-b~VgQ&Q~MWLoGaE&ZcOUVHQ@Y1N%S zRt>XumI!cdMB@5tk2C;hXdvHojKHMGjwmuvEF7LPFjP{Wn1ew+sRWM0&n0Q_2RHzS%lc|_z0Ha2-B~21N{xE=j?2QJ zOh1}YlGq3<13|iLoU@#!Am@I%ejJ68`V*a$YMF+6=|7~W3?7gj5z*+LKc(jC{6t+r zIVyWMBXd#;@X|gk%07Fx2{#L7A-*WmFN+Np7xj&5)2Fiw#hXO^BqhY%72b7zmhiuk z{>@bzUrR-a4q8m#0T7g-f`Kk5u}(lF_0wktU1*dddr4%KrzV+&$Us37bFD+Iz-{Z) ztVx98zNKcS1l#h8v!{@6S*Izc?@@=lU6r30fMP!oIYt1xAa&!(bAprgk9Zf>b8E~B zdxZ--CWg zzoml*ec*oHbLn9r0C9f?JgGwl5wJ9N0*`hMybzHI?w|m&=)a2wqXdbTsDZ{A5$E&2 z2Y%zKA;SM=vX%!S#=-&bi}+40)PO?!`C`@A!$SE`-$7vl%n%?& zH4|tZ08=K(d=)hVC^|@<7cn7EV1fB6LI^}>GMaZL@b?kDeO?=`K}j#|%77O=Uw{qZ zf8RX+>w^9KI@f_`9L@9PJMhnv`@bJ5h&m%~227a!i^$Q6=31#)DK*r{VjW*@3h2f4}uEcf6;=K3iCz1` zTC{S&SqvXMEy@4uasTJ8+<&JJz!UXMyVlF^4?i_7Jl37tFAz-QFRv)vh}UuyjVKrr z1G{km3{&lkIZ1wP|NJpOL@28LUhGE1Y8#;R*_dJ4I#Cp_@4RzzpI6aLPf_5`7=+B0 zMJ+58MHH*3T8CRtZMn`}i%)ZZ=|mR>H5p5YI#z6hfM0%$fYOnHG3p5FptFG9E1naG z-w1L@z5nezE1JqhF46On$!6!F7818X&|j5DlNGoAxinoPbFnQzA{1hMQAZMMj|fE1 z@9@_nof-e248T@K0uRLcvNdFO1)p>L<96ahH{O$VRv+t0UTI|Atb+B-#Q9y_NlmS4 z_1sT`@Xfhz7qu$=4UQ{)R#-+r_5^{JSrh-=xel9bSpqtwpn_+|B=(e(!*oTy|#N&bG!;Y12M1s1O^sU-z=4q}sO4bAcbXEYex#O7#VOBSb`) zY{-y0{jLy6$hXFC#6s-e+XA zb{DUO5SO$^vFumBr1*@ffeFhf3U zKNN%ySE~YPTK`$lgAPm<7=gq!~Ru1h(Os!zS4#6JP0R#bx!iOW^cZ z{lVDdf%Gt7Xe^rvVB*d8XYvaL^3;rgX;J_Oz(6dvYJh|xUCy1jHKuE_J)&s@Gz1jv zk!J%1`j}kYTX|a!XTbZj&0 zmhz}FeP*3>L}EGleCv@&z+g-R#+s%(LQmVeKjIlwCjgcHUS!Eh335Pdg2bvh^&Udww7K`~?sGw0vw&kst+1mo! zD16te8`{ml=L%;3CS}f9X}2cg{&?mSbJTj(Mw2dvkLT(kthAGS9zSmB7U46a*+xM9 zqsMdRsZwJJtU@6e&oW~^1u>1LJTVHVzgrXAsabiDyc4gLmSml9zJuKCd5F2IQ})tA30Rex6*4}D_2nBxFu zD2Vkr4FjtLtA`qJkf0%kg{AKQ#xsQft*fr=kU8^w{f9Pl$FM1wEiI_y zz;p`s2sk9z!dkC%s+}47iP-k;#0K+=3PLm$xj2)A78Cq)Ex&u`8p*~?lN%Q(n!dmN zk&`i(HKOKN#A2B*!!ls7NJn)9HQ!YwR<+ha>lCObXPueju z2aP9r?-LXb&k%^nFt9P`@@)-nIHZ2w_@r@6@VCI@HAZ0t=x0|7b&Fy`c@5BEQatyz z?;V)vh41%?4b25l?{P9&r$~`5#^}URFS5UwPUM0T7B+Ji>2BQ5cg|)&@a$g>iiGNp ze8dp6%DigX{<3)D!VwB{0DXXK!>4)1kiY{>|77$hp3%&9nU#31#^cv8s#sZCr#Jk4 zir&Sl%WvddTP!Is+QS%dKzc5UFE*K0EMM`gg51|pX?sM+I~V9wL}%YJF~>0r8@n_2 zeaF*MYC`F2d#upLmY{1qscAJ?@ly1m|24P3L+8pyF^#{g#RVY=pqVTCjp^4rrJa#u zn{)czg4Sl=?UlTW)P?mz%{-%8h3`US>x)?*VBnvNZH`_>T+nBU(eXydD`=EaJXQLb zNtF2o-Z9Rs=B}55tDW=&L->7k`65+oCCGL=Vf!FbwBEWR1@pfD$A80zPL zkzHBs_DOSQ%WHghX6r6{E~_md;wbnHfh5Jgbh~Zw%IvM$SkAtX78Iyt>@d=-{0GbF)ji(RH>p?Se&BEfL?-!x9{XWGP+SiV2qnM?kPg#jYK;I)-L5$lG{3l=ue zmG^K~c53%))T;Iyy`d|}Fud(`R1)7bIM6ht!;o{AyVi5Se(iZDR8D8;4dy(V_o#smc6FQ=AbHIA$hKqjc1 zL-?(9ELZe#$`V`R+3mJ9cTw({VEQ(uuu+LBhF*ba_FM3~8Qb_~xdVA-$bQ@TdZZp+ zQf;!9r&ieX`X~K}Eb}|kk}|y(WYzMds3ot#`uP4XbL<{xZjlx1@iy>!aZpVP?n^u^ z5D2|QpXOgl_yOtB{x5V-!Qhh`500y(Y@PTC4Xg_DtXT=yLSZ#l3Y<(1<^**xe#mSN zIQq2f)t*@*88YE2q6XvN$4yl^<0S71xr%%*5!cMGsPhTTTO>#;^&Js!mI7e5V?*)G zRi{@dbE6T5NFH?dD&E;9OWfuJTgH1R-s+6(D|cs|r)wQdJ}4%Lxu>~%#*9UbW&u+#E`d>9 z1Te91 zk|g^ldMYIybz17@*<`KJoARB}y;VW~Q|JQa=jRY=nE|^Y0!k=WJ;B$y%_?l$2jx5&GgSR`ZcTM zDlUTt%=Aoy@S>jy8J$S-5gN{zrruBwPw;gpB}sl#8+=d>|T*p|hU$o8Y>iA!OHi&~ndKg4+mSecjZWK+4G(cNfkZ@)Ni)Zu9k@_Do_ zq2*QtjvHrVMr*buWnHZsB&%PEMvLvKwRx)B*eGhzlxjC~9bsI=CGhn)cEVCy*hz~; zGtHtuj*EQSqD5oRVf6m{`xC#)g{%+E5}fV_Zk~8&LM;6T)G;h3O7M-z@EK-04yf@a zki0gm!22)V;wgcKJ^fWbRL+W@xrND#NNpY89VRYC15nX6yV)u2zRB6POJ_=vm;DiJ zCXuR+DXK1Fdl&BZot$R3kuY?S2@%kL8ANgm8=M1T^XStAQG*3D$a^wB^D7b`!&h^m#L&r%sVe9ymtX-3QA zP?u9=P|;!ocxkIi_!T}x)M(<0bsjJ)W2k?c`r;ELa*qF?O#&U9>$042-BmktwmMBU zS;*>-A%w=i55?jbj<0FKn%#8e0~GL&4}g=qfZaszUEAFu-N(0HXQ^bgpgtsE-@V$8 z0aUf-A~r9Ex2@}#pmF71hnDs*wtnKpsgo!w{2SUdI}w@YyQ8u9U0^V)V@ix;I!d>} zOXN%?5t;Y)R}|=?1RxWzb=NNI5Q?n=`L>V7HA6jF*0mC~CD03ZqU~a3P$iYHQm!%? z$sP|AAG~!Cj9qNxxx@b$r+?0eu-Fj@Y=z9fYC)Jpp*L}uc4$^hR zmK6u%u?bfKUa@Pnq53#0`IZoJMoapKNKb`lPK&Xms%S^Z)p1(O#Dwg zw^9&6NhB|;zZJG#MU_YTb!{q4J3JOj7yP9MEQ5f%0*KroMLd0ng=Gq|~uS^^T9bdJDNC!UeO6XorXG(Pjk@M(tjXTE^YGgindOk6g3;cd#da%lzE{RBNLdkwNNr4Hg52y~s%T ztxU`X6z8r?eIJ&P^|l=V=ELs^K$|x6Zi&C&LAi^U2Y`(1Vy1b5hPA|z_L!>gnoHz9 z`~L{5;@62fx3sqdibp>x1Bzzr z$IDkIM#tUg9mBNs-;T4SUu)g(<6PW5j@hnYZN$^LlD}IybB#hltp9U6@U}+aU@5i* z=@-5h6TbGjNn&sihKssJ+dZbo9iSa*b=avwmZ*KHVlbOGDese;!`(F$yz|WT*!zAy zDd%BK`B^{;0DJ$)Ymsi>FY`!o$md!6J0blv#U=7mGkGrWXa~O5Vp_87L43}BL!)vX zWijOAC}B{ksXs21D26aUrMt!pm<2poTSdi>-{y*fs~>JMpOUfV0Rs7xt=e@oJR>Gx zTXdIRaN5V+R*25p(*1CM0`{spH$ zZ|uH!|7+KCbaE4bSh<44!g~TM^>xE|kAZ67T^Q@tvMX8Zwjj(NA9i4W9H!cmb#oUl z{#{+h)??8pAIyBcp%xsLjCq8%!G#L)fR_xcTr=lSIF-<7)*>$#!1`t6XK=F%0g(H% z7zc7aOU|>)M|W9R0KLTS{)EK@tCv~3DQ-FFCHNg1HpBce15pr$17{a)e0J z#cmXEYwpWM$yHv?_8NSv>D{~z6}6)8G8lZg@)>tN&VoL6ROAi;^I;tD0iaEXV*A9G z>OAb`MNkftxGou_cssNY1KBPAzQmK57^b0g(taw>;Q&9io8N!Zr&Oo7=Av5au0ENF ztfhW53qbt56G!1OqmnH*D?jmpS(kJu85`LdE!-I1IKU65aPDh0N2uZM$3bX{bN>FI zx+`@jtZN9CBqs69MqpJxsGapj>|lM~B&`dASUJWi%o}{`240&S&loqtfSen-2$-^g z+XMBYW?D_jzv;7Wxs7Ssv|qJ4%YHkI_`H#^s_)SXc`C=F6vduGEyJbRjSw>o*)f zQuteB(SwwIx3^z!!B6dYk6&Lse{tL$^&2SL*Y^yH30=T^01IchNSP(de*`drruO+;27LVFnZ(J=a3sgl|O%Bh&AQcX{;LZSrCId7!T+13aZJeTHl4_2U*NQds# z;0!O!`^uyH>jU;7AzWAjvtVEjBoeNBMl`3y;k0pZk6Y@!qsn)BF7&H5TT-{bnM<0F zZ3!Lwjnp!aBsN(OzmH6BPB+WspOqp}K&+(1$R;=kG3Ol!u%Gt8Nr3|ZHXsL3x_VpL zK?wrl;dKS|)6MCC?m_0XJdt|KSNnuESlb-|EK;v4HabtHedP-riC6B*{gzNr8-dy+ z9P1F>*u2Jfm3hcklByA#5gi1=_wSZ`Nz%41AwA%tig?u%hOKiNpKWND>l}#2iTBv2 zt5oeINewkOJe-ql$^2`i*K+Hz@F%Ilm3{teP3dE*NH470rEW|pzZ$@85%hh?EEpCEd~@NFzu{mvpB}H-eN1(x7yAcMjbpCEYP}hjhblkMGa-dFBr; z;Tliwv(MUVz3zJvjB;5_z16$jRwKe$k6X9aI<6jYJr}!5FFE4OY3hK|zL<--=T6!& zURt|3hA$?|bsP|uwH>;^5133;i(G5hE*LSYS#4nrVgbRErV|wW6XXuWr0DIo<~4$_ z;-w3gIjGk9??k(KFu*kH7QL%|ZajCp+SfEPmtKLGg6O=v6dm{c{x?+^eW+w*VA+u_ ziYly0Z&abk0SLc5#xb)&bX+q9KqAi_^B~u_imlfJ(oHN zS?P!zigNP<{9mlJ7^Nk#Mb8Izw`k?GLpDZMs&lj%0`-b4#O<4wXVx~`a zp8z#Lm&S?qKjxhKK7tILq)>&cwyx1PxP~(CY0cd@bx=FK6L&#OwxIoCr?rzj-;?Vp z&73&Ds=DBU0!fa!37`!~!;NRDS!^B!Et%_?UUnXhr2NIp8X3rY9l+ir@OhE<&)O+` zt3BhOEg#2AAnarEvlRtC5(x$w7Cl^;Agz2REi4DU4@P z(d=6@jgvdI>Jg}9Zl&(y1-fg6`s%?r>R$hrbDp=8WT~e+lM!<=m}L*!M&p7X^HHdJ zr-8U2MaRYCiQfsJ)Q|I+>&!PwcCWMacpGt)_lXR@ZRk)Omor#v@p!~5Qsu_}PqB;I z;Z50?+g;r=!6fL8{y9c^VKIk+S-tdUrrUJ$?YW*l_q&AR?QJSXPcRZp>s|K!Q|!H<)0px;^@|L(YrA z&obSEFInj?+(A>~8lS*O3)cdIk5>ag{>4sTTv`7)LO!O>f7u*Q8f0{dJHvm+LUwl`|k#mL9>j)lphe{d{Trw5H?+-;Qfb zd7^p!fpmZB)$)eMpnNZU!%Oe^iE}k9)Y}mQQW19GexSGMGI%{`m9WxU`nVm+4v_(w zSWwgQ=I3N+pmLW`(Q%95w^Pxx=vy`fRTUk60$bLfov8O9UUO#)7}Un-HMb}0$2Vw% z#1=&c?YGiZYT#3eqdz&)5$+$GmC9(!>+zQi|Bu|vtAg^?0+?^Q$Dd?A$A(R6apKZ_n-b2=~v z@X?|zKU|ZUb;GyEeTaE{XpXCP1ozX9M1u5_l73l~0+8js<8t3hm}guv=6^Bl)?>f{ z^^;bvNz;U^J}P|`LRUMTXXmTpU*FC|%SIc($IBw3y*iXigT*q36pOhDzleuqFjG<| z8FhS-Y`rBb7>=f$Az~dT)C#OW;-=FyF0Bh5cEp2H_?mV|*s%$S~eP zYo7d9AWoy#)5{NC z=-ZkssG}*r%Br;E!~}g4sLLiMA%7XB*vrkgU@gSe3iofF!Rqnx z%>@!02SbrO%*uUaw_@;aZGJ<9J7DKIyLw6N?;PR*v!ZtmUi7kmRd8m?O)TB~>SG}N z9y5Oo7D|{5-=kO8YRS>|WBJ!yo-2LUkPx1d)O#P<@r1cyb4ra@P}ab4+4%XWp)IAV zK$#%i$zR4Q{VB6a1s&bm_wjm5QzUA;2;}Fq(|M#4^P&DaE`L`V;Bme(XHtr*N0*`< zF|oSsO(pfPA4m`f>?TxNVo?v^he}cUwA}rA^f^9F1{BLssDydMvMl};tw1`jmda-A zW2KQsH~_py?~EeNI7s}FKvV%77$ZZ$@hnm-&`C8aV(QPu0F@Vv9`XH>p>1PUZPaxs4Y$N38c597pAC;HXQOV z9omp!6iZ99jv5lqTWH$%+t-U;*GbPLd2$=#j`>+pri?*WG{u97>Q?$Pp!f2zd$eVN zF9|$`+o~!lKrRwFrYS$dIMlHIvu@&|;rOA=F`MUIQzc+IVf-+=-Puh|ZND1OiDVvv zfR+hb$Hr8_Tyu;d?}yubg@ge;ucuSHJ~>|-q%`%J{fS0IG?=DeeDgB-0jc_o-_wU`YjH>m* zk0_>p2EH@@p8d2*tM`Ilm^`|MVMNt#vXGn@`%%k8@>F1On3X5KG0 z7`%zviAws*)Y+S5#LO@s85oy@iO@+IyVM-}=g=FfhA1(ty^2BpYmhF<&lmqpqD*?t zf|!9I4*!rr0$e9tkitE+(t>Y&Kri?f^cQrO?=rc*nrtRLABP$(jc>YEnSUptS_kOH z`p8kzueHnJFpu|sBu>ZzSDP7??$>8BQ;(}Yq4O!FmxLas&*Ck4f3S#2#|m5)F_TAL zoASmvr#1?PdIVRS9;Tyc1?En@>WqkS+g(ub-29IHGO_8N`nQc9`V>*b1I({HU90l3 z5obXzqbtRG71LkME8IKzC7V{Ez;xmT@9NKY{coBMf5H`OC<3CC7z!UkXcLq&Q6hk~ zGN8rSz^nJ@52rGp^Q_F!tcSk&bszevrVudU`EIabF)QMJye@mvflK@eL~#gcSDy9k zp=QEUoa~Z9p+`sJwraY$FW+Cx3qMXHzxY%jnBJci;NS*Tav$2~7bh(CcMPQ%S!bWI z%PA2zi#nB@uudq{^47#NtRfi2MapI3VEaQ)qp~r2Fz9&7G!UNutr}bKLZ2?(ayD99 zeO7xoP|)dWJ{0~O(4Un3#@`7LQK}%slqHKGU9Yd%uKCBHeUox;G*ex&=GPmw^@1uC zM3NAFLNkbrDri}POh@8+x5AmKi^;MHH!%pyCGB1Jk6$%RS1KdS&)Ibxc%mjJi4F6n z@FYyg<)3~!vJA+hd?358DcUhfw2;DxexQbjRZy&f*g`}C&f`AZM8nni!cu3%(es1;va)MiQ1;*+eo z`0Yc(i&n7_W~DM4Q6fYlS5F@5?PK|oeOhq)O9-w_otVd$_*KDCimxeX&_YY zQc|>1Wd9>Oy6*KBugknLRi$G>u_)KhHdEKaHtxzDfAUAB5S~tZjl2NiLqK07aap>C zH(k$Lj{-U74-d5+BQ1N$?ITT_sSsp9uzsWstk6G4LIA~@Lqee@sdMpfsgN8UNz456 zn0tF0vh+EUd|yEHP1BflPHN{4z7_<=`!l|ufmzNH37cB(-Mr~+nlYQHbaN({mwOU9 zYt@K*7H6=x#lC%*d!C&OuN*Vcyi$!WId#mQD3+XSAXB;I^DAlfqvLTa3ceHq4I%h(3sBG0Dp88;l86CIryuW~IffTHftOqFVNA&852e>b*HXgS4%T^S*fTnIV}^CKKKxo>)N3>J$w|ZxV-Ukj560t7 zDC@stf;&WtO9HGiO0+dTJ18Tsjd zn-oR3asX;Bs5OiU5+S)&%puoguyy7B*_XW+Q$o3pIpmszvsdMl_EHX%5zr;wYSJa+ zoJ{U7Y%>99yf5Eg==h_N?2Var3u12xa3JEP7{mca+wqhiC1p}`@(}ki1g9%Q{&q^uC+GI|J=H566;t`o00FnCm zueRm5A^LX1%VLDFYPs&7n->hAom3)JV5TEhv6#2Lkjt#qvd`5lxE%TO&TQ@xCu4$b z7keSuRTZ<-VCmh&6*4%Yf2^kyMa|zwkWXeT%vm%6nF-Ocw4BayTu5Teabw760rpB0 zdQH~2=DkN5g%V(EB7_o^d3yz?MMXEcTr-8<;u^zay$Al}m5i;{z+uYaAwus1K28)} z7}%Ox_IhSP8LycBNERh2T@adBj+&k-p2;4;Leiqu4p{pt(eN#gm4fz^&OT0Yo1J23 zm>O_cSow{Qp1FW+u|Q)&+1=O87ZE zvA`y5Fvn~5ps)05W~2)zLA**a!4Gy>62Na7%+1Cj7W@xdejw}wGQc39swcP^dH{*F zMaF3jE!F<@%H%RWOI%C$wu#w#@0Lwm<34zX_0al9RV~%N)Jk>?l+}{5zXrb3jtqEN zF9P0La`FEIdLd7pqFWR+&40r@NT5b0v0_r6ab6YED_4-`MFFz6QsZIOX@=>y^x4;@ zHw2s}$#$f(T^|_v@=My!98r)d{wWs_pb=JU0D{hx!LnrGZug0@?TtLeo)ro-SnDdv z!E@{_`}Ct07n3+_w*XC{>S}go@>)90LcMu*dvZ;D?|?{s9Wunc^0-5P5C!4by(?k^ zT#ogBXh=pv@v8`EEJZrm(z0olFe-*}s}v{RkfAf{)SF>r zw$fWUGtWjN1N?KUmJOC17tnz`rceE+H9>-8p<^j`QT=k`l_hO2)CsACaImx&D)vso z?sg^>PhlF#kx=Rt|970#DO`uyH|FN`ctyP@n)6kzW?NOaCJ7uUH-bn*%-q291|b0f zOff<;18ypY{XL;c+VGiK(8bGkCV8`xs;1!W?o#*mLP>Ena+6xcbjhN91AB!&p+d5i zvntxAf!7FD{vX1R&_E~%0W{F7CwpCd)Rb@(HXqG$;D?5uQ79#ap9^!Ei4Em^pTNx_ z#ZSofNOs_XcnsM`nf7((4@?L^`Ypm(>hD8L@J}y;eGVFv-B{R(W>Y+yVjwQB>;daB ztd=|KKw^z?_EQGeBRqQ9w7{?fmX!(1%xeFX^~(( zJM*|&Blpv{v^mo5?F>BbA1L+XCT8wz%(faoG*%)VVNqm$BQqwk^yA_h;_Kym+#$1X zz=rPph4R{HBi@*ZV`vxz#CUH-!F#aLqoOx7#+fiE(QVDRN5Xe}I z<1)})0r74O;yQvSA4U5k(k3+VJ2;8hP_HYrmQ}A~@ZJC6K2S5T`hXRoN{{iISY|(YVPC0P2!w?tjfAlZn zIGm_z6yG4qu835M%%hrFurKhDddl|oUp-1a5s8gw(GBtVLm)IY;s`F+0g=1@_k8^O zD+CGf;%{$}_3c_N|L+ooaM%8CCsRHCG>I^OViS_?Ez8T<-caQYhbwL-d1iRcb#_8d z(Y);yzubc23Q@HcXl28-Sa1B_va=|Gw}hf570DC2u_Inr_zeIKOZ5N-Mi+03PZuIf_#N4)mWm z4H^A4giB)PDCsfp_e#E2@2m=qt?J5=FN45z zO&O+aWyotKox$W*`DJ9nZ^Td(o!e6N%}OAzNfKwTQ695J7emJEr)#E2 zDBmbgbPWr#etGQvIq_6QtaK`_%?JX)=ZJ|n|GBHxW*9SQU-yErH3+V_s+?#o#Oz7=ice)r4v9qO?Ly#7{f!!q^!Lpro2+5KG4ZE2GG&oa!>5!~~-bp$YH< z(q2fcMx-hU4X8b3Akbi-EtS=~Xv5#kPO!=jA%63tvl=t#mPkWWz4EI7m0tIT_qP#T zIDlc%`iOPdEKi%Qi`!TP&*pDW|pY^B%*Ii(A#x52uPF48kC%Xa|Z*jY**FQNm* z9_@c}CAQ&6C|j2Kh<)<0_7#xtKVjXr)YLXN5S@D@mi#U zp~_r%>xoo~nM?ldqz=YsC-vL!A}A`NB<3^Be4?#ol+>7GGzX5~=)Y%9a+l-}(jNFR zTqg}k51aPQVLaxN`bkt+y&JZ04(@jX#~<#HyHmY;_|)_f$78ULoE9#r#ve#&j$9wm z68*YY^&1Kokb|(yOQg7sc+%Xg$|vtOO=>vro#!M@%pPbd33pHp@>lr6EHotK1*(!; zb`h$uMZf3Z-fSkr;6~G)i{DU30IHx+8@*}>S(EQ&7sks~@+Xet9;Hpa==>t|C@;!t zGdWOD@q~srRQ+e<=?;GrPsSBN$`j*bx1-AR8o5$4i(yS46lgy3HYOK~Yh}>`z#u22 zD9mPL*ds~qWz2jrcR9K-l#J+#x3Kq~A9#8g^vWpK!41rpb4+tk4F0B>jW((xP;mHr z$@B5g!oWd?JZH)A@_wY;Fp2W){^yle%f-MYIKFO8JQ;ZwSsWLswyT*fy_ z6_2Gwr2Vd-|P;-y+JD@>=Z zBPy&sdQgAw7!8oSg7N^}N+}1fxEajnnrw<6pyv`eX`KVF*I$ckNfJ3eY_YWeib{In zy*}{bK?N>|tbJPN5#emAa<6Y`_A^FtEzej7e2(hXzv!ReRXJ9SQPFO?+U_NgJ^o`h z5>zLq$?rNdRwUqGu4{a5RKW8N%uG79Tq+=QqHojRrwBtnk;?GGg99?CSBlZ4t9CRF6`_#Z>B zORi!Y6XLhKEul9jAB%UfLE@x!W4-B`B^%h465cmPdE(PecJ|LJZ>0V$T9v!?5K7+c zIw*|A6~~v_VX~PbF*{x-TjVo@A_C5*Xk@^tM<^81FVkyZq5Zel+Oa|%OXQurOjndj z(DNXyYWwzl?(tGs@F=O9lvMk!yJqGGm@ z^r*$?^TjIDEZfhMvg?i~BQP1Q^oM+m)XzlDRE1Rbr}nrs8ltDDwrIiP)3uOrZ&y+nSUl%Dz;V=@_i3C z8918R{BDG5*pK(k^4N|uAy)W0QS(07O3O*zWOx)R`erO4nO-GNIpIp$V;*%)Gb&8+ ziBE&*LtDd>kFCb?`T13>2aU5@axN8CYC0Utym($D@BYXOdY;didq6j5WBZqjZ=ypD zgThlJ3qPCXWDX>Ee5^QcXq?mydS9uZI9lvNl)<8pDcNEub+TMxVBnMJ7>sWFw8+C0?n9#RdvtMa%r{}pqp;_)e5@Saf!X}Ipk z`+7c2tr9JmE$N^*A_SKsfV9*w>E4XGb^A^fU8_BS>}pqLN$*w1o%`uGmeUU=+R;15 zu#Z_4QcU0**ry8ES}TbN=TFA2+EHsNZu-uNak}uqN-efb@OOLK-qoWJN*yXJe*ryB zdWD@m6r$J~`)PVd8GR{f)_Up?Jv@_QWOk6WtE5J&1X^7bqIZ{KcUVKQ3sf zb}CGP)^xPH9nUD^Bz^!;{*fd>yBC|cX1jcQM9(JEfzPQWCe>>Cdn=L%_fB7;wt`~L zI_};{EJatlq@LxUS&$}VQ%=PDNgw~nf+b$V&1Fj(zVAb@{uO==M<7TPkd{9gvTnoC z>^&-Z+t3K+8q0#6U=o{lc5xv`iE7yyM+vPA|El2ePP09eWG=B=F~QNJ1w12mU08sX znpxUU)@PBYQn%3uZyU=TnX5m{*S|+o?iAEfYid(0@nuvh(v{AfPbkcCqj^4}-J;8k z8uv{xJTElqgNde_{lz1BPfj;r*3YpP2NS^V21-d0+1>zCIf zF|8$>Y!UyGI2=C#ZP_2dcD?6pGY1HoTS~ADcY5F|tQE)tlKAm_DP~K_^HtP=ENr5{ zm3&Z!qoxCR&tTiy=W$ePk8cn8cq>mNHulb9vEM+wGsS4Hyunl1ZOA^OD= zh8UUUKBX*LN?^k>{YuSZzOHIJK+Hp@<#QG)$bgzx@ZJPdN8FaGquq{makzRWN;Gqj z5);0gf8RM&uSna^3dHufEPZn;r^#3pWZU8QzpEA~MZDO7+3#e?X6fq!&%GJP^+3jjQEh#A(mZO_1UgpF6CLO+gSeL@jP>HSig3Op;P)yk z!zdRwb1-PkLx5}o7o8PD%R3QZ!dpjutZB;fwj1$@mP7HJ%R8a>-HxsT{Ik*$3D>&j#|Z=e1x z3Xb$#{D>{ugOL1L(bn8o)}65tk8@`G=Yu<5GH7ln#7hv*L>SS!170)xM!WZ;V*QJ; z!WxhdCA+lzJKF=U6881`ub)_S8#;gj_|8fOUT%U8bO?GG|C2v0-z^-5_HDMIv%Z!W zIK}f6!ee)8JR`|;TeR7p=eP8U4yADVUsQUzRhzHl6SLI>4xKdt&Ps|!5t4WtQK+TVZeooPSK zlYGO!02nfs1m!i4h`1>@AbDls6SaGOq^>^2jc2z5I{MIn4nc!)je7#_ywo5|-A2bap za=&p8f~P9PVZo(&Z~ZtQOxcD!nHw269qCW2J`F$E+4$m%t3PrW@GU7yETm^Vt(U~Q zF*X0zW0B~Ym(}p{Ct0sUm-2|&tlJ6eTh;#K9(j-OyCt%_Zym47ar6>ZFoM`~QapI) zzpR89UWRM5d@*nzQbB{GSA>y*mG36re|GPP-ZgKA){oMdpY}R-H$Twy4-`T#JK-6&+*Kp<)dQl%jI>-n}c|_5?fVL z3*k0TjG(8ogp>GCtav+zqaIf0z0x6@0nP(!pKoHtdcdE&;?3M&=Z;erZSEBHRfEIt zVkmMOu=e*ljljv-VFftFH``GTc%z_eC-<>>YEeOM)6gbZqN{n5u6x>0&V>g`ez~wy z&A2G}!=?rvm#l;d9dvfOl4W?|2s$6coBN$t{BBFf$a!NJSg-}m z-!r-KU->!D9fmc)Prr5IC4YscW?~QA)VNE>us9wx4%wU8TP!>e!`xW%IQ-%g`bB6^ zf}2Y&vv%o6v-5GQJ=3w{-Q`BtAtNJQ!Fs0#MijeY@8C)*!DGngGt0bnI9*I8f6CSJ zG0>X{aAj9K&A6QEwhEnP>QK1AROAXD-piA{L8?GUl&s!%m(m1d_3~kal01Y=5pJRs z59p3M3EgN!bQAZiK*mBAf~P(2QREy9faNVZwPWd*LxkIXMa|+5qQj0_v?Qk)M&|BF z1IB2elz3-#ILK}Q$oX?#B(F|ibk-XxD5bWC+{eD3*@*=)zCOTHKLuB_xao=)f&A9G zjYN<2d1C?}Y1ge3F2m05M91FRji#RQRw(7%#B;TV$u$F(y3K*&ehDGh3N6TAuIkw_ za}9`D2fF>ViFK51OvDRk@DM5f(Fy7dJpS{wan>2UPipGxWQl+5xUCSwR|`!uOPH<_ zzwRGIbi^(RRxmyXWATci(&gB668Zd>%YeBDV?w(r)~D0$d!>^Cetp_m1RvX3rsr{~ zHGepAY}=0MxpQ^Dgbn{BFL+6O5?8OlY_@XY-gAk?yGdT*aceZ~oI5r<@hDaYkz@7J`OV#QgIE;ww+QQ_4HTJbtSlQb^I?WF9qVk@gBUZPi3XPzKQm|5H?K-y@9`+~W`tVs@ z-yjXFdF4J*c+YE1@qQQkMav9hur+NY4n}|ULMM2&0H}bj%vN;CJT8dS8rWZitz|~s z6~y~9@rG#8`-`EW6Kbc}xx+3N+O-hqp)Yc~M5y!pGNEp)TsXXnuceQV5_84KL6^^SL=>j6S+W=6WiK&p z4NZad%fGs(TyQL_=jHc(+wm1m(DW}E(@u7`hgIG3%adOo>7o3FQ~pm4M~=T|ilB{{ z1&6iUDa$n9-?4I|hmLHwHM2VbxdjER-*j9^shDp!+_;j)_uX6|cT!3=wGEpdl+Lbg zt!_LT&vdasQXXZpR{z@pE;?oPf-4&!S44e3>v?T`0&+{(2+zLFSffz(k}sW%$Ep@D)t?A3$Uo8N`V%6=2Ap3I z_0FHR9t0__+w52U9~VSe-M40w$T@;h$r=FDHyC|`#?yN1Um2v-EcCoOOmIes;`hwS z<3#GV-vxtx%PrvD_QnQ@L^Rp3$}-8O-Sb(5Pjzk9bH-4I%ZBT4l1+Xs4>l%MZQu|t zMf#DU{hJrzpY}s}x5fnRYlK#0Y)jmbu@_D-7RQn~JI=A0A#mk_xV-?CT3E9@BUBRX~=)G3og zKe}X{c(4JSs}8!mmeZ&r-zk!O9OHfz{D#h2h_A=*GTTFa0%knhIbxnWMzyBg*a?eS z6T=`%Xvmj_S7f{KosN30TYNhA{orit$XzBJTmk4 zEJ1!F#nYqkln;K1br=y&9V$bQ&$ML$B@@?b+thC~xglZ$jm-YLGoBb4!5WQM=Se%m zZ0A&K&fe*m71Sa6P+k-D!owqLvqv9cnuw48S&Hl`8n4eIt_B0 z^aolh7IQVjXb+e&*_ilC$AREbVAlr;hGAg4vgAjWrc$75s!px{D=Tl*&W$iMsm<1C zN@@edQ#MH7Y8S-a%9ZG>AfwV;5s&E+fdS3FozuHuG9Eq8Pnl(6sxA1kjaMiHyUi{>nz!YaLbCP$G@rW z@dU}fi}cY4^?qz`a1jF2sM}vSqMya;wZ-L83UR4712Q3_ZC|y8OCShhow*ALpxWv` z4V<&;5AI&i+jb|NG@UoHPTYf%$E-?LN_gb8_L$Igbclu}CmhT2Mxlqs0)%h4>U3}DCte9%~ zOI3vESMYQH&?quVpHk#O5Uy_O7Y-e_GVBk1ZGrguRt~opfBmc-pyb-Ds7WU34ZmF1 zhDQ_sINA_tc>zU(*4$SpXXb)5i%ZUP^Ems#TY+<9ntkbr^()WAPEUIK&tn%rwbher z`K6c>{pFRbGUY^UK<+3a`jG4Xp(tZmYYNut`Wl|md_Si;n@uTOWy_z61Lzu~TUnqp*+YSFfiXrs`yWu$H z279;P)+vVjQH1k|&`mqsk3eCd`YoJDE<(R)XR;)R?Ea!Vb0@Q{NVSluF)Db#qq}9d z<%LZP(goLn7k=ZW*uL@Qxo0;}4xbr&tbe=#RnO#|qxUD8SLVbjn@^jIl9jB^$3K>u<`SNnQTF3;aq=P~ae^Qj$Cz31a4Mwu*I z<`Gs24$2b)TQ>yzY<^cY9sC0|qSSdOMYk7uJca8;{gb7G-qP2;dg@~L=lAZ{URuJn zxiioAAMssXBezg1KgsHgx!0CqoR7GH3HfPw)$W$}ZK1IKm1n32t!y|w@81ijT8S>f z+3AuT!lhT#Us;e)O|Ut2jQ*M^ytLRQ){Zd6{s$21{0_Y%mzpE+s61Wn6xutxU{ERHzoxrYle|=fm#WLZv$)ShmR=m^}->)oYbkJxjy4qGc;c~IdbDvXd%@m);qiV8rh6EYAsP!XW* z*gUMLvRx5BkGV=72GMFJouO4#IS9Un_Rv(kZsS^=PiEc_|cT3FUxz%?CjZq)yHq?TC+DIX(g%YJK|C z_Ewh|CLVvCh<>1s$2DpPRTZvxDAP^{TkLUUD@*M)d-)m8;kcv1S!Y- z5z+RRgfLw#dW|zJNyHZnlQPqrj8RFFoH-qqYc^4Xr;|T{f~b<97#Yubq&!QSsv}mV zK(#iBF8Ryy+e>Ws&3C);cphror}>SCUqf07|Jma8+km9y8<4boaYE@dhf-9fY&Of9 z81-C6-RAtZoG<33w&qiT^ek!hyFOo6b?xg)g%MiC&hTd{tIG|gFx$Nx)e0vEy%8fd zcTGGaY8{>j1(O+WAY3MhQ(j{h_(EwUM-C3TxA ziC4IeM(n+&mnpFs@;tHjtJrz?Ml9{%w-uF#4} z@zknxKgg5Sh-v3fcVZVq`!RaH$Fz(E-(!(gA^cZDb=H>~Qi6Qi*2mLQ&*S;UWhP?3 z@jZiZ_-YTuylvd#D>cMge zYTZhO;=!@g$eiI*xe&xS0tlBg*$R0?e!?oVtt@NH#By5Cx#yEY;%Jw<1R zm_oaP1J}}<`@-KI1K!)uKO8-`Mu8}z$+;t)RuxYy?uHL(!l42iAPch@w8PwLpJ#_Jry{Ih{>Vq3>z%6{yyQ$k5|-E-b@#vQgHcM&4Yet;i{HMqf3Z^#AkKWtTCLn1k&BlU zBV{Z3T+Y1YHI@MD53&%_^BCs}zs`VZ4Mbw~gdq5Nlm=;_biVB6@quxHp-Pm$=z^2( zOun?zv#heFM6k~L&zFpFQ5#j?NuiEu3*GWS(6A4ehbguHh3%Lk%$Eb=NRD&9=H zG+05FI3HF!x6e4xe&^R9yEuPVpRc;HZPvB9;H%-{#}vi&Wu$qJ@t7zdJA6V_{$)x% zWfY}i(chLYvcstJYHLa#&L{$eG4 zRWq<^8$*d7?th3xe{1E;^lJgNAnJAUPf{qhss2oO)lYw#E88L4tf%-i6VcuhL=oFz zF!2B?M-KB~CzRfO?5vdd{SK@?iG(nDG|iGTR>V3j2|5{Sm(Vl*7x>O@8w0a`fOkkF!*jI! z#JK;+iS90Wx4#Y&i`RQ>x-&sHZ(bfK8A}-*U0dAwDcy~Cu<_2T{vfi z%yOGexvn9_dg}v&_C(dmKlCMygIp-2ps%?GKE5a!wl^HfXp}8~AQgruUsBfWYa+ib zvRTg@>Npmcc?Sx*z;MJ5v}}aaMWwk~`tOJVNd}XT1^ljZ78(Nc$L09&Uh#9}$)@_B zO5h!C0dK0pu_psTo=t}58Nyi9CLIFYl)*!|t`HxEUBUZvQZ^wu6O(vi^k_}G2>PZi zWn7hb#x-N=PoY+?`_g!JmRo-F7qYqVbbf=tvx2?tW+^g@ESVQ-8ewLAu&Q^5IB*S} z4}ro_E`*!XCdH2M!gyR|9>H;2d{5XEnNQ{RVctL*gCJ_19`C#qvEK_j8>+to!oBm% z*TK=V7bHmfrXvT|)*fU{yQ05ZxmgyDe=f(=vSxT%EsKYnpNJPc>DvR1^k~kFtJGV_ zPdY6gup^vtp8&tsKaLPnEIwC3!K+Oo-kZNv1LY=uuV;5Kh4#etKFmHPBky=_d#D_^ zSi4+qNKG0t=?fQ}}#XPa(UB&#mcN8T%;rV=m zA@p$pnW?Q}dPdi-WLaW5HC-bi9K@%+A-&x7{8h(DM9KIi^XHiK;p8xbOJJ?!=v&-vLFpNI!&3B&L|D<8mh|_Lpj%c zRQJ3un%+u*1tYgnQ6 z)dE1n(jQJE-4A+zh*Gt=3Gs&%Y?eOLUv0cA6p2Ji{rbd!e}A^&Qt@0(|7GjQd=oH{ z?ccixUaHT}C3V6}a_Irxtp9hOt^WVcHqB{LLGNaQ#dvKw=3!y6#_>ZB?`I@#e<>V5 zFNG}kvuQtiL5knZbCStlIu5u=ElTLnFRzR;(04EuRb_P8(w{na+RRhZ=9VwG`aB%! zRS}3ebT4gvDSDP8A<}ne93UcEYY_76%NHAgmGARcIS;n(GWqJa0+jMSU$GwkD(1p0 z-?ZNL+pj)hJP|r$kW-9QUiQccGx zQm5J8@$H4Upb$mpqS-4o#*%Z)zMSqig|{=_<{$NhmR$h^k>jLmCM>>@7nK0oYP6i| zTsEn~Zm@<;T6Y1S>xaSD19k~1HP1zRLDTNz$3>A2%O!<*v5cCn@3mj4>=QeC&Ynu} zkj*ShSWjLRA6G^(Uw>F3v$+!VR0H0X%TlvqXWSD{O_CKwMoNS33|2;i&0pzhSp=I|^QOx(yHAm9X}&;B zTHsnRxGh5aT-DU8b8u9lGLg|Yi5#obTC;)z+2tiKmSOS78KvMpM7W%np||vBS=#DW zJRwwzC6IW_kQYU)I+13n_RsmOgJ`PlQE++eXX44yT4LJFs#7ENWX(B0 zO=8RLworevLyHzidSJ*Os(^V0dO{#_iU_lH;K`$k+Rmh(t(?LZdhtr?g21$uvP{;@ zaiY*9Ib>?2i`yvjb=ecbiH$Aw%uO{NiQ47~aZ6qCD&_Tg9L2neWWx5VT-qlOAZHjh zy7It19T9y%9!Ks|&}4~;X(ekWRl#~)&Gs3pu6~S9Pi)NGX(qIHO-xLbHncN^I!wp^ zRH@+256KwlG>`OW-#<*osxnfma2PJ(E!qX52`>R`gbKt%8*J7q?%nKz<~bJ6<~{=Q z6?NIjVg^e?=~{u}|JUAIe?|Gm@4lm8fHX3Ibb~ZflF|~2fYLdH5<^O-C?zG`phyUe zG(&f{bc29&cf+|yKl{7STIc)&d#ydcu;!WJnY*7m-mmK#d1-z$z-TtS5Q!J+wcpPy zTd5RER$vzG^ZlSKhU$&CPHm>;D>68Mq|)xpm~A;GSAo0rc>Pxh_X~iWAlONT&%Bx{ z=pKc+7CwK{^GIfe!gPyU;ZH(7*e3H_jLoB2XyghGpS;k%o~-D0g_B)Wgs`@Z3_2S4 zYt;>lJ<*Py)Pg=8x&<`yA-}Lu>c!I&0K5Wm_<+hZ8{x4MA2Q=sDe)m`mo(GVS$tL1 ztfV0rv8C-cbwOb+buN?}w${@uc!aH(_EHDF2%5jK0pWHQ-H$D+wxWD6NEKQFZFc+$ zG*t1v@8^p9s_n*ZQ27;JVw+R>Cwg0UUti}{2%Xz7o0Y%TLWppxQ7i>tQO?ho# zq{~jj>dsTsAq1wAlaDk&FLaLoIue_m>@7bPGZu_z1i}D?QM({sm!P##SKa0+A!U+P zNNVk3mdG6KdygJqboO3<&Hd;0+UEz0uN?A78KKyOIg`3>laq*%y!L{jEaRBhmU3|g zF>pe}WSHmFN*4dI9(&WO7f9~-)xWbbEDonz@e{+)+Gc1spHUW@nsz7_A*4&hRHu0% zJY>DPFZ*JcF&!%}n|+7t0eP)KxrW0ODgWEDr<^|n{Da6%#k7qFi>OP~<~ADOSnn9QIN<3@W~&tk?o|vuM8#<_Oq$ zo!vTxy4mmrk{h?g%slVA`db~JS!7i}Z}sMoW7lz5&kEOMOR-8Ci!ST!!WA@$_xAre zp#4{uhRJ?Af}<2eGCCEdWn=1DNQ0ZTn#DlQA$*hf?xv}BE3oLm%mXF4coGdkmY;rY zYX+5iQyR#D*irTVZ9JpN=|7<3;R5{Se*+;06h0H}KV+QP8N1)>Df(lOeV2~p&r8;3 zOXMfcD(+K#{WwQ!qqNl{r&sysY+|r#(#FeB{-PW>qHGVFklvr7J+bWdg#MJ>^o;d$ zzBc?W@B=uyR4;)85UMLeFct8np#7P)Dws^o(r9{FR^NYm>SY0Ym3rMj{% zJRubLsTQ75`+VK$D$plOcDZF*%W%R>*)qLRm2S1ZPOiP&pMVMh&IW;~p##KUe=_ow zVqq)ApoA~A7lp-#jf6t!C(rp641Ym+P4$|)Vz)vpfV_SVJe=-)Sh@shXFl1Is6E%^ zx%in0PYc}P9e}cExG;c^2gHmMp59aF=XK^4Z`xLP(tM0d$fJOtfv^;6lA8!fY*p;_ zeLH<_QF^44T^_1+Jc7{ddYZE}WbWR?N8Un%Vkf~Mao-C9TAPn(k_wb#F*Ye*xcmJ{ zd1mNPIR7mRxpuCZjqfUFY4EGXVZh)+lY?lcflhg&{vG%=E827PzW6xN`z-+^`K?A_JZQt;7C% z⪼wJA|$l_Af*Pz$6qX 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 literal 0 HcmV?d00001 diff --git a/v2/static/img/oauth/client-credentials-flow.png b/v2/static/img/oauth/client-credentials-flow.png new file mode 100644 index 0000000000000000000000000000000000000000..891d4ff87c654fbc2d75807d03284baa5a3a9883 GIT binary patch literal 228791 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Ő?|F0c`ngJ7rqnB22}0wzL}6^ZLI8WLfMmDL(4E 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